@charset 'UTF-8';
/**
 * @license
 * MyFonts Webfont Build ID 3425517, 2017-07-20T11:58:46-0400
 *
 * The fonts listed in this notice are subject to the End User License
 * Agreement(s) entered into by the website owner. All other parties are
 * explicitly restricted from using the Licensed Webfonts(s).
 *
 * You may obtain a valid license at the URLs below.
 *
 * Webfont: FF Tibere Web Medium by FontFont
 * URL: https://www.myfonts.com/fonts/fontfont/tibere/ot-medium/
 *
 * Webfont: FF Tibere Web Light by FontFont
 * URL: https://www.myfonts.com/fonts/fontfont/tibere/ot-light/
 *
 * Webfont: FF Tibere Web Italic by FontFont
 * URL: https://www.myfonts.com/fonts/fontfont/tibere/ot-italic/
 *
 * Webfont: FF Tibere Web Light Italic by FontFont
 * URL: https://www.myfonts.com/fonts/fontfont/tibere/ot-light-italic/
 *
 * Webfont: FF Tibere Web Bold by FontFont
 * URL: https://www.myfonts.com/fonts/fontfont/tibere/ot-bold/
 *
 * Webfont: Tibere Ornaments Banded by FontFont
 * URL: https://www.myfonts.com/fonts/fontfont/tibere/ornaments-banded/
 *
 * Webfont: FF Tibere Web by FontFont
 * URL: https://www.myfonts.com/fonts/fontfont/tibere/ot/
 *
 *
 * License: https://www.myfonts.com/viewlicense?type=web&buildid=3425517
 * Licensed pageviews: 500,000
 * Webfonts copyright: 2010 Albert Boton published by FSI FontShop International GmbH
 *
 * © 2017 MyFonts Inc
*/
/* @import must be at top of file, otherwise CSS will not work */
@import url('//hello.myfonts.net/count/3444ed');
@import url('https://fonts.googleapis.com/css?family=Open+Sans:300,400,600,700');
@font-face
{
    font-family: 'FF Tibere';
    font-weight: 300;
    font-style: normal;

    src: url('../fonts/3444ED_1_0.eot?#iefix') format('embedded-opentype'), url('../fonts/3444ED_1_0.woff2') format('woff2'), url('../fonts/3444ED_1_0.woff') format('woff'), url('../fonts/3444ED_1_0.ttf') format('truetype');
}

@font-face
{
    font-family: 'FF Tibere';
    font-weight: 500;
    font-style: normal;

    src: url('../fonts/3444ED_6_0.eot?#iefix') format('embedded-opentype'), url('../fonts/3444ED_6_0.woff2') format('woff2'), url('../fonts/3444ED_6_0.woff') format('woff'), url('../fonts/3444ED_6_0.ttf') format('truetype');
}

@font-face
{
    font-family: 'FF Tibere';
    font-weight: 700;
    font-style: normal;

    src: url('../fonts/3444ED_4_0.eot?#iefix') format('embedded-opentype'), url('../fonts/3444ED_4_0.woff2') format('woff2'), url('../fonts/3444ED_4_0.woff') format('woff'), url('../fonts/3444ED_4_0.ttf') format('truetype');
}

.links__title
{
    font-family: 'Open Sans', Helvetica, Arial, sans-serif;
    font-size: 16px; 
    font-weight: 600;

    margin: 0 0 16px;
}
@media (min-width: 640px)
{
    .links__title
    {
        font-size: 19px; 

        margin: 0 0 32px;
    }
}
@media (min-width: 1024px)
{
    .links__title
    {
        font-size: 21px;
    }
}

.menu__item,
.links__item
{
    margin: 16px 0 0;
}
.menu__item:first-child,
.links__item:first-child
{
    margin-top: 0;
}

.radios .option__input,
.checkboxes .option__input,
.zone__title,
.pagination__title,
.shortcut--main,
.sr-only,
.close--secondary-menu span,
.links--connect-simple .links__item span,
.form--search-filters .formblock__label,
.alert--collapsible .alert__toggle span
{
    position: absolute;
    top: auto;
    left: -10000px;

    overflow: hidden; 

    width: 1px;
    height: 1px;
    margin: 0 !important;
}

.closing__message strong:after,
.closing__message [itemprop='postalCode']:after,
.webform-multiple-table
{
    display: table;
    clear: both; 

    content: '';
}

label,
.radios legend,
.checkboxes legend,
.legend-label
{
    font-weight: 600;

    display: block;

    margin-bottom: 8px;

    cursor: pointer;
}

.header-container:before,
.content-container:before
{
    position: absolute;
    z-index: 2; 
    top: 0;
    left: 0;

    content: '';
    transition: opacity 750ms cubic-bezier(.77, 0, .175, 1);

    background-color: rgba(24, 25, 25, .9);
}
@media (min-width: 1024px)
{
    .header-container:before,
    .content-container:before
    {
        display: none;
    }
}

.links__item--facebook a,
.links__item--twitter a,
.links__item--linkedin a,
.links__item--youtube a,
.links__item--instagram a,
.links__item--email a
{
    display: inline-block;

    padding-left: 40px;

    white-space: nowrap;
}
.links__item--facebook a:before,
.links__item--twitter a:before,
.links__item--linkedin a:before,
.links__item--youtube a:before,
.links__item--instagram a:before,
.links__item--email a:before
{
    position: absolute;
    top: 50%;
    left: 0;

    display: inline-block;

    width: 32px;
    height: 32px;
    margin-top: -16px;

    content: '';

    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: auto 24px;
}

/*! normalize.css v4.1.1 | MIT License | github.com/necolas/normalize.css */
/**
 * 1. Change the default font family in all browsers (opinionated).
 * 2. Prevent adjustments of font size after orientation changes in IE and iOS.
 */
html
{
    font-family: sans-serif;
    /* 1 */

        -ms-text-size-adjust: 100%;
    /* 2 */
    -webkit-text-size-adjust: 100%;
    /* 2 */
}

/**
 * Remove the margin in all browsers (opinionated).
 */
body
{
    margin: 0;
}

/* HTML5 display definitions
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 * 1. Add the correct display in Edge, IE, and Firefox.
 * 2. Add the correct display in IE.
 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary
{
    /* 1 */
    display: block;
}

/**
 * Add the correct display in IE 9-.
 */
audio,
canvas,
progress,
video
{
    display: inline-block;
}

/**
 * Add the correct display in iOS 4-7.
 */
audio:not([controls])
{
    display: none;

    height: 0;
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress
{
    vertical-align: baseline;
}

/**
 * Add the correct display in IE 10-.
 * 1. Add the correct display in IE.
 */
template,
[hidden]
{
    display: none;
}

/* Links
   ========================================================================== */
/**
 * 1. Remove the gray background on active links in IE 10.
 * 2. Remove gaps in links underline in iOS 8+ and Safari 8+.
 */
a
{
    background-color: transparent;
    /* 1 */

    -webkit-text-decoration-skip: objects;
    /* 2 */
}

/**
 * Remove the outline on focused links when they are also active or hovered
 * in all browsers (opinionated).
 */
a:active,
a:hover
{
    outline-width: 0;
}

/* Text-level semantics
   ========================================================================== */
/**
 * 1. Remove the bottom border in Firefox 39-.
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title]
{
    /* 1 */
    text-decoration: underline;
    /* 2 */
    text-decoration: underline dotted;

    border-bottom: none;
    /* 2 */
}

/**
 * Prevent the duplicate application of `bolder` by the next rule in Safari 6.
 */
b,
strong
{
    font-weight: inherit;
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong
{
    font-weight: bolder;
}

/**
 * Add the correct font style in Android 4.3-.
 */
dfn
{
    font-style: italic;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1
{
    font-size: 2em;

    margin: .67em 0;
}

/**
 * Add the correct background and color in IE 9-.
 */
mark
{
    color: #000; 
    background-color: #ff0;
}

/**
 * Add the correct font size in all browsers.
 */
small
{
    font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup
{
    font-size: 75%;
    line-height: 0;

    position: relative;

    vertical-align: baseline;
}

sub
{
    bottom: -.25em;
}

sup
{
    top: -.5em;
}

/* Embedded content
   ========================================================================== */
/**
 * Remove the border on images inside links in IE 10-.
 */
img
{
    border-style: none;
}

/**
 * Hide the overflow in IE.
 */
svg:not(:root)
{
    overflow: hidden;
}

/* Grouping content
   ========================================================================== */
/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
pre,
samp
{
    font-family: monospace, monospace;
    /* 1 */
    font-size: 1em;
    /* 2 */
}

/**
 * Add the correct margin in IE 8.
 */
figure
{
    margin: 1em 40px;
}

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr,
.menu__divider
{
    /* 1 */
    overflow: visible;

    box-sizing: content-box;
    /* 1 */
    height: 0;
    /* 2 */
}

/* Forms
   ========================================================================== */
/**
 * 1. Change font properties to `inherit` in all browsers (opinionated).
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
select,
textarea
{
    font: inherit;
    /* 1 */

    margin: 0;
    /* 2 */
}

/**
 * Restore the font weight unset by the previous rule.
 */
optgroup
{
    font-weight: bold;
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input
{
    /* 1 */
    overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select
{
    /* 1 */
    text-transform: none;
}

/**
 * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
 *    controls in Android 4.
 * 2. Correct the inability to style clickable types in iOS and Safari.
 */
button,
html [type='button'],
[type='reset'],
[type='submit']
{
    -webkit-appearance: button;
    /* 2 */
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type='button']::-moz-focus-inner,
[type='reset']::-moz-focus-inner,
[type='submit']::-moz-focus-inner
{
    padding: 0; 

    border-style: none;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type='button']:-moz-focusring,
[type='reset']:-moz-focusring,
[type='submit']:-moz-focusring
{
    outline: 1px dotted ButtonText;
}

/**
 * Change the border, margin, and padding in all browsers (opinionated).
 */
fieldset
{
    margin: 0 2px;
    padding: .35em .625em .75em; 

    border: 1px solid #c0c0c0;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend
{
    /* 2 */
    display: table;

    box-sizing: border-box;
    /* 1 */
    max-width: 100%;
    /* 1 */
    padding: 0;
    /* 3 */

    white-space: normal;
    /* 1 */

    color: inherit;
    /* 1 */
}

/**
 * Remove the default vertical scrollbar in IE.
 */
textarea
{
    overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10-.
 * 2. Remove the padding in IE 10-.
 */
[type='checkbox'],
[type='radio']
{
    box-sizing: border-box;
    /* 1 */
    padding: 0;
    /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type='number']::-webkit-inner-spin-button,
[type='number']::-webkit-outer-spin-button
{
    height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type='search']
{
    /* 1 */
    outline-offset: -2px;

    -webkit-appearance: textfield;
    /* 2 */
}

/**
 * Remove the inner padding and cancel buttons in Chrome and Safari on OS X.
 */
[type='search']::-webkit-search-cancel-button,
[type='search']::-webkit-search-decoration
{
    -webkit-appearance: none;
}

/**
 * Correct the text style of placeholders in Chrome, Edge, and Safari.
 */
::-webkit-input-placeholder
{
    opacity: .54; 
    color: inherit;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button
{
    /* 1 */
    font: inherit;

    -webkit-appearance: button;
    /* 2 */
}

*
{
    box-sizing: border-box;
}

body
{
    font: 400 14px/1.5 'Open Sans', Helvetica, Arial, sans-serif;

    overflow-x: hidden;

    color: #181919;

    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
@media (min-width: 640px)
{
    body
    {
        font: 400 16px/1.5 'Open Sans', Helvetica, Arial, sans-serif;
    }
}
@media (min-width: 1024px)
{
    body
    {
        font: 400 19px/1.5 'Open Sans', Helvetica, Arial, sans-serif;
    }
}
body:before
{
    position: fixed;
    z-index: 0; 
    top: 0;
    left: 0;

    width: 0;
    height: 0;

    content: '';
    transition: opacity 300ms cubic-bezier(.77, 0, .175, 1);

    opacity: 0;
    background-color: rgba(24, 25, 25, .25);
}
body.clipped
{
    overflow-y: hidden;
}
body.clipped:before
{
    z-index: 10; 

    width: 100%;
    height: 100%;

    opacity: 1;
}
@media (max-width: 1023px)
{
    body.clipped--mobile
    {
        overflow-y: hidden;
    }
}
@media (max-width: 1023px)
{
    body.clipped--mobile:before
    {
        z-index: 10; 

        width: 100%;
        height: 100%;

        opacity: 1;
    }
}

::-moz-selection
{
    color: #181919; 
    background-color: #ffbf47;
}

::selection
{
    color: #181919; 
    background-color: #ffbf47;
}

fieldset
{
    margin: 0;
    padding: 0;

    border: 0;
}

h1
{
    font: 700 32px/1.25 'FF Tibere', Palatino, Georgia, sans-serif; 

    display: block;

    margin: 64px 0 32px;
}
@media (min-width: 640px)
{
    h1
    {
        font-size: 48px; 

        margin: 96px 0 48px;
    }
}
@media (min-width: 1024px)
{
    h1
    {
        font-size: 62px; 

        margin: 124px 0 62px;
    }
}

h2
{
    font: 700 24px/1.25 'Open Sans', Helvetica, Arial, sans-serif; 

    display: block;

    margin: 48px 0 24px;
}
@media (min-width: 640px)
{
    h2
    {
        font-size: 28px; 

        margin: 56px 0 28px;
    }
}
@media (min-width: 1024px)
{
    h2
    {
        font-size: 32px; 

        margin: 64px 0 32px;
    }
}

h3
{
    font: 600 21px/1.25 'Open Sans', Helvetica, Arial, sans-serif; 

    display: block;

    margin: 42px 0 21px;
}
@media (min-width: 640px)
{
    h3
    {
        font-size: 24px; 

        margin: 48px 0 24px;
    }
}
@media (min-width: 1024px)
{
    h3
    {
        font-size: 28px; 

        margin: 56px 0 28px;
    }
}

h4
{
    font: 400 19px/1.25 'Open Sans', Helvetica, Arial, sans-serif; 

    display: block;

    margin: 28px 0 19px;
}
@media (min-width: 640px)
{
    h4
    {
        font-size: 21px; 

        margin: 42px 0 21px;
    }
}
@media (min-width: 1024px)
{
    h4
    {
        font-size: 24px; 

        margin: 48px 0 24px;
    }
}

h5
{
    font: 700 16px/1.25 'Open Sans', Helvetica, Arial, sans-serif; 

    display: block;

    margin: 32px 0 16px;
}
@media (min-width: 640px)
{
    h5
    {
        font-size: 19px; 

        margin: 28px 0 19px;
    }
}
@media (min-width: 1024px)
{
    h5
    {
        font-size: 21px; 

        margin: 42px 0 21px;
    }
}

h6
{
    font: 600 14px/1.25 'Open Sans', Helvetica, Arial, sans-serif; 

    display: block;

    margin: 28px 0 14px;
}
@media (min-width: 640px)
{
    h6
    {
        font-size: 16px; 

        margin: 32px 0 16px;
    }
}
@media (min-width: 1024px)
{
    h6
    {
        font-size: 19px; 

        margin: 28px 0 19px;
    }
}

.h1
{
    font: 700 32px/1.25 'FF Tibere', Palatino, Georgia, sans-serif; 

    display: block;

    margin: 64px 0 32px;
}
@media (min-width: 640px)
{
    .h1
    {
        font-size: 48px; 

        margin: 96px 0 48px;
    }
}
@media (min-width: 1024px)
{
    .h1
    {
        font-size: 62px; 

        margin: 124px 0 62px;
    }
}

.h2,
.band__title
{
    font: 700 24px/1.25 'Open Sans', Helvetica, Arial, sans-serif; 

    display: block;

    margin: 48px 0 24px;
}
@media (min-width: 640px)
{
    .h2,
    .band__title
    {
        font-size: 28px; 

        margin: 56px 0 28px;
    }
}
@media (min-width: 1024px)
{
    .h2,
    .band__title
    {
        font-size: 32px; 

        margin: 64px 0 32px;
    }
}

.h3,
.title--closings,
.chip__value
{
    font: 600 21px/1.25 'Open Sans', Helvetica, Arial, sans-serif; 

    display: block;

    margin: 42px 0 21px;
}
@media (min-width: 640px)
{
    .h3,
    .title--closings,
    .chip__value
    {
        font-size: 24px; 

        margin: 48px 0 24px;
    }
}
@media (min-width: 1024px)
{
    .h3,
    .title--closings,
    .chip__value
    {
        font-size: 28px; 

        margin: 56px 0 28px;
    }
}

.h4
{
    font: 400 19px/1.25 'Open Sans', Helvetica, Arial, sans-serif; 

    display: block;

    margin: 28px 0 19px;
}
@media (min-width: 640px)
{
    .h4
    {
        font-size: 21px; 

        margin: 42px 0 21px;
    }
}
@media (min-width: 1024px)
{
    .h4
    {
        font-size: 24px; 

        margin: 48px 0 24px;
    }
}

.h5,
.menu__title,
.closing__title,
.shot--horizontal .shot__title
{
    font: 700 16px/1.25 'Open Sans', Helvetica, Arial, sans-serif; 

    display: block;

    margin: 32px 0 16px;
}
@media (min-width: 640px)
{
    .h5,
    .menu__title,
    .closing__title,
    .shot--horizontal .shot__title
    {
        font-size: 19px; 

        margin: 28px 0 19px;
    }
}
@media (min-width: 1024px)
{
    .h5,
    .menu__title,
    .closing__title,
    .shot--horizontal .shot__title
    {
        font-size: 21px; 

        margin: 42px 0 21px;
    }
}

.h6,
.list--recognition .item__title,
.sideblock__title,
.judges .judge__name,
.shot__title
{
    font: 600 14px/1.25 'Open Sans', Helvetica, Arial, sans-serif; 

    display: block;

    margin: 28px 0 14px;
}
@media (min-width: 640px)
{
    .h6,
    .list--recognition .item__title,
    .sideblock__title,
    .judges .judge__name,
    .shot__title
    {
        font-size: 16px; 

        margin: 32px 0 16px;
    }
}
@media (min-width: 1024px)
{
    .h6,
    .list--recognition .item__title,
    .sideblock__title,
    .judges .judge__name,
    .shot__title
    {
        font-size: 19px; 

        margin: 28px 0 19px;
    }
}

h1:focus,
h2:focus,
h3:focus,
h4:focus,
h5:focus,
h6:focus
{
    outline: none;
}

a:link
{
    transition: color 150ms cubic-bezier(.77, 0, .175, 1), background 150ms cubic-bezier(.77, 0, .175, 1), box-shadow 150ms cubic-bezier(.77, 0, .175, 1); 

    color: #002f87;
}

a:visited
{
    color: #4c2c92;
}

a:hover
{
    color: #0041ba; 
    background-color: #f2f4f9;
}

a:focus
{
    z-index: 1; 

    color: #0041ba;
    outline: 0;
    background-color: #ffbf47;
    box-shadow: 0 0 0 4px #ffbf47;
}

a:active
{
    color: #0041ba; 
    outline: 0;
    background-color: #ffbf47;
    box-shadow: 0 0 0 4px #ffbf47;
}

a.teaser
{
    font-weight: 600;
}

a[target='_blank']
{
    margin-right: -24px;
}
a[target='_blank']:after
{
    z-index: 0; 

    display: inline-block;

    width: 24px;
    height: 24px;

    content: '';
    transition: opacity 150ms cubic-bezier(.77, 0, .175, 1), transform 150ms cubic-bezier(.77, 0, .175, 1);
    transform: translateX(-25%);
    vertical-align: bottom;

    opacity: 0;
    background: #f2f4f9 url('../img/icons/i_external.svg') no-repeat 50% 50%/16px auto;
}
a[target='_blank']:hover:after
{
    z-index: 1; 

    transform: translateX(0%);

    opacity: 1;
}

a[href^='tel:']
{
    white-space: nowrap;
}

ul
{
    margin: 0 0 14px;
}
@media (min-width: 640px)
{
    ul
    {
        margin-bottom: 16px;
    }
}
@media (min-width: 1024px)
{
    ul
    {
        margin-bottom: 19px;
    }
}

li
{
    margin-top: 8px;
}
li:first-child
{
    margin-top: 0;
}

ol
{
    margin: 0 0 14px;
}
@media (min-width: 640px)
{
    ol
    {
        margin-bottom: 16px;
    }
}
@media (min-width: 1024px)
{
    ol
    {
        margin-bottom: 19px;
    }
}

dl
{
    margin: 0 0 28px;
}
@media (min-width: 640px)
{
    dl
    {
        margin-bottom: 32px;
    }
}
@media (min-width: 1024px)
{
    dl
    {
        margin-bottom: 38px;
    }
}

dt
{
    font-weight: 600; 

    margin-top: 28px;
}
@media (min-width: 640px)
{
    dt
    {
        margin-top: 32px;
    }
}
@media (min-width: 1024px)
{
    dt
    {
        margin-top: 38px;
    }
}
dt:first-child
{
    margin-top: 0;
}

dd
{
    margin: 16px 0 0;
}

img,
picture
{
    display: block;

    max-width: 100%;
    height: auto;

    border-radius: 4px;
}

figure
{
    overflow: hidden; 

    margin: 0 0 28px;

    border-radius: 4px;
}
@media (min-width: 640px)
{
    figure
    {
        margin-bottom: 32px;
    }
}
@media (min-width: 1024px)
{
    figure
    {
        margin-bottom: 38px;
    }
}

figcaption
{
    font-family: 'Open Sans', Helvetica, Arial, sans-serif;
    font-size: 14px; 
    font-style: italic;

    margin: 16px 0 0;

    color: #6f777b;
}

iframe,
video
{
    overflow: hidden; 

    margin: 0 0 14px;

    border-radius: 4px;
}
@media (min-width: 640px)
{
    iframe,
    video
    {
        margin-bottom: 16px;
    }
}
@media (min-width: 1024px)
{
    iframe,
    video
    {
        margin-bottom: 19px;
    }
}

p
{
    margin: 0 0 28px;
}
@media (min-width: 640px)
{
    p
    {
        margin-bottom: 32px;
    }
}
@media (min-width: 1024px)
{
    p
    {
        margin-bottom: 38px;
    }
}

strong
{
    font-weight: 600;
}

.casing--caps
{
    text-transform: uppercase;
}

.casing--lowercase
{
    text-transform: lowercase;
}

mark
{
    background-color: #ffbf47;
    box-shadow: 0 0 0 4px #ffbf47;
}

abbr[title]
{
    font-variant: none;

    cursor: help; 
    text-decoration: none;

    border-bottom: 1px dotted;
}

blockquote
{
    font-family: 'FF Tibere', Palatino, Georgia, sans-serif;
    font-size: 28px;
    line-height: 1.25; 

    margin: 56px 0;
    padding: 0 28px;

    border-left: 4px solid #ae936c;
}
@media (min-width: 640px)
{
    blockquote
    {
        font-size: 32px; 

        margin: 64px 0;
        padding: 0 32px;
    }
}
@media (min-width: 1024px)
{
    blockquote
    {
        margin: 76px 0; 
        padding: 0 38px;
    }
}
blockquote p:before
{
    content: open-quote;
}
blockquote p:after
{
    content: close-quote;
}
blockquote footer
{
    font-family: 'Open Sans', Helvetica, Arial, sans-serif;
    font-size: 16px; 
    font-style: normal;
}
blockquote footer:before
{
    display: inline-block;

    margin-right: 8px; 

    content: '\2014';
}

hr,
.menu__divider
{
    height: 1px;
    margin: 32px 0;

    border: 0; 
    background-color: #cccfd1;
}

table
{
    width: 100%;

    border-collapse: collapse;
}

caption
{
    text-align: left; 

    color: #6f777b;
}

tr:hover th,
tr:hover td
{
    background-color: rgba(111, 119, 123, .05);
}

thead th,
thead td
{
    font-weight: 700;

    padding: 8px 0;

    text-align: left; 

    color: #002f87;
    border-bottom: 2px solid;
}

tbody th,
tbody td
{
    padding: 8px 0;

    text-align: left; 

    border-top: 1px solid #181919;
}

tbody th
{
    font-weight: 600;
}

tbody tr:first-child th,
tbody tr:first-child td
{
    border-top: 0;
}

select
{
    font-size: 16px;

    overflow: hidden;

    width: 100%;
    height: 41px;
    padding: 8px 40px 8px 8px;

    cursor: pointer;
    transition: border 150ms cubic-bezier(.77, 0, .175, 1), box-shadow 150ms cubic-bezier(.77, 0, .175, 1); 
    text-overflow: ellipsis;

    border: 2px solid #6f777b;
    border-radius: 4px;
    background-image: url('../img/icons/i_caret-down.svg');
    background-repeat: no-repeat;
    background-position: calc(100% - 8px) 50%;
    background-size: 24px auto;

    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
}
@media (min-width: 640px)
{
    select
    {
        height: 44px;
    }
}
@media (min-width: 1024px)
{
    select
    {
        height: 48px;
    }
}
select::-ms-expand
{
    display: none;
}
select:hover
{
    border-color: #002f87;
}
select:focus
{
    border-color: #002f87;
    outline: 0; 
    box-shadow: 0 0 0 4px rgba(0, 47, 135, .16);
}

.radios .option
{
    position: relative;
}
.radios .option__icon
{
    position: absolute;
    z-index: 1; 
    top: 1px;

    display: block;

    width: 20px;
    height: 20px;

    transition: border 150ms cubic-bezier(.77, 0, .175, 1), box-shadow 150ms cubic-bezier(.77, 0, .175, 1);

    border: 2px solid #6f777b;
    border-radius: 50%;
}
@media (min-width: 640px)
{
    .radios .option__icon
    {
        top: 2px;
    }
}
@media (min-width: 1024px)
{
    .radios .option__icon
    {
        top: 4px;
    }
}
.radios .option__icon:before
{
    position: absolute;
    top: 50%;
    left: 50%;

    width: 10px;
    height: 10px;
    margin: -5px 0 0 -5px;

    content: '';
    transition: transform 150ms cubic-bezier(.77, 0, .175, 1), opacity 150ms cubic-bezier(.77, 0, .175, 1); 
    transform: scale(0);

    opacity: 0;
    border-radius: 50%;
    background-color: #002f87;
}
.radios .option__label
{
    font-weight: 400;

    position: relative;
    z-index: 2; 

    display: inline-block;

    padding-left: 28px;

    cursor: pointer;
}
.radios .option__input:focus + .option__label + .option__icon
{
    box-shadow: 0 0 0 4px rgba(0, 47, 135, .16);
}
.radios .option__input:focus + .option__label + .option__icon svg path
{
    stroke-dashoffset: 0;
}
.radios .option:hover .option__icon
{
    border-color: #002f87;
    box-shadow: 0 0 0 4px #f2f4f9;
}
.radios .option:hover .option__icon:before
{
    transform: scale(.5); 

    opacity: .25;
    background-color: #002f87;
}
.radios .option__input:checked + .option__label + .option__icon
{
    border-color: #002f87;
}
.radios .option__input:checked + .option__label + .option__icon:before
{
    transform: scale(1); 

    opacity: 1;
}

.checkboxes .option
{
    position: relative;
}
.checkboxes .option__icon
{
    position: absolute;
    z-index: 1; 
    top: 1px;

    display: block;

    width: 20px;
    height: 20px;

    transition: box-shadow 150ms cubic-bezier(.77, 0, .175, 1);

    border: 2px solid #6f777b;
    border-radius: 4px;
}
@media (min-width: 640px)
{
    .checkboxes .option__icon
    {
        top: 2px;
    }
}
@media (min-width: 1024px)
{
    .checkboxes .option__icon
    {
        top: 4px;
    }
}
.checkboxes .option__icon svg
{
    position: absolute;
    top: -2px;
    left: -2px;

    width: 20px;
    height: 20px;
}
.checkboxes .option__icon svg path
{
    transition: all .6s ease; 

    fill: none;
    stroke: #002f87;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-dasharray: 71px;
    stroke-dashoffset: 71px;
}
.checkboxes .option__icon svg polyline
{
    transition: all .3s ease; 

    fill: none;
    stroke: #fff;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-dasharray: 18px;
    stroke-dashoffset: 18px;
}
.checkboxes .option__label
{
    font-weight: 400;

    position: relative;
    z-index: 2; 

    display: inline-block;

    padding-left: 28px;

    cursor: pointer;
}
.checkboxes .option__input:focus + .option__label + .option__icon
{
    box-shadow: 0 0 0 4px rgba(0, 47, 135, .16);
}
.checkboxes .option__input:focus + .option__label + .option__icon svg path
{
    stroke-dashoffset: 0;
}
.checkboxes .option:hover .option__icon
{
    box-shadow: 0 0 0 4px #f2f4f9;
}
.checkboxes .option:hover .option__icon svg path
{
    stroke-dashoffset: 0;
}
.checkboxes .option__input:checked + .option__label + .option__icon
{
    border-color: #002f87;
}
.checkboxes .option__input:checked + .option__label + .option__icon svg path
{
    fill: #002f87;
}
.checkboxes .option__input:checked + .option__label + .option__icon svg polyline
{
    stroke-dashoffset: 0;
}

input
{
    display: block;

    width: 100%;
    padding: 8px;

    transition: border 150ms cubic-bezier(.77, 0, .175, 1), box-shadow 150ms cubic-bezier(.77, 0, .175, 1); 

    border: 2px solid #6f777b;

    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
}
input:focus
{
    border-color: #002f87;
    outline: 0; 
    box-shadow: 0 0 0 4px rgba(0, 47, 135, .16);
}
input:hover
{
    border-color: #002f87;
}

input[type='search']
{
    border-radius: 0; 

    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
}

input[type='number']::-webkit-inner-spin-button,
input[type='number']::-webkit-outer-spin-button
{
    margin: 0; 

    -webkit-appearance: none;
            appearance: none;
}

textarea
{
    display: block;

    width: 100%;
    min-height: 128px;
    padding: 8px;

    resize: vertical;
    transition: border 150ms cubic-bezier(.77, 0, .175, 1), box-shadow 150ms cubic-bezier(.77, 0, .175, 1); 

    border: 2px solid #6f777b;
}
textarea:focus
{
    border-color: #002f87;
    outline: 0; 
    box-shadow: 0 0 0 4px rgba(0, 47, 135, .16);
}
textarea:hover
{
    border-color: #002f87;
}

address
{
    font-style: normal;

    margin: 0 0 14px;
}
@media (min-width: 640px)
{
    address
    {
        margin-bottom: 16px;
    }
}
@media (min-width: 1024px)
{
    address
    {
        margin-bottom: 19px;
    }
}

.wrapper
{
    width: 100%; 
    margin: 0;
    padding: 0 32px;
}
@media (min-width: 640px)
{
    .wrapper
    {
        padding: 0 64px;
    }
}
@media (min-width: 1440px)
{
    .wrapper
    {
        width: 1140px;
        margin: 0 auto; 
        padding: 0;
    }
}
@media (min-width: 1680px)
{
    .wrapper
    {
        width: 1280px;
    }
}

.header-container
{
    position: fixed;
    z-index: 10000; 
    top: 0;
    left: 0;

    display: -ms-flexbox;
    display: flex;

    width: 100%;
    height: 68px;

    transition: box-shadow 300ms cubic-bezier(.77, 0, .175, 1);

    background-color: #fff;
    box-shadow: 0 1px 0 0 rgba(111, 119, 123, .25);

    -ms-flex-align: stretch;
    align-items: stretch;
    -ms-flex-line-pack: stretch;
    align-content: stretch;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}
@media (min-width: 640px)
{
    .header-container
    {
        height: 84px;
    }
}
@media (min-width: 1024px)
{
    .header-container
    {
        font-size: 16px; 

        height: 80px;

        border: 0;

        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
        -ms-flex-pack: justify;
        justify-content: space-between;
    }
}
.header-container + *
{
    margin-top: 68px;
}
@media (min-width: 640px)
{
    .header-container + *
    {
        margin-top: 84px;
    }
}
@media (min-width: 1024px)
{
    .header-container + *
    {
        margin-top: 160px;
    }
}
@media (min-width: 1366px)
{
    .header-container + *
    {
        margin-top: 80px;
    }
}
.header-container .actions
{
    display: -ms-flexbox;
    display: flex;

    width: 100%; 

    -ms-flex: 0 0 auto;
        flex: 0 0 auto;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
@media (min-width: 1024px)
{
    .header-container .actions
    {
        width: auto;
    }
}
.header-container .panel
{
    position: fixed;
    z-index: 10002; 
    top: 0;

    display: block;
    overflow-y: auto;

    width: 100%;
    height: 100%;

    transition: visibility 300ms cubic-bezier(.77, 0, .175, 1), transform 300ms cubic-bezier(.77, 0, .175, 1);

    background-color: #fff;
}
@media (min-width: 640px)
{
    .header-container .panel
    {
        box-shadow: -2px 0 8px 0 rgba(111, 119, 123, .25);
    }
}
@media (min-width: 1024px)
{
    .header-container .panel
    {
        position: relative;
        z-index: auto; 
        top: auto;
        left: auto;

        overflow: visible;

        padding: 0;

        transition: none;
        transform: none;

        opacity: 1;
        border: 0;
        background-color: transparent;
        box-shadow: none;
    }
}
.header-container .panel--menu
{
    z-index: 10002; 
    left: 100%;

    visibility: hidden;

    padding: 64px 32px 32px;

    opacity: 1;
}
@media (min-width: 1024px)
{
    .header-container .panel--menu
    {
        left: auto;

        visibility: visible; 

        width: auto;
        padding: 0;

        transform: none;
    }
}
.header-container .panel--menu.panel--active
{
    visibility: visible; 

    transform: translateX(-100%);
}
.header-container .panel--search
{
    left: 0;

    transform: translateX(-100%); 

    background-color: #f6f6f6;
}
@media (min-width: 1024px)
{
    .header-container .panel--search
    {
        position: absolute;
        top: 100%;
        left: 0;

        display: -ms-flexbox;
        display: flex;

        width: auto;

        transform: none; 

        border-top: 1px solid rgba(111, 119, 123, .15);
        background-color: #fff;
        box-shadow: 0 2px 8px 0 rgba(111, 119, 123, .25);

        -ms-flex: 2 0 auto;
            flex: 2 0 auto;
    }
}
@media (min-width: 1366px)
{
    .header-container .panel--search
    {
        position: relative;
        top: auto;
        left: auto;

        margin-left: 16px;

        border: 0;
        background-color: transparent;
        box-shadow: none;
    }
}

@media (max-width: 1365px) and (min-width: 1024px)
{
    .header-container .panel--search
    {
        width: 100%;
    }
}
.header-container .panel--search.panel--active
{
    transform: translateX(0%);
}
.header-container .panel--suggestions
{
    position: static;
    z-index: 100; 

    padding: 100px 32px 32px;

    background-color: transparent;
}
@media (min-width: 640px)
{
    .header-container .panel--suggestions
    {
        padding: 148px 72px 64px;
    }
}
@media (min-width: 1024px)
{
    .header-container .panel--suggestions
    {
        position: absolute;
        top: 100%;
        left: 0;

        visibility: hidden;
        overflow-y: scroll; 

        width: 100%;
        min-width: 480px;
        height: auto;
        max-height: 75vh;
        margin-top: 4px;
        padding: 64px;

        transition-delay: 25ms, 50ms, 0ms;
        transition-timing-function: linear, cubic-bezier(.23, 1, .32, 1);
        transition-duration: 70ms, 250ms, 250ms;
        transition-property: opacity, transform, visibility;
        transform: translateY(-16px);

        opacity: 0;
        border-radius: 4px;
        background-color: #fff;
        box-shadow: 0 2px 8px 0 rgba(111, 119, 123, .25);
    }
}
@media (min-width: 1024px)
{
    .header-container .panel--suggestions.panel--active
    {
        visibility: visible;

        transition-delay: 35ms, 50ms, 25ms; 
        transition-duration: 100ms, 150ms, 25ms;
        transform: translateY(0);

        opacity: 1;
    }
}

.content-container
{
    overflow: hidden;
}
.content-container .panel
{
    position: fixed;
    z-index: 10002; 
    top: 0;

    display: block;
    overflow-y: auto;

    width: 100%;
    height: 100%;

    transition: visibility 300ms cubic-bezier(.77, 0, .175, 1), transform 300ms cubic-bezier(.77, 0, .175, 1);

    background-color: #fff;
}
@media (min-width: 640px)
{
    .content-container .panel
    {
        box-shadow: -2px 0 8px 0 rgba(111, 119, 123, .25);
    }
}
@media (min-width: 1024px)
{
    .content-container .panel
    {
        position: relative;
        z-index: auto; 
        top: auto;
        left: auto;

        overflow: visible;

        padding: 0;

        transition: none;
        transform: none;

        opacity: 1;
        border: 0;
        background-color: transparent;
        box-shadow: none;
    }
}
.content-container .panel--secondary-menu
{
    z-index: 10002; 
    left: 100%;

    visibility: hidden;

    padding: 64px 32px 32px;

    opacity: 1;
}
@media (min-width: 640px)
{
    .content-container .panel--secondary-menu
    {
        width: 50%;
    }
}
@media (min-width: 1024px)
{
    .content-container .panel--secondary-menu
    {
        left: auto;

        visibility: visible; 

        width: 100%;
        padding: 0;

        transform: none;
    }
}
.content-container .panel--secondary-menu.panel--active
{
    visibility: visible; 

    transform: translateX(-100%);
}
.content-container .panel--contextual-menu
{
    z-index: 1; 
    top: auto;
    bottom: 0;
    left: 0;

    visibility: hidden;

    height: auto;
    padding: 32px;

    transform: translateY(100%);

    opacity: 0;
}
@media (min-width: 640px)
{
    .content-container .panel--contextual-menu
    {
        padding: 64px;
    }
}
@media (min-width: 1024px)
{
    .content-container .panel--contextual-menu
    {
        position: absolute;
        top: 100%;
        right: 0;
        bottom: auto;
        left: auto;

        width: auto;
        height: auto;
        margin-top: -32px;
        padding: 32px;

        transition: opacity 150ms cubic-bezier(.77, 0, .175, 1), visibility 150ms cubic-bezier(.77, 0, .175, 1), transform 150ms cubic-bezier(.77, 0, .175, 1); 
        transform: translateY(-16px);

        border: 1px solid rgba(111, 119, 123, .25);
        border-radius: 4px;
        background-color: #fff;
        box-shadow: 0 2px 4px rgba(24, 25, 25, .1);
    }
}
.content-container .panel--contextual-menu.panel--active
{
    z-index: 10002; 

    visibility: visible;

    transform: translateY(0%);

    opacity: 1;
}
@media (min-width: 1024px)
{
    .content-container .panel--contextual-menu.panel--active
    {
        visibility: visible; 

        transform: translateY(0);
    }
}
.content-container .panel--contextual-menu .links
{
    margin: 0;
}
.content-container .panel--contextual-menu .links__item
{
    margin: 0;

    border-top: 1px solid #cccfd1;
}
@media (min-width: 1024px)
{
    .content-container .panel--contextual-menu .links__item
    {
        margin-top: 19px;

        border-top: 0;
    }
}
.content-container .panel--contextual-menu .links__item:first-child
{
    border-top: 0;
}
@media (min-width: 1024px)
{
    .content-container .panel--contextual-menu .links__item:first-child
    {
        margin-top: 0;
    }
}
.content-container .panel--contextual-menu .links__item a
{
    display: block;

    padding: 16px 0;
}
@media (min-width: 1024px)
{
    .content-container .panel--contextual-menu .links__item a
    {
        display: inline;

        padding: inherit;
    }
}
@media (min-width: 1024px)
{
    .content-container .panel--contextual-menu .button,
    .content-container .panel--contextual-menu .toggle,
    .content-container .panel--contextual-menu .panel-group__toggle,
    .content-container .panel--contextual-menu .alert__dismiss,
    .content-container .panel--contextual-menu .card__action,
    .content-container .panel--contextual-menu .shot__button
    {
        display: none;
    }
}
.content-container .panel--home-suggestions
{
    position: absolute;
    z-index: 100; 
    top: 100%;
    left: 0;

    visibility: hidden;

    width: 100%;
    height: auto;
    margin-top: 4px;
    padding: 32px;

    transition-delay: 25ms, 50ms, 0ms;
    transition-timing-function: linear, cubic-bezier(.23, 1, .32, 1);
    transition-duration: 70ms, 250ms, 250ms;
    transition-property: opacity, transform, visibility;
    transform: translateY(-16px);

    opacity: 0;
    border-radius: 4px;
    background-color: #fff;
    box-shadow: 0 2px 8px 0 rgba(111, 119, 123, .25);
}
@media (min-width: 640px)
{
    .content-container .panel--home-suggestions
    {
        padding: 48px;
    }
}
@media (min-width: 1024px)
{
    .content-container .panel--home-suggestions
    {
        overflow-y: scroll; 

        min-width: 480px;
        max-height: 75vh;
        padding: 48px;
    }
}
.content-container .panel--home-suggestions.panel--active
{
    visibility: visible;

    transition-delay: 35ms, 50ms, 25ms; 
    transition-duration: 100ms, 150ms, 25ms;
    transform: translateY(0);

    opacity: 1;
}

.footer-container
{
    position: relative;

    padding: 32px 0;

    color: #fff; 
    border-top: 2px solid #ae936c;
    background-color: #072235;
    box-shadow: inset 0 2px 0 0 #ae936c;
}
@media (min-width: 640px)
{
    .footer-container
    {
        padding: 64px 0;
    }
}
@media (min-width: 1024px)
{
    .footer-container
    {
        padding: 128px 0;

        border-top: 4px solid #ae936c;
        box-shadow: inset 0 4px 0 0 #ae936c;
    }
}
.footer-container a:link
{
    color: #fff;
}
.footer-container a:visited
{
    color: #fff;
}
.footer-container a:hover
{
    color: #fff; 
    background-color: #0a304c;
}
.footer-container a:focus
{
    color: #072235; 
    background-color: #ffbf47;
    box-shadow: 0 0 0 4px #ffbf47;
}
.footer-container a:active
{
    color: #072235; 
    background-color: #ffbf47;
    box-shadow: 0 0 0 4px #ffbf47;
}
.footer-container a[target='_blank']:after
{
    background-color: #0a304c;
    background-image: url('../img/icons/i_external_white.svg');
}
@media (min-width: 1280px)
{
    .footer-container .panel-group--additional .panel__title a
    {
        display: inline-block;

        padding: 0;

        text-decoration: none; 
        pointer-events: none;

        border: 0;
    }
}
@media (min-width: 1280px)
{
    .footer-container .panel-group--additional .panel__title a:after
    {
        display: none;
    }
}
@media (min-width: 1280px)
{
    .footer-container .panel-group--additional
    {
        width: 49.21875%;
        margin-bottom: 0;
    }
}
@media (min-width: 640px)
{
    .footer-container .panel-group--additional .links__list
    {
        display: -ms-flexbox;
        display: flex;

        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        -ms-flex-pack: justify;
        justify-content: space-between;
    }
}
@media (min-width: 640px)
{
    .footer-container .panel-group--additional .links__item
    {
        width: 48.0769230769%;
    }
}
@media (min-width: 640px)
{
    .footer-container .panel-group--additional .links__item:nth-child(2)
    {
        margin-top: 0;
    }
}
@media (min-width: 1280px)
{
    .footer-container .panel-group--community
    {
        width: 23.671875%;
    }
}
@media (min-width: 1280px)
{
    .footer-container .panel-group--community .panel__title a
    {
        display: inline-block;

        padding: 0;

        text-decoration: none; 
        pointer-events: none;

        border: 0;
    }
}
@media (min-width: 1280px)
{
    .footer-container .panel-group--community .panel__title a:after
    {
        display: none;
    }
}
@media (min-width: 1280px)
{
    .footer-container .panel-group--help-support
    {
        width: 23.671875%;
    }
}
@media (min-width: 1280px)
{
    .footer-container .panel-group--help-support .panel__title a
    {
        display: inline-block;

        padding: 0;

        text-decoration: none; 
        pointer-events: none;

        border: 0;
    }
}
@media (min-width: 1280px)
{
    .footer-container .panel-group--help-support .panel__title a:after
    {
        display: none;
    }
}
@media (min-width: 1280px)
{
    .footer-container .panel-group--legal
    {
        width: auto;
    }
}
@media (min-width: 1280px)
{
    .footer-container .panel-group--legal .panel__title
    {
        position: absolute;
        top: auto;
        left: -10000px;

        overflow: hidden; 

        width: 1px;
        height: 1px;
        margin: 0;
    }
}
@media (min-width: 1280px)
{
    .footer-container .panel-group--legal .panel__content
    {
        margin-top: 0;
    }
}
@media (min-width: 1280px)
{
    .footer-container .panel-group--legal .links__item
    {
        display: inline-block;

        margin-top: 0;
        margin-right: 16px;
    }
}
.footer-container .panel-group--legal .links__item:first-child
{
    font-weight: 600;
}
.footer-container .links__item--facebook a:before
{
    background-image: url('../img/icons/i_social-facebook_white.svg');
}
.footer-container .links__item--twitter a:before
{
    background-image: url('../img/icons/i_social-twitter_white.svg');
}
.footer-container .links__item--linkedin a:before
{
    background-image: url('../img/icons/i_social-linkedin_white.svg');
}
.footer-container .links__item--youtube a:before
{
    background-image: url('../img/icons/i_social-youtube_white.svg');
}
.footer-container .links__item--email a:before
{
    background-image: url('../img/icons/i_social-email_white.svg');
}
.footer-container .links--connect
{
    margin-top: 32px;

    text-align: center;
}
@media (min-width: 1280px)
{
    .footer-container .links--connect
    {
        display: -ms-flexbox;
        display: flex;

        margin: 0; 

        -ms-flex-pack: start;
        justify-content: flex-start;
        -ms-flex-align: center;
        align-items: center;
    }
}
@media (min-width: 1440px)
{
    .footer-container .links--connect
    {
        -ms-flex-pack: end;
        justify-content: flex-end;
    }
}
.footer-container .links--connect .links__title
{
    white-space: nowrap;
}
@media (min-width: 640px)
{
    .footer-container .links--connect .links__title
    {
        font-size: 16px; 

        margin-bottom: 16px;
    }
}
@media (min-width: 1280px)
{
    .footer-container .links--connect .links__title
    {
        font-size: 16px; 

        margin: 0 16px 0 0;
    }
}
.footer-container .links--connect .links__title:after
{
    content: ':';
}
.footer-container .links--connect .links__list
{
    font-size: 0;
    line-height: 0; 

    display: -ms-flexbox;
    display: flex;

    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
}
.footer-container .links--connect .links__item
{
    width: 32px;
    height: 32px;
    margin: 0 8px;
}
.footer-container .links--connect .links__item a
{
    width: 100%;
    height: 100%;
    margin: 0;
}
.footer-container .links--connect .links__item a:focus
{
    background-color: transparent;
}
.footer-container .links--languages
{
    margin-top: 32px;

    text-align: center;
}
@media (min-width: 1280px)
{
    .footer-container .links--languages
    {
        display: -ms-flexbox;
        display: flex;

        margin: 0; 

        -ms-flex-pack: center;
        justify-content: center;
        -ms-flex-align: center;
        align-items: center;
    }
}
.footer-container .links--languages .links__title
{
    font-size: 16px; 

    white-space: nowrap;
}
@media (max-width: 1279px)
{
    .footer-container .links--languages .links__title
    {
        margin-bottom: 0;
    }
}
@media (min-width: 1280px)
{
    .footer-container .links--languages .links__title
    {
        margin: 0 16px 0 0;
    }
}
.footer-container .links--languages .links__title:after
{
    content: ':';
}
@media (max-width: 1279px)
{
    .footer-container .links--languages .links__list
    {
        font-size: 16px;

        display: -ms-flexbox;
        display: flex;

        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        -ms-flex-pack: center;
        justify-content: center;
    }
}
@media (max-width: 1279px)
{
    .footer-container .links--languages .links__item
    {
        -ms-flex-preferred-size: 30%;
        flex-basis: 30%;
    }
}
@media (max-width: 639px)
{
    .footer-container .links--languages .links__item
    {
        font-size: 14px;

        -ms-flex-preferred-size: 40%;
        flex-basis: 40%;
    }
}
@media (min-width: 1280px)
{
    .footer-container .links--languages .links__item
    {
        display: inline-block;

        margin-top: 0;
        margin-right: 16px;
    }
}
@media (max-width: 1279px)
{
    .footer-container .links--languages .links__item:first-child
    {
        margin-top: 16px;
    }
}
.footer-container .primary
{
    display: -ms-flexbox;
    display: flex;

    margin-top: 16px; 

    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}
@media (min-width: 1280px)
{
    .footer-container .primary
    {
        margin-top: 0; 
        padding-bottom: 64px;

        -ms-flex-pack: justify;
        justify-content: space-between;
    }
}
.footer-container .secondary
{
    position: relative;

    display: -ms-flexbox;
    display: flex;

    margin-bottom: 16px;

    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -ms-flex-pack: center;
    justify-content: center;
}
@media (min-width: 1280px)
{
    .footer-container .secondary
    {
        font-size: 16px; 

        padding-top: 64px;

        border-top: 2px solid #ae936c;

        -ms-flex-pack: justify;
        justify-content: space-between;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    }
}
@media (min-width: 1280px)
{
    .footer-container .secondary:before
    {
        position: absolute;
        top: 0;
        left: 50%;

        width: 124px;
        height: 24px;

        content: '';
        transform: translate3d(-50%, -50%, 0); 

        background: #072235 url('../img/graphics/g_stars.svg') no-repeat 50% 50%/80px auto;
    }
}
.footer-container .secondary .logo
{
    -ms-flex-order: 2;
    order: 2;
}
@media (min-width: 1280px)
{
    .footer-container .secondary .logo
    {
        -ms-flex-order: 1;
        order: 1;
    }
}
.footer-container .secondary .links
{
    -ms-flex-order: 1;
    order: 1;
}
@media (min-width: 1280px)
{
    .footer-container .secondary .links
    {
        -ms-flex-order: 2;
        order: 2;
    }
}
.footer-container .secondary .copyright
{
    -ms-flex-order: 3;
    order: 3;
}
.footer-container .language
{
    position: relative;

    display: -ms-flexbox;
    display: flex;

    margin-bottom: 16px;

    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -ms-flex-pack: center;
    justify-content: center;
}
@media (min-width: 1280px)
{
    .footer-container .language
    {
        font-size: 16px; 

        -ms-flex-pack: justify;
        justify-content: space-between;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    }
}

.zones
{
    margin-bottom: 48px;
}
@media (min-width: 640px)
{
    .zones
    {
        margin-bottom: 96px;
    }
}
@media (min-width: 1280px)
{
    .zones
    {
        display: -ms-flexbox;
        display: flex;

        margin-bottom: 128px; 

        -ms-flex-pack: justify;
        justify-content: space-between;
    }
}
@media (min-width: 1280px)
{
    .zones > .wrapper
    {
        display: -ms-flexbox;
        display: flex;

        -ms-flex-pack: justify;
        justify-content: space-between;
    }
}
@media (min-width: 1280px)
{
    .zones[data-columns='2'] .zone,
    .zones.band--callout .zone
    {
        width: 23.671875%;
    }
}
@media (min-width: 1280px)
{
    .zones[data-columns='2'] .zone:first-child,
    .zones.band--callout .zone:first-child
    {
        width: 66.09375%;
    }
}
@media (min-width: 1280px)
{
    .zones[data-columns='2'][data-layout-reverse] .zone,
    .zones.band--callout[data-layout-reverse] .zone
    {
        width: 66.09375%;
    }
}
@media (min-width: 1280px)
{
    .zones[data-columns='2'][data-layout-reverse] .zone:first-child,
    .zones.band--callout[data-layout-reverse] .zone:first-child
    {
        width: 23.671875%;
    }
}
@media (min-width: 1280px)
{
    .zones[data-columns='3'] .zone
    {
        width: 15.625%;

        -ms-flex-order: 1;
        order: 1;
    }
}
@media (min-width: 1280px)
{
    .zones[data-columns='3'] .zone:first-child
    {
        width: 49.21875%;

        -ms-flex-order: 2;
        order: 2;
    }
}
.zones[data-columns='3'] .zone:first-child + .zone
{
    padding-top: 32px;

    border-top: 2px solid #181919;
}
@media (min-width: 640px)
{
    .zones[data-columns='3'] .zone:first-child + .zone
    {
        padding-top: 48px;
    }
}
@media (min-width: 1280px)
{
    .zones[data-columns='3'] .zone:first-child + .zone
    {
        padding-top: 0;

        border-top: 0;
    }
}
@media (min-width: 1024px)
{
    .zones[data-columns='3'] .zone:first-child .band
    {
        padding: 64px 0 0;
    }
}
.zones[data-columns='3'] .zone:first-child .band:first-child
{
    padding: 0;
}
@media (min-width: 1024px)
{
    .zones[data-columns='3'] .zone:first-child .band:only-child
    {
        padding: 0 0 64px;
    }
}
@media (min-width: 1280px)
{
    .zones[data-columns='3'] .zone:last-child
    {
        -ms-flex-order: 3;
        order: 3;
    }
}
@media (min-width: 1280px)
{
    .zones[data-columns='3'][data-layout-compact] .zone
    {
        width: 19.921875%;

        -ms-flex-order: 1;
        order: 1;
    }
}
@media (min-width: 1280px)
{
    .zones[data-columns='3'][data-layout-compact] .zone:first-child
    {
        width: 49.21875%;

        -ms-flex-order: 2;
        order: 2;
    }
}
@media (min-width: 1280px)
{
    .zones[data-columns='3'][data-layout-compact] .zone:last-child
    {
        -ms-flex-order: 3;
        order: 3;
    }
}
.zones[data-columns='3'][data-layout-people] > .wrapper
{
    display: -ms-flexbox;
    display: flex;
        flex-direction: column; 

    -ms-flex-direction: column;
}
@media (min-width: 1280px)
{
    .zones[data-columns='3'][data-layout-people] > .wrapper
    {
        display: -ms-flexbox;
        display: flex;
            flex-direction: row;

        -ms-flex-direction: row;
        -ms-flex-pack: justify;
        justify-content: space-between;
    }
}
.zones[data-columns='3'][data-layout-people] .zone:first-child + .zone
{
    width: 100%; 

    -ms-flex-order: 3;
    order: 3;
}
@media (min-width: 1280px)
{
    .zones[data-columns='3'][data-layout-people] .zone:first-child + .zone
    {
        width: auto;

        -ms-flex-order: 1;
        order: 1;
    }
}
.zones[data-columns='3'][data-layout-people] .zone:first-child
{
    margin-top: 32px; 

    -ms-flex-order: 2;
    order: 2;
}
@media (min-width: 1280px)
{
    .zones[data-columns='3'][data-layout-people] .zone:first-child
    {
        margin-top: 0;
    }
}
.zones[data-columns='3'][data-layout-people] .zone:last-child
{
    -ms-flex-order: 1;
    order: 1;
}
@media (min-width: 1280px)
{
    .zones[data-columns='3'][data-layout-people] .zone:last-child
    {
        -ms-flex-order: 3;
        order: 3;
    }
}

.zone
{
    width: 100%;
    margin-top: 32px;
}
@media (min-width: 640px)
{
    .zone
    {
        margin-top: 48px;
    }
}
@media (min-width: 1024px)
{
    .zone
    {
        margin-top: 64px;
    }
}
@media (min-width: 1280px)
{
    .zone
    {
        margin-top: 0;
    }
}
.zone:first-child
{
    margin-top: 0;
}

.band
{
    padding: 32px 0 0;
}
@media (min-width: 640px)
{
    .band
    {
        padding: 64px 0 0;
    }
}
@media (min-width: 1024px)
{
    .band
    {
        padding: 32px 0 0;
    }
}
.band:first-child
{
    padding: 0;
}
.band:only-child
{
    padding: 0 0 32px;
}
@media (min-width: 640px)
{
    .band:only-child
    {
        padding: 0 0 64px;
    }
}
@media (min-width: 1024px)
{
    .band:only-child
    {
        padding: 0 0 128px;
    }
}
.band__title
{
    width: 100%;
    margin-top: 0;
}
.band__footnote
{
    line-height: 1.2; 

    margin-top: 16px;
    padding-top: 16px;

    color: #6f777b;
    border-top: 1px solid rgba(111, 119, 123, .2);
}
@media (min-width: 640px)
{
    .band__footnote
    {
        margin-top: 24px;
        padding-top: 24px;
    }
}
@media (min-width: 1024px)
{
    .band__footnote
    {
        margin-top: 32px;
        padding-top: 32px;
    }
}
.band[data-theme='off-white'],
.band.band--callout,
.band.band--footnote
{
    background-color: #f6f6f6;
}
.band[data-theme='off-white'] .meta,
.band.band--callout .meta,
.band.band--footnote .meta,
.band[data-theme='off-white'] .links--search-quick .links__title,
.links--search-quick .band[data-theme='off-white'] .links__title,
.band.band--callout .links--search-quick .links__title,
.links--search-quick .band.band--callout .links__title,
.band.band--footnote .links--search-quick .links__title,
.links--search-quick .band.band--footnote .links__title,
.band[data-theme='off-white'] .links--search-suggest .links__title,
.links--search-suggest .band[data-theme='off-white'] .links__title,
.band.band--callout .links--search-suggest .links__title,
.links--search-suggest .band.band--callout .links__title,
.band.band--footnote .links--search-suggest .links__title,
.links--search-suggest .band.band--footnote .links__title,
.band[data-theme='off-white'] .links--search-top .links__title,
.links--search-top .band[data-theme='off-white'] .links__title,
.band.band--callout .links--search-top .links__title,
.links--search-top .band.band--callout .links__title,
.band.band--footnote .links--search-top .links__title,
.links--search-top .band.band--footnote .links__title,
.band[data-theme='off-white'] .list--recognition .item__meta,
.list--recognition .band[data-theme='off-white'] .item__meta,
.band.band--callout .list--recognition .item__meta,
.list--recognition .band.band--callout .item__meta,
.band.band--footnote .list--recognition .item__meta,
.list--recognition .band.band--footnote .item__meta,
.band[data-theme='off-white'] .closing__meta,
.band.band--callout .closing__meta,
.band.band--footnote .closing__meta,
.band[data-theme='off-white'] .chip__label,
.band.band--callout .chip__label,
.band.band--footnote .chip__label,
.band[data-theme='off-white'] .district__meta,
.band.band--callout .district__meta,
.band.band--footnote .district__meta,
.band[data-theme='off-white'] .shot__prefix,
.band.band--callout .shot__prefix,
.band.band--footnote .shot__prefix,
.band[data-theme='off-white'] .shot__suffix,
.band.band--callout .shot__suffix,
.band.band--footnote .shot__suffix
{
    color: #181919;
}
@media (min-width: 640px)
{
    .band__parts
    {
        display: -ms-flexbox;
        display: flex;

        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    }
}
.band__part
{
    width: 100%;
    margin-top: 32px;
}
@media (min-width: 640px)
{
    .band__part
    {
        margin-top: 48px;
    }
}
@media (min-width: 1024px)
{
    .band__part
    {
        margin-top: 64px;
    }
}
.band__part:first-child
{
    margin-top: 0;
}
.band__part > *:first-child
{
    margin-top: 0;
}
.band__part > *:last-child
{
    margin-bottom: 0;
}
@media (min-width: 640px)
{
    .band[data-columns='2'] .band__part,
    .band.band--callout .band__part
    {
        width: 48.0769230769%;
        margin-left: 3.8461538462%;
    }
}
@media (min-width: 1024px)
{
    .band[data-columns='2'] .band__part,
    .band.band--callout .band__part
    {
        width: 49.21875%;
        margin-left: 1.5625%;
    }
}
@media (min-width: 640px)
{
    .band[data-columns='2'] .band__part:nth-child(odd),
    .band.band--callout .band__part:nth-child(odd)
    {
        margin-left: 0;
    }
}
@media (min-width: 640px)
{
    .band[data-columns='2'] .band__part:nth-child(1),
    .band.band--callout .band__part:nth-child(1),
    .band[data-columns='2'] .band__part:nth-child(2),
    .band.band--callout .band__part:nth-child(2)
    {
        margin-top: 0;
    }
}
@media (min-width: 640px)
{
    .band[data-columns='3'] .band__part
    {
        width: 48.0769230769%;
        margin-left: 3.8461538462%;
    }
}
@media (min-width: 1024px)
{
    .band[data-columns='3'] .band__part
    {
        width: 32.1875%;
        margin-left: 1.71875%;
    }
}
@media (min-width: 640px)
{
    .band[data-columns='3'] .band__part:nth-child(3n-2)
    {
        width: 100%;
        margin-left: 0;
    }
}
@media (min-width: 1024px)
{
    .band[data-columns='3'] .band__part:nth-child(3n-2)
    {
        width: 32.1875%;
    }
}
@media (min-width: 640px)
{
    .band[data-columns='3'] .band__part:nth-child(3n-1)
    {
        margin-left: 0;
    }
}
@media (min-width: 1024px)
{
    .band[data-columns='3'] .band__part:nth-child(3n-1)
    {
        margin-left: 1.71875%;
    }
}
@media (min-width: 1024px)
{
    .band[data-columns='3'] .band__part:nth-child(1),
    .band[data-columns='3'] .band__part:nth-child(2),
    .band[data-columns='3'] .band__part:nth-child(3)
    {
        margin-top: 0;
    }
}
@media (min-width: 640px)
{
    .band[data-columns='4'] .band__part
    {
        width: 48.0769230769%;
        margin-left: 3.8461538462%;
    }
}
@media (min-width: 1024px)
{
    .band[data-columns='4'] .band__part
    {
        width: 23.671875%;
        margin-left: 1.7708333333%;
    }
}
@media (min-width: 640px)
{
    .band[data-columns='4'] .band__part:nth-child(odd)
    {
        margin-left: 0;
    }
}
@media (min-width: 1024px)
{
    .band[data-columns='4'] .band__part:nth-child(odd)
    {
        margin-left: 1.7708333333%;
    }
}
@media (min-width: 1024px)
{
    .band[data-columns='4'] .band__part:nth-child(4n-3)
    {
        margin-left: 0;
    }
}
@media (min-width: 640px)
{
    .band[data-columns='4'] .band__part:nth-child(1),
    .band[data-columns='4'] .band__part:nth-child(2)
    {
        margin-top: 0;
    }
}
@media (min-width: 1024px)
{
    .band[data-columns='4'] .band__part:nth-child(3),
    .band[data-columns='4'] .band__part:nth-child(4)
    {
        margin-top: 0;
    }
}
@media (min-width: 1024px)
{
    .band[data-tension='8-4'] .band__part
    {
        width: 32.03125%;
        margin-left: 1.875%;
    }
}
@media (min-width: 1024px)
{
    .band[data-tension='8-4'] .band__part:nth-child(odd)
    {
        width: 66.015625%;
        margin-left: 0;
    }
}
@media (min-width: 1024px)
{
    .band[data-tension='8-3'] .band__part,
    .band.band--callout .band__part
    {
        width: 23.671875%;
        margin-left: 10.3125%;
    }
}
@media (min-width: 1024px)
{
    .band[data-tension='8-3'] .band__part:nth-child(odd),
    .band.band--callout .band__part:nth-child(odd)
    {
        width: 66.015625%;
        margin-left: 0;
    }
}
.band--striped,
.band.band--court-date-form,
.band--striped:first-child,
.band.band--court-date-form:first-child
{
    padding-bottom: 32px;

    background: linear-gradient(to bottom, #fff 50%, #f6f6f6 50%);
}
@media (min-width: 640px)
{
    .band--striped,
    .band.band--court-date-form,
    .band--striped:first-child,
    .band.band--court-date-form:first-child
    {
        padding-bottom: 64px;
    }
}
@media (min-width: 1024px)
{
    .band--striped,
    .band.band--court-date-form,
    .band--striped:first-child,
    .band.band--court-date-form:first-child
    {
        padding-bottom: 128px;
    }
}

aside.band
{
    margin-bottom: 32px;
}
@media (min-width: 640px)
{
    aside.band
    {
        margin-bottom: 64px;
    }
}
@media (min-width: 1280px)
{
    aside.band
    {
        margin-bottom: 128px;
    }
}

aside.band.band--callout
{
    margin: 0; 
    padding: 32px 0 64px;
}
@media (min-width: 640px)
{
    aside.band.band--callout
    {
        padding: 64px 0 96px;
    }
}
@media (min-width: 1280px)
{
    aside.band.band--callout
    {
        padding: 128px 0 160px;
    }
}

.breadcrumbs ol
{
    font-family: 'Open Sans', Helvetica, Arial, sans-serif;
    font-size: 16px;
    line-height: 1.25;

    display: -ms-flexbox;
    display: flex;

    height: 64px;
    margin: 0;
    padding: 0;

    list-style: none; 

    color: #6f777b;

    -ms-flex-align: center;
    align-items: center;
}

.breadcrumbs li
{
    display: none;

    margin: 0 0 0 8px;
}
@media (min-width: 1024px)
{
    .breadcrumbs li
    {
        display: inline-block;
    }
}
.breadcrumbs li:before
{
    display: inline-block;

    width: 16px;
    height: 20px;
    margin-right: 8px;

    content: '';
    vertical-align: middle; 

    background: url('../img/icons/i_return.svg') no-repeat 50% 50%/100% auto;
}
@media (min-width: 1024px)
{
    .breadcrumbs li:before
    {
        display: none;
    }
}
.breadcrumbs li:after
{
    display: none;
}
@media (min-width: 1024px)
{
    .breadcrumbs li:after
    {
        display: inline-block;

        width: 18px;
        height: 18px;
        margin-left: 8px;

        content: '';
        vertical-align: middle; 

        background: url('../img/icons/i_caret-right.svg') no-repeat 50% 50%/100% auto;
    }
}
.breadcrumbs li:first-child
{
    margin-left: 0;
}
.breadcrumbs li:last-child:after
{
    display: none;
}
.breadcrumbs li.parent
{
    display: inline-block;

    margin-left: 0;
}
@media (min-width: 1024px)
{
    .breadcrumbs li.parent
    {
        margin: 0 0 0 8px;
    }
}
@media (min-width: 1024px)
{
    .breadcrumbs li.parent:first-child
    {
        margin-left: 0;
    }
}

.breadcrumbs [itemprop='item']
{
    display: inline-block;
    overflow: hidden;

    max-width: 200px;

    vertical-align: middle;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.pagination
{
    font-size: 16px;
    line-height: 1; 

    display: -ms-flexbox;
    display: flex;

    margin-top: 32px;
    padding-top: 32px;

    border-top: 1px solid #cccfd1;

    -ms-flex-pack: center;
    justify-content: center;
}
@media (min-width: 640px)
{
    .pagination
    {
        margin-top: 48px;
    }
}
@media (min-width: 1024px)
{
    .pagination
    {
        margin-top: 64px;
    }
}
.pagination__list
{
    display: -ms-flexbox;
    display: flex;

    margin: 0;
    padding: 0;

    list-style: none;
}
.pagination__item
{
    line-height: 1;

    display: none;

    margin: 0 4px;

    vertical-align: middle; 

    border-radius: 4px;
}
@media (min-width: 1024px)
{
    .pagination__item
    {
        display: inline-block;
    }
}
.pagination__item a
{
    display: inline-block;

    padding: 12px 16px;

    transition: background 150ms cubic-bezier(.77, 0, .175, 1), box-shadow 150ms cubic-bezier(.77, 0, .175, 1), color 150ms cubic-bezier(.77, 0, .175, 1);
    text-decoration: none; 

    color: #002f87;
    border-radius: 4px;
    background: none;
}
.pagination__item a:hover
{
    color: #0041ba; 
    background-color: #f6f6f6;
    box-shadow: 0 0 0 4px rgba(7, 34, 53, .15);
}
.pagination__previous
{
    display: inline-block;

    margin: 0 4px;
}
.pagination__previous a
{
    display: inline-block;

    padding: 12px 16px;

    text-decoration: none; 

    color: #002f87;
    border-radius: 4px;
    background: none;
}
.pagination__previous a:hover
{
    color: #0041ba; 
    background-color: #f6f6f6;
    box-shadow: 0 0 0 4px rgba(7, 34, 53, .15);
}
.pagination__next
{
    display: inline-block;

    margin: 0 4px;
}
.pagination__next a
{
    display: inline-block;

    padding: 12px 16px;

    text-decoration: none; 

    color: #002f87;
    border-radius: 4px;
    background: none;
}
.pagination__next a:hover
{
    color: #0041ba; 
    background-color: #f6f6f6;
    box-shadow: 0 0 0 4px rgba(7, 34, 53, .15);
}
.pagination--overflow
{
    padding: 12px 16px;

    color: #6f777b; 
    border: 0;
}
.pagination--active
{
    font-weight: 600; 

    display: inline-block;

    padding: 12px 16px;

    color: #fff;
    border-color: #072235;
    background-color: #072235;
}
.pagination--active:after
{
    display: inline; 

    content: attr(data-depth);
}
.pagination--disabled
{
    padding: 12px 16px;

    cursor: not-allowed; 

    color: #6f777b;
}
.pagination--learn
{
    display: block;

    padding-top: 0;

    border-top: 0;

    -ms-flex-pack: none;
    justify-content: none;
}
.pagination--learn a
{
    line-height: 1.5;

    text-decoration: underline;
}
.pagination--learn svg
{
    position: absolute;
    top: 50%;

    width: 24px;
    height: 24px;
    margin-top: -12px;
}
.pagination--learn .pagination__list
{
    display: block;
}
.pagination--learn .pagination__list:after
{
    display: table;
    clear: both; 

    content: '';
}
.pagination--learn .pagination__link-title
{
    font-weight: 600; 

    display: block;
}
.pagination--learn .pagination__link-label
{
    display: block;
}
.pagination--learn .pagination__previous
{
    position: relative;

    width: 100%;
    margin: 0;

    text-align: center;
}
@media (min-width: 640px)
{
    .pagination--learn .pagination__previous
    {
        float: left;

        width: auto;

        text-align: left;
    }
}
.pagination--learn .pagination__previous a
{
    width: 100%;
    padding-right: 56px; 
    padding-left: 56px;
}
@media (min-width: 640px)
{
    .pagination--learn .pagination__previous a
    {
        padding-right: 16px;
    }
}
.pagination--learn .pagination__previous svg
{
    left: 16px;
}
.pagination--learn .pagination__next
{
    position: relative;

    width: 100%;
    margin: 0;

    text-align: center;
}
@media (min-width: 640px)
{
    .pagination--learn .pagination__next
    {
        float: right;

        width: auto;

        text-align: right;
    }
}
.pagination--learn .pagination__next a
{
    width: 100%;
    padding-right: 56px; 
    padding-left: 56px;
}
@media (min-width: 640px)
{
    .pagination--learn .pagination__next a
    {
        padding-left: 16px;
    }
}
.pagination--learn .pagination__next svg
{
    right: 16px;
}
.pagination--learn .pagination__previous + .pagination__next
{
    border-top: 1px solid #6f777b;
}
@media (min-width: 640px)
{
    .pagination--learn .pagination__previous + .pagination__next
    {
        border-top: 0;
    }
}

.menu__title
{
    margin-top: 0;
}

.menu__subtitle
{
    font-family: 'Open Sans', Helvetica, Arial, sans-serif;
    font-size: 14px;
    font-weight: 600;

    margin: 0;
    padding: 8px 0;

    color: #6f777b;
}
@media (min-width: 1024px)
{
    .menu__subtitle
    {
        padding: 8px 16px;
    }
}

@media (min-width: 1024px)
{
    aside .menu__subtitle
    {
        padding-right: 0; 
        padding-left: 0;
    }
}

aside .menu__subtitle + .menu__list
{
    margin-top: 0;
}

.menu__divider
{
    margin: 8px 0;
}

.menu__list
{
    padding: 0;

    list-style: none;
}

.menu__item--dropdown
{
    position: relative;
}
.menu__item--dropdown > a:after
{
    display: inline-block;

    width: 24px;
    height: 24px;

    content: '';
    transition: transform 300ms cubic-bezier(.77, 0, .175, 1); 

    background: url('../img/icons/i_caret-down.svg') no-repeat 50% 50%/100% auto;
}
.menu__item--dropdown.menu__item--active > a:after
{
    transform: rotateX(180deg);
}

.menu__dropdown
{
    overflow: hidden;

    max-height: 0;

    transition: max-height 150ms cubic-bezier(.77, 0, .175, 1), opacity 150ms cubic-bezier(.77, 0, .175, 1); 

    opacity: 0;
}
@media (min-width: 1024px)
{
    .menu__dropdown
    {
        position: absolute;
        top: 100%;
        left: 0;

        visibility: hidden;
        overflow: auto;

        min-width: 240px;
        max-height: 1000px;
        margin-top: 4px;
        padding: 8px 0;

        transition: opacity 150ms cubic-bezier(.77, 0, .175, 1), visibility 150ms cubic-bezier(.77, 0, .175, 1), transform 150ms cubic-bezier(.77, 0, .175, 1);
        transform: translateY(-16px);

        border: 1px solid rgba(111, 119, 123, .25);
        border-radius: 4px;
        background-color: #fff;
        box-shadow: 0 2px 4px rgba(24, 25, 25, .1);

        -webkit-backface-visibility: hidden;
                backface-visibility: hidden;
    }
}
.menu__dropdown ul
{
    margin: 0;
    padding: 0;

    list-style: none;
}
.menu__dropdown li
{
    margin: 0;
}
.menu__dropdown a
{
    padding: 8px;
}
.menu__dropdown--active
{
    max-height: 1000px;
    margin: 16px 0 32px;

    opacity: 1;
}
@media (min-width: 1024px)
{
    .menu__dropdown--active
    {
        visibility: visible; 

        margin: 4px 0 0;

        transform: translateY(0);
    }
}

.menu--primary
{
    font-size: 16px;
}
@media (min-width: 1024px)
{
    .menu--primary
    {
        font-size: 14px; 

        height: 100%;
    }
}
@media (min-width: 1280px)
{
    .menu--primary
    {
        font-size: 16px;
    }
}
.menu--primary .menu__title
{
    font-size: 32px; 

    margin: -64px -32px 16px;
    padding: 64px 64px 16px 32px;

    color: #fff;
    background-color: #072235;
}
@media (min-width: 1024px)
{
    .menu--primary .menu__title
    {
        position: absolute;
        top: auto;
        left: -10000px;

        overflow: hidden; 

        width: 1px;
        height: 1px;
        margin: 0;
    }
}
.menu--primary .menu__list
{
    margin: 0;
}
@media (min-width: 1024px)
{
    .menu--primary .menu__list
    {
        display: -ms-flexbox;
        display: flex;

        height: 100%; 

        -ms-flex-line-pack: center;
        align-content: center;
        -ms-flex-pack: end;
        justify-content: flex-end;
    }
}
.menu--primary .menu__item
{
    margin: 0;

    border-top: 1px solid #cccfd1;
}
@media (min-width: 1024px)
{
    .menu--primary .menu__item
    {
        display: -ms-flexbox;
        display: flex;

        white-space: nowrap; 

        border: 0;
    }
}
.menu--primary .menu__item a
{
    font-weight: 600;

    display: -ms-flexbox;
    display: flex;

    padding: 16px 0;

    transition: color 150ms cubic-bezier(.77, 0, .175, 1), box-shadow 150ms cubic-bezier(.77, 0, .175, 1); 
    text-decoration: none;

    color: #181919;
    background: none;

    -ms-flex-align: center;
    align-items: center;
    -ms-flex-item-align: center;
    align-self: center;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
@media (min-width: 1024px)
{
    .menu--primary .menu__item a
    {
        font-weight: 400; 

        height: 100%;
        padding: 0 16px;
    }
}
.menu--primary .menu__item a:hover
{
    color: #002f87;
}
@media (min-width: 1024px)
{
    .menu--primary .menu__item a:hover
    {
        box-shadow: 0 1px 0 0 rgba(111, 119, 123, .5);
    }
}
.menu--primary .menu__item a:focus,
.menu--primary .menu__item a:focus:hover
{
    outline: 0; 
    box-shadow: inset 0 0 0 4px #ffbf47;
}
.menu--primary .menu__item:first-child
{
    border: 0;
}
@media (min-width: 1024px)
{
    .menu--primary .menu__item:first-child
    {
        margin-left: 16px;
    }
}
.menu--primary .menu__item--last-child
{
    overflow: hidden; 

    margin-top: 32px;

    border: 0;
    border-radius: 4px;
}
@media (min-width: 1024px)
{
    .menu--primary .menu__item--last-child
    {
        overflow: auto; 

        margin-top: 0;
        margin-left: 16px;

        border-radius: 0;
    }
}
.menu--primary .menu__item--last-child a
{
    display: -ms-flexbox;
    display: flex;

    height: auto;
    padding: 24px 32px;

    transition: background 150ms cubic-bezier(.77, 0, .175, 1); 

    color: #fff;
    background-color: #1477a9;

    -ms-flex-align: center;
    align-items: center;
    -ms-flex-item-align: inherit;
    align-self: inherit;
}
@media (min-width: 1024px)
{
    .menu--primary .menu__item--last-child a
    {
        padding: 0 32px;
    }
}
.menu--primary .menu__item--last-child a:after
{
    display: inline-block;

    width: 16px;
    height: 16px;
    margin-left: 16px;

    content: '';
    transition: transform 300ms cubic-bezier(.77, 0, .175, 1); 

    background: url('../img/icons/i_arrow-right_white.svg') no-repeat 50% 50%/100% auto;
}
.menu--primary .menu__item--last-child a:hover
{
    color: #fff; 
    background-color: #157db2;
    box-shadow: none;
}
.menu--primary .menu__item--last-child a:hover:after
{
    transform: translateX(2px);
}
.menu--primary .menu__item--last-child a:focus
{
    box-shadow: inset 0 0 0 4px #ffbf47;
}
@media (min-width: 1024px)
{
    .menu--primary .menu__item--active > a,
    .menu--primary .menu__item--active > a:hover
    {
        box-shadow: 0 1px #072235;
    }
}
@media (min-width: 1024px)
{
    .menu--primary .menu__item--current > a,
    .menu--primary .menu__item--current > a:hover
    {
        box-shadow: 0 1px #072235;
    }
}
@media (min-width: 1024px)
{
    .menu--primary .menu__item--current > a:focus
    {
        box-shadow: inset 0 0 0 4px #ffbf47;
    }
}
.menu--primary .menu__dropdown a
{
    padding: 8px 0;

    text-decoration: underline;
}
@media (min-width: 1024px)
{
    .menu--primary .menu__dropdown a
    {
        padding: 8px 16px;

        text-decoration: none;
    }
}
.menu--primary .menu__dropdown a:hover
{
    background-color: rgba(111, 119, 123, .05);
    box-shadow: none;
}

@media (max-width: 640px)
{
    .menu--secondary .menu__title
    {
        padding: 64px 64px 16px 32px;
    }
}

@media (max-width: 1023px)
{
    .menu--secondary .menu__title
    {
        font-size: 24px;
        font-weight: 700; 

        margin: 64px -64px 16px;
        padding: 64px 64px 16px 64px;

        color: #fff;
        background-color: #072235;
    }
}

@media (min-width: 1024px)
{
    .menu--secondary .menu__title
    {
        font: 600 19px/1.25 'Open Sans', Helvetica, Arial, sans-serif;

        margin: 0 0 19px;
    }
}

@media (max-width: 1023px)
{
    .menu--secondary .menu__item
    {
        margin: 0;

        border-top: 1px solid #cccfd1;
    }
}

@media (max-width: 1023px)
{
    .menu--secondary .menu__item a
    {
        font-size: 16px;
        font-weight: 600;

        display: -ms-flexbox;
        display: flex;

        padding: 16px 0;

        transition: color 150ms cubic-bezier(.77, 0, .175, 1), box-shadow 150ms cubic-bezier(.77, 0, .175, 1); 

        background: none;

        -ms-flex-align: center;
        align-items: center;
        -ms-flex-item-align: center;
        align-self: center;
        -ms-flex-pack: justify;
        justify-content: space-between;
    }
}

@media (max-width: 1023px)
{
    .menu--secondary .menu__item:first-child
    {
        border: 0;
    }
}

@media (min-width: 1024px)
{
    .menu--secondary .menu__item--active > a
    {
        font-weight: 600; 

        position: relative;

        background: none;
    }
}

@media (min-width: 1024px)
{
    .menu--secondary .menu__item--active > a:before
    {
        position: absolute;
        top: 9px;
        left: -24px;

        width: 8px;
        height: 8px;

        content: '';

        border-radius: 50%; 
        background-color: #ae936c;
    }
}

.menu--numbered .menu__item
{
    position: relative;

    counter-increment: step-counter;
}
.menu--numbered .menu__item:before
{
    position: absolute;
    top: 0;
    right: 100%;

    width: 24px;
    margin-right: 8px;

    content: counter(step-counter) '.';
    text-align: right; 

    color: #6f777b;
}
@media (min-width: 640px)
{
    .menu--numbered .menu__item:before
    {
        margin-right: 16px;
    }
}

.shortcut--header
{
    font-size: 0;
    line-height: 0;

    position: fixed;
    z-index: 9999; 
    right: 16px;
    bottom: 16px;

    width: 48px;
    height: 48px;

    transition: box-shadow 300ms cubic-bezier(.77, 0, .175, 1), opacity 300ms cubic-bezier(.77, 0, .175, 1), transform 300ms cubic-bezier(.77, 0, .175, 1);
    transform: translateY(16%);

    opacity: 0;
    color: #fff;
    border-radius: 50%;
    background: #072235 url('../img/icons/i_caret-up_white.svg') no-repeat 50% 50%/50% auto;
    box-shadow: 0 0 0 2px rgba(255, 255, 255, .24), 0 4px 8px 0 rgba(24, 25, 25, .12), 0 4px 8px 0 rgba(24, 25, 25, .24);
}
@media (min-width: 640px)
{
    .shortcut--header
    {
        right: 32px;
        bottom: 32px;

        width: 64px;
        height: 64px;
    }
}
.shortcut--header:link
{
    transition: box-shadow 300ms cubic-bezier(.77, 0, .175, 1), opacity 300ms cubic-bezier(.77, 0, .175, 1), transform 300ms cubic-bezier(.77, 0, .175, 1); 

    color: #fff;
}
.shortcut--header:visited
{
    color: #fff;
}
.shortcut--header:focus
{
    outline: 0; 
    background-color: #0041ba;
    box-shadow: 0 0 0 4px rgba(0, 47, 135, .16);
}
@media (min-width: 640px)
{
    .shortcut--header:focus
    {
        box-shadow: 0 0 0 8px rgba(0, 47, 135, .16);
    }
}
.shortcut--header:hover
{
    background-color: #0041ba;
    box-shadow: 0 0 0 4px rgba(0, 47, 135, .16);
}
@media (min-width: 640px)
{
    .shortcut--header:hover
    {
        box-shadow: 0 0 0 8px rgba(0, 47, 135, .16);
    }
}
.shortcut--header:active
{
    background-color: #0041ba;
    box-shadow: 0 0 0 6px rgba(0, 47, 135, .24);
}
@media (min-width: 640px)
{
    .shortcut--header:active
    {
        box-shadow: 0 0 0 12px rgba(0, 47, 135, .24);
    }
}

.shortcut--visible
{
    transform: translateY(0%); 

    opacity: 1;
}

.shortcut--main:focus
{
    position: fixed;
    z-index: 10001; 
    top: 3px;
    left: 3px;

    overflow: auto;

    width: auto;
    height: auto;
    padding: 8px 16px;

    text-decoration: underline;

    outline: 3px solid #ffbf47;
    background-color: #fff;
    background-image: none;
}

.button,
.toggle,
.panel-group__toggle,
.alert__dismiss,
.card__action,
.shot__button
{
    font-family: 'Open Sans', Helvetica, Arial, sans-serif;
    font-size: 14px;
    font-weight: 600;

    display: inline-block;

    padding: 8px 16px;

    cursor: pointer; 
    transition: background 150ms cubic-bezier(.77, 0, .175, 1), border 150ms cubic-bezier(.77, 0, .175, 1), box-shadow 150ms cubic-bezier(.77, 0, .175, 1);

    color: #fff;
    border: 2px solid rgba(7, 34, 53, .95);
    border-radius: 4px;
    background-color: rgba(7, 34, 53, .95);
    background-image: none;
}
@media (min-width: 640px)
{
    .button,
    .toggle,
    .panel-group__toggle,
    .alert__dismiss,
    .card__action,
    .shot__button
    {
        font-size: 16px; 

        width: auto;
    }
}
@media (min-width: 1024px)
{
    .button,
    .toggle,
    .panel-group__toggle,
    .alert__dismiss,
    .card__action,
    .shot__button
    {
        font-size: 19px;
    }
}
.button:link,
.toggle:link,
.panel-group__toggle:link,
.alert__dismiss:link,
.card__action:link,
.shot__button:link,
.button:visited,
.toggle:visited,
.panel-group__toggle:visited,
.alert__dismiss:visited,
.card__action:visited,
.shot__button:visited
{
    text-decoration: none; 

    color: #fff;
    border-color: rgba(7, 34, 53, .95);
    background-color: rgba(7, 34, 53, .95);
}
.button:focus,
.toggle:focus,
.panel-group__toggle:focus,
.alert__dismiss:focus,
.card__action:focus,
.shot__button:focus
{
    color: #fff;
    border-color: #072235;
    outline: 0; 
    background-color: #072235;
    background-image: none;
    box-shadow: 0 0 0 4px #ffbf47;
}
.button:hover,
.toggle:hover,
.panel-group__toggle:hover,
.alert__dismiss:hover,
.card__action:hover,
.shot__button:hover
{
    color: #fff; 
    border-color: #072235;
    background-color: #072235;
    box-shadow: 0 0 0 4px rgba(7, 34, 53, .15);
}
.button[disabled],
.toggle[disabled],
.panel-group__toggle[disabled],
.alert__dismiss[disabled],
.card__action[disabled],
.shot__button[disabled]
{
    opacity: .65;
}
.button i,
.toggle i,
.panel-group__toggle i,
.alert__dismiss i,
.card__action i,
.shot__button i
{
    position: relative;
    top: 50%;

    display: inline-block;

    width: 16px;
    height: 16px;
    margin: -8px 8px 0 0;
}
.button--primary,
.button--secondary-menu
{
    color: #fff; 
    border-color: rgba(7, 34, 53, .95);
    background-color: rgba(7, 34, 53, .95);
}
.button--primary:link,
.button--secondary-menu:link,
.button--primary:visited,
.button--secondary-menu:visited
{
    color: #fff; 
    border-color: rgba(7, 34, 53, .95);
    background-color: rgba(7, 34, 53, .95);
}
.button--primary:focus,
.button--secondary-menu:focus
{
    color: #fff; 
    border-color: #072235;
    background-color: #072235;
}
.button--primary:hover,
.button--secondary-menu:hover
{
    color: #fff; 
    border-color: #072235;
    background-color: #072235;
    box-shadow: 0 0 0 4px rgba(7, 34, 53, .15);
}
.button--primary i > svg > *,
.button--secondary-menu i > svg > *
{
    fill: #fff;
}
.button--primary.button--ghost,
.button--secondary-menu
{
    color: #072235; 
    border-color: rgba(7, 34, 53, .95);
    background-color: #fff;
}
.button--primary.button--ghost:link,
.button--secondary-menu:link,
.button--primary.button--ghost:visited,
.button--secondary-menu:visited
{
    color: #072235; 
    border-color: rgba(7, 34, 53, .95);
    background-color: #fff;
}
.button--primary.button--ghost:focus,
.button--secondary-menu:focus
{
    color: #072235; 
    border-color: #072235;
    background-color: #fff;
}
.button--primary.button--ghost:hover,
.button--secondary-menu:hover
{
    color: #072235; 
    border-color: #072235;
    background-color: #fff;
}
.button--secondary,
.card--inverted .card__action,
.card.card--court-date-form .card__action,
.card--inverted .button,
.card.card--court-date-form .button,
.card--inverted .toggle,
.card.card--court-date-form .toggle,
.card--inverted .panel-group__toggle,
.card.card--court-date-form .panel-group__toggle,
.card--inverted .alert__dismiss,
.card.card--court-date-form .alert__dismiss,
.card--inverted .shot__button,
.card.card--court-date-form .shot__button
{
    color: #072235; 
    border-color: rgba(255, 255, 255, .95);
    background-color: rgba(255, 255, 255, .95);
}
.button--secondary:link,
.card--inverted .card__action:link,
.card.card--court-date-form .card__action:link,
.card--inverted .button:link,
.card.card--court-date-form .button:link,
.card--inverted .toggle:link,
.card.card--court-date-form .toggle:link,
.card--inverted .panel-group__toggle:link,
.card.card--court-date-form .panel-group__toggle:link,
.card--inverted .alert__dismiss:link,
.card.card--court-date-form .alert__dismiss:link,
.card--inverted .shot__button:link,
.card.card--court-date-form .shot__button:link,
.button--secondary:visited,
.card--inverted .card__action:visited,
.card.card--court-date-form .card__action:visited,
.card--inverted .button:visited,
.card.card--court-date-form .button:visited,
.card--inverted .toggle:visited,
.card.card--court-date-form .toggle:visited,
.card--inverted .panel-group__toggle:visited,
.card.card--court-date-form .panel-group__toggle:visited,
.card--inverted .alert__dismiss:visited,
.card.card--court-date-form .alert__dismiss:visited,
.card--inverted .shot__button:visited,
.card.card--court-date-form .shot__button:visited
{
    color: #072235; 
    border-color: rgba(255, 255, 255, .95);
    background-color: rgba(255, 255, 255, .95);
}
.button--secondary:focus,
.card--inverted .card__action:focus,
.card.card--court-date-form .card__action:focus,
.card--inverted .button:focus,
.card.card--court-date-form .button:focus,
.card--inverted .toggle:focus,
.card.card--court-date-form .toggle:focus,
.card--inverted .panel-group__toggle:focus,
.card.card--court-date-form .panel-group__toggle:focus,
.card--inverted .alert__dismiss:focus,
.card.card--court-date-form .alert__dismiss:focus,
.card--inverted .shot__button:focus,
.card.card--court-date-form .shot__button:focus
{
    color: #072235; 
    border-color: #fff;
    background-color: #fff;
}
.button--secondary:hover,
.card--inverted .card__action:hover,
.card.card--court-date-form .card__action:hover,
.card--inverted .button:hover,
.card.card--court-date-form .button:hover,
.card--inverted .toggle:hover,
.card.card--court-date-form .toggle:hover,
.card--inverted .panel-group__toggle:hover,
.card.card--court-date-form .panel-group__toggle:hover,
.card--inverted .alert__dismiss:hover,
.card.card--court-date-form .alert__dismiss:hover,
.card--inverted .shot__button:hover,
.card.card--court-date-form .shot__button:hover
{
    color: #072235; 
    border-color: #fff;
    background-color: #fff;
    box-shadow: 0 0 0 4px rgba(255, 255, 255, .15);
}
.button--tertiary,
.card--inverted [type='submit'],
.card.card--court-date-form [type='submit']
{
    color: #fff; 
    border-color: rgba(20, 119, 169, .95);
    background-color: rgba(20, 119, 169, .95);
}
.button--tertiary:link,
.card--inverted :link[type='submit'],
.card.card--court-date-form :link[type='submit'],
.button--tertiary:visited,
.card--inverted :visited[type='submit'],
.card.card--court-date-form :visited[type='submit']
{
    color: #fff; 
    border-color: rgba(20, 119, 169, .95);
    background-color: rgba(20, 119, 169, .95);
}
.button--tertiary:focus,
.card--inverted :focus[type='submit'],
.card.card--court-date-form :focus[type='submit']
{
    color: #fff; 
    border-color: #1477a9;
    background-color: #1477a9;
}
.button--tertiary:hover,
.card--inverted :hover[type='submit'],
.card.card--court-date-form :hover[type='submit']
{
    color: #fff; 
    border-color: #1477a9;
    background-color: #1477a9;
    box-shadow: 0 0 0 4px rgba(20, 119, 169, .15);
}
.button--link,
.panel-group__toggle
{
    text-decoration: underline; 

    color: #002f87;
    border-color: transparent;
    background: transparent;
}
.button--link:link,
.panel-group__toggle:link,
.button--link:visited,
.panel-group__toggle:visited
{
    text-decoration: underline; 

    color: #002f87;
    border-color: transparent;
    background-color: transparent;
}
.button--link:focus,
.panel-group__toggle:focus
{
    text-decoration: underline; 

    color: #002f87;
    border-color: transparent;
    background-color: transparent;
}
.button--link:hover,
.panel-group__toggle:hover
{
    text-decoration: underline; 

    color: #0041ba;
    border-color: transparent;
    background-color: #f2f4f9;
    box-shadow: none;
}
.button--control,
.ui-datepicker-trigger
{
    font-size: 0;
    line-height: 0;

    width: 48px;
    height: 44px;
    padding: 0;

    cursor: pointer; 

    color: #072235;
    border: 2px solid #6f777b;
    border-radius: 4px;
    background-color: #f6f6f6;
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: 16px auto;
}
@media (min-width: 640px)
{
    .button--control,
    .ui-datepicker-trigger
    {
        height: 44px;
    }
}
@media (min-width: 1024px)
{
    .button--control,
    .ui-datepicker-trigger
    {
        height: 48px;
    }
}
.button--control:link,
.ui-datepicker-trigger:link
{
    text-decoration: none; 

    color: #181919;
}
.button--control:visited,
.ui-datepicker-trigger:visited
{
    color: #181919;
}
.button--control:focus,
.ui-datepicker-trigger:focus
{
    border-color: #072235;
    outline: 0; 
    background-color: #fff;
    box-shadow: 0 0 0 4px #ffbf47;
}
.button--control:hover,
.ui-datepicker-trigger:hover
{
    color: #0041ba; 
    border-color: #072235;
    background-color: #f6f6f6;
}
.button--secondary-menu
{
    position: relative;

    overflow: hidden;

    width: 100%;
    padding-right: 48px;

    text-align: left;
    white-space: nowrap;
    text-overflow: ellipsis;
}
@media (min-width: 640px)
{
    .button--secondary-menu
    {
        width: 48.0769230769%;
    }
}
.button--secondary-menu:after
{
    position: absolute;
    top: 50%;
    right: 16px;

    width: 16px;
    height: 16px;
    margin-top: -8px;

    content: '';

    background: url('../img/icons/i_slide-left.svg') no-repeat 50% 50%/100% auto;
}
.button--contextual-menu
{
    position: relative;

    width: 48px;
    height: 48px;

    text-align: center; 

    color: #002f87;
    border-color: #fff;
    border-radius: 50%;
    background-color: #fff;
}
.button--contextual-menu:link,
.button--contextual-menu:visited
{
    color: #002f87; 
    border-color: #fff;
    background-color: #fff;
}
.button--contextual-menu:focus
{
    color: #002f87; 
    border-color: #f2f4f9;
    background-color: #f2f4f9;
}
.button--contextual-menu:hover
{
    color: #002f87; 
    border-color: #f2f4f9;
    background-color: #f2f4f9;
    box-shadow: none;
}
.button--contextual-menu svg
{
    position: absolute;
    top: 50%;
    left: 50%;

    width: 16px;
    height: 16px;
    margin: -8px 0 0 -8px;
}
.button--add,
.button--add:focus
{
    color: inherit; 
    background-image: url('../img/icons/i_circle-add.svg');
}
.button--add
{
    font-size: inherit;
    line-height: inherit;

    width: auto;
    padding: 0 16px 0 40px;

    text-align: left; 

    background-position: 16px 50%;
}
.button--remove,
.button--remove:focus
{
    background-image: url('../img/icons/i_circle-delete.svg');
}
.button--calendar,
.ui-datepicker-trigger,
.button--calendar:focus,
.ui-datepicker-trigger:focus
{
    background-image: url('../img/icons/i_datepicker.svg');
}

.toggle--search,
.toggle--menu
{
    font-size: 0;
    line-height: 0; 

    width: 64px;
    padding: 0;

    border-radius: 0;
    background: none;
}
@media (min-width: 640px)
{
    .toggle--search,
    .toggle--menu
    {
        width: 80px;
    }
}
.toggle--search:hover,
.toggle--menu:hover
{
    background-color: transparent;
}
.toggle--search:focus,
.toggle--menu:focus
{
    outline: 0; 
    box-shadow: 0 -4px #1477a9;
}

.toggle--search
{
    border: 0;
    background: url('../img/icons/i_search.svg') no-repeat 50% 50%/20px auto;

    -ms-flex-order: 1;
    order: 1;
}
@media (min-width: 640px)
{
    .toggle--search
    {
        background-size: 24px auto;
    }
}
@media (min-width: 1024px)
{
    .toggle--search
    {
        display: none;
    }
}
.toggle--search:hover,
.toggle--search:focus
{
    background-image: url('../img/icons/i_search.svg');
    box-shadow: none;
}
.toggle--search.toggle--active
{
    background-color: #072235;
}

.toggle--menu
{
    border: 0;
    background: url('../img/icons/i_menu.svg') no-repeat 50% 50%/24px auto;

    -ms-flex-order: 3;
    order: 3;
}
@media (min-width: 640px)
{
    .toggle--menu
    {
        background-size: 24px auto;
    }
}
@media (min-width: 1024px)
{
    .toggle--menu
    {
        display: none;
    }
}
.toggle--menu:hover,
.toggle--menu:focus
{
    background-image: url('../img/icons/i_menu.svg');
    box-shadow: none;
}

.toggle--active,
.toggle--active:hover,
.toggle--active:focus
{
    z-index: 10003; 

    background-image: url('../img/icons/i_close_white.svg');
    background-size: 24px auto;
}

.close--secondary-menu
{
    position: absolute;
    top: 0;
    right: 0;

    width: 64px;
    height: 68px;

    border: 0;
    border-radius: 0; 
    background-color: transparent;
}
@media (min-width: 640px)
{
    .close--secondary-menu
    {
        width: 80px;
        height: 84px;
    }
}
.close--secondary-menu svg
{
    position: absolute;
    top: 50%;
    left: 50%;

    transform: translateX(-50%) translateY(-50%);
}
.close--secondary-menu svg *
{
    fill: #fff;
}

.logo
{
    font-family: 'FF Tibere', Palatino, Georgia, sans-serif;
    font-size: 19px;
    line-height: 1.13;

    margin: 0;

    color: #002f87;
}
.logo a
{
    position: relative;

    display: -ms-flexbox;
    display: flex;

    text-decoration: none; 

    color: #002f87;
    background: none;

    -ms-flex-align: start;
    align-items: flex-start;
}
.logo a:before
{
    display: block;

    width: 64px;
    height: 64px;
    margin-right: 16px;

    content: '';

    background: url('../img/l_seal-color.svg') no-repeat 50% 50%/100% auto;
}
.logo a:visited
{
    color: #002f87;
}
.logo a:hover
{
    color: #0041ba;
}
.logo a:focus
{
    box-shadow: inset 0 0 0 4px #ffbf47;
}
.logo div
{
    max-width: 128px;
}
.logo strong
{
    display: block;

    margin: 12px 0 4px;
}
.logo strong + span
{
    font-size: 16px;
    font-style: italic;

    text-transform: lowercase; 

    color: #181919;
}
.logo--header
{
    font-size: 16px;
    line-height: 1;

    text-transform: uppercase;

    -ms-flex-order: 2;
    order: 2;
}
@media (min-width: 1024px)
{
    .logo--header
    {
        padding-left: 32px;
    }
}
.logo--header a
{
    width: 160px;
    height: 100%;

    text-align: center;

    -ms-flex-align: center;
    align-items: center;
    -ms-flex-line-pack: center;
    align-content: center;
}
@media (min-width: 1440px)
{
    .logo--header a
    {
        width: 100%;

        color: #002f87;
    }
}
.logo--header a:before
{
    display: none;
}
@media (min-width: 1440px)
{
    .logo--header a:before
    {
        display: block;

        width: 64px;
        height: 64px;

        border-radius: 50%;
    }
}
@media (min-width: 1440px)
{
    .logo--header a span
    {
        display: block;

        width: 160px;

        text-align: left;
    }
}
.logo--header a:hover
{
    color: #0041ba;
}
.logo--footer
{
    position: absolute;
    z-index: 1; 
    top: 0;
    left: 50%;

    width: 64px;
    height: 64px;
    margin: 0;

    transform: translate3d(-50%, -50%, 0);

    border-radius: 50%;
}
@media (min-width: 640px)
{
    .logo--footer
    {
        width: 96px;
        height: 96px;
    }
}
@media (min-width: 1024px)
{
    .logo--footer
    {
        width: 128px;
        height: 128px;
    }
}
.logo--footer a
{
    display: block;

    width: 100%;
    height: 100%;

    color: #fff;
    border-radius: 50%;
}
.logo--footer a:visited
{
    color: #fff;
}
.logo--footer a:hover
{
    background-color: transparent;
}
.logo--footer a:before
{
    width: 100%;
    height: 100%;
    margin: 0;

    border-radius: 50%;
}

.tagline
{
    font-size: 0;
    line-height: 0; 

    display: block;

    width: 100%;
    height: 32px;
    margin: 16px auto 0;

    background: url('../img/l_tagline.svg?v2') no-repeat 50% 50%/auto 100%;
}
@media (min-width: 640px)
{
    .tagline
    {
        max-width: 300px;
    }
}
@media (min-width: 1024px)
{
    .tagline
    {
        margin: -32px auto 64px;
    }
}

.links
{
    width: 100%;
    margin-bottom: 32px;
}
@media (min-width: 640px)
{
    .links
    {
        margin-bottom: 64px;
    }
}
.links__list
{
    margin: 0;
    padding: 0;

    list-style: none;
}
.links__list--no-results
{
    margin: 0 0 0 40px; 

    list-style: disc;
}
.links__item
{
    position: relative;
}
@media (min-width: 1280px)
{
    .links__item--bullet:before
    {
        content: '\2022';
    }
}
.links__item--facebook a:before
{
    background-image: url('../img/icons/i_social-facebook.svg');
}
.links__item--twitter a:before
{
    background-image: url('../img/icons/i_social-twitter.svg');
}
.links__item--linkedin a:before
{
    background-image: url('../img/icons/i_social-linkedin.svg');
}
.links__item--youtube a:before
{
    background-image: url('../img/icons/i_social-youtube.svg');
}
.links__item--instagram a:before
{
    background-image: url('../img/icons/i_logo-microphone-simple.svg');
}
.links__item--email a:before
{
    background-image: url('../img/icons/i_social-email.svg');
}
.links--connect
{
    margin: 0;
}
@media (min-width: 1280px)
{
    .links--connect
    {
        width: 23.671875%;

        -ms-flex-order: 2;
        order: 2;
    }
}
.links--connect-simple
{
    margin: 0 0 28px;

    text-align: center;
}
@media (min-width: 640px)
{
    .links--connect-simple
    {
        margin-bottom: 32px;
    }
}
@media (min-width: 1280px)
{
    .links--connect-simple
    {
        width: 100%;
        margin-bottom: 38px;

        -ms-flex-order: inherit;
        order: inherit;
    }
}
.links--connect-simple .links__list
{
    display: -ms-flexbox;
    display: flex;

    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
}
.links--connect-simple .links__item
{
    margin: 0 8px;
}
@media (min-width: 640px)
{
    .links--connect-simple .links__item
    {
        margin: 0 12px;
    }
}
@media (min-width: 1280px)
{
    .links--connect-simple .links__item
    {
        margin: 0 16px;
    }
}
.links--connect-simple .links__item a
{
    position: relative;

    display: inline-block;

    width: 36px;
    height: 36px;
    margin-right: 0; 
    padding: 0;
}
.links--connect-simple .links__item a:after
{
    position: absolute;
    top: 0;
    right: -24px;

    display: block; 

    content: '';
}
.links--connect-simple .links__item a:before
{
    width: 100%;
    height: 100%;

    background-size: auto 100%;
}
.links--connect-simple .links__item--facebook a:before
{
    background-image: url('../img/icons/i_social-facebook-alt.svg');
}
.links--connect-simple .links__item--twitter a:before
{
    background-image: url('../img/icons/i_social-twitter-alt.svg');
}
.links--connect-simple .links__item--youtube a:before
{
    background-image: url('../img/icons/i_social-youtube-alt.png');
}
.links--connect-simple .links__item--instagram a:before
{
    background-image: url('../img/icons/i_social-instagram-alt.svg');
}
.links--search-quick
{
    display: none;

    margin: 0;
}
.links--search-quick .links__item
{
    margin: 0;

    border-top: 1px solid #cccfd1;
}
@media (min-width: 1024px)
{
    .links--search-quick .links__item
    {
        margin-top: 16px;

        border-top: 0;
    }
}
.links--search-quick .links__item a
{
    display: block;

    padding: 16px 0;
}
@media (min-width: 1024px)
{
    .links--search-quick .links__item a
    {
        display: inline;

        padding: 0;
    }
}
.links--search-quick .links__item:first-child
{
    border-top: 0;
}
@media (min-width: 1024px)
{
    .links--search-quick .links__item:first-child
    {
        margin-top: 0;
    }
}
.links--search-quick.links--active
{
    display: block;
}
.links--search-quick ~ .links--active
{
    margin-top: 32px;
}
.links--search-suggest
{
    display: none;
}
@media (min-width: 1024px)
{
    .links--search-suggest
    {
        margin-bottom: 32px;
    }
}
.links--search-suggest .links__item
{
    position: relative;

    margin: 0;

    border-top: 1px solid #cccfd1;
}
@media (min-width: 1024px)
{
    .links--search-suggest .links__item
    {
        margin-top: 16px;

        border-top: 0;
    }
}
.links--search-suggest .links__item i
{
    position: absolute;
    top: 50%;
    left: 0;

    display: block;

    width: 16px;
    height: 16px;
    margin-top: -8px;
}
.links--search-suggest .links__item svg
{
    position: absolute;
    top: 50%;
    left: 50%;

    transform: translateX(-50%) translateY(-50%);
}
.links--search-suggest .links__item a
{
    font-weight: 400; 

    display: block;

    padding: 16px 0 16px 32px;
}
@media (min-width: 1024px)
{
    .links--search-suggest .links__item a
    {
        display: inline-block;

        padding: 0 0 0 32px;
    }
}
.links--search-suggest .links__item:first-child
{
    border-top: 0;
}
@media (min-width: 1024px)
{
    .links--search-suggest .links__item:first-child
    {
        margin-top: 0;
    }
}
.links--search-suggest mark
{
    font-weight: 600; 

    color: inherit;
    background-color: transparent;
    box-shadow: none;
}
.links--search-suggest.links--active
{
    display: block;
}
.links--search-top
{
    display: none;
}
@media (min-width: 1024px)
{
    .links--search-top
    {
        margin-bottom: 32px;
        padding-top: 32px;

        border-top: 1px solid #cccfd1;
    }
}
.links--search-top .links__item
{
    margin: 0;

    border-top: 1px solid #cccfd1;
}
@media (min-width: 1024px)
{
    .links--search-top .links__item
    {
        margin-top: 16px;

        border-top: 0;
    }
}
.links--search-top .links__item a
{
    display: block;

    padding: 16px 0;
}
@media (min-width: 1024px)
{
    .links--search-top .links__item a
    {
        display: inline;

        padding: 0;
    }
}
.links--search-top .links__item:first-child
{
    border-top: 0;
}
@media (min-width: 1024px)
{
    .links--search-top .links__item:first-child
    {
        margin-top: 0;
    }
}
.links--search-top.links--active
{
    display: block;
}
.links--search-all
{
    font-weight: 600; 

    display: none;

    margin: 0;
}
@media (min-width: 1024px)
{
    .links--search-all
    {
        padding-top: 32px;

        border-top: 1px solid #cccfd1;
    }
}
.links--search-all.links--active
{
    display: block;
}
.links--contextual .links__title
{
    position: relative;
}
@media (min-width: 640px)
{
    .links--contextual .links__title:before
    {
        position: absolute;
        top: 50%;
        left: -32px;

        display: block;

        width: 16px;
        height: 16px;
        margin-top: -8px;

        content: '';

        background: url('../img/icons/i_arrow-bottom.svg') no-repeat 50% 50%/100% auto;
    }
}

.title__label
{
    margin-bottom: 0;
}

.title__description
{
    font-size: 16px; 

    display: block;

    margin: 16px 0 0;

    color: #181919;
}
@media (min-width: 640px)
{
    .title__description
    {
        font-size: 19px;
    }
}
@media (min-width: 1024px)
{
    .title__description
    {
        font-size: 21px;
    }
}
.title__description--person
{
    font-size: 14px;
    line-height: 1.4em; 

    color: #6f777b;
}
@media (min-width: 640px)
{
    .title__description--person
    {
        font-size: 19px;
    }
}

.title--primary
{
    position: relative;

    margin: 32px 0;
}
@media (min-width: 640px)
{
    .title--primary
    {
        margin: 32px 0;
    }
}
@media (min-width: 1280px)
{
    .title--primary
    {
        margin: 32px 0;
    }
}
.title--primary .title__label:last-child:after,
.title--primary .title__description:last-child:after
{
    display: block;

    width: 55px;
    height: 4px;
    margin-top: 32px;

    content: '';

    background-color: #ae936c;
}
@media (min-width: 640px)
{
    .title--primary .title__label:last-child:after,
    .title--primary .title__description:last-child:after
    {
        width: 57px;
        height: 6px;
        margin-top: 64px;
    }
}
@media (min-width: 1024px)
{
    .title--primary .title__label:last-child:after,
    .title--primary .title__description:last-child:after
    {
        width: 85px;
        height: 8px;
    }
}
.title--primary .title__label
{
    margin-top: 0;
}
.title--primary .meta + [itemprop='name'],
.title--primary .links--search-quick .links__title + [itemprop='name'],
.links--search-quick .title--primary .links__title + [itemprop='name'],
.title--primary .links--search-suggest .links__title + [itemprop='name'],
.links--search-suggest .title--primary .links__title + [itemprop='name'],
.title--primary .links--search-top .links__title + [itemprop='name'],
.links--search-top .title--primary .links__title + [itemprop='name'],
.title--primary .list--recognition .item__meta + [itemprop='name'],
.list--recognition .title--primary .item__meta + [itemprop='name'],
.title--primary .closing__meta + [itemprop='name'],
.title--primary .chip__label + [itemprop='name'],
.title--primary .district__meta + [itemprop='name'],
.title--primary .shot__prefix + [itemprop='name'],
.title--primary .shot__suffix + [itemprop='name'],
.title--primary .meta + [itemprop='headline'],
.title--primary .links--search-quick .links__title + [itemprop='headline'],
.links--search-quick .title--primary .links__title + [itemprop='headline'],
.title--primary .links--search-suggest .links__title + [itemprop='headline'],
.links--search-suggest .title--primary .links__title + [itemprop='headline'],
.title--primary .links--search-top .links__title + [itemprop='headline'],
.links--search-top .title--primary .links__title + [itemprop='headline'],
.title--primary .list--recognition .item__meta + [itemprop='headline'],
.list--recognition .title--primary .item__meta + [itemprop='headline'],
.title--primary .closing__meta + [itemprop='headline'],
.title--primary .chip__label + [itemprop='headline'],
.title--primary .district__meta + [itemprop='headline'],
.title--primary .shot__prefix + [itemprop='headline'],
.title--primary .shot__suffix + [itemprop='headline']
{
    margin-top: 16px;
}
@media (min-width: 1280px)
{
    .title--primary [itemprop='description']
    {
        max-width: 66.09375%;
    }
}

.title--secondary,
.band__title
{
    margin: 0 0 32px;
    padding-bottom: 16px;

    border-bottom: 4px solid #181919;
}
@media (min-width: 640px)
{
    .title--secondary,
    .band__title
    {
        margin-bottom: 48px;
    }
}
@media (min-width: 1024px)
{
    .title--secondary,
    .band__title
    {
        margin-bottom: 64px;
    }
}
.title--secondary .title__label,
.band__title .title__label
{
    margin-top: 0;
}
.title--secondary .title__description,
.band__title .title__description
{
    margin-top: 0;
}

.title--tertiary
{
    font: 700 19px/1.25 'Open Sans', Helvetica, Arial, sans-serif; 

    margin: 0;
}
@media (min-width: 640px)
{
    .title--tertiary
    {
        font-size: 21px;
    }
}
@media (min-width: 1024px)
{
    .title--tertiary
    {
        font-size: 24px;
    }
}
.title--tertiary + p
{
    margin-top: 14px;
}
@media (min-width: 640px)
{
    .title--tertiary + p
    {
        margin-top: 16px;
    }
}
@media (min-width: 1024px)
{
    .title--tertiary + p
    {
        margin-top: 19px;
    }
}

.title--contextual
{
    font-family: 'Open Sans', Helvetica, Arial, sans-serif;
    font-size: 16px;
    font-weight: 300;
    line-height: 1.25; 

    margin: 0 0 32px;
    padding-bottom: 16px;

    border-bottom: 4px solid #181919;
}
@media (min-width: 640px)
{
    .title--contextual
    {
        font-size: 19px; 

        margin-bottom: 48px;
    }
}
@media (min-width: 1024px)
{
    .title--contextual
    {
        font-size: 21px; 

        margin-bottom: 64px;
    }
}
.title--contextual strong
{
    font-size: 21px;
    font-weight: 700;
    font-style: normal;
    line-height: 1; 

    display: block;

    margin-bottom: 8px;
}
@media (min-width: 640px)
{
    .title--contextual strong
    {
        font-size: 24px;
    }
}
@media (min-width: 1024px)
{
    .title--contextual strong
    {
        font-size: 28px;
    }
}
.title--contextual span
{
    font-weight: 600;
}

.title--closings
{
    font-weight: 600; 

    position: relative;

    margin: 0;
    padding: 32px 0;

    background-color: #fff;
}
.title--closings.title--pinned
{
    position: fixed;
    z-index: 100; 

    box-shadow: 0 1px 0 0 #cccfd1;
}
@media (max-width: 1024px)
{
    .title--closings.title--pinned
    {
        top: 80px;
    }
}
@media (max-width: 640px)
{
    .title--closings.title--pinned
    {
        top: 65px;
    }
}

@media (min-width: 1025px) and (max-width: 1365px)
{
    .title--closings.title--pinned
    {
        top: 160px;
    }
}
@media (min-width: 1366px)
{
    .title--closings.title--pinned
    {
        top: 80px;
    }
}

.list__title
{
    margin: 0;
}

.list__title + ul
{
    margin-top: 19px;
}

.list__footnote
{
    line-height: normal; 

    margin: 32px 0 0;

    color: #6f777b;
}
@media (min-width: 640px)
{
    .list__footnote
    {
        margin-top: 48px;
    }
}
@media (min-width: 1024px)
{
    .list__footnote
    {
        margin-top: 64px;
    }
}

.list__items
{
    position: relative;

    margin: 0;
    padding: 0;

    list-style: none;
}

.list__item
{
    margin: 32px 0 0;
    padding: 0;

    break-inside: avoid;
    page-break-inside: avoid;
}
@media (min-width: 640px)
{
    .list__item
    {
        margin-top: 48px;
    }
}
@media (min-width: 1024px)
{
    .list__item
    {
        margin-top: 64px;
    }
}
.list__item:first-child
{
    margin-top: 0;
}
.list__item *:last-child
{
    margin-bottom: 0;
}
.list__item i
{
    position: relative;

    display: block;

    width: 55px;
    height: 55px;

    background-size: 50% auto;
}
@media (min-width: 640px)
{
    .list__item i
    {
        width: 138px;
        height: 138px;
    }
}
@media (min-width: 1024px)
{
    .list__item i
    {
        width: 193px;
        height: 193px;
    }
}
.list__item i svg
{
    position: absolute;
    top: 50%;
    left: 50%;

    width: 50%;
    height: 50%; 

    transform: translateX(-50%) translateY(-50%);
}
.list__item i svg *
{
    stroke: #002f87;
}
.list__item .meta + .list__title,
.list__item .links--search-quick .links__title + .list__title,
.links--search-quick .list__item .links__title + .list__title,
.list__item .links--search-suggest .links__title + .list__title,
.links--search-suggest .list__item .links__title + .list__title,
.list__item .links--search-top .links__title + .list__title,
.links--search-top .list__item .links__title + .list__title,
.list__item .list--recognition .item__meta + .list__title,
.list--recognition .list__item .item__meta + .list__title,
.list__item .closing__meta + .list__title,
.list__item .chip__label + .list__title,
.list__item .district__meta + .list__title,
.list__item .shot__prefix + .list__title,
.list__item .shot__suffix + .list__title
{
    margin: 16px 0 0;
}
.list__item .list__title
{
    font: 700 19px/1.25 'Open Sans', Helvetica, Arial, sans-serif; 

    margin: 0;
}
@media (min-width: 640px)
{
    .list__item .list__title
    {
        font-size: 21px;
    }
}
@media (min-width: 1024px)
{
    .list__item .list__title
    {
        font-size: 24px;
    }
}
.list__item .list__title + .meta,
.list__item .links--search-quick .list__title + .links__title,
.links--search-quick .list__item .list__title + .links__title,
.list__item .links--search-suggest .list__title + .links__title,
.links--search-suggest .list__item .list__title + .links__title,
.list__item .links--search-top .list__title + .links__title,
.links--search-top .list__item .list__title + .links__title,
.list__item .list--recognition .list__title + .item__meta,
.list--recognition .list__item .list__title + .item__meta,
.list__item .list__title + .closing__meta,
.list__item .list__title + .chip__label,
.list__item .list__title + .district__meta,
.list__item .list__title + .shot__prefix,
.list__item .list__title + .shot__suffix,
.list__item .list__title + [itemprop='description'] + .meta,
.list__item .links--search-quick .list__title + [itemprop='description'] + .links__title,
.links--search-quick .list__item .list__title + [itemprop='description'] + .links__title,
.list__item .links--search-suggest .list__title + [itemprop='description'] + .links__title,
.links--search-suggest .list__item .list__title + [itemprop='description'] + .links__title,
.list__item .links--search-top .list__title + [itemprop='description'] + .links__title,
.links--search-top .list__item .list__title + [itemprop='description'] + .links__title,
.list__item .list--recognition .list__title + [itemprop='description'] + .item__meta,
.list--recognition .list__item .list__title + [itemprop='description'] + .item__meta,
.list__item .list__title + [itemprop='description'] + .closing__meta,
.list__item .list__title + [itemprop='description'] + .chip__label,
.list__item .list__title + [itemprop='description'] + .district__meta,
.list__item .list__title + [itemprop='description'] + .shot__prefix,
.list__item .list__title + [itemprop='description'] + .shot__suffix
{
    margin: 16px 0 0;
}
.list__item [itemprop='description']
{
    display: block;

    margin: 14px 0 0;

    color: #181919;
}
@media (min-width: 640px)
{
    .list__item [itemprop='description']
    {
        margin-top: 16px;
    }
}
@media (min-width: 1024px)
{
    .list__item [itemprop='description']
    {
        margin-top: 19px;
    }
}
.list__item [itemprop='telephone']
{
    display: inline-block;

    margin-top: 16px;
}
.list__item .form
{
    margin-top: 16px;
}
@media (min-width: 640px)
{
    .list__item .form
    {
        margin-top: 24px;
    }
}
@media (min-width: 1024px)
{
    .list__item .form
    {
        margin-top: 32px;
    }
}
.list__item--popular
{
    position: relative;

    margin-top: 16px;
    margin-right: -32px;
    margin-left: -32px;
    padding: 16px 32px 32px;

    background-color: #f2f4f9;
}
@media (min-width: 640px)
{
    .list__item--popular
    {
        margin-top: 24px;
        padding: 32px; 

        border-radius: 4px;
    }
}
@media (min-width: 1024px)
{
    .list__item--popular
    {
        margin-top: 32px;
    }
}
.list__item--popular:before
{
    content: 'Popular';
}
@media (max-width: 639px)
{
    .list__item--popular:before
    {
        margin-bottom: 16px;
    }
}
@media (min-width: 640px)
{
    .list__item--popular:before
    {
        position: absolute;
        top: 32px;
        right: 32px;
    }
}
.list__item--popular [itemprop='description'],
.list__item--popular .meta,
.list__item--popular .links--search-quick .links__title,
.links--search-quick .list__item--popular .links__title,
.list__item--popular .links--search-suggest .links__title,
.links--search-suggest .list__item--popular .links__title,
.list__item--popular .links--search-top .links__title,
.links--search-top .list__item--popular .links__title,
.list__item--popular .list--recognition .item__meta,
.list--recognition .list__item--popular .item__meta,
.list__item--popular .closing__meta,
.list__item--popular .chip__label,
.list__item--popular .district__meta,
.list__item--popular .shot__prefix,
.list__item--popular .shot__suffix
{
    color: #181919;
}

.list--divided .list__items:before
{
    position: absolute;
    z-index: 1; 
    top: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 1px;

    content: '';

    background: #fff;
}

.list--divided .list__item
{
    margin: 0;
    padding: 32px 0;

    border-top: 1px solid #cccfd1;
}

.list--divided-condensed .list__items:before,
.list--counties .list__items:before
{
    position: absolute;
    z-index: 1; 
    top: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 1px;

    content: '';

    background: #fff;
}

.list--divided-condensed .list__item,
.list--counties .list__item
{
    margin: 0;
    padding: 16px 0;

    border-top: 1px solid #cccfd1;
}

@media (min-width: 640px)
{
    .list--news .list__item
    {
        display: -ms-flexbox;
        display: flex;
    }
}

.list--news .list__item .news__photo
{
    display: none;
}
@media (min-width: 640px)
{
    .list--news .list__item .news__photo
    {
        display: block;

        width: 22.1153846154%;
    }
}

@media (min-width: 640px)
{
    .list--news .list__item .news__content
    {
        width: 72.7564102564%;
        margin-left: 5.1282051282%;
    }
}

@media (max-width: 639px)
{
    .list--news .list__item [itemprop='description']
    {
        position: absolute;
        top: auto;
        left: -10000px;

        overflow: hidden; 

        width: 1px;
        height: 1px;
        margin: 0;
    }
}

.list--files .list__title
{
    margin: 0 0 16px;
}

.list--files .list__item
{
    padding-left: 56px;
}
@media (min-width: 640px)
{
    .list--files .list__item
    {
        padding-left: 85px;
    }
}
.list--files .list__item [itemprop='headline']
{
    font-family: 'Open Sans', Helvetica, Arial, sans-serif;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.25;
}
@media (min-width: 640px)
{
    .list--files .list__item [itemprop='headline']
    {
        font-size: 19px;
        line-height: 1.25;
    }
}
@media (min-width: 1024px)
{
    .list--files .list__item [itemprop='headline']
    {
        font-size: 21px;
        line-height: 1.25;
    }
}
.list--files .list__item [itemprop='url']
{
    word-break: break-word;
}

.list--files .meta span,
.list--files .links--search-quick .links__title span,
.links--search-quick .list--files .links__title span,
.list--files .links--search-suggest .links__title span,
.links--search-suggest .list--files .links__title span,
.list--files .links--search-top .links__title span,
.links--search-top .list--files .links__title span,
.list--files .list--recognition .item__meta span,
.list--recognition .list--files .item__meta span,
.list--files .closing__meta span,
.list--files .chip__label span,
.list--files .district__meta span,
.list--files .shot__prefix span,
.list--files .shot__suffix span
{
    margin-right: 0;
}

.list--recognition .item__title
{
    margin-top: 8px;
}

.list--recognition .item__description
{
    color: #6f777b;
}

.list--counties
{
    margin-top: 32px;
}
@media (min-width: 640px)
{
    .list--counties
    {
        margin-top: 48px;
    }
}
@media (min-width: 1024px)
{
    .list--counties
    {
        margin-top: 64px;
    }
}
.list--counties .list__items:before
{
    z-index: 1;
}
.list--counties .list__item
{
    position: relative;

    break-inside: avoid;
}
@media (min-width: 640px)
{
    .list--counties .list__item
    {
        padding: 24px 0;
    }
}
@media (min-width: 1024px)
{
    .list--counties .list__item
    {
        padding: 32px 0;
    }
}
.list--counties .title
{
    margin: 0 0 8px;
}
.list--counties .meta,
.list--counties .links--search-quick .links__title,
.links--search-quick .list--counties .links__title,
.list--counties .links--search-suggest .links__title,
.links--search-suggest .list--counties .links__title,
.list--counties .links--search-top .links__title,
.links--search-top .list--counties .links__title,
.list--counties .list--recognition .item__meta,
.list--recognition .list--counties .item__meta,
.list--counties .closing__meta,
.list--counties .chip__label,
.list--counties .district__meta,
.list--counties .shot__prefix,
.list--counties .shot__suffix
{
    display: block;
}
.list--counties .button,
.list--counties .toggle,
.list--counties .panel-group__toggle,
.list--counties .alert__dismiss,
.list--counties .card__action,
.list--counties .shot__button
{
    position: absolute;
    top: 50%;
    right: 0;

    width: 48px;
    height: 48px;
    margin-top: -24px;
}

@media (min-width: 640px)
{
    .list--people .list__item
    {
        position: relative;
    }
}

@media (min-width: 640px)
{
    .list--people [itemprop='telephone']
    {
        position: absolute;
        top: 35px;
        right: 0;

        margin-top: 0;

        text-align: right;
    }
}

@media (min-width: 1024px)
{
    .list--people [itemprop='telephone']
    {
        top: 36px;
    }
}

.list--search-results .list__description mark
{
    font-weight: 700; 

    background-color: transparent;
    box-shadow: none;
}

@media (min-width: 1024px)
{
    .list--personas .list__items
    {
        padding: 32px 0;

        column-rule: 1px solid #cccfd1;
    }
}

@media (min-width: 1024px)
{
    .list--personas .list__item
    {
        padding: 0;

        text-align: center; 

        border: 0;
    }
}

.list--personas .list__title a
{
    font-size: 14px;
    font-weight: 400; 

    position: relative;

    display: block;
}
@media (min-width: 640px)
{
    .list--personas .list__title a
    {
        font-size: 16px; 

        display: inline-block;
    }
}
@media (min-width: 1024px)
{
    .list--personas .list__title a
    {
        font-size: 19px;
    }
}
.list--personas .list__title a:focus
{
    box-shadow: none;
}
.list--personas .list__title a:after
{
    position: absolute;
    top: 50%;
    right: 0;

    display: block;

    width: 16px;
    height: 16px;
    margin-top: -8px;

    content: '';

    background: url('../img/icons/i_arrow-right.svg') no-repeat 50% 50%/100% auto;
}
@media (min-width: 640px)
{
    .list--personas .list__title a:after
    {
        display: none;
    }
}

@media (min-width: 640px)
{
    .list[data-columns] .list__items
    {
        display: -ms-flexbox;
        display: flex;

        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    }
}

@media (min-width: 640px)
{
    .list[data-columns='2'] .list__item,
    .list.band--callout .list__item
    {
        width: 48.125%;
        margin-right: 3.75%;
    }
}

@media (min-width: 1280px)
{
    .list[data-columns='2'] .list__item,
    .list.band--callout .list__item
    {
        width: 48.9473684211%;
        margin-right: 2.1052631579%;
    }
}

@media (min-width: 640px)
{
    .list[data-columns='2'] .list__item:nth-child(even),
    .list.band--callout .list__item:nth-child(even)
    {
        margin-right: 0;
    }
}

@media (min-width: 640px)
{
    .list[data-columns='2'] .list__item:nth-child(2),
    .list.band--callout .list__item:nth-child(2)
    {
        margin-top: 0;
    }
}

@media (min-width: 640px)
{
    .list[data-columns='3'] .list__item
    {
        width: 48.125%;
        margin-right: 3.75%;
    }
}

@media (min-width: 1280px)
{
    .list[data-columns='3'] .list__item
    {
        width: 31.9298245614%;
        margin-right: 2.1052631579%;
    }
}

@media (min-width: 640px)
{
    .list[data-columns='3'] .list__item:nth-child(even)
    {
        margin-right: 0;
    }
}

@media (min-width: 1280px)
{
    .list[data-columns='3'] .list__item:nth-child(even)
    {
        margin-right: 2.1052631579%;
    }
}

@media (min-width: 1280px)
{
    .list[data-columns='3'] .list__item:nth-child(3n)
    {
        margin-right: 0;
    }
}

@media (min-width: 640px)
{
    .list[data-columns='3'] .list__item:nth-child(2)
    {
        margin-top: 0;
    }
}

@media (min-width: 1280px)
{
    .list[data-columns='3'] .list__item:nth-child(3)
    {
        margin-top: 0;
    }
}

@media (min-width: 640px)
{
    .list[data-columns='4'] .list__item
    {
        width: 48.125%;
        margin-right: 3.75%;
    }
}

@media (min-width: 1280px)
{
    .list[data-columns='4'] .list__item
    {
        width: 23.4210526316%;
        margin-right: 2.1052631579%;
    }
}

@media (min-width: 640px)
{
    .list[data-columns='4'] .list__item:nth-child(even)
    {
        margin-right: 0;
    }
}

@media (min-width: 1280px)
{
    .list[data-columns='4'] .list__item:nth-child(even)
    {
        margin-right: 2.1052631579%;
    }
}

@media (min-width: 1280px)
{
    .list[data-columns='4'] .list__item:nth-child(4n)
    {
        margin-right: 0;
    }
}

@media (min-width: 640px)
{
    .list[data-columns='4'] .list__item:nth-child(2)
    {
        margin-top: 0;
    }
}

@media (min-width: 1280px)
{
    .list[data-columns='4'] .list__item:nth-child(3),
    .list[data-columns='4'] .list__item:nth-child(4)
    {
        margin-top: 0;
    }
}

.checklist
{
    padding: 0 0 0 32px;

    list-style: none;
}
.checklist li
{
    position: relative;
}
.checklist li:before
{
    position: absolute;
    top: 6px;
    left: -32px;

    display: block;

    width: 16px;
    height: 16px;
    margin-right: 16px;

    content: '';

    background: url('../img/icons/i_check-simple.svg') no-repeat 50% 50%/100% auto;
}

.meta,
.links--search-quick .links__title,
.links--search-suggest .links__title,
.links--search-top .links__title,
.list--recognition .item__meta,
.closing__meta,
.chip__label,
.district__meta,
.shot__prefix,
.shot__suffix
{
    font-size: 14px;
    line-height: 1.25;

    margin-top: -5px;
    margin-right: -16px; 

    color: #6f777b;
}
@media (min-width: 640px)
{
    .meta,
    .links--search-quick .links__title,
    .links--search-suggest .links__title,
    .links--search-top .links__title,
    .list--recognition .item__meta,
    .closing__meta,
    .chip__label,
    .district__meta,
    .shot__prefix,
    .shot__suffix
    {
        font-size: 16px;
        line-height: 1.25;
    }
}
.meta strong,
.links--search-quick .links__title strong,
.links--search-suggest .links__title strong,
.links--search-top .links__title strong,
.list--recognition .item__meta strong,
.closing__meta strong,
.chip__label strong,
.district__meta strong,
.shot__prefix strong,
.shot__suffix strong
{
    display: inline-block;

    margin-top: 5px;
    margin-right: 16px;

    color: #181919;
}
.meta span,
.links--search-quick .links__title span,
.links--search-suggest .links__title span,
.links--search-top .links__title span,
.list--recognition .item__meta span,
.closing__meta span,
.chip__label span,
.district__meta span,
.shot__prefix span,
.shot__suffix span,
.meta time,
.links--search-quick .links__title time,
.links--search-suggest .links__title time,
.links--search-top .links__title time,
.list--recognition .item__meta time,
.closing__meta time,
.chip__label time,
.district__meta time,
.shot__prefix time,
.shot__suffix time
{
    display: inline-block;

    margin-top: 5px; 
    margin-right: 16px;
}
.meta .badge,
.links--search-quick .links__title .badge,
.links--search-suggest .links__title .badge,
.links--search-top .links__title .badge,
.list--recognition .item__meta .badge,
.closing__meta .badge,
.chip__label .badge,
.district__meta .badge,
.shot__prefix .badge,
.shot__suffix .badge,
.meta .list__item--popular:before,
.links--search-quick .links__title .list__item--popular:before,
.links--search-suggest .links__title .list__item--popular:before,
.links--search-top .links__title .list__item--popular:before,
.list--recognition .item__meta .list__item--popular:before,
.closing__meta .list__item--popular:before,
.chip__label .list__item--popular:before,
.district__meta .list__item--popular:before,
.shot__prefix .list__item--popular:before,
.shot__suffix .list__item--popular:before
{
    font-size: inherit; 

    margin-top: 5px;
    margin-right: 16px;
}
.meta--search-results
{
    margin-bottom: 32px;
}

[data-single='news'] [itemprop='mainEntityOfPage'] .zone:first-child
{
    line-height: 2;
}

.formblock + .formblock
{
    margin-top: 32px;
}

.formblock__addon
{
    font-weight: 600;

    position: absolute;
    top: 10px;

    display: block;

    padding: 0;

    color: #6f777b;
}

.formblock__field--prefix
{
    position: relative;
}
.formblock__field--prefix input
{
    padding-left: 32px;
}
.formblock__field--prefix .formblock__addon
{
    left: 16px;
}

.formblock__field--suffix
{
    position: relative;
}
.formblock__field--suffix input
{
    padding-right: 32px;
}
.formblock__field--suffix .formblock__addon
{
    right: 16px;
}

.formblock__field--inline
{
    position: relative;

    display: -ms-flexbox;
    display: flex;
}
.formblock__field--inline button,
.formblock__field--inline [type='submit'],
.formblock__field--inline .button,
.formblock__field--inline .toggle,
.formblock__field--inline .panel-group__toggle,
.formblock__field--inline .alert__dismiss,
.formblock__field--inline .card__action,
.formblock__field--inline .shot__button
{
    width: auto;
}
.formblock__field--inline button:not(:first-child),
.formblock__field--inline [type='submit']:not(:first-child),
.formblock__field--inline .button:not(:first-child),
.formblock__field--inline .toggle:not(:first-child),
.formblock__field--inline .panel-group__toggle:not(:first-child),
.formblock__field--inline .alert__dismiss:not(:first-child),
.formblock__field--inline .card__action:not(:first-child),
.formblock__field--inline .shot__button:not(:first-child)
{
    margin-left: 8px;
}
.formblock__field--inline button:not(:last-child),
.formblock__field--inline [type='submit']:not(:last-child),
.formblock__field--inline .button:not(:last-child),
.formblock__field--inline .toggle:not(:last-child),
.formblock__field--inline .panel-group__toggle:not(:last-child),
.formblock__field--inline .alert__dismiss:not(:last-child),
.formblock__field--inline .card__action:not(:last-child),
.formblock__field--inline .shot__button:not(:last-child)
{
    margin-right: 8px;
}

.formblock--datepicker .formblock__field input
{
    width: auto;

    -ms-flex-positive: 2;
    flex-grow: 2;
}

.formblock__notice
{
    color: #6f777b;
}

.formblock__wrapper
{
    position: relative;
}

@media (min-width: 640px)
{
    .formblock[data-size='md']
    {
        width: 300px;
    }
}

@media (min-width: 1024px)
{
    .formblock[data-size='md']
    {
        width: 412px;
    }
}

.formblock__limit
{
    font-size: 14px;
    line-height: 1;

    position: absolute;
    right: 16px;
    bottom: 16px;

    text-align: right; 

    color: #6f777b;
    background-color: #fff;
    box-shadow: 0 0 0 8px #fff;
}
@media (min-width: 640px)
{
    .formblock__limit
    {
        font-size: 16px;
    }
}

.formblock--error .formblock__label
{
    color: #dc143c;
}

.formblock--error .formblock__field
{
    border-color: #dc143c;
}
.formblock--error .formblock__field:focus
{
    box-shadow: 0 0 0 4px rgba(220, 20, 60, .16);
}

.formblock--error .formblock__notice
{
    font-weight: 600; 

    color: #dc143c;
}

.formaction,
.form-actions
{
    margin-top: 32px;
}
@media (min-width: 640px)
{
    .formaction,
    .form-actions
    {
        margin-top: 64px;
    }
}
@media (min-width: 1280px)
{
    .formaction,
    .form-actions
    {
        margin-top: 128px;
    }
}

.panel-group
{
    width: 100%;

    border-bottom: 1px solid rgba(24, 25, 25, .1);
}
.panel-group__toggle
{
    float: right;

    margin-bottom: 16px;
}
.panel-group .panel
{
    position: static;
    top: auto;

    clear: right; 
    overflow: visible;

    height: auto;

    background: none;
    box-shadow: none;
}
.panel-group .panel__heading
{
    border-top: 1px solid rgba(24, 25, 25, .1);
}
.panel-group .panel__title
{
    font-family: 'Open Sans', Helvetica, Arial, sans-serif;
    font-size: 16px; 
    font-weight: 600;

    margin: 0;
}
@media (min-width: 640px)
{
    .panel-group .panel__title
    {
        font-size: 19px;
    }
}
@media (min-width: 1024px)
{
    .panel-group .panel__title
    {
        font-size: 21px;
    }
}
.panel-group .panel__title a
{
    position: relative;

    display: block;

    padding: 16px 80px 16px 0;

    color: #181919; 
    background: none;
}
.panel-group .panel__title a:after
{
    position: absolute;
    top: 50%;
    right: 32px;

    display: block;

    width: 16px;
    height: 16px;
    margin-top: -8px;

    content: '';

    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: 16px auto;
}
.panel-group .panel__title a:hover
{
    color: #0041ba; 
    background-color: rgba(111, 119, 123, .05);
}
.panel-group .panel__title a[aria-expanded='false']:after
{
    background-image: url('../img/icons/i_add.svg');
}
.panel-group .panel__title a[aria-expanded='true']:after
{
    background-image: url('../img/icons/i_remove.svg');
}
.panel-group .panel__content[aria-hidden='true']
{
    display: none;
}
.panel-group .panel__content[aria-hidden='false']
{
    display: block;

    padding: 32px 0;
}
@media (min-width: 640px)
{
    .panel-group .panel__content[aria-hidden='false']
    {
        padding: 48px 0;
    }
}
@media (min-width: 1024px)
{
    .panel-group .panel__content[aria-hidden='false']
    {
        padding: 64px 0;
    }
}
.panel-group .panel__content .links
{
    margin: 0;
}

.form
{
    width: 100%;
}
.form__title
{
    font: 700 19px/1.25 'Open Sans', Helvetica, Arial, sans-serif; 

    margin: 0 0 16px;
}
@media (min-width: 640px)
{
    .form__title
    {
        font-size: 21px;
    }
}
@media (min-width: 1024px)
{
    .form__title
    {
        font-size: 24px;
    }
}
.form__description
{
    margin: 0 0 32px;
}
.form .title.title--secondary,
.form .title.band__title
{
    width: 100%; 
    margin-top: 32px;
}
@media (min-width: 640px)
{
    .form .title.title--secondary,
    .form .title.band__title
    {
        margin-top: 48px;
    }
}
@media (min-width: 1024px)
{
    .form .title.title--secondary,
    .form .title.band__title
    {
        margin-top: 64px;
    }
}
.form .title.title--secondary:first-of-type,
.form .title.band__title:first-of-type
{
    margin-top: 0;
}
.form .fieldset
{
    margin-top: 32px;
}
@media (min-width: 640px)
{
    .form .fieldset
    {
        margin-top: 48px;
    }
}
@media (min-width: 1024px)
{
    .form .fieldset
    {
        margin-top: 64px;
    }
}
.form .fieldset:first-of-type
{
    margin-top: 0;
}
.form .fieldset .title.title--secondary,
.form .fieldset .title.band__title
{
    margin-top: 0;
}
@media (min-width: 640px)
{
    .form .fieldset .title.title--secondary,
    .form .fieldset .title.band__title
    {
        margin-top: 0;
    }
}
@media (min-width: 1024px)
{
    .form .fieldset .title.title--secondary,
    .form .fieldset .title.band__title
    {
        margin-top: 0;
    }
}
.form > .fieldset:first-child
{
    margin-top: 0;
}
.form hr.webform-horizontal-rule,
.form .webform-horizontal-rule.menu__divider
{
    margin: 32px 0;
}
.form--search
{
    position: fixed;
    z-index: 1; 
    top: 0;
    left: 64px;

    display: -ms-flexbox;
    display: flex;

    width: calc(100% - 64px);
    height: 68px;

    -ms-flex-align: center;
    align-items: center;
}

@media screen and (max-width: 1023px) and (-ms-high-contrast: active), screen and (max-width: 1023px) and (-ms-high-contrast: none)
{
    .form--search
    {
        position: relative;
    }
}
@media (min-width: 640px)
{
    .form--search
    {
        left: 80px;

        width: calc(100% - 80px);
        height: 84px;
    }
}
@media (min-width: 1024px)
{
    .form--search
    {
        position: relative;
        top: auto;
        left: auto;

        width: 100%;
        height: 100%;
    }
}
.form--search label
{
    position: absolute;
    top: auto;
    left: -10000px;

    overflow: hidden; 

    width: 1px;
    height: 1px;
    margin: 0;
}
.form--search [type='search']
{
    height: 100%;
    padding: 0 16px 0 64px;

    border: 0;
    border-radius: 0; 
    background-color: #fff;
}
@media (min-width: 1024px)
{
    .form--search [type='search']
    {
        transition: background 150ms cubic-bezier(.77, 0, .175, 1); 

        -ms-flex-order: 2;
        order: 2;
    }
}
.form--search [type='search']:focus
{
    box-shadow: inset 0 0 0 4px #ffbf47;
}
@media (min-width: 1024px)
{
    .form--search [type='search']:focus
    {
        background-color: rgba(111, 119, 123, .05);
        box-shadow: none;
    }
}
.form--search [type='submit']
{
    font-size: 0;
    line-height: 0;

    position: absolute;
    left: 16px;

    width: auto;
    height: 100%;
    padding: 16px;

    border: 0; 
    border-radius: 0;
    background: url('../img/icons/i_search.svg') no-repeat 50% 50%/16px auto;
}

@media screen and (max-width: 1023px) and (-ms-high-contrast: active), screen and (max-width: 1023px) and (-ms-high-contrast: none)
{
    .form--search [type='submit']
    {
        top: 0;
    }
}
@media (min-width: 1024px)
{
    .form--search [type='submit']
    {
        height: auto;

        -ms-flex-order: 1;
        order: 1;
    }
}
@media all and (min-width: 1024px) and (-ms-high-contrast: none), (min-width: 1024px) and (-ms-high-contrast: active)
{
    .form--search [type='submit']
    {
        transform: translate(0, -50%);
    }
}
.form--search [type='submit']:hover
{
    background-color: transparent;
}
.form--search [type='submit']:focus
{
    outline: 0;
    box-shadow: inset 0 0 0 3px #ffbf47;
}
@media (max-width: 1023px)
{
    .form--search-location .formblock
    {
        width: 100%;
    }
}
.form--search-filters
{
    margin-bottom: 32px;
    padding: 32px 0 0;

    border-bottom: 2px solid #f6f6f6;
}
@media (min-width: 640px)
{
    .form--search-filters
    {
        margin-bottom: 48px;
    }
}
@media (min-width: 1024px)
{
    .form--search-filters
    {
        margin-bottom: 64px;
    }
}
.form--search-filters .wrapper
{
    margin-bottom: 32px;
}
@media (min-width: 640px)
{
    .form--search-filters .wrapper
    {
        margin-bottom: 48px;
    }
}
@media (min-width: 1024px)
{
    .form--search-filters .wrapper
    {
        margin-bottom: 64px;
    }
}
.form--search-filters .wrapper .formblock
{
    position: relative;
}
.form--search-filters .wrapper button
{
    font-size: 0;
    line-height: 0;

    position: absolute;
    top: 50%;
    left: 8px;

    width: 32px;
    height: 32px;
    margin-top: -16px;
    padding: 16px;

    border: 0; 
    border-radius: 0;
    background: url('../img/icons/i_search.svg') no-repeat 50% 50%/16px auto;
}
@media (min-width: 1024px)
{
    .form--search-filters .wrapper button
    {
        height: auto;

        -ms-flex-order: 1;
        order: 1;
    }
}
.form--search-filters .wrapper button:hover
{
    background-color: transparent;
}
.form--search-filters .wrapper button:focus
{
    outline: 0;
    box-shadow: inset 0 0 0 3px #ffbf47;
}
.form--search-filters input[type='text']
{
    padding-left: 48px;
}
@media (min-width: 1024px)
{
    .form--search-filters input[type='text']
    {
        width: 32.03125%;
    }
}
.form--search-filters .swiper-container
{
    top: 2px;

    margin-top: -2px; 
    padding: 0 32px;
}
@media (min-width: 640px)
{
    .form--search-filters .swiper-container
    {
        padding: 0 64px;
    }
}
@media (min-width: 1440px)
{
    .form--search-filters .swiper-container
    {
        width: 1140px;
        padding: 0;
    }
}
@media (min-width: 1680px)
{
    .form--search-filters .swiper-container
    {
        width: 1280px;
    }
}
.form--search-filters .radios
{
    margin-bottom: 0;
}
.form--search-filters .radios .option
{
    width: auto;
    margin: 0 32px 0 0;
    padding: 0;

    transform: translateX(0%);
}
.form--search-filters .option__label
{
    font-size: 16px;

    margin: 0;
    padding: 0 0 16px;

    white-space: nowrap;
}
@media (min-width: 640px)
{
    .form--search-filters .option__label
    {
        font-size: 19px;
    }
}
@media (min-width: 1024px)
{
    .form--search-filters .option__label
    {
        font-size: 21px;
    }
}
.form--search-filters .option__icon
{
    display: none;
}
.form--search-filters .option__input:checked + .option__label
{
    font-weight: 700; 

    box-shadow: inset 0 -2px 0 0 #181919;
}
.form-required
{
    margin-right: 3px;
}
.form-required:after
{
    font-size: 18px;

    content: '*';

    color: #dc143c;
}

.alert
{
    position: relative;

    margin-bottom: 32px;
    padding: 80px 32px 32px;

    border-radius: 4px; 
    background-color: #fff;
}
@media (min-width: 640px)
{
    .alert
    {
        margin-bottom: 48px;
    }
}
@media (min-width: 1024px)
{
    .alert
    {
        margin-bottom: 64px; 
        padding: 32px 32px 32px 88px;
    }
}
.alert .wrapper
{
    padding: 0;
}
.alert *:last-child
{
    margin-bottom: 0;
}
.alert:before
{
    position: absolute;
    top: 32px;
    left: 32px;

    display: inline-block;

    width: 24px;
    height: 24px;

    content: '';

    background: url('../img/icons/i_alert-circle-exc.svg') no-repeat 50% 50%/100% auto;
}
@media (min-width: 1024px)
{
    .alert:before
    {
        top: 50%;

        margin-top: -12px;
    }
}
@media (min-width: 640px)
{
    .alert__category
    {
        width: 22.1153846154%;
    }
}
@media (min-width: 1440px)
{
    .alert__category
    {
        width: 10.15625%;
    }
}
.alert__message
{
    margin-top: 8px;
}
@media (min-width: 640px)
{
    .alert__message
    {
        width: 74.0384615385%;
        margin: 0;
    }
}
@media (min-width: 1440px)
{
    .alert__message
    {
        display: -ms-flexbox;
        display: flex;

        width: 87.34375%; 

        -ms-flex-pack: justify;
        justify-content: space-between;
    }
}
.alert a
{
    font-weight: 600;
}
.alert__dismiss
{
    font-size: 0;
    line-height: 0; 

    position: absolute;
    top: 0;
    right: 0;

    width: 64px;
    height: 64px;
    padding: 0;

    transition: background 150ms cubic-bezier(.77, 0, .175, 1);

    border-radius: 0;
    background: #072235 url('../img/icons/i_close_white.svg') no-repeat 50% 50%/24px auto;
}
@media (min-width: 1440px)
{
    .alert__dismiss
    {
        width: 64px;
        height: 100%;
    }
}
.alert__dismiss:hover
{
    background-color: #04141e; 
    background-image: url('../img/icons/i_close_white.svg');
}
.alert__dismiss:focus
{
    background-color: #04141e;
    background-image: url('../img/icons/i_close_white.svg');
    box-shadow: inset 0 0 0 3px #ffbf47;
}
.alert--primary
{
    color: #fff; 
    background-color: #072235;
}
.alert--primary:before
{
    background-image: url('../img/icons/i_alert-circle-exc_white.svg');
}
.alert--primary a
{
    font-weight: 600; 

    color: #fff;
}
.alert--primary a:hover
{
    background-color: #04141e;
}
.alert--primary a:focus
{
    color: #072235;
}
.alert--primary a:active
{
    color: #fff;
}
.alert--secondary
{
    color: #181919; 
    background-color: #f6f6f6;
}
.alert--secondary a
{
    font-weight: 600; 

    color: #181919;
}
.alert--secondary a:hover
{
    background-color: #e9e9e9;
}
.alert--secondary a:focus
{
    color: #181919;
}
.alert--secondary a:active
{
    color: #181919;
}
.alert--breaking
{
    color: #fff; 
    background-color: #dc143c;
}
.alert--breaking:before
{
    background-image: url('../img/icons/i_alert-circle-exc_white.svg');
}
.alert--breaking a
{
    font-weight: 600; 

    color: #fff;
}
.alert--breaking a:hover
{
    background-color: #960e29;
}
.alert--breaking a:focus
{
    color: #181919;
}
.alert--breaking a:active
{
    color: #181919;
}
.alert--global
{
    margin: 0;
    padding: 64px 32px 32px;

    color: #fff; 
    border-radius: 0;
    background-color: #072235;
}
@media (min-width: 1440px)
{
    .alert--global
    {
        font-size: 16px; 

        padding: 32px;
    }
}
.alert--global:before
{
    display: none;
}
.alert--global a
{
    font-weight: 600; 

    color: #fff;
}
.alert--global a:hover
{
    background-color: #04141e;
}
.alert--global a:focus
{
    color: #072235; 
    background-color: #ffbf47;
}
.alert--global a:active
{
    color: #fff;
}
.alert--global .alert__item
{
    padding: 32px 0;

    border-top: 1px solid rgba(255, 255, 255, .25);
}
@media (min-width: 640px)
{
    .alert--global .alert__item
    {
        display: -ms-flexbox;
        display: flex;

        -ms-flex-pack: justify;
        justify-content: space-between;
        -ms-flex-align: center;
        align-items: center;
    }
}
@media (min-width: 1440px)
{
    .alert--global .alert__item
    {
        padding: 24px 0;
    }
}
.alert--global .alert__item:first-child
{
    padding-top: 0;

    border: 0;
}
.alert--global .alert__item:last-child
{
    padding-bottom: 0;
}
@media (max-width: 639px)
{
    .alert--collapsible
    {
        padding-top: 32px;
    }
}
.alert--collapsible .alert__label
{
    display: block;
    overflow: hidden;

    margin: 0 48px 0 32px;

    white-space: nowrap; 
    text-overflow: ellipsis;
}
@media (max-width: 639px)
{
    .alert--collapsible .alert__overflow
    {
        overflow: hidden; 

        max-height: 0;
    }
}
@media (max-width: 639px)
{
    .alert--collapsible .alert__overflow--active
    {
        max-height: 1000px;
        padding-top: 32px;
    }
}
@media (max-width: 639px)
{
    .alert--collapsible .alert__toggle
    {
        position: absolute;
        top: 32px;
        right: 32px;

        width: 24px;
        height: 24px;
        padding: 0;

        border: 0; 
        background: no-repeat url('../img/icons/i_menu-dots.svg') 50% 50%/100% auto;
    }
}
@media (max-width: 639px)
{
    .alert--collapsible .alert__toggle:focus
    {
        outline: 0; 
        box-shadow: 0 0 0 2px #ffbf47;
    }
}
@media (max-width: 639px)
{
    .alert--collapsible .alert__toggle--active
    {
        background-image: url('../img/icons/i_close.svg');
    }
}
@media (max-width: 639px)
{
    .alert--collapsible.alert--primary .alert__toggle,
    .alert--collapsible.alert--breaking .alert__toggle
    {
        background-image: url('../img/icons/i_menu-dots_white.svg');
    }
}
@media (max-width: 639px)
{
    .alert--collapsible.alert--primary .alert__toggle.alert__toggle--active,
    .alert--collapsible.alert--breaking .alert__toggle.alert__toggle--active
    {
        background-image: url('../img/icons/i_close_white.svg');
    }
}

.file
{
    position: relative;
}
.file [itemprop='url']
{
    position: relative;
}
.file [itemprop='url']:before
{
    position: absolute;
    top: 0;
    left: -56px;

    display: block;

    width: 40px;
    height: 48px;

    content: '';

    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: auto 100%;
}
@media (min-width: 640px)
{
    .file [itemprop='url']:before
    {
        left: -85px;

        width: 53px;
        height: 64px;
    }
}
.file [itemprop='url'][href*='.doc']:before,
.file [itemprop='url'][href*='.docx']:before
{
    background-image: url('../img/graphics/g_file-doc.svg');
}
.file [itemprop='url'][href*='.xls']:before,
.file [itemprop='url'][href*='.xlsx']:before,
.file [itemprop='url'][href*='.csv']:before
{
    background-image: url('../img/graphics/g_file-xls.svg');
}
.file [itemprop='url'][href*='.ppt']:before
{
    background-image: url('../img/graphics/g_file-ppt.svg');
}
.file [itemprop='url'][href*='.pdf']:before,
.file [itemprop='url'].pdf_link:before
{
    background-image: url('../img/graphics/g_file-pdf.svg');
}
.file [itemprop='url'][href*='.jpg']:before,
.file [itemprop='url'][href*='.png']:before,
.file [itemprop='url'][href*='.gif']:before
{
    background-image: url('../img/graphics/g_file-img.svg');
}
.file [itemprop='url'][href*='.txt']:before
{
    background-image: url('../img/graphics/g_file-txt.svg');
}
.file [itemprop='url'][href*='.zip']:before,
.file [itemprop='url'].zip_link:before
{
    background-image: url('../img/graphics/g_file-zip.svg');
}

[data-single='document'] [itemprop='mainContentOfPage']
{
    line-height: 2;
}

.badge,
.list__item--popular:before
{
    font-size: 12px;
    font-weight: 700;
    line-height: 1;

    display: inline-block;

    padding: 8px;

    white-space: nowrap; 
    text-transform: uppercase;

    color: #fff;
    border-radius: 4px;
    background-color: #181919;
}
.badge--primary
{
    background-color: #002f87;
}
.badge--secondary
{
    background-color: #6f777b;
}
.badge--info
{
    background-color: #1477a9;
}
.badge--danger
{
    background-color: #dc143c;
}
.badge--light,
.list__item--popular:before
{
    color: #181919; 
    background-color: #fff;
}
.badge--pill,
.list__item--popular:before
{
    padding: 7px 12px 6px;

    border-radius: 999px;
}

.closings-group + .closings-group
{
    margin-top: 64px;
}
@media (min-width: 640px)
{
    .closings-group + .closings-group
    {
        margin-top: 96px;
    }
}
@media (min-width: 1024px)
{
    .closings-group + .closings-group
    {
        margin-top: 128px;
    }
}

.closing
{
    margin: 64px 0 0;
}
.closing__title
{
    margin: 0 0 8px;

    color: #dc143c;
}
.closing__message
{
    margin: 32px 0 0;
}
.closing__message [itemprop='streetAddress']
{
    display: block;
}
@media (min-width: 640px)
{
    .closing__alternate
    {
        display: -ms-flexbox;
        display: flex;
    }
}
@media (min-width: 640px)
{
    .closing__alternate-location
    {
        width: 48.0769230769%;
    }
}
.closing__alternate-contact
{
    margin: 32px 0 0;
}
@media (min-width: 640px)
{
    .closing__alternate-contact
    {
        width: 48.0769230769%;
    }
}
@media (min-width: 640px)
{
    .closing__alternate-location + .closing__alternate-contact
    {
        margin: 0 0 0 3.8461538462%;
    }
}
.closing:first-child
{
    margin-top: 0;
}
.closing *:last-child
{
    margin-bottom: 0;
}

.sideblock,
.menu--secondary
{
    margin-top: 32px;
}
.sideblock:first-of-type,
.menu--secondary:first-of-type
{
    margin-top: 0;
}
.sideblock__title
{
    margin-top: 0;
}
.sideblock__content > *:last-child,
.menu--secondary .menu__list > *:last-child
{
    margin-bottom: 0;
}
.sideblock .links__item,
.menu--secondary .links__item
{
    margin-top: 12px;
}
.sideblock .menu__item,
.menu--secondary .menu__item
{
    margin-top: 12px;
}

/*
 * Table styles
 */
table.dataTable
{
    clear: both;

    width: 100%;
    margin: 0 auto;

    border-spacing: 0;
    border-collapse: separate;
    /*
   * Header and footer styles
   */
    /*
   * Body styles
   */
}

table.dataTable thead th,
table.dataTable tfoot th
{
    font-weight: bold;
}

table.dataTable thead th,
table.dataTable thead td
{
    padding: 10px 18px;

    border-bottom: 1px solid #111;
}

table.dataTable thead th:active,
table.dataTable thead td:active
{
    outline: none;
}

table.dataTable tfoot th,
table.dataTable tfoot td
{
    padding: 10px 18px 6px 18px;

    border-top: 1px solid #111;
}

table.dataTable thead .sorting,
table.dataTable thead .sorting_asc,
table.dataTable thead .sorting_desc,
table.dataTable thead .sorting_asc_disabled,
table.dataTable thead .sorting_desc_disabled
{
    cursor: pointer;

    background-repeat: no-repeat;
    background-position: center right;
    background-size: auto 16px; 

    *cursor: hand;
}

table.dataTable thead .sorting
{
    background-image: url('../img/icons/i_sort-both.svg');
}

table.dataTable thead .sorting_asc
{
    background-image: url('../img/icons/i_sort-asc.svg');
}

table.dataTable thead .sorting_desc
{
    background-image: url('../img/icons/i_sort-desc.svg');
}

table.dataTable thead .sorting_asc_disabled
{
    background-image: url('../img/icons/i_sort-asc-disabled.svg');
}

table.dataTable thead .sorting_desc_disabled
{
    background-image: url('../img/icons/i_sort-desc-disabled.svg');
}

table.dataTable tbody tr
{
    background-color: #fff;
}

table.dataTable tbody tr.selected
{
    background-color: #b0bed9;
}

table.dataTable tbody th,
table.dataTable tbody td
{
    padding: 8px 10px;
}

table.dataTable.row-border tbody th,
table.dataTable.row-border tbody td,
table.dataTable.display tbody th,
table.dataTable.display tbody td
{
    border-top: 1px solid #ddd;
}

table.dataTable.row-border tbody tr:first-child th,
table.dataTable.row-border tbody tr:first-child td,
table.dataTable.display tbody tr:first-child th,
table.dataTable.display tbody tr:first-child td
{
    border-top: none;
}

table.dataTable.cell-border tbody th,
table.dataTable.cell-border tbody td
{
    border-top: 1px solid #ddd;
    border-right: 1px solid #ddd;
}

table.dataTable.cell-border tbody tr th:first-child,
table.dataTable.cell-border tbody tr td:first-child
{
    border-left: 1px solid #ddd;
}

table.dataTable.cell-border tbody tr:first-child th,
table.dataTable.cell-border tbody tr:first-child td
{
    border-top: none;
}

table.dataTable.stripe tbody tr.odd,
table.dataTable.display tbody tr.odd
{
    background-color: #f9f9f9;
}

table.dataTable.stripe tbody tr.odd.selected,
table.dataTable.display tbody tr.odd.selected
{
    background-color: #acbad4;
}

table.dataTable.hover tbody tr:hover,
table.dataTable.display tbody tr:hover
{
    background-color: #f6f6f6;
}

table.dataTable.hover tbody tr:hover.selected,
table.dataTable.display tbody tr:hover.selected
{
    background-color: #aab7d1;
}

table.dataTable.order-column tbody tr > .sorting_1,
table.dataTable.order-column tbody tr > .sorting_2,
table.dataTable.order-column tbody tr > .sorting_3,
table.dataTable.display tbody tr > .sorting_1,
table.dataTable.display tbody tr > .sorting_2,
table.dataTable.display tbody tr > .sorting_3
{
    background-color: #fafafa;
}

table.dataTable.order-column tbody tr.selected > .sorting_1,
table.dataTable.order-column tbody tr.selected > .sorting_2,
table.dataTable.order-column tbody tr.selected > .sorting_3,
table.dataTable.display tbody tr.selected > .sorting_1,
table.dataTable.display tbody tr.selected > .sorting_2,
table.dataTable.display tbody tr.selected > .sorting_3
{
    background-color: #acbad5;
}

table.dataTable.display tbody tr.odd > .sorting_1,
table.dataTable.order-column.stripe tbody tr.odd > .sorting_1
{
    background-color: #f1f1f1;
}

table.dataTable.display tbody tr.odd > .sorting_2,
table.dataTable.order-column.stripe tbody tr.odd > .sorting_2
{
    background-color: #f3f3f3;
}

table.dataTable.display tbody tr.odd > .sorting_3,
table.dataTable.order-column.stripe tbody tr.odd > .sorting_3
{
    background-color: whitesmoke;
}

table.dataTable.display tbody tr.odd.selected > .sorting_1,
table.dataTable.order-column.stripe tbody tr.odd.selected > .sorting_1
{
    background-color: #a6b4cd;
}

table.dataTable.display tbody tr.odd.selected > .sorting_2,
table.dataTable.order-column.stripe tbody tr.odd.selected > .sorting_2
{
    background-color: #a8b5cf;
}

table.dataTable.display tbody tr.odd.selected > .sorting_3,
table.dataTable.order-column.stripe tbody tr.odd.selected > .sorting_3
{
    background-color: #a9b7d1;
}

table.dataTable.display tbody tr.even > .sorting_1,
table.dataTable.order-column.stripe tbody tr.even > .sorting_1
{
    background-color: #fafafa;
}

table.dataTable.display tbody tr.even > .sorting_2,
table.dataTable.order-column.stripe tbody tr.even > .sorting_2
{
    background-color: #fcfcfc;
}

table.dataTable.display tbody tr.even > .sorting_3,
table.dataTable.order-column.stripe tbody tr.even > .sorting_3
{
    background-color: #fefefe;
}

table.dataTable.display tbody tr.even.selected > .sorting_1,
table.dataTable.order-column.stripe tbody tr.even.selected > .sorting_1
{
    background-color: #acbad5;
}

table.dataTable.display tbody tr.even.selected > .sorting_2,
table.dataTable.order-column.stripe tbody tr.even.selected > .sorting_2
{
    background-color: #aebcd6;
}

table.dataTable.display tbody tr.even.selected > .sorting_3,
table.dataTable.order-column.stripe tbody tr.even.selected > .sorting_3
{
    background-color: #afbdd8;
}

table.dataTable.display tbody tr:hover > .sorting_1,
table.dataTable.order-column.hover tbody tr:hover > .sorting_1
{
    background-color: #eaeaea;
}

table.dataTable.display tbody tr:hover > .sorting_2,
table.dataTable.order-column.hover tbody tr:hover > .sorting_2
{
    background-color: #ececec;
}

table.dataTable.display tbody tr:hover > .sorting_3,
table.dataTable.order-column.hover tbody tr:hover > .sorting_3
{
    background-color: #efefef;
}

table.dataTable.display tbody tr:hover.selected > .sorting_1,
table.dataTable.order-column.hover tbody tr:hover.selected > .sorting_1
{
    background-color: #a2aec7;
}

table.dataTable.display tbody tr:hover.selected > .sorting_2,
table.dataTable.order-column.hover tbody tr:hover.selected > .sorting_2
{
    background-color: #a3b0c9;
}

table.dataTable.display tbody tr:hover.selected > .sorting_3,
table.dataTable.order-column.hover tbody tr:hover.selected > .sorting_3
{
    background-color: #a5b2cb;
}

table.dataTable.no-footer
{
    border-bottom: 1px solid #111;
}

table.dataTable.nowrap th,
table.dataTable.nowrap td
{
    white-space: nowrap;
}

table.dataTable.compact thead th,
table.dataTable.compact thead td
{
    padding: 4px 17px 4px 4px;
}

table.dataTable.compact tfoot th,
table.dataTable.compact tfoot td
{
    padding: 4px;
}

table.dataTable.compact tbody th,
table.dataTable.compact tbody td
{
    padding: 4px;
}

table.dataTable th.dt-left,
table.dataTable td.dt-left
{
    text-align: left;
}

table.dataTable th.dt-center,
table.dataTable td.dt-center,
table.dataTable td.dataTables_empty
{
    text-align: center;
}

table.dataTable th.dt-right,
table.dataTable td.dt-right
{
    text-align: right;
}

table.dataTable th.dt-justify,
table.dataTable td.dt-justify
{
    text-align: justify;
}

table.dataTable th.dt-nowrap,
table.dataTable td.dt-nowrap
{
    white-space: nowrap;
}

table.dataTable thead th.dt-head-left,
table.dataTable thead td.dt-head-left,
table.dataTable tfoot th.dt-head-left,
table.dataTable tfoot td.dt-head-left
{
    text-align: left;
}

table.dataTable thead th.dt-head-center,
table.dataTable thead td.dt-head-center,
table.dataTable tfoot th.dt-head-center,
table.dataTable tfoot td.dt-head-center
{
    text-align: center;
}

table.dataTable thead th.dt-head-right,
table.dataTable thead td.dt-head-right,
table.dataTable tfoot th.dt-head-right,
table.dataTable tfoot td.dt-head-right
{
    text-align: right;
}

table.dataTable thead th.dt-head-justify,
table.dataTable thead td.dt-head-justify,
table.dataTable tfoot th.dt-head-justify,
table.dataTable tfoot td.dt-head-justify
{
    text-align: justify;
}

table.dataTable thead th.dt-head-nowrap,
table.dataTable thead td.dt-head-nowrap,
table.dataTable tfoot th.dt-head-nowrap,
table.dataTable tfoot td.dt-head-nowrap
{
    white-space: nowrap;
}

table.dataTable tbody th.dt-body-left,
table.dataTable tbody td.dt-body-left
{
    text-align: left;
}

table.dataTable tbody th.dt-body-center,
table.dataTable tbody td.dt-body-center
{
    text-align: center;
}

table.dataTable tbody th.dt-body-right,
table.dataTable tbody td.dt-body-right
{
    text-align: right;
}

table.dataTable tbody th.dt-body-justify,
table.dataTable tbody td.dt-body-justify
{
    text-align: justify;
}

table.dataTable tbody th.dt-body-nowrap,
table.dataTable tbody td.dt-body-nowrap
{
    white-space: nowrap;
}

table.dataTable,
table.dataTable th,
table.dataTable td
{
    box-sizing: content-box;
}

/*
 * Control feature layout
 */
.dataTables_wrapper
{
    position: relative;

    clear: both;
    zoom: 1; 

    *zoom: 1;
}

.dataTables_wrapper .dataTables_length
{
    float: left;
}

.dataTables_wrapper .dataTables_length select
{
    width: 80px;
}

.dataTables_wrapper .dataTables_filter
{
    float: right;

    text-align: right;
}

.dataTables_wrapper .dataTables_filter input
{
    width: auto;
    margin-left: .5em;
}

.dataTables_wrapper .dataTables_info
{
    float: left;
    clear: both;

    padding-top: .755em;
}

.dataTables_wrapper .dataTables_paginate
{
    float: right;

    padding-top: .25em; 

    text-align: right;
}

.dataTables_wrapper .dataTables_paginate .paginate_button
{
    display: inline-block;

    box-sizing: border-box;
    min-width: 1.5em;
    margin-left: 2px;
    padding: .5em 1em;

    cursor: pointer;
    text-align: center;
    text-decoration: none !important;

    color: #333 !important;
    border: 1px solid transparent;
    border-radius: 2px; 

    *cursor: hand;
}

.dataTables_wrapper .dataTables_paginate .paginate_button.current,
.dataTables_wrapper .dataTables_paginate .paginate_button.current:hover
{
    color: #333 !important;
    border: 1px solid #979797;
    /* Chrome,Safari4+ */
    /* Chrome10+,Safari5.1+ */
    /* FF3.6+ */
    /* IE10+ */
    /* Opera 11.10+ */
    background: linear-gradient(to bottom, white 0%, #dcdcdc 100%);
    background-color: white;
    /* W3C */
}

.dataTables_wrapper .dataTables_paginate .paginate_button.disabled,
.dataTables_wrapper .dataTables_paginate .paginate_button.disabled:hover,
.dataTables_wrapper .dataTables_paginate .paginate_button.disabled:active
{
    cursor: default;

    color: #666 !important;
    border: 1px solid transparent;
    background: transparent;
    box-shadow: none;
}

.dataTables_wrapper .dataTables_paginate .paginate_button:hover
{
    color: white !important;
    border: 1px solid #111;
    /* Chrome,Safari4+ */
    /* Chrome10+,Safari5.1+ */
    /* FF3.6+ */
    /* IE10+ */
    /* Opera 11.10+ */
    background: linear-gradient(to bottom, #585858 0%, #111 100%);
    background-color: #585858;
    /* W3C */
}

.dataTables_wrapper .dataTables_paginate .paginate_button:active
{
    outline: none;
    /* Chrome,Safari4+ */
    /* Chrome10+,Safari5.1+ */
    /* FF3.6+ */
    /* IE10+ */
    /* Opera 11.10+ */
    background: linear-gradient(to bottom, #2b2b2b 0%, #0c0c0c 100%);
    background-color: #2b2b2b;
    /* W3C */
    box-shadow: inset 0 0 3px #111;
}

.dataTables_wrapper .dataTables_paginate .ellipsis
{
    padding: 0 1em;
}

.dataTables_wrapper .dataTables_processing
{
    font-size: 1.2em;

    position: absolute;
    top: 50%;
    left: 50%;

    width: 100%;
    height: 40px;
    margin-top: -25px;
    margin-left: -50%;
    padding-top: 20px;

    text-align: center;

    background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, .9) 25%, rgba(255, 255, 255, .9) 75%, rgba(255, 255, 255, 0) 100%); 
    background-color: white;
}

.dataTables_wrapper .dataTables_length,
.dataTables_wrapper .dataTables_filter,
.dataTables_wrapper .dataTables_info,
.dataTables_wrapper .dataTables_processing,
.dataTables_wrapper .dataTables_paginate
{
    color: #333;
}

.dataTables_wrapper .dataTables_scroll
{
    clear: both;
}

.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody
{
    *margin-top: -1px;
    -webkit-overflow-scrolling: touch;
}

.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > thead > tr > th,
.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > thead > tr > td,
.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > tbody > tr > th,
.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > tbody > tr > td
{
    vertical-align: middle;
}

.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > thead > tr > th > div.dataTables_sizing,
.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > thead > tr > td > div.dataTables_sizing,
.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > tbody > tr > th > div.dataTables_sizing,
.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > tbody > tr > td > div.dataTables_sizing
{
    overflow: hidden;

    height: 0;
    margin: 0 !important;
    padding: 0 !important;
}

.dataTables_wrapper.no-footer .dataTables_scrollBody
{
    border-bottom: 1px solid #111;
}

.dataTables_wrapper.no-footer div.dataTables_scrollHead table.dataTable,
.dataTables_wrapper.no-footer div.dataTables_scrollBody > table
{
    border-bottom: none;
}

.dataTables_wrapper:after
{
    display: block;
    visibility: hidden;
    clear: both;

    height: 0; 

    content: '';
}

@media screen and (max-width: 767px)
{
    .dataTables_wrapper .dataTables_info,
    .dataTables_wrapper .dataTables_paginate
    {
        float: none;

        text-align: center;
    }
    .dataTables_wrapper .dataTables_paginate
    {
        margin-top: .5em;
    }
}

@media screen and (max-width: 640px)
{
    .dataTables_wrapper .dataTables_length,
    .dataTables_wrapper .dataTables_filter
    {
        float: none;

        text-align: center;
    }
    .dataTables_wrapper .dataTables_filter
    {
        margin-top: .5em;
    }
}

table.dataTable.dtr-inline.collapsed > tbody > tr > td.child,
table.dataTable.dtr-inline.collapsed > tbody > tr > th.child,
table.dataTable.dtr-inline.collapsed > tbody > tr > td.dataTables_empty
{
    cursor: default !important;
}

table.dataTable.dtr-inline.collapsed > tbody > tr > td.child:before,
table.dataTable.dtr-inline.collapsed > tbody > tr > th.child:before,
table.dataTable.dtr-inline.collapsed > tbody > tr > td.dataTables_empty:before
{
    display: none !important;
}

table.dataTable.dtr-inline.collapsed > tbody > tr[role='row'] > td:first-child,
table.dataTable.dtr-inline.collapsed > tbody > tr[role='row'] > th:first-child
{
    position: relative;

    padding-left: 30px;

    cursor: pointer;
}

table.dataTable.dtr-inline.collapsed > tbody > tr[role='row'] > td:first-child:before,
table.dataTable.dtr-inline.collapsed > tbody > tr[role='row'] > th:first-child:before
{
    position: absolute;
    top: 50%;
    left: 0;

    display: block;

    width: 16px;
    height: 16px;

    content: '';
    transform: translateY(-50%); 

    background: url('../img/icons/i_add.svg') no-repeat 50% 50%/100% auto;
}

table.dataTable.dtr-inline.collapsed > tbody > tr.parent > td:first-child:before,
table.dataTable.dtr-inline.collapsed > tbody > tr.parent > th:first-child:before
{
    background-image: url('../img/icons/i_remove.svg');
}

table.dataTable.dtr-inline.collapsed.compact > tbody > tr > td:first-child,
table.dataTable.dtr-inline.collapsed.compact > tbody > tr > th:first-child
{
    padding-left: 27px;
}

table.dataTable.dtr-inline.collapsed.compact > tbody > tr > td:first-child:before,
table.dataTable.dtr-inline.collapsed.compact > tbody > tr > th:first-child:before
{
    line-height: 14px;

    top: 5px;
    left: 4px;

    width: 14px;
    height: 14px;

    text-indent: 3px; 

    border-radius: 14px;
}

table.dataTable.dtr-column > tbody > tr > td.control,
table.dataTable.dtr-column > tbody > tr > th.control
{
    position: relative;

    cursor: pointer;
}

table.dataTable.dtr-column > tbody > tr > td.control:before,
table.dataTable.dtr-column > tbody > tr > th.control:before
{
    font-family: 'Courier New', Courier, monospace;
    line-height: 14px;

    position: absolute;
    top: 50%;
    left: 50%;

    display: block;

    box-sizing: content-box;
    width: 16px;
    height: 16px;
    margin-top: -10px;
    margin-left: -10px;

    content: '+';
    text-align: center;
    text-indent: 0 !important;

    color: white;
    border: 2px solid white;
    border-radius: 14px;
    background-color: #31b131; 
    box-shadow: 0 0 3px #444;
}

table.dataTable.dtr-column > tbody > tr.parent td.control:before,
table.dataTable.dtr-column > tbody > tr.parent th.control:before
{
    content: '-';

    background-color: #d33333;
}

table.dataTable > tbody > tr.child
{
    padding: .5em 1em;
}

table.dataTable > tbody > tr.child:hover
{
    background: transparent !important;
}

table.dataTable > tbody > tr.child ul.dtr-details
{
    display: inline-block;

    margin: 0;
    padding: 0; 

    list-style-type: none;
}

table.dataTable > tbody > tr.child ul.dtr-details > li
{
    padding: .5em 0; 

    border-bottom: 1px solid #efefef;
}

table.dataTable > tbody > tr.child ul.dtr-details > li:first-child
{
    padding-top: 0;
}

table.dataTable > tbody > tr.child ul.dtr-details > li:last-child
{
    border-bottom: none;
}

table.dataTable > tbody > tr.child span.dtr-title
{
    font-weight: bold; 

    display: inline-block;

    min-width: 75px;
}

div.dtr-modal
{
    position: fixed;
    z-index: 100;
    top: 0;
    left: 0;

    box-sizing: border-box;
    width: 100%;
    height: 100%;
    padding: 10em 1em;
}

div.dtr-modal div.dtr-modal-display
{
    position: absolute;
    z-index: 102;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;

    overflow: auto;
    overflow: auto;

    width: 50%;
    height: 50%;
    margin: auto;

    border: 1px solid black;
    border-radius: .5em;
    background-color: #f5f5f7;
    box-shadow: 0 12px 30px rgba(0, 0, 0, .6);
}

div.dtr-modal div.dtr-modal-content
{
    position: relative;

    padding: 1em;
}

div.dtr-modal div.dtr-modal-close
{
    position: absolute;
    z-index: 12; 
    top: 6px;
    right: 6px;

    width: 22px;
    height: 22px;

    cursor: pointer;
    text-align: center;

    border: 1px solid #eaeaea;
    border-radius: 3px;
    background-color: #f9f9f9;
}

div.dtr-modal div.dtr-modal-close:hover
{
    background-color: #eaeaea;
}

div.dtr-modal div.dtr-modal-background
{
    position: fixed;
    z-index: 101;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;

    background: rgba(0, 0, 0, .6);
}

@media screen and (max-width: 767px)
{
    div.dtr-modal div.dtr-modal-display
    {
        width: 95%;
    }
}

/*! jQuery UI - v1.12.1 - 2017-11-17
* http://jqueryui.com
* Includes: draggable.css, core.css, resizable.css, selectable.css, sortable.css, accordion.css, autocomplete.css, menu.css, button.css, controlgroup.css, checkboxradio.css, datepicker.css, dialog.css, progressbar.css, selectmenu.css, slider.css, spinner.css, tabs.css, tooltip.css
* Copyright jQuery Foundation and other contributors; Licensed MIT */
.ui-draggable-handle
{
    -ms-touch-action: none;
        touch-action: none;
}

/* Layout helpers
----------------------------------*/
.ui-helper-hidden
{
    display: none;
}

.ui-helper-hidden-accessible
{
    position: absolute;

    overflow: hidden;
    clip: rect(0 0 0 0);

    width: 1px; 
    height: 1px;
    margin: -1px;
    padding: 0;

    border: 0;
}

.ui-helper-reset
{
    font-size: 100%;
    line-height: 1.3;

    margin: 0;
    padding: 0;

    list-style: none; 

    text-decoration: none;

    border: 0;
    outline: 0;
}

.ui-helper-clearfix:before,
.ui-helper-clearfix:after
{
    display: table;

    border-collapse: collapse; 

    content: '';
}

.ui-helper-clearfix:after
{
    clear: both;
}

.ui-helper-zfix
{
    position: absolute;
    top: 0;
    left: 0;

    width: 100%;
    height: 100%;

    opacity: 0;

    filter: Alpha(Opacity=0);
    /* support: IE8 */
}

.ui-front
{
    z-index: 100;
}

/* Interaction Cues
----------------------------------*/
.ui-state-disabled
{
    cursor: default !important;
    pointer-events: none;
}

/* Icons
----------------------------------*/
.ui-icon
{
    position: relative;

    display: inline-block;
    overflow: hidden;

    margin-top: -.25em;

    vertical-align: middle;
    text-indent: -99999px;

    background-repeat: no-repeat;
}

.ui-widget-icon-block
{
    left: 50%;

    display: block; 

    margin-left: -8px;
}

/* Misc visuals
----------------------------------*/
/* Overlays */
.ui-widget-overlay
{
    position: fixed;
    top: 0;
    left: 0;

    width: 100%;
    height: 100%;
}

.ui-resizable
{
    position: relative;
}

.ui-resizable-handle
{
    font-size: .1px;

    position: absolute;

    display: block;

    -ms-touch-action: none;
        touch-action: none;
}

.ui-resizable-disabled .ui-resizable-handle,
.ui-resizable-autohide .ui-resizable-handle
{
    display: none;
}

.ui-resizable-n
{
    top: -5px;
    left: 0; 

    width: 100%;
    height: 7px;

    cursor: n-resize;
}

.ui-resizable-s
{
    bottom: -5px;
    left: 0; 

    width: 100%;
    height: 7px;

    cursor: s-resize;
}

.ui-resizable-e
{
    top: 0;
    right: -5px;

    width: 7px;
    height: 100%; 

    cursor: e-resize;
}

.ui-resizable-w
{
    top: 0;
    left: -5px;

    width: 7px;
    height: 100%; 

    cursor: w-resize;
}

.ui-resizable-se
{
    right: 1px;
    bottom: 1px; 

    width: 12px;
    height: 12px;

    cursor: se-resize;
}

.ui-resizable-sw
{
    bottom: -5px; 
    left: -5px;

    width: 9px;
    height: 9px;

    cursor: sw-resize;
}

.ui-resizable-nw
{
    top: -5px; 
    left: -5px;

    width: 9px;
    height: 9px;

    cursor: nw-resize;
}

.ui-resizable-ne
{
    top: -5px; 
    right: -5px;

    width: 9px;
    height: 9px;

    cursor: ne-resize;
}

.ui-selectable
{
    -ms-touch-action: none;
        touch-action: none;
}

.ui-selectable-helper
{
    position: absolute;
    z-index: 100;

    border: 1px dotted black;
}

.ui-sortable-handle
{
    -ms-touch-action: none;
        touch-action: none;
}

.ui-accordion .ui-accordion-header
{
    font-size: 100%; 

    position: relative;

    display: block;

    margin: 2px 0 0 0;
    padding: .5em .5em .5em .7em;

    cursor: pointer;
}

.ui-accordion .ui-accordion-content
{
    overflow: auto; 

    padding: 1em 2.2em;

    border-top: 0;
}

.ui-autocomplete
{
    position: absolute;
    top: 0;
    left: 0;

    cursor: default;
}

.ui-menu
{
    display: block;

    margin: 0;
    padding: 0;

    list-style: none;

    outline: 0;
}

.ui-menu .ui-menu
{
    position: absolute;
}

.ui-menu .ui-menu-item
{
    margin: 0;
    /* support: IE10, see #8844 */

    list-style-image: url('data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7'); 

    cursor: pointer;
}

.ui-menu .ui-menu-item-wrapper
{
    position: relative;

    padding: 3px 1em 3px .4em;
}

.ui-menu .ui-menu-divider
{
    font-size: 0;
    line-height: 0;

    height: 0;
    margin: 5px 0;

    border-width: 1px 0 0 0;
}

.ui-menu .ui-state-focus,
.ui-menu .ui-state-active
{
    margin: -1px;
}

/* icon support */
.ui-menu-icons
{
    position: relative;
}

.ui-menu-icons .ui-menu-item-wrapper
{
    padding-left: 2em;
}

/* left-aligned */
.ui-menu .ui-icon
{
    position: absolute;
    top: 0;
    bottom: 0;
    left: .2em;

    margin: auto 0;
}

/* right-aligned */
.ui-menu .ui-menu-icon
{
    right: 0; 
    left: auto;
}

.ui-button
{
    line-height: normal;

    position: relative;

    display: inline-block;
    /* Support: IE <= 11 */
    overflow: visible; 

    margin-right: .1em;
    padding: .4em 1em;

    cursor: pointer;
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;
    text-align: center;
    vertical-align: middle;
}

.ui-button,
.ui-button:link,
.ui-button:visited,
.ui-button:hover,
.ui-button:active
{
    text-decoration: none;
}

/* to make room for the icon, a width needs to be set here */
.ui-button-icon-only
{
    box-sizing: border-box;
    width: 2em;

    white-space: nowrap; 
    text-indent: -9999px;
}

/* no icon support for input elements */
input.ui-button.ui-button-icon-only
{
    text-indent: 0;
}

/* button icon element(s) */
.ui-button-icon-only .ui-icon
{
    position: absolute;
    top: 50%;
    left: 50%;

    margin-top: -8px;
    margin-left: -8px;
}

.ui-button.ui-icon-notext .ui-icon
{
    width: 2.1em;
    height: 2.1em;
    padding: 0;

    white-space: nowrap; 
    text-indent: -9999px;
}

input.ui-button.ui-icon-notext .ui-icon
{
    width: auto;
    height: auto;
    padding: .4em 1em; 

    white-space: normal;
    text-indent: 0;
}

/* workarounds */
/* Support: Firefox 5 - 40 */
input.ui-button::-moz-focus-inner,
button.ui-button::-moz-focus-inner
{
    padding: 0; 

    border: 0;
}

.ui-controlgroup
{
    display: inline-block; 

    vertical-align: middle;
}

.ui-controlgroup > .ui-controlgroup-item
{
    float: left;

    margin-right: 0; 
    margin-left: 0;
}

.ui-controlgroup > .ui-controlgroup-item:focus,
.ui-controlgroup > .ui-controlgroup-item.ui-visual-focus
{
    z-index: 9999;
}

.ui-controlgroup-vertical > .ui-controlgroup-item
{
    display: block;
    float: none;

    width: 100%;
    margin-top: 0;
    margin-bottom: 0;

    text-align: left;
}

.ui-controlgroup-vertical .ui-controlgroup-item
{
    box-sizing: border-box;
}

.ui-controlgroup .ui-controlgroup-label
{
    padding: .4em 1em;
}

.ui-controlgroup .ui-controlgroup-label span
{
    font-size: 80%;
}

.ui-controlgroup-horizontal .ui-controlgroup-label + .ui-controlgroup-item
{
    border-left: none;
}

.ui-controlgroup-vertical .ui-controlgroup-label + .ui-controlgroup-item
{
    border-top: none;
}

.ui-controlgroup-horizontal .ui-controlgroup-label.ui-widget-content
{
    border-right: none;
}

.ui-controlgroup-vertical .ui-controlgroup-label.ui-widget-content
{
    border-bottom: none;
}

/* Spinner specific style fixes */
.ui-controlgroup-vertical .ui-spinner-input
{
    /* Support: IE8 only, Android < 4.4 only */
    width: 75%;
    width: calc( 100% - 2.4em);
}

.ui-controlgroup-vertical .ui-spinner .ui-spinner-up
{
    border-top-style: solid;
}

.ui-checkboxradio-label .ui-icon-background
{
    border: none; 
    border-radius: .12em;
    box-shadow: inset 1px 1px 1px #ccc;
}

.ui-checkboxradio-radio-label .ui-icon-background
{
    overflow: visible;

    width: 16px;
    height: 16px;

    border: none; 
    border-radius: 1em;
}

.ui-checkboxradio-radio-label.ui-checkboxradio-checked .ui-icon,
.ui-checkboxradio-radio-label.ui-checkboxradio-checked:hover .ui-icon
{
    width: 8px;
    height: 8px;

    border-width: 4px;
    border-style: solid; 
    background-image: none;
}

.ui-checkboxradio-disabled
{
    pointer-events: none;
}

.ui-datepicker
{
    display: none; 

    width: 17em;
    padding: .2em .2em 0;
}

.ui-datepicker .ui-datepicker-header
{
    position: relative;

    padding: .2em 0;
}

.ui-datepicker .ui-datepicker-prev,
.ui-datepicker .ui-datepicker-next
{
    position: absolute;
    top: 2px;

    width: 1.8em;
    height: 1.8em;
}

.ui-datepicker .ui-datepicker-prev-hover,
.ui-datepicker .ui-datepicker-next-hover
{
    top: 1px;
}

.ui-datepicker .ui-datepicker-prev
{
    left: 2px;
}

.ui-datepicker .ui-datepicker-next
{
    right: 2px;
}

.ui-datepicker .ui-datepicker-prev-hover
{
    left: 1px;
}

.ui-datepicker .ui-datepicker-next-hover
{
    right: 1px;
}

.ui-datepicker .ui-datepicker-prev span,
.ui-datepicker .ui-datepicker-next span
{
    position: absolute;
    top: 50%;
    left: 50%;

    display: block;

    margin-top: -8px; 
    margin-left: -8px;
}

.ui-datepicker .ui-datepicker-title
{
    line-height: 1.8em;

    margin: 0 2.3em;

    text-align: center;
}

.ui-datepicker .ui-datepicker-title select
{
    font-size: 1em;

    margin: 1px 0;
}

.ui-datepicker select.ui-datepicker-month,
.ui-datepicker select.ui-datepicker-year
{
    width: 45%;
}

.ui-datepicker table
{
    font-size: .9em;

    width: 100%;
    margin: 0 0 .4em; 

    border-collapse: collapse;
}

.ui-datepicker th
{
    font-weight: bold;

    padding: .7em .3em;

    text-align: center;

    border: 0;
}

.ui-datepicker td
{
    padding: 1px; 

    border: 0;
}

.ui-datepicker td span,
.ui-datepicker td a
{
    display: block;

    padding: .2em;

    text-align: right;
    text-decoration: none;
}

.ui-datepicker .ui-datepicker-buttonpane
{
    margin: .7em 0 0 0;
    padding: 0 .2em;

    border-right: 0;
    border-bottom: 0; 
    border-left: 0;
    background-image: none;
}

.ui-datepicker .ui-datepicker-buttonpane button
{
    float: right;
    overflow: visible; 

    width: auto;
    margin: .5em .2em .4em;
    padding: .2em .6em .3em .6em;

    cursor: pointer;
}

.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current
{
    float: left;
}

/* with multiple calendars */
.ui-datepicker.ui-datepicker-multi
{
    width: auto;
}

.ui-datepicker-multi .ui-datepicker-group
{
    float: left;
}

.ui-datepicker-multi .ui-datepicker-group table
{
    width: 95%;
    margin: 0 auto .4em;
}

.ui-datepicker-multi-2 .ui-datepicker-group
{
    width: 50%;
}

.ui-datepicker-multi-3 .ui-datepicker-group
{
    width: 33.3%;
}

.ui-datepicker-multi-4 .ui-datepicker-group
{
    width: 25%;
}

.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header,
.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header
{
    border-left-width: 0;
}

.ui-datepicker-multi .ui-datepicker-buttonpane
{
    clear: left;
}

.ui-datepicker-row-break
{
    font-size: 0; 

    clear: both;

    width: 100%;
}

/* RTL support */
.ui-datepicker-rtl
{
    direction: rtl;
}

.ui-datepicker-rtl .ui-datepicker-prev
{
    right: 2px;
    left: auto;
}

.ui-datepicker-rtl .ui-datepicker-next
{
    right: auto; 
    left: 2px;
}

.ui-datepicker-rtl .ui-datepicker-prev:hover
{
    right: 1px;
    left: auto;
}

.ui-datepicker-rtl .ui-datepicker-next:hover
{
    right: auto; 
    left: 1px;
}

.ui-datepicker-rtl .ui-datepicker-buttonpane
{
    clear: right;
}

.ui-datepicker-rtl .ui-datepicker-buttonpane button
{
    float: left;
}

.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current,
.ui-datepicker-rtl .ui-datepicker-group
{
    float: right;
}

.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header,
.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header
{
    border-right-width: 0;
    border-left-width: 1px;
}

/* Icons */
.ui-datepicker .ui-icon
{
    top: .3em; 
    left: .5em;

    display: block;
    overflow: hidden;

    text-indent: -99999px;

    background-repeat: no-repeat;
}

.ui-dialog
{
    position: absolute;
    top: 0;
    left: 0;

    padding: .2em;

    outline: 0;
}

.ui-dialog .ui-dialog-titlebar
{
    position: relative; 

    padding: .4em 1em;
}

.ui-dialog .ui-dialog-title
{
    float: left;
    overflow: hidden;

    width: 90%;
    margin: .1em 0;

    white-space: nowrap;
    text-overflow: ellipsis;
}

.ui-dialog .ui-dialog-titlebar-close
{
    position: absolute;
    top: 50%;
    right: .3em;

    width: 20px;
    height: 20px; 
    margin: -10px 0 0 0;
    padding: 1px;
}

.ui-dialog .ui-dialog-content
{
    position: relative;

    overflow: auto; 

    padding: .5em 1em;

    border: 0;
    background: none;
}

.ui-dialog .ui-dialog-buttonpane
{
    margin-top: .5em;
    padding: .3em 1em .5em .4em; 

    text-align: left;

    border-width: 1px 0 0 0;
    background-image: none;
}

.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset
{
    float: right;
}

.ui-dialog .ui-dialog-buttonpane button
{
    margin: .5em .4em .5em 0;

    cursor: pointer;
}

.ui-dialog .ui-resizable-n
{
    top: 0; 

    height: 2px;
}

.ui-dialog .ui-resizable-e
{
    right: 0; 

    width: 2px;
}

.ui-dialog .ui-resizable-s
{
    bottom: 0; 

    height: 2px;
}

.ui-dialog .ui-resizable-w
{
    left: 0; 

    width: 2px;
}

.ui-dialog .ui-resizable-se,
.ui-dialog .ui-resizable-sw,
.ui-dialog .ui-resizable-ne,
.ui-dialog .ui-resizable-nw
{
    width: 7px;
    height: 7px;
}

.ui-dialog .ui-resizable-se
{
    right: 0;
    bottom: 0;
}

.ui-dialog .ui-resizable-sw
{
    bottom: 0; 
    left: 0;
}

.ui-dialog .ui-resizable-ne
{
    top: 0; 
    right: 0;
}

.ui-dialog .ui-resizable-nw
{
    top: 0; 
    left: 0;
}

.ui-draggable .ui-dialog-titlebar
{
    cursor: move;
}

.ui-progressbar
{
    overflow: hidden; 

    height: 2em;

    text-align: left;
}

.ui-progressbar .ui-progressbar-value
{
    height: 100%; 
    margin: -1px;
}

.ui-progressbar .ui-progressbar-overlay
{
    height: 100%;
    /* support: IE8 */

    opacity: .25; 
    background: url('data:image/gif;base64,R0lGODlhKAAoAIABAAAAAP///yH/C05FVFNDQVBFMi4wAwEAAAAh+QQJAQABACwAAAAAKAAoAAACkYwNqXrdC52DS06a7MFZI+4FHBCKoDeWKXqymPqGqxvJrXZbMx7Ttc+w9XgU2FB3lOyQRWET2IFGiU9m1frDVpxZZc6bfHwv4c1YXP6k1Vdy292Fb6UkuvFtXpvWSzA+HycXJHUXiGYIiMg2R6W459gnWGfHNdjIqDWVqemH2ekpObkpOlppWUqZiqr6edqqWQAAIfkECQEAAQAsAAAAACgAKAAAApSMgZnGfaqcg1E2uuzDmmHUBR8Qil95hiPKqWn3aqtLsS18y7G1SzNeowWBENtQd+T1JktP05nzPTdJZlR6vUxNWWjV+vUWhWNkWFwxl9VpZRedYcflIOLafaa28XdsH/ynlcc1uPVDZxQIR0K25+cICCmoqCe5mGhZOfeYSUh5yJcJyrkZWWpaR8doJ2o4NYq62lAAACH5BAkBAAEALAAAAAAoACgAAAKVDI4Yy22ZnINRNqosw0Bv7i1gyHUkFj7oSaWlu3ovC8GxNso5fluz3qLVhBVeT/Lz7ZTHyxL5dDalQWPVOsQWtRnuwXaFTj9jVVh8pma9JjZ4zYSj5ZOyma7uuolffh+IR5aW97cHuBUXKGKXlKjn+DiHWMcYJah4N0lYCMlJOXipGRr5qdgoSTrqWSq6WFl2ypoaUAAAIfkECQEAAQAsAAAAACgAKAAAApaEb6HLgd/iO7FNWtcFWe+ufODGjRfoiJ2akShbueb0wtI50zm02pbvwfWEMWBQ1zKGlLIhskiEPm9R6vRXxV4ZzWT2yHOGpWMyorblKlNp8HmHEb/lCXjcW7bmtXP8Xt229OVWR1fod2eWqNfHuMjXCPkIGNileOiImVmCOEmoSfn3yXlJWmoHGhqp6ilYuWYpmTqKUgAAIfkECQEAAQAsAAAAACgAKAAAApiEH6kb58biQ3FNWtMFWW3eNVcojuFGfqnZqSebuS06w5V80/X02pKe8zFwP6EFWOT1lDFk8rGERh1TTNOocQ61Hm4Xm2VexUHpzjymViHrFbiELsefVrn6XKfnt2Q9G/+Xdie499XHd2g4h7ioOGhXGJboGAnXSBnoBwKYyfioubZJ2Hn0RuRZaflZOil56Zp6iioKSXpUAAAh+QQJAQABACwAAAAAKAAoAAACkoQRqRvnxuI7kU1a1UU5bd5tnSeOZXhmn5lWK3qNTWvRdQxP8qvaC+/yaYQzXO7BMvaUEmJRd3TsiMAgswmNYrSgZdYrTX6tSHGZO73ezuAw2uxuQ+BbeZfMxsexY35+/Qe4J1inV0g4x3WHuMhIl2jXOKT2Q+VU5fgoSUI52VfZyfkJGkha6jmY+aaYdirq+lQAACH5BAkBAAEALAAAAAAoACgAAAKWBIKpYe0L3YNKToqswUlvznigd4wiR4KhZrKt9Upqip61i9E3vMvxRdHlbEFiEXfk9YARYxOZZD6VQ2pUunBmtRXo1Lf8hMVVcNl8JafV38aM2/Fu5V16Bn63r6xt97j09+MXSFi4BniGFae3hzbH9+hYBzkpuUh5aZmHuanZOZgIuvbGiNeomCnaxxap2upaCZsq+1kAACH5BAkBAAEALAAAAAAoACgAAAKXjI8By5zf4kOxTVrXNVlv1X0d8IGZGKLnNpYtm8Lr9cqVeuOSvfOW79D9aDHizNhDJidFZhNydEahOaDH6nomtJjp1tutKoNWkvA6JqfRVLHU/QUfau9l2x7G54d1fl995xcIGAdXqMfBNadoYrhH+Mg2KBlpVpbluCiXmMnZ2Sh4GBqJ+ckIOqqJ6LmKSllZmsoq6wpQAAAh+QQJAQABACwAAAAAKAAoAAAClYx/oLvoxuJDkU1a1YUZbJ59nSd2ZXhWqbRa2/gF8Gu2DY3iqs7yrq+xBYEkYvFSM8aSSObE+ZgRl1BHFZNr7pRCavZ5BW2142hY3AN/zWtsmf12p9XxxFl2lpLn1rseztfXZjdIWIf2s5dItwjYKBgo9yg5pHgzJXTEeGlZuenpyPmpGQoKOWkYmSpaSnqKileI2FAAACH5BAkBAAEALAAAAAAoACgAAAKVjB+gu+jG4kORTVrVhRlsnn2dJ3ZleFaptFrb+CXmO9OozeL5VfP99HvAWhpiUdcwkpBH3825AwYdU8xTqlLGhtCosArKMpvfa1mMRae9VvWZfeB2XfPkeLmm18lUcBj+p5dnN8jXZ3YIGEhYuOUn45aoCDkp16hl5IjYJvjWKcnoGQpqyPlpOhr3aElaqrq56Bq7VAAAOw==');

    filter: alpha(opacity=25);
}

.ui-progressbar-indeterminate .ui-progressbar-value
{
    background-image: none;
}

.ui-selectmenu-menu
{
    position: absolute;
    top: 0;
    left: 0;

    display: none; 

    margin: 0;
    padding: 0;
}

.ui-selectmenu-menu .ui-menu
{
    overflow: auto;
    overflow-x: hidden;

    padding-bottom: 1px;
}

.ui-selectmenu-menu .ui-menu .ui-selectmenu-optgroup
{
    font-size: 1em;
    font-weight: bold;
    line-height: 1.5;

    height: auto;
    margin: .5em 0 0 0;
    padding: 2px .4em;

    border: 0;
}

.ui-selectmenu-open
{
    display: block;
}

.ui-selectmenu-text
{
    display: block;
    overflow: hidden;

    margin-right: 20px;

    text-overflow: ellipsis;
}

.ui-selectmenu-button.ui-button
{
    width: 14em; 

    text-align: left;
    white-space: nowrap;
}

.ui-selectmenu-icon.ui-icon
{
    float: right;

    margin-top: 0;
}

.ui-slider
{
    position: relative;

    text-align: left;
}

.ui-slider .ui-slider-handle
{
    position: absolute;
    z-index: 2;

    width: 1.2em;
    height: 1.2em;

    cursor: default;

    -ms-touch-action: none;
        touch-action: none;
}

.ui-slider .ui-slider-range
{
    font-size: .7em;

    position: absolute;
    z-index: 1;

    display: block;

    border: 0;
    background-position: 0 0;
}

/* support: IE8 - See #6727 */
.ui-slider.ui-state-disabled .ui-slider-handle,
.ui-slider.ui-state-disabled .ui-slider-range
{
    filter: inherit;
}

.ui-slider-horizontal
{
    height: .8em;
}

.ui-slider-horizontal .ui-slider-handle
{
    top: -.3em;

    margin-left: -.6em;
}

.ui-slider-horizontal .ui-slider-range
{
    top: 0;

    height: 100%;
}

.ui-slider-horizontal .ui-slider-range-min
{
    left: 0;
}

.ui-slider-horizontal .ui-slider-range-max
{
    right: 0;
}

.ui-slider-vertical
{
    width: .8em;
    height: 100px;
}

.ui-slider-vertical .ui-slider-handle
{
    left: -.3em;

    margin-bottom: -.6em; 
    margin-left: 0;
}

.ui-slider-vertical .ui-slider-range
{
    left: 0;

    width: 100%;
}

.ui-slider-vertical .ui-slider-range-min
{
    bottom: 0;
}

.ui-slider-vertical .ui-slider-range-max
{
    top: 0;
}

.ui-spinner
{
    position: relative;

    display: inline-block;
    overflow: hidden;

    padding: 0;

    vertical-align: middle;
}

.ui-spinner-input
{
    margin: .2em 0;
    margin-right: 2em; 
    margin-left: .4em;
    padding: .222em 0;

    vertical-align: middle;

    color: inherit;
    border: none;
    background: none;
}

.ui-spinner-button
{
    font-size: .5em;

    position: absolute;
    right: 0; 

    display: block;
    overflow: hidden;

    width: 1.6em;
    height: 50%;
    margin: 0;
    padding: 0;

    cursor: default;
    text-align: center;
}

/* more specificity required here to override default borders */
.ui-spinner a.ui-spinner-button
{
    border-top-style: none;
    border-right-style: none; 
    border-bottom-style: none;
}

.ui-spinner-up
{
    top: 0;
}

.ui-spinner-down
{
    bottom: 0;
}

.ui-tabs
{
    position: relative;
    /* position: relative prevents IE scroll bug (element with position: relative inside container with overflow: auto appear as "fixed") */

    padding: .2em;
}

.ui-tabs .ui-tabs-nav
{
    margin: 0;
    padding: .2em .2em 0;
}

.ui-tabs .ui-tabs-nav li
{
    position: relative;
    top: 0;

    float: left;

    margin: 1px .2em 0 0;
    padding: 0;

    list-style: none;

    white-space: nowrap; 

    border-bottom-width: 0;
}

.ui-tabs .ui-tabs-nav .ui-tabs-anchor
{
    float: left;

    padding: .5em 1em;

    text-decoration: none;
}

.ui-tabs .ui-tabs-nav li.ui-tabs-active
{
    margin-bottom: -1px;
    padding-bottom: 1px;
}

.ui-tabs .ui-tabs-nav li.ui-tabs-active .ui-tabs-anchor,
.ui-tabs .ui-tabs-nav li.ui-state-disabled .ui-tabs-anchor,
.ui-tabs .ui-tabs-nav li.ui-tabs-loading .ui-tabs-anchor
{
    cursor: text;
}

.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-active .ui-tabs-anchor
{
    cursor: pointer;
}

.ui-tabs .ui-tabs-panel
{
    display: block;

    padding: 1em 1.4em;

    border-width: 0;
    background: none;
}

.ui-tooltip
{
    position: absolute;
    z-index: 9999;

    max-width: 300px; 
    padding: 8px;
}

body .ui-tooltip
{
    border-width: 2px;
}

.ui-datepicker
{
    margin: 4px 0;
    padding: 8px;

    color: #181919; 
    border: 1px solid rgba(111, 119, 123, .25);
    border-radius: 4px;
    background-color: #fff;
    box-shadow: 0 2px 4px rgba(24, 25, 25, .1);
}
.ui-datepicker .ui-datepicker-title
{
    font-weight: 700;
}
.ui-datepicker .ui-datepicker-prev,
.ui-datepicker .ui-datepicker-next
{
    top: 0;

    cursor: pointer; 

    border: 1px dotted white;
    border-radius: 4px;
}
.ui-datepicker .ui-datepicker-prev
{
    left: 0;

    background: url('../img/icons/i_caret-left.svg') no-repeat 50% 50%/16px auto;
}
.ui-datepicker .ui-datepicker-next
{
    right: 0;

    background: url('../img/icons/i_caret-right.svg') no-repeat 50% 50%/16px auto;
}
.ui-datepicker .ui-datepicker-header
{
    padding: 0;

    border-bottom: 2px solid #fff;
}
.ui-datepicker table
{
    margin: 0;
}
.ui-datepicker thead th,
.ui-datepicker thead td
{
    font-weight: 600;

    text-align: center; 

    color: #181919;
}
.ui-datepicker tr:hover th,
.ui-datepicker tr:hover td
{
    background-color: inherit;
}
.ui-datepicker .ui-datepicker-current-day a
{
    font-weight: 600; 

    background-color: #f2f4f9;
}
.ui-datepicker .ui-datepicker-today
{
    padding: 0;

    color: #fff;
}
.ui-datepicker .ui-datepicker-today a
{
    font-weight: 600; 

    color: #fff;
    border-radius: 4px;
    background-color: #dc143c;
}
.ui-datepicker td span,
.ui-datepicker td a
{
    transition: none; 
    text-align: center;

    color: #181919;
    border: 1px solid transparent;
    border-radius: 4px;
}
.ui-datepicker .ui-state-hover
{
    color: #181919; 
    border: 1px solid rgba(111, 119, 123, .25);
    background-color: transparent;
}

.ui-autocomplete
{
    border: 1px solid rgba(111, 119, 123, .25);
    border-radius: 4px;
    background-color: #fff;
    box-shadow: 0 2px 4px rgba(24, 25, 25, .1);
}

.judges
{
    font-size: 14px;
    font-weight: 600;

    position: relative;

    margin: 0;
    padding: 0;

    list-style: none;

    counter-reset: section; 

    -ms-flex-pack: justify;
    justify-content: space-between;
}
@media (min-width: 640px)
{
    .judges
    {
        display: -ms-flexbox;
        display: flex;

        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    }
}
.judges .judge
{
    position: relative;
    z-index: 2; 

    width: 100%;
    margin: 32px 0 0;
    padding: 0;

    text-align: center;

    color: #fff;
    border-radius: 4px;
}
@media (min-width: 640px)
{
    .judges .judge
    {
        width: 45%; 
        margin: 32px 12px 0;
    }
}
.judges .judge__photo
{
    margin-bottom: 32px;
}
.judges .judge__photo picture,
.judges .judge__photo img
{
    display: inline-block;

    width: 100%; 
    height: auto;
}
@media (min-width: 640px)
{
    .judges .judge__photo picture,
    .judges .judge__photo img
    {
        width: auto; 
        max-width: 100%;
        height: auto;
        max-height: 450px;
    }
}
@media (min-width: 1024px)
{
    .judges .judge__photo picture,
    .judges .judge__photo img
    {
        width: auto; 
        max-width: 100%;
        height: auto;
        max-height: 450px;
    }
}
.judges .judge__name
{
    margin: 0;
}
.judges .judge:first-child
{
    margin: 0;
}
@media (min-width: 640px)
{
    .judges .judge:first-child
    {
        margin: 0 27.5%;
    }
}
.judges[data-theme='supreme-court'] .judge
{
    margin-top: 48px;
}
.judges[data-theme='supreme-court'] .judge:before
{
    font-weight: 700;

    position: absolute;
    z-index: 2; 
    top: 0;
    left: 50%;

    display: -ms-flexbox;
    display: flex;

    width: 32px;
    height: 32px;
    margin: -16px 0 0 -16px;

    content: counters(section, '.');
    counter-increment: section;

    border: 2px solid #072235;
    border-radius: 50%;
    background-color: #072235;

    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
}
.judges[data-theme='supreme-court'] .judge:first-child
{
    margin: 16px 0 0;
}
@media (min-width: 640px)
{
    .judges[data-theme='supreme-court'] .judge:first-child
    {
        margin: 16px 27.5%;
    }
}

.loading
{
    position: relative;

    min-height: 64px;
}

.progress--spinner
{
    position: absolute;
    top: 50%;
    left: 50%;

    width: 32px;
    height: 32px;
    margin: -16px 0 0 -16px;

    transform: translateX(-50%) translateY(-50%);
    animation: rotator 1000ms linear infinite;
}
.progress--spinner circle
{
    transform-origin: center;
    animation: dash 1000ms ease-in-out infinite; 

    fill: none;
    stroke: #072235;
    stroke-width: 6px;
    stroke-dasharray: 187;
    stroke-dashoffset: 0;
    stroke-linecap: round;
}

@keyframes rotator
{
    0%
    {
        transform: rotate(0deg);
    }
    100%
    {
        transform: rotate(270deg);
    }
}

@keyframes dash
{
    0%
    {
        stroke-dashoffset: 187;
    }
    50%
    {
        transform: rotate(135deg); 

        stroke-dashoffset: 46.75;
    }
    100%
    {
        transform: rotate(450deg); 

        stroke-dashoffset: 187;
    }
}

.copyright
{
    line-height: 1.25;

    margin: 0;
    padding-right: 48px;

    color: #6f777b;
}
@media (min-width: 640px)
{
    .copyright
    {
        margin-top: 48px; 
        padding-right: 64px;
    }
}
@media (min-width: 1024px)
{
    .copyright
    {
        width: 100%;
        margin-top: 16px; 
        padding-right: 0;
    }
}
.copyright a:link
{
    color: #6f777b;
}
.copyright a:visited
{
    color: #6f777b;
}
.copyright a:hover
{
    color: #181919; 
    background-color: #f2f4f9;
}
.copyright a:focus
{
    color: #181919; 
    background-color: #ffbf47;
    box-shadow: 0 0 0 4px #ffbf47;
}
.copyright a:active
{
    color: #181919; 
    background-color: #ffbf47;
    box-shadow: 0 0 0 4px #ffbf47;
}

img.scale--lg
{
    transform: scale(2);
}

[data-single='topic'] [itemprop='mainContentOfPage'] .band:first-child .pagination--topics li:first-child,
[data-single='topic'] [itemprop='mainContentOfPage'] .band:last-child .pagination--topics li:last-child
{
    visibility: hidden;
}

.card
{
    position: relative;

    overflow: hidden;

    padding: 32px;

    transition: background 150ms cubic-bezier(.77, 0, .175, 1), box-shadow 150ms cubic-bezier(.77, 0, .175, 1); 

    border-radius: 4px;
    background-color: #fff;
    box-shadow: 0 2px 4px rgba(24, 25, 25, .16);
}
@media (min-width: 1024px)
{
    .card
    {
        padding: 64px;
    }
}
.card:hover
{
    box-shadow: 0 8px 16px rgba(24, 25, 25, .16);
}
.card + .card
{
    margin-top: 16px;
}
@media (min-width: 640px)
{
    .card + .card
    {
        margin-top: 24px;
    }
}
@media (min-width: 1024px)
{
    .card + .card
    {
        margin-top: 32px;
    }
}
.card__icon
{
    display: block;

    width: 32px;
    height: 32px;
    margin-bottom: 32px;
}
@media (min-width: 1024px)
{
    .card__icon
    {
        width: 48px;
        height: 48px;
    }
}
.card__icon svg
{
    width: 100%;
    height: auto;
}
.card__icon--fill svg *
{
    fill: #072235;
}
.card__icon--stroke svg *
{
    stroke: #072235;
}
.card__title
{
    font: 600 16px/1.25 'Open Sans', Helvetica, Arial, sans-serif; 

    margin: 0 0 16px;
}
@media (min-width: 640px)
{
    .card__title
    {
        font-size: 19px;
    }
}
@media (min-width: 1024px)
{
    .card__title
    {
        font-size: 21px;
    }
}
@media (min-width: 1024px)
{
    .band[data-columns='2'] .card__title,
    .band.band--callout .card__title
    {
        font-size: 32px;
    }
}
.card__description
{
    margin-bottom: 32px;

    color: #6f777b;
}
.card--inverted,
.card.card--court-date-form
{
    color: #fff; 
    background-color: #072235;
}
.card--inverted .card__icon--fill svg *,
.card.card--court-date-form .card__icon--fill svg *
{
    fill: #fff;
}
.card--inverted .card__icon--stroke svg *,
.card.card--court-date-form .card__icon--stroke svg *
{
    stroke: #fff;
}
.card--inverted .card__description,
.card.card--court-date-form .card__description
{
    color: rgba(255, 255, 255, .75);
}
.card--basic
{
    height: auto;
    padding: 32px;

    background-color: #f6f6f6;
    box-shadow: none;
}
.card--basic:hover
{
    box-shadow: none;
}
@media (min-width: 1024px)
{
    .band[data-columns='2'] .card--basic .card-title,
    .band.band--callout .card--basic .card-title
    {
        font-size: 21px;
    }
}
.card--basic:before,
.card--basic .card__icon
{
    display: none;
}
.card--basic .card__description
{
    color: #181919;
}
.card--basic > *:last-child
{
    margin-bottom: 0;
}
@media (min-width: 1024px)
{
    .card--horizontal
    {
        padding-left: 144px;
    }
}
@media (min-width: 1024px)
{
    .card--horizontal .card__icon
    {
        position: absolute;
        top: 64px;
        left: 64px;
    }
}
@media (min-width: 1024px)
{
    .card--horizontal .card__title
    {
        font-size: 24px;
    }
}
@media (min-width: 1024px)
{
    .band[data-columns='2'] .card--horizontal .card__title,
    .band.band--callout .card--horizontal .card__title
    {
        font-size: 24px;
    }
}
.card:not(.card--horizontal)
{
    display: -ms-flexbox;
    display: flex;
        flex-direction: column; 

    -ms-flex-direction: column;
}
.card:not(.card--horizontal) > *
{
    max-width: 100%;
}

.band--striped .card:not(.card--horizontal),
.band.band--court-date-form .card:not(.card--horizontal)
{
    height: 100%;

    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-align: start;
    align-items: flex-start;
}

.chip__value
{
    margin: 0;
}

/**
 * Swiper 4.1.0
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * http://www.idangero.us/swiper/
 *
 * Copyright 2014-2018 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: January 13, 2018
 */
.swiper-container
{
    position: relative;
    /* Fix of Webkit flickering */
    z-index: 1; 

    overflow: hidden;

    margin: 0 auto;
    padding-bottom: 16px;

    list-style: none;
}

.swiper-container-no-flexbox .swiper-slide
{
    float: left;
}

.swiper-container-vertical > .swiper-wrapper
{
        flex-direction: column; 

    -ms-flex-direction: column;
}

.swiper-wrapper
{
    position: relative;
    z-index: 1;

    display: -ms-flexbox;
    display: flex;

    box-sizing: content-box; 
    width: 100%;
    height: 100%;

    transition-property: transform;
}

.swiper-container-android .swiper-slide,
.swiper-wrapper
{
    transform: translate3d(0px, 0, 0);
}

.swiper-container-multirow > .swiper-wrapper
{
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}

.swiper-container-free-mode > .swiper-wrapper
{
    margin: 0 auto; 

    transition-timing-function: ease-out;
}

.swiper-slide
{
    position: relative;

    width: 100%;
    height: 100%;

    transition-property: transform; 

    -ms-flex-negative: 0;
    flex-shrink: 0;
}

.swiper-invisible-blank-slide
{
    visibility: hidden;
}

/* Auto Height */
.swiper-container-autoheight,
.swiper-container-autoheight .swiper-slide
{
    height: auto;
}

.swiper-container-autoheight .swiper-wrapper
{
    transition-property: transform, height; 

    -ms-flex-align: start;
    align-items: flex-start;
}

/* 3D Effects */
.swiper-container-3d
{
    perspective: 1200px;
}

.swiper-container-3d .swiper-wrapper,
.swiper-container-3d .swiper-slide,
.swiper-container-3d .swiper-slide-shadow-left,
.swiper-container-3d .swiper-slide-shadow-right,
.swiper-container-3d .swiper-slide-shadow-top,
.swiper-container-3d .swiper-slide-shadow-bottom,
.swiper-container-3d .swiper-cube-shadow
{
    transform-style: preserve-3d;
}

.swiper-container-3d .swiper-slide-shadow-left,
.swiper-container-3d .swiper-slide-shadow-right,
.swiper-container-3d .swiper-slide-shadow-top,
.swiper-container-3d .swiper-slide-shadow-bottom
{
    position: absolute;
    z-index: 10; 
    top: 0;
    left: 0;

    width: 100%;
    height: 100%;

    pointer-events: none;
}

.swiper-container-3d .swiper-slide-shadow-left
{
    background-image: linear-gradient(to left, rgba(0, 0, 0, .5), rgba(0, 0, 0, 0));
}

.swiper-container-3d .swiper-slide-shadow-right
{
    background-image: linear-gradient(to right, rgba(0, 0, 0, .5), rgba(0, 0, 0, 0));
}

.swiper-container-3d .swiper-slide-shadow-top
{
    background-image: linear-gradient(to top, rgba(0, 0, 0, .5), rgba(0, 0, 0, 0));
}

.swiper-container-3d .swiper-slide-shadow-bottom
{
    background-image: linear-gradient(to bottom, rgba(0, 0, 0, .5), rgba(0, 0, 0, 0));
}

/* IE10 Windows Phone 8 Fixes */
.swiper-container-wp8-horizontal,
.swiper-container-wp8-horizontal > .swiper-wrapper
{
    -ms-touch-action: pan-y;
        touch-action: pan-y;
}

.swiper-container-wp8-vertical,
.swiper-container-wp8-vertical > .swiper-wrapper
{
    -ms-touch-action: pan-x;
        touch-action: pan-x;
}

.swiper-button-prev,
.swiper-button-next
{
    position: absolute;
    z-index: 10;
    top: 50%;

    width: 27px;
    height: 44px;
    margin-top: -22px;

    cursor: pointer;

    background-repeat: no-repeat; 
    background-position: center;
    background-size: 27px 44px;
}

.swiper-button-prev.swiper-button-disabled,
.swiper-button-next.swiper-button-disabled
{
    cursor: auto;
    pointer-events: none; 

    opacity: .35;
}

.swiper-button-prev,
.swiper-container-rtl .swiper-button-next
{
    right: auto; 
    left: 10px;
}

.swiper-button-next,
.swiper-container-rtl .swiper-button-prev
{
    right: 10px;
    left: auto;
}

.swiper-button-lock
{
    display: none;
}

.swiper-pagination
{
    position: absolute;
    z-index: 10; 

    transition: 300ms opacity;
    transform: translate3d(0, 0, 0);
    text-align: center;
}

.swiper-pagination.swiper-pagination-hidden
{
    opacity: 0;
}

/* Common Styles */
.swiper-pagination-fraction,
.swiper-pagination-custom,
.swiper-container-horizontal > .swiper-pagination-bullets
{
    bottom: 10px;
    left: 0;

    width: 100%;
}

/* Bullets */
.swiper-pagination-bullets-dynamic
{
    font-size: 0; 

    overflow: hidden;
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet
{
    position: relative; 

    transform: scale(.33);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active
{
    transform: scale(1);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev
{
    transform: scale(.66);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev
{
    transform: scale(.33);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next
{
    transform: scale(.66);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next
{
    transform: scale(.33);
}

.swiper-pagination-bullet
{
    display: inline-block;

    width: 8px;
    height: 8px;

    opacity: .2; 
    border-radius: 100%;
    background: #000;
}

button.swiper-pagination-bullet
{
    margin: 0;
    padding: 0;

    border: none;
    box-shadow: none;

    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
}

.swiper-pagination-clickable .swiper-pagination-bullet
{
    cursor: pointer;
}

.swiper-pagination-bullet-active
{
    opacity: 1;
    background: #007aff;
}

.swiper-container-vertical > .swiper-pagination-bullets
{
    top: 50%;
    right: 10px;

    transform: translate3d(0px, -50%, 0);
}

.swiper-container-vertical > .swiper-pagination-bullets .swiper-pagination-bullet
{
    display: block; 

    margin: 6px 0;
}

.swiper-container-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic
{
    top: 50%;

    width: 8px; 

    transform: translateY(-50%);
}

.swiper-container-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet
{
    display: inline-block;

    transition: 200ms transform, 200ms top;
}

.swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet
{
    margin: 0 4px;
}

.swiper-container-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic
{
    left: 50%;

    transform: translateX(-50%);
    white-space: nowrap;
}

.swiper-container-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet
{
    transition: 200ms transform, 200ms left;
}

.swiper-container-horizontal.swiper-container-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet
{
    transition: 200ms transform, 200ms right;
}

/* Progress */
.swiper-pagination-progressbar
{
    position: absolute; 

    background: rgba(0, 0, 0, .25);
}

.swiper-pagination-progressbar .swiper-pagination-progressbar-fill
{
    position: absolute;
    top: 0;
    left: 0;

    width: 100%;
    height: 100%;

    transform: scale(0);
    transform-origin: left top; 

    background: #007aff;
}

.swiper-container-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill
{
    transform-origin: right top;
}

.swiper-container-horizontal > .swiper-pagination-progressbar
{
    top: 0; 
    left: 0;

    width: 100%;
    height: 4px;
}

.swiper-container-vertical > .swiper-pagination-progressbar
{
    top: 0; 
    left: 0;

    width: 4px;
    height: 100%;
}

.swiper-pagination-white .swiper-pagination-bullet-active
{
    background: #fff;
}

.swiper-pagination-progressbar.swiper-pagination-white
{
    background: rgba(255, 255, 255, .25);
}

.swiper-pagination-progressbar.swiper-pagination-white .swiper-pagination-progressbar-fill
{
    background: #fff;
}

.swiper-pagination-black .swiper-pagination-bullet-active
{
    background: #000;
}

.swiper-pagination-progressbar.swiper-pagination-black
{
    background: rgba(0, 0, 0, .25);
}

.swiper-pagination-progressbar.swiper-pagination-black .swiper-pagination-progressbar-fill
{
    background: #000;
}

.swiper-pagination-lock
{
    display: none;
}

/* Scrollbar */
.swiper-scrollbar
{
    position: relative;

    border-radius: 10px;
    background: rgba(0, 0, 0, .1); 

    -ms-touch-action: none;
}

.swiper-container-horizontal > .swiper-scrollbar
{
    position: absolute;
    z-index: 50;
    bottom: 3px;
    left: 1%;

    width: 98%; 
    height: 5px;
}

.swiper-container-vertical > .swiper-scrollbar
{
    position: absolute;
    z-index: 50;
    top: 1%;
    right: 3px;

    width: 5px;
    height: 98%;
}

.swiper-scrollbar-drag
{
    position: relative;
    top: 0; 
    left: 0;

    width: 100%;
    height: 100%;

    border-radius: 10px;
    background: rgba(0, 0, 0, .5);
}

.swiper-scrollbar-cursor-drag
{
    cursor: move;
}

.swiper-scrollbar-lock
{
    display: none;
}

.swiper-zoom-container
{
    display: -ms-flexbox;
    display: flex;

    width: 100%;
    height: 100%;

    text-align: center; 

    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
}

.swiper-zoom-container > img,
.swiper-zoom-container > svg,
.swiper-zoom-container > canvas
{
    max-width: 100%;
    max-height: 100%;

    object-fit: contain;
}

.swiper-slide-zoomed
{
    cursor: move;
}

/* Preloader */
.swiper-lazy-preloader
{
    position: absolute;
    z-index: 10;
    top: 50%;
    left: 50%;

    width: 42px;
    height: 42px;
    margin-top: -21px;
    margin-left: -21px;

    transform-origin: 50%;
    animation: swiper-preloader-spin 1s steps(12, end) infinite;
}

.swiper-lazy-preloader:after
{
    display: block;

    width: 100%;
    height: 100%;

    content: '';

    background-repeat: no-repeat; 
    background-position: 50%;
    background-size: 100%;
}

@keyframes swiper-preloader-spin
{
    100%
    {
        transform: rotate(360deg);
    }
}

/* a11y */
.swiper-container .swiper-notification
{
    position: absolute;
    z-index: -1000; 
    top: 0;
    left: 0;

    pointer-events: none;

    opacity: 0;
}

.swiper-container-fade.swiper-container-free-mode .swiper-slide
{
    transition-timing-function: ease-out;
}

.swiper-container-fade .swiper-slide
{
    transition-property: opacity; 
    pointer-events: none;
}

.swiper-container-fade .swiper-slide .swiper-slide
{
    pointer-events: none;
}

.swiper-container-fade .swiper-slide-active,
.swiper-container-fade .swiper-slide-active .swiper-slide-active
{
    pointer-events: auto;
}

.swiper-container-cube
{
    overflow: visible;
}

.swiper-container-cube .swiper-slide
{
    z-index: 1;

    visibility: hidden;

    width: 100%;
    height: 100%; 

    transform-origin: 0 0;
    pointer-events: none;

    -webkit-backface-visibility: hidden;
            backface-visibility: hidden;
}

.swiper-container-cube .swiper-slide .swiper-slide
{
    pointer-events: none;
}

.swiper-container-cube.swiper-container-rtl .swiper-slide
{
    transform-origin: 100% 0;
}

.swiper-container-cube .swiper-slide-active,
.swiper-container-cube .swiper-slide-active .swiper-slide-active
{
    pointer-events: auto;
}

.swiper-container-cube .swiper-slide-active,
.swiper-container-cube .swiper-slide-next,
.swiper-container-cube .swiper-slide-prev,
.swiper-container-cube .swiper-slide-next + .swiper-slide
{
    visibility: visible; 

    pointer-events: auto;
}

.swiper-container-cube .swiper-slide-shadow-top,
.swiper-container-cube .swiper-slide-shadow-bottom,
.swiper-container-cube .swiper-slide-shadow-left,
.swiper-container-cube .swiper-slide-shadow-right
{
    z-index: 0;

    -webkit-backface-visibility: hidden;
            backface-visibility: hidden;
}

.swiper-container-cube .swiper-cube-shadow
{
    position: absolute;
    z-index: 0; 
    bottom: 0;
    left: 0;

    width: 100%;
    height: 100%;

    opacity: .6;
    background: #000;

    filter: blur(50px);
}

.swiper-container-flip
{
    overflow: visible;
}

.swiper-container-flip .swiper-slide
{
    z-index: 1; 

    pointer-events: none;

    -webkit-backface-visibility: hidden;
            backface-visibility: hidden;
}

.swiper-container-flip .swiper-slide .swiper-slide
{
    pointer-events: none;
}

.swiper-container-flip .swiper-slide-active,
.swiper-container-flip .swiper-slide-active .swiper-slide-active
{
    pointer-events: auto;
}

.swiper-container-flip .swiper-slide-shadow-top,
.swiper-container-flip .swiper-slide-shadow-bottom,
.swiper-container-flip .swiper-slide-shadow-left,
.swiper-container-flip .swiper-slide-shadow-right
{
    z-index: 0;

    -webkit-backface-visibility: hidden;
            backface-visibility: hidden;
}

.swiper-container-coverflow .swiper-wrapper
{
    /* Windows 8 IE 10 fix */
    -ms-perspective: 1200px;
}

@media (max-width: 1023px)
{
    .swiper--teased .swiper-wrapper
    {
        animation: swiperTease 2s cubic-bezier(.77, 0, .175, 1);
    }
}

@keyframes swiperTease
{
    0%
    {
        transform: translate3d(0, 0, 0);
    }
    50%
    {
        transform: translate3d(-32px, 0, 0);
    }
    100%
    {
        transform: translate3d(0, 0, 0);
    }
}

.inline-definitions
{
    display: -ms-flexbox;
    display: flex;

    margin: 0 0 44px; 

    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}
@media (min-width: 640px)
{
    .inline-definitions
    {
        margin-bottom: 48px;
    }
}
@media (min-width: 1024px)
{
    .inline-definitions
    {
        margin-bottom: 54px;
    }
}
.inline-definitions dt,
.inline-definitions dd
{
    width: 50%;
    margin-top: 16px;
    padding-top: 16px;

    border-top: 1px solid rgba(24, 25, 25, .1);
}
.inline-definitions dt
{
    padding-right: 12px;
}
.inline-definitions dd
{
    padding-left: 12px;
}
.inline-definitions dt:first-of-type,
.inline-definitions dd:first-of-type
{
    margin-top: 0;

    border-top: 0;
}

.formgroup
{
    padding-bottom: 32px;
}
@media (min-width: 640px)
{
    .formgroup
    {
        display: -ms-flexbox;
        display: flex;

        margin-bottom: 32px; 
        padding-bottom: 0;

        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -ms-flex-align: end;
        align-items: flex-end;
    }
}
@media (min-width: 640px)
{
    .formgroup .formblock
    {
        width: auto;
        margin-bottom: 0; 

        -ms-flex-positive: 2;
        flex-grow: 2;
    }
}
@media (min-width: 640px)
{
    .formgroup .formblock + .formblock
    {
        margin-left: 24px;
    }
}
.formgroup .button,
.formgroup .toggle,
.formgroup .panel-group__toggle,
.formgroup .alert__dismiss,
.formgroup .card__action,
.formgroup .shot__button
{
    margin-top: 24px;
}
@media (min-width: 640px)
{
    .formgroup .button,
    .formgroup .toggle,
    .formgroup .panel-group__toggle,
    .formgroup .alert__dismiss,
    .formgroup .card__action,
    .formgroup .shot__button
    {
        margin-top: 0;
        margin-left: 24px;
    }
}
.formgroup + .formgroup
{
    padding-top: 32px;

    border-top: 1px solid #cccfd1;
}

.filter-panel
{
    position: fixed;
    z-index: 10000; 
    top: calc(100% - 48px);
    left: 0;

    width: 100%;
    height: 100%;

    transition: top 150ms cubic-bezier(.77, 0, .175, 1);

    background-color: #fff;
}
.filter-panel__title
{
    font: 600 14px/1 'Open Sans', Helvetica, Arial, sans-serif;

    position: relative;

    width: 100%;
    height: 48px;
    padding: 0 0 0 48px;

    text-align: left; 

    color: #fff;
    border: 0;
    background-color: #072235;
    box-shadow: 0 -1px 0 0 #fff;
}
.filter-panel__title:before
{
    position: absolute;
    top: 50%;
    left: 16px;

    display: block;

    width: 16px;
    height: 16px;
    margin-top: -8px;

    content: '';

    background: url('../img/icons/i_filter_white.svg') no-repeat 50% 50%/100% auto;
}
.filter-panel__title:after
{
    position: absolute;
    top: 50%;
    right: 16px;

    display: block;

    width: 16px;
    height: 16px;
    margin-top: -8px;

    content: '';

    background: url('../img/icons/i_caret-up_white.svg') no-repeat 50% 50%/24px auto;
}
.filter-panel__title:focus
{
    outline: 0; 
    box-shadow: inset 0 0 0 2px #ffbf47;
}
.filter-panel__title[aria-expanded='true']:after
{
    background-image: url('../img/icons/i_caret-down_white.svg');
}
.filter-panel__content
{
    overflow-y: auto; 

    height: calc(100% - 48px);
    padding: 32px;

    background-color: #fff;
}
.filter-panel--active
{
    top: 0;
}

.districts
{
    display: none; 

    margin: 0;
    padding: 0;

    list-style: none;
}
@media (min-width: 640px)
{
    .districts
    {
        display: -ms-flexbox;
        display: flex;
    }
}

@media (min-width: 640px)
{
    .district
    {
        width: 33.3333333333%;
        margin: 0;
        padding: 32px 0;

        text-align: center; 

        border-left: 1px solid #cccfd1;
    }
}

@media (min-width: 640px)
{
    .district:first-child
    {
        border-left: 0;
    }
}

@media (min-width: 640px)
{
    .district__meta
    {
        display: block;
    }
}

.figure--featured
{
    margin-right: -32px;
    margin-left: -32px;

    border-radius: 0;
}
@media (min-width: 640px)
{
    .figure--featured
    {
        margin-right: -64px; 
        margin-left: -64px;
    }
}
@media (min-width: 1024px)
{
    .figure--featured
    {
        margin-right: 0;
        margin-left: 0;

        border-radius: 4px;
    }
}
@media (max-width: 1023px)
{
    .figure--featured img
    {
        border-radius: 0;
    }
}
.figure--featured figcaption
{
    margin-right: 32px; 
    margin-left: 32px;
}
@media (min-width: 640px)
{
    .figure--featured figcaption
    {
        margin-right: 64px; 
        margin-left: 64px;
    }
}
@media (min-width: 1024px)
{
    .figure--featured figcaption
    {
        margin-right: 0; 
        margin-left: 0;
    }
}

.video--featured
{
    margin-right: -32px;
    margin-left: -32px;

    border-radius: 0;
}
@media (min-width: 640px)
{
    .video--featured
    {
        margin-right: -64px; 
        margin-left: -64px;
    }
}
@media (min-width: 1024px)
{
    .video--featured
    {
        margin-right: 0;
        margin-left: 0;

        border-radius: 4px;
    }
}

.blockquote--featured
{
    padding-right: 0;
    padding-left: 0;

    border: 0;
}
@media (min-width: 1024px)
{
    .blockquote--featured
    {
        position: relative;

        display: -ms-flexbox;
        display: flex;

        -ms-flex-align: center;
        align-items: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
}
.blockquote--featured .blockquote__image
{
    display: none;
}
@media (min-width: 1024px)
{
    .blockquote--featured .blockquote__image
    {
        display: block;

        width: 20%;
    }
}
@media (min-width: 1024px)
{
    .blockquote--featured .blockquote__content
    {
        width: 75%;
        margin-left: 5%;
    }
}

@media (min-width: 640px)
{
    .shots
    {
        display: -ms-flexbox;
        display: flex;

        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    }
}

@media (min-width: 640px)
{
    .shots[data-columns='2'] .shot,
    .shots.band--callout .shot
    {
        width: 48.0769230769%;
        margin-left: 3.8461538462%;
    }
}

@media (min-width: 1024px)
{
    .shots[data-columns='2'] .shot,
    .shots.band--callout .shot
    {
        width: 49.21875%;
        margin-left: 1.5625%;
    }
}

@media (min-width: 640px)
{
    .shots[data-columns='2'] .shot:nth-child(odd),
    .shots.band--callout .shot:nth-child(odd)
    {
        margin-left: 0;
    }
}

@media (min-width: 640px)
{
    .shots[data-columns='2'] .shot:nth-child(1),
    .shots.band--callout .shot:nth-child(1),
    .shots[data-columns='2'] .shot:nth-child(2),
    .shots.band--callout .shot:nth-child(2)
    {
        margin-top: 0;
    }
}

@media (min-width: 640px)
{
    .shots[data-columns='3'] .shot
    {
        width: 48.0769230769%;
        margin-left: 3.8461538462%;
    }
}

@media (min-width: 1024px)
{
    .shots[data-columns='3'] .shot
    {
        width: 32.1875%;
        margin-left: 1.71875%;
    }
}

@media (min-width: 640px)
{
    .shots[data-columns='3'] .shot:nth-child(3n-2)
    {
        width: 100%;
        margin-left: 0;
    }
}

@media (min-width: 1024px)
{
    .shots[data-columns='3'] .shot:nth-child(3n-2)
    {
        width: 32.1875%;
    }
}

@media (min-width: 640px)
{
    .shots[data-columns='3'] .shot:nth-child(3n-1)
    {
        margin-left: 0;
    }
}

@media (min-width: 1024px)
{
    .shots[data-columns='3'] .shot:nth-child(3n-1)
    {
        margin-left: 1.71875%;
    }
}

@media (min-width: 1024px)
{
    .shots[data-columns='3'] .shot:nth-child(1),
    .shots[data-columns='3'] .shot:nth-child(2),
    .shots[data-columns='3'] .shot:nth-child(3)
    {
        margin-top: 0;
    }
}

@media (min-width: 640px)
{
    .shots[data-columns='4'] .shot
    {
        width: 48.0769230769%;
        margin-left: 3.8461538462%;
    }
}

@media (min-width: 1024px)
{
    .shots[data-columns='4'] .shot
    {
        width: 23.671875%;
        margin-left: 1.7708333333%;
    }
}

@media (min-width: 640px)
{
    .shots[data-columns='4'] .shot:nth-child(odd)
    {
        margin-left: 0;
    }
}

@media (min-width: 1024px)
{
    .shots[data-columns='4'] .shot:nth-child(odd)
    {
        margin-left: 1.7708333333%;
    }
}

@media (min-width: 1024px)
{
    .shots[data-columns='4'] .shot:nth-child(4n-3)
    {
        margin-left: 0;
    }
}

@media (min-width: 640px)
{
    .shots[data-columns='4'] .shot:nth-child(1),
    .shots[data-columns='4'] .shot:nth-child(2)
    {
        margin-top: 0;
    }
}

@media (min-width: 1024px)
{
    .shots[data-columns='4'] .shot:nth-child(3),
    .shots[data-columns='4'] .shot:nth-child(4)
    {
        margin-top: 0;
    }
}

.shot
{
    margin: 0 0 32px;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active)
{
    .shot
    {
        overflow: hidden;
    }
}
.shot__photo
{
    margin-bottom: 32px;
}
.shot__prefix
{
    margin-bottom: 8px;
}
.shot__title
{
    margin: 0;
}
.shot__suffix
{
    margin-top: 8px;
}
.shot__description
{
    margin: 16px 0 0;
}
.shot__button
{
    margin: 32px 0 0;
}
@media (min-width: 640px)
{
    .shot--horizontal
    {
        display: -ms-flexbox;
        display: flex;
    }
}
@media (min-width: 1024px)
{
    .shot--horizontal
    {
        -ms-flex-align: center;
        align-items: center;
    }
}
@media (min-width: 640px)
{
    .shot--horizontal .shot__photo
    {
        width: 48.0769230769%;
    }
}
@media (min-width: 1024px)
{
    .shot--horizontal .shot__photo
    {
        width: 32.03125%;
        margin: 0;
    }
}
@media (min-width: 640px)
{
    .shot--horizontal .shot__content
    {
        width: 48.0769230769%;
        margin-left: 3.8461538462%;
    }
}
@media (min-width: 1024px)
{
    .shot--horizontal .shot__content
    {
        width: 62.890625%;
        margin-left: 5%;
    }
}
.shot--horizontal .shot__title
{
    margin: 0;
}
@media (min-width: 1024px)
{
    .shot--featured
    {
        position: relative;

        display: -ms-flexbox;
        display: flex;
        overflow: hidden; 
            flex-direction: column;

        height: 100%;
        padding: 128px 64px 64px;

        color: #fff;
        border-radius: 4px;
        background-color: #181919;

        -ms-flex-direction: column;
        -ms-flex-pack: end;
        justify-content: flex-end;
    }
}
@media (min-width: 1024px)
{
    .shot--featured:after
    {
        position: absolute;
        /* IE6-9 */
        z-index: 1; 
        top: 0;
        left: 0;

        width: 100%;
        height: 100%;

        content: '';
        /* FF3.6-15 */
        /* Chrome10-25,Safari5.1-6 */

        background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 24%, rgba(0, 0, 0, .9) 64%);
        /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */

        filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#000000',GradientType=0 );
    }
}
.shot--featured .shot__photo
{
    margin-right: -32px; 
    margin-left: -32px;
}
@media (min-width: 640px)
{
    .shot--featured .shot__photo
    {
        margin-right: 0; 
        margin-left: 0;
    }
}
@media (min-width: 1024px)
{
    .shot--featured .shot__photo
    {
        position: absolute;
        z-index: 0; 
        top: 0;
        left: 0;

        width: 100%;
        height: 100%;
    }
    .shot--featured .shot__photo picture
    {
        height: 100%;
    }
}
@media (min-width: 1024px)
{
    .shot--featured .shot__photo--portrait .featured-shot-landscape
    {
        display: none;
    }
}
.shot--featured .shot__photo--portrait .featured-shot-portrait
{
    display: none;
}
@media (min-width: 1024px)
{
    .shot--featured .shot__photo--portrait .featured-shot-portrait
    {
        display: block;
    }
}
.shot--featured .shot__photo img
{
    border-radius: 0;
}
@media (min-width: 640px)
{
    .shot--featured .shot__photo img
    {
        border-radius: 4px;
    }
}
@media (min-width: 1024px)
{
    .shot--featured .shot__photo img
    {
        font-family: 'object-fit: cover;'; 

        width: 100%;
        height: 100%;

        object-fit: cover;
    }
}
@media (min-width: 1024px)
{
    .shot--featured .shot__title
    {
        font-size: 24px;
    }
}
@media (min-width: 1024px)
{
    .shot--featured .shot__title a
    {
        color: #fff;
    }
}
@media (min-width: 1024px)
{
    .shot--featured .shot__title a:hover
    {
        background-color: rgba(24, 25, 25, .5);
    }
}
@media (min-width: 1024px)
{
    .shot--featured .shot__content
    {
        position: relative;
        z-index: 2;
    }
}
@media (min-width: 1024px)
{
    .shot--featured .shot__prefix,
    .shot--featured .shot__suffix
    {
        color: #fff;
    }
}
@media (min-width: 1024px)
{
    .shot--featured .shot__button
    {
        color: #072235; 
        background-color: #fff;
    }
}

.tags
{
    margin: 0;
    margin-top: 8px; 
    padding: 0;

    list-style: none;
}

.tag
{
    font-size: 16px;
    font-weight: 600;
    line-height: 1.5; 

    display: block;

    margin: 4px 0 0;

    color: #181919;
}
@media (min-width: 640px)
{
    .tag
    {
        font-size: 19px;
    }
}
@media (min-width: 1024px)
{
    .tag
    {
        font-size: 21px;
    }
}
.tag:first-child
{
    margin-top: 0;
}

.diagram
{
    font-size: 14px;
    font-weight: 600;

    position: relative;

    display: -ms-flexbox;
    display: flex;

    margin: 0;
    padding: 32px;

    list-style: none;

    counter-reset: section; 

    border-radius: 4px;
    background-color: #f6f6f6;

    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
@media (min-width: 640px)
{
    .diagram
    {
        font-size: 16px; 

        padding: 48px 32px;
    }
}
@media (min-width: 1024px)
{
    .diagram
    {
        padding: 64px 32px; 

        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    }
}
.diagram li
{
    position: relative;
    z-index: 2; 

    display: -ms-flexbox;
    display: flex;

    width: 100%;
    margin: 32px 12px 0;
    padding: 32px;

    text-align: center;

    color: #fff;
    border: 2px solid #072235;
    border-radius: 4px;
    background-color: #1477a9;

    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
}
@media (min-width: 1024px)
{
    .diagram li
    {
        margin-top: 0;
    }
}
@media (min-width: 1280px)
{
    .diagram li
    {
        padding: 24px;
    }
}
.diagram li:before
{
    font-weight: 700;

    position: absolute;
    z-index: 2; 
    top: 0;
    left: 50%;

    display: -ms-flexbox;
    display: flex;

    width: 32px;
    height: 32px;
    margin: -16px 0 0 -16px;

    content: counters(section, '.');
    counter-increment: section;

    border: 2px solid #072235;
    border-radius: 50%;
    background-color: #072235;

    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
}
.diagram li:first-child
{
    margin-top: 0;
}

.tweet
{
    margin: 0 0 28px;
    padding: 32px;

    color: #fff; 
    border-radius: 4px;
    background-color: #072235;
}
@media (min-width: 640px)
{
    .tweet
    {
        margin-bottom: 32px; 
        padding: 48px;
    }
}
@media (min-width: 1024px)
{
    .tweet
    {
        margin-bottom: 38px; 
        padding: 64px;
    }
}
.tweet a:link
{
    color: rgba(255, 255, 255, .95);
}
.tweet a:visited
{
    color: rgba(255, 255, 255, .95);
}
.tweet a:hover
{
    color: #fff; 
    background-color: transparent;
}
.tweet a:focus,
.tweet a:focus:hover
{
    color: #072235; 
    background-color: #ffbf47;
}
.tweet a:active
{
    color: #072235;
}
.tweet a[target='_blank']:after
{
    background-color: #0a304c;
    background-image: url('../img/icons/i_external_white.svg');
}
.tweet__profile
{
    display: -ms-flexbox;
    display: flex;

    -ms-flex-align: center;
    align-items: center;
}
.tweet__profile svg
{
    width: 24px;
    height: 24px;
    margin-right: 16px;
}
.tweet__profile a
{
    font-weight: 700;
}
.tweet__message
{
    margin-top: 32px;
}
.tweet__timestamp
{
    font-size: 14px; 

    margin-top: 32px;
}
@media (min-width: 640px)
{
    .tweet__timestamp
    {
        font-size: 16px;
    }
}

.holiday
{
    overflow: hidden;

    margin: 0 0 28px;

    transition: box-shadow 150ms cubic-bezier(.77, 0, .175, 1); 
    text-align: center;

    border-radius: 4px;
    background-color: #fff;
    box-shadow: 0 2px 4px rgba(24, 25, 25, .16);
}
@media (min-width: 640px)
{
    .holiday
    {
        margin-bottom: 32px;

        text-align: left;
    }
}
@media (min-width: 1024px)
{
    .holiday
    {
        margin-bottom: 38px;
    }
}
.holiday__header
{
    padding: 32px;

    color: #fff; 
    background-color: #1477a9;
}
.holiday__content
{
    padding: 32px;
}
.holiday__title
{
    font-size: 14px;
}
@media (min-width: 1024px)
{
    .holiday__title
    {
        font-size: 16px;
    }
}
.holiday__date
{
    font-size: 19px;
    font-weight: 700;
}
@media (min-width: 640px)
{
    .holiday__date
    {
        font-size: 21px;
    }
}
@media (min-width: 1024px)
{
    .holiday__date
    {
        font-size: 24px;
    }
}
.holiday__name
{
    font-size: 16px; 

    margin-top: 0;
}
@media (min-width: 640px)
{
    .holiday__name
    {
        font-size: 19px;
    }
}
@media (min-width: 1024px)
{
    .holiday__name
    {
        font-size: 21px;
    }
}
.holiday:hover
{
    box-shadow: 0 8px 16px rgba(24, 25, 25, .16);
}

.graphic-cta
{
    margin: 0 0 28px;

    border-radius: 4px;
}
@media (min-width: 640px)
{
    .graphic-cta
    {
        margin-bottom: 32px;
    }
}
@media (min-width: 1024px)
{
    .graphic-cta
    {
        margin-bottom: 38px;
    }
}
.graphic-cta__link,
.graphic-cta__link[target='_blank']
{
    position: relative;

    display: block;

    margin-right: 0; 

    border-radius: 4px;
}
.graphic-cta__link:before,
.graphic-cta__link[target='_blank']:before
{
    position: absolute;
    z-index: 1; 
    top: 0;
    left: 0;

    width: 100%;
    height: 100%;

    content: '';
    transition: opacity 150ms cubic-bezier(.77, 0, .175, 1);

    opacity: 0;
    border-radius: 4px;
    background-color: rgba(24, 25, 25, .25);
}
.graphic-cta__link:after,
.graphic-cta__link[target='_blank']:after
{
    position: absolute;
    top: 0;
    left: 100%;
}
.graphic-cta__link:hover:before,
.graphic-cta__link[target='_blank']:hover:before
{
    opacity: 1;
}
.graphic-cta__graphic
{
    width: 100%;
    height: auto;
}

.hero
{
    padding: 4rem 0;

    color: #fff; 
    border-top: 4px solid #ae936c;
    border-bottom: 4px solid #ae936c;
    background: #072235 url('../img/p_hero.jpg') no-repeat 50% 50%/cover;
}
@media (min-width: 640px)
{
    .hero.band
    {
        padding: 64px 0;
    }
}
@media (min-width: 1024px)
{
    .hero
    {
        position: relative;

        display: -ms-flexbox;
        display: flex;
            flex-direction: column;

        min-height: calc(70vh - 5rem); 

        border-top-width: 8px;
        border-bottom-width: 8px;

        -ms-flex-direction: column;
        -ms-flex-pack: center;
        justify-content: center;
    }
}
.hero__seal
{
    width: 96px;
    height: 96px;
    margin: 0 auto;

    background-image: url('../img/l_seal-color.svg');
}
@media (min-width: 640px)
{
    .hero__seal
    {
        width: 128px;
        height: 128px;
    }
}
@media (min-width: 1024px)
{
    .hero__seal
    {
        width: 192px;
        height: 192px;
    }
}
.hero__title
{
    font-size: 28px;
    font-weight: normal;

    margin: 16px 0 0;

    text-align: center;
}
@media (min-width: 640px)
{
    .hero__title
    {
        font-size: 32px;
    }
}
@media (min-width: 1024px)
{
    .hero__title
    {
        font-size: 62px;
    }
}
.hero__search
{
    position: relative;

    margin: 32px 0 0;
}
@media (min-width: 640px)
{
    .hero__search
    {
        margin-top: 64px;
    }
}
@media (min-width: 1024px)
{
    .hero__search
    {
        width: 49.21875%;
        margin-right: auto; 
        margin-left: auto;
    }
}
.hero__search .formblock
{
    position: relative;
}
.hero__search .formblock__label
{
    position: absolute;
    top: auto;
    left: -10000px;

    overflow: hidden; 

    width: 1px;
    height: 1px;
    margin: 0;
}
.hero__search .formblock__field
{
    padding-left: 48px;

    border-color: #fff;
}
.hero__search [type='submit']
{
    font-size: 0;
    line-height: 0;

    position: absolute;
    top: 50%;
    left: 8px;

    width: 32px;
    height: 32px;
    margin: -16px 0 0;
    padding: 16px;

    border: 0; 
    border-radius: 0;
    background: url('../img/icons/i_search.svg') no-repeat 50% 50%/16px auto;
}
@media (min-width: 1024px)
{
    .hero__search [type='submit']
    {
        height: auto;

        -ms-flex-order: 1;
        order: 1;
    }
}
.hero__search [type='submit']:hover
{
    background-color: transparent;
}
.hero__search [type='submit']:focus
{
    outline: 0;
    box-shadow: inset 0 0 0 3px #ffbf47;
}
.hero__actions
{
    margin: 32px 0 0;
    padding: 32px 0 0;

    border-top: 1px solid #072235;
}
@media (min-width: 640px)
{
    .hero__actions
    {
        margin-top: 64px;
        padding: 0;

        border-top: 0;
    }
}
@media (min-width: 1280px)
{
    .hero__actions
    {
        position: absolute;
        top: 0;
        right: 0;

        margin: 32px 32px 0 0;
    }
}
.hero__actions ul
{
    margin: 0;
    padding: 0;

    list-style: none;
}
@media (min-width: 640px)
{
    .hero__actions ul
    {
        display: -ms-flexbox;
        display: flex;

        -ms-flex-align: center;
        align-items: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
}
@media (min-width: 640px)
{
    .hero__actions li
    {
        margin: 0 0 0 16px;
    }
}
@media (min-width: 640px)
{
    .hero__actions li:first-child
    {
        margin: 0;
    }
}
.hero__actions .button,
.hero__actions .toggle,
.hero__actions .panel-group__toggle,
.hero__actions .alert__dismiss,
.hero__actions .card__action,
.hero__actions .shot__button
{
    width: 100%;

    text-align: center; 

    border-color: #1477a9;
}
.hero__actions .button:hover,
.hero__actions .toggle:hover,
.hero__actions .panel-group__toggle:hover,
.hero__actions .alert__dismiss:hover,
.hero__actions .card__action:hover,
.hero__actions .shot__button:hover
{
    background-color: #0a304c;
}

.webform-element-help:link
{
    width: 18px;
}

.fieldset-legend
{
    font: 600 21px/1.25 'Open Sans', Helvetica, Arial, sans-serif; 

    display: block;

    margin: 42px 0 21px;
}
@media (min-width: 640px)
{
    .fieldset-legend
    {
        font-size: 24px; 

        margin: 48px 0 24px;
    }
}
@media (min-width: 1024px)
{
    .fieldset-legend
    {
        font-size: 28px; 

        margin: 56px 0 28px;
    }
}
fieldset fieldset .fieldset-legend
{
    font: 400 19px/1.25 'Open Sans', Helvetica, Arial, sans-serif; 

    display: block;

    margin: 28px 0 19px;
}
@media (min-width: 640px)
{
    fieldset fieldset .fieldset-legend
    {
        font-size: 21px; 

        margin: 42px 0 21px;
    }
}
@media (min-width: 1024px)
{
    fieldset fieldset .fieldset-legend
    {
        font-size: 24px; 

        margin: 48px 0 24px;
    }
}

.webform-multiple-table
{
    width: 100%;
}
.webform-multiple-table .tabledrag-handle .handle
{
    width: 28px;
    height: 28px;
    margin: 0;
}
.webform-multiple-table td input[type='image']
{
    display: inline-block; 

    width: 22px;
    height: 22px;
}
.webform-multiple-table + .container-inline .form-number
{
    display: inline-block;

    width: auto;
}
.webform-multiple-table .webform-multiple-tabledrag-toggle-weight
{
    font-family: 'Open Sans', Helvetica, Arial, sans-serif;
    font-size: 14px;
    font-weight: 600;

    display: inline-block;

    padding: 8px 16px;

    cursor: pointer; 
    transition: background 150ms cubic-bezier(.77, 0, .175, 1), border 150ms cubic-bezier(.77, 0, .175, 1), box-shadow 150ms cubic-bezier(.77, 0, .175, 1);

    color: #fff;
    border: 2px solid rgba(7, 34, 53, .95);
    border-radius: 4px;
    background-color: rgba(7, 34, 53, .95);
    background-image: none;
}
@media (min-width: 640px)
{
    .webform-multiple-table .webform-multiple-tabledrag-toggle-weight
    {
        font-size: 16px; 

        width: auto;
    }
}
@media (min-width: 1024px)
{
    .webform-multiple-table .webform-multiple-tabledrag-toggle-weight
    {
        font-size: 19px;
    }
}
.webform-multiple-table .webform-multiple-tabledrag-toggle-weight:link,
.webform-multiple-table .webform-multiple-tabledrag-toggle-weight:visited
{
    text-decoration: none; 

    color: #fff;
    border-color: rgba(7, 34, 53, .95);
    background-color: rgba(7, 34, 53, .95);
}
.webform-multiple-table .webform-multiple-tabledrag-toggle-weight:focus
{
    color: #fff;
    border-color: #072235;
    outline: 0; 
    background-color: #072235;
    background-image: none;
    box-shadow: 0 0 0 4px #ffbf47;
}
.webform-multiple-table .webform-multiple-tabledrag-toggle-weight:hover
{
    color: #fff; 
    border-color: #072235;
    background-color: #072235;
    box-shadow: 0 0 0 4px rgba(7, 34, 53, .15);
}

.formblock .alert
{
    margin-bottom: 0;
}

.no-drag-select
{
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;
    pointer-events: none; 

    user-drag: none;
}

.ui-menu .ui-menu-item-wrapper
{
    padding: 8px;
}

.ui-state-active,
.ui-widget-content .ui-state-active,
.ui-widget-header .ui-state-active,
a.ui-button:active,
.ui-button:active,
.ui-button.ui-state-active:hover
{
    margin: 0;

    color: #0041ba; 
    border: 0;
    background-color: #f2f4f9;
}

.ui-datepicker-trigger
{
    width: 44px !important;
    margin-left: 0 !important;

    border-left: 0 !important;
    border-top-left-radius: 0 !important;
    border-bottom-left-radius: 0 !important;
}
.ui-datepicker-trigger:hover
{
    box-shadow: -2px 0 0 0 #002f87 !important;
}
.ui-datepicker-trigger:focus
{
    box-shadow: -2px 0 0 0 #002f87, 0 0 0 4px #ffbf47 !important;
}

@media (max-width: 639px)
{
    .form--search-location .formblock__field--inline
    {
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    }
}

.form--search-location .ui-autocomplete-input
{
    margin-bottom: 16px; 
    padding-right: 24px;

    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
}
@media (max-width: 639px)
{
    .form--search-location .ui-autocomplete-input + .button,
    .form--search-location .ui-autocomplete-input + .toggle,
    .form--search-location .ui-autocomplete-input + .panel-group__toggle,
    .form--search-location .ui-autocomplete-input + .alert__dismiss,
    .form--search-location .ui-autocomplete-input + .card__action,
    .form--search-location .ui-autocomplete-input + .shot__button
    {
        margin-left: 0;
    }
}
@media (min-width: 640px)
{
    .form--search-location .ui-autocomplete-input
    {
        min-width: 300px;
        margin-bottom: 0;
    }
}

.ui-autocomplete.ui-menu .ui-menu-item-wrapper
{
    display: block;
}

fieldset .title--secondary .title__label,
fieldset .band__title .title__label
{
    margin-top: 0;
}

.card.card--court-date-form .card__title--or
{
    margin: 16px 0;

    text-align: center;
}
.card.card--court-date-form .card__title--or:before
{
    display: inline;

    margin-right: 8px; 

    content: '\2014';
}
.card.card--court-date-form .card__title--or:after
{
    display: inline;

    margin-left: 8px; 

    content: '\2014';
}

.card.card--court-date-form a
{
    font-weight: 600; 

    color: #fff;
}
.card.card--court-date-form a:hover
{
    color: #072235;
    background-color: #f6f6f6;
}
.card.card--court-date-form a:focus
{
    color: #072235;
    background-color: #f6f6f6;
}
.card.card--court-date-form a:active
{
    color: #fff;
}

.card.card--court-date-form .button,
.card.card--court-date-form .toggle,
.card.card--court-date-form .panel-group__toggle,
.card.card--court-date-form .alert__dismiss,
.card.card--court-date-form .card__action,
.card.card--court-date-form .shot__button
{
    margin-top: 16px;
}
@media (min-width: 640px)
{
    .card.card--court-date-form .button,
    .card.card--court-date-form .toggle,
    .card.card--court-date-form .panel-group__toggle,
    .card.card--court-date-form .alert__dismiss,
    .card.card--court-date-form .card__action,
    .card.card--court-date-form .shot__button
    {
        margin: 8px 0 0 8px;
    }
}

@media (min-width: 640px) and (max-width: 1023px)
{
    .card.card--court-date-form
    {
        padding: 48px;
    }
}

.card.card--court-date-form .card__title + .formblock
{
    margin: 0 0 16px 0;
}

.card.card--court-date-form .formblock__field--inline
{
    -ms-flex-align: center;
    align-items: center;
}
@media (max-width: 639px)
{
    .card.card--court-date-form .formblock__field--inline
    {
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    }
}
@media (max-width: 639px)
{
    .card.card--court-date-form .formblock__field--inline input[type='text']
    {
        width: 100%;
    }
}
@media (max-width: 639px)
{
    .card.card--court-date-form .formblock__field--inline input[type='submit']
    {
        width: 100%;
        margin: 8px 0 0;
    }
}

body.has-filter-panel .shortcut--header
{
    bottom: 64px;
}

body.has-filter-panel .footer-container
{
    margin-bottom: 48px;
}

.band--callout
{
    padding: 32px 0;
}
@media (min-width: 640px)
{
    .band--callout
    {
        padding: 64px 0;
    }
}
@media (min-width: 1024px)
{
    .band--callout
    {
        padding: 128px 0;
    }
}
.band--callout .band__parts
{
    -ms-flex-align: center;
    align-items: center;
}

@media (min-width: 640px) and (max-width: 1023px)
{
    .band--callout .band__part:first-child
    {
        width: 100%;
    }
}
.band--callout .band__part:nth-child(2)
{
    display: none;
}
@media (min-width: 1024px)
{
    .band--callout .band__part:nth-child(2)
    {
        display: block;

        text-align: center;
    }
}
.band--callout img
{
    display: inline-block;

    width: 50%;
    height: auto;
}

.band--footnote
{
    line-height: 1.2;

    margin-top: 32px; 
    padding: 0;
}
@media (min-width: 640px)
{
    .band--footnote
    {
        margin-top: 48px;
        padding: 0;
    }
}
@media (min-width: 1024px)
{
    .band--footnote
    {
        margin-top: 64px;
        padding: 0;
    }
}
.band--footnote:only-child
{
    padding: 0;
}
@media (min-width: 640px)
{
    .band--footnote:only-child
    {
        padding: 0;
    }
}
@media (min-width: 1024px)
{
    .band--footnote:only-child
    {
        padding: 0;
    }
}
.band--footnote .band__part
{
    padding: 16px;
}
@media (min-width: 640px)
{
    .band--footnote .band__part
    {
        padding: 24px;
    }
}
@media (min-width: 1024px)
{
    .band--footnote .band__part
    {
        padding: 32px;
    }
}

@media (min-width: 640px) and (max-width: 1023px)
{
    .band.band--court-date-form .band__part:first-child
    {
        width: 100%;
    }
}

@media (min-width: 640px) and (max-width: 1023px)
{
    .band.band--force-tablet-stack .band__part:first-child,
    .band[data-columns='2'] .band__part:first-child,
    .band.band--callout .band__part:first-child
    {
        width: 100%;
    }
}

@media (min-width: 640px) and (max-width: 1023px)
{
    .band.band--force-tablet-stack .band__part:nth-child(2),
    .band[data-columns='2'] .band__part:nth-child(2),
    .band.band--callout .band__part:nth-child(2)
    {
        width: 100%;
        margin-top: 64px;
        margin-left: 0;
    }
}

@media (min-width: 640px) and (max-width: 1023px)
{
    .band.band--county-news-related .band__part:first-child
    {
        width: 100%;
    }
}

@media (min-width: 640px) and (max-width: 1023px)
{
    .band.band--county-news-related .band__part:nth-child(2)
    {
        width: 100%;
        margin-top: 64px; 
        margin-left: 0;
    }
}

@media (min-width: 640px) and (max-width: 1023px)
{
    .band.band--county-news-related .band__part:nth-child(2) .links
    {
        float: left;

        width: 48.0769230769%;
    }
}

@media (min-width: 640px) and (max-width: 1023px)
{
    .band.band--county-news-related .band__part:nth-child(2) .links + .links
    {
        float: right;

        width: 48.0769230769%;
    }
}

@media (min-width: 640px) and (max-width: 1023px)
{
    .band.band--county-news-related .band__part:nth-child(2) .card
    {
        clear: both;
    }
}

@media (min-width: 640px) and (max-width: 1023px)
{
    .band.band--about-publications .band__part:first-child
    {
        width: 100%;
    }
}

@media (min-width: 640px) and (max-width: 1023px)
{
    .band.band--about-publications .band__part:nth-child(2)
    {
        width: 100%;
        margin-top: 64px; 
        margin-left: 0;
    }
}

@media (min-width: 640px) and (max-width: 1023px)
{
    .band.band--about-publications .band__part:nth-child(2) .sideblock,
    .band.band--about-publications .band__part:nth-child(2) .menu--secondary
    {
        float: left;

        width: 48.0769230769%;
        margin: 0;
    }
}

@media (min-width: 640px) and (max-width: 1023px)
{
    .band.band--about-publications .band__part:nth-child(2) .sideblock + .sideblock,
    .band.band--about-publications .band__part:nth-child(2) .menu--secondary + .sideblock,
    .band.band--about-publications .band__part:nth-child(2) .sideblock + .menu--secondary,
    .band.band--about-publications .band__part:nth-child(2) .menu--secondary + .menu--secondary
    {
        float: right;

        width: 48.0769230769%;
        margin: 0;
    }
}

.zones[data-columns='3'] .zone:first-child .band__title
{
    margin-bottom: 16px;
}
@media (min-width: 640px)
{
    .zones[data-columns='3'] .zone:first-child .band__title
    {
        margin-bottom: 24px;
    }
}
@media (min-width: 1024px)
{
    .zones[data-columns='3'] .zone:first-child .band__title
    {
        margin-bottom: 32px;
    }
}

.band--personas
{
    padding: 0;
}
@media (min-width: 1024px)
{
    .band--personas
    {
        border-bottom: 1px solid #cccfd1;
    }
}

@media (min-width: 640px) and (max-width: 1023px)
{
    .band--home-featured .band__part:first-child
    {
        display: -ms-flexbox;
        display: flex;

        width: 100%;
    }
}

@media (min-width: 640px) and (max-width: 1023px)
{
    .band--home-featured .band__part:nth-child(2)
    {
        width: 100%;
        margin-top: 64px !important; 
        margin-left: 0;
    }
}

@media (min-width: 640px) and (max-width: 1023px)
{
    .band--home-featured .card
    {
        width: 48.0769230769%;
    }
}

@media (min-width: 640px) and (max-width: 1023px)
{
    .band--home-featured .card + .card
    {
        margin-top: 0;
        margin-left: 3.8461538462%;
    }
}

.band--home-featured-multiple + .band--home-featured-multiple
{
    padding: 64px 0 0;
}

@media (min-width: 640px) and (max-width: 1023px)
{
    .band--home-news-social .band__part:first-child
    {
        width: 100%;
    }
}

@media (min-width: 640px) and (max-width: 1023px)
{
    .band--home-news-social .band__part:nth-child(2)
    {
        width: 100%;
        margin-top: 64px !important; 
        margin-left: 0;
    }
}

@media (min-width: 1024px)
{
    .band--home-news-social .band__part:nth-child(2)
    {
        display: -ms-flexbox;
        display: flex;
            flex-direction: column; 

        -ms-flex-direction: column;
    }
}

@media (min-width: 640px) and (max-width: 1023px)
{
    .band--home-news-social .tweet
    {
        float: left;

        width: 48.0769230769%;
    }
}

@media (min-width: 1024px)
{
    .band--home-news-social .tweet
    {
        -ms-flex-order: -2;
        order: -2;
    }
}

@media (min-width: 640px) and (max-width: 1023px)
{
    .band--home-news-social .holiday,
    .band--home-news-social .graphic-cta
    {
        float: right;
        clear: right;

        width: 48.0769230769%;
    }
}

@media (min-width: 640px) and (max-width: 1023px)
{
    .band--home-news-social .links--connect-simple
    {
        float: left;
        clear: both;

        width: 100%;
    }
}

@media (min-width: 1024px)
{
    .band--home-news-social .links--connect-simple
    {
        margin-bottom: 38px;

        -ms-flex-order: -1;
        order: -1;
    }
}

.footer-container .panel-group.panel-group--additional .panel__content,
.footer-container .panel-group.panel-group--community .panel__content,
.footer-container .panel-group.panel-group--help-support .panel__content
{
    margin-top: 8px; 
    padding: 0;
}
@media (min-width: 1280px)
{
    .footer-container .panel-group.panel-group--additional .panel__content,
    .footer-container .panel-group.panel-group--community .panel__content,
    .footer-container .panel-group.panel-group--help-support .panel__content
    {
        margin-top: 32px;
    }
}

.footer-container .panel-group.panel-group--legal .panel__content
{
    padding: 0;
}

.footer-container .panel-group.panel-group .panel__content .links
{
    margin-bottom: 38px;
}
@media (min-width: 1280px)
{
    .footer-container .panel-group.panel-group .panel__content .links
    {
        margin-bottom: 0;
    }
}

@media (min-width: 1280px)
{
    .footer-container .panel-group .panel__title:after
    {
        display: block;

        width: 85px;
        height: 2px;
        margin-top: 16px;

        content: '';

        background: #ae936c;
    }
}

.footer-container .panel-group .panel__title a
{
    text-decoration: none; 

    color: #fff;
    border-bottom-color: rgba(255, 255, 255, .16);
}
.footer-container .panel-group .panel__title a:hover
{
    color: #fff;
}
.footer-container .panel-group .panel__title a:focus
{
    color: #fff;
}
.footer-container .panel-group .panel__title a[aria-expanded='false']:after
{
    background-image: url('../img/icons/i_add_white.svg');
}
.footer-container .panel-group .panel__title a[aria-expanded='true']:after
{
    background-image: url('../img/icons/i_remove_white.svg');
}

@media (max-width: 1023px)
{
    .menu--secondary .menu__item
    {
        margin: 0 !important;
    }
}

@media (min-width: 640px)
{
    .zones[data-columns='3'] .zone:last-child .sideblock + .sideblock,
    .zones[data-columns='3'] .zone:last-child .menu--secondary + .sideblock,
    .zones[data-columns='3'] .zone:last-child .sideblock + .menu--secondary,
    .zones[data-columns='3'] .zone:last-child .menu--secondary + .menu--secondary
    {
        margin-top: 48px;
    }
}

@media (min-width: 1024px)
{
    .zones[data-columns='3'] .zone:last-child .sideblock + .sideblock,
    .zones[data-columns='3'] .zone:last-child .menu--secondary + .sideblock,
    .zones[data-columns='3'] .zone:last-child .sideblock + .menu--secondary,
    .zones[data-columns='3'] .zone:last-child .menu--secondary + .menu--secondary
    {
        margin-top: 64px;
    }
}

.zones[data-columns='3'][data-layout-people] img,
.zones[data-columns='3'][data-layout-people] picture
{
    width: 100%;
}

.zones[data-columns='3'][data-layout-people] .button,
.zones[data-columns='3'][data-layout-people] .toggle,
.zones[data-columns='3'][data-layout-people] .panel-group__toggle,
.zones[data-columns='3'][data-layout-people] .alert__dismiss,
.zones[data-columns='3'][data-layout-people] .card__action,
.zones[data-columns='3'][data-layout-people] .shot__button
{
    width: 100%;

    text-align: center;
}

.sideblock__content .meta,
.menu--secondary .menu__list .meta,
.sideblock__content .links--search-quick .links__title,
.links--search-quick .sideblock__content .links__title,
.menu--secondary .menu__list .links--search-quick .links__title,
.links--search-quick .menu--secondary .menu__list .links__title,
.sideblock__content .links--search-suggest .links__title,
.links--search-suggest .sideblock__content .links__title,
.menu--secondary .menu__list .links--search-suggest .links__title,
.links--search-suggest .menu--secondary .menu__list .links__title,
.sideblock__content .links--search-top .links__title,
.links--search-top .sideblock__content .links__title,
.menu--secondary .menu__list .links--search-top .links__title,
.links--search-top .menu--secondary .menu__list .links__title,
.sideblock__content .list--recognition .item__meta,
.list--recognition .sideblock__content .item__meta,
.menu--secondary .menu__list .list--recognition .item__meta,
.list--recognition .menu--secondary .menu__list .item__meta,
.sideblock__content .closing__meta,
.menu--secondary .menu__list .closing__meta,
.sideblock__content .chip__label,
.menu--secondary .menu__list .chip__label,
.sideblock__content .district__meta,
.menu--secondary .menu__list .district__meta,
.sideblock__content .shot__prefix,
.menu--secondary .menu__list .shot__prefix,
.sideblock__content .shot__suffix,
.menu--secondary .menu__list .shot__suffix
{
    margin-top: 0;
    margin-right: 0;
}

@media (max-width: 639px)
{
    aside.zone .links--contextual
    {
        display: none;
    }
}

.swiper-container .band__part
{
    height: 100%;
    margin-top: 0;
}

.swiper-slide
{
    padding-right: 32px;
    padding-left: 32px;

    transition: transform 150ms cubic-bezier(.77, 0, .175, 1);
}

.swiper-slide-prev
{
    transform: translateX(48px);
}

.swiper-slide-next
{
    transform: translateX(-48px);
}

.swiper-slide-active
{
    transform: translateX(0%);
}

@media (min-width: 1024px)
{
    .zones[data-columns='3'] .zone:first-child .band.band--footnote
    {
        padding: 0;
    }
}

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlLmNzcyIsIjEtc2V0dGluZ3MvX3R5cG9ncmFwaHkuc2NzcyIsIjEtc2V0dGluZ3MvYm91cmJvbi9jc3MzL19mb250LWZhY2Uuc2NzcyIsIjEtc2V0dGluZ3MvYm91cmJvbi9oZWxwZXJzL19mb250LXNvdXJjZS1kZWNsYXJhdGlvbi5zY3NzIiwiMi10b29scy9fcGxhY2Vob2xkZXJzLnNjc3MiLCIyLXRvb2xzL19tZWRpYS1xdWVyaWVzLnNjc3MiLCIxLXNldHRpbmdzL19jb2xvcnMuc2NzcyIsIjEtc2V0dGluZ3MvX2FuaW1hdGlvbnMuc2NzcyIsIjMtZ2VuZXJpYy9fbm9ybWFsaXplLnNjc3MiLCIzLWdlbmVyaWMvX2JveC1zaXppbmcuc2NzcyIsIjQtYmFzZS9fYm9keS5zY3NzIiwiNC1iYXNlL19mb3Jtcy5zY3NzIiwiMi10b29scy9fbWl4aW5zLnNjc3MiLCI0LWJhc2UvX2hlYWRpbmdzLnNjc3MiLCI0LWJhc2UvX2xpbmtzLnNjc3MiLCI0LWJhc2UvX2xpc3RzLnNjc3MiLCI0LWJhc2UvX21lZGlhLnNjc3MiLCIxLXNldHRpbmdzL19yYWRpdXMuc2NzcyIsIjQtYmFzZS9fcGFyYWdyYXBocy5zY3NzIiwiNC1iYXNlL19xdW90ZXMuc2NzcyIsIjQtYmFzZS9fcnVsZXMuc2NzcyIsIjQtYmFzZS9fdGFibGVzLnNjc3MiLCI0LWJhc2UvX3NlbGVjdGlvbnMuc2NzcyIsIjQtYmFzZS9faW5wdXRzLnNjc3MiLCI0LWJhc2UvX2FkZHJlc3Nlcy5zY3NzIiwiNS1vYmplY3RzL193cmFwcGVycy5zY3NzIiwiNS1vYmplY3RzL19oZWFkZXIuc2NzcyIsIjUtb2JqZWN0cy9fY29udGVudC5zY3NzIiwiNS1vYmplY3RzL19mb290ZXIuc2NzcyIsIjUtb2JqZWN0cy9fem9uZXMuc2NzcyIsIjUtb2JqZWN0cy9fYmFuZHMuc2NzcyIsIjYtY29tcG9uZW50cy9fYnJlYWRjcnVtYnMuc2NzcyIsIjYtY29tcG9uZW50cy9fcGFnaW5hdGlvbi5zY3NzIiwiNi1jb21wb25lbnRzL19tZW51cy5zY3NzIiwiNi1jb21wb25lbnRzL19zaG9ydGN1dHMuc2NzcyIsIjYtY29tcG9uZW50cy9fYnV0dG9ucy5zY3NzIiwiNi1jb21wb25lbnRzL19sb2dvcy5zY3NzIiwiNi1jb21wb25lbnRzL19saW5rcy5zY3NzIiwiNi1jb21wb25lbnRzL190aXRsZXMuc2NzcyIsIjYtY29tcG9uZW50cy9fbGlzdHMuc2NzcyIsIjYtY29tcG9uZW50cy9fbWV0YS5zY3NzIiwiNi1jb21wb25lbnRzL19uZXdzLnNjc3MiLCI2LWNvbXBvbmVudHMvX2Zvcm1ibG9ja3Muc2NzcyIsIjYtY29tcG9uZW50cy9fZm9ybWFjdGlvbnMuc2NzcyIsIjYtY29tcG9uZW50cy9fY29sbGFwc2Uuc2NzcyIsIjYtY29tcG9uZW50cy9fZm9ybXMuc2NzcyIsIjYtY29tcG9uZW50cy9fYWxlcnRzLnNjc3MiLCI2LWNvbXBvbmVudHMvX2ZpbGVzLnNjc3MiLCI2LWNvbXBvbmVudHMvX2RvY3VtZW50cy5zY3NzIiwiNi1jb21wb25lbnRzL19iYWRnZXMuc2NzcyIsIjYtY29tcG9uZW50cy9fY2xvc2luZ3Muc2NzcyIsIjYtY29tcG9uZW50cy9fc2lkZWJsb2Nrcy5zY3NzIiwiNi1jb21wb25lbnRzL19kYXRhdGFibGVzLnNjc3MiLCI2LWNvbXBvbmVudHMvX2RhdGF0YWJsZXMtcmVzcG9uc2l2ZS5zY3NzIiwiNi1jb21wb25lbnRzL19qcXVlcnktdWkuc2NzcyIsIjYtY29tcG9uZW50cy9fanF1ZXJ5LXVpLXRoZW1lLnNjc3MiLCI2LWNvbXBvbmVudHMvX2p1ZGdlcy5zY3NzIiwiNi1jb21wb25lbnRzL19wcm9ncmVzcy5zY3NzIiwiNi1jb21wb25lbnRzL19jb3B5cmlnaHQuc2NzcyIsIjYtY29tcG9uZW50cy9fbWVkaWEuc2NzcyIsIjYtY29tcG9uZW50cy9fdG9waWNzLnNjc3MiLCI2LWNvbXBvbmVudHMvX2NhcmRzLnNjc3MiLCI2LWNvbXBvbmVudHMvX2NoaXBzLnNjc3MiLCI2LWNvbXBvbmVudHMvX3N3aXBlLnNjc3MiLCI2LWNvbXBvbmVudHMvX2RlZmluaXRpb25zLnNjc3MiLCI2LWNvbXBvbmVudHMvX2Zvcm1ncm91cHMuc2NzcyIsIjYtY29tcG9uZW50cy9fZmlsdGVycy5zY3NzIiwiNi1jb21wb25lbnRzL19kaXN0cmljdHMuc2NzcyIsIjYtY29tcG9uZW50cy9fZmlndXJlcy5zY3NzIiwiNi1jb21wb25lbnRzL192aWRlb3Muc2NzcyIsIjYtY29tcG9uZW50cy9fcXVvdGVzLnNjc3MiLCI2LWNvbXBvbmVudHMvX3Nob3RzLnNjc3MiLCI2LWNvbXBvbmVudHMvX3RhZ3Muc2NzcyIsIjYtY29tcG9uZW50cy9fZGlhZ3JhbXMuc2NzcyIsIjYtY29tcG9uZW50cy9fdHdlZXRzLnNjc3MiLCI2LWNvbXBvbmVudHMvX2hvbGlkYXlzLnNjc3MiLCI2LWNvbXBvbmVudHMvX2dyYXBoaWMtY3Rhcy5zY3NzIiwiNi1jb21wb25lbnRzL19oZXJvLnNjc3MiLCI2LWNvbXBvbmVudHMvX2Zvcm1zLWRydXBhbC5zY3NzIiwiNy10cnVtcHMvX3V0aWxpdGllcy5zY3NzIiwiNy10cnVtcHMvX2pxdWVyeS11aS5zY3NzIiwiNy10cnVtcHMvX3RpdGxlcy5zY3NzIiwiNy10cnVtcHMvX2NhcmRzLnNjc3MiLCI3LXRydW1wcy9fZmlsdGVycy5zY3NzIiwiNy10cnVtcHMvX2JhbmRzLnNjc3MiLCI3LXRydW1wcy9fY29sbGFwc2Uuc2NzcyIsIjctdHJ1bXBzL19tZW51cy5zY3NzIiwiNy10cnVtcHMvX3NpZGVibG9ja3Muc2NzcyIsIjctdHJ1bXBzL19saW5rcy5zY3NzIiwiNy10cnVtcHMvX3N3aXBlLnNjc3MiLCI3LXRydW1wcy9fem9uZXMuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxpQkFBaUI7QUN5QmpCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBcUNFO0FBR0YsaUVBQWlFO0FBQ2pFLGdEQUFZO0FBT1osaUZBQVk7QUM1RFY7RUFDRSx5QkRzRDBCO0VDckQxQixtQkFY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REksbUJBQWtCO0lBQ2xCLFNBQVE7SUFDUixzQkFBcUI7SUFDckIsWUFBVztJQUNYLGFBQVk7SUFDWixxQkFBb0IsRUFDckI7RUFLRDtJQUNFLHdDN0JtRm1CO0k2QmxGbkIsb0M3QmtGbUI7STZCakZuQixZN0JzRWdCLEU2QnRCakI7SUFuREE7TUFNRyx3QzdCOEVpQjtNNkI3RWpCLG9DN0I2RWlCO002QjVFakIsWTdCaUVjLEU2QmhFZjtJQVRGO01BV0csMEI3QnlFaUI7TTZCeEVqQixzQjdCd0VpQjtNNkJ2RWpCLFk3QjREYyxFNkIzRGY7SUFkRjtNQWdCRywwQjdCb0VpQjtNNkJuRWpCLDRDN0JtRWlCO002QmxFakIsc0I3QmtFaUI7TTZCakVqQixZN0JzRGMsRTZCckRmO0lBcEJGO01Bd0JHLFc3QmlEYyxFNkJoRGY7SUF6QkY7TUE4QkcsdUI3QjJDYztNNkIxQ2Qsb0M3QnFEaUI7TTZCcERqQixlN0JvRGlCLEU2QmxDbEI7TUFsREY7UUFtQ0ssdUI3QnNDWTtRNkJyQ1osb0M3QmdEZTtRNkIvQ2YsZTdCK0NlLEU2QjlDaEI7TUF0Q0o7UUF3Q0ssdUI3QmlDWTtRNkJoQ1osc0I3QjJDZTtRNkIxQ2YsZTdCMENlLEU2QnpDaEI7TUEzQ0o7UUE2Q0ssdUI3QjRCWTtRNkIzQlosc0I3QnNDZTtRNkJyQ2YsZTdCcUNlLEU2QnBDaEI7RUFRTDtJQUNFLDRDN0JnQmdCO0k2QmZoQix3QzdCZWdCO0k2QmRoQixlN0J5Qm1CLEU2Qk5wQjtJQXRCQTtNQU1HLDRDN0JXYztNNkJWZCx3QzdCVWM7TTZCVGQsZTdCb0JpQixFNkJuQmxCO0lBVEY7TUFXRyx1QjdCTWM7TTZCTGQsbUI3QktjO002QkpkLGU3QmVpQixFNkJkbEI7SUFkRjtNQWdCRyx1QjdCQ2M7TTZCQWQsZ0Q3QkFjO002QkNkLG1CN0JEYztNNkJFZCxlN0JTaUIsRTZCUmxCO0VBT0g7SUFDRSwyQzdCTG1CO0k2Qk1uQix1QzdCTm1CO0k2Qk9uQixZN0JiZ0IsRTZCZ0NqQjtJQXRCQTtNQU1HLDJDN0JWaUI7TTZCV2pCLHVDN0JYaUI7TTZCWWpC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WUFBVztJQUNYLGlCQUFnQjtJQUNoQixvQi9Fc0lhLEUrRXBJaEIsRUFBQTs7QUF0Q1A7RUF5Q1EsWS9Fa0lZO0UrRWpJWiwrQy9FaUlZO0UrRWhJWixzQkFBcUIsRUFxQnRCO0VBaEVQO0lBK0NVLFkvRTRIVSxFK0UzSFg7RUFoRFQ7SUFvRFUsWS9FdUhVLEUrRXRIWDtFQXJEVDtJQXlEVSxzREFBcUQsRUFDdEQ7RUExRFQ7SUE4RFUseURBQXdELEVBQ3pEOztBaEZnZkw7RTRCMU5EO0lxRG5WQyxxQkFBb0IsRUFFdkIsRUFBQTs7QWpGMmlCRztFa0Y5aUJKO0lBRUksaUJBQWdCLEVBS25CLEVBQUE7O0FsRnVpQkc7RWtGOWlCSjtJQUtJLGlCQUFnQixFQUVuQixFQUFBOztBQUdEO0VBRUksWUFBVyxFQUNaOztBQUhIO0VBS0ksWUFBVztFQUNYLG1CQUFrQixFQUNuQjs7QUFJSDtFQUVJLGNBQWE7RUFDYixnQkFBZSxFQUNoQjs7QWxGcWhCQztFbUYvaUJKO0lBRUksY0FBYSxFQUVoQixFQUFBOztBQ0pEO0VBRUksYUFBWTtFQUNaLGNBQWEsRUFDZDs7QTFCMkRIO0UwQnZERSxtQkFBa0I7RUFDbEIsb0JBQW1CO0VBQ25CLDREbEZQbUQsRWtGUXBEOztBQUVEO0VBQ0UsNEJBQTJCLEVBQzVCOztBQUNEO0VBQ0UsNkJBQTRCLEVBQzdCOztBQUVEO0VBQ0UsMEJBQXlCLEVBQzFCOztBcEZ5aEJHO0VxRi9pQko7SUFJUSxXQUFVLEVBRWIsRUFBQSIsImZpbGUiOiJzdHlsZS5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJAY2hhcnNldCBcIlVURi04XCI7XG4vKipcbiAqIEBsaWNlbnNlXG4gKiBNeUZvbnRzIFdlYmZvbnQgQnVpbGQgSUQgMzQyNTUxNywgMjAxNy0wNy0yMFQxMTo1ODo0Ni0wNDAwXG4gKlxuICogVGhlIGZvbnRzIGxpc3RlZCBpbiB0aGlzIG5vdGljZSBhcmUgc3ViamVjdCB0byB0aGUgRW5kIFVzZXIgTGljZW5zZVxuICogQWdyZWVtZW50KHMpIGVudGVyZWQgaW50byBieSB0aGUgd2Vic2l0ZSBvd25lci4gQWxsIG90aGVyIHBhcnRpZXMgYXJlXG4gKiBleHBsaWNpdGx5IHJlc3RyaWN0ZWQgZnJvbSB1c2luZyB0aGUgTGljZW5zZWQgV2ViZm9udHMocykuXG4gKlxuICogWW91IG1heSBvYnRhaW4gYSB2YWxpZCBsaWNlbnNlIGF0IHRoZSBVUkxzIGJlbG93LlxuICpcbiAqIFdlYmZvbnQ6IEZGIFRpYmVyZSBXZWIgTWVkaXVtIGJ5IEZvbnRGb250XG4gKiBVUkw6IGh0dHBzOi8vd3d3Lm15Zm9udHMuY29tL2ZvbnRzL2ZvbnRmb250L3RpYmVyZS9vdC1tZWRpdW0vXG4gKlxuICogV2ViZm9udDogRkYgVGliZXJlIFdlYiBMaWdodCBieSBGb250Rm9udFxuICogVVJMOiBodHRwczovL3d3dy5teWZvbnRzLmNvbS9mb250cy9mb250Zm9udC90aWJlcmUvb3QtbGlnaHQvXG4gKlxuICogV2ViZm9udDogRkYgVGliZXJlIFdlYiBJdGFsaWMgYnkgRm9udEZvbnRcbiAqIFVSTDogaHR0cHM6Ly93d3cubXlmb250cy5jb20vZm9udHMvZm9udGZvbnQvdGliZXJlL290LWl0YWxpYy9cbiAqXG4gKiBXZWJmb250OiBGRiBUaWJlcmUgV2ViIExpZ2h0IEl0YWxpYyBieSBGb250Rm9udFxuICogVVJMOiBodHRwczovL3d3dy5teWZvbnRzLmNvbS9mb250cy9mb250Zm9udC90aWJlcmUvb3QtbGlnaHQtaXRhbGljL1xuICpcbiAqIFdlYmZvbnQ6IEZGIFRpYmVyZSBXZWIgQm9sZCBieSBGb250Rm9udFxuICogVVJMOiBodHRwczovL3d3dy5teWZvbnRzLmNvbS9mb250cy9mb250Zm9udC90aWJlcmUvb3QtYm9sZC9cbiAqXG4gKiBXZWJmb250OiBUaWJlcmUgT3JuYW1lbnRzIEJhbmRlZCBieSBGb250Rm9udFxuICogVVJMOiBodHRwczovL3d3dy5teWZvbnRzLmNvbS9mb250cy9mb250Zm9udC90aWJlcmUvb3JuYW1lbnRzLWJhbmRlZC9cbiAqXG4gKiBXZWJmb250OiBGRiBUaWJlcmUgV2ViIGJ5IEZvbnRGb250XG4gKiBVUkw6IGh0dHBzOi8vd3d3Lm15Zm9udHMuY29tL2ZvbnRzL2ZvbnRmb250L3RpYmVyZS9vdC9cbiAqXG4gKlxuICogTGljZW5zZTogaHR0cHM6Ly93d3cubXlmb250cy5jb20vdmlld2xpY2Vuc2U/dHlwZT13ZWImYnVpbGRpZD0zNDI1NTE3XG4gKiBMaWNlbnNlZCBwYWdldmlld3M6IDUwMCwwMDBcbiAqIFdlYmZvbnRzIGNvcHlyaWdodDogMjAxMCBBbGJlcnQgQm90b24gcHVibGlzaGVkIGJ5IEZTSSBGb250U2hvcCBJbnRlcm5hdGlvbmFsIEdtYkhcbiAqXG4gKiDCqSAyMDE3IE15Rm9udHMgSW5jXG4qL1xuLyogQGltcG9ydCBtdXN0IGJlIGF0IHRvcCBvZiBmaWxlLCBvdGhlcndpc2UgQ1NTIHdpbGwgbm90IHdvcmsgKi9cbkBpbXBvcnQgdXJsKFwiLy9oZWxsby5teWZvbnRzLm5ldC9jb3VudC8zNDQ0ZWRcIik7XG5AaW1wb3J0IHVybChcImh0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzP2ZhbWlseT1PcGVuK1NhbnM6MzAwLDQwMCw2MDAsNzAwXCIpO1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIkZGIFRpYmVyZVwiO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvMzQ0NEVEXzFfMC5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLCB1cmwoXCIuLi9mb250cy8zNDQ0RURfMV8wLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi9mb250cy8zNDQ0RURfMV8wLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiLi4vZm9udHMvMzQ0NEVEXzFfMC50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIik7IH1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIkZGIFRpYmVyZVwiO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvMzQ0NEVEXzZfMC5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLCB1cmwoXCIuLi9mb250cy8zNDQ0RURfNl8wLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi9mb250cy8zNDQ0RURfNl8wLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiLi4vZm9udHMvMzQ0NEVEXzZfMC50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIik7IH1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIkZGIFRpYmVyZVwiO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvMzQ0NEVEXzRfMC5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLCB1cmwoXCIuLi9mb250cy8zNDQ0RURfNF8wLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi9mb250cy8zNDQ0RURfNF8wLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiLi4vZm9udHMvMzQ0NEVEXzRfMC50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIik7IH1cblxuLmxpbmtzX190aXRsZSB7XG4gIG1hcmdpbjogMCAwIDE2cHg7XG4gIGZvbnQtZmFtaWx5OiBcIk9wZW4gU2Fuc1wiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNjAwO1xuICBmb250LXNpemU6IDE2cHg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gICAgLmxpbmtzX190aXRsZSB7XG4gICAgICBtYXJnaW46IDAgMCAzMnB4O1xuICAgICAgZm9udC1zaXplOiAxOXB4OyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgIC5saW5rc19fdGl0bGUge1xuICAgICAgZm9udC1zaXplOiAyMXB4OyB9IH1cblxuLm1lbnVfX2l0ZW0sIC5saW5rc19faXRlbSB7XG4gIG1hcmdpbjogMTZweCAwIDA7IH1cbiAgLm1lbnVfX2l0ZW06Zmlyc3QtY2hpbGQsIC5saW5rc19faXRlbTpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXRvcDogMDsgfVxuXG4ucmFkaW9zIC5vcHRpb25fX2lucHV0LCAuY2hlY2tib3hlcyAub3B0aW9uX19pbnB1dCwgLnpvbmVfX3RpdGxlLCAucGFnaW5hdGlvbl9fdGl0bGUsIC5zaG9ydGN1dC0tbWFpbiwgLnNyLW9ubHksIC5jbG9zZS0tc2Vjb25kYXJ5LW1lbnUgc3BhbiwgLmxpbmtzLS1jb25uZWN0LXNpbXBsZSAubGlua3NfX2l0ZW0gc3BhbiwgLmZvcm0tLXNlYXJjaC1maWx0ZXJzIC5mb3JtYmxvY2tfX2xhYmVsLCAuYWxlcnQtLWNvbGxhcHNpYmxlIC5hbGVydF9fdG9nZ2xlIHNwYW4ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IC0xMDAwMHB4O1xuICB0b3A6IGF1dG87XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4uY2xvc2luZ19fbWVzc2FnZSBzdHJvbmc6YWZ0ZXIsIC5jbG9zaW5nX19tZXNzYWdlIFtpdGVtcHJvcD0ncG9zdGFsQ29kZSddOmFmdGVyLCAud2ViZm9ybS1tdWx0aXBsZS10YWJsZSB7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY2xlYXI6IGJvdGg7IH1cblxubGFiZWwsIC5yYWRpb3MgbGVnZW5kLCAuY2hlY2tib3hlcyBsZWdlbmQsIC5sZWdlbmQtbGFiZWwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogOHB4O1xuICBmb250LXdlaWdodDogNjAwO1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cblxuLmhlYWRlci1jb250YWluZXI6YmVmb3JlLCAuY29udGVudC1jb250YWluZXI6YmVmb3JlIHtcbiAgY29udGVudDogJyc7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI0LCAyNSwgMjUsIDAuOSk7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgNzUwbXMgY3ViaWMtYmV6aWVyKDAuNzcsIDAsIDAuMTc1LCAxKTtcbiAgei1pbmRleDogMjsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgLmhlYWRlci1jb250YWluZXI6YmVmb3JlLCAuY29udGVudC1jb250YWluZXI6YmVmb3JlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4ubGlua3NfX2l0ZW0tLWZhY2Vib29rIGEsIC5saW5rc19faXRlbS0tdHdpdHRlciBhLCAubGlua3NfX2l0ZW0tLWxpbmtlZGluIGEsIC5saW5rc19faXRlbS0teW91dHViZSBhLCAubGlua3NfX2l0ZW0tLWluc3RhZ3JhbSBhLCAubGlua3NfX2l0ZW0tLWVtYWlsIGEge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmctbGVmdDogNDBweDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuICAubGlua3NfX2l0ZW0tLWZhY2Vib29rIGE6YmVmb3JlLCAubGlua3NfX2l0ZW0tLXR3aXR0ZXIgYTpiZWZvcmUsIC5saW5rc19faXRlbS0tbGlua2VkaW4gYTpiZWZvcmUsIC5saW5rc19faXRlbS0teW91dHViZSBhOmJlZm9yZSwgLmxpbmtzX19pdGVtLS1pbnN0YWdyYW0gYTpiZWZvcmUsIC5saW5rc19faXRlbS0tZW1haWwgYTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiAwO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogMzJweDtcbiAgICBoZWlnaHQ6IDMycHg7XG4gICAgbWFyZ2luLXRvcDogLTE2cHg7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgNTAlO1xuICAgIGJhY2tncm91bmQtc2l6ZTogYXV0byAyNHB4OyB9XG5cbi8qISBub3JtYWxpemUuY3NzIHY0LjEuMSB8IE1JVCBMaWNlbnNlIHwgZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MgKi9cbi8qKlxuICogMS4gQ2hhbmdlIHRoZSBkZWZhdWx0IGZvbnQgZmFtaWx5IGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICogMi4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpbiBJRSBhbmQgaU9TLlxuICovXG5odG1sIHtcbiAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7XG4gIC8qIDEgKi9cbiAgLW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gIC8qIDIgKi9cbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICAvKiAyICovIH1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqL1xuYm9keSB7XG4gIG1hcmdpbjogMDsgfVxuXG4vKiBIVE1MNSBkaXNwbGF5IGRlZmluaXRpb25zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIEVkZ2UsIElFLCBhbmQgRmlyZWZveC5cbiAqIDIuIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFLlxuICovXG5hcnRpY2xlLFxuYXNpZGUsXG5kZXRhaWxzLFxuZmlnY2FwdGlvbixcbmZpZ3VyZSxcbmZvb3RlcixcbmhlYWRlcixcbm1haW4sXG5tZW51LFxubmF2LFxuc2VjdGlvbixcbnN1bW1hcnkge1xuICAvKiAxICovXG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gKi9cbmF1ZGlvLFxuY2FudmFzLFxucHJvZ3Jlc3MsXG52aWRlbyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGlPUyA0LTcuXG4gKi9cbmF1ZGlvOm5vdChbY29udHJvbHNdKSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGhlaWdodDogMDsgfVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4gKi9cbnByb2dyZXNzIHtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyB9XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTAtLlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUuXG4gKi9cbnRlbXBsYXRlLFxuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi8qIExpbmtzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiAxLiBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBvbiBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG4gKiAyLiBSZW1vdmUgZ2FwcyBpbiBsaW5rcyB1bmRlcmxpbmUgaW4gaU9TIDgrIGFuZCBTYWZhcmkgOCsuXG4gKi9cbmEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLyogMSAqL1xuICAtd2Via2l0LXRleHQtZGVjb3JhdGlvbi1za2lwOiBvYmplY3RzO1xuICAvKiAyICovIH1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIG91dGxpbmUgb24gZm9jdXNlZCBsaW5rcyB3aGVuIHRoZXkgYXJlIGFsc28gYWN0aXZlIG9yIGhvdmVyZWRcbiAqIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICovXG5hOmFjdGl2ZSxcbmE6aG92ZXIge1xuICBvdXRsaW5lLXdpZHRoOiAwOyB9XG5cbi8qIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiAxLiBSZW1vdmUgdGhlIGJvdHRvbSBib3JkZXIgaW4gRmlyZWZveCAzOS0uXG4gKiAyLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgSUUsIE9wZXJhLCBhbmQgU2FmYXJpLlxuICovXG5hYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIC8qIDEgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIC8qIDIgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkO1xuICAvKiAyICovIH1cblxuLyoqXG4gKiBQcmV2ZW50IHRoZSBkdXBsaWNhdGUgYXBwbGljYXRpb24gb2YgYGJvbGRlcmAgYnkgdGhlIG5leHQgcnVsZSBpbiBTYWZhcmkgNi5cbiAqL1xuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBpbmhlcml0OyB9XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgd2VpZ2h0IGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaS5cbiAqL1xuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkZXI7IH1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzdHlsZSBpbiBBbmRyb2lkIDQuMy0uXG4gKi9cbmRmbiB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYzsgfVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGZvbnQgc2l6ZSBhbmQgbWFyZ2luIG9uIGBoMWAgZWxlbWVudHMgd2l0aGluIGBzZWN0aW9uYCBhbmRcbiAqIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXG4gKi9cbmgxIHtcbiAgZm9udC1zaXplOiAyZW07XG4gIG1hcmdpbjogMC42N2VtIDA7IH1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgYmFja2dyb3VuZCBhbmQgY29sb3IgaW4gSUUgOS0uXG4gKi9cbm1hcmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmYwO1xuICBjb2xvcjogIzAwMDsgfVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlOyB9XG5cbi8qKlxuICogUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluXG4gKiBhbGwgYnJvd3NlcnMuXG4gKi9cbnN1YixcbnN1cCB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IH1cblxuc3ViIHtcbiAgYm90dG9tOiAtMC4yNWVtOyB9XG5cbnN1cCB7XG4gIHRvcDogLTAuNWVtOyB9XG5cbi8qIEVtYmVkZGVkIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIFJlbW92ZSB0aGUgYm9yZGVyIG9uIGltYWdlcyBpbnNpZGUgbGlua3MgaW4gSUUgMTAtLlxuICovXG5pbWcge1xuICBib3JkZXItc3R5bGU6IG5vbmU7IH1cblxuLyoqXG4gKiBIaWRlIHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAqL1xuc3ZnOm5vdCg6cm9vdCkge1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbi8qIEdyb3VwaW5nIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbmNvZGUsXG5rYmQsXG5wcmUsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlO1xuICAvKiAxICovXG4gIGZvbnQtc2l6ZTogMWVtO1xuICAvKiAyICovIH1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgbWFyZ2luIGluIElFIDguXG4gKi9cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMWVtIDQwcHg7IH1cblxuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBGaXJlZm94LlxuICogMi4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZSBhbmQgSUUuXG4gKi9cbmhyLCAubWVudV9fZGl2aWRlciB7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAvKiAxICovXG4gIGhlaWdodDogMDtcbiAgLyogMSAqL1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgLyogMiAqLyB9XG5cbi8qIEZvcm1zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiAxLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqIDIuIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaS5cbiAqL1xuYnV0dG9uLFxuaW5wdXQsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGZvbnQ6IGluaGVyaXQ7XG4gIC8qIDEgKi9cbiAgbWFyZ2luOiAwO1xuICAvKiAyICovIH1cblxuLyoqXG4gKiBSZXN0b3JlIHRoZSBmb250IHdlaWdodCB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZS5cbiAqL1xub3B0Z3JvdXAge1xuICBmb250LXdlaWdodDogYm9sZDsgfVxuXG4vKipcbiAqIFNob3cgdGhlIG92ZXJmbG93IGluIElFLlxuICogMS4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZS5cbiAqL1xuYnV0dG9uLFxuaW5wdXQge1xuICAvKiAxICovXG4gIG92ZXJmbG93OiB2aXNpYmxlOyB9XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBFZGdlLCBGaXJlZm94LCBhbmQgSUUuXG4gKiAxLiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3guXG4gKi9cbmJ1dHRvbixcbnNlbGVjdCB7XG4gIC8qIDEgKi9cbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7IH1cblxuLyoqXG4gKiAxLiBQcmV2ZW50IGEgV2ViS2l0IGJ1ZyB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2AgYW5kIGB2aWRlb2BcbiAqICAgIGNvbnRyb2xzIGluIEFuZHJvaWQgNC5cbiAqIDIuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gKi9cbmJ1dHRvbixcbmh0bWwgW3R5cGU9XCJidXR0b25cIl0sXG5bdHlwZT1cInJlc2V0XCJdLFxuW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAqL1xuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJidXR0b25cIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInJlc2V0XCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJzdWJtaXRcIl06Oi1tb3otZm9jdXMtaW5uZXIge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7IH1cblxuLyoqXG4gKiBSZXN0b3JlIHRoZSBmb2N1cyBzdHlsZXMgdW5zZXQgYnkgdGhlIHByZXZpb3VzIHJ1bGUuXG4gKi9cbmJ1dHRvbjotbW96LWZvY3VzcmluZyxcblt0eXBlPVwiYnV0dG9uXCJdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJyZXNldFwiXTotbW96LWZvY3VzcmluZyxcblt0eXBlPVwic3VibWl0XCJdOi1tb3otZm9jdXNyaW5nIHtcbiAgb3V0bGluZTogMXB4IGRvdHRlZCBCdXR0b25UZXh0OyB9XG5cbi8qKlxuICogQ2hhbmdlIHRoZSBib3JkZXIsIG1hcmdpbiwgYW5kIHBhZGRpbmcgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKi9cbmZpZWxkc2V0IHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2MwYzBjMDtcbiAgbWFyZ2luOiAwIDJweDtcbiAgcGFkZGluZzogMC4zNWVtIDAuNjI1ZW0gMC43NWVtOyB9XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cbiAqIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cbiAqIDMuIFJlbW92ZSB0aGUgcGFkZGluZyBzbyBkZXZlbG9wZXJzIGFyZSBub3QgY2F1Z2h0IG91dCB3aGVuIHRoZXkgemVybyBvdXRcbiAqICAgIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5sZWdlbmQge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAvKiAxICovXG4gIGNvbG9yOiBpbmhlcml0O1xuICAvKiAyICovXG4gIGRpc3BsYXk6IHRhYmxlO1xuICAvKiAxICovXG4gIG1heC13aWR0aDogMTAwJTtcbiAgLyogMSAqL1xuICBwYWRkaW5nOiAwO1xuICAvKiAzICovXG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIC8qIDEgKi8gfVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUuXG4gKi9cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87IH1cblxuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC0uXG4gKiAyLiBSZW1vdmUgdGhlIHBhZGRpbmcgaW4gSUUgMTAtLlxuICovXG5bdHlwZT1cImNoZWNrYm94XCJdLFxuW3R5cGU9XCJyYWRpb1wiXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC8qIDEgKi9cbiAgcGFkZGluZzogMDtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgY3Vyc29yIHN0eWxlIG9mIGluY3JlbWVudCBhbmQgZGVjcmVtZW50IGJ1dHRvbnMgaW4gQ2hyb21lLlxuICovXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvOyB9XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgb2RkIGFwcGVhcmFuY2UgaW4gQ2hyb21lIGFuZCBTYWZhcmkuXG4gKiAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cbiAqL1xuW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcbiAgLyogMSAqL1xuICBvdXRsaW5lLW9mZnNldDogLTJweDtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbm5lciBwYWRkaW5nIGFuZCBjYW5jZWwgYnV0dG9ucyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBPUyBYLlxuICovXG5bdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbixcblt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyB9XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgdGV4dCBzdHlsZSBvZiBwbGFjZWhvbGRlcnMgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuICovXG46Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICBjb2xvcjogaW5oZXJpdDtcbiAgb3BhY2l0eTogMC41NDsgfVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gKiAyLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBTYWZhcmkuXG4gKi9cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgLyogMSAqL1xuICBmb250OiBpbmhlcml0O1xuICAvKiAyICovIH1cblxuKiB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IH1cblxuYm9keSB7XG4gIGZvbnQ6IDQwMCAxNHB4LzEuNSBcIk9wZW4gU2Fuc1wiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBjb2xvcjogIzE4MTkxOTtcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICBib2R5IHtcbiAgICAgIGZvbnQ6IDQwMCAxNnB4LzEuNSBcIk9wZW4gU2Fuc1wiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgIGJvZHkge1xuICAgICAgZm9udDogNDAwIDE5cHgvMS41IFwiT3BlbiBTYW5zXCIsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7IH0gfVxuICBib2R5OmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI0LCAyNSwgMjUsIDAuMjUpO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAzMDBtcyBjdWJpYy1iZXppZXIoMC43NywgMCwgMC4xNzUsIDEpO1xuICAgIHotaW5kZXg6IDA7IH1cbiAgYm9keS5jbGlwcGVkIHtcbiAgICBvdmVyZmxvdy15OiBoaWRkZW47IH1cbiAgICBib2R5LmNsaXBwZWQ6YmVmb3JlIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIHotaW5kZXg6IDEwOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgICBib2R5LmNsaXBwZWQtLW1vYmlsZSB7XG4gICAgICBvdmVyZmxvdy15OiBoaWRkZW47IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTAyM3B4KSB7XG4gICAgYm9keS5jbGlwcGVkLS1tb2JpbGU6YmVmb3JlIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIHotaW5kZXg6IDEwOyB9IH1cblxuOjpzZWxlY3Rpb24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZiZjQ3O1xuICBjb2xvcjogIzE4MTkxOTsgfVxuXG5maWVsZHNldCB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyOiAwOyB9XG5cbmgxIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogNjRweCAwIDMycHg7XG4gIGZvbnQ6IDcwMCAzMnB4LzEuMjUgXCJGRiBUaWJlcmVcIiwgUGFsYXRpbm8sIEdlb3JnaWEsIHNhbnMtc2VyaWY7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gICAgaDEge1xuICAgICAgbWFyZ2luOiA5NnB4IDAgNDhweDtcbiAgICAgIGZvbnQtc2l6ZTogNDhweDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICBoMSB7XG4gICAgICBtYXJnaW46IDEyNHB4IDAgNjJweDtcbiAgICAgIGZvbnQtc2l6ZTogNjJweDsgfSB9XG5cbmgyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogNDhweCAwIDI0cHg7XG4gIGZvbnQ6IDcwMCAyNHB4LzEuMjUgXCJPcGVuIFNhbnNcIiwgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICBoMiB7XG4gICAgICBtYXJnaW46IDU2cHggMCAyOHB4O1xuICAgICAgZm9udC1zaXplOiAyOHB4OyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgIGgyIHtcbiAgICAgIG1hcmdpbjogNjRweCAwIDMycHg7XG4gICAgICBmb250LXNpemU6IDMycHg7IH0gfVxuXG5oMyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDQycHggMCAyMXB4O1xuICBmb250OiA2MDAgMjFweC8xLjI1IFwiT3BlbiBTYW5zXCIsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gICAgaDMge1xuICAgICAgbWFyZ2luOiA0OHB4IDAgMjRweDtcbiAgICAgIGZvbnQtc2l6ZTogMjRweDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICBoMyB7XG4gICAgICBtYXJnaW46IDU2cHggMCAyOHB4O1xuICAgICAgZm9udC1zaXplOiAyOHB4OyB9IH1cblxuaDQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAyOHB4IDAgMTlweDtcbiAgZm9udDogNDAwIDE5cHgvMS4yNSBcIk9wZW4gU2Fuc1wiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAgIGg0IHtcbiAgICAgIG1hcmdpbjogNDJweCAwIDIxcHg7XG4gICAgICBmb250LXNpemU6IDIxcHg7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgaDQge1xuICAgICAgbWFyZ2luOiA0OHB4IDAgMjRweDtcbiAgICAgIGZvbnQtc2l6ZTogMjRweDsgfSB9XG5cbmg1IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMzJweCAwIDE2cHg7XG4gIGZvbnQ6IDcwMCAxNnB4LzEuMjUgXCJPcGVuIFNhbnNcIiwgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICBoNSB7XG4gICAgICBtYXJnaW46IDI4cHggMCAxOXB4O1xuICAgICAgZm9udC1zaXplOiAxOXB4OyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgIGg1IHtcbiAgICAgIG1hcmdpbjogNDJweCAwIDIxcHg7XG4gICAgICBmb250LXNpemU6IDIxcHg7IH0gfVxuXG5oNiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDI4cHggMCAxNHB4O1xuICBmb250OiA2MDAgMTRweC8xLjI1IFwiT3BlbiBTYW5zXCIsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gICAgaDYge1xuICAgICAgbWFyZ2luOiAzMnB4IDAgMTZweDtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICBoNiB7XG4gICAgICBtYXJnaW46IDI4cHggMCAxOXB4O1xuICAgICAgZm9udC1zaXplOiAxOXB4OyB9IH1cblxuLmgxIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogNjRweCAwIDMycHg7XG4gIGZvbnQ6IDcwMCAzMnB4LzEuMjUgXCJGRiBUaWJlcmVcIiwgUGFsYXRpbm8sIEdlb3JnaWEsIHNhbnMtc2VyaWY7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gICAgLmgxIHtcbiAgICAgIG1hcmdpbjogOTZweCAwIDQ4cHg7XG4gICAgICBmb250LXNpemU6IDQ4cHg7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgLmgxIHtcbiAgICAgIG1hcmdpbjogMTI0cHggMCA2MnB4O1xuICAgICAgZm9udC1zaXplOiA2MnB4OyB9IH1cblxuLmgyLCAuYmFuZF9fdGl0bGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiA0OHB4IDAgMjRweDtcbiAgZm9udDogNzAwIDI0cHgvMS4yNSBcIk9wZW4gU2Fuc1wiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAgIC5oMiwgLmJhbmRfX3RpdGxlIHtcbiAgICAgIG1hcmdpbjogNTZweCAwIDI4cHg7XG4gICAgICBmb250LXNpemU6IDI4cHg7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgLmgyLCAuYmFuZF9fdGl0bGUge1xuICAgICAgbWFyZ2luOiA2NHB4IDAgMzJweDtcbiAgICAgIGZvbnQtc2l6ZTogMzJweDsgfSB9XG5cbi5oMywgLnRpdGxlLS1jbG9zaW5ncywgLmNoaXBfX3ZhbHVlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogNDJweCAwIDIxcHg7XG4gIGZvbnQ6IDYwMCAyMXB4LzEuMjUgXCJPcGVuIFNhbnNcIiwgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICAuaDMsIC50aXRsZS0tY2xvc2luZ3MsIC5jaGlwX192YWx1ZSB7XG4gICAgICBtYXJnaW46IDQ4cHggMCAyNHB4O1xuICAgICAgZm9udC1zaXplOiAyNHB4OyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgIC5oMywgLnRpdGxlLS1jbG9zaW5ncywgLmNoaXBfX3ZhbHVlIHtcbiAgICAgIG1hcmdpbjogNTZweCAwIDI4cHg7XG4gICAgICBmb250LXNpemU6IDI4cHg7IH0gfVxuXG4uaDQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAyOHB4IDAgMTlweDtcbiAgZm9udDogNDAwIDE5cHgvMS4yNSBcIk9wZW4gU2Fuc1wiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAgIC5oNCB7XG4gICAgICBtYXJnaW46IDQycHggMCAyMXB4O1xuICAgICAgZm9udC1zaXplOiAyMXB4OyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgIC5oNCB7XG4gICAgICBtYXJnaW46IDQ4cHggMCAyNHB4O1xuICAgICAgZm9udC1zaXplOiAyNHB4OyB9IH1cblxuLmg1LCAubWVudV9fdGl0bGUsIC5jbG9zaW5nX190aXRsZSwgLnNob3QtLWhvcml6b250YWwgLnNob3RfX3RpdGxlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMzJweCAwIDE2cHg7XG4gIGZvbnQ6IDcwMCAxNnB4LzEuMjUgXCJPcGVuIFNhbnNcIiwgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICAuaDUsIC5tZW51X190aXRsZSwgLmNsb3NpbmdfX3RpdGxlLCAuc2hvdC0taG9yaXpvbnRhbCAuc2hvdF9fdGl0bGUge1xuICAgICAgbWFyZ2luOiAyOHB4IDAgMTlweDtcbiAgICAgIGZvbnQtc2l6ZTogMTlweDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAuaDUsIC5tZW51X190aXRsZSwgLmNsb3NpbmdfX3RpdGxlLCAuc2hvdC0taG9yaXpvbnRhbCAuc2hvdF9fdGl0bGUge1xuICAgICAgbWFyZ2luOiA0MnB4IDAgMjFweDtcbiAgICAgIGZvbnQtc2l6ZTogMjFweDsgfSB9XG5cbi5oNiwgLmxpc3QtLXJlY29nbml0aW9uIC5pdGVtX190aXRsZSwgLnNpZGVibG9ja19fdGl0bGUsIC5qdWRnZXMgLmp1ZGdlX19uYW1lLCAuc2hvdF9fdGl0bGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAyOHB4IDAgMTRweDtcbiAgZm9udDogNjAwIDE0cHgvMS4yNSBcIk9wZW4gU2Fuc1wiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAgIC5oNiwgLmxpc3QtLXJlY29nbml0aW9uIC5pdGVtX190aXRsZSwgLnNpZGVibG9ja19fdGl0bGUsIC5qdWRnZXMgLmp1ZGdlX19uYW1lLCAuc2hvdF9fdGl0bGUge1xuICAgICAgbWFyZ2luOiAzMnB4IDAgMTZweDtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAuaDYsIC5saXN0LS1yZWNvZ25pdGlvbiAuaXRlbV9fdGl0bGUsIC5zaWRlYmxvY2tfX3RpdGxlLCAuanVkZ2VzIC5qdWRnZV9fbmFtZSwgLnNob3RfX3RpdGxlIHtcbiAgICAgIG1hcmdpbjogMjhweCAwIDE5cHg7XG4gICAgICBmb250LXNpemU6IDE5cHg7IH0gfVxuXG5oMTpmb2N1cywgaDI6Zm9jdXMsIGgzOmZvY3VzLCBoNDpmb2N1cywgaDU6Zm9jdXMsIGg2OmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTsgfVxuXG5hOmxpbmsge1xuICBjb2xvcjogIzAwMmY4NztcbiAgdHJhbnNpdGlvbjogY29sb3IgMTUwbXMgY3ViaWMtYmV6aWVyKDAuNzcsIDAsIDAuMTc1LCAxKSwgYmFja2dyb3VuZCAxNTBtcyBjdWJpYy1iZXppZXIoMC43NywgMCwgMC4xNzUsIDEpLCBib3gtc2hhZG93IDE1MG1zIGN1YmljLWJlemllcigwLjc3LCAwLCAwLjE3NSwgMSk7IH1cblxuYTp2aXNpdGVkIHtcbiAgY29sb3I6ICM0YzJjOTI7IH1cblxuYTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMmY0Zjk7XG4gIGNvbG9yOiAjMDA0MWJhOyB9XG5cbmE6Zm9jdXMge1xuICBvdXRsaW5lOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZiZjQ3O1xuICBib3gtc2hhZG93OiAwIDAgMCA0cHggI2ZmYmY0NztcbiAgY29sb3I6ICMwMDQxYmE7XG4gIHotaW5kZXg6IDE7IH1cblxuYTphY3RpdmUge1xuICBvdXRsaW5lOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZiZjQ3O1xuICBib3gtc2hhZG93OiAwIDAgMCA0cHggI2ZmYmY0NztcbiAgY29sb3I6ICMwMDQxYmE7IH1cblxuYS50ZWFzZXIge1xuICBmb250LXdlaWdodDogNjAwOyB9XG5cbmFbdGFyZ2V0PSdfYmxhbmsnXSB7XG4gIG1hcmdpbi1yaWdodDogLTI0cHg7IH1cbiAgYVt0YXJnZXQ9J19ibGFuayddOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogMjRweDtcbiAgICBoZWlnaHQ6IDI0cHg7XG4gICAgYmFja2dyb3VuZDogI2YyZjRmOSB1cmwoXCIuLi9pbWcvaWNvbnMvaV9leHRlcm5hbC5zdmdcIikgbm8tcmVwZWF0IDUwJSA1MCUvMTZweCBhdXRvO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjUlKTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMTUwbXMgY3ViaWMtYmV6aWVyKDAuNzcsIDAsIDAuMTc1LCAxKSwgdHJhbnNmb3JtIDE1MG1zIGN1YmljLWJlemllcigwLjc3LCAwLCAwLjE3NSwgMSk7XG4gICAgei1pbmRleDogMDsgfVxuICBhW3RhcmdldD0nX2JsYW5rJ106aG92ZXI6YWZ0ZXIge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSk7XG4gICAgb3BhY2l0eTogMTtcbiAgICB6LWluZGV4OiAxOyB9XG5cbmFbaHJlZl49J3RlbDonXSB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cblxudWwge1xuICBtYXJnaW46IDAgMCAxNHB4OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAgIHVsIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDE2cHg7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgdWwge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTlweDsgfSB9XG5cbmxpIHtcbiAgbWFyZ2luLXRvcDogOHB4OyB9XG4gIGxpOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tdG9wOiAwOyB9XG5cbm9sIHtcbiAgbWFyZ2luOiAwIDAgMTRweDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICBvbCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxNnB4OyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgIG9sIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDE5cHg7IH0gfVxuXG5kbCB7XG4gIG1hcmdpbjogMCAwIDI4cHg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gICAgZGwge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzJweDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICBkbCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzOHB4OyB9IH1cblxuZHQge1xuICBtYXJnaW4tdG9wOiAyOHB4O1xuICBmb250LXdlaWdodDogNjAwOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAgIGR0IHtcbiAgICAgIG1hcmdpbi10b3A6IDMycHg7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgZHQge1xuICAgICAgbWFyZ2luLXRvcDogMzhweDsgfSB9XG4gIGR0OmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tdG9wOiAwOyB9XG5cbmRkIHtcbiAgbWFyZ2luOiAxNnB4IDAgMDsgfVxuXG5pbWcsIHBpY3R1cmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIGJvcmRlci1yYWRpdXM6IDRweDsgfVxuXG5maWd1cmUge1xuICBtYXJnaW46IDAgMCAyOHB4O1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gICAgZmlndXJlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDMycHg7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgZmlndXJlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDM4cHg7IH0gfVxuXG5maWdjYXB0aW9uIHtcbiAgbWFyZ2luOiAxNnB4IDAgMDtcbiAgY29sb3I6ICM2Zjc3N2I7XG4gIGZvbnQtZmFtaWx5OiBcIk9wZW4gU2Fuc1wiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGZvbnQtc2l6ZTogMTRweDsgfVxuXG5pZnJhbWUsIHZpZGVvIHtcbiAgbWFyZ2luOiAwIDAgMTRweDtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAgIGlmcmFtZSwgdmlkZW8ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTZweDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICBpZnJhbWUsIHZpZGVvIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDE5cHg7IH0gfVxuXG5wIHtcbiAgbWFyZ2luOiAwIDAgMjhweDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICBwIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDMycHg7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgcCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzOHB4OyB9IH1cblxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuXG4uY2FzaW5nLS1jYXBzIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuXG4uY2FzaW5nLS1sb3dlcmNhc2Uge1xuICB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlOyB9XG5cbm1hcmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZiZjQ3O1xuICBib3gtc2hhZG93OiAwIDAgMCA0cHggI2ZmYmY0NzsgfVxuXG5hYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQ7XG4gIGZvbnQtdmFyaWFudDogbm9uZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjdXJzb3I6IGhlbHA7IH1cblxuYmxvY2txdW90ZSB7XG4gIHBhZGRpbmc6IDAgMjhweDtcbiAgbWFyZ2luOiA1NnB4IDA7XG4gIGJvcmRlci1sZWZ0OiA0cHggc29saWQgI2FlOTM2YztcbiAgZm9udC1mYW1pbHk6IFwiRkYgVGliZXJlXCIsIFBhbGF0aW5vLCBHZW9yZ2lhLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDI4cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjI1OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAgIGJsb2NrcXVvdGUge1xuICAgICAgcGFkZGluZzogMCAzMnB4O1xuICAgICAgbWFyZ2luOiA2NHB4IDA7XG4gICAgICBmb250LXNpemU6IDMycHg7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgYmxvY2txdW90ZSB7XG4gICAgICBwYWRkaW5nOiAwIDM4cHg7XG4gICAgICBtYXJnaW46IDc2cHggMDsgfSB9XG4gIGJsb2NrcXVvdGUgcDpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IG9wZW4tcXVvdGU7IH1cbiAgYmxvY2txdW90ZSBwOmFmdGVyIHtcbiAgICBjb250ZW50OiBjbG9zZS1xdW90ZTsgfVxuICBibG9ja3F1b3RlIGZvb3RlciB7XG4gICAgZm9udC1mYW1pbHk6IFwiT3BlbiBTYW5zXCIsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtc2l6ZTogMTZweDsgfVxuICAgIGJsb2NrcXVvdGUgZm9vdGVyOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnXFwyMDE0JztcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1yaWdodDogOHB4OyB9XG5cbmhyLCAubWVudV9fZGl2aWRlciB7XG4gIGhlaWdodDogMXB4O1xuICBtYXJnaW46IDMycHggMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NjY2ZkMTtcbiAgYm9yZGVyOiAwOyB9XG5cbnRhYmxlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7IH1cblxuY2FwdGlvbiB7XG4gIGNvbG9yOiAjNmY3NzdiO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG5cbnRyOmhvdmVyIHRoLFxudHI6aG92ZXIgdGQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDExMSwgMTE5LCAxMjMsIDAuMDUpOyB9XG5cbnRoZWFkIHRoLCB0aGVhZCB0ZCB7XG4gIHBhZGRpbmc6IDhweCAwO1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQ7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGNvbG9yOiAjMDAyZjg3O1xuICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG5cbnRib2R5IHRoLCB0Ym9keSB0ZCB7XG4gIHBhZGRpbmc6IDhweCAwO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgIzE4MTkxOTtcbiAgdGV4dC1hbGlnbjogbGVmdDsgfVxuXG50Ym9keSB0aCB7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7IH1cblxudGJvZHkgdHI6Zmlyc3QtY2hpbGQgdGgsXG50Ym9keSB0cjpmaXJzdC1jaGlsZCB0ZCB7XG4gIGJvcmRlci10b3A6IDA7IH1cblxuc2VsZWN0IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNDFweDtcbiAgcGFkZGluZzogOHB4IDQwcHggOHB4IDhweDtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2ljb25zL2lfY2FyZXQtZG93bi5zdmdcIik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogMjRweCBhdXRvO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjYWxjKDEwMCUgLSA4cHgpIDUwJTtcbiAgYm9yZGVyOiAycHggc29saWQgIzZmNzc3YjtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBmb250LXNpemU6IDE2cHg7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHRyYW5zaXRpb246IGJvcmRlciAxNTBtcyBjdWJpYy1iZXppZXIoMC43NywgMCwgMC4xNzUsIDEpLCBib3gtc2hhZG93IDE1MG1zIGN1YmljLWJlemllcigwLjc3LCAwLCAwLjE3NSwgMSk7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gICAgc2VsZWN0IHtcbiAgICAgIGhlaWdodDogNDRweDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICBzZWxlY3Qge1xuICAgICAgaGVpZ2h0OiA0OHB4OyB9IH1cbiAgc2VsZWN0OjotbXMtZXhwYW5kIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIHNlbGVjdDpob3ZlciB7XG4gICAgYm9yZGVyLWNvbG9yOiAjMDAyZjg3OyB9XG4gIHNlbGVjdDpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAjMDAyZjg3O1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDRweCByZ2JhKDAsIDQ3LCAxMzUsIDAuMTYpO1xuICAgIG91dGxpbmU6IDA7IH1cblxuLnJhZGlvcyAub3B0aW9uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5yYWRpb3MgLm9wdGlvbl9faWNvbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMXB4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAyMHB4O1xuICAgIGhlaWdodDogMjBweDtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAjNmY3NzdiO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICB0cmFuc2l0aW9uOiBib3JkZXIgMTUwbXMgY3ViaWMtYmV6aWVyKDAuNzcsIDAsIDAuMTc1LCAxKSwgYm94LXNoYWRvdyAxNTBtcyBjdWJpYy1iZXppZXIoMC43NywgMCwgMC4xNzUsIDEpO1xuICAgIHotaW5kZXg6IDE7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICAgIC5yYWRpb3MgLm9wdGlvbl9faWNvbiB7XG4gICAgICAgIHRvcDogMnB4OyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAucmFkaW9zIC5vcHRpb25fX2ljb24ge1xuICAgICAgICB0b3A6IDRweDsgfSB9XG4gICAgLnJhZGlvcyAub3B0aW9uX19pY29uOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgd2lkdGg6IDEwcHg7XG4gICAgICBoZWlnaHQ6IDEwcHg7XG4gICAgICBtYXJnaW46IC01cHggMCAwIC01cHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAyZjg3O1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMTUwbXMgY3ViaWMtYmV6aWVyKDAuNzcsIDAsIDAuMTc1LCAxKSwgb3BhY2l0eSAxNTBtcyBjdWJpYy1iZXppZXIoMC43NywgMCwgMC4xNzUsIDEpOyB9XG4gIC5yYWRpb3MgLm9wdGlvbl9fbGFiZWwge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZy1sZWZ0OiAyOHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHotaW5kZXg6IDI7IH1cbiAgLnJhZGlvcyAub3B0aW9uX19pbnB1dDpmb2N1cyArIC5vcHRpb25fX2xhYmVsICsgLm9wdGlvbl9faWNvbiB7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgNHB4IHJnYmEoMCwgNDcsIDEzNSwgMC4xNik7IH1cbiAgICAucmFkaW9zIC5vcHRpb25fX2lucHV0OmZvY3VzICsgLm9wdGlvbl9fbGFiZWwgKyAub3B0aW9uX19pY29uIHN2ZyBwYXRoIHtcbiAgICAgIHN0cm9rZS1kYXNob2Zmc2V0OiAwOyB9XG4gIC5yYWRpb3MgLm9wdGlvbjpob3ZlciAub3B0aW9uX19pY29uIHtcbiAgICBib3JkZXItY29sb3I6ICMwMDJmODc7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgNHB4ICNmMmY0Zjk7IH1cbiAgICAucmFkaW9zIC5vcHRpb246aG92ZXIgLm9wdGlvbl9faWNvbjpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMmY4NztcbiAgICAgIG9wYWNpdHk6IC4yNTtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC41KTsgfVxuICAucmFkaW9zIC5vcHRpb25fX2lucHV0OmNoZWNrZWQgKyAub3B0aW9uX19sYWJlbCArIC5vcHRpb25fX2ljb24ge1xuICAgIGJvcmRlci1jb2xvcjogIzAwMmY4NzsgfVxuICAgIC5yYWRpb3MgLm9wdGlvbl9faW5wdXQ6Y2hlY2tlZCArIC5vcHRpb25fX2xhYmVsICsgLm9wdGlvbl9faWNvbjpiZWZvcmUge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7IH1cblxuLmNoZWNrYm94ZXMgLm9wdGlvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuY2hlY2tib3hlcyAub3B0aW9uX19pY29uIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxcHg7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDIwcHg7XG4gICAgaGVpZ2h0OiAyMHB4O1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICM2Zjc3N2I7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMTUwbXMgY3ViaWMtYmV6aWVyKDAuNzcsIDAsIDAuMTc1LCAxKTtcbiAgICB6LWluZGV4OiAxOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gICAgICAuY2hlY2tib3hlcyAub3B0aW9uX19pY29uIHtcbiAgICAgICAgdG9wOiAycHg7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgIC5jaGVja2JveGVzIC5vcHRpb25fX2ljb24ge1xuICAgICAgICB0b3A6IDRweDsgfSB9XG4gICAgLmNoZWNrYm94ZXMgLm9wdGlvbl9faWNvbiBzdmcge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAtMnB4O1xuICAgICAgbGVmdDogLTJweDtcbiAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgaGVpZ2h0OiAyMHB4OyB9XG4gICAgLmNoZWNrYm94ZXMgLm9wdGlvbl9faWNvbiBzdmcgcGF0aCB7XG4gICAgICBmaWxsOiBub25lO1xuICAgICAgc3Ryb2tlOiAjMDAyZjg3O1xuICAgICAgc3Ryb2tlLXdpZHRoOiAyO1xuICAgICAgc3Ryb2tlLWxpbmVjYXA6IHJvdW5kO1xuICAgICAgc3Ryb2tlLWxpbmVqb2luOiByb3VuZDtcbiAgICAgIHN0cm9rZS1kYXNoYXJyYXk6IDcxcHg7XG4gICAgICBzdHJva2UtZGFzaG9mZnNldDogNzFweDtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjZzIGVhc2U7IH1cbiAgICAuY2hlY2tib3hlcyAub3B0aW9uX19pY29uIHN2ZyBwb2x5bGluZSB7XG4gICAgICBmaWxsOiBub25lO1xuICAgICAgc3Ryb2tlOiAjZmZmO1xuICAgICAgc3Ryb2tlLXdpZHRoOiAyO1xuICAgICAgc3Ryb2tlLWxpbmVjYXA6IHJvdW5kO1xuICAgICAgc3Ryb2tlLWxpbmVqb2luOiByb3VuZDtcbiAgICAgIHN0cm9rZS1kYXNoYXJyYXk6IDE4cHg7XG4gICAgICBzdHJva2UtZGFzaG9mZnNldDogMThweDtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7IH1cbiAgLmNoZWNrYm94ZXMgLm9wdGlvbl9fbGFiZWwge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZy1sZWZ0OiAyOHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHotaW5kZXg6IDI7IH1cbiAgLmNoZWNrYm94ZXMgLm9wdGlvbl9faW5wdXQ6Zm9jdXMgKyAub3B0aW9uX19sYWJlbCArIC5vcHRpb25fX2ljb24ge1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDRweCByZ2JhKDAsIDQ3LCAxMzUsIDAuMTYpOyB9XG4gICAgLmNoZWNrYm94ZXMgLm9wdGlvbl9faW5wdXQ6Zm9jdXMgKyAub3B0aW9uX19sYWJlbCArIC5vcHRpb25fX2ljb24gc3ZnIHBhdGgge1xuICAgICAgc3Ryb2tlLWRhc2hvZmZzZXQ6IDA7IH1cbiAgLmNoZWNrYm94ZXMgLm9wdGlvbjpob3ZlciAub3B0aW9uX19pY29uIHtcbiAgICBib3gtc2hhZG93OiAwIDAgMCA0cHggI2YyZjRmOTsgfVxuICAgIC5jaGVja2JveGVzIC5vcHRpb246aG92ZXIgLm9wdGlvbl9faWNvbiBzdmcgcGF0aCB7XG4gICAgICBzdHJva2UtZGFzaG9mZnNldDogMDsgfVxuICAuY2hlY2tib3hlcyAub3B0aW9uX19pbnB1dDpjaGVja2VkICsgLm9wdGlvbl9fbGFiZWwgKyAub3B0aW9uX19pY29uIHtcbiAgICBib3JkZXItY29sb3I6ICMwMDJmODc7IH1cbiAgICAuY2hlY2tib3hlcyAub3B0aW9uX19pbnB1dDpjaGVja2VkICsgLm9wdGlvbl9fbGFiZWwgKyAub3B0aW9uX19pY29uIHN2ZyBwYXRoIHtcbiAgICAgIGZpbGw6ICMwMDJmODc7IH1cbiAgICAuY2hlY2tib3hlcyAub3B0aW9uX19pbnB1dDpjaGVja2VkICsgLm9wdGlvbl9fbGFiZWwgKyAub3B0aW9uX19pY29uIHN2ZyBwb2x5bGluZSB7XG4gICAgICBzdHJva2UtZGFzaG9mZnNldDogMDsgfVxuXG5pbnB1dCB7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogOHB4O1xuICBib3JkZXI6IDJweCBzb2xpZCAjNmY3NzdiO1xuICB0cmFuc2l0aW9uOiBib3JkZXIgMTUwbXMgY3ViaWMtYmV6aWVyKDAuNzcsIDAsIDAuMTc1LCAxKSwgYm94LXNoYWRvdyAxNTBtcyBjdWJpYy1iZXppZXIoMC43NywgMCwgMC4xNzUsIDEpOyB9XG4gIGlucHV0OmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICMwMDJmODc7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgNHB4IHJnYmEoMCwgNDcsIDEzNSwgMC4xNik7XG4gICAgb3V0bGluZTogMDsgfVxuICBpbnB1dDpob3ZlciB7XG4gICAgYm9yZGVyLWNvbG9yOiAjMDAyZjg3OyB9XG5cbmlucHV0W3R5cGU9J3NlYXJjaCddIHtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMDsgfVxuXG5pbnB1dFt0eXBlPSdudW1iZXInXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbmlucHV0W3R5cGU9J251bWJlciddOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgbWFyZ2luOiAwOyB9XG5cbnRleHRhcmVhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4taGVpZ2h0OiAxMjhweDtcbiAgcGFkZGluZzogOHB4O1xuICBib3JkZXI6IDJweCBzb2xpZCAjNmY3NzdiO1xuICByZXNpemU6IHZlcnRpY2FsO1xuICB0cmFuc2l0aW9uOiBib3JkZXIgMTUwbXMgY3ViaWMtYmV6aWVyKDAuNzcsIDAsIDAuMTc1LCAxKSwgYm94LXNoYWRvdyAxNTBtcyBjdWJpYy1iZXppZXIoMC43NywgMCwgMC4xNzUsIDEpOyB9XG4gIHRleHRhcmVhOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICMwMDJmODc7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgNHB4IHJnYmEoMCwgNDcsIDEzNSwgMC4xNik7XG4gICAgb3V0bGluZTogMDsgfVxuICB0ZXh0YXJlYTpob3ZlciB7XG4gICAgYm9yZGVyLWNvbG9yOiAjMDAyZjg3OyB9XG5cbmFkZHJlc3Mge1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIG1hcmdpbjogMCAwIDE0cHg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gICAgYWRkcmVzcyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxNnB4OyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgIGFkZHJlc3Mge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTlweDsgfSB9XG5cbi53cmFwcGVyIHtcbiAgcGFkZGluZzogMCAzMnB4O1xuICBtYXJnaW46IDA7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAgIC53cmFwcGVyIHtcbiAgICAgIHBhZGRpbmc6IDAgNjRweDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxNDQwcHgpIHtcbiAgICAud3JhcHBlciB7XG4gICAgICB3aWR0aDogMTE0MHB4O1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIG1hcmdpbjogMCBhdXRvOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDE2ODBweCkge1xuICAgIC53cmFwcGVyIHtcbiAgICAgIHdpZHRoOiAxMjgwcHg7IH0gfVxuXG4uaGVhZGVyLWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgYWxpZ24tY29udGVudDogc3RyZXRjaDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA2OHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3gtc2hhZG93OiAwIDFweCAwIDAgcmdiYSgxMTEsIDExOSwgMTIzLCAwLjI1KTtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAzMDBtcyBjdWJpYy1iZXppZXIoMC43NywgMCwgMC4xNzUsIDEpO1xuICB6LWluZGV4OiAxMDAwMDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICAuaGVhZGVyLWNvbnRhaW5lciB7XG4gICAgICBoZWlnaHQ6IDg0cHg7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgLmhlYWRlci1jb250YWluZXIge1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBoZWlnaHQ6IDgwcHg7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBmb250LXNpemU6IDE2cHg7IH0gfVxuICAuaGVhZGVyLWNvbnRhaW5lciArICoge1xuICAgIG1hcmdpbi10b3A6IDY4cHg7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICAgIC5oZWFkZXItY29udGFpbmVyICsgKiB7XG4gICAgICAgIG1hcmdpbi10b3A6IDg0cHg7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgIC5oZWFkZXItY29udGFpbmVyICsgKiB7XG4gICAgICAgIG1hcmdpbi10b3A6IDE2MHB4OyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTM2NnB4KSB7XG4gICAgICAuaGVhZGVyLWNvbnRhaW5lciArICoge1xuICAgICAgICBtYXJnaW4tdG9wOiA4MHB4OyB9IH1cbiAgLmhlYWRlci1jb250YWluZXIgLmFjdGlvbnMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgLmhlYWRlci1jb250YWluZXIgLmFjdGlvbnMge1xuICAgICAgICB3aWR0aDogYXV0bzsgfSB9XG4gIC5oZWFkZXItY29udGFpbmVyIC5wYW5lbCB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIHRyYW5zaXRpb246IHZpc2liaWxpdHkgMzAwbXMgY3ViaWMtYmV6aWVyKDAuNzcsIDAsIDAuMTc1LCAxKSwgdHJhbnNmb3JtIDMwMG1zIGN1YmljLWJlemllcigwLjc3LCAwLCAwLjE3NSwgMSk7XG4gICAgei1pbmRleDogMTAwMDI7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICAgIC5oZWFkZXItY29udGFpbmVyIC5wYW5lbCB7XG4gICAgICAgIGJveC1zaGFkb3c6IC0ycHggMCA4cHggMCByZ2JhKDExMSwgMTE5LCAxMjMsIDAuMjUpOyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAuaGVhZGVyLWNvbnRhaW5lciAucGFuZWwge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgei1pbmRleDogYXV0bzsgfSB9XG4gICAgLmhlYWRlci1jb250YWluZXIgLnBhbmVsLS1tZW51IHtcbiAgICAgIGxlZnQ6IDEwMCU7XG4gICAgICBwYWRkaW5nOiA2NHB4IDMycHggMzJweDtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICB6LWluZGV4OiAxMDAwMjsgfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgICAuaGVhZGVyLWNvbnRhaW5lciAucGFuZWwtLW1lbnUge1xuICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfSB9XG4gICAgICAuaGVhZGVyLWNvbnRhaW5lciAucGFuZWwtLW1lbnUucGFuZWwtLWFjdGl2ZSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG4gICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cbiAgICAuaGVhZGVyLWNvbnRhaW5lciAucGFuZWwtLXNlYXJjaCB7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y2ZjZmNjtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgICAgLmhlYWRlci1jb250YWluZXIgLnBhbmVsLS1zZWFyY2gge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IDEwMCU7XG4gICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGZsZXg6IDIgMCBhdXRvO1xuICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMTExLCAxMTksIDEyMywgMC4xNSk7XG4gICAgICAgICAgYm94LXNoYWRvdzogMCAycHggOHB4IDAgcmdiYSgxMTEsIDExOSwgMTIzLCAwLjI1KTtcbiAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7IH0gfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDEzNjZweCkge1xuICAgICAgICAuaGVhZGVyLWNvbnRhaW5lciAucGFuZWwtLXNlYXJjaCB7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxNnB4O1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICBib3gtc2hhZG93OiBub25lOyB9IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDEzNjVweCkgYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAuaGVhZGVyLWNvbnRhaW5lciAucGFuZWwtLXNlYXJjaCB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuICAgICAgLmhlYWRlci1jb250YWluZXIgLnBhbmVsLS1zZWFyY2gucGFuZWwtLWFjdGl2ZSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSk7IH1cbiAgICAuaGVhZGVyLWNvbnRhaW5lciAucGFuZWwtLXN1Z2dlc3Rpb25zIHtcbiAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgICBwYWRkaW5nOiAxMDBweCAzMnB4IDMycHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIHotaW5kZXg6IDEwMDsgfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gICAgICAgIC5oZWFkZXItY29udGFpbmVyIC5wYW5lbC0tc3VnZ2VzdGlvbnMge1xuICAgICAgICAgIHBhZGRpbmc6IDE0OHB4IDcycHggNjRweDsgfSB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAgIC5oZWFkZXItY29udGFpbmVyIC5wYW5lbC0tc3VnZ2VzdGlvbnMge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IDEwMCU7XG4gICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBtaW4td2lkdGg6IDQ4MHB4O1xuICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICBtYXgtaGVpZ2h0OiA3NXZoO1xuICAgICAgICAgIHBhZGRpbmc6IDY0cHg7XG4gICAgICAgICAgbWFyZ2luLXRvcDogNHB4O1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgICAgIGJveC1zaGFkb3c6IDAgMnB4IDhweCAwIHJnYmEoMTExLCAxMTksIDEyMywgMC4yNSk7XG4gICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTE2cHgpO1xuICAgICAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHksIHRyYW5zZm9ybSwgdmlzaWJpbGl0eTtcbiAgICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA3MG1zLCAyNTBtcywgMjUwbXM7XG4gICAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhciwgY3ViaWMtYmV6aWVyKDAuMjMsIDEsIDAuMzIsIDEpO1xuICAgICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDI1bXMsIDUwbXMsIDBtcztcbiAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgICAgb3ZlcmZsb3cteTogc2Nyb2xsOyB9IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgICAgLmhlYWRlci1jb250YWluZXIgLnBhbmVsLS1zdWdnZXN0aW9ucy5wYW5lbC0tYWN0aXZlIHtcbiAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDEwMG1zLCAxNTBtcywgMjVtcztcbiAgICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAzNW1zLCA1MG1zLCAyNW1zOyB9IH1cblxuLmNvbnRlbnQtY29udGFpbmVyIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAuY29udGVudC1jb250YWluZXIgLnBhbmVsIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiAwO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgdHJhbnNpdGlvbjogdmlzaWJpbGl0eSAzMDBtcyBjdWJpYy1iZXppZXIoMC43NywgMCwgMC4xNzUsIDEpLCB0cmFuc2Zvcm0gMzAwbXMgY3ViaWMtYmV6aWVyKDAuNzcsIDAsIDAuMTc1LCAxKTtcbiAgICB6LWluZGV4OiAxMDAwMjsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAgICAgLmNvbnRlbnQtY29udGFpbmVyIC5wYW5lbCB7XG4gICAgICAgIGJveC1zaGFkb3c6IC0ycHggMCA4cHggMCByZ2JhKDExMSwgMTE5LCAxMjMsIDAuMjUpOyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAuY29udGVudC1jb250YWluZXIgLnBhbmVsIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0b3A6IGF1dG87XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgICAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIHotaW5kZXg6IGF1dG87IH0gfVxuICAgIC5jb250ZW50LWNvbnRhaW5lciAucGFuZWwtLXNlY29uZGFyeS1tZW51IHtcbiAgICAgIGxlZnQ6IDEwMCU7XG4gICAgICBwYWRkaW5nOiA2NHB4IDMycHggMzJweDtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICB6LWluZGV4OiAxMDAwMjsgfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gICAgICAgIC5jb250ZW50LWNvbnRhaW5lciAucGFuZWwtLXNlY29uZGFyeS1tZW51IHtcbiAgICAgICAgICB3aWR0aDogNTAlOyB9IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgICAgLmNvbnRlbnQtY29udGFpbmVyIC5wYW5lbC0tc2Vjb25kYXJ5LW1lbnUge1xuICAgICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfSB9XG4gICAgICAuY29udGVudC1jb250YWluZXIgLnBhbmVsLS1zZWNvbmRhcnktbWVudS5wYW5lbC0tYWN0aXZlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuICAgIC5jb250ZW50LWNvbnRhaW5lciAucGFuZWwtLWNvbnRleHR1YWwtbWVudSB7XG4gICAgICB0b3A6IGF1dG87XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgcGFkZGluZzogMzJweDtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7XG4gICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICB6LWluZGV4OiAxOyB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICAgICAgLmNvbnRlbnQtY29udGFpbmVyIC5wYW5lbC0tY29udGV4dHVhbC1tZW51IHtcbiAgICAgICAgICBwYWRkaW5nOiA2NHB4OyB9IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgICAgLmNvbnRlbnQtY29udGFpbmVyIC5wYW5lbC0tY29udGV4dHVhbC1tZW51IHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiAxMDAlO1xuICAgICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgYm90dG9tOiBhdXRvO1xuICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICBwYWRkaW5nOiAzMnB4O1xuICAgICAgICAgIG1hcmdpbi10b3A6IC0zMnB4O1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgxMTEsIDExOSwgMTIzLCAwLjI1KTtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICAgICAgYm94LXNoYWRvdzogMCAycHggNHB4IHJnYmEoMjQsIDI1LCAyNSwgMC4xKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTE2cHgpO1xuICAgICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMTUwbXMgY3ViaWMtYmV6aWVyKDAuNzcsIDAsIDAuMTc1LCAxKSwgdmlzaWJpbGl0eSAxNTBtcyBjdWJpYy1iZXppZXIoMC43NywgMCwgMC4xNzUsIDEpLCB0cmFuc2Zvcm0gMTUwbXMgY3ViaWMtYmV6aWVyKDAuNzcsIDAsIDAuMTc1LCAxKTsgfSB9XG4gICAgICAuY29udGVudC1jb250YWluZXIgLnBhbmVsLS1jb250ZXh0dWFsLW1lbnUucGFuZWwtLWFjdGl2ZSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwJSk7XG4gICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgIHotaW5kZXg6IDEwMDAyOyB9XG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgICAgICAuY29udGVudC1jb250YWluZXIgLnBhbmVsLS1jb250ZXh0dWFsLW1lbnUucGFuZWwtLWFjdGl2ZSB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOyB9IH1cbiAgICAgIC5jb250ZW50LWNvbnRhaW5lciAucGFuZWwtLWNvbnRleHR1YWwtbWVudSAubGlua3Mge1xuICAgICAgICBtYXJnaW46IDA7IH1cbiAgICAgICAgLmNvbnRlbnQtY29udGFpbmVyIC5wYW5lbC0tY29udGV4dHVhbC1tZW51IC5saW5rc19faXRlbSB7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjY2NjZmQxOyB9XG4gICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgICAgICAgLmNvbnRlbnQtY29udGFpbmVyIC5wYW5lbC0tY29udGV4dHVhbC1tZW51IC5saW5rc19faXRlbSB7XG4gICAgICAgICAgICAgIG1hcmdpbi10b3A6IDE5cHg7XG4gICAgICAgICAgICAgIGJvcmRlci10b3A6IDA7IH0gfVxuICAgICAgICAgIC5jb250ZW50LWNvbnRhaW5lciAucGFuZWwtLWNvbnRleHR1YWwtbWVudSAubGlua3NfX2l0ZW06Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogMDsgfVxuICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgICAgICAgICAuY29udGVudC1jb250YWluZXIgLnBhbmVsLS1jb250ZXh0dWFsLW1lbnUgLmxpbmtzX19pdGVtOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwOyB9IH1cbiAgICAgICAgLmNvbnRlbnQtY29udGFpbmVyIC5wYW5lbC0tY29udGV4dHVhbC1tZW51IC5saW5rc19faXRlbSBhIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBwYWRkaW5nOiAxNnB4IDA7IH1cbiAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAgICAgICAuY29udGVudC1jb250YWluZXIgLnBhbmVsLS1jb250ZXh0dWFsLW1lbnUgLmxpbmtzX19pdGVtIGEge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IGluaGVyaXQ7IH0gfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgICAuY29udGVudC1jb250YWluZXIgLnBhbmVsLS1jb250ZXh0dWFsLW1lbnUgLmJ1dHRvbiwgLmNvbnRlbnQtY29udGFpbmVyIC5wYW5lbC0tY29udGV4dHVhbC1tZW51IC50b2dnbGUsIC5jb250ZW50LWNvbnRhaW5lciAucGFuZWwtLWNvbnRleHR1YWwtbWVudSAucGFuZWwtZ3JvdXBfX3RvZ2dsZSwgLmNvbnRlbnQtY29udGFpbmVyIC5wYW5lbC0tY29udGV4dHVhbC1tZW51IC5hbGVydF9fZGlzbWlzcywgLmNvbnRlbnQtY29udGFpbmVyIC5wYW5lbC0tY29udGV4dHVhbC1tZW51IC5jYXJkX19hY3Rpb24sIC5jb250ZW50LWNvbnRhaW5lciAucGFuZWwtLWNvbnRleHR1YWwtbWVudSAuc2hvdF9fYnV0dG9uIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgICAuY29udGVudC1jb250YWluZXIgLnBhbmVsLS1ob21lLXN1Z2dlc3Rpb25zIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMTAwJTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIHBhZGRpbmc6IDMycHg7XG4gICAgICBtYXJnaW4tdG9wOiA0cHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgYm94LXNoYWRvdzogMCAycHggOHB4IDAgcmdiYSgxMTEsIDExOSwgMTIzLCAwLjI1KTtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTE2cHgpO1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eSwgdHJhbnNmb3JtLCB2aXNpYmlsaXR5O1xuICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNzBtcywgMjUwbXMsIDI1MG1zO1xuICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhciwgY3ViaWMtYmV6aWVyKDAuMjMsIDEsIDAuMzIsIDEpO1xuICAgICAgdHJhbnNpdGlvbi1kZWxheTogMjVtcywgNTBtcywgMG1zO1xuICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgei1pbmRleDogMTAwOyB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICAgICAgLmNvbnRlbnQtY29udGFpbmVyIC5wYW5lbC0taG9tZS1zdWdnZXN0aW9ucyB7XG4gICAgICAgICAgcGFkZGluZzogNDhweDsgfSB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAgIC5jb250ZW50LWNvbnRhaW5lciAucGFuZWwtLWhvbWUtc3VnZ2VzdGlvbnMge1xuICAgICAgICAgIG1pbi13aWR0aDogNDgwcHg7XG4gICAgICAgICAgbWF4LWhlaWdodDogNzV2aDtcbiAgICAgICAgICBwYWRkaW5nOiA0OHB4O1xuICAgICAgICAgIG92ZXJmbG93LXk6IHNjcm9sbDsgfSB9XG4gICAgICAuY29udGVudC1jb250YWluZXIgLnBhbmVsLS1ob21lLXN1Z2dlc3Rpb25zLnBhbmVsLS1hY3RpdmUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDEwMG1zLCAxNTBtcywgMjVtcztcbiAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMzVtcywgNTBtcywgMjVtczsgfVxuXG4uZm9vdGVyLWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogMzJweCAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDcyMjM1O1xuICBib3JkZXItdG9wOiAycHggc29saWQgI2FlOTM2YztcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAycHggMCAwICNhZTkzNmM7XG4gIGNvbG9yOiAjZmZmOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAgIC5mb290ZXItY29udGFpbmVyIHtcbiAgICAgIHBhZGRpbmc6IDY0cHggMDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAuZm9vdGVyLWNvbnRhaW5lciB7XG4gICAgICBwYWRkaW5nOiAxMjhweCAwO1xuICAgICAgYm9yZGVyLXRvcDogNHB4IHNvbGlkICNhZTkzNmM7XG4gICAgICBib3gtc2hhZG93OiBpbnNldCAwIDRweCAwIDAgI2FlOTM2YzsgfSB9XG4gIC5mb290ZXItY29udGFpbmVyIGE6bGluayB7XG4gICAgY29sb3I6ICNmZmY7IH1cbiAgLmZvb3Rlci1jb250YWluZXIgYTp2aXNpdGVkIHtcbiAgICBjb2xvcjogI2ZmZjsgfVxuICAuZm9vdGVyLWNvbnRhaW5lciBhOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGEzMDRjO1xuICAgIGNvbG9yOiAjZmZmOyB9XG4gIC5mb290ZXItY29udGFpbmVyIGE6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmJmNDc7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgNHB4ICNmZmJmNDc7XG4gICAgY29sb3I6ICMwNzIyMzU7IH1cbiAgLmZvb3Rlci1jb250YWluZXIgYTphY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmJmNDc7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgNHB4ICNmZmJmNDc7XG4gICAgY29sb3I6ICMwNzIyMzU7IH1cbiAgLmZvb3Rlci1jb250YWluZXIgYVt0YXJnZXQ9J19ibGFuayddOmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGEzMDRjO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9pY29ucy9pX2V4dGVybmFsX3doaXRlLnN2Z1wiKTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTI4MHB4KSB7XG4gICAgLmZvb3Rlci1jb250YWluZXIgLnBhbmVsLWdyb3VwLS1hZGRpdGlvbmFsIC5wYW5lbF9fdGl0bGUgYSB7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTI4MHB4KSB7XG4gICAgLmZvb3Rlci1jb250YWluZXIgLnBhbmVsLWdyb3VwLS1hZGRpdGlvbmFsIC5wYW5lbF9fdGl0bGUgYTphZnRlciB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEyODBweCkge1xuICAgIC5mb290ZXItY29udGFpbmVyIC5wYW5lbC1ncm91cC0tYWRkaXRpb25hbCB7XG4gICAgICB3aWR0aDogNDkuMjE4NzUlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAgIC5mb290ZXItY29udGFpbmVyIC5wYW5lbC1ncm91cC0tYWRkaXRpb25hbCAubGlua3NfX2xpc3Qge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAgIC5mb290ZXItY29udGFpbmVyIC5wYW5lbC1ncm91cC0tYWRkaXRpb25hbCAubGlua3NfX2l0ZW0ge1xuICAgICAgd2lkdGg6IDQ4LjA3NjkyMzA3NjklOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gICAgLmZvb3Rlci1jb250YWluZXIgLnBhbmVsLWdyb3VwLS1hZGRpdGlvbmFsIC5saW5rc19faXRlbTpudGgtY2hpbGQoMikge1xuICAgICAgbWFyZ2luLXRvcDogMDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMjgwcHgpIHtcbiAgICAuZm9vdGVyLWNvbnRhaW5lciAucGFuZWwtZ3JvdXAtLWNvbW11bml0eSB7XG4gICAgICB3aWR0aDogMjMuNjcxODc1JTsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMjgwcHgpIHtcbiAgICAuZm9vdGVyLWNvbnRhaW5lciAucGFuZWwtZ3JvdXAtLWNvbW11bml0eSAucGFuZWxfX3RpdGxlIGEge1xuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgYm9yZGVyOiAwO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEyODBweCkge1xuICAgIC5mb290ZXItY29udGFpbmVyIC5wYW5lbC1ncm91cC0tY29tbXVuaXR5IC5wYW5lbF9fdGl0bGUgYTphZnRlciB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEyODBweCkge1xuICAgIC5mb290ZXItY29udGFpbmVyIC5wYW5lbC1ncm91cC0taGVscC1zdXBwb3J0IHtcbiAgICAgIHdpZHRoOiAyMy42NzE4NzUlOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEyODBweCkge1xuICAgIC5mb290ZXItY29udGFpbmVyIC5wYW5lbC1ncm91cC0taGVscC1zdXBwb3J0IC5wYW5lbF9fdGl0bGUgYSB7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTI4MHB4KSB7XG4gICAgLmZvb3Rlci1jb250YWluZXIgLnBhbmVsLWdyb3VwLS1oZWxwLXN1cHBvcnQgLnBhbmVsX190aXRsZSBhOmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTI4MHB4KSB7XG4gICAgLmZvb3Rlci1jb250YWluZXIgLnBhbmVsLWdyb3VwLS1sZWdhbCB7XG4gICAgICB3aWR0aDogYXV0bzsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMjgwcHgpIHtcbiAgICAuZm9vdGVyLWNvbnRhaW5lciAucGFuZWwtZ3JvdXAtLWxlZ2FsIC5wYW5lbF9fdGl0bGUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogLTEwMDAwcHg7XG4gICAgICB0b3A6IGF1dG87XG4gICAgICB3aWR0aDogMXB4O1xuICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEyODBweCkge1xuICAgIC5mb290ZXItY29udGFpbmVyIC5wYW5lbC1ncm91cC0tbGVnYWwgLnBhbmVsX19jb250ZW50IHtcbiAgICAgIG1hcmdpbi10b3A6IDA7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTI4MHB4KSB7XG4gICAgLmZvb3Rlci1jb250YWluZXIgLnBhbmVsLWdyb3VwLS1sZWdhbCAubGlua3NfX2l0ZW0ge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIG1hcmdpbi1yaWdodDogMTZweDsgfSB9XG4gIC5mb290ZXItY29udGFpbmVyIC5wYW5lbC1ncm91cC0tbGVnYWwgLmxpbmtzX19pdGVtOmZpcnN0LWNoaWxkIHtcbiAgICBmb250LXdlaWdodDogNjAwOyB9XG4gIC5mb290ZXItY29udGFpbmVyIC5saW5rc19faXRlbS0tZmFjZWJvb2sgYTpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9pY29ucy9pX3NvY2lhbC1mYWNlYm9va193aGl0ZS5zdmdcIik7IH1cbiAgLmZvb3Rlci1jb250YWluZXIgLmxpbmtzX19pdGVtLS10d2l0dGVyIGE6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvaWNvbnMvaV9zb2NpYWwtdHdpdHRlcl93aGl0ZS5zdmdcIik7IH1cbiAgLmZvb3Rlci1jb250YWluZXIgLmxpbmtzX19pdGVtLS1saW5rZWRpbiBhOmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2ljb25zL2lfc29jaWFsLWxpbmtlZGluX3doaXRlLnN2Z1wiKTsgfVxuICAuZm9vdGVyLWNvbnRhaW5lciAubGlua3NfX2l0ZW0tLXlvdXR1YmUgYTpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9pY29ucy9pX3NvY2lhbC15b3V0dWJlX3doaXRlLnN2Z1wiKTsgfVxuICAuZm9vdGVyLWNvbnRhaW5lciAubGlua3NfX2l0ZW0tLWVtYWlsIGE6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvaWNvbnMvaV9zb2NpYWwtZW1haWxfd2hpdGUuc3ZnXCIpOyB9XG4gIC5mb290ZXItY29udGFpbmVyIC5saW5rcy0tY29ubmVjdCB7XG4gICAgbWFyZ2luLXRvcDogMzJweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTI4MHB4KSB7XG4gICAgICAuZm9vdGVyLWNvbnRhaW5lciAubGlua3MtLWNvbm5lY3Qge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbjogMDsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDE0NDBweCkge1xuICAgICAgLmZvb3Rlci1jb250YWluZXIgLmxpbmtzLS1jb25uZWN0IHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgfSB9XG4gICAgLmZvb3Rlci1jb250YWluZXIgLmxpbmtzLS1jb25uZWN0IC5saW5rc19fdGl0bGUge1xuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gICAgICAgIC5mb290ZXItY29udGFpbmVyIC5saW5rcy0tY29ubmVjdCAubGlua3NfX3RpdGxlIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNnB4O1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDsgfSB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTI4MHB4KSB7XG4gICAgICAgIC5mb290ZXItY29udGFpbmVyIC5saW5rcy0tY29ubmVjdCAubGlua3NfX3RpdGxlIHtcbiAgICAgICAgICBtYXJnaW46IDAgMTZweCAwIDA7XG4gICAgICAgICAgZm9udC1zaXplOiAxNnB4OyB9IH1cbiAgICAgIC5mb290ZXItY29udGFpbmVyIC5saW5rcy0tY29ubmVjdCAubGlua3NfX3RpdGxlOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJzonOyB9XG4gICAgLmZvb3Rlci1jb250YWluZXIgLmxpbmtzLS1jb25uZWN0IC5saW5rc19fbGlzdCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgZm9udC1zaXplOiAwO1xuICAgICAgbGluZS1oZWlnaHQ6IDA7IH1cbiAgICAuZm9vdGVyLWNvbnRhaW5lciAubGlua3MtLWNvbm5lY3QgLmxpbmtzX19pdGVtIHtcbiAgICAgIHdpZHRoOiAzMnB4O1xuICAgICAgaGVpZ2h0OiAzMnB4O1xuICAgICAgbWFyZ2luOiAwIDhweDsgfVxuICAgIC5mb290ZXItY29udGFpbmVyIC5saW5rcy0tY29ubmVjdCAubGlua3NfX2l0ZW0gYSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIG1hcmdpbjogMDsgfVxuICAgICAgLmZvb3Rlci1jb250YWluZXIgLmxpbmtzLS1jb25uZWN0IC5saW5rc19faXRlbSBhOmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgLmZvb3Rlci1jb250YWluZXIgLmxpbmtzLS1sYW5ndWFnZXMge1xuICAgIG1hcmdpbi10b3A6IDMycHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEyODBweCkge1xuICAgICAgLmZvb3Rlci1jb250YWluZXIgLmxpbmtzLS1sYW5ndWFnZXMge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luOiAwOyB9IH1cbiAgICAuZm9vdGVyLWNvbnRhaW5lciAubGlua3MtLWxhbmd1YWdlcyAubGlua3NfX3RpdGxlIHtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICBmb250LXNpemU6IDE2cHg7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMjc5cHgpIHtcbiAgICAgICAgLmZvb3Rlci1jb250YWluZXIgLmxpbmtzLS1sYW5ndWFnZXMgLmxpbmtzX190aXRsZSB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTI4MHB4KSB7XG4gICAgICAgIC5mb290ZXItY29udGFpbmVyIC5saW5rcy0tbGFuZ3VhZ2VzIC5saW5rc19fdGl0bGUge1xuICAgICAgICAgIG1hcmdpbjogMCAxNnB4IDAgMDsgfSB9XG4gICAgICAuZm9vdGVyLWNvbnRhaW5lciAubGlua3MtLWxhbmd1YWdlcyAubGlua3NfX3RpdGxlOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJzonOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDEyNzlweCkge1xuICAgICAgLmZvb3Rlci1jb250YWluZXIgLmxpbmtzLS1sYW5ndWFnZXMgLmxpbmtzX19saXN0IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogMTI3OXB4KSB7XG4gICAgICAuZm9vdGVyLWNvbnRhaW5lciAubGlua3MtLWxhbmd1YWdlcyAubGlua3NfX2l0ZW0ge1xuICAgICAgICBmbGV4LWJhc2lzOiAzMCU7IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA2MzlweCkge1xuICAgICAgLmZvb3Rlci1jb250YWluZXIgLmxpbmtzLS1sYW5ndWFnZXMgLmxpbmtzX19pdGVtIHtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICBmbGV4LWJhc2lzOiA0MCU7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMjgwcHgpIHtcbiAgICAgIC5mb290ZXItY29udGFpbmVyIC5saW5rcy0tbGFuZ3VhZ2VzIC5saW5rc19faXRlbSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNnB4OyB9IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogMTI3OXB4KSB7XG4gICAgICAuZm9vdGVyLWNvbnRhaW5lciAubGlua3MtLWxhbmd1YWdlcyAubGlua3NfX2l0ZW06Zmlyc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tdG9wOiAxNnB4OyB9IH1cbiAgLmZvb3Rlci1jb250YWluZXIgLnByaW1hcnkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIG1hcmdpbi10b3A6IDE2cHg7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTI4MHB4KSB7XG4gICAgICAuZm9vdGVyLWNvbnRhaW5lciAucHJpbWFyeSB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDY0cHg7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7IH0gfVxuICAuZm9vdGVyLWNvbnRhaW5lciAuc2Vjb25kYXJ5IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgbWFyZ2luLWJvdHRvbTogMTZweDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMjgwcHgpIHtcbiAgICAgIC5mb290ZXItY29udGFpbmVyIC5zZWNvbmRhcnkge1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgICBwYWRkaW5nLXRvcDogNjRweDtcbiAgICAgICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICNhZTkzNmM7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEyODBweCkge1xuICAgICAgLmZvb3Rlci1jb250YWluZXIgLnNlY29uZGFyeTpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgd2lkdGg6IDEyNHB4O1xuICAgICAgICBoZWlnaHQ6IDI0cHg7XG4gICAgICAgIGJhY2tncm91bmQ6ICMwNzIyMzUgdXJsKFwiLi4vaW1nL2dyYXBoaWNzL2dfc3RhcnMuc3ZnXCIpIG5vLXJlcGVhdCA1MCUgNTAlLzgwcHggYXV0bztcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNTAlLCAtNTAlLCAwKTsgfSB9XG4gICAgLmZvb3Rlci1jb250YWluZXIgLnNlY29uZGFyeSAubG9nbyB7XG4gICAgICBvcmRlcjogMjsgfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDEyODBweCkge1xuICAgICAgICAuZm9vdGVyLWNvbnRhaW5lciAuc2Vjb25kYXJ5IC5sb2dvIHtcbiAgICAgICAgICBvcmRlcjogMTsgfSB9XG4gICAgLmZvb3Rlci1jb250YWluZXIgLnNlY29uZGFyeSAubGlua3Mge1xuICAgICAgb3JkZXI6IDE7IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMjgwcHgpIHtcbiAgICAgICAgLmZvb3Rlci1jb250YWluZXIgLnNlY29uZGFyeSAubGlua3Mge1xuICAgICAgICAgIG9yZGVyOiAyOyB9IH1cbiAgICAuZm9vdGVyLWNvbnRhaW5lciAuc2Vjb25kYXJ5IC5jb3B5cmlnaHQge1xuICAgICAgb3JkZXI6IDM7IH1cbiAgLmZvb3Rlci1jb250YWluZXIgLmxhbmd1YWdlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgbWFyZ2luLWJvdHRvbTogMTZweDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMjgwcHgpIHtcbiAgICAgIC5mb290ZXItY29udGFpbmVyIC5sYW5ndWFnZSB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDsgfSB9XG5cbi56b25lcyB7XG4gIG1hcmdpbi1ib3R0b206IDQ4cHg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gICAgLnpvbmVzIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDk2cHg7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTI4MHB4KSB7XG4gICAgLnpvbmVzIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBtYXJnaW4tYm90dG9tOiAxMjhweDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMjgwcHgpIHtcbiAgICAuem9uZXMgPiAud3JhcHBlciB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEyODBweCkge1xuICAgIC56b25lc1tkYXRhLWNvbHVtbnM9JzInXSAuem9uZSwgLnpvbmVzLmJhbmQtLWNhbGxvdXQgLnpvbmUge1xuICAgICAgd2lkdGg6IDIzLjY3MTg3NSU7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTI4MHB4KSB7XG4gICAgLnpvbmVzW2RhdGEtY29sdW1ucz0nMiddIC56b25lOmZpcnN0LWNoaWxkLCAuem9uZXMuYmFuZC0tY2FsbG91dCAuem9uZTpmaXJzdC1jaGlsZCB7XG4gICAgICB3aWR0aDogNjYuMDkzNzUlOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEyODBweCkge1xuICAgIC56b25lc1tkYXRhLWNvbHVtbnM9JzInXVtkYXRhLWxheW91dC1yZXZlcnNlXSAuem9uZSwgLnpvbmVzLmJhbmQtLWNhbGxvdXRbZGF0YS1sYXlvdXQtcmV2ZXJzZV0gLnpvbmUge1xuICAgICAgd2lkdGg6IDY2LjA5Mzc1JTsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMjgwcHgpIHtcbiAgICAuem9uZXNbZGF0YS1jb2x1bW5zPScyJ11bZGF0YS1sYXlvdXQtcmV2ZXJzZV0gLnpvbmU6Zmlyc3QtY2hpbGQsIC56b25lcy5iYW5kLS1jYWxsb3V0W2RhdGEtbGF5b3V0LXJldmVyc2VdIC56b25lOmZpcnN0LWNoaWxkIHtcbiAgICAgIHdpZHRoOiAyMy42NzE4NzUlOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEyODBweCkge1xuICAgIC56b25lc1tkYXRhLWNvbHVtbnM9JzMnXSAuem9uZSB7XG4gICAgICB3aWR0aDogMTUuNjI1JTtcbiAgICAgIG9yZGVyOiAxOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEyODBweCkge1xuICAgIC56b25lc1tkYXRhLWNvbHVtbnM9JzMnXSAuem9uZTpmaXJzdC1jaGlsZCB7XG4gICAgICB3aWR0aDogNDkuMjE4NzUlO1xuICAgICAgb3JkZXI6IDI7IH0gfVxuICAuem9uZXNbZGF0YS1jb2x1bW5zPSczJ10gLnpvbmU6Zmlyc3QtY2hpbGQgKyAuem9uZSB7XG4gICAgcGFkZGluZy10b3A6IDMycHg7XG4gICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICMxODE5MTk7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICAgIC56b25lc1tkYXRhLWNvbHVtbnM9JzMnXSAuem9uZTpmaXJzdC1jaGlsZCArIC56b25lIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDQ4cHg7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMjgwcHgpIHtcbiAgICAgIC56b25lc1tkYXRhLWNvbHVtbnM9JzMnXSAuem9uZTpmaXJzdC1jaGlsZCArIC56b25lIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgIGJvcmRlci10b3A6IDA7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgLnpvbmVzW2RhdGEtY29sdW1ucz0nMyddIC56b25lOmZpcnN0LWNoaWxkIC5iYW5kIHtcbiAgICAgIHBhZGRpbmc6IDY0cHggMCAwOyB9IH1cbiAgLnpvbmVzW2RhdGEtY29sdW1ucz0nMyddIC56b25lOmZpcnN0LWNoaWxkIC5iYW5kOmZpcnN0LWNoaWxkIHtcbiAgICBwYWRkaW5nOiAwOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAuem9uZXNbZGF0YS1jb2x1bW5zPSczJ10gLnpvbmU6Zmlyc3QtY2hpbGQgLmJhbmQ6b25seS1jaGlsZCB7XG4gICAgICBwYWRkaW5nOiAwIDAgNjRweDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMjgwcHgpIHtcbiAgICAuem9uZXNbZGF0YS1jb2x1bW5zPSczJ10gLnpvbmU6bGFzdC1jaGlsZCB7XG4gICAgICBvcmRlcjogMzsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMjgwcHgpIHtcbiAgICAuem9uZXNbZGF0YS1jb2x1bW5zPSczJ11bZGF0YS1sYXlvdXQtY29tcGFjdF0gLnpvbmUge1xuICAgICAgd2lkdGg6IDE5LjkyMTg3NSU7XG4gICAgICBvcmRlcjogMTsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMjgwcHgpIHtcbiAgICAuem9uZXNbZGF0YS1jb2x1bW5zPSczJ11bZGF0YS1sYXlvdXQtY29tcGFjdF0gLnpvbmU6Zmlyc3QtY2hpbGQge1xuICAgICAgd2lkdGg6IDQ5LjIxODc1JTtcbiAgICAgIG9yZGVyOiAyOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEyODBweCkge1xuICAgIC56b25lc1tkYXRhLWNvbHVtbnM9JzMnXVtkYXRhLWxheW91dC1jb21wYWN0XSAuem9uZTpsYXN0LWNoaWxkIHtcbiAgICAgIG9yZGVyOiAzOyB9IH1cbiAgLnpvbmVzW2RhdGEtY29sdW1ucz0nMyddW2RhdGEtbGF5b3V0LXBlb3BsZV0gPiAud3JhcHBlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEyODBweCkge1xuICAgICAgLnpvbmVzW2RhdGEtY29sdW1ucz0nMyddW2RhdGEtbGF5b3V0LXBlb3BsZV0gPiAud3JhcHBlciB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfSB9XG4gIC56b25lc1tkYXRhLWNvbHVtbnM9JzMnXVtkYXRhLWxheW91dC1wZW9wbGVdIC56b25lOmZpcnN0LWNoaWxkICsgLnpvbmUge1xuICAgIG9yZGVyOiAzO1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEyODBweCkge1xuICAgICAgLnpvbmVzW2RhdGEtY29sdW1ucz0nMyddW2RhdGEtbGF5b3V0LXBlb3BsZV0gLnpvbmU6Zmlyc3QtY2hpbGQgKyAuem9uZSB7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBvcmRlcjogMTsgfSB9XG4gIC56b25lc1tkYXRhLWNvbHVtbnM9JzMnXVtkYXRhLWxheW91dC1wZW9wbGVdIC56b25lOmZpcnN0LWNoaWxkIHtcbiAgICBvcmRlcjogMjtcbiAgICBtYXJnaW4tdG9wOiAzMnB4OyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEyODBweCkge1xuICAgICAgLnpvbmVzW2RhdGEtY29sdW1ucz0nMyddW2RhdGEtbGF5b3V0LXBlb3BsZV0gLnpvbmU6Zmlyc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tdG9wOiAwOyB9IH1cbiAgLnpvbmVzW2RhdGEtY29sdW1ucz0nMyddW2RhdGEtbGF5b3V0LXBlb3BsZV0gLnpvbmU6bGFzdC1jaGlsZCB7XG4gICAgb3JkZXI6IDE7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTI4MHB4KSB7XG4gICAgICAuem9uZXNbZGF0YS1jb2x1bW5zPSczJ11bZGF0YS1sYXlvdXQtcGVvcGxlXSAuem9uZTpsYXN0LWNoaWxkIHtcbiAgICAgICAgb3JkZXI6IDM7IH0gfVxuXG4uem9uZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tdG9wOiAzMnB4OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAgIC56b25lIHtcbiAgICAgIG1hcmdpbi10b3A6IDQ4cHg7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgLnpvbmUge1xuICAgICAgbWFyZ2luLXRvcDogNjRweDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMjgwcHgpIHtcbiAgICAuem9uZSB7XG4gICAgICBtYXJnaW4tdG9wOiAwOyB9IH1cbiAgLnpvbmU6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi10b3A6IDA7IH1cblxuLmJhbmQge1xuICBwYWRkaW5nOiAzMnB4IDAgMDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICAuYmFuZCB7XG4gICAgICBwYWRkaW5nOiA2NHB4IDAgMDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAuYmFuZCB7XG4gICAgICBwYWRkaW5nOiAxMjhweCAwIDA7IH0gfVxuICAuYmFuZDpmaXJzdC1jaGlsZCB7XG4gICAgcGFkZGluZzogMDsgfVxuICAuYmFuZDpvbmx5LWNoaWxkIHtcbiAgICBwYWRkaW5nOiAwIDAgMzJweDsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAgICAgLmJhbmQ6b25seS1jaGlsZCB7XG4gICAgICAgIHBhZGRpbmc6IDAgMCA2NHB4OyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAuYmFuZDpvbmx5LWNoaWxkIHtcbiAgICAgICAgcGFkZGluZzogMCAwIDEyOHB4OyB9IH1cbiAgLmJhbmRfX3RpdGxlIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAwOyB9XG4gIC5iYW5kX19mb290bm90ZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMTExLCAxMTksIDEyMywgMC4yKTtcbiAgICBjb2xvcjogIzZmNzc3YjtcbiAgICBtYXJnaW4tdG9wOiAxNnB4O1xuICAgIHBhZGRpbmctdG9wOiAxNnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICAgIC5iYW5kX19mb290bm90ZSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDI0cHg7XG4gICAgICAgIHBhZGRpbmctdG9wOiAyNHB4OyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAuYmFuZF9fZm9vdG5vdGUge1xuICAgICAgICBtYXJnaW4tdG9wOiAzMnB4O1xuICAgICAgICBwYWRkaW5nLXRvcDogMzJweDsgfSB9XG4gIC5iYW5kW2RhdGEtdGhlbWU9J29mZi13aGl0ZSddLCAuYmFuZC5iYW5kLS1jYWxsb3V0LCAuYmFuZC5iYW5kLS1mb290bm90ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y2ZjZmNjsgfVxuICAgIC5iYW5kW2RhdGEtdGhlbWU9J29mZi13aGl0ZSddIC5tZXRhLCAuYmFuZC5iYW5kLS1jYWxsb3V0IC5tZXRhLCAuYmFuZC5iYW5kLS1mb290bm90ZSAubWV0YSwgLmJhbmRbZGF0YS10aGVtZT0nb2ZmLXdoaXRlJ10gLmxpbmtzLS1zZWFyY2gtcXVpY2sgLmxpbmtzX190aXRsZSwgLmxpbmtzLS1zZWFyY2gtcXVpY2sgLmJhbmRbZGF0YS10aGVtZT0nb2ZmLXdoaXRlJ10gLmxpbmtzX190aXRsZSwgLmJhbmQuYmFuZC0tY2FsbG91dCAubGlua3MtLXNlYXJjaC1xdWljayAubGlua3NfX3RpdGxlLCAubGlua3MtLXNlYXJjaC1xdWljayAuYmFuZC5iYW5kLS1jYWxsb3V0IC5saW5rc19fdGl0bGUsIC5iYW5kLmJhbmQtLWZvb3Rub3RlIC5saW5rcy0tc2VhcmNoLXF1aWNrIC5saW5rc19fdGl0bGUsIC5saW5rcy0tc2VhcmNoLXF1aWNrIC5iYW5kLmJhbmQtLWZvb3Rub3RlIC5saW5rc19fdGl0bGUsIC5iYW5kW2RhdGEtdGhlbWU9J29mZi13aGl0ZSddIC5saW5rcy0tc2VhcmNoLXN1Z2dlc3QgLmxpbmtzX190aXRsZSwgLmxpbmtzLS1zZWFyY2gtc3VnZ2VzdCAuYmFuZFtkYXRhLXRoZW1lPSdvZmYtd2hpdGUnXSAubGlua3NfX3RpdGxlLCAuYmFuZC5iYW5kLS1jYWxsb3V0IC5saW5rcy0tc2VhcmNoLXN1Z2dlc3QgLmxpbmtzX190aXRsZSwgLmxpbmtzLS1zZWFyY2gtc3VnZ2VzdCAuYmFuZC5iYW5kLS1jYWxsb3V0IC5saW5rc19fdGl0bGUsIC5iYW5kLmJhbmQtLWZvb3Rub3RlIC5saW5rcy0tc2VhcmNoLXN1Z2dlc3QgLmxpbmtzX190aXRsZSwgLmxpbmtzLS1zZWFyY2gtc3VnZ2VzdCAuYmFuZC5iYW5kLS1mb290bm90ZSAubGlua3NfX3RpdGxlLCAuYmFuZFtkYXRhLXRoZW1lPSdvZmYtd2hpdGUnXSAubGlua3MtLXNlYXJjaC10b3AgLmxpbmtzX190aXRsZSwgLmxpbmtzLS1zZWFyY2gtdG9wIC5iYW5kW2RhdGEtdGhlbWU9J29mZi13aGl0ZSddIC5saW5rc19fdGl0bGUsIC5iYW5kLmJhbmQtLWNhbGxvdXQgLmxpbmtzLS1zZWFyY2gtdG9wIC5saW5rc19fdGl0bGUsIC5saW5rcy0tc2VhcmNoLXRvcCAuYmFuZC5iYW5kLS1jYWxsb3V0IC5saW5rc19fdGl0bGUsIC5iYW5kLmJhbmQtLWZvb3Rub3RlIC5saW5rcy0tc2VhcmNoLXRvcCAubGlua3NfX3RpdGxlLCAubGlua3MtLXNlYXJjaC10b3AgLmJhbmQuYmFuZC0tZm9vdG5vdGUgLmxpbmtzX190aXRsZSwgLmJhbmRbZGF0YS10aGVtZT0nb2ZmLXdoaXRlJ10gLmxpc3QtLXJlY29nbml0aW9uIC5pdGVtX19tZXRhLCAubGlzdC0tcmVjb2duaXRpb24gLmJhbmRbZGF0YS10aGVtZT0nb2ZmLXdoaXRlJ10gLml0ZW1fX21ldGEsIC5iYW5kLmJhbmQtLWNhbGxvdXQgLmxpc3QtLXJlY29nbml0aW9uIC5pdGVtX19tZXRhLCAubGlzdC0tcmVjb2duaXRpb24gLmJhbmQuYmFuZC0tY2FsbG91dCAuaXRlbV9fbWV0YSwgLmJhbmQuYmFuZC0tZm9vdG5vdGUgLmxpc3QtLXJlY29nbml0aW9uIC5pdGVtX19tZXRhLCAubGlzdC0tcmVjb2duaXRpb24gLmJhbmQuYmFuZC0tZm9vdG5vdGUgLml0ZW1fX21ldGEsIC5iYW5kW2RhdGEtdGhlbWU9J29mZi13aGl0ZSddIC5jbG9zaW5nX19tZXRhLCAuYmFuZC5iYW5kLS1jYWxsb3V0IC5jbG9zaW5nX19tZXRhLCAuYmFuZC5iYW5kLS1mb290bm90ZSAuY2xvc2luZ19fbWV0YSwgLmJhbmRbZGF0YS10aGVtZT0nb2ZmLXdoaXRlJ10gLmNoaXBfX2xhYmVsLCAuYmFuZC5iYW5kLS1jYWxsb3V0IC5jaGlwX19sYWJlbCwgLmJhbmQuYmFuZC0tZm9vdG5vdGUgLmNoaXBfX2xhYmVsLCAuYmFuZFtkYXRhLXRoZW1lPSdvZmYtd2hpdGUnXSAuZGlzdHJpY3RfX21ldGEsIC5iYW5kLmJhbmQtLWNhbGxvdXQgLmRpc3RyaWN0X19tZXRhLCAuYmFuZC5iYW5kLS1mb290bm90ZSAuZGlzdHJpY3RfX21ldGEsIC5iYW5kW2RhdGEtdGhlbWU9J29mZi13aGl0ZSddIC5zaG90X19wcmVmaXgsIC5iYW5kLmJhbmQtLWNhbGxvdXQgLnNob3RfX3ByZWZpeCwgLmJhbmQuYmFuZC0tZm9vdG5vdGUgLnNob3RfX3ByZWZpeCwgLmJhbmRbZGF0YS10aGVtZT0nb2ZmLXdoaXRlJ10gLnNob3RfX3N1ZmZpeCwgLmJhbmQuYmFuZC0tY2FsbG91dCAuc2hvdF9fc3VmZml4LCAuYmFuZC5iYW5kLS1mb290bm90ZSAuc2hvdF9fc3VmZml4IHtcbiAgICAgIGNvbG9yOiAjMTgxOTE5OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAgIC5iYW5kX19wYXJ0cyB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC13cmFwOiB3cmFwOyB9IH1cbiAgLmJhbmRfX3BhcnQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi10b3A6IDMycHg7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICAgIC5iYW5kX19wYXJ0IHtcbiAgICAgICAgbWFyZ2luLXRvcDogNDhweDsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgLmJhbmRfX3BhcnQge1xuICAgICAgICBtYXJnaW4tdG9wOiA2NHB4OyB9IH1cbiAgICAuYmFuZF9fcGFydDpmaXJzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tdG9wOiAwOyB9XG4gICAgLmJhbmRfX3BhcnQgPiAqOmZpcnN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgICAuYmFuZF9fcGFydCA+ICo6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAgIC5iYW5kW2RhdGEtY29sdW1ucz0nMiddIC5iYW5kX19wYXJ0LCAuYmFuZC5iYW5kLS1jYWxsb3V0IC5iYW5kX19wYXJ0IHtcbiAgICAgIHdpZHRoOiA0OC4wNzY5MjMwNzY5JTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAzLjg0NjE1Mzg0NjIlOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgIC5iYW5kW2RhdGEtY29sdW1ucz0nMiddIC5iYW5kX19wYXJ0LCAuYmFuZC5iYW5kLS1jYWxsb3V0IC5iYW5kX19wYXJ0IHtcbiAgICAgIHdpZHRoOiA0OS4yMTg3NSU7XG4gICAgICBtYXJnaW4tbGVmdDogMS41NjI1JTsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAgIC5iYW5kW2RhdGEtY29sdW1ucz0nMiddIC5iYW5kX19wYXJ0Om50aC1jaGlsZChvZGQpLCAuYmFuZC5iYW5kLS1jYWxsb3V0IC5iYW5kX19wYXJ0Om50aC1jaGlsZChvZGQpIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gICAgLmJhbmRbZGF0YS1jb2x1bW5zPScyJ10gLmJhbmRfX3BhcnQ6bnRoLWNoaWxkKDEpLCAuYmFuZC5iYW5kLS1jYWxsb3V0IC5iYW5kX19wYXJ0Om50aC1jaGlsZCgxKSwgLmJhbmRbZGF0YS1jb2x1bW5zPScyJ10gLmJhbmRfX3BhcnQ6bnRoLWNoaWxkKDIpLCAuYmFuZC5iYW5kLS1jYWxsb3V0IC5iYW5kX19wYXJ0Om50aC1jaGlsZCgyKSB7XG4gICAgICBtYXJnaW4tdG9wOiAwOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gICAgLmJhbmRbZGF0YS1jb2x1bW5zPSczJ10gLmJhbmRfX3BhcnQge1xuICAgICAgd2lkdGg6IDQ4LjA3NjkyMzA3NjklO1xuICAgICAgbWFyZ2luLWxlZnQ6IDMuODQ2MTUzODQ2MiU7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgLmJhbmRbZGF0YS1jb2x1bW5zPSczJ10gLmJhbmRfX3BhcnQge1xuICAgICAgd2lkdGg6IDMyLjE4NzUlO1xuICAgICAgbWFyZ2luLWxlZnQ6IDEuNzE4NzUlOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gICAgLmJhbmRbZGF0YS1jb2x1bW5zPSczJ10gLmJhbmRfX3BhcnQ6bnRoLWNoaWxkKDNuLTIpIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgLmJhbmRbZGF0YS1jb2x1bW5zPSczJ10gLmJhbmRfX3BhcnQ6bnRoLWNoaWxkKDNuLTIpIHtcbiAgICAgIHdpZHRoOiAzMi4xODc1JTsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAgIC5iYW5kW2RhdGEtY29sdW1ucz0nMyddIC5iYW5kX19wYXJ0Om50aC1jaGlsZCgzbi0xKSB7XG4gICAgICBtYXJnaW4tbGVmdDogMDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAuYmFuZFtkYXRhLWNvbHVtbnM9JzMnXSAuYmFuZF9fcGFydDpudGgtY2hpbGQoM24tMSkge1xuICAgICAgbWFyZ2luLWxlZnQ6IDEuNzE4NzUlOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgIC5iYW5kW2RhdGEtY29sdW1ucz0nMyddIC5iYW5kX19wYXJ0Om50aC1jaGlsZCgxKSwgLmJhbmRbZGF0YS1jb2x1bW5zPSczJ10gLmJhbmRfX3BhcnQ6bnRoLWNoaWxkKDIpLCAuYmFuZFtkYXRhLWNvbHVtbnM9JzMnXSAuYmFuZF9fcGFydDpudGgtY2hpbGQoMykge1xuICAgICAgbWFyZ2luLXRvcDogMDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAgIC5iYW5kW2RhdGEtY29sdW1ucz0nNCddIC5iYW5kX19wYXJ0IHtcbiAgICAgIHdpZHRoOiA0OC4wNzY5MjMwNzY5JTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAzLjg0NjE1Mzg0NjIlOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgIC5iYW5kW2RhdGEtY29sdW1ucz0nNCddIC5iYW5kX19wYXJ0IHtcbiAgICAgIHdpZHRoOiAyMy42NzE4NzUlO1xuICAgICAgbWFyZ2luLWxlZnQ6IDEuNzcwODMzMzMzMyU7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICAuYmFuZFtkYXRhLWNvbHVtbnM9JzQnXSAuYmFuZF9fcGFydDpudGgtY2hpbGQob2RkKSB7XG4gICAgICBtYXJnaW4tbGVmdDogMDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAuYmFuZFtkYXRhLWNvbHVtbnM9JzQnXSAuYmFuZF9fcGFydDpudGgtY2hpbGQob2RkKSB7XG4gICAgICBtYXJnaW4tbGVmdDogMS43NzA4MzMzMzMzJTsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAuYmFuZFtkYXRhLWNvbHVtbnM9JzQnXSAuYmFuZF9fcGFydDpudGgtY2hpbGQoNG4tMykge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICAuYmFuZFtkYXRhLWNvbHVtbnM9JzQnXSAuYmFuZF9fcGFydDpudGgtY2hpbGQoMSksIC5iYW5kW2RhdGEtY29sdW1ucz0nNCddIC5iYW5kX19wYXJ0Om50aC1jaGlsZCgyKSB7XG4gICAgICBtYXJnaW4tdG9wOiAwOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgIC5iYW5kW2RhdGEtY29sdW1ucz0nNCddIC5iYW5kX19wYXJ0Om50aC1jaGlsZCgzKSwgLmJhbmRbZGF0YS1jb2x1bW5zPSc0J10gLmJhbmRfX3BhcnQ6bnRoLWNoaWxkKDQpIHtcbiAgICAgIG1hcmdpbi10b3A6IDA7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgLmJhbmRbZGF0YS10ZW5zaW9uPSc4LTQnXSAuYmFuZF9fcGFydCB7XG4gICAgICB3aWR0aDogMzIuMDMxMjUlO1xuICAgICAgbWFyZ2luLWxlZnQ6IDEuODc1JTsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAuYmFuZFtkYXRhLXRlbnNpb249JzgtNCddIC5iYW5kX19wYXJ0Om50aC1jaGlsZChvZGQpIHtcbiAgICAgIHdpZHRoOiA2Ni4wMTU2MjUlO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgLmJhbmRbZGF0YS10ZW5zaW9uPSc4LTMnXSAuYmFuZF9fcGFydCwgLmJhbmQuYmFuZC0tY2FsbG91dCAuYmFuZF9fcGFydCB7XG4gICAgICB3aWR0aDogMjMuNjcxODc1JTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAxMC4zMTI1JTsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAuYmFuZFtkYXRhLXRlbnNpb249JzgtMyddIC5iYW5kX19wYXJ0Om50aC1jaGlsZChvZGQpLCAuYmFuZC5iYW5kLS1jYWxsb3V0IC5iYW5kX19wYXJ0Om50aC1jaGlsZChvZGQpIHtcbiAgICAgIHdpZHRoOiA2Ni4wMTU2MjUlO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7IH0gfVxuICAuYmFuZC0tc3RyaXBlZCwgLmJhbmQuYmFuZC0tY291cnQtZGF0ZS1mb3JtLCAuYmFuZC0tc3RyaXBlZDpmaXJzdC1jaGlsZCwgLmJhbmQuYmFuZC0tY291cnQtZGF0ZS1mb3JtOmZpcnN0LWNoaWxkIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMzJweDtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjZmZmIDUwJSwgI2Y2ZjZmNiA1MCUpOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gICAgICAuYmFuZC0tc3RyaXBlZCwgLmJhbmQuYmFuZC0tY291cnQtZGF0ZS1mb3JtLCAuYmFuZC0tc3RyaXBlZDpmaXJzdC1jaGlsZCwgLmJhbmQuYmFuZC0tY291cnQtZGF0ZS1mb3JtOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDY0cHg7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgIC5iYW5kLS1zdHJpcGVkLCAuYmFuZC5iYW5kLS1jb3VydC1kYXRlLWZvcm0sIC5iYW5kLS1zdHJpcGVkOmZpcnN0LWNoaWxkLCAuYmFuZC5iYW5kLS1jb3VydC1kYXRlLWZvcm06Zmlyc3QtY2hpbGQge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTI4cHg7IH0gfVxuXG5hc2lkZS5iYW5kIHtcbiAgbWFyZ2luLWJvdHRvbTogMzJweDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICBhc2lkZS5iYW5kIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDY0cHg7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTI4MHB4KSB7XG4gICAgYXNpZGUuYmFuZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxMjhweDsgfSB9XG5cbmFzaWRlLmJhbmQuYmFuZC0tY2FsbG91dCB7XG4gIHBhZGRpbmc6IDMycHggMCA2NHB4O1xuICBtYXJnaW46IDA7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gICAgYXNpZGUuYmFuZC5iYW5kLS1jYWxsb3V0IHtcbiAgICAgIHBhZGRpbmc6IDY0cHggMCA5NnB4OyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEyODBweCkge1xuICAgIGFzaWRlLmJhbmQuYmFuZC0tY2FsbG91dCB7XG4gICAgICBwYWRkaW5nOiAxMjhweCAwIDE2MHB4OyB9IH1cblxuLmJyZWFkY3J1bWJzIG9sIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgaGVpZ2h0OiA2NHB4O1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGNvbG9yOiAjNmY3NzdiO1xuICBmb250LWZhbWlseTogXCJPcGVuIFNhbnNcIiwgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBsaW5lLWhlaWdodDogMS4yNTtcbiAgbGlzdC1zdHlsZTogbm9uZTsgfVxuXG4uYnJlYWRjcnVtYnMgbGkge1xuICBkaXNwbGF5OiBub25lO1xuICBtYXJnaW46IDAgMCAwIDhweDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgLmJyZWFkY3J1bWJzIGxpIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfSB9XG4gIC5icmVhZGNydW1icyBsaTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogMTZweDtcbiAgICBoZWlnaHQ6IDIwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiA4cHg7XG4gICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2ljb25zL2lfcmV0dXJuLnN2Z1wiKSBuby1yZXBlYXQgNTAlIDUwJS8xMDAlIGF1dG87XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgIC5icmVhZGNydW1icyBsaTpiZWZvcmUge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgLmJyZWFkY3J1bWJzIGxpOmFmdGVyIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgLmJyZWFkY3J1bWJzIGxpOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgd2lkdGg6IDE4cHg7XG4gICAgICAgIGhlaWdodDogMThweDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDhweDtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2ljb25zL2lfY2FyZXQtcmlnaHQuc3ZnXCIpIG5vLXJlcGVhdCA1MCUgNTAlLzEwMCUgYXV0bztcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfSB9XG4gIC5icmVhZGNydW1icyBsaTpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLmJyZWFkY3J1bWJzIGxpOmxhc3QtY2hpbGQ6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLmJyZWFkY3J1bWJzIGxpLnBhcmVudCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgLmJyZWFkY3J1bWJzIGxpLnBhcmVudCB7XG4gICAgICAgIG1hcmdpbjogMCAwIDAgOHB4OyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAuYnJlYWRjcnVtYnMgbGkucGFyZW50OmZpcnN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7IH0gfVxuXG4uYnJlYWRjcnVtYnMgW2l0ZW1wcm9wPSdpdGVtJ10ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1heC13aWR0aDogMjAwcHg7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzOyB9XG5cbi5wYWdpbmF0aW9uIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHBhZGRpbmctdG9wOiAzMnB4O1xuICBtYXJnaW4tdG9wOiAzMnB4O1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2NjY2ZkMTtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBsaW5lLWhlaWdodDogMTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICAucGFnaW5hdGlvbiB7XG4gICAgICBtYXJnaW4tdG9wOiA0OHB4OyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgIC5wYWdpbmF0aW9uIHtcbiAgICAgIG1hcmdpbi10b3A6IDY0cHg7IH0gfVxuICAucGFnaW5hdGlvbl9fbGlzdCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lOyB9XG4gIC5wYWdpbmF0aW9uX19pdGVtIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIG1hcmdpbjogMCA0cHg7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAucGFnaW5hdGlvbl9faXRlbSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfSB9XG4gICAgLnBhZ2luYXRpb25fX2l0ZW0gYSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBwYWRkaW5nOiAxMnB4IDE2cHg7XG4gICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgY29sb3I6ICMwMDJmODc7XG4gICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDE1MG1zIGN1YmljLWJlemllcigwLjc3LCAwLCAwLjE3NSwgMSksIGJveC1zaGFkb3cgMTUwbXMgY3ViaWMtYmV6aWVyKDAuNzcsIDAsIDAuMTc1LCAxKSwgY29sb3IgMTUwbXMgY3ViaWMtYmV6aWVyKDAuNzcsIDAsIDAuMTc1LCAxKTtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICAgICAgLnBhZ2luYXRpb25fX2l0ZW0gYTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmNmY2ZjY7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDRweCByZ2JhKDcsIDM0LCA1MywgMC4xNSk7XG4gICAgICAgIGNvbG9yOiAjMDA0MWJhOyB9XG4gIC5wYWdpbmF0aW9uX19wcmV2aW91cyB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbjogMCA0cHg7IH1cbiAgICAucGFnaW5hdGlvbl9fcHJldmlvdXMgYSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBwYWRkaW5nOiAxMnB4IDE2cHg7XG4gICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgY29sb3I6ICMwMDJmODc7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgICAgIC5wYWdpbmF0aW9uX19wcmV2aW91cyBhOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y2ZjZmNjtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgNHB4IHJnYmEoNywgMzQsIDUzLCAwLjE1KTtcbiAgICAgICAgY29sb3I6ICMwMDQxYmE7IH1cbiAgLnBhZ2luYXRpb25fX25leHQge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW46IDAgNHB4OyB9XG4gICAgLnBhZ2luYXRpb25fX25leHQgYSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBwYWRkaW5nOiAxMnB4IDE2cHg7XG4gICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgY29sb3I6ICMwMDJmODc7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgICAgIC5wYWdpbmF0aW9uX19uZXh0IGE6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjZmNmY2O1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCA0cHggcmdiYSg3LCAzNCwgNTMsIDAuMTUpO1xuICAgICAgICBjb2xvcjogIzAwNDFiYTsgfVxuICAucGFnaW5hdGlvbi0tb3ZlcmZsb3cge1xuICAgIHBhZGRpbmc6IDEycHggMTZweDtcbiAgICBib3JkZXI6IDA7XG4gICAgY29sb3I6ICM2Zjc3N2I7IH1cbiAgLnBhZ2luYXRpb24tLWFjdGl2ZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmc6IDEycHggMTZweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDcyMjM1O1xuICAgIGJvcmRlci1jb2xvcjogIzA3MjIzNTtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBmb250LXdlaWdodDogNjAwOyB9XG4gICAgLnBhZ2luYXRpb24tLWFjdGl2ZTphZnRlciB7XG4gICAgICBjb250ZW50OiBhdHRyKGRhdGEtZGVwdGgpO1xuICAgICAgZGlzcGxheTogaW5saW5lOyB9XG4gIC5wYWdpbmF0aW9uLS1kaXNhYmxlZCB7XG4gICAgcGFkZGluZzogMTJweCAxNnB4O1xuICAgIGNvbG9yOiAjNmY3NzdiO1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cbiAgLnBhZ2luYXRpb24tLWxlYXJuIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBib3JkZXItdG9wOiAwO1xuICAgIGp1c3RpZnktY29udGVudDogbm9uZTsgfVxuICAgIC5wYWdpbmF0aW9uLS1sZWFybiBhIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuICAgIC5wYWdpbmF0aW9uLS1sZWFybiBzdmcge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICB3aWR0aDogMjRweDtcbiAgICAgIGhlaWdodDogMjRweDtcbiAgICAgIG1hcmdpbi10b3A6IC0xMnB4OyB9XG4gICAgLnBhZ2luYXRpb24tLWxlYXJuIC5wYWdpbmF0aW9uX19saXN0IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICAucGFnaW5hdGlvbi0tbGVhcm4gLnBhZ2luYXRpb25fX2xpc3Q6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLnBhZ2luYXRpb24tLWxlYXJuIC5wYWdpbmF0aW9uX19saW5rLXRpdGxlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuICAgIC5wYWdpbmF0aW9uLS1sZWFybiAucGFnaW5hdGlvbl9fbGluay1sYWJlbCB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIC5wYWdpbmF0aW9uLS1sZWFybiAucGFnaW5hdGlvbl9fcHJldmlvdXMge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAgICAgICAucGFnaW5hdGlvbi0tbGVhcm4gLnBhZ2luYXRpb25fX3ByZXZpb3VzIHtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9IH1cbiAgICAgIC5wYWdpbmF0aW9uLS1sZWFybiAucGFnaW5hdGlvbl9fcHJldmlvdXMgYSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDU2cHg7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDU2cHg7IH1cbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gICAgICAgICAgLnBhZ2luYXRpb24tLWxlYXJuIC5wYWdpbmF0aW9uX19wcmV2aW91cyBhIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDE2cHg7IH0gfVxuICAgICAgLnBhZ2luYXRpb24tLWxlYXJuIC5wYWdpbmF0aW9uX19wcmV2aW91cyBzdmcge1xuICAgICAgICBsZWZ0OiAxNnB4OyB9XG4gICAgLnBhZ2luYXRpb24tLWxlYXJuIC5wYWdpbmF0aW9uX19uZXh0IHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICAgICAgLnBhZ2luYXRpb24tLWxlYXJuIC5wYWdpbmF0aW9uX19uZXh0IHtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7IH0gfVxuICAgICAgLnBhZ2luYXRpb24tLWxlYXJuIC5wYWdpbmF0aW9uX19uZXh0IGEge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA1NnB4O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA1NnB4OyB9XG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAgICAgICAgIC5wYWdpbmF0aW9uLS1sZWFybiAucGFnaW5hdGlvbl9fbmV4dCBhIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTZweDsgfSB9XG4gICAgICAucGFnaW5hdGlvbi0tbGVhcm4gLnBhZ2luYXRpb25fX25leHQgc3ZnIHtcbiAgICAgICAgcmlnaHQ6IDE2cHg7IH1cbiAgICAucGFnaW5hdGlvbi0tbGVhcm4gLnBhZ2luYXRpb25fX3ByZXZpb3VzICsgLnBhZ2luYXRpb25fX25leHQge1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICM2Zjc3N2I7IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAgICAgICAucGFnaW5hdGlvbi0tbGVhcm4gLnBhZ2luYXRpb25fX3ByZXZpb3VzICsgLnBhZ2luYXRpb25fX25leHQge1xuICAgICAgICAgIGJvcmRlci10b3A6IDA7IH0gfVxuXG4ubWVudV9fdGl0bGUge1xuICBtYXJnaW4tdG9wOiAwOyB9XG5cbi5tZW51X19zdWJ0aXRsZSB7XG4gIHBhZGRpbmc6IDhweCAwO1xuICBtYXJnaW46IDA7XG4gIGZvbnQtZmFtaWx5OiBcIk9wZW4gU2Fuc1wiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNjAwO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGNvbG9yOiAjNmY3NzdiOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAubWVudV9fc3VidGl0bGUge1xuICAgICAgcGFkZGluZzogOHB4IDE2cHg7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIGFzaWRlIC5tZW51X19zdWJ0aXRsZSB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7IH0gfVxuXG5hc2lkZSAubWVudV9fc3VidGl0bGUgKyAubWVudV9fbGlzdCB7XG4gIG1hcmdpbi10b3A6IDA7IH1cblxuLm1lbnVfX2RpdmlkZXIge1xuICBtYXJnaW46IDhweCAwOyB9XG5cbi5tZW51X19saXN0IHtcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTsgfVxuXG4ubWVudV9faXRlbS0tZHJvcGRvd24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLm1lbnVfX2l0ZW0tLWRyb3Bkb3duID4gYTphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiAyNHB4O1xuICAgIGhlaWdodDogMjRweDtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvaWNvbnMvaV9jYXJldC1kb3duLnN2Z1wiKSBuby1yZXBlYXQgNTAlIDUwJS8xMDAlIGF1dG87XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDMwMG1zIGN1YmljLWJlemllcigwLjc3LCAwLCAwLjE3NSwgMSk7IH1cbiAgLm1lbnVfX2l0ZW0tLWRyb3Bkb3duLm1lbnVfX2l0ZW0tLWFjdGl2ZSA+IGE6YWZ0ZXIge1xuICAgIHRyYW5zZm9ybTogcm90YXRlWCgxODBkZWcpOyB9XG5cbi5tZW51X19kcm9wZG93biB7XG4gIG1heC1oZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG1heC1oZWlnaHQgMTUwbXMgY3ViaWMtYmV6aWVyKDAuNzcsIDAsIDAuMTc1LCAxKSwgb3BhY2l0eSAxNTBtcyBjdWJpYy1iZXppZXIoMC43NywgMCwgMC4xNzUsIDEpOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAubWVudV9fZHJvcGRvd24ge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAxMDAlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIG1pbi13aWR0aDogMjQwcHg7XG4gICAgICBtYXgtaGVpZ2h0OiAxMDAwcHg7XG4gICAgICBwYWRkaW5nOiA4cHggMDtcbiAgICAgIG1hcmdpbi10b3A6IDRweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDExMSwgMTE5LCAxMjMsIDAuMjUpO1xuICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgYm94LXNoYWRvdzogMCAycHggNHB4IHJnYmEoMjQsIDI1LCAyNSwgMC4xKTtcbiAgICAgIG92ZXJmbG93OiBhdXRvO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xNnB4KTtcbiAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMTUwbXMgY3ViaWMtYmV6aWVyKDAuNzcsIDAsIDAuMTc1LCAxKSwgdmlzaWJpbGl0eSAxNTBtcyBjdWJpYy1iZXppZXIoMC43NywgMCwgMC4xNzUsIDEpLCB0cmFuc2Zvcm0gMTUwbXMgY3ViaWMtYmV6aWVyKDAuNzcsIDAsIDAuMTc1LCAxKTtcbiAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsgfSB9XG4gIC5tZW51X19kcm9wZG93biB1bCB7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICAubWVudV9fZHJvcGRvd24gbGkge1xuICAgIG1hcmdpbjogMDsgfVxuICAubWVudV9fZHJvcGRvd24gYSB7XG4gICAgcGFkZGluZzogOHB4OyB9XG4gIC5tZW51X19kcm9wZG93bi0tYWN0aXZlIHtcbiAgICBtYXgtaGVpZ2h0OiAxMDAwcHg7XG4gICAgbWFyZ2luOiAxNnB4IDAgMzJweDtcbiAgICBvcGFjaXR5OiAxOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgLm1lbnVfX2Ryb3Bkb3duLS1hY3RpdmUge1xuICAgICAgICBtYXJnaW46IDRweCAwIDA7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfSB9XG5cbi5tZW51LS1wcmltYXJ5IHtcbiAgZm9udC1zaXplOiAxNnB4OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAubWVudS0tcHJpbWFyeSB7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBmb250LXNpemU6IDE0cHg7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTI4MHB4KSB7XG4gICAgLm1lbnUtLXByaW1hcnkge1xuICAgICAgZm9udC1zaXplOiAxNnB4OyB9IH1cbiAgLm1lbnUtLXByaW1hcnkgLm1lbnVfX3RpdGxlIHtcbiAgICBwYWRkaW5nOiA2NHB4IDY0cHggMTZweCAzMnB4O1xuICAgIG1hcmdpbjogLTY0cHggLTMycHggMTZweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDcyMjM1O1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGZvbnQtc2l6ZTogMzJweDsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgIC5tZW51LS1wcmltYXJ5IC5tZW51X190aXRsZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogLTEwMDAwcHg7XG4gICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgd2lkdGg6IDFweDtcbiAgICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsgfSB9XG4gIC5tZW51LS1wcmltYXJ5IC5tZW51X19saXN0IHtcbiAgICBtYXJnaW46IDA7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAubWVudS0tcHJpbWFyeSAubWVudV9fbGlzdCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgICAgaGVpZ2h0OiAxMDAlOyB9IH1cbiAgLm1lbnUtLXByaW1hcnkgLm1lbnVfX2l0ZW0ge1xuICAgIG1hcmdpbjogMDtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2NjY2ZkMTsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgIC5tZW51LS1wcmltYXJ5IC5tZW51X19pdGVtIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9IH1cbiAgICAubWVudS0tcHJpbWFyeSAubWVudV9faXRlbSBhIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgYWxpZ24tc2VsZjogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgcGFkZGluZzogMTZweCAwO1xuICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgIGNvbG9yOiAjMTgxOTE5O1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIHRyYW5zaXRpb246IGNvbG9yIDE1MG1zIGN1YmljLWJlemllcigwLjc3LCAwLCAwLjE3NSwgMSksIGJveC1zaGFkb3cgMTUwbXMgY3ViaWMtYmV6aWVyKDAuNzcsIDAsIDAuMTc1LCAxKTsgfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgICAubWVudS0tcHJpbWFyeSAubWVudV9faXRlbSBhIHtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgcGFkZGluZzogMCAxNnB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7IH0gfVxuICAgICAgLm1lbnUtLXByaW1hcnkgLm1lbnVfX2l0ZW0gYTpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAjMDAyZjg3OyB9XG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgICAgICAubWVudS0tcHJpbWFyeSAubWVudV9faXRlbSBhOmhvdmVyIHtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMXB4IDAgMCByZ2JhKDExMSwgMTE5LCAxMjMsIDAuNSk7IH0gfVxuICAgICAgLm1lbnUtLXByaW1hcnkgLm1lbnVfX2l0ZW0gYTpmb2N1cywgLm1lbnUtLXByaW1hcnkgLm1lbnVfX2l0ZW0gYTpmb2N1czpob3ZlciB7XG4gICAgICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDRweCAjZmZiZjQ3O1xuICAgICAgICBvdXRsaW5lOiAwOyB9XG4gICAgLm1lbnUtLXByaW1hcnkgLm1lbnVfX2l0ZW06Zmlyc3QtY2hpbGQge1xuICAgICAgYm9yZGVyOiAwOyB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAgIC5tZW51LS1wcmltYXJ5IC5tZW51X19pdGVtOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMTZweDsgfSB9XG4gICAgLm1lbnUtLXByaW1hcnkgLm1lbnVfX2l0ZW0tLWxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLXRvcDogMzJweDtcbiAgICAgIGJvcmRlcjogMDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgICAgLm1lbnUtLXByaW1hcnkgLm1lbnVfX2l0ZW0tLWxhc3QtY2hpbGQge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDE2cHg7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgICBvdmVyZmxvdzogYXV0bzsgfSB9XG4gICAgICAubWVudS0tcHJpbWFyeSAubWVudV9faXRlbS0tbGFzdC1jaGlsZCBhIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgYWxpZ24tc2VsZjogaW5oZXJpdDtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBwYWRkaW5nOiAyNHB4IDMycHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMxNDc3YTk7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDE1MG1zIGN1YmljLWJlemllcigwLjc3LCAwLCAwLjE3NSwgMSk7IH1cbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgICAgIC5tZW51LS1wcmltYXJ5IC5tZW51X19pdGVtLS1sYXN0LWNoaWxkIGEge1xuICAgICAgICAgICAgcGFkZGluZzogMCAzMnB4OyB9IH1cbiAgICAgICAgLm1lbnUtLXByaW1hcnkgLm1lbnVfX2l0ZW0tLWxhc3QtY2hpbGQgYTphZnRlciB7XG4gICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIHdpZHRoOiAxNnB4O1xuICAgICAgICAgIGhlaWdodDogMTZweDtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMTZweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvaWNvbnMvaV9hcnJvdy1yaWdodF93aGl0ZS5zdmdcIikgbm8tcmVwZWF0IDUwJSA1MCUvMTAwJSBhdXRvO1xuICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAzMDBtcyBjdWJpYy1iZXppZXIoMC43NywgMCwgMC4xNzUsIDEpOyB9XG4gICAgICAgIC5tZW51LS1wcmltYXJ5IC5tZW51X19pdGVtLS1sYXN0LWNoaWxkIGE6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMxNTdkYjI7XG4gICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICBjb2xvcjogI2ZmZjsgfVxuICAgICAgICAubWVudS0tcHJpbWFyeSAubWVudV9faXRlbS0tbGFzdC1jaGlsZCBhOmhvdmVyOmFmdGVyIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMnB4KTsgfVxuICAgICAgICAubWVudS0tcHJpbWFyeSAubWVudV9faXRlbS0tbGFzdC1jaGlsZCBhOmZvY3VzIHtcbiAgICAgICAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCA0cHggI2ZmYmY0NzsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgIC5tZW51LS1wcmltYXJ5IC5tZW51X19pdGVtLS1hY3RpdmUgPiBhLFxuICAgICAgLm1lbnUtLXByaW1hcnkgLm1lbnVfX2l0ZW0tLWFjdGl2ZSA+IGE6aG92ZXIge1xuICAgICAgICBib3gtc2hhZG93OiAwIDFweCAjMDcyMjM1OyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAubWVudS0tcHJpbWFyeSAubWVudV9faXRlbS0tY3VycmVudCA+IGEsXG4gICAgICAubWVudS0tcHJpbWFyeSAubWVudV9faXRlbS0tY3VycmVudCA+IGE6aG92ZXIge1xuICAgICAgICBib3gtc2hhZG93OiAwIDFweCAjMDcyMjM1OyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAubWVudS0tcHJpbWFyeSAubWVudV9faXRlbS0tY3VycmVudCA+IGE6Zm9jdXMge1xuICAgICAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCA0cHggI2ZmYmY0NzsgfSB9XG4gIC5tZW51LS1wcmltYXJ5IC5tZW51X19kcm9wZG93biBhIHtcbiAgICBwYWRkaW5nOiA4cHggMDtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgIC5tZW51LS1wcmltYXJ5IC5tZW51X19kcm9wZG93biBhIHtcbiAgICAgICAgcGFkZGluZzogOHB4IDE2cHg7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfSB9XG4gICAgLm1lbnUtLXByaW1hcnkgLm1lbnVfX2Ryb3Bkb3duIGE6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMTEsIDExOSwgMTIzLCAwLjA1KTtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDY0MHB4KSB7XG4gIC5tZW51LS1zZWNvbmRhcnkgLm1lbnVfX3RpdGxlIHtcbiAgICBwYWRkaW5nOiA2NHB4IDY0cHggMTZweCAzMnB4OyB9IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDEwMjNweCkge1xuICAubWVudS0tc2Vjb25kYXJ5IC5tZW51X190aXRsZSB7XG4gICAgcGFkZGluZzogNjRweCA2NHB4IDE2cHggNjRweDtcbiAgICBtYXJnaW46IDY0cHggLTY0cHggMTZweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDcyMjM1O1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICBmb250LXdlaWdodDogNzAwOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAubWVudS0tc2Vjb25kYXJ5IC5tZW51X190aXRsZSB7XG4gICAgZm9udDogNjAwIDE5cHgvMS4yNSBcIk9wZW4gU2Fuc1wiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgIG1hcmdpbjogMCAwIDE5cHg7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTAyM3B4KSB7XG4gIC5tZW51LS1zZWNvbmRhcnkgLm1lbnVfX2l0ZW0ge1xuICAgIG1hcmdpbjogMDtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2NjY2ZkMTsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgLm1lbnUtLXNlY29uZGFyeSAubWVudV9faXRlbSBhIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgYWxpZ24tc2VsZjogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBwYWRkaW5nOiAxNnB4IDA7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICB0cmFuc2l0aW9uOiBjb2xvciAxNTBtcyBjdWJpYy1iZXppZXIoMC43NywgMCwgMC4xNzUsIDEpLCBib3gtc2hhZG93IDE1MG1zIGN1YmljLWJlemllcigwLjc3LCAwLCAwLjE3NSwgMSk7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTAyM3B4KSB7XG4gIC5tZW51LS1zZWNvbmRhcnkgLm1lbnVfX2l0ZW06Zmlyc3QtY2hpbGQge1xuICAgIGJvcmRlcjogMDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLm1lbnUtLXNlY29uZGFyeSAubWVudV9faXRlbS0tYWN0aXZlID4gYSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLm1lbnUtLXNlY29uZGFyeSAubWVudV9faXRlbS0tYWN0aXZlID4gYTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDlweDtcbiAgICBsZWZ0OiAtMjRweDtcbiAgICB3aWR0aDogOHB4O1xuICAgIGhlaWdodDogOHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNhZTkzNmM7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlOyB9IH1cblxuLm1lbnUtLW51bWJlcmVkIC5tZW51X19pdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBjb3VudGVyLWluY3JlbWVudDogc3RlcC1jb3VudGVyOyB9XG4gIC5tZW51LS1udW1iZXJlZCAubWVudV9faXRlbTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IGNvdW50ZXIoc3RlcC1jb3VudGVyKSBcIi5cIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAyNHB4O1xuICAgIG1hcmdpbi1yaWdodDogOHB4O1xuICAgIGNvbG9yOiAjNmY3NzdiO1xuICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gICAgICAubWVudS0tbnVtYmVyZWQgLm1lbnVfX2l0ZW06YmVmb3JlIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNnB4OyB9IH1cblxuLnNob3J0Y3V0LS1oZWFkZXIge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGJvdHRvbTogMTZweDtcbiAgcmlnaHQ6IDE2cHg7XG4gIHdpZHRoOiA0OHB4O1xuICBoZWlnaHQ6IDQ4cHg7XG4gIGJhY2tncm91bmQ6ICMwNzIyMzUgdXJsKFwiLi4vaW1nL2ljb25zL2lfY2FyZXQtdXBfd2hpdGUuc3ZnXCIpIG5vLXJlcGVhdCA1MCUgNTAlLzUwJSBhdXRvO1xuICBib3gtc2hhZG93OiAwIDAgMCAycHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjI0KSwgMCA0cHggOHB4IDAgcmdiYSgyNCwgMjUsIDI1LCAwLjEyKSwgMCA0cHggOHB4IDAgcmdiYSgyNCwgMjUsIDI1LCAwLjI0KTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBmb250LXNpemU6IDA7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBjb2xvcjogI2ZmZjtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDE2JSk7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMzAwbXMgY3ViaWMtYmV6aWVyKDAuNzcsIDAsIDAuMTc1LCAxKSwgb3BhY2l0eSAzMDBtcyBjdWJpYy1iZXppZXIoMC43NywgMCwgMC4xNzUsIDEpLCB0cmFuc2Zvcm0gMzAwbXMgY3ViaWMtYmV6aWVyKDAuNzcsIDAsIDAuMTc1LCAxKTtcbiAgei1pbmRleDogOTk5OTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICAuc2hvcnRjdXQtLWhlYWRlciB7XG4gICAgICBib3R0b206IDMycHg7XG4gICAgICByaWdodDogMzJweDtcbiAgICAgIHdpZHRoOiA2NHB4O1xuICAgICAgaGVpZ2h0OiA2NHB4OyB9IH1cbiAgLnNob3J0Y3V0LS1oZWFkZXI6bGluayB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAzMDBtcyBjdWJpYy1iZXppZXIoMC43NywgMCwgMC4xNzUsIDEpLCBvcGFjaXR5IDMwMG1zIGN1YmljLWJlemllcigwLjc3LCAwLCAwLjE3NSwgMSksIHRyYW5zZm9ybSAzMDBtcyBjdWJpYy1iZXppZXIoMC43NywgMCwgMC4xNzUsIDEpOyB9XG4gIC5zaG9ydGN1dC0taGVhZGVyOnZpc2l0ZWQge1xuICAgIGNvbG9yOiAjZmZmOyB9XG4gIC5zaG9ydGN1dC0taGVhZGVyOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA0MWJhO1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDRweCByZ2JhKDAsIDQ3LCAxMzUsIDAuMTYpO1xuICAgIG91dGxpbmU6IDA7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICAgIC5zaG9ydGN1dC0taGVhZGVyOmZvY3VzIHtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgOHB4IHJnYmEoMCwgNDcsIDEzNSwgMC4xNik7IH0gfVxuICAuc2hvcnRjdXQtLWhlYWRlcjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwNDFiYTtcbiAgICBib3gtc2hhZG93OiAwIDAgMCA0cHggcmdiYSgwLCA0NywgMTM1LCAwLjE2KTsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAgICAgLnNob3J0Y3V0LS1oZWFkZXI6aG92ZXIge1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCA4cHggcmdiYSgwLCA0NywgMTM1LCAwLjE2KTsgfSB9XG4gIC5zaG9ydGN1dC0taGVhZGVyOmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwNDFiYTtcbiAgICBib3gtc2hhZG93OiAwIDAgMCA2cHggcmdiYSgwLCA0NywgMTM1LCAwLjI0KTsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAgICAgLnNob3J0Y3V0LS1oZWFkZXI6YWN0aXZlIHtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMTJweCByZ2JhKDAsIDQ3LCAxMzUsIDAuMjQpOyB9IH1cblxuLnNob3J0Y3V0LS12aXNpYmxlIHtcbiAgb3BhY2l0eTogMTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAlKTsgfVxuXG4uc2hvcnRjdXQtLW1haW46Zm9jdXMge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogM3B4O1xuICBsZWZ0OiAzcHg7XG4gIHdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IGF1dG87XG4gIHBhZGRpbmc6IDhweCAxNnB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgb3V0bGluZTogM3B4IHNvbGlkICNmZmJmNDc7XG4gIG92ZXJmbG93OiBhdXRvO1xuICB6LWluZGV4OiAxMDAwMTsgfVxuXG4uYnV0dG9uLCAudG9nZ2xlLCAucGFuZWwtZ3JvdXBfX3RvZ2dsZSwgLmFsZXJ0X19kaXNtaXNzLCAuY2FyZF9fYWN0aW9uLCAuc2hvdF9fYnV0dG9uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiA4cHggMTZweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg3LCAzNCwgNTMsIDAuOTUpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICBib3JkZXI6IDJweCBzb2xpZCByZ2JhKDcsIDM0LCA1MywgMC45NSk7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtZmFtaWx5OiBcIk9wZW4gU2Fuc1wiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNjAwO1xuICBmb250LXNpemU6IDE0cHg7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgMTUwbXMgY3ViaWMtYmV6aWVyKDAuNzcsIDAsIDAuMTc1LCAxKSwgYm9yZGVyIDE1MG1zIGN1YmljLWJlemllcigwLjc3LCAwLCAwLjE3NSwgMSksIGJveC1zaGFkb3cgMTUwbXMgY3ViaWMtYmV6aWVyKDAuNzcsIDAsIDAuMTc1LCAxKTtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAgIC5idXR0b24sIC50b2dnbGUsIC5wYW5lbC1ncm91cF9fdG9nZ2xlLCAuYWxlcnRfX2Rpc21pc3MsIC5jYXJkX19hY3Rpb24sIC5zaG90X19idXR0b24ge1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBmb250LXNpemU6IDE2cHg7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgLmJ1dHRvbiwgLnRvZ2dsZSwgLnBhbmVsLWdyb3VwX190b2dnbGUsIC5hbGVydF9fZGlzbWlzcywgLmNhcmRfX2FjdGlvbiwgLnNob3RfX2J1dHRvbiB7XG4gICAgICBmb250LXNpemU6IDE5cHg7IH0gfVxuICAuYnV0dG9uOmxpbmssIC50b2dnbGU6bGluaywgLnBhbmVsLWdyb3VwX190b2dnbGU6bGluaywgLmFsZXJ0X19kaXNtaXNzOmxpbmssIC5jYXJkX19hY3Rpb246bGluaywgLnNob3RfX2J1dHRvbjpsaW5rLCAuYnV0dG9uOnZpc2l0ZWQsIC50b2dnbGU6dmlzaXRlZCwgLnBhbmVsLWdyb3VwX190b2dnbGU6dmlzaXRlZCwgLmFsZXJ0X19kaXNtaXNzOnZpc2l0ZWQsIC5jYXJkX19hY3Rpb246dmlzaXRlZCwgLnNob3RfX2J1dHRvbjp2aXNpdGVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDcsIDM0LCA1MywgMC45NSk7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDcsIDM0LCA1MywgMC45NSk7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gIC5idXR0b246Zm9jdXMsIC50b2dnbGU6Zm9jdXMsIC5wYW5lbC1ncm91cF9fdG9nZ2xlOmZvY3VzLCAuYWxlcnRfX2Rpc21pc3M6Zm9jdXMsIC5jYXJkX19hY3Rpb246Zm9jdXMsIC5zaG90X19idXR0b246Zm9jdXMge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzA3MjIzNTtcbiAgICBib3gtc2hhZG93OiAwIDAgMCA0cHggI2ZmYmY0NztcbiAgICBib3JkZXItY29sb3I6ICMwNzIyMzU7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgb3V0bGluZTogMDsgfVxuICAuYnV0dG9uOmhvdmVyLCAudG9nZ2xlOmhvdmVyLCAucGFuZWwtZ3JvdXBfX3RvZ2dsZTpob3ZlciwgLmFsZXJ0X19kaXNtaXNzOmhvdmVyLCAuY2FyZF9fYWN0aW9uOmhvdmVyLCAuc2hvdF9fYnV0dG9uOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDcyMjM1O1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDRweCByZ2JhKDcsIDM0LCA1MywgMC4xNSk7XG4gICAgYm9yZGVyLWNvbG9yOiAjMDcyMjM1O1xuICAgIGNvbG9yOiAjZmZmOyB9XG4gIC5idXR0b25bZGlzYWJsZWRdLCAudG9nZ2xlW2Rpc2FibGVkXSwgLnBhbmVsLWdyb3VwX190b2dnbGVbZGlzYWJsZWRdLCAuYWxlcnRfX2Rpc21pc3NbZGlzYWJsZWRdLCAuY2FyZF9fYWN0aW9uW2Rpc2FibGVkXSwgLnNob3RfX2J1dHRvbltkaXNhYmxlZF0ge1xuICAgIG9wYWNpdHk6IC42NTsgfVxuICAuYnV0dG9uIGksIC50b2dnbGUgaSwgLnBhbmVsLWdyb3VwX190b2dnbGUgaSwgLmFsZXJ0X19kaXNtaXNzIGksIC5jYXJkX19hY3Rpb24gaSwgLnNob3RfX2J1dHRvbiBpIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiA1MCU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiAxNnB4O1xuICAgIGhlaWdodDogMTZweDtcbiAgICBtYXJnaW46IC04cHggOHB4IDAgMDsgfVxuICAuYnV0dG9uLS1wcmltYXJ5LCAuYnV0dG9uLS1zZWNvbmRhcnktbWVudSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg3LCAzNCwgNTMsIDAuOTUpO1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSg3LCAzNCwgNTMsIDAuOTUpO1xuICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgLmJ1dHRvbi0tcHJpbWFyeTpsaW5rLCAuYnV0dG9uLS1zZWNvbmRhcnktbWVudTpsaW5rLCAuYnV0dG9uLS1wcmltYXJ5OnZpc2l0ZWQsIC5idXR0b24tLXNlY29uZGFyeS1tZW51OnZpc2l0ZWQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg3LCAzNCwgNTMsIDAuOTUpO1xuICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDcsIDM0LCA1MywgMC45NSk7XG4gICAgICBjb2xvcjogI2ZmZjsgfVxuICAgIC5idXR0b24tLXByaW1hcnk6Zm9jdXMsIC5idXR0b24tLXNlY29uZGFyeS1tZW51OmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwNzIyMzU7XG4gICAgICBib3JkZXItY29sb3I6ICMwNzIyMzU7XG4gICAgICBjb2xvcjogI2ZmZjsgfVxuICAgIC5idXR0b24tLXByaW1hcnk6aG92ZXIsIC5idXR0b24tLXNlY29uZGFyeS1tZW51OmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwNzIyMzU7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMCA0cHggcmdiYSg3LCAzNCwgNTMsIDAuMTUpO1xuICAgICAgYm9yZGVyLWNvbG9yOiAjMDcyMjM1O1xuICAgICAgY29sb3I6ICNmZmY7IH1cbiAgICAuYnV0dG9uLS1wcmltYXJ5IGkgPiBzdmcgPiAqLCAuYnV0dG9uLS1zZWNvbmRhcnktbWVudSBpID4gc3ZnID4gKiB7XG4gICAgICBmaWxsOiAjZmZmOyB9XG4gICAgLmJ1dHRvbi0tcHJpbWFyeS5idXR0b24tLWdob3N0LCAuYnV0dG9uLS1zZWNvbmRhcnktbWVudSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDcsIDM0LCA1MywgMC45NSk7XG4gICAgICBjb2xvcjogIzA3MjIzNTsgfVxuICAgICAgLmJ1dHRvbi0tcHJpbWFyeS5idXR0b24tLWdob3N0OmxpbmssIC5idXR0b24tLXNlY29uZGFyeS1tZW51OmxpbmssIC5idXR0b24tLXByaW1hcnkuYnV0dG9uLS1naG9zdDp2aXNpdGVkLCAuYnV0dG9uLS1zZWNvbmRhcnktbWVudTp2aXNpdGVkIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDcsIDM0LCA1MywgMC45NSk7XG4gICAgICAgIGNvbG9yOiAjMDcyMjM1OyB9XG4gICAgICAuYnV0dG9uLS1wcmltYXJ5LmJ1dHRvbi0tZ2hvc3Q6Zm9jdXMsIC5idXR0b24tLXNlY29uZGFyeS1tZW51OmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjMDcyMjM1O1xuICAgICAgICBjb2xvcjogIzA3MjIzNTsgfVxuICAgICAgLmJ1dHRvbi0tcHJpbWFyeS5idXR0b24tLWdob3N0OmhvdmVyLCAuYnV0dG9uLS1zZWNvbmRhcnktbWVudTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzA3MjIzNTtcbiAgICAgICAgY29sb3I6ICMwNzIyMzU7IH1cbiAgLmJ1dHRvbi0tc2Vjb25kYXJ5LCAuY2FyZC0taW52ZXJ0ZWQgLmNhcmRfX2FjdGlvbiwgLmNhcmQuY2FyZC0tY291cnQtZGF0ZS1mb3JtIC5jYXJkX19hY3Rpb24sIC5jYXJkLS1pbnZlcnRlZCAuYnV0dG9uLCAuY2FyZC5jYXJkLS1jb3VydC1kYXRlLWZvcm0gLmJ1dHRvbiwgLmNhcmQtLWludmVydGVkIC50b2dnbGUsIC5jYXJkLmNhcmQtLWNvdXJ0LWRhdGUtZm9ybSAudG9nZ2xlLCAuY2FyZC0taW52ZXJ0ZWQgLnBhbmVsLWdyb3VwX190b2dnbGUsIC5jYXJkLmNhcmQtLWNvdXJ0LWRhdGUtZm9ybSAucGFuZWwtZ3JvdXBfX3RvZ2dsZSwgLmNhcmQtLWludmVydGVkIC5hbGVydF9fZGlzbWlzcywgLmNhcmQuY2FyZC0tY291cnQtZGF0ZS1mb3JtIC5hbGVydF9fZGlzbWlzcywgLmNhcmQtLWludmVydGVkIC5zaG90X19idXR0b24sIC5jYXJkLmNhcmQtLWNvdXJ0LWRhdGUtZm9ybSAuc2hvdF9fYnV0dG9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOTUpO1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjk1KTtcbiAgICBjb2xvcjogIzA3MjIzNTsgfVxuICAgIC5idXR0b24tLXNlY29uZGFyeTpsaW5rLCAuY2FyZC0taW52ZXJ0ZWQgLmNhcmRfX2FjdGlvbjpsaW5rLCAuY2FyZC5jYXJkLS1jb3VydC1kYXRlLWZvcm0gLmNhcmRfX2FjdGlvbjpsaW5rLCAuY2FyZC0taW52ZXJ0ZWQgLmJ1dHRvbjpsaW5rLCAuY2FyZC5jYXJkLS1jb3VydC1kYXRlLWZvcm0gLmJ1dHRvbjpsaW5rLCAuY2FyZC0taW52ZXJ0ZWQgLnRvZ2dsZTpsaW5rLCAuY2FyZC5jYXJkLS1jb3VydC1kYXRlLWZvcm0gLnRvZ2dsZTpsaW5rLCAuY2FyZC0taW52ZXJ0ZWQgLnBhbmVsLWdyb3VwX190b2dnbGU6bGluaywgLmNhcmQuY2FyZC0tY291cnQtZGF0ZS1mb3JtIC5wYW5lbC1ncm91cF9fdG9nZ2xlOmxpbmssIC5jYXJkLS1pbnZlcnRlZCAuYWxlcnRfX2Rpc21pc3M6bGluaywgLmNhcmQuY2FyZC0tY291cnQtZGF0ZS1mb3JtIC5hbGVydF9fZGlzbWlzczpsaW5rLCAuY2FyZC0taW52ZXJ0ZWQgLnNob3RfX2J1dHRvbjpsaW5rLCAuY2FyZC5jYXJkLS1jb3VydC1kYXRlLWZvcm0gLnNob3RfX2J1dHRvbjpsaW5rLCAuYnV0dG9uLS1zZWNvbmRhcnk6dmlzaXRlZCwgLmNhcmQtLWludmVydGVkIC5jYXJkX19hY3Rpb246dmlzaXRlZCwgLmNhcmQuY2FyZC0tY291cnQtZGF0ZS1mb3JtIC5jYXJkX19hY3Rpb246dmlzaXRlZCwgLmNhcmQtLWludmVydGVkIC5idXR0b246dmlzaXRlZCwgLmNhcmQuY2FyZC0tY291cnQtZGF0ZS1mb3JtIC5idXR0b246dmlzaXRlZCwgLmNhcmQtLWludmVydGVkIC50b2dnbGU6dmlzaXRlZCwgLmNhcmQuY2FyZC0tY291cnQtZGF0ZS1mb3JtIC50b2dnbGU6dmlzaXRlZCwgLmNhcmQtLWludmVydGVkIC5wYW5lbC1ncm91cF9fdG9nZ2xlOnZpc2l0ZWQsIC5jYXJkLmNhcmQtLWNvdXJ0LWRhdGUtZm9ybSAucGFuZWwtZ3JvdXBfX3RvZ2dsZTp2aXNpdGVkLCAuY2FyZC0taW52ZXJ0ZWQgLmFsZXJ0X19kaXNtaXNzOnZpc2l0ZWQsIC5jYXJkLmNhcmQtLWNvdXJ0LWRhdGUtZm9ybSAuYWxlcnRfX2Rpc21pc3M6dmlzaXRlZCwgLmNhcmQtLWludmVydGVkIC5zaG90X19idXR0b246dmlzaXRlZCwgLmNhcmQuY2FyZC0tY291cnQtZGF0ZS1mb3JtIC5zaG90X19idXR0b246dmlzaXRlZCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOTUpO1xuICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOTUpO1xuICAgICAgY29sb3I6ICMwNzIyMzU7IH1cbiAgICAuYnV0dG9uLS1zZWNvbmRhcnk6Zm9jdXMsIC5jYXJkLS1pbnZlcnRlZCAuY2FyZF9fYWN0aW9uOmZvY3VzLCAuY2FyZC5jYXJkLS1jb3VydC1kYXRlLWZvcm0gLmNhcmRfX2FjdGlvbjpmb2N1cywgLmNhcmQtLWludmVydGVkIC5idXR0b246Zm9jdXMsIC5jYXJkLmNhcmQtLWNvdXJ0LWRhdGUtZm9ybSAuYnV0dG9uOmZvY3VzLCAuY2FyZC0taW52ZXJ0ZWQgLnRvZ2dsZTpmb2N1cywgLmNhcmQuY2FyZC0tY291cnQtZGF0ZS1mb3JtIC50b2dnbGU6Zm9jdXMsIC5jYXJkLS1pbnZlcnRlZCAucGFuZWwtZ3JvdXBfX3RvZ2dsZTpmb2N1cywgLmNhcmQuY2FyZC0tY291cnQtZGF0ZS1mb3JtIC5wYW5lbC1ncm91cF9fdG9nZ2xlOmZvY3VzLCAuY2FyZC0taW52ZXJ0ZWQgLmFsZXJ0X19kaXNtaXNzOmZvY3VzLCAuY2FyZC5jYXJkLS1jb3VydC1kYXRlLWZvcm0gLmFsZXJ0X19kaXNtaXNzOmZvY3VzLCAuY2FyZC0taW52ZXJ0ZWQgLnNob3RfX2J1dHRvbjpmb2N1cywgLmNhcmQuY2FyZC0tY291cnQtZGF0ZS1mb3JtIC5zaG90X19idXR0b246Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgIGJvcmRlci1jb2xvcjogI2ZmZjtcbiAgICAgIGNvbG9yOiAjMDcyMjM1OyB9XG4gICAgLmJ1dHRvbi0tc2Vjb25kYXJ5OmhvdmVyLCAuY2FyZC0taW52ZXJ0ZWQgLmNhcmRfX2FjdGlvbjpob3ZlciwgLmNhcmQuY2FyZC0tY291cnQtZGF0ZS1mb3JtIC5jYXJkX19hY3Rpb246aG92ZXIsIC5jYXJkLS1pbnZlcnRlZCAuYnV0dG9uOmhvdmVyLCAuY2FyZC5jYXJkLS1jb3VydC1kYXRlLWZvcm0gLmJ1dHRvbjpob3ZlciwgLmNhcmQtLWludmVydGVkIC50b2dnbGU6aG92ZXIsIC5jYXJkLmNhcmQtLWNvdXJ0LWRhdGUtZm9ybSAudG9nZ2xlOmhvdmVyLCAuY2FyZC0taW52ZXJ0ZWQgLnBhbmVsLWdyb3VwX190b2dnbGU6aG92ZXIsIC5jYXJkLmNhcmQtLWNvdXJ0LWRhdGUtZm9ybSAucGFuZWwtZ3JvdXBfX3RvZ2dsZTpob3ZlciwgLmNhcmQtLWludmVydGVkIC5hbGVydF9fZGlzbWlzczpob3ZlciwgLmNhcmQuY2FyZC0tY291cnQtZGF0ZS1mb3JtIC5hbGVydF9fZGlzbWlzczpob3ZlciwgLmNhcmQtLWludmVydGVkIC5zaG90X19idXR0b246aG92ZXIsIC5jYXJkLmNhcmQtLWNvdXJ0LWRhdGUtZm9ybSAuc2hvdF9fYnV0dG9uOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMCA0cHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KTtcbiAgICAgIGJvcmRlci1jb2xvcjogI2ZmZjtcbiAgICAgIGNvbG9yOiAjMDcyMjM1OyB9XG4gIC5idXR0b24tLXRlcnRpYXJ5LCAuY2FyZC0taW52ZXJ0ZWQgW3R5cGU9J3N1Ym1pdCddLCAuY2FyZC5jYXJkLS1jb3VydC1kYXRlLWZvcm0gW3R5cGU9J3N1Ym1pdCddIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDIwLCAxMTksIDE2OSwgMC45NSk7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDIwLCAxMTksIDE2OSwgMC45NSk7XG4gICAgY29sb3I6ICNmZmY7IH1cbiAgICAuYnV0dG9uLS10ZXJ0aWFyeTpsaW5rLCAuY2FyZC0taW52ZXJ0ZWQgOmxpbmtbdHlwZT0nc3VibWl0J10sIC5jYXJkLmNhcmQtLWNvdXJ0LWRhdGUtZm9ybSA6bGlua1t0eXBlPSdzdWJtaXQnXSwgLmJ1dHRvbi0tdGVydGlhcnk6dmlzaXRlZCwgLmNhcmQtLWludmVydGVkIDp2aXNpdGVkW3R5cGU9J3N1Ym1pdCddLCAuY2FyZC5jYXJkLS1jb3VydC1kYXRlLWZvcm0gOnZpc2l0ZWRbdHlwZT0nc3VibWl0J10ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyMCwgMTE5LCAxNjksIDAuOTUpO1xuICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDIwLCAxMTksIDE2OSwgMC45NSk7XG4gICAgICBjb2xvcjogI2ZmZjsgfVxuICAgIC5idXR0b24tLXRlcnRpYXJ5OmZvY3VzLCAuY2FyZC0taW52ZXJ0ZWQgOmZvY3VzW3R5cGU9J3N1Ym1pdCddLCAuY2FyZC5jYXJkLS1jb3VydC1kYXRlLWZvcm0gOmZvY3VzW3R5cGU9J3N1Ym1pdCddIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMxNDc3YTk7XG4gICAgICBib3JkZXItY29sb3I6ICMxNDc3YTk7XG4gICAgICBjb2xvcjogI2ZmZjsgfVxuICAgIC5idXR0b24tLXRlcnRpYXJ5OmhvdmVyLCAuY2FyZC0taW52ZXJ0ZWQgOmhvdmVyW3R5cGU9J3N1Ym1pdCddLCAuY2FyZC5jYXJkLS1jb3VydC1kYXRlLWZvcm0gOmhvdmVyW3R5cGU9J3N1Ym1pdCddIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMxNDc3YTk7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMCA0cHggcmdiYSgyMCwgMTE5LCAxNjksIDAuMTUpO1xuICAgICAgYm9yZGVyLWNvbG9yOiAjMTQ3N2E5O1xuICAgICAgY29sb3I6ICNmZmY7IH1cbiAgLmJ1dHRvbi0tbGluaywgLnBhbmVsLWdyb3VwX190b2dnbGUge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6ICMwMDJmODc7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cbiAgICAuYnV0dG9uLS1saW5rOmxpbmssIC5wYW5lbC1ncm91cF9fdG9nZ2xlOmxpbmssIC5idXR0b24tLWxpbms6dmlzaXRlZCwgLnBhbmVsLWdyb3VwX190b2dnbGU6dmlzaXRlZCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBjb2xvcjogIzAwMmY4NztcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG4gICAgLmJ1dHRvbi0tbGluazpmb2N1cywgLnBhbmVsLWdyb3VwX190b2dnbGU6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgY29sb3I6ICMwMDJmODc7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuICAgIC5idXR0b24tLWxpbms6aG92ZXIsIC5wYW5lbC1ncm91cF9fdG9nZ2xlOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmMmY0Zjk7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGNvbG9yOiAjMDA0MWJhO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cbiAgLmJ1dHRvbi0tY29udHJvbCwgLnVpLWRhdGVwaWNrZXItdHJpZ2dlciB7XG4gICAgd2lkdGg6IDQ4cHg7XG4gICAgaGVpZ2h0OiA0NHB4O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y2ZjZmNjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1MCU7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxNnB4IGF1dG87XG4gICAgYm9yZGVyOiAycHggc29saWQgIzZmNzc3YjtcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgY29sb3I6ICMwNzIyMzU7XG4gICAgZm9udC1zaXplOiAwO1xuICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAgICAgLmJ1dHRvbi0tY29udHJvbCwgLnVpLWRhdGVwaWNrZXItdHJpZ2dlciB7XG4gICAgICAgIGhlaWdodDogNDRweDsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgLmJ1dHRvbi0tY29udHJvbCwgLnVpLWRhdGVwaWNrZXItdHJpZ2dlciB7XG4gICAgICAgIGhlaWdodDogNDhweDsgfSB9XG4gICAgLmJ1dHRvbi0tY29udHJvbDpsaW5rLCAudWktZGF0ZXBpY2tlci10cmlnZ2VyOmxpbmsge1xuICAgICAgY29sb3I6ICMxODE5MTk7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgICAuYnV0dG9uLS1jb250cm9sOnZpc2l0ZWQsIC51aS1kYXRlcGlja2VyLXRyaWdnZXI6dmlzaXRlZCB7XG4gICAgICBjb2xvcjogIzE4MTkxOTsgfVxuICAgIC5idXR0b24tLWNvbnRyb2w6Zm9jdXMsIC51aS1kYXRlcGlja2VyLXRyaWdnZXI6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgIGJvcmRlci1jb2xvcjogIzA3MjIzNTtcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDRweCAjZmZiZjQ3O1xuICAgICAgb3V0bGluZTogMDsgfVxuICAgIC5idXR0b24tLWNvbnRyb2w6aG92ZXIsIC51aS1kYXRlcGlja2VyLXRyaWdnZXI6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y2ZjZmNjtcbiAgICAgIGJvcmRlci1jb2xvcjogIzA3MjIzNTtcbiAgICAgIGNvbG9yOiAjMDA0MWJhOyB9XG4gIC5idXR0b24tLXNlY29uZGFyeS1tZW51IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZy1yaWdodDogNDhweDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpczsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAgICAgLmJ1dHRvbi0tc2Vjb25kYXJ5LW1lbnUge1xuICAgICAgICB3aWR0aDogNDguMDc2OTIzMDc2OSU7IH0gfVxuICAgIC5idXR0b24tLXNlY29uZGFyeS1tZW51OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICByaWdodDogMTZweDtcbiAgICAgIHdpZHRoOiAxNnB4O1xuICAgICAgaGVpZ2h0OiAxNnB4O1xuICAgICAgbWFyZ2luLXRvcDogLThweDtcbiAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9pY29ucy9pX3NsaWRlLWxlZnQuc3ZnXCIpIG5vLXJlcGVhdCA1MCUgNTAlLzEwMCUgYXV0bzsgfVxuICAuYnV0dG9uLS1jb250ZXh0dWFsLW1lbnUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogNDhweDtcbiAgICBoZWlnaHQ6IDQ4cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICBib3JkZXItY29sb3I6ICNmZmY7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGNvbG9yOiAjMDAyZjg3O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgIC5idXR0b24tLWNvbnRleHR1YWwtbWVudTpsaW5rLCAuYnV0dG9uLS1jb250ZXh0dWFsLW1lbnU6dmlzaXRlZCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgYm9yZGVyLWNvbG9yOiAjZmZmO1xuICAgICAgY29sb3I6ICMwMDJmODc7IH1cbiAgICAuYnV0dG9uLS1jb250ZXh0dWFsLW1lbnU6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2YyZjRmOTtcbiAgICAgIGJvcmRlci1jb2xvcjogI2YyZjRmOTtcbiAgICAgIGNvbG9yOiAjMDAyZjg3OyB9XG4gICAgLmJ1dHRvbi0tY29udGV4dHVhbC1tZW51OmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmMmY0Zjk7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgYm9yZGVyLWNvbG9yOiAjZjJmNGY5O1xuICAgICAgY29sb3I6ICMwMDJmODc7IH1cbiAgICAuYnV0dG9uLS1jb250ZXh0dWFsLW1lbnUgc3ZnIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgd2lkdGg6IDE2cHg7XG4gICAgICBoZWlnaHQ6IDE2cHg7XG4gICAgICBtYXJnaW46IC04cHggMCAwIC04cHg7IH1cbiAgLmJ1dHRvbi0tYWRkLCAuYnV0dG9uLS1hZGQ6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9pY29ucy9pX2NpcmNsZS1hZGQuc3ZnXCIpO1xuICAgIGNvbG9yOiBpbmhlcml0OyB9XG4gIC5idXR0b24tLWFkZCB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgcGFkZGluZzogMCAxNnB4IDAgNDBweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxNnB4IDUwJTtcbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAuYnV0dG9uLS1yZW1vdmUsIC5idXR0b24tLXJlbW92ZTpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2ljb25zL2lfY2lyY2xlLWRlbGV0ZS5zdmdcIik7IH1cbiAgLmJ1dHRvbi0tY2FsZW5kYXIsIC51aS1kYXRlcGlja2VyLXRyaWdnZXIsIC5idXR0b24tLWNhbGVuZGFyOmZvY3VzLCAudWktZGF0ZXBpY2tlci10cmlnZ2VyOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvaWNvbnMvaV9kYXRlcGlja2VyLnN2Z1wiKTsgfVxuXG4udG9nZ2xlLS1zZWFyY2gsIC50b2dnbGUtLW1lbnUge1xuICB3aWR0aDogNjRweDtcbiAgcGFkZGluZzogMDtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgZm9udC1zaXplOiAwO1xuICBsaW5lLWhlaWdodDogMDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICAudG9nZ2xlLS1zZWFyY2gsIC50b2dnbGUtLW1lbnUge1xuICAgICAgd2lkdGg6IDgwcHg7IH0gfVxuICAudG9nZ2xlLS1zZWFyY2g6aG92ZXIsIC50b2dnbGUtLW1lbnU6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIC50b2dnbGUtLXNlYXJjaDpmb2N1cywgLnRvZ2dsZS0tbWVudTpmb2N1cyB7XG4gICAgYm94LXNoYWRvdzogMCAtNHB4ICMxNDc3YTk7XG4gICAgb3V0bGluZTogMDsgfVxuXG4udG9nZ2xlLS1zZWFyY2gge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvaWNvbnMvaV9zZWFyY2guc3ZnXCIpIG5vLXJlcGVhdCA1MCUgNTAlLzIwcHggYXV0bztcbiAgYm9yZGVyOiAwO1xuICBvcmRlcjogMTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICAudG9nZ2xlLS1zZWFyY2gge1xuICAgICAgYmFja2dyb3VuZC1zaXplOiAyNHB4IGF1dG87IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgLnRvZ2dsZS0tc2VhcmNoIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAudG9nZ2xlLS1zZWFyY2g6aG92ZXIsIC50b2dnbGUtLXNlYXJjaDpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2ljb25zL2lfc2VhcmNoLnN2Z1wiKTtcbiAgICBib3gtc2hhZG93OiBub25lOyB9XG4gIC50b2dnbGUtLXNlYXJjaC50b2dnbGUtLWFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzA3MjIzNTsgfVxuXG4udG9nZ2xlLS1tZW51IHtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2ljb25zL2lfbWVudS5zdmdcIikgbm8tcmVwZWF0IDUwJSA1MCUvMjRweCBhdXRvO1xuICBib3JkZXI6IDA7XG4gIG9yZGVyOiAzOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAgIC50b2dnbGUtLW1lbnUge1xuICAgICAgYmFja2dyb3VuZC1zaXplOiAyNHB4IGF1dG87IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgLnRvZ2dsZS0tbWVudSB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgLnRvZ2dsZS0tbWVudTpob3ZlciwgLnRvZ2dsZS0tbWVudTpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2ljb25zL2lfbWVudS5zdmdcIik7XG4gICAgYm94LXNoYWRvdzogbm9uZTsgfVxuXG4udG9nZ2xlLS1hY3RpdmUsIC50b2dnbGUtLWFjdGl2ZTpob3ZlciwgLnRvZ2dsZS0tYWN0aXZlOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2ljb25zL2lfY2xvc2Vfd2hpdGUuc3ZnXCIpO1xuICBiYWNrZ3JvdW5kLXNpemU6IDI0cHggYXV0bztcbiAgei1pbmRleDogMTAwMDM7IH1cblxuLmNsb3NlLS1zZWNvbmRhcnktbWVudSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgd2lkdGg6IDY0cHg7XG4gIGhlaWdodDogNjhweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICAuY2xvc2UtLXNlY29uZGFyeS1tZW51IHtcbiAgICAgIHdpZHRoOiA4MHB4O1xuICAgICAgaGVpZ2h0OiA4NHB4OyB9IH1cbiAgLmNsb3NlLS1zZWNvbmRhcnktbWVudSBzdmcge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTUwJSk7IH1cbiAgICAuY2xvc2UtLXNlY29uZGFyeS1tZW51IHN2ZyAqIHtcbiAgICAgIGZpbGw6ICNmZmY7IH1cblxuLmxvZ28ge1xuICBtYXJnaW46IDA7XG4gIGZvbnQtZmFtaWx5OiBcIkZGIFRpYmVyZVwiLCBQYWxhdGlubywgR2VvcmdpYSwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxOXB4O1xuICBsaW5lLWhlaWdodDogMS4xMztcbiAgY29sb3I6ICMwMDJmODc7IH1cbiAgLmxvZ28gYSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBjb2xvcjogIzAwMmY4NztcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgICAubG9nbyBhOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IDY0cHg7XG4gICAgICBoZWlnaHQ6IDY0cHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDE2cHg7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvbF9zZWFsLWNvbG9yLnN2Z1wiKSBuby1yZXBlYXQgNTAlIDUwJS8xMDAlIGF1dG87IH1cbiAgICAubG9nbyBhOnZpc2l0ZWQge1xuICAgICAgY29sb3I6ICMwMDJmODc7IH1cbiAgICAubG9nbyBhOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAjMDA0MWJhOyB9XG4gICAgLmxvZ28gYTpmb2N1cyB7XG4gICAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCA0cHggI2ZmYmY0NzsgfVxuICAubG9nbyBkaXYge1xuICAgIG1heC13aWR0aDogMTI4cHg7IH1cbiAgLmxvZ28gc3Ryb25nIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDEycHggMCA0cHg7IH1cbiAgICAubG9nbyBzdHJvbmcgKyBzcGFuIHtcbiAgICAgIGNvbG9yOiAjMTgxOTE5O1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZTsgfVxuICAubG9nby0taGVhZGVyIHtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBvcmRlcjogMjsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgIC5sb2dvLS1oZWFkZXIge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDMycHg7IH0gfVxuICAgIC5sb2dvLS1oZWFkZXIgYSB7XG4gICAgICB3aWR0aDogMTYwcHg7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgYWxpZ24tY29udGVudDogY2VudGVyOyB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTQ0MHB4KSB7XG4gICAgICAgIC5sb2dvLS1oZWFkZXIgYSB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgY29sb3I6ICMwMDJmODc7IH0gfVxuICAgICAgLmxvZ28tLWhlYWRlciBhOmJlZm9yZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDE0NDBweCkge1xuICAgICAgICAgIC5sb2dvLS1oZWFkZXIgYTpiZWZvcmUge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB3aWR0aDogNjRweDtcbiAgICAgICAgICAgIGhlaWdodDogNjRweDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTsgfSB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTQ0MHB4KSB7XG4gICAgICAgIC5sb2dvLS1oZWFkZXIgYSBzcGFuIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB3aWR0aDogMTYwcHg7XG4gICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDsgfSB9XG4gICAgICAubG9nby0taGVhZGVyIGE6aG92ZXIge1xuICAgICAgICBjb2xvcjogIzAwNDFiYTsgfVxuICAubG9nby0tZm9vdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB3aWR0aDogNjRweDtcbiAgICBoZWlnaHQ6IDY0cHg7XG4gICAgbWFyZ2luOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01MCUsIC01MCUsIDApO1xuICAgIHotaW5kZXg6IDE7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICAgIC5sb2dvLS1mb290ZXIge1xuICAgICAgICB3aWR0aDogOTZweDtcbiAgICAgICAgaGVpZ2h0OiA5NnB4OyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAubG9nby0tZm9vdGVyIHtcbiAgICAgICAgd2lkdGg6IDEyOHB4O1xuICAgICAgICBoZWlnaHQ6IDEyOHB4OyB9IH1cbiAgICAubG9nby0tZm9vdGVyIGEge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlOyB9XG4gICAgICAubG9nby0tZm9vdGVyIGE6dmlzaXRlZCB7XG4gICAgICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgICAubG9nby0tZm9vdGVyIGE6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgICAgLmxvZ28tLWZvb3RlciBhOmJlZm9yZSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlOyB9XG5cbi50YWdsaW5lIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDMycHg7XG4gIG1hcmdpbjogMTZweCBhdXRvIDA7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9sX3RhZ2xpbmUuc3ZnP3YyXCIpIG5vLXJlcGVhdCA1MCUgNTAlL2F1dG8gMTAwJTtcbiAgZm9udC1zaXplOiAwO1xuICBsaW5lLWhlaWdodDogMDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICAudGFnbGluZSB7XG4gICAgICBtYXgtd2lkdGg6IDMwMHB4OyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgIC50YWdsaW5lIHtcbiAgICAgIG1hcmdpbjogLTMycHggYXV0byA2NHB4OyB9IH1cblxuLmxpbmtzIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDMycHg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gICAgLmxpbmtzIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDY0cHg7IH0gfVxuICAubGlua3NfX2xpc3Qge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7IH1cbiAgICAubGlua3NfX2xpc3QtLW5vLXJlc3VsdHMge1xuICAgICAgbGlzdC1zdHlsZTogZGlzYztcbiAgICAgIG1hcmdpbjogMCAwIDAgNDBweDsgfVxuICAubGlua3NfX2l0ZW0ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMjgwcHgpIHtcbiAgICAgIC5saW5rc19faXRlbS0tYnVsbGV0OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICdcXDIwMjInOyB9IH1cbiAgLmxpbmtzX19pdGVtLS1mYWNlYm9vayBhOmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2ljb25zL2lfc29jaWFsLWZhY2Vib29rLnN2Z1wiKTsgfVxuICAubGlua3NfX2l0ZW0tLXR3aXR0ZXIgYTpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9pY29ucy9pX3NvY2lhbC10d2l0dGVyLnN2Z1wiKTsgfVxuICAubGlua3NfX2l0ZW0tLWxpbmtlZGluIGE6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvaWNvbnMvaV9zb2NpYWwtbGlua2VkaW4uc3ZnXCIpOyB9XG4gIC5saW5rc19faXRlbS0teW91dHViZSBhOmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2ljb25zL2lfc29jaWFsLXlvdXR1YmUuc3ZnXCIpOyB9XG4gIC5saW5rc19faXRlbS0taW5zdGFncmFtIGE6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvaWNvbnMvaV9zb2NpYWwtaW5zdGFncmFtLnN2Z1wiKTsgfVxuICAubGlua3NfX2l0ZW0tLWVtYWlsIGE6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvaWNvbnMvaV9zb2NpYWwtZW1haWwuc3ZnXCIpOyB9XG4gIC5saW5rcy0tY29ubmVjdCB7XG4gICAgbWFyZ2luOiAwOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEyODBweCkge1xuICAgICAgLmxpbmtzLS1jb25uZWN0IHtcbiAgICAgICAgd2lkdGg6IDIzLjY3MTg3NSU7XG4gICAgICAgIG9yZGVyOiAyOyB9IH1cbiAgLmxpbmtzLS1jb25uZWN0LXNpbXBsZSB7XG4gICAgbWFyZ2luOiAwIDAgMjhweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICAgIC5saW5rcy0tY29ubmVjdC1zaW1wbGUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMnB4OyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTI4MHB4KSB7XG4gICAgICAubGlua3MtLWNvbm5lY3Qtc2ltcGxlIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDM4cHg7XG4gICAgICAgIG9yZGVyOiBpbmhlcml0OyB9IH1cbiAgICAubGlua3MtLWNvbm5lY3Qtc2ltcGxlIC5saW5rc19fbGlzdCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gICAgLmxpbmtzLS1jb25uZWN0LXNpbXBsZSAubGlua3NfX2l0ZW0ge1xuICAgICAgbWFyZ2luOiAwIDhweDsgfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gICAgICAgIC5saW5rcy0tY29ubmVjdC1zaW1wbGUgLmxpbmtzX19pdGVtIHtcbiAgICAgICAgICBtYXJnaW46IDAgMTJweDsgfSB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTI4MHB4KSB7XG4gICAgICAgIC5saW5rcy0tY29ubmVjdC1zaW1wbGUgLmxpbmtzX19pdGVtIHtcbiAgICAgICAgICBtYXJnaW46IDAgMTZweDsgfSB9XG4gICAgLmxpbmtzLS1jb25uZWN0LXNpbXBsZSAubGlua3NfX2l0ZW0gYSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB3aWR0aDogMzZweDtcbiAgICAgIGhlaWdodDogMzZweDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgICAgIC5saW5rcy0tY29ubmVjdC1zaW1wbGUgLmxpbmtzX19pdGVtIGE6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHJpZ2h0OiAtMjRweDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAubGlua3MtLWNvbm5lY3Qtc2ltcGxlIC5saW5rc19faXRlbSBhOmJlZm9yZSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogYXV0byAxMDAlOyB9XG4gICAgLmxpbmtzLS1jb25uZWN0LXNpbXBsZSAubGlua3NfX2l0ZW0tLWZhY2Vib29rIGE6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9pY29ucy9pX3NvY2lhbC1mYWNlYm9vay1hbHQuc3ZnXCIpOyB9XG4gICAgLmxpbmtzLS1jb25uZWN0LXNpbXBsZSAubGlua3NfX2l0ZW0tLXR3aXR0ZXIgYTpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2ljb25zL2lfc29jaWFsLXR3aXR0ZXItYWx0LnN2Z1wiKTsgfVxuICAgIC5saW5rcy0tY29ubmVjdC1zaW1wbGUgLmxpbmtzX19pdGVtLS15b3V0dWJlIGE6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9pY29ucy9pX3NvY2lhbC15b3V0dWJlLWFsdC5wbmdcIik7IH1cbiAgICAubGlua3MtLWNvbm5lY3Qtc2ltcGxlIC5saW5rc19faXRlbS0taW5zdGFncmFtIGE6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9pY29ucy9pX3NvY2lhbC1pbnN0YWdyYW0tYWx0LnN2Z1wiKTsgfVxuICAubGlua3MtLXNlYXJjaC1xdWljayB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBtYXJnaW46IDA7IH1cbiAgICAubGlua3MtLXNlYXJjaC1xdWljayAubGlua3NfX2l0ZW0ge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNjY2NmZDE7IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgICAgLmxpbmtzLS1zZWFyY2gtcXVpY2sgLmxpbmtzX19pdGVtIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAxNnB4O1xuICAgICAgICAgIGJvcmRlci10b3A6IDA7IH0gfVxuICAgICAgLmxpbmtzLS1zZWFyY2gtcXVpY2sgLmxpbmtzX19pdGVtIGEge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcGFkZGluZzogMTZweCAwOyB9XG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgICAgICAubGlua3MtLXNlYXJjaC1xdWljayAubGlua3NfX2l0ZW0gYSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgICAgICBwYWRkaW5nOiAwOyB9IH1cbiAgICAubGlua3MtLXNlYXJjaC1xdWljayAubGlua3NfX2l0ZW06Zmlyc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLXRvcDogMDsgfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgICAubGlua3MtLXNlYXJjaC1xdWljayAubGlua3NfX2l0ZW06Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDA7IH0gfVxuICAgIC5saW5rcy0tc2VhcmNoLXF1aWNrLmxpbmtzLS1hY3RpdmUge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAubGlua3MtLXNlYXJjaC1xdWljayB+IC5saW5rcy0tYWN0aXZlIHtcbiAgICAgIG1hcmdpbi10b3A6IDMycHg7IH1cbiAgLmxpbmtzLS1zZWFyY2gtc3VnZ2VzdCB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgIC5saW5rcy0tc2VhcmNoLXN1Z2dlc3Qge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMnB4OyB9IH1cbiAgICAubGlua3MtLXNlYXJjaC1zdWdnZXN0IC5saW5rc19faXRlbSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2NjY2ZkMTsgfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgICAubGlua3MtLXNlYXJjaC1zdWdnZXN0IC5saW5rc19faXRlbSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMTZweDtcbiAgICAgICAgICBib3JkZXItdG9wOiAwOyB9IH1cbiAgICAgIC5saW5rcy0tc2VhcmNoLXN1Z2dlc3QgLmxpbmtzX19pdGVtIGkge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDE2cHg7XG4gICAgICAgIGhlaWdodDogMTZweDtcbiAgICAgICAgbWFyZ2luLXRvcDogLThweDsgfVxuICAgICAgLmxpbmtzLS1zZWFyY2gtc3VnZ2VzdCAubGlua3NfX2l0ZW0gc3ZnIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSgtNTAlKTsgfVxuICAgICAgLmxpbmtzLS1zZWFyY2gtc3VnZ2VzdCAubGlua3NfX2l0ZW0gYSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwYWRkaW5nOiAxNnB4IDAgMTZweCAzMnB4O1xuICAgICAgICBmb250LXdlaWdodDogNDAwOyB9XG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgICAgICAubGlua3MtLXNlYXJjaC1zdWdnZXN0IC5saW5rc19faXRlbSBhIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMCAwIDMycHg7IH0gfVxuICAgIC5saW5rcy0tc2VhcmNoLXN1Z2dlc3QgLmxpbmtzX19pdGVtOmZpcnN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci10b3A6IDA7IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgICAgLmxpbmtzLS1zZWFyY2gtc3VnZ2VzdCAubGlua3NfX2l0ZW06Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDA7IH0gfVxuICAgIC5saW5rcy0tc2VhcmNoLXN1Z2dlc3QgbWFyayB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7IH1cbiAgICAubGlua3MtLXNlYXJjaC1zdWdnZXN0LmxpbmtzLS1hY3RpdmUge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLmxpbmtzLS1zZWFyY2gtdG9wIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgLmxpbmtzLS1zZWFyY2gtdG9wIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDMycHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMycHg7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjY2NjZmQxOyB9IH1cbiAgICAubGlua3MtLXNlYXJjaC10b3AgLmxpbmtzX19pdGVtIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjY2NjZmQxOyB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAgIC5saW5rcy0tc2VhcmNoLXRvcCAubGlua3NfX2l0ZW0ge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDE2cHg7XG4gICAgICAgICAgYm9yZGVyLXRvcDogMDsgfSB9XG4gICAgICAubGlua3MtLXNlYXJjaC10b3AgLmxpbmtzX19pdGVtIGEge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcGFkZGluZzogMTZweCAwOyB9XG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgICAgICAubGlua3MtLXNlYXJjaC10b3AgLmxpbmtzX19pdGVtIGEge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICAgICAgcGFkZGluZzogMDsgfSB9XG4gICAgLmxpbmtzLS1zZWFyY2gtdG9wIC5saW5rc19faXRlbTpmaXJzdC1jaGlsZCB7XG4gICAgICBib3JkZXItdG9wOiAwOyB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAgIC5saW5rcy0tc2VhcmNoLXRvcCAubGlua3NfX2l0ZW06Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDA7IH0gfVxuICAgIC5saW5rcy0tc2VhcmNoLXRvcC5saW5rcy0tYWN0aXZlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5saW5rcy0tc2VhcmNoLWFsbCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBtYXJnaW46IDA7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgIC5saW5rcy0tc2VhcmNoLWFsbCB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAzMnB4O1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2NjY2ZkMTsgfSB9XG4gICAgLmxpbmtzLS1zZWFyY2gtYWxsLmxpbmtzLS1hY3RpdmUge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLmxpbmtzLS1jb250ZXh0dWFsIC5saW5rc19fdGl0bGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAgICAgLmxpbmtzLS1jb250ZXh0dWFsIC5saW5rc19fdGl0bGU6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIGxlZnQ6IC0zMnB4O1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDE2cHg7XG4gICAgICAgIGhlaWdodDogMTZweDtcbiAgICAgICAgbWFyZ2luLXRvcDogLThweDtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2ljb25zL2lfYXJyb3ctYm90dG9tLnN2Z1wiKSBuby1yZXBlYXQgNTAlIDUwJS8xMDAlIGF1dG87IH0gfVxuXG4udGl0bGVfX2xhYmVsIHtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4udGl0bGVfX2Rlc2NyaXB0aW9uIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMTZweCAwIDA7XG4gIGNvbG9yOiAjMTgxOTE5O1xuICBmb250LXNpemU6IDE2cHg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gICAgLnRpdGxlX19kZXNjcmlwdGlvbiB7XG4gICAgICBmb250LXNpemU6IDE5cHg7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgLnRpdGxlX19kZXNjcmlwdGlvbiB7XG4gICAgICBmb250LXNpemU6IDIxcHg7IH0gfVxuICAudGl0bGVfX2Rlc2NyaXB0aW9uLS1wZXJzb24ge1xuICAgIGNvbG9yOiAjNmY3NzdiO1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBsaW5lLWhlaWdodDogMS40ZW07IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICAgIC50aXRsZV9fZGVzY3JpcHRpb24tLXBlcnNvbiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTlweDsgfSB9XG5cbi50aXRsZS0tcHJpbWFyeSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luOiAzMnB4IDA7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gICAgLnRpdGxlLS1wcmltYXJ5IHtcbiAgICAgIG1hcmdpbjogNjRweCAwOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEyODBweCkge1xuICAgIC50aXRsZS0tcHJpbWFyeSB7XG4gICAgICBtYXJnaW46IDEyOHB4IDA7IH0gfVxuICAudGl0bGUtLXByaW1hcnkgLnRpdGxlX19sYWJlbDpsYXN0LWNoaWxkOmFmdGVyLFxuICAudGl0bGUtLXByaW1hcnkgLnRpdGxlX19kZXNjcmlwdGlvbjpsYXN0LWNoaWxkOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogNTVweDtcbiAgICBoZWlnaHQ6IDRweDtcbiAgICBtYXJnaW4tdG9wOiAzMnB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNhZTkzNmM7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICAgIC50aXRsZS0tcHJpbWFyeSAudGl0bGVfX2xhYmVsOmxhc3QtY2hpbGQ6YWZ0ZXIsXG4gICAgICAudGl0bGUtLXByaW1hcnkgLnRpdGxlX19kZXNjcmlwdGlvbjpsYXN0LWNoaWxkOmFmdGVyIHtcbiAgICAgICAgd2lkdGg6IDU3cHg7XG4gICAgICAgIGhlaWdodDogNnB4O1xuICAgICAgICBtYXJnaW4tdG9wOiA2NHB4OyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAudGl0bGUtLXByaW1hcnkgLnRpdGxlX19sYWJlbDpsYXN0LWNoaWxkOmFmdGVyLFxuICAgICAgLnRpdGxlLS1wcmltYXJ5IC50aXRsZV9fZGVzY3JpcHRpb246bGFzdC1jaGlsZDphZnRlciB7XG4gICAgICAgIHdpZHRoOiA4NXB4O1xuICAgICAgICBoZWlnaHQ6IDhweDsgfSB9XG4gIC50aXRsZS0tcHJpbWFyeSAudGl0bGVfX2xhYmVsIHtcbiAgICBtYXJnaW4tdG9wOiAwOyB9XG4gIC50aXRsZS0tcHJpbWFyeSAubWV0YSArIFtpdGVtcHJvcD0nbmFtZSddLCAudGl0bGUtLXByaW1hcnkgLmxpbmtzLS1zZWFyY2gtcXVpY2sgLmxpbmtzX190aXRsZSArIFtpdGVtcHJvcD0nbmFtZSddLCAubGlua3MtLXNlYXJjaC1xdWljayAudGl0bGUtLXByaW1hcnkgLmxpbmtzX190aXRsZSArIFtpdGVtcHJvcD0nbmFtZSddLCAudGl0bGUtLXByaW1hcnkgLmxpbmtzLS1zZWFyY2gtc3VnZ2VzdCAubGlua3NfX3RpdGxlICsgW2l0ZW1wcm9wPSduYW1lJ10sIC5saW5rcy0tc2VhcmNoLXN1Z2dlc3QgLnRpdGxlLS1wcmltYXJ5IC5saW5rc19fdGl0bGUgKyBbaXRlbXByb3A9J25hbWUnXSwgLnRpdGxlLS1wcmltYXJ5IC5saW5rcy0tc2VhcmNoLXRvcCAubGlua3NfX3RpdGxlICsgW2l0ZW1wcm9wPSduYW1lJ10sIC5saW5rcy0tc2VhcmNoLXRvcCAudGl0bGUtLXByaW1hcnkgLmxpbmtzX190aXRsZSArIFtpdGVtcHJvcD0nbmFtZSddLCAudGl0bGUtLXByaW1hcnkgLmxpc3QtLXJlY29nbml0aW9uIC5pdGVtX19tZXRhICsgW2l0ZW1wcm9wPSduYW1lJ10sIC5saXN0LS1yZWNvZ25pdGlvbiAudGl0bGUtLXByaW1hcnkgLml0ZW1fX21ldGEgKyBbaXRlbXByb3A9J25hbWUnXSwgLnRpdGxlLS1wcmltYXJ5IC5jbG9zaW5nX19tZXRhICsgW2l0ZW1wcm9wPSduYW1lJ10sIC50aXRsZS0tcHJpbWFyeSAuY2hpcF9fbGFiZWwgKyBbaXRlbXByb3A9J25hbWUnXSwgLnRpdGxlLS1wcmltYXJ5IC5kaXN0cmljdF9fbWV0YSArIFtpdGVtcHJvcD0nbmFtZSddLCAudGl0bGUtLXByaW1hcnkgLnNob3RfX3ByZWZpeCArIFtpdGVtcHJvcD0nbmFtZSddLCAudGl0bGUtLXByaW1hcnkgLnNob3RfX3N1ZmZpeCArIFtpdGVtcHJvcD0nbmFtZSddLFxuICAudGl0bGUtLXByaW1hcnkgLm1ldGEgKyBbaXRlbXByb3A9J2hlYWRsaW5lJ10sXG4gIC50aXRsZS0tcHJpbWFyeSAubGlua3MtLXNlYXJjaC1xdWljayAubGlua3NfX3RpdGxlICsgW2l0ZW1wcm9wPSdoZWFkbGluZSddLFxuICAubGlua3MtLXNlYXJjaC1xdWljayAudGl0bGUtLXByaW1hcnkgLmxpbmtzX190aXRsZSArIFtpdGVtcHJvcD0naGVhZGxpbmUnXSxcbiAgLnRpdGxlLS1wcmltYXJ5IC5saW5rcy0tc2VhcmNoLXN1Z2dlc3QgLmxpbmtzX190aXRsZSArIFtpdGVtcHJvcD0naGVhZGxpbmUnXSxcbiAgLmxpbmtzLS1zZWFyY2gtc3VnZ2VzdCAudGl0bGUtLXByaW1hcnkgLmxpbmtzX190aXRsZSArIFtpdGVtcHJvcD0naGVhZGxpbmUnXSxcbiAgLnRpdGxlLS1wcmltYXJ5IC5saW5rcy0tc2VhcmNoLXRvcCAubGlua3NfX3RpdGxlICsgW2l0ZW1wcm9wPSdoZWFkbGluZSddLFxuICAubGlua3MtLXNlYXJjaC10b3AgLnRpdGxlLS1wcmltYXJ5IC5saW5rc19fdGl0bGUgKyBbaXRlbXByb3A9J2hlYWRsaW5lJ10sXG4gIC50aXRsZS0tcHJpbWFyeSAubGlzdC0tcmVjb2duaXRpb24gLml0ZW1fX21ldGEgKyBbaXRlbXByb3A9J2hlYWRsaW5lJ10sXG4gIC5saXN0LS1yZWNvZ25pdGlvbiAudGl0bGUtLXByaW1hcnkgLml0ZW1fX21ldGEgKyBbaXRlbXByb3A9J2hlYWRsaW5lJ10sXG4gIC50aXRsZS0tcHJpbWFyeSAuY2xvc2luZ19fbWV0YSArIFtpdGVtcHJvcD0naGVhZGxpbmUnXSxcbiAgLnRpdGxlLS1wcmltYXJ5IC5jaGlwX19sYWJlbCArIFtpdGVtcHJvcD0naGVhZGxpbmUnXSxcbiAgLnRpdGxlLS1wcmltYXJ5IC5kaXN0cmljdF9fbWV0YSArIFtpdGVtcHJvcD0naGVhZGxpbmUnXSxcbiAgLnRpdGxlLS1wcmltYXJ5IC5zaG90X19wcmVmaXggKyBbaXRlbXByb3A9J2hlYWRsaW5lJ10sXG4gIC50aXRsZS0tcHJpbWFyeSAuc2hvdF9fc3VmZml4ICsgW2l0ZW1wcm9wPSdoZWFkbGluZSddIHtcbiAgICBtYXJnaW4tdG9wOiAxNnB4OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMjgwcHgpIHtcbiAgICAudGl0bGUtLXByaW1hcnkgW2l0ZW1wcm9wPSdkZXNjcmlwdGlvbiddIHtcbiAgICAgIG1heC13aWR0aDogNjYuMDkzNzUlOyB9IH1cblxuLnRpdGxlLS1zZWNvbmRhcnksIC5iYW5kX190aXRsZSB7XG4gIHBhZGRpbmctYm90dG9tOiAxNnB4O1xuICBtYXJnaW46IDAgMCAzMnB4O1xuICBib3JkZXItYm90dG9tOiA0cHggc29saWQgIzE4MTkxOTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICAudGl0bGUtLXNlY29uZGFyeSwgLmJhbmRfX3RpdGxlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDQ4cHg7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgLnRpdGxlLS1zZWNvbmRhcnksIC5iYW5kX190aXRsZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA2NHB4OyB9IH1cbiAgLnRpdGxlLS1zZWNvbmRhcnkgLnRpdGxlX19sYWJlbCwgLmJhbmRfX3RpdGxlIC50aXRsZV9fbGFiZWwge1xuICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgLnRpdGxlLS1zZWNvbmRhcnkgLnRpdGxlX19kZXNjcmlwdGlvbiwgLmJhbmRfX3RpdGxlIC50aXRsZV9fZGVzY3JpcHRpb24ge1xuICAgIG1hcmdpbi10b3A6IDA7IH1cblxuLnRpdGxlLS10ZXJ0aWFyeSB7XG4gIG1hcmdpbjogMDtcbiAgZm9udDogNzAwIDE5cHgvMS4yNSBcIk9wZW4gU2Fuc1wiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAgIC50aXRsZS0tdGVydGlhcnkge1xuICAgICAgZm9udC1zaXplOiAyMXB4OyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgIC50aXRsZS0tdGVydGlhcnkge1xuICAgICAgZm9udC1zaXplOiAyNHB4OyB9IH1cbiAgLnRpdGxlLS10ZXJ0aWFyeSArIHAge1xuICAgIG1hcmdpbi10b3A6IDE0cHg7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICAgIC50aXRsZS0tdGVydGlhcnkgKyBwIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMTZweDsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgLnRpdGxlLS10ZXJ0aWFyeSArIHAge1xuICAgICAgICBtYXJnaW4tdG9wOiAxOXB4OyB9IH1cblxuLnRpdGxlLS1jb250ZXh0dWFsIHtcbiAgcGFkZGluZy1ib3R0b206IDE2cHg7XG4gIG1hcmdpbjogMCAwIDMycHg7XG4gIGJvcmRlci1ib3R0b206IDRweCBzb2xpZCAjMTgxOTE5O1xuICBmb250LWZhbWlseTogXCJPcGVuIFNhbnNcIiwgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBsaW5lLWhlaWdodDogMS4yNTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICAudGl0bGUtLWNvbnRleHR1YWwge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNDhweDtcbiAgICAgIGZvbnQtc2l6ZTogMTlweDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAudGl0bGUtLWNvbnRleHR1YWwge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNjRweDtcbiAgICAgIGZvbnQtc2l6ZTogMjFweDsgfSB9XG4gIC50aXRsZS0tY29udGV4dHVhbCBzdHJvbmcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IDhweDtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGZvbnQtc2l6ZTogMjFweDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgbGluZS1oZWlnaHQ6IDE7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICAgIC50aXRsZS0tY29udGV4dHVhbCBzdHJvbmcge1xuICAgICAgICBmb250LXNpemU6IDI0cHg7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgIC50aXRsZS0tY29udGV4dHVhbCBzdHJvbmcge1xuICAgICAgICBmb250LXNpemU6IDI4cHg7IH0gfVxuICAudGl0bGUtLWNvbnRleHR1YWwgc3BhbiB7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuXG4udGl0bGUtLWNsb3NpbmdzIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBwYWRkaW5nOiAzMnB4IDA7XG4gIG1hcmdpbjogMDtcbiAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuICAudGl0bGUtLWNsb3NpbmdzLnRpdGxlLS1waW5uZWQge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBib3gtc2hhZG93OiAwIDFweCAwIDAgI2NjY2ZkMTtcbiAgICB6LWluZGV4OiAxMDA7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gICAgICAudGl0bGUtLWNsb3NpbmdzLnRpdGxlLS1waW5uZWQge1xuICAgICAgICB0b3A6IDgwcHg7IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA2NDBweCkge1xuICAgICAgLnRpdGxlLS1jbG9zaW5ncy50aXRsZS0tcGlubmVkIHtcbiAgICAgICAgdG9wOiA2NXB4OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEwMjVweCkgYW5kIChtYXgtd2lkdGg6IDEzNjVweCkge1xuICAudGl0bGUtLWNsb3NpbmdzLnRpdGxlLS1waW5uZWQge1xuICAgIHRvcDogMTYwcHg7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMzY2cHgpIHtcbiAgICAgIC50aXRsZS0tY2xvc2luZ3MudGl0bGUtLXBpbm5lZCB7XG4gICAgICAgIHRvcDogODBweDsgfSB9XG5cbi5saXN0X190aXRsZSB7XG4gIG1hcmdpbjogMDsgfVxuXG4ubGlzdF9fdGl0bGUgKyB1bCB7XG4gIG1hcmdpbi10b3A6IDE5cHg7IH1cblxuLmxpc3RfX2Zvb3Rub3RlIHtcbiAgbWFyZ2luOiAzMnB4IDAgMDtcbiAgY29sb3I6ICM2Zjc3N2I7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gICAgLmxpc3RfX2Zvb3Rub3RlIHtcbiAgICAgIG1hcmdpbi10b3A6IDQ4cHg7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgLmxpc3RfX2Zvb3Rub3RlIHtcbiAgICAgIG1hcmdpbi10b3A6IDY0cHg7IH0gfVxuXG4ubGlzdF9faXRlbXMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTsgfVxuXG4ubGlzdF9faXRlbSB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMzJweCAwIDA7XG4gIGJyZWFrLWluc2lkZTogYXZvaWQ7XG4gIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICAubGlzdF9faXRlbSB7XG4gICAgICBtYXJnaW4tdG9wOiA0OHB4OyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgIC5saXN0X19pdGVtIHtcbiAgICAgIG1hcmdpbi10b3A6IDY0cHg7IH0gfVxuICAubGlzdF9faXRlbTpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXRvcDogMDsgfVxuICAubGlzdF9faXRlbSAqOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLmxpc3RfX2l0ZW0gaSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiA1NXB4O1xuICAgIGhlaWdodDogNTVweDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDUwJSBhdXRvOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gICAgICAubGlzdF9faXRlbSBpIHtcbiAgICAgICAgd2lkdGg6IDEzOHB4O1xuICAgICAgICBoZWlnaHQ6IDEzOHB4OyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAubGlzdF9faXRlbSBpIHtcbiAgICAgICAgd2lkdGg6IDE5M3B4O1xuICAgICAgICBoZWlnaHQ6IDE5M3B4OyB9IH1cbiAgICAubGlzdF9faXRlbSBpIHN2ZyB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICAgIGhlaWdodDogNTAlOyB9XG4gICAgLmxpc3RfX2l0ZW0gaSBzdmcgKiB7XG4gICAgICBzdHJva2U6ICMwMDJmODc7IH1cbiAgLmxpc3RfX2l0ZW0gLm1ldGEgKyAubGlzdF9fdGl0bGUsIC5saXN0X19pdGVtIC5saW5rcy0tc2VhcmNoLXF1aWNrIC5saW5rc19fdGl0bGUgKyAubGlzdF9fdGl0bGUsIC5saW5rcy0tc2VhcmNoLXF1aWNrIC5saXN0X19pdGVtIC5saW5rc19fdGl0bGUgKyAubGlzdF9fdGl0bGUsIC5saXN0X19pdGVtIC5saW5rcy0tc2VhcmNoLXN1Z2dlc3QgLmxpbmtzX190aXRsZSArIC5saXN0X190aXRsZSwgLmxpbmtzLS1zZWFyY2gtc3VnZ2VzdCAubGlzdF9faXRlbSAubGlua3NfX3RpdGxlICsgLmxpc3RfX3RpdGxlLCAubGlzdF9faXRlbSAubGlua3MtLXNlYXJjaC10b3AgLmxpbmtzX190aXRsZSArIC5saXN0X190aXRsZSwgLmxpbmtzLS1zZWFyY2gtdG9wIC5saXN0X19pdGVtIC5saW5rc19fdGl0bGUgKyAubGlzdF9fdGl0bGUsIC5saXN0X19pdGVtIC5saXN0LS1yZWNvZ25pdGlvbiAuaXRlbV9fbWV0YSArIC5saXN0X190aXRsZSwgLmxpc3QtLXJlY29nbml0aW9uIC5saXN0X19pdGVtIC5pdGVtX19tZXRhICsgLmxpc3RfX3RpdGxlLCAubGlzdF9faXRlbSAuY2xvc2luZ19fbWV0YSArIC5saXN0X190aXRsZSwgLmxpc3RfX2l0ZW0gLmNoaXBfX2xhYmVsICsgLmxpc3RfX3RpdGxlLCAubGlzdF9faXRlbSAuZGlzdHJpY3RfX21ldGEgKyAubGlzdF9fdGl0bGUsIC5saXN0X19pdGVtIC5zaG90X19wcmVmaXggKyAubGlzdF9fdGl0bGUsIC5saXN0X19pdGVtIC5zaG90X19zdWZmaXggKyAubGlzdF9fdGl0bGUge1xuICAgIG1hcmdpbjogMTZweCAwIDA7IH1cbiAgLmxpc3RfX2l0ZW0gLmxpc3RfX3RpdGxlIHtcbiAgICBtYXJnaW46IDA7XG4gICAgZm9udDogNzAwIDE5cHgvMS4yNSBcIk9wZW4gU2Fuc1wiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gICAgICAubGlzdF9faXRlbSAubGlzdF9fdGl0bGUge1xuICAgICAgICBmb250LXNpemU6IDIxcHg7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgIC5saXN0X19pdGVtIC5saXN0X190aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjRweDsgfSB9XG4gIC5saXN0X19pdGVtIC5saXN0X190aXRsZSArIC5tZXRhLCAubGlzdF9faXRlbSAubGlua3MtLXNlYXJjaC1xdWljayAubGlzdF9fdGl0bGUgKyAubGlua3NfX3RpdGxlLCAubGlua3MtLXNlYXJjaC1xdWljayAubGlzdF9faXRlbSAubGlzdF9fdGl0bGUgKyAubGlua3NfX3RpdGxlLCAubGlzdF9faXRlbSAubGlua3MtLXNlYXJjaC1zdWdnZXN0IC5saXN0X190aXRsZSArIC5saW5rc19fdGl0bGUsIC5saW5rcy0tc2VhcmNoLXN1Z2dlc3QgLmxpc3RfX2l0ZW0gLmxpc3RfX3RpdGxlICsgLmxpbmtzX190aXRsZSwgLmxpc3RfX2l0ZW0gLmxpbmtzLS1zZWFyY2gtdG9wIC5saXN0X190aXRsZSArIC5saW5rc19fdGl0bGUsIC5saW5rcy0tc2VhcmNoLXRvcCAubGlzdF9faXRlbSAubGlzdF9fdGl0bGUgKyAubGlua3NfX3RpdGxlLCAubGlzdF9faXRlbSAubGlzdC0tcmVjb2duaXRpb24gLmxpc3RfX3RpdGxlICsgLml0ZW1fX21ldGEsIC5saXN0LS1yZWNvZ25pdGlvbiAubGlzdF9faXRlbSAubGlzdF9fdGl0bGUgKyAuaXRlbV9fbWV0YSwgLmxpc3RfX2l0ZW0gLmxpc3RfX3RpdGxlICsgLmNsb3NpbmdfX21ldGEsIC5saXN0X19pdGVtIC5saXN0X190aXRsZSArIC5jaGlwX19sYWJlbCwgLmxpc3RfX2l0ZW0gLmxpc3RfX3RpdGxlICsgLmRpc3RyaWN0X19tZXRhLCAubGlzdF9faXRlbSAubGlzdF9fdGl0bGUgKyAuc2hvdF9fcHJlZml4LCAubGlzdF9faXRlbSAubGlzdF9fdGl0bGUgKyAuc2hvdF9fc3VmZml4LFxuICAubGlzdF9faXRlbSAubGlzdF9fdGl0bGUgKyBbaXRlbXByb3A9J2Rlc2NyaXB0aW9uJ10gKyAubWV0YSxcbiAgLmxpc3RfX2l0ZW0gLmxpbmtzLS1zZWFyY2gtcXVpY2sgLmxpc3RfX3RpdGxlICsgW2l0ZW1wcm9wPSdkZXNjcmlwdGlvbiddICsgLmxpbmtzX190aXRsZSxcbiAgLmxpbmtzLS1zZWFyY2gtcXVpY2sgLmxpc3RfX2l0ZW0gLmxpc3RfX3RpdGxlICsgW2l0ZW1wcm9wPSdkZXNjcmlwdGlvbiddICsgLmxpbmtzX190aXRsZSxcbiAgLmxpc3RfX2l0ZW0gLmxpbmtzLS1zZWFyY2gtc3VnZ2VzdCAubGlzdF9fdGl0bGUgKyBbaXRlbXByb3A9J2Rlc2NyaXB0aW9uJ10gKyAubGlua3NfX3RpdGxlLFxuICAubGlua3MtLXNlYXJjaC1zdWdnZXN0IC5saXN0X19pdGVtIC5saXN0X190aXRsZSArIFtpdGVtcHJvcD0nZGVzY3JpcHRpb24nXSArIC5saW5rc19fdGl0bGUsXG4gIC5saXN0X19pdGVtIC5saW5rcy0tc2VhcmNoLXRvcCAubGlzdF9fdGl0bGUgKyBbaXRlbXByb3A9J2Rlc2NyaXB0aW9uJ10gKyAubGlua3NfX3RpdGxlLFxuICAubGlua3MtLXNlYXJjaC10b3AgLmxpc3RfX2l0ZW0gLmxpc3RfX3RpdGxlICsgW2l0ZW1wcm9wPSdkZXNjcmlwdGlvbiddICsgLmxpbmtzX190aXRsZSxcbiAgLmxpc3RfX2l0ZW0gLmxpc3QtLXJlY29nbml0aW9uIC5saXN0X190aXRsZSArIFtpdGVtcHJvcD0nZGVzY3JpcHRpb24nXSArIC5pdGVtX19tZXRhLFxuICAubGlzdC0tcmVjb2duaXRpb24gLmxpc3RfX2l0ZW0gLmxpc3RfX3RpdGxlICsgW2l0ZW1wcm9wPSdkZXNjcmlwdGlvbiddICsgLml0ZW1fX21ldGEsXG4gIC5saXN0X19pdGVtIC5saXN0X190aXRsZSArIFtpdGVtcHJvcD0nZGVzY3JpcHRpb24nXSArIC5jbG9zaW5nX19tZXRhLFxuICAubGlzdF9faXRlbSAubGlzdF9fdGl0bGUgKyBbaXRlbXByb3A9J2Rlc2NyaXB0aW9uJ10gKyAuY2hpcF9fbGFiZWwsXG4gIC5saXN0X19pdGVtIC5saXN0X190aXRsZSArIFtpdGVtcHJvcD0nZGVzY3JpcHRpb24nXSArIC5kaXN0cmljdF9fbWV0YSxcbiAgLmxpc3RfX2l0ZW0gLmxpc3RfX3RpdGxlICsgW2l0ZW1wcm9wPSdkZXNjcmlwdGlvbiddICsgLnNob3RfX3ByZWZpeCxcbiAgLmxpc3RfX2l0ZW0gLmxpc3RfX3RpdGxlICsgW2l0ZW1wcm9wPSdkZXNjcmlwdGlvbiddICsgLnNob3RfX3N1ZmZpeCB7XG4gICAgbWFyZ2luOiAxNnB4IDAgMDsgfVxuICAubGlzdF9faXRlbSBbaXRlbXByb3A9J2Rlc2NyaXB0aW9uJ10ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMTRweCAwIDA7XG4gICAgY29sb3I6ICMxODE5MTk7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICAgIC5saXN0X19pdGVtIFtpdGVtcHJvcD0nZGVzY3JpcHRpb24nXSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDE2cHg7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgIC5saXN0X19pdGVtIFtpdGVtcHJvcD0nZGVzY3JpcHRpb24nXSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDE5cHg7IH0gfVxuICAubGlzdF9faXRlbSBbaXRlbXByb3A9J3RlbGVwaG9uZSddIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLXRvcDogMTZweDsgfVxuICAubGlzdF9faXRlbSAuZm9ybSB7XG4gICAgbWFyZ2luLXRvcDogMTZweDsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAgICAgLmxpc3RfX2l0ZW0gLmZvcm0ge1xuICAgICAgICBtYXJnaW4tdG9wOiAyNHB4OyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAubGlzdF9faXRlbSAuZm9ybSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDMycHg7IH0gfVxuICAubGlzdF9faXRlbS0tcG9wdWxhciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmc6IDE2cHggMzJweCAzMnB4O1xuICAgIG1hcmdpbi1sZWZ0OiAtMzJweDtcbiAgICBtYXJnaW4tcmlnaHQ6IC0zMnB4O1xuICAgIG1hcmdpbi10b3A6IDE2cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YyZjRmOTsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAgICAgLmxpc3RfX2l0ZW0tLXBvcHVsYXIge1xuICAgICAgICBtYXJnaW4tdG9wOiAyNHB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICAgIHBhZGRpbmc6IDMycHg7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgIC5saXN0X19pdGVtLS1wb3B1bGFyIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMzJweDsgfSB9XG4gICAgLmxpc3RfX2l0ZW0tLXBvcHVsYXI6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICdQb3B1bGFyJzsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDYzOXB4KSB7XG4gICAgICAgIC5saXN0X19pdGVtLS1wb3B1bGFyOmJlZm9yZSB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTZweDsgfSB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICAgICAgLmxpc3RfX2l0ZW0tLXBvcHVsYXI6YmVmb3JlIHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiAzMnB4O1xuICAgICAgICAgIHJpZ2h0OiAzMnB4OyB9IH1cbiAgICAubGlzdF9faXRlbS0tcG9wdWxhciBbaXRlbXByb3A9J2Rlc2NyaXB0aW9uJ10sXG4gICAgLmxpc3RfX2l0ZW0tLXBvcHVsYXIgLm1ldGEsXG4gICAgLmxpc3RfX2l0ZW0tLXBvcHVsYXIgLmxpbmtzLS1zZWFyY2gtcXVpY2sgLmxpbmtzX190aXRsZSxcbiAgICAubGlua3MtLXNlYXJjaC1xdWljayAubGlzdF9faXRlbS0tcG9wdWxhciAubGlua3NfX3RpdGxlLFxuICAgIC5saXN0X19pdGVtLS1wb3B1bGFyIC5saW5rcy0tc2VhcmNoLXN1Z2dlc3QgLmxpbmtzX190aXRsZSxcbiAgICAubGlua3MtLXNlYXJjaC1zdWdnZXN0IC5saXN0X19pdGVtLS1wb3B1bGFyIC5saW5rc19fdGl0bGUsXG4gICAgLmxpc3RfX2l0ZW0tLXBvcHVsYXIgLmxpbmtzLS1zZWFyY2gtdG9wIC5saW5rc19fdGl0bGUsXG4gICAgLmxpbmtzLS1zZWFyY2gtdG9wIC5saXN0X19pdGVtLS1wb3B1bGFyIC5saW5rc19fdGl0bGUsXG4gICAgLmxpc3RfX2l0ZW0tLXBvcHVsYXIgLmxpc3QtLXJlY29nbml0aW9uIC5pdGVtX19tZXRhLFxuICAgIC5saXN0LS1yZWNvZ25pdGlvbiAubGlzdF9faXRlbS0tcG9wdWxhciAuaXRlbV9fbWV0YSxcbiAgICAubGlzdF9faXRlbS0tcG9wdWxhciAuY2xvc2luZ19fbWV0YSxcbiAgICAubGlzdF9faXRlbS0tcG9wdWxhciAuY2hpcF9fbGFiZWwsXG4gICAgLmxpc3RfX2l0ZW0tLXBvcHVsYXIgLmRpc3RyaWN0X19tZXRhLFxuICAgIC5saXN0X19pdGVtLS1wb3B1bGFyIC5zaG90X19wcmVmaXgsXG4gICAgLmxpc3RfX2l0ZW0tLXBvcHVsYXIgLnNob3RfX3N1ZmZpeCB7XG4gICAgICBjb2xvcjogIzE4MTkxOTsgfVxuXG4ubGlzdC0tZGl2aWRlZCAubGlzdF9faXRlbXM6YmVmb3JlIHtcbiAgY29udGVudDogJyc7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMXB4O1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICB6LWluZGV4OiAxOyB9XG5cbi5saXN0LS1kaXZpZGVkIC5saXN0X19pdGVtIHtcbiAgcGFkZGluZzogMzJweCAwO1xuICBtYXJnaW46IDA7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjY2NjZmQxOyB9XG5cbi5saXN0LS1kaXZpZGVkLWNvbmRlbnNlZCAubGlzdF9faXRlbXM6YmVmb3JlLCAubGlzdC0tY291bnRpZXMgLmxpc3RfX2l0ZW1zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICcnO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDFweDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgei1pbmRleDogMTsgfVxuXG4ubGlzdC0tZGl2aWRlZC1jb25kZW5zZWQgLmxpc3RfX2l0ZW0sIC5saXN0LS1jb3VudGllcyAubGlzdF9faXRlbSB7XG4gIHBhZGRpbmc6IDE2cHggMDtcbiAgbWFyZ2luOiAwO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2NjY2ZkMTsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgLmxpc3QtLW5ld3MgLmxpc3RfX2l0ZW0ge1xuICAgIGRpc3BsYXk6IGZsZXg7IH0gfVxuXG4ubGlzdC0tbmV3cyAubGlzdF9faXRlbSAubmV3c19fcGhvdG8ge1xuICBkaXNwbGF5OiBub25lOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAgIC5saXN0LS1uZXdzIC5saXN0X19pdGVtIC5uZXdzX19waG90byB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiAyMi4xMTUzODQ2MTU0JTsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAubGlzdC0tbmV3cyAubGlzdF9faXRlbSAubmV3c19fY29udGVudCB7XG4gICAgd2lkdGg6IDcyLjc1NjQxMDI1NjQlO1xuICAgIG1hcmdpbi1sZWZ0OiA1LjEyODIwNTEyODIlOyB9IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDYzOXB4KSB7XG4gIC5saXN0LS1uZXdzIC5saXN0X19pdGVtIFtpdGVtcHJvcD0nZGVzY3JpcHRpb24nXSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IC0xMDAwMHB4O1xuICAgIHRvcDogYXV0bztcbiAgICB3aWR0aDogMXB4O1xuICAgIGhlaWdodDogMXB4O1xuICAgIG1hcmdpbjogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuOyB9IH1cblxuLmxpc3QtLWZpbGVzIC5saXN0X190aXRsZSB7XG4gIG1hcmdpbjogMCAwIDE2cHg7IH1cblxuLmxpc3QtLWZpbGVzIC5saXN0X19pdGVtIHtcbiAgcGFkZGluZy1sZWZ0OiA1NnB4OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAgIC5saXN0LS1maWxlcyAubGlzdF9faXRlbSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDg1cHg7IH0gfVxuICAubGlzdC0tZmlsZXMgLmxpc3RfX2l0ZW0gW2l0ZW1wcm9wPSdoZWFkbGluZSddIHtcbiAgICBmb250LWZhbWlseTogXCJPcGVuIFNhbnNcIiwgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBsaW5lLWhlaWdodDogMS4yNTsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAgICAgLmxpc3QtLWZpbGVzIC5saXN0X19pdGVtIFtpdGVtcHJvcD0naGVhZGxpbmUnXSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTlweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjU7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgIC5saXN0LS1maWxlcyAubGlzdF9faXRlbSBbaXRlbXByb3A9J2hlYWRsaW5lJ10ge1xuICAgICAgICBmb250LXNpemU6IDIxcHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI1OyB9IH1cbiAgLmxpc3QtLWZpbGVzIC5saXN0X19pdGVtIFtpdGVtcHJvcD0ndXJsJ10ge1xuICAgIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7IH1cblxuLmxpc3QtLWZpbGVzIC5tZXRhIHNwYW4sIC5saXN0LS1maWxlcyAubGlua3MtLXNlYXJjaC1xdWljayAubGlua3NfX3RpdGxlIHNwYW4sIC5saW5rcy0tc2VhcmNoLXF1aWNrIC5saXN0LS1maWxlcyAubGlua3NfX3RpdGxlIHNwYW4sIC5saXN0LS1maWxlcyAubGlua3MtLXNlYXJjaC1zdWdnZXN0IC5saW5rc19fdGl0bGUgc3BhbiwgLmxpbmtzLS1zZWFyY2gtc3VnZ2VzdCAubGlzdC0tZmlsZXMgLmxpbmtzX190aXRsZSBzcGFuLCAubGlzdC0tZmlsZXMgLmxpbmtzLS1zZWFyY2gtdG9wIC5saW5rc19fdGl0bGUgc3BhbiwgLmxpbmtzLS1zZWFyY2gtdG9wIC5saXN0LS1maWxlcyAubGlua3NfX3RpdGxlIHNwYW4sIC5saXN0LS1maWxlcyAubGlzdC0tcmVjb2duaXRpb24gLml0ZW1fX21ldGEgc3BhbiwgLmxpc3QtLXJlY29nbml0aW9uIC5saXN0LS1maWxlcyAuaXRlbV9fbWV0YSBzcGFuLCAubGlzdC0tZmlsZXMgLmNsb3NpbmdfX21ldGEgc3BhbiwgLmxpc3QtLWZpbGVzIC5jaGlwX19sYWJlbCBzcGFuLCAubGlzdC0tZmlsZXMgLmRpc3RyaWN0X19tZXRhIHNwYW4sIC5saXN0LS1maWxlcyAuc2hvdF9fcHJlZml4IHNwYW4sIC5saXN0LS1maWxlcyAuc2hvdF9fc3VmZml4IHNwYW4ge1xuICBtYXJnaW4tcmlnaHQ6IDA7IH1cblxuLmxpc3QtLXJlY29nbml0aW9uIC5pdGVtX190aXRsZSB7XG4gIG1hcmdpbi10b3A6IDhweDsgfVxuXG4ubGlzdC0tcmVjb2duaXRpb24gLml0ZW1fX2Rlc2NyaXB0aW9uIHtcbiAgY29sb3I6ICM2Zjc3N2I7IH1cblxuLmxpc3QtLWNvdW50aWVzIHtcbiAgbWFyZ2luLXRvcDogMzJweDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICAubGlzdC0tY291bnRpZXMge1xuICAgICAgbWFyZ2luLXRvcDogNDhweDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAubGlzdC0tY291bnRpZXMge1xuICAgICAgbWFyZ2luLXRvcDogNjRweDsgfSB9XG4gIC5saXN0LS1jb3VudGllcyAubGlzdF9faXRlbXM6YmVmb3JlIHtcbiAgICB6LWluZGV4OiAxOyB9XG4gIC5saXN0LS1jb3VudGllcyAubGlzdF9faXRlbSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJyZWFrLWluc2lkZTogYXZvaWQ7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICAgIC5saXN0LS1jb3VudGllcyAubGlzdF9faXRlbSB7XG4gICAgICAgIHBhZGRpbmc6IDI0cHggMDsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgLmxpc3QtLWNvdW50aWVzIC5saXN0X19pdGVtIHtcbiAgICAgICAgcGFkZGluZzogMzJweCAwOyB9IH1cbiAgLmxpc3QtLWNvdW50aWVzIC50aXRsZSB7XG4gICAgbWFyZ2luOiAwIDAgOHB4OyB9XG4gIC5saXN0LS1jb3VudGllcyAubWV0YSwgLmxpc3QtLWNvdW50aWVzIC5saW5rcy0tc2VhcmNoLXF1aWNrIC5saW5rc19fdGl0bGUsIC5saW5rcy0tc2VhcmNoLXF1aWNrIC5saXN0LS1jb3VudGllcyAubGlua3NfX3RpdGxlLCAubGlzdC0tY291bnRpZXMgLmxpbmtzLS1zZWFyY2gtc3VnZ2VzdCAubGlua3NfX3RpdGxlLCAubGlua3MtLXNlYXJjaC1zdWdnZXN0IC5saXN0LS1jb3VudGllcyAubGlua3NfX3RpdGxlLCAubGlzdC0tY291bnRpZXMgLmxpbmtzLS1zZWFyY2gtdG9wIC5saW5rc19fdGl0bGUsIC5saW5rcy0tc2VhcmNoLXRvcCAubGlzdC0tY291bnRpZXMgLmxpbmtzX190aXRsZSwgLmxpc3QtLWNvdW50aWVzIC5saXN0LS1yZWNvZ25pdGlvbiAuaXRlbV9fbWV0YSwgLmxpc3QtLXJlY29nbml0aW9uIC5saXN0LS1jb3VudGllcyAuaXRlbV9fbWV0YSwgLmxpc3QtLWNvdW50aWVzIC5jbG9zaW5nX19tZXRhLCAubGlzdC0tY291bnRpZXMgLmNoaXBfX2xhYmVsLCAubGlzdC0tY291bnRpZXMgLmRpc3RyaWN0X19tZXRhLCAubGlzdC0tY291bnRpZXMgLnNob3RfX3ByZWZpeCwgLmxpc3QtLWNvdW50aWVzIC5zaG90X19zdWZmaXgge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5saXN0LS1jb3VudGllcyAuYnV0dG9uLCAubGlzdC0tY291bnRpZXMgLnRvZ2dsZSwgLmxpc3QtLWNvdW50aWVzIC5wYW5lbC1ncm91cF9fdG9nZ2xlLCAubGlzdC0tY291bnRpZXMgLmFsZXJ0X19kaXNtaXNzLCAubGlzdC0tY291bnRpZXMgLmNhcmRfX2FjdGlvbiwgLmxpc3QtLWNvdW50aWVzIC5zaG90X19idXR0b24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICByaWdodDogMDtcbiAgICB3aWR0aDogNDhweDtcbiAgICBoZWlnaHQ6IDQ4cHg7XG4gICAgbWFyZ2luLXRvcDogLTI0cHg7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gIC5saXN0LS1wZW9wbGUgLmxpc3RfX2l0ZW0ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAubGlzdC0tcGVvcGxlIFtpdGVtcHJvcD0ndGVsZXBob25lJ10ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDM1cHg7XG4gICAgcmlnaHQ6IDA7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLmxpc3QtLXBlb3BsZSBbaXRlbXByb3A9J3RlbGVwaG9uZSddIHtcbiAgICB0b3A6IDM2cHg7IH0gfVxuXG4ubGlzdC0tc2VhcmNoLXJlc3VsdHMgLmxpc3RfX2Rlc2NyaXB0aW9uIG1hcmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC5saXN0LS1wZXJzb25hcyAubGlzdF9faXRlbXMge1xuICAgIHBhZGRpbmc6IDMycHggMDtcbiAgICBjb2x1bW4tcnVsZTogMXB4IHNvbGlkICNjY2NmZDE7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC5saXN0LS1wZXJzb25hcyAubGlzdF9faXRlbSB7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXI6IDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9IH1cblxuLmxpc3QtLXBlcnNvbmFzIC5saXN0X190aXRsZSBhIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAxNHB4O1xuICBmb250LXdlaWdodDogNDAwOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAgIC5saXN0LS1wZXJzb25hcyAubGlzdF9fdGl0bGUgYSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBmb250LXNpemU6IDE2cHg7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgLmxpc3QtLXBlcnNvbmFzIC5saXN0X190aXRsZSBhIHtcbiAgICAgIGZvbnQtc2l6ZTogMTlweDsgfSB9XG4gIC5saXN0LS1wZXJzb25hcyAubGlzdF9fdGl0bGUgYTpmb2N1cyB7XG4gICAgYm94LXNoYWRvdzogbm9uZTsgfVxuICAubGlzdC0tcGVyc29uYXMgLmxpc3RfX3RpdGxlIGE6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICByaWdodDogMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTZweDtcbiAgICBoZWlnaHQ6IDE2cHg7XG4gICAgbWFyZ2luLXRvcDogLThweDtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvaWNvbnMvaV9hcnJvdy1yaWdodC5zdmdcIikgbm8tcmVwZWF0IDUwJSA1MCUvMTAwJSBhdXRvOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gICAgICAubGlzdC0tcGVyc29uYXMgLmxpc3RfX3RpdGxlIGE6YWZ0ZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gIC5saXN0W2RhdGEtY29sdW1uc10gLmxpc3RfX2l0ZW1zIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAubGlzdFtkYXRhLWNvbHVtbnM9JzInXSAubGlzdF9faXRlbSwgLmxpc3QuYmFuZC0tY2FsbG91dCAubGlzdF9faXRlbSB7XG4gICAgd2lkdGg6IDQ4LjEyNSU7XG4gICAgbWFyZ2luLXJpZ2h0OiAzLjc1JTsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjgwcHgpIHtcbiAgLmxpc3RbZGF0YS1jb2x1bW5zPScyJ10gLmxpc3RfX2l0ZW0sIC5saXN0LmJhbmQtLWNhbGxvdXQgLmxpc3RfX2l0ZW0ge1xuICAgIHdpZHRoOiA0OC45NDczNjg0MjExJTtcbiAgICBtYXJnaW4tcmlnaHQ6IDIuMTA1MjYzMTU3OSU7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgLmxpc3RbZGF0YS1jb2x1bW5zPScyJ10gLmxpc3RfX2l0ZW06bnRoLWNoaWxkKGV2ZW4pLCAubGlzdC5iYW5kLS1jYWxsb3V0IC5saXN0X19pdGVtOm50aC1jaGlsZChldmVuKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gIC5saXN0W2RhdGEtY29sdW1ucz0nMiddIC5saXN0X19pdGVtOm50aC1jaGlsZCgyKSwgLmxpc3QuYmFuZC0tY2FsbG91dCAubGlzdF9faXRlbTpudGgtY2hpbGQoMikge1xuICAgIG1hcmdpbi10b3A6IDA7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgLmxpc3RbZGF0YS1jb2x1bW5zPSczJ10gLmxpc3RfX2l0ZW0ge1xuICAgIHdpZHRoOiA0OC4xMjUlO1xuICAgIG1hcmdpbi1yaWdodDogMy43NSU7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTI4MHB4KSB7XG4gIC5saXN0W2RhdGEtY29sdW1ucz0nMyddIC5saXN0X19pdGVtIHtcbiAgICB3aWR0aDogMzEuOTI5ODI0NTYxNCU7XG4gICAgbWFyZ2luLXJpZ2h0OiAyLjEwNTI2MzE1NzklOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gIC5saXN0W2RhdGEtY29sdW1ucz0nMyddIC5saXN0X19pdGVtOm50aC1jaGlsZChldmVuKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEyODBweCkge1xuICAubGlzdFtkYXRhLWNvbHVtbnM9JzMnXSAubGlzdF9faXRlbTpudGgtY2hpbGQoZXZlbikge1xuICAgIG1hcmdpbi1yaWdodDogMi4xMDUyNjMxNTc5JTsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjgwcHgpIHtcbiAgLmxpc3RbZGF0YS1jb2x1bW5zPSczJ10gLmxpc3RfX2l0ZW06bnRoLWNoaWxkKDNuKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gIC5saXN0W2RhdGEtY29sdW1ucz0nMyddIC5saXN0X19pdGVtOm50aC1jaGlsZCgyKSB7XG4gICAgbWFyZ2luLXRvcDogMDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjgwcHgpIHtcbiAgLmxpc3RbZGF0YS1jb2x1bW5zPSczJ10gLmxpc3RfX2l0ZW06bnRoLWNoaWxkKDMpIHtcbiAgICBtYXJnaW4tdG9wOiAwOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gIC5saXN0W2RhdGEtY29sdW1ucz0nNCddIC5saXN0X19pdGVtIHtcbiAgICB3aWR0aDogNDguMTI1JTtcbiAgICBtYXJnaW4tcmlnaHQ6IDMuNzUlOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEyODBweCkge1xuICAubGlzdFtkYXRhLWNvbHVtbnM9JzQnXSAubGlzdF9faXRlbSB7XG4gICAgd2lkdGg6IDIzLjQyMTA1MjYzMTYlO1xuICAgIG1hcmdpbi1yaWdodDogMi4xMDUyNjMxNTc5JTsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAubGlzdFtkYXRhLWNvbHVtbnM9JzQnXSAubGlzdF9faXRlbTpudGgtY2hpbGQoZXZlbikge1xuICAgIG1hcmdpbi1yaWdodDogMDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjgwcHgpIHtcbiAgLmxpc3RbZGF0YS1jb2x1bW5zPSc0J10gLmxpc3RfX2l0ZW06bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDIuMTA1MjYzMTU3OSU7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTI4MHB4KSB7XG4gIC5saXN0W2RhdGEtY29sdW1ucz0nNCddIC5saXN0X19pdGVtOm50aC1jaGlsZCg0bikge1xuICAgIG1hcmdpbi1yaWdodDogMDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAubGlzdFtkYXRhLWNvbHVtbnM9JzQnXSAubGlzdF9faXRlbTpudGgtY2hpbGQoMikge1xuICAgIG1hcmdpbi10b3A6IDA7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTI4MHB4KSB7XG4gIC5saXN0W2RhdGEtY29sdW1ucz0nNCddIC5saXN0X19pdGVtOm50aC1jaGlsZCgzKSxcbiAgLmxpc3RbZGF0YS1jb2x1bW5zPSc0J10gLmxpc3RfX2l0ZW06bnRoLWNoaWxkKDQpIHtcbiAgICBtYXJnaW4tdG9wOiAwOyB9IH1cblxuLmNoZWNrbGlzdCB7XG4gIHBhZGRpbmc6IDAgMCAwIDMycHg7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7IH1cbiAgLmNoZWNrbGlzdCBsaSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLmNoZWNrbGlzdCBsaTpiZWZvcmUge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDZweDtcbiAgICAgIGxlZnQ6IC0zMnB4O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogMTZweDtcbiAgICAgIGhlaWdodDogMTZweDtcbiAgICAgIG1hcmdpbi1yaWdodDogMTZweDtcbiAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9pY29ucy9pX2NoZWNrLXNpbXBsZS5zdmdcIikgbm8tcmVwZWF0IDUwJSA1MCUvMTAwJSBhdXRvOyB9XG5cbi5tZXRhLCAubGlua3MtLXNlYXJjaC1xdWljayAubGlua3NfX3RpdGxlLCAubGlua3MtLXNlYXJjaC1zdWdnZXN0IC5saW5rc19fdGl0bGUsIC5saW5rcy0tc2VhcmNoLXRvcCAubGlua3NfX3RpdGxlLCAubGlzdC0tcmVjb2duaXRpb24gLml0ZW1fX21ldGEsIC5jbG9zaW5nX19tZXRhLCAuY2hpcF9fbGFiZWwsIC5kaXN0cmljdF9fbWV0YSwgLnNob3RfX3ByZWZpeCwgLnNob3RfX3N1ZmZpeCB7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbGluZS1oZWlnaHQ6IDEuMjU7XG4gIGNvbG9yOiAjNmY3NzdiO1xuICBtYXJnaW4tdG9wOiAtNXB4O1xuICBtYXJnaW4tcmlnaHQ6IC0xNnB4OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAgIC5tZXRhLCAubGlua3MtLXNlYXJjaC1xdWljayAubGlua3NfX3RpdGxlLCAubGlua3MtLXNlYXJjaC1zdWdnZXN0IC5saW5rc19fdGl0bGUsIC5saW5rcy0tc2VhcmNoLXRvcCAubGlua3NfX3RpdGxlLCAubGlzdC0tcmVjb2duaXRpb24gLml0ZW1fX21ldGEsIC5jbG9zaW5nX19tZXRhLCAuY2hpcF9fbGFiZWwsIC5kaXN0cmljdF9fbWV0YSwgLnNob3RfX3ByZWZpeCwgLnNob3RfX3N1ZmZpeCB7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICBsaW5lLWhlaWdodDogMS4yNTsgfSB9XG4gIC5tZXRhIHN0cm9uZywgLmxpbmtzLS1zZWFyY2gtcXVpY2sgLmxpbmtzX190aXRsZSBzdHJvbmcsIC5saW5rcy0tc2VhcmNoLXN1Z2dlc3QgLmxpbmtzX190aXRsZSBzdHJvbmcsIC5saW5rcy0tc2VhcmNoLXRvcCAubGlua3NfX3RpdGxlIHN0cm9uZywgLmxpc3QtLXJlY29nbml0aW9uIC5pdGVtX19tZXRhIHN0cm9uZywgLmNsb3NpbmdfX21ldGEgc3Ryb25nLCAuY2hpcF9fbGFiZWwgc3Ryb25nLCAuZGlzdHJpY3RfX21ldGEgc3Ryb25nLCAuc2hvdF9fcHJlZml4IHN0cm9uZywgLnNob3RfX3N1ZmZpeCBzdHJvbmcge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tcmlnaHQ6IDE2cHg7XG4gICAgbWFyZ2luLXRvcDogNXB4O1xuICAgIGNvbG9yOiAjMTgxOTE5OyB9XG4gIC5tZXRhIHNwYW4sIC5saW5rcy0tc2VhcmNoLXF1aWNrIC5saW5rc19fdGl0bGUgc3BhbiwgLmxpbmtzLS1zZWFyY2gtc3VnZ2VzdCAubGlua3NfX3RpdGxlIHNwYW4sIC5saW5rcy0tc2VhcmNoLXRvcCAubGlua3NfX3RpdGxlIHNwYW4sIC5saXN0LS1yZWNvZ25pdGlvbiAuaXRlbV9fbWV0YSBzcGFuLCAuY2xvc2luZ19fbWV0YSBzcGFuLCAuY2hpcF9fbGFiZWwgc3BhbiwgLmRpc3RyaWN0X19tZXRhIHNwYW4sIC5zaG90X19wcmVmaXggc3BhbiwgLnNob3RfX3N1ZmZpeCBzcGFuLCAubWV0YSB0aW1lLCAubGlua3MtLXNlYXJjaC1xdWljayAubGlua3NfX3RpdGxlIHRpbWUsIC5saW5rcy0tc2VhcmNoLXN1Z2dlc3QgLmxpbmtzX190aXRsZSB0aW1lLCAubGlua3MtLXNlYXJjaC10b3AgLmxpbmtzX190aXRsZSB0aW1lLCAubGlzdC0tcmVjb2duaXRpb24gLml0ZW1fX21ldGEgdGltZSwgLmNsb3NpbmdfX21ldGEgdGltZSwgLmNoaXBfX2xhYmVsIHRpbWUsIC5kaXN0cmljdF9fbWV0YSB0aW1lLCAuc2hvdF9fcHJlZml4IHRpbWUsIC5zaG90X19zdWZmaXggdGltZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1yaWdodDogMTZweDtcbiAgICBtYXJnaW4tdG9wOiA1cHg7IH1cbiAgLm1ldGEgLmJhZGdlLCAubGlua3MtLXNlYXJjaC1xdWljayAubGlua3NfX3RpdGxlIC5iYWRnZSwgLmxpbmtzLS1zZWFyY2gtc3VnZ2VzdCAubGlua3NfX3RpdGxlIC5iYWRnZSwgLmxpbmtzLS1zZWFyY2gtdG9wIC5saW5rc19fdGl0bGUgLmJhZGdlLCAubGlzdC0tcmVjb2duaXRpb24gLml0ZW1fX21ldGEgLmJhZGdlLCAuY2xvc2luZ19fbWV0YSAuYmFkZ2UsIC5jaGlwX19sYWJlbCAuYmFkZ2UsIC5kaXN0cmljdF9fbWV0YSAuYmFkZ2UsIC5zaG90X19wcmVmaXggLmJhZGdlLCAuc2hvdF9fc3VmZml4IC5iYWRnZSwgLm1ldGEgLmxpc3RfX2l0ZW0tLXBvcHVsYXI6YmVmb3JlLCAubGlua3MtLXNlYXJjaC1xdWljayAubGlua3NfX3RpdGxlIC5saXN0X19pdGVtLS1wb3B1bGFyOmJlZm9yZSwgLmxpbmtzLS1zZWFyY2gtc3VnZ2VzdCAubGlua3NfX3RpdGxlIC5saXN0X19pdGVtLS1wb3B1bGFyOmJlZm9yZSwgLmxpbmtzLS1zZWFyY2gtdG9wIC5saW5rc19fdGl0bGUgLmxpc3RfX2l0ZW0tLXBvcHVsYXI6YmVmb3JlLCAubGlzdC0tcmVjb2duaXRpb24gLml0ZW1fX21ldGEgLmxpc3RfX2l0ZW0tLXBvcHVsYXI6YmVmb3JlLCAuY2xvc2luZ19fbWV0YSAubGlzdF9faXRlbS0tcG9wdWxhcjpiZWZvcmUsIC5jaGlwX19sYWJlbCAubGlzdF9faXRlbS0tcG9wdWxhcjpiZWZvcmUsIC5kaXN0cmljdF9fbWV0YSAubGlzdF9faXRlbS0tcG9wdWxhcjpiZWZvcmUsIC5zaG90X19wcmVmaXggLmxpc3RfX2l0ZW0tLXBvcHVsYXI6YmVmb3JlLCAuc2hvdF9fc3VmZml4IC5saXN0X19pdGVtLS1wb3B1bGFyOmJlZm9yZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxNnB4O1xuICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICBmb250LXNpemU6IGluaGVyaXQ7IH1cbiAgLm1ldGEtLXNlYXJjaC1yZXN1bHRzIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzMnB4OyB9XG5cbltkYXRhLXNpbmdsZT0nbmV3cyddIFtpdGVtcHJvcD0nbWFpbkVudGl0eU9mUGFnZSddIC56b25lOmZpcnN0LWNoaWxkIHtcbiAgbGluZS1oZWlnaHQ6IDI7IH1cblxuLmZvcm1ibG9jayArIC5mb3JtYmxvY2sge1xuICBtYXJnaW4tdG9wOiAzMnB4OyB9XG5cbi5mb3JtYmxvY2tfX2FkZG9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDEwcHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAwO1xuICBmb250LXdlaWdodDogNjAwO1xuICBjb2xvcjogIzZmNzc3YjsgfVxuXG4uZm9ybWJsb2NrX19maWVsZC0tcHJlZml4IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5mb3JtYmxvY2tfX2ZpZWxkLS1wcmVmaXggaW5wdXQge1xuICAgIHBhZGRpbmctbGVmdDogMzJweDsgfVxuICAuZm9ybWJsb2NrX19maWVsZC0tcHJlZml4IC5mb3JtYmxvY2tfX2FkZG9uIHtcbiAgICBsZWZ0OiAxNnB4OyB9XG5cbi5mb3JtYmxvY2tfX2ZpZWxkLS1zdWZmaXgge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmZvcm1ibG9ja19fZmllbGQtLXN1ZmZpeCBpbnB1dCB7XG4gICAgcGFkZGluZy1yaWdodDogMzJweDsgfVxuICAuZm9ybWJsb2NrX19maWVsZC0tc3VmZml4IC5mb3JtYmxvY2tfX2FkZG9uIHtcbiAgICByaWdodDogMTZweDsgfVxuXG4uZm9ybWJsb2NrX19maWVsZC0taW5saW5lIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4OyB9XG4gIC5mb3JtYmxvY2tfX2ZpZWxkLS1pbmxpbmUgYnV0dG9uLCAuZm9ybWJsb2NrX19maWVsZC0taW5saW5lIFt0eXBlPSdzdWJtaXQnXSwgLmZvcm1ibG9ja19fZmllbGQtLWlubGluZSAuYnV0dG9uLCAuZm9ybWJsb2NrX19maWVsZC0taW5saW5lIC50b2dnbGUsIC5mb3JtYmxvY2tfX2ZpZWxkLS1pbmxpbmUgLnBhbmVsLWdyb3VwX190b2dnbGUsIC5mb3JtYmxvY2tfX2ZpZWxkLS1pbmxpbmUgLmFsZXJ0X19kaXNtaXNzLCAuZm9ybWJsb2NrX19maWVsZC0taW5saW5lIC5jYXJkX19hY3Rpb24sIC5mb3JtYmxvY2tfX2ZpZWxkLS1pbmxpbmUgLnNob3RfX2J1dHRvbiB7XG4gICAgd2lkdGg6IGF1dG87IH1cbiAgICAuZm9ybWJsb2NrX19maWVsZC0taW5saW5lIGJ1dHRvbjpub3QoOmZpcnN0LWNoaWxkKSwgLmZvcm1ibG9ja19fZmllbGQtLWlubGluZSBbdHlwZT0nc3VibWl0J106bm90KDpmaXJzdC1jaGlsZCksIC5mb3JtYmxvY2tfX2ZpZWxkLS1pbmxpbmUgLmJ1dHRvbjpub3QoOmZpcnN0LWNoaWxkKSwgLmZvcm1ibG9ja19fZmllbGQtLWlubGluZSAudG9nZ2xlOm5vdCg6Zmlyc3QtY2hpbGQpLCAuZm9ybWJsb2NrX19maWVsZC0taW5saW5lIC5wYW5lbC1ncm91cF9fdG9nZ2xlOm5vdCg6Zmlyc3QtY2hpbGQpLCAuZm9ybWJsb2NrX19maWVsZC0taW5saW5lIC5hbGVydF9fZGlzbWlzczpub3QoOmZpcnN0LWNoaWxkKSwgLmZvcm1ibG9ja19fZmllbGQtLWlubGluZSAuY2FyZF9fYWN0aW9uOm5vdCg6Zmlyc3QtY2hpbGQpLCAuZm9ybWJsb2NrX19maWVsZC0taW5saW5lIC5zaG90X19idXR0b246bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgbWFyZ2luLWxlZnQ6IDhweDsgfVxuICAgIC5mb3JtYmxvY2tfX2ZpZWxkLS1pbmxpbmUgYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCksIC5mb3JtYmxvY2tfX2ZpZWxkLS1pbmxpbmUgW3R5cGU9J3N1Ym1pdCddOm5vdCg6bGFzdC1jaGlsZCksIC5mb3JtYmxvY2tfX2ZpZWxkLS1pbmxpbmUgLmJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpLCAuZm9ybWJsb2NrX19maWVsZC0taW5saW5lIC50b2dnbGU6bm90KDpsYXN0LWNoaWxkKSwgLmZvcm1ibG9ja19fZmllbGQtLWlubGluZSAucGFuZWwtZ3JvdXBfX3RvZ2dsZTpub3QoOmxhc3QtY2hpbGQpLCAuZm9ybWJsb2NrX19maWVsZC0taW5saW5lIC5hbGVydF9fZGlzbWlzczpub3QoOmxhc3QtY2hpbGQpLCAuZm9ybWJsb2NrX19maWVsZC0taW5saW5lIC5jYXJkX19hY3Rpb246bm90KDpsYXN0LWNoaWxkKSwgLmZvcm1ibG9ja19fZmllbGQtLWlubGluZSAuc2hvdF9fYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgbWFyZ2luLXJpZ2h0OiA4cHg7IH1cblxuLmZvcm1ibG9jay0tZGF0ZXBpY2tlciAuZm9ybWJsb2NrX19maWVsZCBpbnB1dCB7XG4gIHdpZHRoOiBhdXRvO1xuICBmbGV4LWdyb3c6IDI7IH1cblxuLmZvcm1ibG9ja19fbm90aWNlIHtcbiAgY29sb3I6ICM2Zjc3N2I7IH1cblxuLmZvcm1ibG9ja19fd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgLmZvcm1ibG9ja1tkYXRhLXNpemU9J21kJ10ge1xuICAgIHdpZHRoOiAzMDBweDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLmZvcm1ibG9ja1tkYXRhLXNpemU9J21kJ10ge1xuICAgIHdpZHRoOiA0MTJweDsgfSB9XG5cbi5mb3JtYmxvY2tfX2xpbWl0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDE2cHg7XG4gIHJpZ2h0OiAxNnB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3gtc2hhZG93OiAwIDAgMCA4cHggI2ZmZjtcbiAgY29sb3I6ICM2Zjc3N2I7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAgIC5mb3JtYmxvY2tfX2xpbWl0IHtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDsgfSB9XG5cbi5mb3JtYmxvY2stLWVycm9yIC5mb3JtYmxvY2tfX2xhYmVsIHtcbiAgY29sb3I6ICNkYzE0M2M7IH1cblxuLmZvcm1ibG9jay0tZXJyb3IgLmZvcm1ibG9ja19fZmllbGQge1xuICBib3JkZXItY29sb3I6ICNkYzE0M2M7IH1cbiAgLmZvcm1ibG9jay0tZXJyb3IgLmZvcm1ibG9ja19fZmllbGQ6Zm9jdXMge1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDRweCByZ2JhKDIyMCwgMjAsIDYwLCAwLjE2KTsgfVxuXG4uZm9ybWJsb2NrLS1lcnJvciAuZm9ybWJsb2NrX19ub3RpY2Uge1xuICBjb2xvcjogI2RjMTQzYztcbiAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuXG4uZm9ybWFjdGlvbixcbi5mb3JtLWFjdGlvbnMge1xuICBtYXJnaW4tdG9wOiAzMnB4OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAgIC5mb3JtYWN0aW9uLFxuICAgIC5mb3JtLWFjdGlvbnMge1xuICAgICAgbWFyZ2luLXRvcDogNjRweDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMjgwcHgpIHtcbiAgICAuZm9ybWFjdGlvbixcbiAgICAuZm9ybS1hY3Rpb25zIHtcbiAgICAgIG1hcmdpbi10b3A6IDEyOHB4OyB9IH1cblxuLnBhbmVsLWdyb3VwIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDI0LCAyNSwgMjUsIDAuMSk7IH1cbiAgLnBhbmVsLWdyb3VwX190b2dnbGUge1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBtYXJnaW4tYm90dG9tOiAxNnB4OyB9XG4gIC5wYW5lbC1ncm91cCAucGFuZWwge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgdG9wOiBhdXRvO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgY2xlYXI6IHJpZ2h0OyB9XG4gICAgLnBhbmVsLWdyb3VwIC5wYW5lbF9faGVhZGluZyB7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgyNCwgMjUsIDI1LCAwLjEpOyB9XG4gICAgLnBhbmVsLWdyb3VwIC5wYW5lbF9fdGl0bGUge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgZm9udC1mYW1pbHk6IFwiT3BlbiBTYW5zXCIsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgZm9udC1zaXplOiAxNnB4OyB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICAgICAgLnBhbmVsLWdyb3VwIC5wYW5lbF9fdGl0bGUge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTlweDsgfSB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAgIC5wYW5lbC1ncm91cCAucGFuZWxfX3RpdGxlIHtcbiAgICAgICAgICBmb250LXNpemU6IDIxcHg7IH0gfVxuICAgICAgLnBhbmVsLWdyb3VwIC5wYW5lbF9fdGl0bGUgYSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBhZGRpbmc6IDE2cHggODBweCAxNnB4IDA7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgIGNvbG9yOiAjMTgxOTE5OyB9XG4gICAgICAgIC5wYW5lbC1ncm91cCAucGFuZWxfX3RpdGxlIGE6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICByaWdodDogMzJweDtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB3aWR0aDogMTZweDtcbiAgICAgICAgICBoZWlnaHQ6IDE2cHg7XG4gICAgICAgICAgbWFyZ2luLXRvcDogLThweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgNTAlO1xuICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxNnB4IGF1dG87IH1cbiAgICAgICAgLnBhbmVsLWdyb3VwIC5wYW5lbF9fdGl0bGUgYTpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMTEsIDExOSwgMTIzLCAwLjA1KTtcbiAgICAgICAgICBjb2xvcjogIzAwNDFiYTsgfVxuICAgICAgICAucGFuZWwtZ3JvdXAgLnBhbmVsX190aXRsZSBhW2FyaWEtZXhwYW5kZWQ9J2ZhbHNlJ106YWZ0ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9pY29ucy9pX2FkZC5zdmdcIik7IH1cbiAgICAgICAgLnBhbmVsLWdyb3VwIC5wYW5lbF9fdGl0bGUgYVthcmlhLWV4cGFuZGVkPSd0cnVlJ106YWZ0ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9pY29ucy9pX3JlbW92ZS5zdmdcIik7IH1cbiAgICAucGFuZWwtZ3JvdXAgLnBhbmVsX19jb250ZW50W2FyaWEtaGlkZGVuPSd0cnVlJ10ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5wYW5lbC1ncm91cCAucGFuZWxfX2NvbnRlbnRbYXJpYS1oaWRkZW49J2ZhbHNlJ10ge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwYWRkaW5nOiAzMnB4IDA7IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAgICAgICAucGFuZWwtZ3JvdXAgLnBhbmVsX19jb250ZW50W2FyaWEtaGlkZGVuPSdmYWxzZSddIHtcbiAgICAgICAgICBwYWRkaW5nOiA0OHB4IDA7IH0gfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgICAucGFuZWwtZ3JvdXAgLnBhbmVsX19jb250ZW50W2FyaWEtaGlkZGVuPSdmYWxzZSddIHtcbiAgICAgICAgICBwYWRkaW5nOiA2NHB4IDA7IH0gfVxuICAgIC5wYW5lbC1ncm91cCAucGFuZWxfX2NvbnRlbnQgLmxpbmtzIHtcbiAgICAgIG1hcmdpbjogMDsgfVxuXG4uZm9ybSB7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC5mb3JtX190aXRsZSB7XG4gICAgbWFyZ2luOiAwIDAgMTZweDtcbiAgICBmb250OiA3MDAgMTlweC8xLjI1IFwiT3BlbiBTYW5zXCIsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICAgIC5mb3JtX190aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjFweDsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgLmZvcm1fX3RpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiAyNHB4OyB9IH1cbiAgLmZvcm1fX2Rlc2NyaXB0aW9uIHtcbiAgICBtYXJnaW46IDAgMCAzMnB4OyB9XG4gIC5mb3JtIC50aXRsZS50aXRsZS0tc2Vjb25kYXJ5LCAuZm9ybSAudGl0bGUuYmFuZF9fdGl0bGUge1xuICAgIG1hcmdpbi10b3A6IDMycHg7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICAgIC5mb3JtIC50aXRsZS50aXRsZS0tc2Vjb25kYXJ5LCAuZm9ybSAudGl0bGUuYmFuZF9fdGl0bGUge1xuICAgICAgICBtYXJnaW4tdG9wOiA0OHB4OyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAuZm9ybSAudGl0bGUudGl0bGUtLXNlY29uZGFyeSwgLmZvcm0gLnRpdGxlLmJhbmRfX3RpdGxlIHtcbiAgICAgICAgbWFyZ2luLXRvcDogNjRweDsgfSB9XG4gICAgLmZvcm0gLnRpdGxlLnRpdGxlLS1zZWNvbmRhcnk6Zmlyc3Qtb2YtdHlwZSwgLmZvcm0gLnRpdGxlLmJhbmRfX3RpdGxlOmZpcnN0LW9mLXR5cGUge1xuICAgICAgbWFyZ2luLXRvcDogMDsgfVxuICAuZm9ybSAuZmllbGRzZXQge1xuICAgIG1hcmdpbi10b3A6IDMycHg7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICAgIC5mb3JtIC5maWVsZHNldCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDQ4cHg7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgIC5mb3JtIC5maWVsZHNldCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDY0cHg7IH0gfVxuICAgIC5mb3JtIC5maWVsZHNldDpmaXJzdC1vZi10eXBlIHtcbiAgICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgICAuZm9ybSAuZmllbGRzZXQgLnRpdGxlLnRpdGxlLS1zZWNvbmRhcnksIC5mb3JtIC5maWVsZHNldCAudGl0bGUuYmFuZF9fdGl0bGUge1xuICAgICAgbWFyZ2luLXRvcDogMDsgfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gICAgICAgIC5mb3JtIC5maWVsZHNldCAudGl0bGUudGl0bGUtLXNlY29uZGFyeSwgLmZvcm0gLmZpZWxkc2V0IC50aXRsZS5iYW5kX190aXRsZSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMDsgfSB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAgIC5mb3JtIC5maWVsZHNldCAudGl0bGUudGl0bGUtLXNlY29uZGFyeSwgLmZvcm0gLmZpZWxkc2V0IC50aXRsZS5iYW5kX190aXRsZSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMDsgfSB9XG4gIC5mb3JtID4gLmZpZWxkc2V0OmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tdG9wOiAwOyB9XG4gIC5mb3JtIGhyLndlYmZvcm0taG9yaXpvbnRhbC1ydWxlLCAuZm9ybSAud2ViZm9ybS1ob3Jpem9udGFsLXJ1bGUubWVudV9fZGl2aWRlciB7XG4gICAgbWFyZ2luOiAzMnB4IDA7IH1cbiAgLmZvcm0tLXNlYXJjaCB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiA2NHB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDY0cHgpO1xuICAgIGhlaWdodDogNjhweDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHotaW5kZXg6IDE7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyM3B4KSBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpLCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjNweCkgYW5kICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSkge1xuICAuZm9ybS0tc2VhcmNoIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAgICAgLmZvcm0tLXNlYXJjaCB7XG4gICAgICAgIGxlZnQ6IDgwcHg7XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA4MHB4KTtcbiAgICAgICAgaGVpZ2h0OiA4NHB4OyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAuZm9ybS0tc2VhcmNoIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0b3A6IGF1dG87XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7IH0gfVxuICAgIC5mb3JtLS1zZWFyY2ggbGFiZWwge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogLTEwMDAwcHg7XG4gICAgICB0b3A6IGF1dG87XG4gICAgICB3aWR0aDogMXB4O1xuICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gICAgLmZvcm0tLXNlYXJjaCBbdHlwZT0nc2VhcmNoJ10ge1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgIHBhZGRpbmc6IDAgMTZweCAwIDY0cHg7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBib3JkZXItcmFkaXVzOiAwOyB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAgIC5mb3JtLS1zZWFyY2ggW3R5cGU9J3NlYXJjaCddIHtcbiAgICAgICAgICBvcmRlcjogMjtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDE1MG1zIGN1YmljLWJlemllcigwLjc3LCAwLCAwLjE3NSwgMSk7IH0gfVxuICAgICAgLmZvcm0tLXNlYXJjaCBbdHlwZT0nc2VhcmNoJ106Zm9jdXMge1xuICAgICAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCA0cHggI2ZmYmY0NzsgfVxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAgICAgLmZvcm0tLXNlYXJjaCBbdHlwZT0nc2VhcmNoJ106Zm9jdXMge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMTEsIDExOSwgMTIzLCAwLjA1KTtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7IH0gfVxuICAgIC5mb3JtLS1zZWFyY2ggW3R5cGU9J3N1Ym1pdCddIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDE2cHg7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHBhZGRpbmc6IDE2cHg7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvaWNvbnMvaV9zZWFyY2guc3ZnXCIpIG5vLXJlcGVhdCA1MCUgNTAlLzE2cHggYXV0bztcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICBmb250LXNpemU6IDA7XG4gICAgICBsaW5lLWhlaWdodDogMDtcbiAgICAgIGJvcmRlcjogMDsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDIzcHgpIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSksIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyM3B4KSBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7XG4gIC5mb3JtLS1zZWFyY2ggW3R5cGU9J3N1Ym1pdCddIHtcbiAgICB0b3A6IDA7IH0gfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgICAuZm9ybS0tc2VhcmNoIFt0eXBlPSdzdWJtaXQnXSB7XG4gICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgIG9yZGVyOiAxOyB9IH1cbiAgQG1lZGlhIGFsbCBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSwgKG1pbi13aWR0aDogMTAyNHB4KSBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpIHtcbiAgICAuZm9ybS0tc2VhcmNoIFt0eXBlPSdzdWJtaXQnXSB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTsgfSB9XG4gICAgICAuZm9ybS0tc2VhcmNoIFt0eXBlPSdzdWJtaXQnXTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgICAuZm9ybS0tc2VhcmNoIFt0eXBlPSdzdWJtaXQnXTpmb2N1cyB7XG4gICAgICAgIG91dGxpbmU6IDA7XG4gICAgICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDNweCAjZmZiZjQ3OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgICAuZm9ybS0tc2VhcmNoLWxvY2F0aW9uIC5mb3JtYmxvY2sge1xuICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICAuZm9ybS0tc2VhcmNoLWZpbHRlcnMge1xuICAgIHBhZGRpbmc6IDMycHggMCAwO1xuICAgIG1hcmdpbi1ib3R0b206IDMycHg7XG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNmNmY2ZjY7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICAgIC5mb3JtLS1zZWFyY2gtZmlsdGVycyB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDQ4cHg7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgIC5mb3JtLS1zZWFyY2gtZmlsdGVycyB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDY0cHg7IH0gfVxuICAgIC5mb3JtLS1zZWFyY2gtZmlsdGVycyAud3JhcHBlciB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzMnB4OyB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICAgICAgLmZvcm0tLXNlYXJjaC1maWx0ZXJzIC53cmFwcGVyIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0OHB4OyB9IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgICAgLmZvcm0tLXNlYXJjaC1maWx0ZXJzIC53cmFwcGVyIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiA2NHB4OyB9IH1cbiAgICAuZm9ybS0tc2VhcmNoLWZpbHRlcnMgLndyYXBwZXIgLmZvcm1ibG9jayB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAuZm9ybS0tc2VhcmNoLWZpbHRlcnMgLndyYXBwZXIgYnV0dG9uIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgbGVmdDogOHB4O1xuICAgICAgd2lkdGg6IDMycHg7XG4gICAgICBoZWlnaHQ6IDMycHg7XG4gICAgICBwYWRkaW5nOiAxNnB4O1xuICAgICAgbWFyZ2luLXRvcDogLTE2cHg7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvaWNvbnMvaV9zZWFyY2guc3ZnXCIpIG5vLXJlcGVhdCA1MCUgNTAlLzE2cHggYXV0bztcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICBmb250LXNpemU6IDA7XG4gICAgICBsaW5lLWhlaWdodDogMDtcbiAgICAgIGJvcmRlcjogMDsgfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgICAuZm9ybS0tc2VhcmNoLWZpbHRlcnMgLndyYXBwZXIgYnV0dG9uIHtcbiAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgb3JkZXI6IDE7IH0gfVxuICAgICAgLmZvcm0tLXNlYXJjaC1maWx0ZXJzIC53cmFwcGVyIGJ1dHRvbjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgICAuZm9ybS0tc2VhcmNoLWZpbHRlcnMgLndyYXBwZXIgYnV0dG9uOmZvY3VzIHtcbiAgICAgICAgb3V0bGluZTogMDtcbiAgICAgICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgM3B4ICNmZmJmNDc7IH1cbiAgICAuZm9ybS0tc2VhcmNoLWZpbHRlcnMgaW5wdXRbdHlwZT0ndGV4dCddIHtcbiAgICAgIHBhZGRpbmctbGVmdDogNDhweDsgfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgICAuZm9ybS0tc2VhcmNoLWZpbHRlcnMgaW5wdXRbdHlwZT0ndGV4dCddIHtcbiAgICAgICAgICB3aWR0aDogMzIuMDMxMjUlOyB9IH1cbiAgICAuZm9ybS0tc2VhcmNoLWZpbHRlcnMgLnN3aXBlci1jb250YWluZXIge1xuICAgICAgdG9wOiAycHg7XG4gICAgICBwYWRkaW5nOiAwIDMycHg7XG4gICAgICBtYXJnaW4tdG9wOiAtMnB4OyB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICAgICAgLmZvcm0tLXNlYXJjaC1maWx0ZXJzIC5zd2lwZXItY29udGFpbmVyIHtcbiAgICAgICAgICBwYWRkaW5nOiAwIDY0cHg7IH0gfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDE0NDBweCkge1xuICAgICAgICAuZm9ybS0tc2VhcmNoLWZpbHRlcnMgLnN3aXBlci1jb250YWluZXIge1xuICAgICAgICAgIHdpZHRoOiAxMTQwcHg7XG4gICAgICAgICAgcGFkZGluZzogMDsgfSB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTY4MHB4KSB7XG4gICAgICAgIC5mb3JtLS1zZWFyY2gtZmlsdGVycyAuc3dpcGVyLWNvbnRhaW5lciB7XG4gICAgICAgICAgd2lkdGg6IDEyODBweDsgfSB9XG4gICAgLmZvcm0tLXNlYXJjaC1maWx0ZXJzIC5yYWRpb3Mge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgIC5mb3JtLS1zZWFyY2gtZmlsdGVycyAucmFkaW9zIC5vcHRpb24ge1xuICAgICAgbWFyZ2luOiAwIDMycHggMCAwO1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKTsgfVxuICAgIC5mb3JtLS1zZWFyY2gtZmlsdGVycyAub3B0aW9uX19sYWJlbCB7XG4gICAgICBwYWRkaW5nOiAwIDAgMTZweDtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAgICAgICAuZm9ybS0tc2VhcmNoLWZpbHRlcnMgLm9wdGlvbl9fbGFiZWwge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTlweDsgfSB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAgIC5mb3JtLS1zZWFyY2gtZmlsdGVycyAub3B0aW9uX19sYWJlbCB7XG4gICAgICAgICAgZm9udC1zaXplOiAyMXB4OyB9IH1cbiAgICAuZm9ybS0tc2VhcmNoLWZpbHRlcnMgLm9wdGlvbl9faWNvbiB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLmZvcm0tLXNlYXJjaC1maWx0ZXJzIC5vcHRpb25fX2lucHV0OmNoZWNrZWQgKyAub3B0aW9uX19sYWJlbCB7XG4gICAgICBib3gtc2hhZG93OiBpbnNldCAwIC0ycHggMCAwICMxODE5MTk7XG4gICAgICBmb250LXdlaWdodDogNzAwOyB9XG4gIC5mb3JtLXJlcXVpcmVkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDNweDsgfVxuICAgIC5mb3JtLXJlcXVpcmVkOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcqJztcbiAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgIGNvbG9yOiAjZGMxNDNjOyB9XG5cbi5hbGVydCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogODBweCAzMnB4IDMycHg7XG4gIG1hcmdpbi1ib3R0b206IDMycHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJvcmRlci1yYWRpdXM6IDRweDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICAuYWxlcnQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNDhweDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAuYWxlcnQge1xuICAgICAgcGFkZGluZzogMzJweCAzMnB4IDMycHggODhweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDY0cHg7IH0gfVxuICAuYWxlcnQgLndyYXBwZXIge1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgLmFsZXJ0ICo6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAuYWxlcnQ6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAzMnB4O1xuICAgIGxlZnQ6IDMycHg7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiAyNHB4O1xuICAgIGhlaWdodDogMjRweDtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvaWNvbnMvaV9hbGVydC1jaXJjbGUtZXhjLnN2Z1wiKSBuby1yZXBlYXQgNTAlIDUwJS8xMDAlIGF1dG87IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAuYWxlcnQ6YmVmb3JlIHtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIG1hcmdpbi10b3A6IC0xMnB4OyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gICAgLmFsZXJ0X19jYXRlZ29yeSB7XG4gICAgICB3aWR0aDogMjIuMTE1Mzg0NjE1NCU7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTQ0MHB4KSB7XG4gICAgLmFsZXJ0X19jYXRlZ29yeSB7XG4gICAgICB3aWR0aDogMTAuMTU2MjUlOyB9IH1cbiAgLmFsZXJ0X19tZXNzYWdlIHtcbiAgICBtYXJnaW4tdG9wOiA4cHg7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICAgIC5hbGVydF9fbWVzc2FnZSB7XG4gICAgICAgIHdpZHRoOiA3NC4wMzg0NjE1Mzg1JTtcbiAgICAgICAgbWFyZ2luOiAwOyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTQ0MHB4KSB7XG4gICAgICAuYWxlcnRfX21lc3NhZ2Uge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIHdpZHRoOiA4Ny4zNDM3NSU7IH0gfVxuICAuYWxlcnQgYSB7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuICAuYWxlcnRfX2Rpc21pc3Mge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgd2lkdGg6IDY0cHg7XG4gICAgaGVpZ2h0OiA2NHB4O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYmFja2dyb3VuZDogIzA3MjIzNSB1cmwoXCIuLi9pbWcvaWNvbnMvaV9jbG9zZV93aGl0ZS5zdmdcIikgbm8tcmVwZWF0IDUwJSA1MCUvMjRweCBhdXRvO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAxNTBtcyBjdWJpYy1iZXppZXIoMC43NywgMCwgMC4xNzUsIDEpO1xuICAgIGZvbnQtc2l6ZTogMDtcbiAgICBsaW5lLWhlaWdodDogMDsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxNDQwcHgpIHtcbiAgICAgIC5hbGVydF9fZGlzbWlzcyB7XG4gICAgICAgIHdpZHRoOiA2NHB4O1xuICAgICAgICBoZWlnaHQ6IDEwMCU7IH0gfVxuICAgIC5hbGVydF9fZGlzbWlzczpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvaWNvbnMvaV9jbG9zZV93aGl0ZS5zdmdcIik7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDQxNDFlOyB9XG4gICAgLmFsZXJ0X19kaXNtaXNzOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9pY29ucy9pX2Nsb3NlX3doaXRlLnN2Z1wiKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwNDE0MWU7XG4gICAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAzcHggI2ZmYmY0NzsgfVxuICAuYWxlcnQtLXByaW1hcnkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwNzIyMzU7XG4gICAgY29sb3I6ICNmZmY7IH1cbiAgICAuYWxlcnQtLXByaW1hcnk6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9pY29ucy9pX2FsZXJ0LWNpcmNsZS1leGNfd2hpdGUuc3ZnXCIpOyB9XG4gICAgLmFsZXJ0LS1wcmltYXJ5IGEge1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBmb250LXdlaWdodDogNjAwOyB9XG4gICAgICAuYWxlcnQtLXByaW1hcnkgYTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwNDE0MWU7IH1cbiAgICAgIC5hbGVydC0tcHJpbWFyeSBhOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICMwNzIyMzU7IH1cbiAgICAgIC5hbGVydC0tcHJpbWFyeSBhOmFjdGl2ZSB7XG4gICAgICAgIGNvbG9yOiAjZmZmOyB9XG4gIC5hbGVydC0tc2Vjb25kYXJ5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjZmNmY2O1xuICAgIGNvbG9yOiAjMTgxOTE5OyB9XG4gICAgLmFsZXJ0LS1zZWNvbmRhcnkgYSB7XG4gICAgICBjb2xvcjogIzE4MTkxOTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7IH1cbiAgICAgIC5hbGVydC0tc2Vjb25kYXJ5IGE6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTllOWU5OyB9XG4gICAgICAuYWxlcnQtLXNlY29uZGFyeSBhOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICMxODE5MTk7IH1cbiAgICAgIC5hbGVydC0tc2Vjb25kYXJ5IGE6YWN0aXZlIHtcbiAgICAgICAgY29sb3I6ICMxODE5MTk7IH1cbiAgLmFsZXJ0LS1icmVha2luZyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2RjMTQzYztcbiAgICBjb2xvcjogI2ZmZjsgfVxuICAgIC5hbGVydC0tYnJlYWtpbmc6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9pY29ucy9pX2FsZXJ0LWNpcmNsZS1leGNfd2hpdGUuc3ZnXCIpOyB9XG4gICAgLmFsZXJ0LS1icmVha2luZyBhIHtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuICAgICAgLmFsZXJ0LS1icmVha2luZyBhOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzk2MGUyOTsgfVxuICAgICAgLmFsZXJ0LS1icmVha2luZyBhOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICMxODE5MTk7IH1cbiAgICAgIC5hbGVydC0tYnJlYWtpbmcgYTphY3RpdmUge1xuICAgICAgICBjb2xvcjogIzE4MTkxOTsgfVxuICAuYWxlcnQtLWdsb2JhbCB7XG4gICAgcGFkZGluZzogNjRweCAzMnB4IDMycHg7XG4gICAgbWFyZ2luOiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwNzIyMzU7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBjb2xvcjogI2ZmZjsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxNDQwcHgpIHtcbiAgICAgIC5hbGVydC0tZ2xvYmFsIHtcbiAgICAgICAgcGFkZGluZzogMzJweDtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4OyB9IH1cbiAgICAuYWxlcnQtLWdsb2JhbDpiZWZvcmUge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5hbGVydC0tZ2xvYmFsIGEge1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBmb250LXdlaWdodDogNjAwOyB9XG4gICAgICAuYWxlcnQtLWdsb2JhbCBhOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzA0MTQxZTsgfVxuICAgICAgLmFsZXJ0LS1nbG9iYWwgYTpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmJmNDc7XG4gICAgICAgIGNvbG9yOiAjMDcyMjM1OyB9XG4gICAgICAuYWxlcnQtLWdsb2JhbCBhOmFjdGl2ZSB7XG4gICAgICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgLmFsZXJ0LS1nbG9iYWwgLmFsZXJ0X19pdGVtIHtcbiAgICAgIHBhZGRpbmc6IDMycHggMDtcbiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMjUpOyB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICAgICAgLmFsZXJ0LS1nbG9iYWwgLmFsZXJ0X19pdGVtIHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxNDQwcHgpIHtcbiAgICAgICAgLmFsZXJ0LS1nbG9iYWwgLmFsZXJ0X19pdGVtIHtcbiAgICAgICAgICBwYWRkaW5nOiAyNHB4IDA7IH0gfVxuICAgIC5hbGVydC0tZ2xvYmFsIC5hbGVydF9faXRlbTpmaXJzdC1jaGlsZCB7XG4gICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgIGJvcmRlcjogMDsgfVxuICAgIC5hbGVydC0tZ2xvYmFsIC5hbGVydF9faXRlbTpsYXN0LWNoaWxkIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA2MzlweCkge1xuICAgIC5hbGVydC0tY29sbGFwc2libGUge1xuICAgICAgcGFkZGluZy10b3A6IDMycHg7IH0gfVxuICAuYWxlcnQtLWNvbGxhcHNpYmxlIC5hbGVydF9fbGFiZWwge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMCA0OHB4IDAgMzJweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDYzOXB4KSB7XG4gICAgLmFsZXJ0LS1jb2xsYXBzaWJsZSAuYWxlcnRfX292ZXJmbG93IHtcbiAgICAgIG1heC1oZWlnaHQ6IDA7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDYzOXB4KSB7XG4gICAgLmFsZXJ0LS1jb2xsYXBzaWJsZSAuYWxlcnRfX292ZXJmbG93LS1hY3RpdmUge1xuICAgICAgbWF4LWhlaWdodDogMTAwMHB4O1xuICAgICAgcGFkZGluZy10b3A6IDMycHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNjM5cHgpIHtcbiAgICAuYWxlcnQtLWNvbGxhcHNpYmxlIC5hbGVydF9fdG9nZ2xlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMzJweDtcbiAgICAgIHJpZ2h0OiAzMnB4O1xuICAgICAgd2lkdGg6IDI0cHg7XG4gICAgICBoZWlnaHQ6IDI0cHg7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgYmFja2dyb3VuZDogbm8tcmVwZWF0IHVybChcIi4uL2ltZy9pY29ucy9pX21lbnUtZG90cy5zdmdcIikgNTAlIDUwJS8xMDAlIGF1dG87XG4gICAgICBib3JkZXI6IDA7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNjM5cHgpIHtcbiAgICAuYWxlcnQtLWNvbGxhcHNpYmxlIC5hbGVydF9fdG9nZ2xlOmZvY3VzIHtcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDJweCAjZmZiZjQ3O1xuICAgICAgb3V0bGluZTogMDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA2MzlweCkge1xuICAgIC5hbGVydC0tY29sbGFwc2libGUgLmFsZXJ0X190b2dnbGUtLWFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvaWNvbnMvaV9jbG9zZS5zdmdcIik7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNjM5cHgpIHtcbiAgICAuYWxlcnQtLWNvbGxhcHNpYmxlLmFsZXJ0LS1wcmltYXJ5IC5hbGVydF9fdG9nZ2xlLFxuICAgIC5hbGVydC0tY29sbGFwc2libGUuYWxlcnQtLWJyZWFraW5nIC5hbGVydF9fdG9nZ2xlIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9pY29ucy9pX21lbnUtZG90c193aGl0ZS5zdmdcIik7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNjM5cHgpIHtcbiAgICAuYWxlcnQtLWNvbGxhcHNpYmxlLmFsZXJ0LS1wcmltYXJ5IC5hbGVydF9fdG9nZ2xlLmFsZXJ0X190b2dnbGUtLWFjdGl2ZSxcbiAgICAuYWxlcnQtLWNvbGxhcHNpYmxlLmFsZXJ0LS1icmVha2luZyAuYWxlcnRfX3RvZ2dsZS5hbGVydF9fdG9nZ2xlLS1hY3RpdmUge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2ljb25zL2lfY2xvc2Vfd2hpdGUuc3ZnXCIpOyB9IH1cblxuLmZpbGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmZpbGUgW2l0ZW1wcm9wPSd1cmwnXSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLmZpbGUgW2l0ZW1wcm9wPSd1cmwnXTpiZWZvcmUge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAtNTZweDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICBoZWlnaHQ6IDQ4cHg7XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDUwJTtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogYXV0byAxMDAlOyB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICAgICAgLmZpbGUgW2l0ZW1wcm9wPSd1cmwnXTpiZWZvcmUge1xuICAgICAgICAgIGxlZnQ6IC04NXB4O1xuICAgICAgICAgIHdpZHRoOiA1M3B4O1xuICAgICAgICAgIGhlaWdodDogNjRweDsgfSB9XG4gICAgLmZpbGUgW2l0ZW1wcm9wPSd1cmwnXVtocmVmKj0nLmRvYyddOmJlZm9yZSwgLmZpbGUgW2l0ZW1wcm9wPSd1cmwnXVtocmVmKj0nLmRvY3gnXTpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2dyYXBoaWNzL2dfZmlsZS1kb2Muc3ZnXCIpOyB9XG4gICAgLmZpbGUgW2l0ZW1wcm9wPSd1cmwnXVtocmVmKj0nLnhscyddOmJlZm9yZSwgLmZpbGUgW2l0ZW1wcm9wPSd1cmwnXVtocmVmKj0nLnhsc3gnXTpiZWZvcmUsIC5maWxlIFtpdGVtcHJvcD0ndXJsJ11baHJlZio9Jy5jc3YnXTpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2dyYXBoaWNzL2dfZmlsZS14bHMuc3ZnXCIpOyB9XG4gICAgLmZpbGUgW2l0ZW1wcm9wPSd1cmwnXVtocmVmKj0nLnBwdCddOmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvZ3JhcGhpY3MvZ19maWxlLXBwdC5zdmdcIik7IH1cbiAgICAuZmlsZSBbaXRlbXByb3A9J3VybCddW2hyZWYqPScucGRmJ106YmVmb3JlLCAuZmlsZSBbaXRlbXByb3A9J3VybCddLnBkZl9saW5rOmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvZ3JhcGhpY3MvZ19maWxlLXBkZi5zdmdcIik7IH1cbiAgICAuZmlsZSBbaXRlbXByb3A9J3VybCddW2hyZWYqPScuanBnJ106YmVmb3JlLCAuZmlsZSBbaXRlbXByb3A9J3VybCddW2hyZWYqPScucG5nJ106YmVmb3JlLCAuZmlsZSBbaXRlbXByb3A9J3VybCddW2hyZWYqPScuZ2lmJ106YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9ncmFwaGljcy9nX2ZpbGUtaW1nLnN2Z1wiKTsgfVxuICAgIC5maWxlIFtpdGVtcHJvcD0ndXJsJ11baHJlZio9Jy50eHQnXTpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2dyYXBoaWNzL2dfZmlsZS10eHQuc3ZnXCIpOyB9XG4gICAgLmZpbGUgW2l0ZW1wcm9wPSd1cmwnXVtocmVmKj0nLnppcCddOmJlZm9yZSwgLmZpbGUgW2l0ZW1wcm9wPSd1cmwnXS56aXBfbGluazpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2dyYXBoaWNzL2dfZmlsZS16aXAuc3ZnXCIpOyB9XG5cbltkYXRhLXNpbmdsZT0nZG9jdW1lbnQnXSBbaXRlbXByb3A9J21haW5Db250ZW50T2ZQYWdlJ10ge1xuICBsaW5lLWhlaWdodDogMjsgfVxuXG4uYmFkZ2UsIC5saXN0X19pdGVtLS1wb3B1bGFyOmJlZm9yZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogOHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTgxOTE5O1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGNvbG9yOiAjZmZmO1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXNpemU6IDEycHg7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG4gIC5iYWRnZS0tcHJpbWFyeSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMmY4NzsgfVxuICAuYmFkZ2UtLXNlY29uZGFyeSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzZmNzc3YjsgfVxuICAuYmFkZ2UtLWluZm8ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMxNDc3YTk7IH1cbiAgLmJhZGdlLS1kYW5nZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNkYzE0M2M7IH1cbiAgLmJhZGdlLS1saWdodCwgLmxpc3RfX2l0ZW0tLXBvcHVsYXI6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIGNvbG9yOiAjMTgxOTE5OyB9XG4gIC5iYWRnZS0tcGlsbCwgLmxpc3RfX2l0ZW0tLXBvcHVsYXI6YmVmb3JlIHtcbiAgICBwYWRkaW5nOiA3cHggMTJweCA2cHg7XG4gICAgYm9yZGVyLXJhZGl1czogOTk5cHg7IH1cblxuLmNsb3NpbmdzLWdyb3VwICsgLmNsb3NpbmdzLWdyb3VwIHtcbiAgbWFyZ2luLXRvcDogNjRweDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICAuY2xvc2luZ3MtZ3JvdXAgKyAuY2xvc2luZ3MtZ3JvdXAge1xuICAgICAgbWFyZ2luLXRvcDogOTZweDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAuY2xvc2luZ3MtZ3JvdXAgKyAuY2xvc2luZ3MtZ3JvdXAge1xuICAgICAgbWFyZ2luLXRvcDogMTI4cHg7IH0gfVxuXG4uY2xvc2luZyB7XG4gIG1hcmdpbjogNjRweCAwIDA7IH1cbiAgLmNsb3NpbmdfX3RpdGxlIHtcbiAgICBtYXJnaW46IDAgMCA4cHg7XG4gICAgY29sb3I6ICNkYzE0M2M7IH1cbiAgLmNsb3NpbmdfX21lc3NhZ2Uge1xuICAgIG1hcmdpbjogMzJweCAwIDA7IH1cbiAgICAuY2xvc2luZ19fbWVzc2FnZSBbaXRlbXByb3A9J3N0cmVldEFkZHJlc3MnXSB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICAuY2xvc2luZ19fYWx0ZXJuYXRlIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICAuY2xvc2luZ19fYWx0ZXJuYXRlLWxvY2F0aW9uIHtcbiAgICAgIHdpZHRoOiA0OC4wNzY5MjMwNzY5JTsgfSB9XG4gIC5jbG9zaW5nX19hbHRlcm5hdGUtY29udGFjdCB7XG4gICAgbWFyZ2luOiAzMnB4IDAgMDsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAgICAgLmNsb3NpbmdfX2FsdGVybmF0ZS1jb250YWN0IHtcbiAgICAgICAgd2lkdGg6IDQ4LjA3NjkyMzA3NjklOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gICAgLmNsb3NpbmdfX2FsdGVybmF0ZS1sb2NhdGlvbiArIC5jbG9zaW5nX19hbHRlcm5hdGUtY29udGFjdCB7XG4gICAgICBtYXJnaW46IDAgMCAwIDMuODQ2MTUzODQ2MiU7IH0gfVxuICAuY2xvc2luZzpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXRvcDogMDsgfVxuICAuY2xvc2luZyAqOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLnNpZGVibG9jaywgLm1lbnUtLXNlY29uZGFyeSB7XG4gIG1hcmdpbi10b3A6IDMycHg7IH1cbiAgLnNpZGVibG9jazpmaXJzdC1vZi10eXBlLCAubWVudS0tc2Vjb25kYXJ5OmZpcnN0LW9mLXR5cGUge1xuICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgLnNpZGVibG9ja19fdGl0bGUge1xuICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgLnNpZGVibG9ja19fY29udGVudCA+ICo6bGFzdC1jaGlsZCwgLm1lbnUtLXNlY29uZGFyeSAubWVudV9fbGlzdCA+ICo6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAuc2lkZWJsb2NrIC5saW5rc19faXRlbSwgLm1lbnUtLXNlY29uZGFyeSAubGlua3NfX2l0ZW0ge1xuICAgIG1hcmdpbi10b3A6IDEycHg7IH1cbiAgLnNpZGVibG9jayAubWVudV9faXRlbSwgLm1lbnUtLXNlY29uZGFyeSAubWVudV9faXRlbSB7XG4gICAgbWFyZ2luLXRvcDogMTJweDsgfVxuXG4vKlxuICogVGFibGUgc3R5bGVzXG4gKi9cbnRhYmxlLmRhdGFUYWJsZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDAgYXV0bztcbiAgY2xlYXI6IGJvdGg7XG4gIGJvcmRlci1jb2xsYXBzZTogc2VwYXJhdGU7XG4gIGJvcmRlci1zcGFjaW5nOiAwO1xuICAvKlxuICAgKiBIZWFkZXIgYW5kIGZvb3RlciBzdHlsZXNcbiAgICovXG4gIC8qXG4gICAqIEJvZHkgc3R5bGVzXG4gICAqLyB9XG5cbnRhYmxlLmRhdGFUYWJsZSB0aGVhZCB0aCxcbnRhYmxlLmRhdGFUYWJsZSB0Zm9vdCB0aCB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbnRhYmxlLmRhdGFUYWJsZSB0aGVhZCB0aCxcbnRhYmxlLmRhdGFUYWJsZSB0aGVhZCB0ZCB7XG4gIHBhZGRpbmc6IDEwcHggMThweDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICMxMTE7IH1cblxudGFibGUuZGF0YVRhYmxlIHRoZWFkIHRoOmFjdGl2ZSxcbnRhYmxlLmRhdGFUYWJsZSB0aGVhZCB0ZDphY3RpdmUge1xuICBvdXRsaW5lOiBub25lOyB9XG5cbnRhYmxlLmRhdGFUYWJsZSB0Zm9vdCB0aCxcbnRhYmxlLmRhdGFUYWJsZSB0Zm9vdCB0ZCB7XG4gIHBhZGRpbmc6IDEwcHggMThweCA2cHggMThweDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICMxMTE7IH1cblxudGFibGUuZGF0YVRhYmxlIHRoZWFkIC5zb3J0aW5nLFxudGFibGUuZGF0YVRhYmxlIHRoZWFkIC5zb3J0aW5nX2FzYyxcbnRhYmxlLmRhdGFUYWJsZSB0aGVhZCAuc29ydGluZ19kZXNjLFxudGFibGUuZGF0YVRhYmxlIHRoZWFkIC5zb3J0aW5nX2FzY19kaXNhYmxlZCxcbnRhYmxlLmRhdGFUYWJsZSB0aGVhZCAuc29ydGluZ19kZXNjX2Rpc2FibGVkIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICAqY3Vyc29yOiBoYW5kO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgcmlnaHQ7XG4gIGJhY2tncm91bmQtc2l6ZTogYXV0byAxNnB4OyB9XG5cbnRhYmxlLmRhdGFUYWJsZSB0aGVhZCAuc29ydGluZyB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9pY29ucy9pX3NvcnQtYm90aC5zdmdcIik7IH1cblxudGFibGUuZGF0YVRhYmxlIHRoZWFkIC5zb3J0aW5nX2FzYyB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9pY29ucy9pX3NvcnQtYXNjLnN2Z1wiKTsgfVxuXG50YWJsZS5kYXRhVGFibGUgdGhlYWQgLnNvcnRpbmdfZGVzYyB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9pY29ucy9pX3NvcnQtZGVzYy5zdmdcIik7IH1cblxudGFibGUuZGF0YVRhYmxlIHRoZWFkIC5zb3J0aW5nX2FzY19kaXNhYmxlZCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9pY29ucy9pX3NvcnQtYXNjLWRpc2FibGVkLnN2Z1wiKTsgfVxuXG50YWJsZS5kYXRhVGFibGUgdGhlYWQgLnNvcnRpbmdfZGVzY19kaXNhYmxlZCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9pY29ucy9pX3NvcnQtZGVzYy1kaXNhYmxlZC5zdmdcIik7IH1cblxudGFibGUuZGF0YVRhYmxlIHRib2R5IHRyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjsgfVxuXG50YWJsZS5kYXRhVGFibGUgdGJvZHkgdHIuc2VsZWN0ZWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjQjBCRUQ5OyB9XG5cbnRhYmxlLmRhdGFUYWJsZSB0Ym9keSB0aCxcbnRhYmxlLmRhdGFUYWJsZSB0Ym9keSB0ZCB7XG4gIHBhZGRpbmc6IDhweCAxMHB4OyB9XG5cbnRhYmxlLmRhdGFUYWJsZS5yb3ctYm9yZGVyIHRib2R5IHRoLCB0YWJsZS5kYXRhVGFibGUucm93LWJvcmRlciB0Ym9keSB0ZCwgdGFibGUuZGF0YVRhYmxlLmRpc3BsYXkgdGJvZHkgdGgsIHRhYmxlLmRhdGFUYWJsZS5kaXNwbGF5IHRib2R5IHRkIHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNkZGQ7IH1cblxudGFibGUuZGF0YVRhYmxlLnJvdy1ib3JkZXIgdGJvZHkgdHI6Zmlyc3QtY2hpbGQgdGgsXG50YWJsZS5kYXRhVGFibGUucm93LWJvcmRlciB0Ym9keSB0cjpmaXJzdC1jaGlsZCB0ZCwgdGFibGUuZGF0YVRhYmxlLmRpc3BsYXkgdGJvZHkgdHI6Zmlyc3QtY2hpbGQgdGgsXG50YWJsZS5kYXRhVGFibGUuZGlzcGxheSB0Ym9keSB0cjpmaXJzdC1jaGlsZCB0ZCB7XG4gIGJvcmRlci10b3A6IG5vbmU7IH1cblxudGFibGUuZGF0YVRhYmxlLmNlbGwtYm9yZGVyIHRib2R5IHRoLCB0YWJsZS5kYXRhVGFibGUuY2VsbC1ib3JkZXIgdGJvZHkgdGQge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2RkZDtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2RkZDsgfVxuXG50YWJsZS5kYXRhVGFibGUuY2VsbC1ib3JkZXIgdGJvZHkgdHIgdGg6Zmlyc3QtY2hpbGQsXG50YWJsZS5kYXRhVGFibGUuY2VsbC1ib3JkZXIgdGJvZHkgdHIgdGQ6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNkZGQ7IH1cblxudGFibGUuZGF0YVRhYmxlLmNlbGwtYm9yZGVyIHRib2R5IHRyOmZpcnN0LWNoaWxkIHRoLFxudGFibGUuZGF0YVRhYmxlLmNlbGwtYm9yZGVyIHRib2R5IHRyOmZpcnN0LWNoaWxkIHRkIHtcbiAgYm9yZGVyLXRvcDogbm9uZTsgfVxuXG50YWJsZS5kYXRhVGFibGUuc3RyaXBlIHRib2R5IHRyLm9kZCwgdGFibGUuZGF0YVRhYmxlLmRpc3BsYXkgdGJvZHkgdHIub2RkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y5ZjlmOTsgfVxuXG50YWJsZS5kYXRhVGFibGUuc3RyaXBlIHRib2R5IHRyLm9kZC5zZWxlY3RlZCwgdGFibGUuZGF0YVRhYmxlLmRpc3BsYXkgdGJvZHkgdHIub2RkLnNlbGVjdGVkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2FjYmFkNDsgfVxuXG50YWJsZS5kYXRhVGFibGUuaG92ZXIgdGJvZHkgdHI6aG92ZXIsIHRhYmxlLmRhdGFUYWJsZS5kaXNwbGF5IHRib2R5IHRyOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y2ZjZmNjsgfVxuXG50YWJsZS5kYXRhVGFibGUuaG92ZXIgdGJvZHkgdHI6aG92ZXIuc2VsZWN0ZWQsIHRhYmxlLmRhdGFUYWJsZS5kaXNwbGF5IHRib2R5IHRyOmhvdmVyLnNlbGVjdGVkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2FhYjdkMTsgfVxuXG50YWJsZS5kYXRhVGFibGUub3JkZXItY29sdW1uIHRib2R5IHRyID4gLnNvcnRpbmdfMSxcbnRhYmxlLmRhdGFUYWJsZS5vcmRlci1jb2x1bW4gdGJvZHkgdHIgPiAuc29ydGluZ18yLFxudGFibGUuZGF0YVRhYmxlLm9yZGVyLWNvbHVtbiB0Ym9keSB0ciA+IC5zb3J0aW5nXzMsIHRhYmxlLmRhdGFUYWJsZS5kaXNwbGF5IHRib2R5IHRyID4gLnNvcnRpbmdfMSxcbnRhYmxlLmRhdGFUYWJsZS5kaXNwbGF5IHRib2R5IHRyID4gLnNvcnRpbmdfMixcbnRhYmxlLmRhdGFUYWJsZS5kaXNwbGF5IHRib2R5IHRyID4gLnNvcnRpbmdfMyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmYWZhZmE7IH1cblxudGFibGUuZGF0YVRhYmxlLm9yZGVyLWNvbHVtbiB0Ym9keSB0ci5zZWxlY3RlZCA+IC5zb3J0aW5nXzEsXG50YWJsZS5kYXRhVGFibGUub3JkZXItY29sdW1uIHRib2R5IHRyLnNlbGVjdGVkID4gLnNvcnRpbmdfMixcbnRhYmxlLmRhdGFUYWJsZS5vcmRlci1jb2x1bW4gdGJvZHkgdHIuc2VsZWN0ZWQgPiAuc29ydGluZ18zLCB0YWJsZS5kYXRhVGFibGUuZGlzcGxheSB0Ym9keSB0ci5zZWxlY3RlZCA+IC5zb3J0aW5nXzEsXG50YWJsZS5kYXRhVGFibGUuZGlzcGxheSB0Ym9keSB0ci5zZWxlY3RlZCA+IC5zb3J0aW5nXzIsXG50YWJsZS5kYXRhVGFibGUuZGlzcGxheSB0Ym9keSB0ci5zZWxlY3RlZCA+IC5zb3J0aW5nXzMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYWNiYWQ1OyB9XG5cbnRhYmxlLmRhdGFUYWJsZS5kaXNwbGF5IHRib2R5IHRyLm9kZCA+IC5zb3J0aW5nXzEsIHRhYmxlLmRhdGFUYWJsZS5vcmRlci1jb2x1bW4uc3RyaXBlIHRib2R5IHRyLm9kZCA+IC5zb3J0aW5nXzEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjFmMWYxOyB9XG5cbnRhYmxlLmRhdGFUYWJsZS5kaXNwbGF5IHRib2R5IHRyLm9kZCA+IC5zb3J0aW5nXzIsIHRhYmxlLmRhdGFUYWJsZS5vcmRlci1jb2x1bW4uc3RyaXBlIHRib2R5IHRyLm9kZCA+IC5zb3J0aW5nXzIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjNmM2YzOyB9XG5cbnRhYmxlLmRhdGFUYWJsZS5kaXNwbGF5IHRib2R5IHRyLm9kZCA+IC5zb3J0aW5nXzMsIHRhYmxlLmRhdGFUYWJsZS5vcmRlci1jb2x1bW4uc3RyaXBlIHRib2R5IHRyLm9kZCA+IC5zb3J0aW5nXzMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZXNtb2tlOyB9XG5cbnRhYmxlLmRhdGFUYWJsZS5kaXNwbGF5IHRib2R5IHRyLm9kZC5zZWxlY3RlZCA+IC5zb3J0aW5nXzEsIHRhYmxlLmRhdGFUYWJsZS5vcmRlci1jb2x1bW4uc3RyaXBlIHRib2R5IHRyLm9kZC5zZWxlY3RlZCA+IC5zb3J0aW5nXzEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTZiNGNkOyB9XG5cbnRhYmxlLmRhdGFUYWJsZS5kaXNwbGF5IHRib2R5IHRyLm9kZC5zZWxlY3RlZCA+IC5zb3J0aW5nXzIsIHRhYmxlLmRhdGFUYWJsZS5vcmRlci1jb2x1bW4uc3RyaXBlIHRib2R5IHRyLm9kZC5zZWxlY3RlZCA+IC5zb3J0aW5nXzIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYThiNWNmOyB9XG5cbnRhYmxlLmRhdGFUYWJsZS5kaXNwbGF5IHRib2R5IHRyLm9kZC5zZWxlY3RlZCA+IC5zb3J0aW5nXzMsIHRhYmxlLmRhdGFUYWJsZS5vcmRlci1jb2x1bW4uc3RyaXBlIHRib2R5IHRyLm9kZC5zZWxlY3RlZCA+IC5zb3J0aW5nXzMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTliN2QxOyB9XG5cbnRhYmxlLmRhdGFUYWJsZS5kaXNwbGF5IHRib2R5IHRyLmV2ZW4gPiAuc29ydGluZ18xLCB0YWJsZS5kYXRhVGFibGUub3JkZXItY29sdW1uLnN0cmlwZSB0Ym9keSB0ci5ldmVuID4gLnNvcnRpbmdfMSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmYWZhZmE7IH1cblxudGFibGUuZGF0YVRhYmxlLmRpc3BsYXkgdGJvZHkgdHIuZXZlbiA+IC5zb3J0aW5nXzIsIHRhYmxlLmRhdGFUYWJsZS5vcmRlci1jb2x1bW4uc3RyaXBlIHRib2R5IHRyLmV2ZW4gPiAuc29ydGluZ18yIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZjZmNmYzsgfVxuXG50YWJsZS5kYXRhVGFibGUuZGlzcGxheSB0Ym9keSB0ci5ldmVuID4gLnNvcnRpbmdfMywgdGFibGUuZGF0YVRhYmxlLm9yZGVyLWNvbHVtbi5zdHJpcGUgdGJvZHkgdHIuZXZlbiA+IC5zb3J0aW5nXzMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlOyB9XG5cbnRhYmxlLmRhdGFUYWJsZS5kaXNwbGF5IHRib2R5IHRyLmV2ZW4uc2VsZWN0ZWQgPiAuc29ydGluZ18xLCB0YWJsZS5kYXRhVGFibGUub3JkZXItY29sdW1uLnN0cmlwZSB0Ym9keSB0ci5ldmVuLnNlbGVjdGVkID4gLnNvcnRpbmdfMSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNhY2JhZDU7IH1cblxudGFibGUuZGF0YVRhYmxlLmRpc3BsYXkgdGJvZHkgdHIuZXZlbi5zZWxlY3RlZCA+IC5zb3J0aW5nXzIsIHRhYmxlLmRhdGFUYWJsZS5vcmRlci1jb2x1bW4uc3RyaXBlIHRib2R5IHRyLmV2ZW4uc2VsZWN0ZWQgPiAuc29ydGluZ18yIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2FlYmNkNjsgfVxuXG50YWJsZS5kYXRhVGFibGUuZGlzcGxheSB0Ym9keSB0ci5ldmVuLnNlbGVjdGVkID4gLnNvcnRpbmdfMywgdGFibGUuZGF0YVRhYmxlLm9yZGVyLWNvbHVtbi5zdHJpcGUgdGJvZHkgdHIuZXZlbi5zZWxlY3RlZCA+IC5zb3J0aW5nXzMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYWZiZGQ4OyB9XG5cbnRhYmxlLmRhdGFUYWJsZS5kaXNwbGF5IHRib2R5IHRyOmhvdmVyID4gLnNvcnRpbmdfMSwgdGFibGUuZGF0YVRhYmxlLm9yZGVyLWNvbHVtbi5ob3ZlciB0Ym9keSB0cjpob3ZlciA+IC5zb3J0aW5nXzEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWFlYWVhOyB9XG5cbnRhYmxlLmRhdGFUYWJsZS5kaXNwbGF5IHRib2R5IHRyOmhvdmVyID4gLnNvcnRpbmdfMiwgdGFibGUuZGF0YVRhYmxlLm9yZGVyLWNvbHVtbi5ob3ZlciB0Ym9keSB0cjpob3ZlciA+IC5zb3J0aW5nXzIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWNlY2VjOyB9XG5cbnRhYmxlLmRhdGFUYWJsZS5kaXNwbGF5IHRib2R5IHRyOmhvdmVyID4gLnNvcnRpbmdfMywgdGFibGUuZGF0YVRhYmxlLm9yZGVyLWNvbHVtbi5ob3ZlciB0Ym9keSB0cjpob3ZlciA+IC5zb3J0aW5nXzMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWZlZmVmOyB9XG5cbnRhYmxlLmRhdGFUYWJsZS5kaXNwbGF5IHRib2R5IHRyOmhvdmVyLnNlbGVjdGVkID4gLnNvcnRpbmdfMSwgdGFibGUuZGF0YVRhYmxlLm9yZGVyLWNvbHVtbi5ob3ZlciB0Ym9keSB0cjpob3Zlci5zZWxlY3RlZCA+IC5zb3J0aW5nXzEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTJhZWM3OyB9XG5cbnRhYmxlLmRhdGFUYWJsZS5kaXNwbGF5IHRib2R5IHRyOmhvdmVyLnNlbGVjdGVkID4gLnNvcnRpbmdfMiwgdGFibGUuZGF0YVRhYmxlLm9yZGVyLWNvbHVtbi5ob3ZlciB0Ym9keSB0cjpob3Zlci5zZWxlY3RlZCA+IC5zb3J0aW5nXzIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTNiMGM5OyB9XG5cbnRhYmxlLmRhdGFUYWJsZS5kaXNwbGF5IHRib2R5IHRyOmhvdmVyLnNlbGVjdGVkID4gLnNvcnRpbmdfMywgdGFibGUuZGF0YVRhYmxlLm9yZGVyLWNvbHVtbi5ob3ZlciB0Ym9keSB0cjpob3Zlci5zZWxlY3RlZCA+IC5zb3J0aW5nXzMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTViMmNiOyB9XG5cbnRhYmxlLmRhdGFUYWJsZS5uby1mb290ZXIge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzExMTsgfVxuXG50YWJsZS5kYXRhVGFibGUubm93cmFwIHRoLCB0YWJsZS5kYXRhVGFibGUubm93cmFwIHRkIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuXG50YWJsZS5kYXRhVGFibGUuY29tcGFjdCB0aGVhZCB0aCxcbnRhYmxlLmRhdGFUYWJsZS5jb21wYWN0IHRoZWFkIHRkIHtcbiAgcGFkZGluZzogNHB4IDE3cHggNHB4IDRweDsgfVxuXG50YWJsZS5kYXRhVGFibGUuY29tcGFjdCB0Zm9vdCB0aCxcbnRhYmxlLmRhdGFUYWJsZS5jb21wYWN0IHRmb290IHRkIHtcbiAgcGFkZGluZzogNHB4OyB9XG5cbnRhYmxlLmRhdGFUYWJsZS5jb21wYWN0IHRib2R5IHRoLFxudGFibGUuZGF0YVRhYmxlLmNvbXBhY3QgdGJvZHkgdGQge1xuICBwYWRkaW5nOiA0cHg7IH1cblxudGFibGUuZGF0YVRhYmxlIHRoLmR0LWxlZnQsXG50YWJsZS5kYXRhVGFibGUgdGQuZHQtbGVmdCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7IH1cblxudGFibGUuZGF0YVRhYmxlIHRoLmR0LWNlbnRlcixcbnRhYmxlLmRhdGFUYWJsZSB0ZC5kdC1jZW50ZXIsXG50YWJsZS5kYXRhVGFibGUgdGQuZGF0YVRhYmxlc19lbXB0eSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG50YWJsZS5kYXRhVGFibGUgdGguZHQtcmlnaHQsXG50YWJsZS5kYXRhVGFibGUgdGQuZHQtcmlnaHQge1xuICB0ZXh0LWFsaWduOiByaWdodDsgfVxuXG50YWJsZS5kYXRhVGFibGUgdGguZHQtanVzdGlmeSxcbnRhYmxlLmRhdGFUYWJsZSB0ZC5kdC1qdXN0aWZ5IHtcbiAgdGV4dC1hbGlnbjoganVzdGlmeTsgfVxuXG50YWJsZS5kYXRhVGFibGUgdGguZHQtbm93cmFwLFxudGFibGUuZGF0YVRhYmxlIHRkLmR0LW5vd3JhcCB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cblxudGFibGUuZGF0YVRhYmxlIHRoZWFkIHRoLmR0LWhlYWQtbGVmdCxcbnRhYmxlLmRhdGFUYWJsZSB0aGVhZCB0ZC5kdC1oZWFkLWxlZnQsXG50YWJsZS5kYXRhVGFibGUgdGZvb3QgdGguZHQtaGVhZC1sZWZ0LFxudGFibGUuZGF0YVRhYmxlIHRmb290IHRkLmR0LWhlYWQtbGVmdCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7IH1cblxudGFibGUuZGF0YVRhYmxlIHRoZWFkIHRoLmR0LWhlYWQtY2VudGVyLFxudGFibGUuZGF0YVRhYmxlIHRoZWFkIHRkLmR0LWhlYWQtY2VudGVyLFxudGFibGUuZGF0YVRhYmxlIHRmb290IHRoLmR0LWhlYWQtY2VudGVyLFxudGFibGUuZGF0YVRhYmxlIHRmb290IHRkLmR0LWhlYWQtY2VudGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbnRhYmxlLmRhdGFUYWJsZSB0aGVhZCB0aC5kdC1oZWFkLXJpZ2h0LFxudGFibGUuZGF0YVRhYmxlIHRoZWFkIHRkLmR0LWhlYWQtcmlnaHQsXG50YWJsZS5kYXRhVGFibGUgdGZvb3QgdGguZHQtaGVhZC1yaWdodCxcbnRhYmxlLmRhdGFUYWJsZSB0Zm9vdCB0ZC5kdC1oZWFkLXJpZ2h0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cblxudGFibGUuZGF0YVRhYmxlIHRoZWFkIHRoLmR0LWhlYWQtanVzdGlmeSxcbnRhYmxlLmRhdGFUYWJsZSB0aGVhZCB0ZC5kdC1oZWFkLWp1c3RpZnksXG50YWJsZS5kYXRhVGFibGUgdGZvb3QgdGguZHQtaGVhZC1qdXN0aWZ5LFxudGFibGUuZGF0YVRhYmxlIHRmb290IHRkLmR0LWhlYWQtanVzdGlmeSB7XG4gIHRleHQtYWxpZ246IGp1c3RpZnk7IH1cblxudGFibGUuZGF0YVRhYmxlIHRoZWFkIHRoLmR0LWhlYWQtbm93cmFwLFxudGFibGUuZGF0YVRhYmxlIHRoZWFkIHRkLmR0LWhlYWQtbm93cmFwLFxudGFibGUuZGF0YVRhYmxlIHRmb290IHRoLmR0LWhlYWQtbm93cmFwLFxudGFibGUuZGF0YVRhYmxlIHRmb290IHRkLmR0LWhlYWQtbm93cmFwIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuXG50YWJsZS5kYXRhVGFibGUgdGJvZHkgdGguZHQtYm9keS1sZWZ0LFxudGFibGUuZGF0YVRhYmxlIHRib2R5IHRkLmR0LWJvZHktbGVmdCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7IH1cblxudGFibGUuZGF0YVRhYmxlIHRib2R5IHRoLmR0LWJvZHktY2VudGVyLFxudGFibGUuZGF0YVRhYmxlIHRib2R5IHRkLmR0LWJvZHktY2VudGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbnRhYmxlLmRhdGFUYWJsZSB0Ym9keSB0aC5kdC1ib2R5LXJpZ2h0LFxudGFibGUuZGF0YVRhYmxlIHRib2R5IHRkLmR0LWJvZHktcmlnaHQge1xuICB0ZXh0LWFsaWduOiByaWdodDsgfVxuXG50YWJsZS5kYXRhVGFibGUgdGJvZHkgdGguZHQtYm9keS1qdXN0aWZ5LFxudGFibGUuZGF0YVRhYmxlIHRib2R5IHRkLmR0LWJvZHktanVzdGlmeSB7XG4gIHRleHQtYWxpZ246IGp1c3RpZnk7IH1cblxudGFibGUuZGF0YVRhYmxlIHRib2R5IHRoLmR0LWJvZHktbm93cmFwLFxudGFibGUuZGF0YVRhYmxlIHRib2R5IHRkLmR0LWJvZHktbm93cmFwIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuXG50YWJsZS5kYXRhVGFibGUsXG50YWJsZS5kYXRhVGFibGUgdGgsXG50YWJsZS5kYXRhVGFibGUgdGQge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgfVxuXG4vKlxuICogQ29udHJvbCBmZWF0dXJlIGxheW91dFxuICovXG4uZGF0YVRhYmxlc193cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBjbGVhcjogYm90aDtcbiAgKnpvb206IDE7XG4gIHpvb206IDE7IH1cblxuLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19sZW5ndGgge1xuICBmbG9hdDogbGVmdDsgfVxuXG4uZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX2xlbmd0aCBzZWxlY3Qge1xuICB3aWR0aDogODBweDsgfVxuXG4uZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX2ZpbHRlciB7XG4gIGZsb2F0OiByaWdodDtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cblxuLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19maWx0ZXIgaW5wdXQge1xuICB3aWR0aDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IDAuNWVtOyB9XG5cbi5kYXRhVGFibGVzX3dyYXBwZXIgLmRhdGFUYWJsZXNfaW5mbyB7XG4gIGNsZWFyOiBib3RoO1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZy10b3A6IDAuNzU1ZW07IH1cblxuLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19wYWdpbmF0ZSB7XG4gIGZsb2F0OiByaWdodDtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIHBhZGRpbmctdG9wOiAwLjI1ZW07IH1cblxuLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19wYWdpbmF0ZSAucGFnaW5hdGVfYnV0dG9uIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtaW4td2lkdGg6IDEuNWVtO1xuICBwYWRkaW5nOiAwLjVlbSAxZW07XG4gIG1hcmdpbi1sZWZ0OiAycHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgKmN1cnNvcjogaGFuZDtcbiAgY29sb3I6ICMzMzMgIWltcG9ydGFudDtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDJweDsgfVxuXG4uZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX3BhZ2luYXRlIC5wYWdpbmF0ZV9idXR0b24uY3VycmVudCwgLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19wYWdpbmF0ZSAucGFnaW5hdGVfYnV0dG9uLmN1cnJlbnQ6aG92ZXIge1xuICBjb2xvcjogIzMzMyAhaW1wb3J0YW50O1xuICBib3JkZXI6IDFweCBzb2xpZCAjOTc5Nzk3O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgYmFja2dyb3VuZDogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCBsZWZ0IGJvdHRvbSwgY29sb3Itc3RvcCgwJSwgd2hpdGUpLCBjb2xvci1zdG9wKDEwMCUsICNkY2RjZGMpKTtcbiAgLyogQ2hyb21lLFNhZmFyaTQrICovXG4gIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgd2hpdGUgMCUsICNkY2RjZGMgMTAwJSk7XG4gIC8qIENocm9tZTEwKyxTYWZhcmk1LjErICovXG4gIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgd2hpdGUgMCUsICNkY2RjZGMgMTAwJSk7XG4gIC8qIEZGMy42KyAqL1xuICBiYWNrZ3JvdW5kOiAtbXMtbGluZWFyLWdyYWRpZW50KHRvcCwgd2hpdGUgMCUsICNkY2RjZGMgMTAwJSk7XG4gIC8qIElFMTArICovXG4gIGJhY2tncm91bmQ6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsIHdoaXRlIDAlLCAjZGNkY2RjIDEwMCUpO1xuICAvKiBPcGVyYSAxMS4xMCsgKi9cbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgd2hpdGUgMCUsICNkY2RjZGMgMTAwJSk7XG4gIC8qIFczQyAqLyB9XG5cbi5kYXRhVGFibGVzX3dyYXBwZXIgLmRhdGFUYWJsZXNfcGFnaW5hdGUgLnBhZ2luYXRlX2J1dHRvbi5kaXNhYmxlZCwgLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19wYWdpbmF0ZSAucGFnaW5hdGVfYnV0dG9uLmRpc2FibGVkOmhvdmVyLCAuZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX3BhZ2luYXRlIC5wYWdpbmF0ZV9idXR0b24uZGlzYWJsZWQ6YWN0aXZlIHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICBjb2xvcjogIzY2NiAhaW1wb3J0YW50O1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJveC1zaGFkb3c6IG5vbmU7IH1cblxuLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19wYWdpbmF0ZSAucGFnaW5hdGVfYnV0dG9uOmhvdmVyIHtcbiAgY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMxMTE7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1ODU4NTg7XG4gIGJhY2tncm91bmQ6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgbGVmdCBib3R0b20sIGNvbG9yLXN0b3AoMCUsICM1ODU4NTgpLCBjb2xvci1zdG9wKDEwMCUsICMxMTEpKTtcbiAgLyogQ2hyb21lLFNhZmFyaTQrICovXG4gIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgIzU4NTg1OCAwJSwgIzExMSAxMDAlKTtcbiAgLyogQ2hyb21lMTArLFNhZmFyaTUuMSsgKi9cbiAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCAjNTg1ODU4IDAlLCAjMTExIDEwMCUpO1xuICAvKiBGRjMuNisgKi9cbiAgYmFja2dyb3VuZDogLW1zLWxpbmVhci1ncmFkaWVudCh0b3AsICM1ODU4NTggMCUsICMxMTEgMTAwJSk7XG4gIC8qIElFMTArICovXG4gIGJhY2tncm91bmQ6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsICM1ODU4NTggMCUsICMxMTEgMTAwJSk7XG4gIC8qIE9wZXJhIDExLjEwKyAqL1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjNTg1ODU4IDAlLCAjMTExIDEwMCUpO1xuICAvKiBXM0MgKi8gfVxuXG4uZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX3BhZ2luYXRlIC5wYWdpbmF0ZV9idXR0b246YWN0aXZlIHtcbiAgb3V0bGluZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzJiMmIyYjtcbiAgYmFja2dyb3VuZDogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCBsZWZ0IGJvdHRvbSwgY29sb3Itc3RvcCgwJSwgIzJiMmIyYiksIGNvbG9yLXN0b3AoMTAwJSwgIzBjMGMwYykpO1xuICAvKiBDaHJvbWUsU2FmYXJpNCsgKi9cbiAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAjMmIyYjJiIDAlLCAjMGMwYzBjIDEwMCUpO1xuICAvKiBDaHJvbWUxMCssU2FmYXJpNS4xKyAqL1xuICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudCh0b3AsICMyYjJiMmIgMCUsICMwYzBjMGMgMTAwJSk7XG4gIC8qIEZGMy42KyAqL1xuICBiYWNrZ3JvdW5kOiAtbXMtbGluZWFyLWdyYWRpZW50KHRvcCwgIzJiMmIyYiAwJSwgIzBjMGMwYyAxMDAlKTtcbiAgLyogSUUxMCsgKi9cbiAgYmFja2dyb3VuZDogLW8tbGluZWFyLWdyYWRpZW50KHRvcCwgIzJiMmIyYiAwJSwgIzBjMGMwYyAxMDAlKTtcbiAgLyogT3BlcmEgMTEuMTArICovXG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICMyYjJiMmIgMCUsICMwYzBjMGMgMTAwJSk7XG4gIC8qIFczQyAqL1xuICBib3gtc2hhZG93OiBpbnNldCAwIDAgM3B4ICMxMTE7IH1cblxuLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19wYWdpbmF0ZSAuZWxsaXBzaXMge1xuICBwYWRkaW5nOiAwIDFlbTsgfVxuXG4uZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX3Byb2Nlc3Npbmcge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDQwcHg7XG4gIG1hcmdpbi1sZWZ0OiAtNTAlO1xuICBtYXJnaW4tdG9wOiAtMjVweDtcbiAgcGFkZGluZy10b3A6IDIwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1zaXplOiAxLjJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gIGJhY2tncm91bmQ6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgcmlnaHQgdG9wLCBjb2xvci1zdG9wKDAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApKSwgY29sb3Itc3RvcCgyNSUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KSksIGNvbG9yLXN0b3AoNzUlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSkpLCBjb2xvci1zdG9wKDEwMCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkpKTtcbiAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQobGVmdCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpIDI1JSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpIDc1JSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAxMDAlKTtcbiAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQobGVmdCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpIDI1JSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpIDc1JSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAxMDAlKTtcbiAgYmFja2dyb3VuZDogLW1zLWxpbmVhci1ncmFkaWVudChsZWZ0LCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSkgMjUlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSkgNzUlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDEwMCUpO1xuICBiYWNrZ3JvdW5kOiAtby1saW5lYXItZ3JhZGllbnQobGVmdCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpIDI1JSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpIDc1JSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAxMDAlKTtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSkgMjUlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSkgNzUlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDEwMCUpOyB9XG5cbi5kYXRhVGFibGVzX3dyYXBwZXIgLmRhdGFUYWJsZXNfbGVuZ3RoLFxuLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19maWx0ZXIsXG4uZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX2luZm8sXG4uZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX3Byb2Nlc3NpbmcsXG4uZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX3BhZ2luYXRlIHtcbiAgY29sb3I6ICMzMzM7IH1cblxuLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19zY3JvbGwge1xuICBjbGVhcjogYm90aDsgfVxuXG4uZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX3Njcm9sbCBkaXYuZGF0YVRhYmxlc19zY3JvbGxCb2R5IHtcbiAgKm1hcmdpbi10b3A6IC0xcHg7XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDsgfVxuXG4uZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX3Njcm9sbCBkaXYuZGF0YVRhYmxlc19zY3JvbGxCb2R5ID4gdGFibGUgPiB0aGVhZCA+IHRyID4gdGgsIC5kYXRhVGFibGVzX3dyYXBwZXIgLmRhdGFUYWJsZXNfc2Nyb2xsIGRpdi5kYXRhVGFibGVzX3Njcm9sbEJvZHkgPiB0YWJsZSA+IHRoZWFkID4gdHIgPiB0ZCwgLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19zY3JvbGwgZGl2LmRhdGFUYWJsZXNfc2Nyb2xsQm9keSA+IHRhYmxlID4gdGJvZHkgPiB0ciA+IHRoLCAuZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX3Njcm9sbCBkaXYuZGF0YVRhYmxlc19zY3JvbGxCb2R5ID4gdGFibGUgPiB0Ym9keSA+IHRyID4gdGQge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG5cbi5kYXRhVGFibGVzX3dyYXBwZXIgLmRhdGFUYWJsZXNfc2Nyb2xsIGRpdi5kYXRhVGFibGVzX3Njcm9sbEJvZHkgPiB0YWJsZSA+IHRoZWFkID4gdHIgPiB0aCA+IGRpdi5kYXRhVGFibGVzX3NpemluZyxcbi5kYXRhVGFibGVzX3dyYXBwZXIgLmRhdGFUYWJsZXNfc2Nyb2xsIGRpdi5kYXRhVGFibGVzX3Njcm9sbEJvZHkgPiB0YWJsZSA+IHRoZWFkID4gdHIgPiB0ZCA+IGRpdi5kYXRhVGFibGVzX3NpemluZywgLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19zY3JvbGwgZGl2LmRhdGFUYWJsZXNfc2Nyb2xsQm9keSA+IHRhYmxlID4gdGJvZHkgPiB0ciA+IHRoID4gZGl2LmRhdGFUYWJsZXNfc2l6aW5nLFxuLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19zY3JvbGwgZGl2LmRhdGFUYWJsZXNfc2Nyb2xsQm9keSA+IHRhYmxlID4gdGJvZHkgPiB0ciA+IHRkID4gZGl2LmRhdGFUYWJsZXNfc2l6aW5nIHtcbiAgaGVpZ2h0OiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50OyB9XG5cbi5kYXRhVGFibGVzX3dyYXBwZXIubm8tZm9vdGVyIC5kYXRhVGFibGVzX3Njcm9sbEJvZHkge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzExMTsgfVxuXG4uZGF0YVRhYmxlc193cmFwcGVyLm5vLWZvb3RlciBkaXYuZGF0YVRhYmxlc19zY3JvbGxIZWFkIHRhYmxlLmRhdGFUYWJsZSxcbi5kYXRhVGFibGVzX3dyYXBwZXIubm8tZm9vdGVyIGRpdi5kYXRhVGFibGVzX3Njcm9sbEJvZHkgPiB0YWJsZSB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7IH1cblxuLmRhdGFUYWJsZXNfd3JhcHBlcjphZnRlciB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGNsZWFyOiBib3RoO1xuICBoZWlnaHQ6IDA7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19pbmZvLFxuICAuZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX3BhZ2luYXRlIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19wYWdpbmF0ZSB7XG4gICAgbWFyZ2luLXRvcDogMC41ZW07IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NDBweCkge1xuICAuZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX2xlbmd0aCxcbiAgLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19maWx0ZXIge1xuICAgIGZsb2F0OiBub25lO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAuZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX2ZpbHRlciB7XG4gICAgbWFyZ2luLXRvcDogMC41ZW07IH0gfVxuXG50YWJsZS5kYXRhVGFibGUuZHRyLWlubGluZS5jb2xsYXBzZWQgPiB0Ym9keSA+IHRyID4gdGQuY2hpbGQsXG50YWJsZS5kYXRhVGFibGUuZHRyLWlubGluZS5jb2xsYXBzZWQgPiB0Ym9keSA+IHRyID4gdGguY2hpbGQsXG50YWJsZS5kYXRhVGFibGUuZHRyLWlubGluZS5jb2xsYXBzZWQgPiB0Ym9keSA+IHRyID4gdGQuZGF0YVRhYmxlc19lbXB0eSB7XG4gIGN1cnNvcjogZGVmYXVsdCAhaW1wb3J0YW50OyB9XG5cbnRhYmxlLmRhdGFUYWJsZS5kdHItaW5saW5lLmNvbGxhcHNlZCA+IHRib2R5ID4gdHIgPiB0ZC5jaGlsZDpiZWZvcmUsXG50YWJsZS5kYXRhVGFibGUuZHRyLWlubGluZS5jb2xsYXBzZWQgPiB0Ym9keSA+IHRyID4gdGguY2hpbGQ6YmVmb3JlLFxudGFibGUuZGF0YVRhYmxlLmR0ci1pbmxpbmUuY29sbGFwc2VkID4gdGJvZHkgPiB0ciA+IHRkLmRhdGFUYWJsZXNfZW1wdHk6YmVmb3JlIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbnRhYmxlLmRhdGFUYWJsZS5kdHItaW5saW5lLmNvbGxhcHNlZCA+IHRib2R5ID4gdHJbcm9sZT1cInJvd1wiXSA+IHRkOmZpcnN0LWNoaWxkLFxudGFibGUuZGF0YVRhYmxlLmR0ci1pbmxpbmUuY29sbGFwc2VkID4gdGJvZHkgPiB0cltyb2xlPVwicm93XCJdID4gdGg6Zmlyc3QtY2hpbGQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctbGVmdDogMzBweDtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbnRhYmxlLmRhdGFUYWJsZS5kdHItaW5saW5lLmNvbGxhcHNlZCA+IHRib2R5ID4gdHJbcm9sZT1cInJvd1wiXSA+IHRkOmZpcnN0LWNoaWxkOmJlZm9yZSxcbnRhYmxlLmRhdGFUYWJsZS5kdHItaW5saW5lLmNvbGxhcHNlZCA+IHRib2R5ID4gdHJbcm9sZT1cInJvd1wiXSA+IHRoOmZpcnN0LWNoaWxkOmJlZm9yZSB7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiAwO1xuICBoZWlnaHQ6IDE2cHg7XG4gIHdpZHRoOiAxNnB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb250ZW50OiAnJztcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2ljb25zL2lfYWRkLnN2Z1wiKSBuby1yZXBlYXQgNTAlIDUwJS8xMDAlIGF1dG87XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTsgfVxuXG50YWJsZS5kYXRhVGFibGUuZHRyLWlubGluZS5jb2xsYXBzZWQgPiB0Ym9keSA+IHRyLnBhcmVudCA+IHRkOmZpcnN0LWNoaWxkOmJlZm9yZSxcbnRhYmxlLmRhdGFUYWJsZS5kdHItaW5saW5lLmNvbGxhcHNlZCA+IHRib2R5ID4gdHIucGFyZW50ID4gdGg6Zmlyc3QtY2hpbGQ6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2ljb25zL2lfcmVtb3ZlLnN2Z1wiKTsgfVxuXG50YWJsZS5kYXRhVGFibGUuZHRyLWlubGluZS5jb2xsYXBzZWQuY29tcGFjdCA+IHRib2R5ID4gdHIgPiB0ZDpmaXJzdC1jaGlsZCxcbnRhYmxlLmRhdGFUYWJsZS5kdHItaW5saW5lLmNvbGxhcHNlZC5jb21wYWN0ID4gdGJvZHkgPiB0ciA+IHRoOmZpcnN0LWNoaWxkIHtcbiAgcGFkZGluZy1sZWZ0OiAyN3B4OyB9XG5cbnRhYmxlLmRhdGFUYWJsZS5kdHItaW5saW5lLmNvbGxhcHNlZC5jb21wYWN0ID4gdGJvZHkgPiB0ciA+IHRkOmZpcnN0LWNoaWxkOmJlZm9yZSxcbnRhYmxlLmRhdGFUYWJsZS5kdHItaW5saW5lLmNvbGxhcHNlZC5jb21wYWN0ID4gdGJvZHkgPiB0ciA+IHRoOmZpcnN0LWNoaWxkOmJlZm9yZSB7XG4gIHRvcDogNXB4O1xuICBsZWZ0OiA0cHg7XG4gIGhlaWdodDogMTRweDtcbiAgd2lkdGg6IDE0cHg7XG4gIGJvcmRlci1yYWRpdXM6IDE0cHg7XG4gIGxpbmUtaGVpZ2h0OiAxNHB4O1xuICB0ZXh0LWluZGVudDogM3B4OyB9XG5cbnRhYmxlLmRhdGFUYWJsZS5kdHItY29sdW1uID4gdGJvZHkgPiB0ciA+IHRkLmNvbnRyb2wsXG50YWJsZS5kYXRhVGFibGUuZHRyLWNvbHVtbiA+IHRib2R5ID4gdHIgPiB0aC5jb250cm9sIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cblxudGFibGUuZGF0YVRhYmxlLmR0ci1jb2x1bW4gPiB0Ym9keSA+IHRyID4gdGQuY29udHJvbDpiZWZvcmUsXG50YWJsZS5kYXRhVGFibGUuZHRyLWNvbHVtbiA+IHRib2R5ID4gdHIgPiB0aC5jb250cm9sOmJlZm9yZSB7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIGhlaWdodDogMTZweDtcbiAgd2lkdGg6IDE2cHg7XG4gIG1hcmdpbi10b3A6IC0xMHB4O1xuICBtYXJnaW4tbGVmdDogLTEwcHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgYm9yZGVyOiAycHggc29saWQgd2hpdGU7XG4gIGJvcmRlci1yYWRpdXM6IDE0cHg7XG4gIGJveC1zaGFkb3c6IDAgMCAzcHggIzQ0NDtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC1pbmRlbnQ6IDAgIWltcG9ydGFudDtcbiAgZm9udC1mYW1pbHk6ICdDb3VyaWVyIE5ldycsIENvdXJpZXIsIG1vbm9zcGFjZTtcbiAgbGluZS1oZWlnaHQ6IDE0cHg7XG4gIGNvbnRlbnQ6ICcrJztcbiAgYmFja2dyb3VuZC1jb2xvcjogIzMxYjEzMTsgfVxuXG50YWJsZS5kYXRhVGFibGUuZHRyLWNvbHVtbiA+IHRib2R5ID4gdHIucGFyZW50IHRkLmNvbnRyb2w6YmVmb3JlLFxudGFibGUuZGF0YVRhYmxlLmR0ci1jb2x1bW4gPiB0Ym9keSA+IHRyLnBhcmVudCB0aC5jb250cm9sOmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICctJztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2QzMzMzMzsgfVxuXG50YWJsZS5kYXRhVGFibGUgPiB0Ym9keSA+IHRyLmNoaWxkIHtcbiAgcGFkZGluZzogMC41ZW0gMWVtOyB9XG5cbnRhYmxlLmRhdGFUYWJsZSA+IHRib2R5ID4gdHIuY2hpbGQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50OyB9XG5cbnRhYmxlLmRhdGFUYWJsZSA+IHRib2R5ID4gdHIuY2hpbGQgdWwuZHRyLWRldGFpbHMge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwOyB9XG5cbnRhYmxlLmRhdGFUYWJsZSA+IHRib2R5ID4gdHIuY2hpbGQgdWwuZHRyLWRldGFpbHMgPiBsaSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZWZlZmVmO1xuICBwYWRkaW5nOiAwLjVlbSAwOyB9XG5cbnRhYmxlLmRhdGFUYWJsZSA+IHRib2R5ID4gdHIuY2hpbGQgdWwuZHRyLWRldGFpbHMgPiBsaTpmaXJzdC1jaGlsZCB7XG4gIHBhZGRpbmctdG9wOiAwOyB9XG5cbnRhYmxlLmRhdGFUYWJsZSA+IHRib2R5ID4gdHIuY2hpbGQgdWwuZHRyLWRldGFpbHMgPiBsaTpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTsgfVxuXG50YWJsZS5kYXRhVGFibGUgPiB0Ym9keSA+IHRyLmNoaWxkIHNwYW4uZHRyLXRpdGxlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtaW4td2lkdGg6IDc1cHg7XG4gIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbmRpdi5kdHItbW9kYWwge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbiAgei1pbmRleDogMTAwO1xuICBwYWRkaW5nOiAxMGVtIDFlbTsgfVxuXG5kaXYuZHRyLW1vZGFsIGRpdi5kdHItbW9kYWwtZGlzcGxheSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDA7XG4gIHJpZ2h0OiAwO1xuICB3aWR0aDogNTAlO1xuICBoZWlnaHQ6IDUwJTtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIG1hcmdpbjogYXV0bztcbiAgei1pbmRleDogMTAyO1xuICBvdmVyZmxvdzogYXV0bztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjVmNztcbiAgYm9yZGVyOiAxcHggc29saWQgYmxhY2s7XG4gIGJvcmRlci1yYWRpdXM6IDAuNWVtO1xuICBib3gtc2hhZG93OiAwIDEycHggMzBweCByZ2JhKDAsIDAsIDAsIDAuNik7IH1cblxuZGl2LmR0ci1tb2RhbCBkaXYuZHRyLW1vZGFsLWNvbnRlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDFlbTsgfVxuXG5kaXYuZHRyLW1vZGFsIGRpdi5kdHItbW9kYWwtY2xvc2Uge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNnB4O1xuICByaWdodDogNnB4O1xuICB3aWR0aDogMjJweDtcbiAgaGVpZ2h0OiAyMnB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjZWFlYWVhO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjlmOWY5O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB6LWluZGV4OiAxMjsgfVxuXG5kaXYuZHRyLW1vZGFsIGRpdi5kdHItbW9kYWwtY2xvc2U6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWFlYWVhOyB9XG5cbmRpdi5kdHItbW9kYWwgZGl2LmR0ci1tb2RhbC1iYWNrZ3JvdW5kIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIHotaW5kZXg6IDEwMTtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjYpOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIGRpdi5kdHItbW9kYWwgZGl2LmR0ci1tb2RhbC1kaXNwbGF5IHtcbiAgICB3aWR0aDogOTUlOyB9IH1cblxuLyohIGpRdWVyeSBVSSAtIHYxLjEyLjEgLSAyMDE3LTExLTE3XG4qIGh0dHA6Ly9qcXVlcnl1aS5jb21cbiogSW5jbHVkZXM6IGRyYWdnYWJsZS5jc3MsIGNvcmUuY3NzLCByZXNpemFibGUuY3NzLCBzZWxlY3RhYmxlLmNzcywgc29ydGFibGUuY3NzLCBhY2NvcmRpb24uY3NzLCBhdXRvY29tcGxldGUuY3NzLCBtZW51LmNzcywgYnV0dG9uLmNzcywgY29udHJvbGdyb3VwLmNzcywgY2hlY2tib3hyYWRpby5jc3MsIGRhdGVwaWNrZXIuY3NzLCBkaWFsb2cuY3NzLCBwcm9ncmVzc2Jhci5jc3MsIHNlbGVjdG1lbnUuY3NzLCBzbGlkZXIuY3NzLCBzcGlubmVyLmNzcywgdGFicy5jc3MsIHRvb2x0aXAuY3NzXG4qIENvcHlyaWdodCBqUXVlcnkgRm91bmRhdGlvbiBhbmQgb3RoZXIgY29udHJpYnV0b3JzOyBMaWNlbnNlZCBNSVQgKi9cbi51aS1kcmFnZ2FibGUtaGFuZGxlIHtcbiAgLW1zLXRvdWNoLWFjdGlvbjogbm9uZTtcbiAgdG91Y2gtYWN0aW9uOiBub25lOyB9XG5cbi8qIExheW91dCBoZWxwZXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS1oZWxwZXItaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4udWktaGVscGVyLWhpZGRlbi1hY2Nlc3NpYmxlIHtcbiAgYm9yZGVyOiAwO1xuICBjbGlwOiByZWN0KDAgMCAwIDApO1xuICBoZWlnaHQ6IDFweDtcbiAgbWFyZ2luOiAtMXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nOiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7IH1cblxuLnVpLWhlbHBlci1yZXNldCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiAwO1xuICBvdXRsaW5lOiAwO1xuICBsaW5lLWhlaWdodDogMS4zO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGZvbnQtc2l6ZTogMTAwJTtcbiAgbGlzdC1zdHlsZTogbm9uZTsgfVxuXG4udWktaGVscGVyLWNsZWFyZml4OmJlZm9yZSxcbi51aS1oZWxwZXItY2xlYXJmaXg6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTsgfVxuXG4udWktaGVscGVyLWNsZWFyZml4OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7IH1cblxuLnVpLWhlbHBlci16Zml4IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG9wYWNpdHk6IDA7XG4gIGZpbHRlcjogQWxwaGEoT3BhY2l0eT0wKTtcbiAgLyogc3VwcG9ydDogSUU4ICovIH1cblxuLnVpLWZyb250IHtcbiAgei1pbmRleDogMTAwOyB9XG5cbi8qIEludGVyYWN0aW9uIEN1ZXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLXN0YXRlLWRpc2FibGVkIHtcbiAgY3Vyc29yOiBkZWZhdWx0ICFpbXBvcnRhbnQ7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG5cbi8qIEljb25zXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS1pY29uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXJnaW4tdG9wOiAtLjI1ZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1pbmRlbnQ6IC05OTk5OXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OyB9XG5cbi51aS13aWRnZXQtaWNvbi1ibG9jayB7XG4gIGxlZnQ6IDUwJTtcbiAgbWFyZ2luLWxlZnQ6IC04cHg7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi8qIE1pc2MgdmlzdWFsc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBPdmVybGF5cyAqL1xuLnVpLXdpZGdldC1vdmVybGF5IHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7IH1cblxuLnVpLXJlc2l6YWJsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4udWktcmVzaXphYmxlLWhhbmRsZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZm9udC1zaXplOiAwLjFweDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIC1tcy10b3VjaC1hY3Rpb246IG5vbmU7XG4gIHRvdWNoLWFjdGlvbjogbm9uZTsgfVxuXG4udWktcmVzaXphYmxlLWRpc2FibGVkIC51aS1yZXNpemFibGUtaGFuZGxlLFxuLnVpLXJlc2l6YWJsZS1hdXRvaGlkZSAudWktcmVzaXphYmxlLWhhbmRsZSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLnVpLXJlc2l6YWJsZS1uIHtcbiAgY3Vyc29yOiBuLXJlc2l6ZTtcbiAgaGVpZ2h0OiA3cHg7XG4gIHdpZHRoOiAxMDAlO1xuICB0b3A6IC01cHg7XG4gIGxlZnQ6IDA7IH1cblxuLnVpLXJlc2l6YWJsZS1zIHtcbiAgY3Vyc29yOiBzLXJlc2l6ZTtcbiAgaGVpZ2h0OiA3cHg7XG4gIHdpZHRoOiAxMDAlO1xuICBib3R0b206IC01cHg7XG4gIGxlZnQ6IDA7IH1cblxuLnVpLXJlc2l6YWJsZS1lIHtcbiAgY3Vyc29yOiBlLXJlc2l6ZTtcbiAgd2lkdGg6IDdweDtcbiAgcmlnaHQ6IC01cHg7XG4gIHRvcDogMDtcbiAgaGVpZ2h0OiAxMDAlOyB9XG5cbi51aS1yZXNpemFibGUtdyB7XG4gIGN1cnNvcjogdy1yZXNpemU7XG4gIHdpZHRoOiA3cHg7XG4gIGxlZnQ6IC01cHg7XG4gIHRvcDogMDtcbiAgaGVpZ2h0OiAxMDAlOyB9XG5cbi51aS1yZXNpemFibGUtc2Uge1xuICBjdXJzb3I6IHNlLXJlc2l6ZTtcbiAgd2lkdGg6IDEycHg7XG4gIGhlaWdodDogMTJweDtcbiAgcmlnaHQ6IDFweDtcbiAgYm90dG9tOiAxcHg7IH1cblxuLnVpLXJlc2l6YWJsZS1zdyB7XG4gIGN1cnNvcjogc3ctcmVzaXplO1xuICB3aWR0aDogOXB4O1xuICBoZWlnaHQ6IDlweDtcbiAgbGVmdDogLTVweDtcbiAgYm90dG9tOiAtNXB4OyB9XG5cbi51aS1yZXNpemFibGUtbncge1xuICBjdXJzb3I6IG53LXJlc2l6ZTtcbiAgd2lkdGg6IDlweDtcbiAgaGVpZ2h0OiA5cHg7XG4gIGxlZnQ6IC01cHg7XG4gIHRvcDogLTVweDsgfVxuXG4udWktcmVzaXphYmxlLW5lIHtcbiAgY3Vyc29yOiBuZS1yZXNpemU7XG4gIHdpZHRoOiA5cHg7XG4gIGhlaWdodDogOXB4O1xuICByaWdodDogLTVweDtcbiAgdG9wOiAtNXB4OyB9XG5cbi51aS1zZWxlY3RhYmxlIHtcbiAgLW1zLXRvdWNoLWFjdGlvbjogbm9uZTtcbiAgdG91Y2gtYWN0aW9uOiBub25lOyB9XG5cbi51aS1zZWxlY3RhYmxlLWhlbHBlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTAwO1xuICBib3JkZXI6IDFweCBkb3R0ZWQgYmxhY2s7IH1cblxuLnVpLXNvcnRhYmxlLWhhbmRsZSB7XG4gIC1tcy10b3VjaC1hY3Rpb246IG5vbmU7XG4gIHRvdWNoLWFjdGlvbjogbm9uZTsgfVxuXG4udWktYWNjb3JkaW9uIC51aS1hY2NvcmRpb24taGVhZGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW46IDJweCAwIDAgMDtcbiAgcGFkZGluZzogLjVlbSAuNWVtIC41ZW0gLjdlbTtcbiAgZm9udC1zaXplOiAxMDAlOyB9XG5cbi51aS1hY2NvcmRpb24gLnVpLWFjY29yZGlvbi1jb250ZW50IHtcbiAgcGFkZGluZzogMWVtIDIuMmVtO1xuICBib3JkZXItdG9wOiAwO1xuICBvdmVyZmxvdzogYXV0bzsgfVxuXG4udWktYXV0b2NvbXBsZXRlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGN1cnNvcjogZGVmYXVsdDsgfVxuXG4udWktbWVudSB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG91dGxpbmU6IDA7IH1cblxuLnVpLW1lbnUgLnVpLW1lbnUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7IH1cblxuLnVpLW1lbnUgLnVpLW1lbnUtaXRlbSB7XG4gIG1hcmdpbjogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICAvKiBzdXBwb3J0OiBJRTEwLCBzZWUgIzg4NDQgKi9cbiAgbGlzdC1zdHlsZS1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9naWY7YmFzZTY0LFIwbEdPRGxoQVFBQkFJQUFBQUFBQVAvLy95SDVCQUVBQUFBQUxBQUFBQUFCQUFFQUFBSUJSQUE3XCIpOyB9XG5cbi51aS1tZW51IC51aS1tZW51LWl0ZW0td3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogM3B4IDFlbSAzcHggLjRlbTsgfVxuXG4udWktbWVudSAudWktbWVudS1kaXZpZGVyIHtcbiAgbWFyZ2luOiA1cHggMDtcbiAgaGVpZ2h0OiAwO1xuICBmb250LXNpemU6IDA7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBib3JkZXItd2lkdGg6IDFweCAwIDAgMDsgfVxuXG4udWktbWVudSAudWktc3RhdGUtZm9jdXMsXG4udWktbWVudSAudWktc3RhdGUtYWN0aXZlIHtcbiAgbWFyZ2luOiAtMXB4OyB9XG5cbi8qIGljb24gc3VwcG9ydCAqL1xuLnVpLW1lbnUtaWNvbnMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLnVpLW1lbnUtaWNvbnMgLnVpLW1lbnUtaXRlbS13cmFwcGVyIHtcbiAgcGFkZGluZy1sZWZ0OiAyZW07IH1cblxuLyogbGVmdC1hbGlnbmVkICovXG4udWktbWVudSAudWktaWNvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IC4yZW07XG4gIG1hcmdpbjogYXV0byAwOyB9XG5cbi8qIHJpZ2h0LWFsaWduZWQgKi9cbi51aS1tZW51IC51aS1tZW51LWljb24ge1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogMDsgfVxuXG4udWktYnV0dG9uIHtcbiAgcGFkZGluZzogLjRlbSAxZW07XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICBtYXJnaW4tcmlnaHQ6IC4xZW07XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICAvKiBTdXBwb3J0OiBJRSA8PSAxMSAqL1xuICBvdmVyZmxvdzogdmlzaWJsZTsgfVxuXG4udWktYnV0dG9uLFxuLnVpLWJ1dHRvbjpsaW5rLFxuLnVpLWJ1dHRvbjp2aXNpdGVkLFxuLnVpLWJ1dHRvbjpob3Zlcixcbi51aS1idXR0b246YWN0aXZlIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbi8qIHRvIG1ha2Ugcm9vbSBmb3IgdGhlIGljb24sIGEgd2lkdGggbmVlZHMgdG8gYmUgc2V0IGhlcmUgKi9cbi51aS1idXR0b24taWNvbi1vbmx5IHtcbiAgd2lkdGg6IDJlbTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cblxuLyogbm8gaWNvbiBzdXBwb3J0IGZvciBpbnB1dCBlbGVtZW50cyAqL1xuaW5wdXQudWktYnV0dG9uLnVpLWJ1dHRvbi1pY29uLW9ubHkge1xuICB0ZXh0LWluZGVudDogMDsgfVxuXG4vKiBidXR0b24gaWNvbiBlbGVtZW50KHMpICovXG4udWktYnV0dG9uLWljb24tb25seSAudWktaWNvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgbWFyZ2luLXRvcDogLThweDtcbiAgbWFyZ2luLWxlZnQ6IC04cHg7IH1cblxuLnVpLWJ1dHRvbi51aS1pY29uLW5vdGV4dCAudWktaWNvbiB7XG4gIHBhZGRpbmc6IDA7XG4gIHdpZHRoOiAyLjFlbTtcbiAgaGVpZ2h0OiAyLjFlbTtcbiAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cblxuaW5wdXQudWktYnV0dG9uLnVpLWljb24tbm90ZXh0IC51aS1pY29uIHtcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgdGV4dC1pbmRlbnQ6IDA7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIHBhZGRpbmc6IC40ZW0gMWVtOyB9XG5cbi8qIHdvcmthcm91bmRzICovXG4vKiBTdXBwb3J0OiBGaXJlZm94IDUgLSA0MCAqL1xuaW5wdXQudWktYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuYnV0dG9uLnVpLWJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lciB7XG4gIGJvcmRlcjogMDtcbiAgcGFkZGluZzogMDsgfVxuXG4udWktY29udHJvbGdyb3VwIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cbi51aS1jb250cm9sZ3JvdXAgPiAudWktY29udHJvbGdyb3VwLWl0ZW0ge1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1yaWdodDogMDsgfVxuXG4udWktY29udHJvbGdyb3VwID4gLnVpLWNvbnRyb2xncm91cC1pdGVtOmZvY3VzLFxuLnVpLWNvbnRyb2xncm91cCA+IC51aS1jb250cm9sZ3JvdXAtaXRlbS51aS12aXN1YWwtZm9jdXMge1xuICB6LWluZGV4OiA5OTk5OyB9XG5cbi51aS1jb250cm9sZ3JvdXAtdmVydGljYWwgPiAudWktY29udHJvbGdyb3VwLWl0ZW0ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxvYXQ6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG5cbi51aS1jb250cm9sZ3JvdXAtdmVydGljYWwgLnVpLWNvbnRyb2xncm91cC1pdGVtIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxuXG4udWktY29udHJvbGdyb3VwIC51aS1jb250cm9sZ3JvdXAtbGFiZWwge1xuICBwYWRkaW5nOiAuNGVtIDFlbTsgfVxuXG4udWktY29udHJvbGdyb3VwIC51aS1jb250cm9sZ3JvdXAtbGFiZWwgc3BhbiB7XG4gIGZvbnQtc2l6ZTogODAlOyB9XG5cbi51aS1jb250cm9sZ3JvdXAtaG9yaXpvbnRhbCAudWktY29udHJvbGdyb3VwLWxhYmVsICsgLnVpLWNvbnRyb2xncm91cC1pdGVtIHtcbiAgYm9yZGVyLWxlZnQ6IG5vbmU7IH1cblxuLnVpLWNvbnRyb2xncm91cC12ZXJ0aWNhbCAudWktY29udHJvbGdyb3VwLWxhYmVsICsgLnVpLWNvbnRyb2xncm91cC1pdGVtIHtcbiAgYm9yZGVyLXRvcDogbm9uZTsgfVxuXG4udWktY29udHJvbGdyb3VwLWhvcml6b250YWwgLnVpLWNvbnRyb2xncm91cC1sYWJlbC51aS13aWRnZXQtY29udGVudCB7XG4gIGJvcmRlci1yaWdodDogbm9uZTsgfVxuXG4udWktY29udHJvbGdyb3VwLXZlcnRpY2FsIC51aS1jb250cm9sZ3JvdXAtbGFiZWwudWktd2lkZ2V0LWNvbnRlbnQge1xuICBib3JkZXItYm90dG9tOiBub25lOyB9XG5cbi8qIFNwaW5uZXIgc3BlY2lmaWMgc3R5bGUgZml4ZXMgKi9cbi51aS1jb250cm9sZ3JvdXAtdmVydGljYWwgLnVpLXNwaW5uZXItaW5wdXQge1xuICAvKiBTdXBwb3J0OiBJRTggb25seSwgQW5kcm9pZCA8IDQuNCBvbmx5ICovXG4gIHdpZHRoOiA3NSU7XG4gIHdpZHRoOiBjYWxjKCAxMDAlIC0gMi40ZW0pOyB9XG5cbi51aS1jb250cm9sZ3JvdXAtdmVydGljYWwgLnVpLXNwaW5uZXIgLnVpLXNwaW5uZXItdXAge1xuICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDsgfVxuXG4udWktY2hlY2tib3hyYWRpby1sYWJlbCAudWktaWNvbi1iYWNrZ3JvdW5kIHtcbiAgYm94LXNoYWRvdzogaW5zZXQgMXB4IDFweCAxcHggI2NjYztcbiAgYm9yZGVyLXJhZGl1czogLjEyZW07XG4gIGJvcmRlcjogbm9uZTsgfVxuXG4udWktY2hlY2tib3hyYWRpby1yYWRpby1sYWJlbCAudWktaWNvbi1iYWNrZ3JvdW5kIHtcbiAgd2lkdGg6IDE2cHg7XG4gIGhlaWdodDogMTZweDtcbiAgYm9yZGVyLXJhZGl1czogMWVtO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgYm9yZGVyOiBub25lOyB9XG5cbi51aS1jaGVja2JveHJhZGlvLXJhZGlvLWxhYmVsLnVpLWNoZWNrYm94cmFkaW8tY2hlY2tlZCAudWktaWNvbixcbi51aS1jaGVja2JveHJhZGlvLXJhZGlvLWxhYmVsLnVpLWNoZWNrYm94cmFkaW8tY2hlY2tlZDpob3ZlciAudWktaWNvbiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIHdpZHRoOiA4cHg7XG4gIGhlaWdodDogOHB4O1xuICBib3JkZXItd2lkdGg6IDRweDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDsgfVxuXG4udWktY2hlY2tib3hyYWRpby1kaXNhYmxlZCB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG5cbi51aS1kYXRlcGlja2VyIHtcbiAgd2lkdGg6IDE3ZW07XG4gIHBhZGRpbmc6IC4yZW0gLjJlbSAwO1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLWhlYWRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogLjJlbSAwOyB9XG5cbi51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLXByZXYsXG4udWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci1uZXh0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDJweDtcbiAgd2lkdGg6IDEuOGVtO1xuICBoZWlnaHQ6IDEuOGVtOyB9XG5cbi51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLXByZXYtaG92ZXIsXG4udWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci1uZXh0LWhvdmVyIHtcbiAgdG9wOiAxcHg7IH1cblxuLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItcHJldiB7XG4gIGxlZnQ6IDJweDsgfVxuXG4udWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci1uZXh0IHtcbiAgcmlnaHQ6IDJweDsgfVxuXG4udWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci1wcmV2LWhvdmVyIHtcbiAgbGVmdDogMXB4OyB9XG5cbi51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLW5leHQtaG92ZXIge1xuICByaWdodDogMXB4OyB9XG5cbi51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLXByZXYgc3Bhbixcbi51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLW5leHQgc3BhbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDUwJTtcbiAgbWFyZ2luLWxlZnQ6IC04cHg7XG4gIHRvcDogNTAlO1xuICBtYXJnaW4tdG9wOiAtOHB4OyB9XG5cbi51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLXRpdGxlIHtcbiAgbWFyZ2luOiAwIDIuM2VtO1xuICBsaW5lLWhlaWdodDogMS44ZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4udWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci10aXRsZSBzZWxlY3Qge1xuICBmb250LXNpemU6IDFlbTtcbiAgbWFyZ2luOiAxcHggMDsgfVxuXG4udWktZGF0ZXBpY2tlciBzZWxlY3QudWktZGF0ZXBpY2tlci1tb250aCxcbi51aS1kYXRlcGlja2VyIHNlbGVjdC51aS1kYXRlcGlja2VyLXllYXIge1xuICB3aWR0aDogNDUlOyB9XG5cbi51aS1kYXRlcGlja2VyIHRhYmxlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGZvbnQtc2l6ZTogLjllbTtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgbWFyZ2luOiAwIDAgLjRlbTsgfVxuXG4udWktZGF0ZXBpY2tlciB0aCB7XG4gIHBhZGRpbmc6IC43ZW0gLjNlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgYm9yZGVyOiAwOyB9XG5cbi51aS1kYXRlcGlja2VyIHRkIHtcbiAgYm9yZGVyOiAwO1xuICBwYWRkaW5nOiAxcHg7IH1cblxuLnVpLWRhdGVwaWNrZXIgdGQgc3Bhbixcbi51aS1kYXRlcGlja2VyIHRkIGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogLjJlbTtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG4udWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci1idXR0b25wYW5lIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgbWFyZ2luOiAuN2VtIDAgMCAwO1xuICBwYWRkaW5nOiAwIC4yZW07XG4gIGJvcmRlci1sZWZ0OiAwO1xuICBib3JkZXItcmlnaHQ6IDA7XG4gIGJvcmRlci1ib3R0b206IDA7IH1cblxuLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItYnV0dG9ucGFuZSBidXR0b24ge1xuICBmbG9hdDogcmlnaHQ7XG4gIG1hcmdpbjogLjVlbSAuMmVtIC40ZW07XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcGFkZGluZzogLjJlbSAuNmVtIC4zZW0gLjZlbTtcbiAgd2lkdGg6IGF1dG87XG4gIG92ZXJmbG93OiB2aXNpYmxlOyB9XG5cbi51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLWJ1dHRvbnBhbmUgYnV0dG9uLnVpLWRhdGVwaWNrZXItY3VycmVudCB7XG4gIGZsb2F0OiBsZWZ0OyB9XG5cbi8qIHdpdGggbXVsdGlwbGUgY2FsZW5kYXJzICovXG4udWktZGF0ZXBpY2tlci51aS1kYXRlcGlja2VyLW11bHRpIHtcbiAgd2lkdGg6IGF1dG87IH1cblxuLnVpLWRhdGVwaWNrZXItbXVsdGkgLnVpLWRhdGVwaWNrZXItZ3JvdXAge1xuICBmbG9hdDogbGVmdDsgfVxuXG4udWktZGF0ZXBpY2tlci1tdWx0aSAudWktZGF0ZXBpY2tlci1ncm91cCB0YWJsZSB7XG4gIHdpZHRoOiA5NSU7XG4gIG1hcmdpbjogMCBhdXRvIC40ZW07IH1cblxuLnVpLWRhdGVwaWNrZXItbXVsdGktMiAudWktZGF0ZXBpY2tlci1ncm91cCB7XG4gIHdpZHRoOiA1MCU7IH1cblxuLnVpLWRhdGVwaWNrZXItbXVsdGktMyAudWktZGF0ZXBpY2tlci1ncm91cCB7XG4gIHdpZHRoOiAzMy4zJTsgfVxuXG4udWktZGF0ZXBpY2tlci1tdWx0aS00IC51aS1kYXRlcGlja2VyLWdyb3VwIHtcbiAgd2lkdGg6IDI1JTsgfVxuXG4udWktZGF0ZXBpY2tlci1tdWx0aSAudWktZGF0ZXBpY2tlci1ncm91cC1sYXN0IC51aS1kYXRlcGlja2VyLWhlYWRlcixcbi51aS1kYXRlcGlja2VyLW11bHRpIC51aS1kYXRlcGlja2VyLWdyb3VwLW1pZGRsZSAudWktZGF0ZXBpY2tlci1oZWFkZXIge1xuICBib3JkZXItbGVmdC13aWR0aDogMDsgfVxuXG4udWktZGF0ZXBpY2tlci1tdWx0aSAudWktZGF0ZXBpY2tlci1idXR0b25wYW5lIHtcbiAgY2xlYXI6IGxlZnQ7IH1cblxuLnVpLWRhdGVwaWNrZXItcm93LWJyZWFrIHtcbiAgY2xlYXI6IGJvdGg7XG4gIHdpZHRoOiAxMDAlO1xuICBmb250LXNpemU6IDA7IH1cblxuLyogUlRMIHN1cHBvcnQgKi9cbi51aS1kYXRlcGlja2VyLXJ0bCB7XG4gIGRpcmVjdGlvbjogcnRsOyB9XG5cbi51aS1kYXRlcGlja2VyLXJ0bCAudWktZGF0ZXBpY2tlci1wcmV2IHtcbiAgcmlnaHQ6IDJweDtcbiAgbGVmdDogYXV0bzsgfVxuXG4udWktZGF0ZXBpY2tlci1ydGwgLnVpLWRhdGVwaWNrZXItbmV4dCB7XG4gIGxlZnQ6IDJweDtcbiAgcmlnaHQ6IGF1dG87IH1cblxuLnVpLWRhdGVwaWNrZXItcnRsIC51aS1kYXRlcGlja2VyLXByZXY6aG92ZXIge1xuICByaWdodDogMXB4O1xuICBsZWZ0OiBhdXRvOyB9XG5cbi51aS1kYXRlcGlja2VyLXJ0bCAudWktZGF0ZXBpY2tlci1uZXh0OmhvdmVyIHtcbiAgbGVmdDogMXB4O1xuICByaWdodDogYXV0bzsgfVxuXG4udWktZGF0ZXBpY2tlci1ydGwgLnVpLWRhdGVwaWNrZXItYnV0dG9ucGFuZSB7XG4gIGNsZWFyOiByaWdodDsgfVxuXG4udWktZGF0ZXBpY2tlci1ydGwgLnVpLWRhdGVwaWNrZXItYnV0dG9ucGFuZSBidXR0b24ge1xuICBmbG9hdDogbGVmdDsgfVxuXG4udWktZGF0ZXBpY2tlci1ydGwgLnVpLWRhdGVwaWNrZXItYnV0dG9ucGFuZSBidXR0b24udWktZGF0ZXBpY2tlci1jdXJyZW50LFxuLnVpLWRhdGVwaWNrZXItcnRsIC51aS1kYXRlcGlja2VyLWdyb3VwIHtcbiAgZmxvYXQ6IHJpZ2h0OyB9XG5cbi51aS1kYXRlcGlja2VyLXJ0bCAudWktZGF0ZXBpY2tlci1ncm91cC1sYXN0IC51aS1kYXRlcGlja2VyLWhlYWRlcixcbi51aS1kYXRlcGlja2VyLXJ0bCAudWktZGF0ZXBpY2tlci1ncm91cC1taWRkbGUgLnVpLWRhdGVwaWNrZXItaGVhZGVyIHtcbiAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICBib3JkZXItbGVmdC13aWR0aDogMXB4OyB9XG5cbi8qIEljb25zICovXG4udWktZGF0ZXBpY2tlciAudWktaWNvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0ZXh0LWluZGVudDogLTk5OTk5cHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGxlZnQ6IC41ZW07XG4gIHRvcDogLjNlbTsgfVxuXG4udWktZGlhbG9nIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHBhZGRpbmc6IC4yZW07XG4gIG91dGxpbmU6IDA7IH1cblxuLnVpLWRpYWxvZyAudWktZGlhbG9nLXRpdGxlYmFyIHtcbiAgcGFkZGluZzogLjRlbSAxZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4udWktZGlhbG9nIC51aS1kaWFsb2ctdGl0bGUge1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luOiAuMWVtIDA7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHdpZHRoOiA5MCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzOyB9XG5cbi51aS1kaWFsb2cgLnVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IC4zZW07XG4gIHRvcDogNTAlO1xuICB3aWR0aDogMjBweDtcbiAgbWFyZ2luOiAtMTBweCAwIDAgMDtcbiAgcGFkZGluZzogMXB4O1xuICBoZWlnaHQ6IDIwcHg7IH1cblxuLnVpLWRpYWxvZyAudWktZGlhbG9nLWNvbnRlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJvcmRlcjogMDtcbiAgcGFkZGluZzogLjVlbSAxZW07XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIG92ZXJmbG93OiBhdXRvOyB9XG5cbi51aS1kaWFsb2cgLnVpLWRpYWxvZy1idXR0b25wYW5lIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgYm9yZGVyLXdpZHRoOiAxcHggMCAwIDA7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIG1hcmdpbi10b3A6IC41ZW07XG4gIHBhZGRpbmc6IC4zZW0gMWVtIC41ZW0gLjRlbTsgfVxuXG4udWktZGlhbG9nIC51aS1kaWFsb2ctYnV0dG9ucGFuZSAudWktZGlhbG9nLWJ1dHRvbnNldCB7XG4gIGZsb2F0OiByaWdodDsgfVxuXG4udWktZGlhbG9nIC51aS1kaWFsb2ctYnV0dG9ucGFuZSBidXR0b24ge1xuICBtYXJnaW46IC41ZW0gLjRlbSAuNWVtIDA7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuXG4udWktZGlhbG9nIC51aS1yZXNpemFibGUtbiB7XG4gIGhlaWdodDogMnB4O1xuICB0b3A6IDA7IH1cblxuLnVpLWRpYWxvZyAudWktcmVzaXphYmxlLWUge1xuICB3aWR0aDogMnB4O1xuICByaWdodDogMDsgfVxuXG4udWktZGlhbG9nIC51aS1yZXNpemFibGUtcyB7XG4gIGhlaWdodDogMnB4O1xuICBib3R0b206IDA7IH1cblxuLnVpLWRpYWxvZyAudWktcmVzaXphYmxlLXcge1xuICB3aWR0aDogMnB4O1xuICBsZWZ0OiAwOyB9XG5cbi51aS1kaWFsb2cgLnVpLXJlc2l6YWJsZS1zZSxcbi51aS1kaWFsb2cgLnVpLXJlc2l6YWJsZS1zdyxcbi51aS1kaWFsb2cgLnVpLXJlc2l6YWJsZS1uZSxcbi51aS1kaWFsb2cgLnVpLXJlc2l6YWJsZS1udyB7XG4gIHdpZHRoOiA3cHg7XG4gIGhlaWdodDogN3B4OyB9XG5cbi51aS1kaWFsb2cgLnVpLXJlc2l6YWJsZS1zZSB7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7IH1cblxuLnVpLWRpYWxvZyAudWktcmVzaXphYmxlLXN3IHtcbiAgbGVmdDogMDtcbiAgYm90dG9tOiAwOyB9XG5cbi51aS1kaWFsb2cgLnVpLXJlc2l6YWJsZS1uZSB7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDA7IH1cblxuLnVpLWRpYWxvZyAudWktcmVzaXphYmxlLW53IHtcbiAgbGVmdDogMDtcbiAgdG9wOiAwOyB9XG5cbi51aS1kcmFnZ2FibGUgLnVpLWRpYWxvZy10aXRsZWJhciB7XG4gIGN1cnNvcjogbW92ZTsgfVxuXG4udWktcHJvZ3Jlc3NiYXIge1xuICBoZWlnaHQ6IDJlbTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4udWktcHJvZ3Jlc3NiYXIgLnVpLXByb2dyZXNzYmFyLXZhbHVlIHtcbiAgbWFyZ2luOiAtMXB4O1xuICBoZWlnaHQ6IDEwMCU7IH1cblxuLnVpLXByb2dyZXNzYmFyIC51aS1wcm9ncmVzc2Jhci1vdmVybGF5IHtcbiAgYmFja2dyb3VuZDogdXJsKFwiZGF0YTppbWFnZS9naWY7YmFzZTY0LFIwbEdPRGxoS0FBb0FJQUJBQUFBQVAvLy95SC9DMDVGVkZORFFWQkZNaTR3QXdFQUFBQWgrUVFKQVFBQkFDd0FBQUFBS0FBb0FBQUNrWXdOcVhyZEM1MkRTMDZhN01GWkkrNEZIQkNLb0RlV0tYcXltUHFHcXh2SnJYWmJNeDdUdGMrdzlYZ1UyRkIzbE95UVJXRVQySUZHaVU5bTFmckRWcHhaWmM2YmZId3Y0YzFZWFA2azFWZHkyOTJGYjZVa3V2RnRYcHZXU3pBK0h5Y1hKSFVYaUdZSWlNZzJSNlc0NTlnbldHZkhOZGpJcURXVnFlbUgyZWtwT2JrcE9scHBXVXFaaXFyNmVkcXFXUUFBSWZrRUNRRUFBUUFzQUFBQUFDZ0FLQUFBQXBTTWdabkdmYXFjZzFFMnV1ekRtbUhVQlI4UWlsOTVoaVBLcVduM2FxdExzUzE4eTdHMVN6TmVvd1dCRU50UWQrVDFKa3RQMDVuelBUZEpabFI2dlV4TldXalYrdlVXaFdOa1dGd3hsOVZwWlJlZFljZmxJT0xhZmFhMjhYZHNIL3lubGNjMXVQVkRaeFFJUjBLMjUrY0lDQ21vcUNlNW1HaFpPZmVZU1VoNXlKY0p5cmtaV1dwYVI4ZG9KMm80TllxNjJsQUFBQ0g1QkFrQkFBRUFMQUFBQUFBb0FDZ0FBQUtWREk0WXkyMlpuSU5STnFvc3cwQnY3aTFneUhVa0ZqN29TYVdsdTNvdkM4R3hOc281Zmx1ejNxTFZoQlZlVC9MejdaVEh5eEw1ZERhbFFXUFZPc1FXdFJudXdYYUZUajlqVlZoOHBtYTlKalo0ellTajVaT3ltYTd1dW9sZmZoK0lSNWFXOTdjSHVCVVhLR0tYbEtqbitEaUhXTWNZSmFoNE4wbFlDTWxKT1hpcEdScjVxZGdvU1RycVdTcTZXRmwyeXBvYVVBQUFJZmtFQ1FFQUFRQXNBQUFBQUNnQUtBQUFBcGFFYjZITGdkL2lPN0ZOV3RjRldlK3VmT0RHalJmb2lKMmFrU2hidWViMHd0STUwem0wMnBidndmV0VNV0JRMXpLR2xMSWhza2lFUG05UjZ2Ulh4VjRaeldUMnlIT0dwV015b3JibEtsTnA4SG1IRWIvbENYamNXN2JtdFhQOFh0MjI5T1ZXUjFmb2QyZVdxTmZIdU1qWENQa0lHTmlsZU9pSW1WbUNPRW1vU2ZuM3lYbEpXbW9IR2hxcDZpbFl1V1lwbVRxS1VnQUFJZmtFQ1FFQUFRQXNBQUFBQUNnQUtBQUFBcGlFSDZrYjU4YmlRM0ZOV3RNRldXM2VOVmNvanVGR2ZxblpxU2VidVMwNnc1VjgwL1gwMnBLZTh6RndQNkVGV09UMWxERms4ckdFUmgxVFROT29jUTYxSG00WG0yVmV4VUhwemp5bVZpSHJGYmlFTHNlZlZybjZYS2ZudDJROUcvK1hkaWU0OTlYSGQyZzRoN2lvT0doWEdKYm9HQW5YU0Jub0J3S1l5ZmlvdWJaSjJIbjBSdVJaYWZsWk9pbDU2WnA2aWlvS1NYcFVBQUFoK1FRSkFRQUJBQ3dBQUFBQUtBQW9BQUFDa29RUnFSdm54dUk3a1UxYTFVVTViZDV0blNlT1pYaG1uNWxXSzNxTlRXdlJkUXhQOHF2YUMrL3lhWVF6WE83Qk12YVVFbUpSZDNUc2lNQWdzd21OWXJTZ1pkWXJUWDZ0U0hHWk83M2V6dUF3MnV4dVErQmJlWmZNeHNleFkzNSsvUWU0SjFpblYwZzR4M1dIdU1oSWwyalhPS1QyUStWVTVmZ29TVUk1MlZmWnlma0pHa2hhNmptWSthYVlkaXJxK2xRQUFDSDVCQWtCQUFFQUxBQUFBQUFvQUNnQUFBS1dCSUtwWWUwTDNZTktUb3Fzd1VsdnpuaWdkNHdpUjRLaFpyS3Q5VXBxaXA2MWk5RTN2TXZ4UmRIbGJFRmlFWGZrOVlBUll4T1paRDZWUTJwVXVuQm10UlhvMUxmOGhNVlZjTmw4SmFmVjM4YU0yL0Z1NVYxNkJuNjNyNnh0OTdqMDkrTVhTRmk0Qm5pR0ZhZTNoemJIOStoWUJ6a3B1VWg1YVptSHVhblpPWmdJdXZiR2lOZW9tQ25heHhhcDJ1cGFDWnNxKzFrQUFDSDVCQWtCQUFFQUxBQUFBQUFvQUNnQUFBS1hqSThCeTV6ZjRrT3hUVnJYTlZsdjFYMGQ4SUdaR0tMbk5wWXRtOExyOWNxVmV1T1N2Zk9XNzlEOWFESGl6TmhESmlkRlpoTnlkRWFoT2FESDZub210SmpwMXR1dEtvTldrdkE2SnFmUlZMSFUvUVVmYXU5bDJ4N0c1NGQxZmw5OTV4Y0lHQWRYcU1mQk5hZG9ZcmhIK01nMktCbHBWcGJsdUNpWG1NbloyU2g0R0JxSitja0lPcXFKNkxtS1NsbFptc29xNndwUUFBQWgrUVFKQVFBQkFDd0FBQUFBS0FBb0FBQUNsWXgvb0x2b3h1SkRrVTFhMVlVWmJKNTluU2QyWlhoV3FiUmEyL2dGOEd1MkRZM2lxczd5cnEreEJZRWtZdkZTTThhU1NPYkUrWmdSbDFCSEZaTnI3cFJDYXZaNUJXMjE0MmhZM0FOL3pXdHNtZjEycDlYeHhGbDJscExuMXJzZXp0ZlhaamRJV0lmMnM1ZEl0d2pZS0Jnbzl5ZzVwSGd6SlhURWVHbFp1ZW5weVBtcEdRb0tPV2tZbVNwYVNucUtpbGVJMkZBQUFDSDVCQWtCQUFFQUxBQUFBQUFvQUNnQUFBS1ZqQitndStqRzRrT1JUVnJWaFJsc25uMmRKM1psZUZhcHRGcmIrQ1htTzlPb3plTDVWZlA5OUh2QVdocGlVZGN3a3BCSDM4MjVBd1lkVTh4VHFsTEdodENvc0FyS01wdmZhMW1NUmFlOVZ2V1pmZUIyWGZQa2VMbW0xOGxVY0JqK3A1ZG5OOGpYWjNZSUdFaFl1T1VuNDVhb0NEa3AxNmhsNUlqWUp2aldLY25vR1FwcXlQbHBPaHIzYUVsYXFycTU2QnE3VkFBQU93PT1cIik7XG4gIGhlaWdodDogMTAwJTtcbiAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTI1KTtcbiAgLyogc3VwcG9ydDogSUU4ICovXG4gIG9wYWNpdHk6IDAuMjU7IH1cblxuLnVpLXByb2dyZXNzYmFyLWluZGV0ZXJtaW5hdGUgLnVpLXByb2dyZXNzYmFyLXZhbHVlIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgfVxuXG4udWktc2VsZWN0bWVudS1tZW51IHtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4udWktc2VsZWN0bWVudS1tZW51IC51aS1tZW51IHtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgcGFkZGluZy1ib3R0b206IDFweDsgfVxuXG4udWktc2VsZWN0bWVudS1tZW51IC51aS1tZW51IC51aS1zZWxlY3RtZW51LW9wdGdyb3VwIHtcbiAgZm9udC1zaXplOiAxZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBwYWRkaW5nOiAycHggMC40ZW07XG4gIG1hcmdpbjogMC41ZW0gMCAwIDA7XG4gIGhlaWdodDogYXV0bztcbiAgYm9yZGVyOiAwOyB9XG5cbi51aS1zZWxlY3RtZW51LW9wZW4ge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4udWktc2VsZWN0bWVudS10ZXh0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogMjBweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7IH1cblxuLnVpLXNlbGVjdG1lbnUtYnV0dG9uLnVpLWJ1dHRvbiB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHdpZHRoOiAxNGVtOyB9XG5cbi51aS1zZWxlY3RtZW51LWljb24udWktaWNvbiB7XG4gIGZsb2F0OiByaWdodDtcbiAgbWFyZ2luLXRvcDogMDsgfVxuXG4udWktc2xpZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG5cbi51aS1zbGlkZXIgLnVpLXNsaWRlci1oYW5kbGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDI7XG4gIHdpZHRoOiAxLjJlbTtcbiAgaGVpZ2h0OiAxLjJlbTtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICAtbXMtdG91Y2gtYWN0aW9uOiBub25lO1xuICB0b3VjaC1hY3Rpb246IG5vbmU7IH1cblxuLnVpLXNsaWRlciAudWktc2xpZGVyLXJhbmdlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxO1xuICBmb250LXNpemU6IC43ZW07XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3JkZXI6IDA7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgMDsgfVxuXG4vKiBzdXBwb3J0OiBJRTggLSBTZWUgIzY3MjcgKi9cbi51aS1zbGlkZXIudWktc3RhdGUtZGlzYWJsZWQgLnVpLXNsaWRlci1oYW5kbGUsXG4udWktc2xpZGVyLnVpLXN0YXRlLWRpc2FibGVkIC51aS1zbGlkZXItcmFuZ2Uge1xuICBmaWx0ZXI6IGluaGVyaXQ7IH1cblxuLnVpLXNsaWRlci1ob3Jpem9udGFsIHtcbiAgaGVpZ2h0OiAuOGVtOyB9XG5cbi51aS1zbGlkZXItaG9yaXpvbnRhbCAudWktc2xpZGVyLWhhbmRsZSB7XG4gIHRvcDogLS4zZW07XG4gIG1hcmdpbi1sZWZ0OiAtLjZlbTsgfVxuXG4udWktc2xpZGVyLWhvcml6b250YWwgLnVpLXNsaWRlci1yYW5nZSB7XG4gIHRvcDogMDtcbiAgaGVpZ2h0OiAxMDAlOyB9XG5cbi51aS1zbGlkZXItaG9yaXpvbnRhbCAudWktc2xpZGVyLXJhbmdlLW1pbiB7XG4gIGxlZnQ6IDA7IH1cblxuLnVpLXNsaWRlci1ob3Jpem9udGFsIC51aS1zbGlkZXItcmFuZ2UtbWF4IHtcbiAgcmlnaHQ6IDA7IH1cblxuLnVpLXNsaWRlci12ZXJ0aWNhbCB7XG4gIHdpZHRoOiAuOGVtO1xuICBoZWlnaHQ6IDEwMHB4OyB9XG5cbi51aS1zbGlkZXItdmVydGljYWwgLnVpLXNsaWRlci1oYW5kbGUge1xuICBsZWZ0OiAtLjNlbTtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1ib3R0b206IC0uNmVtOyB9XG5cbi51aS1zbGlkZXItdmVydGljYWwgLnVpLXNsaWRlci1yYW5nZSB7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi51aS1zbGlkZXItdmVydGljYWwgLnVpLXNsaWRlci1yYW5nZS1taW4ge1xuICBib3R0b206IDA7IH1cblxuLnVpLXNsaWRlci12ZXJ0aWNhbCAudWktc2xpZGVyLXJhbmdlLW1heCB7XG4gIHRvcDogMDsgfVxuXG4udWktc3Bpbm5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nOiAwO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG5cbi51aS1zcGlubmVyLWlucHV0IHtcbiAgYm9yZGVyOiBub25lO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBjb2xvcjogaW5oZXJpdDtcbiAgcGFkZGluZzogLjIyMmVtIDA7XG4gIG1hcmdpbjogLjJlbSAwO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXJnaW4tbGVmdDogLjRlbTtcbiAgbWFyZ2luLXJpZ2h0OiAyZW07IH1cblxuLnVpLXNwaW5uZXItYnV0dG9uIHtcbiAgd2lkdGg6IDEuNmVtO1xuICBoZWlnaHQ6IDUwJTtcbiAgZm9udC1zaXplOiAuNWVtO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICByaWdodDogMDsgfVxuXG4vKiBtb3JlIHNwZWNpZmljaXR5IHJlcXVpcmVkIGhlcmUgdG8gb3ZlcnJpZGUgZGVmYXVsdCBib3JkZXJzICovXG4udWktc3Bpbm5lciBhLnVpLXNwaW5uZXItYnV0dG9uIHtcbiAgYm9yZGVyLXRvcC1zdHlsZTogbm9uZTtcbiAgYm9yZGVyLWJvdHRvbS1zdHlsZTogbm9uZTtcbiAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBub25lOyB9XG5cbi51aS1zcGlubmVyLXVwIHtcbiAgdG9wOiAwOyB9XG5cbi51aS1zcGlubmVyLWRvd24ge1xuICBib3R0b206IDA7IH1cblxuLnVpLXRhYnMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC8qIHBvc2l0aW9uOiByZWxhdGl2ZSBwcmV2ZW50cyBJRSBzY3JvbGwgYnVnIChlbGVtZW50IHdpdGggcG9zaXRpb246IHJlbGF0aXZlIGluc2lkZSBjb250YWluZXIgd2l0aCBvdmVyZmxvdzogYXV0byBhcHBlYXIgYXMgXCJmaXhlZFwiKSAqL1xuICBwYWRkaW5nOiAuMmVtOyB9XG5cbi51aS10YWJzIC51aS10YWJzLW5hdiB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogLjJlbSAuMmVtIDA7IH1cblxuLnVpLXRhYnMgLnVpLXRhYnMtbmF2IGxpIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAwO1xuICBtYXJnaW46IDFweCAuMmVtIDAgMDtcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgcGFkZGluZzogMDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuXG4udWktdGFicyAudWktdGFicy1uYXYgLnVpLXRhYnMtYW5jaG9yIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmc6IC41ZW0gMWVtO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuLnVpLXRhYnMgLnVpLXRhYnMtbmF2IGxpLnVpLXRhYnMtYWN0aXZlIHtcbiAgbWFyZ2luLWJvdHRvbTogLTFweDtcbiAgcGFkZGluZy1ib3R0b206IDFweDsgfVxuXG4udWktdGFicyAudWktdGFicy1uYXYgbGkudWktdGFicy1hY3RpdmUgLnVpLXRhYnMtYW5jaG9yLFxuLnVpLXRhYnMgLnVpLXRhYnMtbmF2IGxpLnVpLXN0YXRlLWRpc2FibGVkIC51aS10YWJzLWFuY2hvcixcbi51aS10YWJzIC51aS10YWJzLW5hdiBsaS51aS10YWJzLWxvYWRpbmcgLnVpLXRhYnMtYW5jaG9yIHtcbiAgY3Vyc29yOiB0ZXh0OyB9XG5cbi51aS10YWJzLWNvbGxhcHNpYmxlIC51aS10YWJzLW5hdiBsaS51aS10YWJzLWFjdGl2ZSAudWktdGFicy1hbmNob3Ige1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cblxuLnVpLXRhYnMgLnVpLXRhYnMtcGFuZWwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgYm9yZGVyLXdpZHRoOiAwO1xuICBwYWRkaW5nOiAxZW0gMS40ZW07XG4gIGJhY2tncm91bmQ6IG5vbmU7IH1cblxuLnVpLXRvb2x0aXAge1xuICBwYWRkaW5nOiA4cHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogOTk5OTtcbiAgbWF4LXdpZHRoOiAzMDBweDsgfVxuXG5ib2R5IC51aS10b29sdGlwIHtcbiAgYm9yZGVyLXdpZHRoOiAycHg7IH1cblxuLnVpLWRhdGVwaWNrZXIge1xuICBwYWRkaW5nOiA4cHg7XG4gIG1hcmdpbjogNHB4IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTExLCAxMTksIDEyMywgMC4yNSk7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgYm94LXNoYWRvdzogMCAycHggNHB4IHJnYmEoMjQsIDI1LCAyNSwgMC4xKTtcbiAgY29sb3I6ICMxODE5MTk7IH1cbiAgLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItdGl0bGUge1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7IH1cbiAgLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItcHJldixcbiAgLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItbmV4dCB7XG4gICAgdG9wOiAwO1xuICAgIGJvcmRlcjogMXB4IGRvdHRlZCB3aGl0ZTtcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIC51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLXByZXYge1xuICAgIGxlZnQ6IDA7XG4gICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2ljb25zL2lfY2FyZXQtbGVmdC5zdmdcIikgbm8tcmVwZWF0IDUwJSA1MCUvMTZweCBhdXRvOyB9XG4gIC51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLW5leHQge1xuICAgIHJpZ2h0OiAwO1xuICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9pY29ucy9pX2NhcmV0LXJpZ2h0LnN2Z1wiKSBuby1yZXBlYXQgNTAlIDUwJS8xNnB4IGF1dG87IH1cbiAgLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItaGVhZGVyIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjZmZmOyB9XG4gIC51aS1kYXRlcGlja2VyIHRhYmxlIHtcbiAgICBtYXJnaW46IDA7IH1cbiAgLnVpLWRhdGVwaWNrZXIgdGhlYWQgdGgsXG4gIC51aS1kYXRlcGlja2VyIHRoZWFkIHRkIHtcbiAgICBjb2xvcjogIzE4MTkxOTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAudWktZGF0ZXBpY2tlciB0cjpob3ZlciB0aCxcbiAgLnVpLWRhdGVwaWNrZXIgdHI6aG92ZXIgdGQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7IH1cbiAgLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItY3VycmVudC1kYXkgYSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YyZjRmOTtcbiAgICBmb250LXdlaWdodDogNjAwOyB9XG4gIC51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLXRvZGF5IHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItdG9kYXkgYSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGMxNDNjO1xuICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBmb250LXdlaWdodDogNjAwOyB9XG4gIC51aS1kYXRlcGlja2VyIHRkIHNwYW4sXG4gIC51aS1kYXRlcGlja2VyIHRkIGEge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICBjb2xvcjogIzE4MTkxOTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgdHJhbnNpdGlvbjogbm9uZTsgfVxuICAudWktZGF0ZXBpY2tlciAudWktc3RhdGUtaG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTExLCAxMTksIDEyMywgMC4yNSk7XG4gICAgY29sb3I6ICMxODE5MTk7IH1cblxuLnVpLWF1dG9jb21wbGV0ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTExLCAxMTksIDEyMywgMC4yNSk7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgYm94LXNoYWRvdzogMCAycHggNHB4IHJnYmEoMjQsIDI1LCAyNSwgMC4xKTsgfVxuXG4uanVkZ2VzIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBmb250LXdlaWdodDogNjAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBjb3VudGVyLXJlc2V0OiBzZWN0aW9uOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAgIC5qdWRnZXMge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDsgfSB9XG4gIC5qdWRnZXMgLmp1ZGdlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IDMycHggMCAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgei1pbmRleDogMjsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAgICAgLmp1ZGdlcyAuanVkZ2Uge1xuICAgICAgICBtYXJnaW46IDMycHggMTJweCAwO1xuICAgICAgICB3aWR0aDogNDUlOyB9IH1cbiAgICAuanVkZ2VzIC5qdWRnZV9fcGhvdG8ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzJweDsgfVxuICAgICAgLmp1ZGdlcyAuanVkZ2VfX3Bob3RvIHBpY3R1cmUsIC5qdWRnZXMgLmp1ZGdlX19waG90byBpbWcge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gICAgICAgICAgLmp1ZGdlcyAuanVkZ2VfX3Bob3RvIHBpY3R1cmUsIC5qdWRnZXMgLmp1ZGdlX19waG90byBpbWcge1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgbWF4LWhlaWdodDogNDUwcHg7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB3aWR0aDogYXV0bzsgfSB9XG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgICAgICAuanVkZ2VzIC5qdWRnZV9fcGhvdG8gcGljdHVyZSwgLmp1ZGdlcyAuanVkZ2VfX3Bob3RvIGltZyB7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiA0NTBweDtcbiAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvOyB9IH1cbiAgICAuanVkZ2VzIC5qdWRnZV9fbmFtZSB7XG4gICAgICBtYXJnaW46IDA7IH1cbiAgICAuanVkZ2VzIC5qdWRnZTpmaXJzdC1jaGlsZCB7XG4gICAgICBtYXJnaW46IDA7IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAgICAgICAuanVkZ2VzIC5qdWRnZTpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgbWFyZ2luOiAwIDI3LjUlOyB9IH1cbiAgLmp1ZGdlc1tkYXRhLXRoZW1lPSdzdXByZW1lLWNvdXJ0J10gLmp1ZGdlIHtcbiAgICBtYXJnaW4tdG9wOiA0OHB4OyB9XG4gICAgLmp1ZGdlc1tkYXRhLXRoZW1lPSdzdXByZW1lLWNvdXJ0J10gLmp1ZGdlOmJlZm9yZSB7XG4gICAgICBjb3VudGVyLWluY3JlbWVudDogc2VjdGlvbjtcbiAgICAgIGNvbnRlbnQ6IGNvdW50ZXJzKHNlY3Rpb24sIFwiLlwiKTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICB3aWR0aDogMzJweDtcbiAgICAgIGhlaWdodDogMzJweDtcbiAgICAgIG1hcmdpbjogLTE2cHggMCAwIC0xNnB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzA3MjIzNTtcbiAgICAgIGJvcmRlcjogMnB4IHNvbGlkICMwNzIyMzU7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgei1pbmRleDogMjsgfVxuICAgIC5qdWRnZXNbZGF0YS10aGVtZT0nc3VwcmVtZS1jb3VydCddIC5qdWRnZTpmaXJzdC1jaGlsZCB7XG4gICAgICBtYXJnaW46IDE2cHggMCAwOyB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICAgICAgLmp1ZGdlc1tkYXRhLXRoZW1lPSdzdXByZW1lLWNvdXJ0J10gLmp1ZGdlOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICBtYXJnaW46IDE2cHggMjcuNSU7IH0gfVxuXG4ubG9hZGluZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWluLWhlaWdodDogNjRweDsgfVxuXG4ucHJvZ3Jlc3MtLXNwaW5uZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSB0cmFuc2xhdGVZKC01MCUpO1xuICB3aWR0aDogMzJweDtcbiAgaGVpZ2h0OiAzMnB4O1xuICBtYXJnaW46IC0xNnB4IDAgMCAtMTZweDtcbiAgYW5pbWF0aW9uOiByb3RhdG9yIDEwMDBtcyBsaW5lYXIgaW5maW5pdGU7IH1cbiAgLnByb2dyZXNzLS1zcGlubmVyIGNpcmNsZSB7XG4gICAgZmlsbDogbm9uZTtcbiAgICBzdHJva2U6ICMwNzIyMzU7XG4gICAgc3Ryb2tlLXdpZHRoOiA2cHg7XG4gICAgc3Ryb2tlLWRhc2hhcnJheTogMTg3O1xuICAgIHN0cm9rZS1kYXNob2Zmc2V0OiAwO1xuICAgIHN0cm9rZS1saW5lY2FwOiByb3VuZDtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gICAgYW5pbWF0aW9uOiBkYXNoIDEwMDBtcyBlYXNlLWluLW91dCBpbmZpbml0ZTsgfVxuXG5Aa2V5ZnJhbWVzIHJvdGF0b3Ige1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7IH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMjcwZGVnKTsgfSB9XG5cbkBrZXlmcmFtZXMgZGFzaCB7XG4gIDAlIHtcbiAgICBzdHJva2UtZGFzaG9mZnNldDogMTg3OyB9XG4gIDUwJSB7XG4gICAgc3Ryb2tlLWRhc2hvZmZzZXQ6IDQ2Ljc1O1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDEzNWRlZyk7IH1cbiAgMTAwJSB7XG4gICAgc3Ryb2tlLWRhc2hvZmZzZXQ6IDE4NztcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NTBkZWcpOyB9IH1cblxuLmNvcHlyaWdodCB7XG4gIHBhZGRpbmctcmlnaHQ6IDQ4cHg7XG4gIG1hcmdpbjogMDtcbiAgbGluZS1oZWlnaHQ6IDEuMjU7XG4gIGNvbG9yOiAjNmY3NzdiOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAgIC5jb3B5cmlnaHQge1xuICAgICAgcGFkZGluZy1yaWdodDogNjRweDtcbiAgICAgIG1hcmdpbi10b3A6IDQ4cHg7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgLmNvcHlyaWdodCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICBtYXJnaW4tdG9wOiAxNnB4OyB9IH1cbiAgLmNvcHlyaWdodCBhOmxpbmsge1xuICAgIGNvbG9yOiAjNmY3NzdiOyB9XG4gIC5jb3B5cmlnaHQgYTp2aXNpdGVkIHtcbiAgICBjb2xvcjogIzZmNzc3YjsgfVxuICAuY29weXJpZ2h0IGE6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmMmY0Zjk7XG4gICAgY29sb3I6ICMxODE5MTk7IH1cbiAgLmNvcHlyaWdodCBhOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZiZjQ3O1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDRweCAjZmZiZjQ3O1xuICAgIGNvbG9yOiAjMTgxOTE5OyB9XG4gIC5jb3B5cmlnaHQgYTphY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmJmNDc7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgNHB4ICNmZmJmNDc7XG4gICAgY29sb3I6ICMxODE5MTk7IH1cblxuaW1nLnNjYWxlLS1sZyB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMik7IH1cblxuW2RhdGEtc2luZ2xlPSd0b3BpYyddIFtpdGVtcHJvcD0nbWFpbkNvbnRlbnRPZlBhZ2UnXSAuYmFuZDpmaXJzdC1jaGlsZCAucGFnaW5hdGlvbi0tdG9waWNzIGxpOmZpcnN0LWNoaWxkLFxuW2RhdGEtc2luZ2xlPSd0b3BpYyddIFtpdGVtcHJvcD0nbWFpbkNvbnRlbnRPZlBhZ2UnXSAuYmFuZDpsYXN0LWNoaWxkIC5wYWdpbmF0aW9uLS10b3BpY3MgbGk6bGFzdC1jaGlsZCB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4uY2FyZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogMzJweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBib3gtc2hhZG93OiAwIDJweCA0cHggcmdiYSgyNCwgMjUsIDI1LCAwLjE2KTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAxNTBtcyBjdWJpYy1iZXppZXIoMC43NywgMCwgMC4xNzUsIDEpLCBib3gtc2hhZG93IDE1MG1zIGN1YmljLWJlemllcigwLjc3LCAwLCAwLjE3NSwgMSk7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgIC5jYXJkIHtcbiAgICAgIHBhZGRpbmc6IDY0cHg7IH0gfVxuICAuY2FyZDpob3ZlciB7XG4gICAgYm94LXNoYWRvdzogMCA4cHggMTZweCByZ2JhKDI0LCAyNSwgMjUsIDAuMTYpOyB9XG4gIC5jYXJkICsgLmNhcmQge1xuICAgIG1hcmdpbi10b3A6IDE2cHg7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICAgIC5jYXJkICsgLmNhcmQge1xuICAgICAgICBtYXJnaW4tdG9wOiAyNHB4OyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAuY2FyZCArIC5jYXJkIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMzJweDsgfSB9XG4gIC5jYXJkX19pY29uIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMzJweDtcbiAgICBoZWlnaHQ6IDMycHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMzJweDsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgIC5jYXJkX19pY29uIHtcbiAgICAgICAgd2lkdGg6IDQ4cHg7XG4gICAgICAgIGhlaWdodDogNDhweDsgfSB9XG4gICAgLmNhcmRfX2ljb24gc3ZnIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmNhcmRfX2ljb24tLWZpbGwgc3ZnICoge1xuICAgICAgZmlsbDogIzA3MjIzNTsgfVxuICAgIC5jYXJkX19pY29uLS1zdHJva2Ugc3ZnICoge1xuICAgICAgc3Ryb2tlOiAjMDcyMjM1OyB9XG4gIC5jYXJkX190aXRsZSB7XG4gICAgbWFyZ2luOiAwIDAgMTZweDtcbiAgICBmb250OiA2MDAgMTZweC8xLjI1IFwiT3BlbiBTYW5zXCIsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICAgIC5jYXJkX190aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTlweDsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgLmNhcmRfX3RpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiAyMXB4OyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAuYmFuZFtkYXRhLWNvbHVtbnM9JzInXSAuY2FyZF9fdGl0bGUsIC5iYW5kLmJhbmQtLWNhbGxvdXQgLmNhcmRfX3RpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiAzMnB4OyB9IH1cbiAgLmNhcmRfX2Rlc2NyaXB0aW9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzMnB4O1xuICAgIGNvbG9yOiAjNmY3NzdiOyB9XG4gIC5jYXJkLS1pbnZlcnRlZCwgLmNhcmQuY2FyZC0tY291cnQtZGF0ZS1mb3JtIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDcyMjM1O1xuICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgLmNhcmQtLWludmVydGVkIC5jYXJkX19pY29uLS1maWxsIHN2ZyAqLCAuY2FyZC5jYXJkLS1jb3VydC1kYXRlLWZvcm0gLmNhcmRfX2ljb24tLWZpbGwgc3ZnICoge1xuICAgICAgZmlsbDogI2ZmZjsgfVxuICAgIC5jYXJkLS1pbnZlcnRlZCAuY2FyZF9faWNvbi0tc3Ryb2tlIHN2ZyAqLCAuY2FyZC5jYXJkLS1jb3VydC1kYXRlLWZvcm0gLmNhcmRfX2ljb24tLXN0cm9rZSBzdmcgKiB7XG4gICAgICBzdHJva2U6ICNmZmY7IH1cbiAgICAuY2FyZC0taW52ZXJ0ZWQgLmNhcmRfX2Rlc2NyaXB0aW9uLCAuY2FyZC5jYXJkLS1jb3VydC1kYXRlLWZvcm0gLmNhcmRfX2Rlc2NyaXB0aW9uIHtcbiAgICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNzUpOyB9XG4gIC5jYXJkLS1iYXNpYyB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHBhZGRpbmc6IDMycHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y2ZjZmNjtcbiAgICBib3gtc2hhZG93OiBub25lOyB9XG4gICAgLmNhcmQtLWJhc2ljOmhvdmVyIHtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAuYmFuZFtkYXRhLWNvbHVtbnM9JzInXSAuY2FyZC0tYmFzaWMgLmNhcmQtdGl0bGUsIC5iYW5kLmJhbmQtLWNhbGxvdXQgLmNhcmQtLWJhc2ljIC5jYXJkLXRpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiAyMXB4OyB9IH1cbiAgICAuY2FyZC0tYmFzaWM6YmVmb3JlLFxuICAgIC5jYXJkLS1iYXNpYyAuY2FyZF9faWNvbiB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLmNhcmQtLWJhc2ljIC5jYXJkX19kZXNjcmlwdGlvbiB7XG4gICAgICBjb2xvcjogIzE4MTkxOTsgfVxuICAgIC5jYXJkLS1iYXNpYyA+ICo6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAuY2FyZC0taG9yaXpvbnRhbCB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDE0NHB4OyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgIC5jYXJkLS1ob3Jpem9udGFsIC5jYXJkX19pY29uIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNjRweDtcbiAgICAgIGxlZnQ6IDY0cHg7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgLmNhcmQtLWhvcml6b250YWwgLmNhcmRfX3RpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMjRweDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAuYmFuZFtkYXRhLWNvbHVtbnM9JzInXSAuY2FyZC0taG9yaXpvbnRhbCAuY2FyZF9fdGl0bGUsIC5iYW5kLmJhbmQtLWNhbGxvdXQgLmNhcmQtLWhvcml6b250YWwgLmNhcmRfX3RpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMjRweDsgfSB9XG4gIC5jYXJkOm5vdCguY2FyZC0taG9yaXpvbnRhbCkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAgIC5jYXJkOm5vdCguY2FyZC0taG9yaXpvbnRhbCkgPiAqIHtcbiAgICAgIG1heC13aWR0aDogMTAwJTsgfVxuXG4uYmFuZC0tc3RyaXBlZCAuY2FyZDpub3QoLmNhcmQtLWhvcml6b250YWwpLCAuYmFuZC5iYW5kLS1jb3VydC1kYXRlLWZvcm0gLmNhcmQ6bm90KC5jYXJkLS1ob3Jpem9udGFsKSB7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgaGVpZ2h0OiAxMDAlO1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDsgfVxuXG4uY2hpcF9fdmFsdWUge1xuICBtYXJnaW46IDA7IH1cblxuLyoqXG4gKiBTd2lwZXIgNC4xLjBcbiAqIE1vc3QgbW9kZXJuIG1vYmlsZSB0b3VjaCBzbGlkZXIgYW5kIGZyYW1ld29yayB3aXRoIGhhcmR3YXJlIGFjY2VsZXJhdGVkIHRyYW5zaXRpb25zXG4gKiBodHRwOi8vd3d3LmlkYW5nZXJvLnVzL3N3aXBlci9cbiAqXG4gKiBDb3B5cmlnaHQgMjAxNC0yMDE4IFZsYWRpbWlyIEtoYXJsYW1waWRpXG4gKlxuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlXG4gKlxuICogUmVsZWFzZWQgb246IEphbnVhcnkgMTMsIDIwMThcbiAqL1xuLnN3aXBlci1jb250YWluZXIge1xuICBtYXJnaW46IDAgYXV0bztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwYWRkaW5nLWJvdHRvbTogMTZweDtcbiAgLyogRml4IG9mIFdlYmtpdCBmbGlja2VyaW5nICovXG4gIHotaW5kZXg6IDE7IH1cblxuLnN3aXBlci1jb250YWluZXItbm8tZmxleGJveCAuc3dpcGVyLXNsaWRlIHtcbiAgZmxvYXQ6IGxlZnQ7IH1cblxuLnN3aXBlci1jb250YWluZXItdmVydGljYWwgPiAuc3dpcGVyLXdyYXBwZXIge1xuICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xuICAtd2Via2l0LWJveC1kaXJlY3Rpb246IG5vcm1hbDtcbiAgLXdlYmtpdC1mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuXG4uc3dpcGVyLXdyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHotaW5kZXg6IDE7XG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICBkaXNwbGF5OiBmbGV4O1xuICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IC13ZWJraXQtdHJhbnNmb3JtO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiAtd2Via2l0LXRyYW5zZm9ybTtcbiAgLW8tdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgLXdlYmtpdC10cmFuc2Zvcm07XG4gIC13ZWJraXQtYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyB9XG5cbi5zd2lwZXItY29udGFpbmVyLWFuZHJvaWQgLnN3aXBlci1zbGlkZSxcbi5zd2lwZXItd3JhcHBlciB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwcHgsIDAsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDBweCwgMCwgMCk7IH1cblxuLnN3aXBlci1jb250YWluZXItbXVsdGlyb3cgPiAuc3dpcGVyLXdyYXBwZXIge1xuICAtd2Via2l0LWZsZXgtd3JhcDogd3JhcDtcbiAgLW1zLWZsZXgtd3JhcDogd3JhcDtcbiAgZmxleC13cmFwOiB3cmFwOyB9XG5cbi5zd2lwZXItY29udGFpbmVyLWZyZWUtbW9kZSA+IC5zd2lwZXItd3JhcHBlciB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICAtby10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgbWFyZ2luOiAwIGF1dG87IH1cblxuLnN3aXBlci1zbGlkZSB7XG4gIC13ZWJraXQtZmxleC1zaHJpbms6IDA7XG4gIC1tcy1mbGV4LW5lZ2F0aXZlOiAwO1xuICBmbGV4LXNocmluazogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IC13ZWJraXQtdHJhbnNmb3JtO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiAtd2Via2l0LXRyYW5zZm9ybTtcbiAgLW8tdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgLXdlYmtpdC10cmFuc2Zvcm07IH1cblxuLnN3aXBlci1pbnZpc2libGUtYmxhbmstc2xpZGUge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLyogQXV0byBIZWlnaHQgKi9cbi5zd2lwZXItY29udGFpbmVyLWF1dG9oZWlnaHQsXG4uc3dpcGVyLWNvbnRhaW5lci1hdXRvaGVpZ2h0IC5zd2lwZXItc2xpZGUge1xuICBoZWlnaHQ6IGF1dG87IH1cblxuLnN3aXBlci1jb250YWluZXItYXV0b2hlaWdodCAuc3dpcGVyLXdyYXBwZXIge1xuICAtd2Via2l0LWJveC1hbGlnbjogc3RhcnQ7XG4gIC13ZWJraXQtYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIC1tcy1mbGV4LWFsaWduOiBzdGFydDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogaGVpZ2h0LCAtd2Via2l0LXRyYW5zZm9ybTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogaGVpZ2h0LCAtd2Via2l0LXRyYW5zZm9ybTtcbiAgLW8tdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBoZWlnaHQ7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgaGVpZ2h0O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIGhlaWdodCwgLXdlYmtpdC10cmFuc2Zvcm07IH1cblxuLyogM0QgRWZmZWN0cyAqL1xuLnN3aXBlci1jb250YWluZXItM2Qge1xuICAtd2Via2l0LXBlcnNwZWN0aXZlOiAxMjAwcHg7XG4gIHBlcnNwZWN0aXZlOiAxMjAwcHg7IH1cblxuLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci13cmFwcGVyLFxuLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci1zbGlkZSxcbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LWxlZnQsXG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1yaWdodCxcbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LXRvcCxcbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LWJvdHRvbSxcbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItY3ViZS1zaGFkb3cge1xuICAtd2Via2l0LXRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7XG4gIHRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7IH1cblxuLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctbGVmdCxcbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LXJpZ2h0LFxuLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctdG9wLFxuLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctYm90dG9tIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB6LWluZGV4OiAxMDsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1sZWZ0IHtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIHJpZ2h0IHRvcCwgbGVmdCB0b3AsIGZyb20ocmdiYSgwLCAwLCAwLCAwLjUpKSwgdG8ocmdiYSgwLCAwLCAwLCAwKSkpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChyaWdodCwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KHJpZ2h0LCByZ2JhKDAsIDAsIDAsIDAuNSksIHJnYmEoMCwgMCwgMCwgMCkpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gbGVmdCwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1yaWdodCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgcmlnaHQgdG9wLCBmcm9tKHJnYmEoMCwgMCwgMCwgMC41KSksIHRvKHJnYmEoMCwgMCwgMCwgMCkpKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQobGVmdCwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KGxlZnQsIHJnYmEoMCwgMCwgMCwgMC41KSwgcmdiYSgwLCAwLCAwLCAwKSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy10b3Age1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCBib3R0b20sIGxlZnQgdG9wLCBmcm9tKHJnYmEoMCwgMCwgMCwgMC41KSksIHRvKHJnYmEoMCwgMCwgMCwgMCkpKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoYm90dG9tLCByZ2JhKDAsIDAsIDAsIDAuNSksIHJnYmEoMCwgMCwgMCwgMCkpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQoYm90dG9tLCByZ2JhKDAsIDAsIDAsIDAuNSksIHJnYmEoMCwgMCwgMCwgMCkpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gdG9wLCByZ2JhKDAsIDAsIDAsIDAuNSksIHJnYmEoMCwgMCwgMCwgMCkpOyB9XG5cbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LWJvdHRvbSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgbGVmdCBib3R0b20sIGZyb20ocmdiYSgwLCAwLCAwLCAwLjUpKSwgdG8ocmdiYSgwLCAwLCAwLCAwKSkpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsIHJnYmEoMCwgMCwgMCwgMC41KSwgcmdiYSgwLCAwLCAwLCAwKSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsIHJnYmEoMCwgMCwgMCwgMC41KSwgcmdiYSgwLCAwLCAwLCAwKSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMCwgMCwgMCwgMC41KSwgcmdiYSgwLCAwLCAwLCAwKSk7IH1cblxuLyogSUUxMCBXaW5kb3dzIFBob25lIDggRml4ZXMgKi9cbi5zd2lwZXItY29udGFpbmVyLXdwOC1ob3Jpem9udGFsLFxuLnN3aXBlci1jb250YWluZXItd3A4LWhvcml6b250YWwgPiAuc3dpcGVyLXdyYXBwZXIge1xuICAtbXMtdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgdG91Y2gtYWN0aW9uOiBwYW4teTsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci13cDgtdmVydGljYWwsXG4uc3dpcGVyLWNvbnRhaW5lci13cDgtdmVydGljYWwgPiAuc3dpcGVyLXdyYXBwZXIge1xuICAtbXMtdG91Y2gtYWN0aW9uOiBwYW4teDtcbiAgdG91Y2gtYWN0aW9uOiBwYW4teDsgfVxuXG4uc3dpcGVyLWJ1dHRvbi1wcmV2LFxuLnN3aXBlci1idXR0b24tbmV4dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHdpZHRoOiAyN3B4O1xuICBoZWlnaHQ6IDQ0cHg7XG4gIG1hcmdpbi10b3A6IC0yMnB4O1xuICB6LWluZGV4OiAxMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IDI3cHggNDRweDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OyB9XG5cbi5zd2lwZXItYnV0dG9uLXByZXYuc3dpcGVyLWJ1dHRvbi1kaXNhYmxlZCxcbi5zd2lwZXItYnV0dG9uLW5leHQuc3dpcGVyLWJ1dHRvbi1kaXNhYmxlZCB7XG4gIG9wYWNpdHk6IDAuMzU7XG4gIGN1cnNvcjogYXV0bztcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cblxuLnN3aXBlci1idXR0b24tcHJldixcbi5zd2lwZXItY29udGFpbmVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1uZXh0IHtcbiAgbGVmdDogMTBweDtcbiAgcmlnaHQ6IGF1dG87IH1cblxuLnN3aXBlci1idXR0b24tbmV4dCxcbi5zd2lwZXItY29udGFpbmVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1wcmV2IHtcbiAgcmlnaHQ6IDEwcHg7XG4gIGxlZnQ6IGF1dG87IH1cblxuLnN3aXBlci1idXR0b24tbG9jayB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLnN3aXBlci1wYWdpbmF0aW9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogMzAwbXMgb3BhY2l0eTtcbiAgLW8tdHJhbnNpdGlvbjogMzAwbXMgb3BhY2l0eTtcbiAgdHJhbnNpdGlvbjogMzAwbXMgb3BhY2l0eTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB6LWluZGV4OiAxMDsgfVxuXG4uc3dpcGVyLXBhZ2luYXRpb24uc3dpcGVyLXBhZ2luYXRpb24taGlkZGVuIHtcbiAgb3BhY2l0eTogMDsgfVxuXG4vKiBDb21tb24gU3R5bGVzICovXG4uc3dpcGVyLXBhZ2luYXRpb24tZnJhY3Rpb24sXG4uc3dpcGVyLXBhZ2luYXRpb24tY3VzdG9tLFxuLnN3aXBlci1jb250YWluZXItaG9yaXpvbnRhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzIHtcbiAgYm90dG9tOiAxMHB4O1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTsgfVxuXG4vKiBCdWxsZXRzICovXG4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgZm9udC1zaXplOiAwOyB9XG5cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjMzKTtcbiAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMC4zMyk7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC4zMyk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxKTsgfVxuXG4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlLXByZXYge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC42Nik7XG4gIC1tcy10cmFuc2Zvcm06IHNjYWxlKDAuNjYpO1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuNjYpOyB9XG5cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUtcHJldi1wcmV2IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuMzMpO1xuICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgwLjMzKTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjMzKTsgfVxuXG4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlLW5leHQge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC42Nik7XG4gIC1tcy10cmFuc2Zvcm06IHNjYWxlKDAuNjYpO1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuNjYpOyB9XG5cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUtbmV4dC1uZXh0IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuMzMpO1xuICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgwLjMzKTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjMzKTsgfVxuXG4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgd2lkdGg6IDhweDtcbiAgaGVpZ2h0OiA4cHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgYmFja2dyb3VuZDogIzAwMDtcbiAgb3BhY2l0eTogMC4yOyB9XG5cbmJ1dHRvbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICBib3JkZXI6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xuICBib3gtc2hhZG93OiBub25lO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgYXBwZWFyYW5jZTogbm9uZTsgfVxuXG4uc3dpcGVyLXBhZ2luYXRpb24tY2xpY2thYmxlIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cblxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUge1xuICBvcGFjaXR5OiAxO1xuICBiYWNrZ3JvdW5kOiAjMDA3YWZmOyB9XG5cbi5zd2lwZXItY29udGFpbmVyLXZlcnRpY2FsID4gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMge1xuICByaWdodDogMTBweDtcbiAgdG9wOiA1MCU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwcHgsIC01MCUsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDBweCwgLTUwJSwgMCk7IH1cblxuLnN3aXBlci1jb250YWluZXItdmVydGljYWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgbWFyZ2luOiA2cHggMDtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLnN3aXBlci1jb250YWluZXItdmVydGljYWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMge1xuICB0b3A6IDUwJTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgd2lkdGg6IDhweDsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci12ZXJ0aWNhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAtd2Via2l0LXRyYW5zaXRpb246IDIwMG1zIHRvcCwgMjAwbXMgLXdlYmtpdC10cmFuc2Zvcm07XG4gIHRyYW5zaXRpb246IDIwMG1zIHRvcCwgMjAwbXMgLXdlYmtpdC10cmFuc2Zvcm07XG4gIC1vLXRyYW5zaXRpb246IDIwMG1zIHRyYW5zZm9ybSwgMjAwbXMgdG9wO1xuICB0cmFuc2l0aW9uOiAyMDBtcyB0cmFuc2Zvcm0sIDIwMG1zIHRvcDtcbiAgdHJhbnNpdGlvbjogMjAwbXMgdHJhbnNmb3JtLCAyMDBtcyB0b3AsIDIwMG1zIC13ZWJraXQtdHJhbnNmb3JtOyB9XG5cbi5zd2lwZXItY29udGFpbmVyLWhvcml6b250YWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgbWFyZ2luOiAwIDRweDsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci1ob3Jpem9udGFsID4gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIHtcbiAgbGVmdDogNTAlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG5cbi5zd2lwZXItY29udGFpbmVyLWhvcml6b250YWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogMjAwbXMgbGVmdCwgMjAwbXMgLXdlYmtpdC10cmFuc2Zvcm07XG4gIHRyYW5zaXRpb246IDIwMG1zIGxlZnQsIDIwMG1zIC13ZWJraXQtdHJhbnNmb3JtO1xuICAtby10cmFuc2l0aW9uOiAyMDBtcyB0cmFuc2Zvcm0sIDIwMG1zIGxlZnQ7XG4gIHRyYW5zaXRpb246IDIwMG1zIHRyYW5zZm9ybSwgMjAwbXMgbGVmdDtcbiAgdHJhbnNpdGlvbjogMjAwbXMgdHJhbnNmb3JtLCAyMDBtcyBsZWZ0LCAyMDBtcyAtd2Via2l0LXRyYW5zZm9ybTsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci1ob3Jpem9udGFsLnN3aXBlci1jb250YWluZXItcnRsID4gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAyMDBtcyByaWdodCwgMjAwbXMgLXdlYmtpdC10cmFuc2Zvcm07XG4gIHRyYW5zaXRpb246IDIwMG1zIHJpZ2h0LCAyMDBtcyAtd2Via2l0LXRyYW5zZm9ybTtcbiAgLW8tdHJhbnNpdGlvbjogMjAwbXMgdHJhbnNmb3JtLCAyMDBtcyByaWdodDtcbiAgdHJhbnNpdGlvbjogMjAwbXMgdHJhbnNmb3JtLCAyMDBtcyByaWdodDtcbiAgdHJhbnNpdGlvbjogMjAwbXMgdHJhbnNmb3JtLCAyMDBtcyByaWdodCwgMjAwbXMgLXdlYmtpdC10cmFuc2Zvcm07IH1cblxuLyogUHJvZ3Jlc3MgKi9cbi5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2JhciB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4yNSk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTsgfVxuXG4uc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIgLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLWZpbGwge1xuICBiYWNrZ3JvdW5kOiAjMDA3YWZmO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDApO1xuICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IHRvcDtcbiAgLW1zLXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgdG9wO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IHRvcDsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci1ydGwgLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyIC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1maWxsIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCB0b3A7XG4gIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCB0b3A7XG4gIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IHRvcDsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci1ob3Jpem9udGFsID4gLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNHB4O1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7IH1cblxuLnN3aXBlci1jb250YWluZXItdmVydGljYWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIge1xuICB3aWR0aDogNHB4O1xuICBoZWlnaHQ6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDsgfVxuXG4uc3dpcGVyLXBhZ2luYXRpb24td2hpdGUgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUge1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmOyB9XG5cbi5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci5zd2lwZXItcGFnaW5hdGlvbi13aGl0ZSB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yNSk7IH1cblxuLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLnN3aXBlci1wYWdpbmF0aW9uLXdoaXRlIC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1maWxsIHtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjsgfVxuXG4uc3dpcGVyLXBhZ2luYXRpb24tYmxhY2sgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUge1xuICBiYWNrZ3JvdW5kOiAjMDAwMDAwOyB9XG5cbi5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci5zd2lwZXItcGFnaW5hdGlvbi1ibGFjayB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4yNSk7IH1cblxuLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLnN3aXBlci1wYWdpbmF0aW9uLWJsYWNrIC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1maWxsIHtcbiAgYmFja2dyb3VuZDogIzAwMDAwMDsgfVxuXG4uc3dpcGVyLXBhZ2luYXRpb24tbG9jayB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLyogU2Nyb2xsYmFyICovXG4uc3dpcGVyLXNjcm9sbGJhciB7XG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLW1zLXRvdWNoLWFjdGlvbjogbm9uZTtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG5cbi5zd2lwZXItY29udGFpbmVyLWhvcml6b250YWwgPiAuc3dpcGVyLXNjcm9sbGJhciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMSU7XG4gIGJvdHRvbTogM3B4O1xuICB6LWluZGV4OiA1MDtcbiAgaGVpZ2h0OiA1cHg7XG4gIHdpZHRoOiA5OCU7IH1cblxuLnN3aXBlci1jb250YWluZXItdmVydGljYWwgPiAuc3dpcGVyLXNjcm9sbGJhciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDNweDtcbiAgdG9wOiAxJTtcbiAgei1pbmRleDogNTA7XG4gIHdpZHRoOiA1cHg7XG4gIGhlaWdodDogOTglOyB9XG5cbi5zd2lwZXItc2Nyb2xsYmFyLWRyYWcge1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgbGVmdDogMDtcbiAgdG9wOiAwOyB9XG5cbi5zd2lwZXItc2Nyb2xsYmFyLWN1cnNvci1kcmFnIHtcbiAgY3Vyc29yOiBtb3ZlOyB9XG5cbi5zd2lwZXItc2Nyb2xsYmFyLWxvY2sge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5zd2lwZXItem9vbS1jb250YWluZXIge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgZGlzcGxheTogZmxleDtcbiAgLXdlYmtpdC1ib3gtcGFjazogY2VudGVyO1xuICAtd2Via2l0LWp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAtbXMtZmxleC1wYWNrOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyO1xuICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4uc3dpcGVyLXpvb20tY29udGFpbmVyID4gaW1nLFxuLnN3aXBlci16b29tLWNvbnRhaW5lciA+IHN2Zyxcbi5zd2lwZXItem9vbS1jb250YWluZXIgPiBjYW52YXMge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1heC1oZWlnaHQ6IDEwMCU7XG4gIC1vLW9iamVjdC1maXQ6IGNvbnRhaW47XG4gIG9iamVjdC1maXQ6IGNvbnRhaW47IH1cblxuLnN3aXBlci1zbGlkZS16b29tZWQge1xuICBjdXJzb3I6IG1vdmU7IH1cblxuLyogUHJlbG9hZGVyICovXG4uc3dpcGVyLWxhenktcHJlbG9hZGVyIHtcbiAgd2lkdGg6IDQycHg7XG4gIGhlaWdodDogNDJweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiA1MCU7XG4gIHRvcDogNTAlO1xuICBtYXJnaW4tbGVmdDogLTIxcHg7XG4gIG1hcmdpbi10b3A6IC0yMXB4O1xuICB6LWluZGV4OiAxMDtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiA1MCU7XG4gIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiA1MCU7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDUwJTtcbiAgLXdlYmtpdC1hbmltYXRpb246IHN3aXBlci1wcmVsb2FkZXItc3BpbiAxcyBzdGVwcygxMiwgZW5kKSBpbmZpbml0ZTtcbiAgYW5pbWF0aW9uOiBzd2lwZXItcHJlbG9hZGVyLXNwaW4gMXMgc3RlcHMoMTIsIGVuZCkgaW5maW5pdGU7IH1cblxuLnN3aXBlci1sYXp5LXByZWxvYWRlcjphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb250ZW50OiAnJztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlO1xuICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7IH1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHN3aXBlci1wcmVsb2FkZXItc3BpbiB7XG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyB9IH1cblxuQGtleWZyYW1lcyBzd2lwZXItcHJlbG9hZGVyLXNwaW4ge1xuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsgfSB9XG5cbi8qIGExMXkgKi9cbi5zd2lwZXItY29udGFpbmVyIC5zd2lwZXItbm90aWZpY2F0aW9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBvcGFjaXR5OiAwO1xuICB6LWluZGV4OiAtMTAwMDsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci1mYWRlLnN3aXBlci1jb250YWluZXItZnJlZS1tb2RlIC5zd2lwZXItc2xpZGUge1xuICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgLW8tdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7IH1cblxuLnN3aXBlci1jb250YWluZXItZmFkZSAuc3dpcGVyLXNsaWRlIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTtcbiAgLW8tdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci1mYWRlIC5zd2lwZXItc2xpZGUgLnN3aXBlci1zbGlkZSB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG5cbi5zd2lwZXItY29udGFpbmVyLWZhZGUgLnN3aXBlci1zbGlkZS1hY3RpdmUsXG4uc3dpcGVyLWNvbnRhaW5lci1mYWRlIC5zd2lwZXItc2xpZGUtYWN0aXZlIC5zd2lwZXItc2xpZGUtYWN0aXZlIHtcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87IH1cblxuLnN3aXBlci1jb250YWluZXItY3ViZSB7XG4gIG92ZXJmbG93OiB2aXNpYmxlOyB9XG5cbi5zd2lwZXItY29udGFpbmVyLWN1YmUgLnN3aXBlci1zbGlkZSB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICB6LWluZGV4OiAxO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xuICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7IH1cblxuLnN3aXBlci1jb250YWluZXItY3ViZSAuc3dpcGVyLXNsaWRlIC5zd2lwZXItc2xpZGUge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlLnN3aXBlci1jb250YWluZXItcnRsIC5zd2lwZXItc2xpZGUge1xuICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IDEwMCUgMDtcbiAgLW1zLXRyYW5zZm9ybS1vcmlnaW46IDEwMCUgMDtcbiAgdHJhbnNmb3JtLW9yaWdpbjogMTAwJSAwOyB9XG5cbi5zd2lwZXItY29udGFpbmVyLWN1YmUgLnN3aXBlci1zbGlkZS1hY3RpdmUsXG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlIC5zd2lwZXItc2xpZGUtYWN0aXZlIC5zd2lwZXItc2xpZGUtYWN0aXZlIHtcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87IH1cblxuLnN3aXBlci1jb250YWluZXItY3ViZSAuc3dpcGVyLXNsaWRlLWFjdGl2ZSxcbi5zd2lwZXItY29udGFpbmVyLWN1YmUgLnN3aXBlci1zbGlkZS1uZXh0LFxuLnN3aXBlci1jb250YWluZXItY3ViZSAuc3dpcGVyLXNsaWRlLXByZXYsXG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlIC5zd2lwZXItc2xpZGUtbmV4dCArIC5zd2lwZXItc2xpZGUge1xuICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlIC5zd2lwZXItc2xpZGUtc2hhZG93LXRvcCxcbi5zd2lwZXItY29udGFpbmVyLWN1YmUgLnN3aXBlci1zbGlkZS1zaGFkb3ctYm90dG9tLFxuLnN3aXBlci1jb250YWluZXItY3ViZSAuc3dpcGVyLXNsaWRlLXNoYWRvdy1sZWZ0LFxuLnN3aXBlci1jb250YWluZXItY3ViZSAuc3dpcGVyLXNsaWRlLXNoYWRvdy1yaWdodCB7XG4gIHotaW5kZXg6IDA7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLnN3aXBlci1jb250YWluZXItY3ViZSAuc3dpcGVyLWN1YmUtc2hhZG93IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDBweDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZDogIzAwMDtcbiAgb3BhY2l0eTogMC42O1xuICAtd2Via2l0LWZpbHRlcjogYmx1cig1MHB4KTtcbiAgZmlsdGVyOiBibHVyKDUwcHgpO1xuICB6LWluZGV4OiAwOyB9XG5cbi5zd2lwZXItY29udGFpbmVyLWZsaXAge1xuICBvdmVyZmxvdzogdmlzaWJsZTsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci1mbGlwIC5zd2lwZXItc2xpZGUge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgei1pbmRleDogMTsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci1mbGlwIC5zd2lwZXItc2xpZGUgLnN3aXBlci1zbGlkZSB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG5cbi5zd2lwZXItY29udGFpbmVyLWZsaXAgLnN3aXBlci1zbGlkZS1hY3RpdmUsXG4uc3dpcGVyLWNvbnRhaW5lci1mbGlwIC5zd2lwZXItc2xpZGUtYWN0aXZlIC5zd2lwZXItc2xpZGUtYWN0aXZlIHtcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87IH1cblxuLnN3aXBlci1jb250YWluZXItZmxpcCAuc3dpcGVyLXNsaWRlLXNoYWRvdy10b3AsXG4uc3dpcGVyLWNvbnRhaW5lci1mbGlwIC5zd2lwZXItc2xpZGUtc2hhZG93LWJvdHRvbSxcbi5zd2lwZXItY29udGFpbmVyLWZsaXAgLnN3aXBlci1zbGlkZS1zaGFkb3ctbGVmdCxcbi5zd2lwZXItY29udGFpbmVyLWZsaXAgLnN3aXBlci1zbGlkZS1zaGFkb3ctcmlnaHQge1xuICB6LWluZGV4OiAwO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi5zd2lwZXItY29udGFpbmVyLWNvdmVyZmxvdyAuc3dpcGVyLXdyYXBwZXIge1xuICAvKiBXaW5kb3dzIDggSUUgMTAgZml4ICovXG4gIC1tcy1wZXJzcGVjdGl2ZTogMTIwMHB4OyB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgLnN3aXBlci0tdGVhc2VkIC5zd2lwZXItd3JhcHBlciB7XG4gICAgYW5pbWF0aW9uOiBzd2lwZXJUZWFzZSAycyBjdWJpYy1iZXppZXIoMC43NywgMCwgMC4xNzUsIDEpOyB9IH1cblxuQGtleWZyYW1lcyBzd2lwZXJUZWFzZSB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOyB9XG4gIDUwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMzJweCwgMCwgMCk7IH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsgfSB9XG5cbi5pbmxpbmUtZGVmaW5pdGlvbnMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbjogMCAwIDQ0cHg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gICAgLmlubGluZS1kZWZpbml0aW9ucyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA0OHB4OyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgIC5pbmxpbmUtZGVmaW5pdGlvbnMge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNTRweDsgfSB9XG4gIC5pbmxpbmUtZGVmaW5pdGlvbnMgZHQsIC5pbmxpbmUtZGVmaW5pdGlvbnMgZGQge1xuICAgIHdpZHRoOiA1MCU7XG4gICAgcGFkZGluZy10b3A6IDE2cHg7XG4gICAgbWFyZ2luLXRvcDogMTZweDtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgyNCwgMjUsIDI1LCAwLjEpOyB9XG4gIC5pbmxpbmUtZGVmaW5pdGlvbnMgZHQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDEycHg7IH1cbiAgLmlubGluZS1kZWZpbml0aW9ucyBkZCB7XG4gICAgcGFkZGluZy1sZWZ0OiAxMnB4OyB9XG4gIC5pbmxpbmUtZGVmaW5pdGlvbnMgZHQ6Zmlyc3Qtb2YtdHlwZSxcbiAgLmlubGluZS1kZWZpbml0aW9ucyBkZDpmaXJzdC1vZi10eXBlIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIGJvcmRlci10b3A6IDA7IH1cblxuLmZvcm1ncm91cCB7XG4gIHBhZGRpbmctYm90dG9tOiAzMnB4OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAgIC5mb3JtZ3JvdXAge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzJweDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAgIC5mb3JtZ3JvdXAgLmZvcm1ibG9jayB7XG4gICAgICBmbGV4LWdyb3c6IDI7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICAuZm9ybWdyb3VwIC5mb3JtYmxvY2sgKyAuZm9ybWJsb2NrIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAyNHB4OyB9IH1cbiAgLmZvcm1ncm91cCAuYnV0dG9uLCAuZm9ybWdyb3VwIC50b2dnbGUsIC5mb3JtZ3JvdXAgLnBhbmVsLWdyb3VwX190b2dnbGUsIC5mb3JtZ3JvdXAgLmFsZXJ0X19kaXNtaXNzLCAuZm9ybWdyb3VwIC5jYXJkX19hY3Rpb24sIC5mb3JtZ3JvdXAgLnNob3RfX2J1dHRvbiB7XG4gICAgbWFyZ2luLXRvcDogMjRweDsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAgICAgLmZvcm1ncm91cCAuYnV0dG9uLCAuZm9ybWdyb3VwIC50b2dnbGUsIC5mb3JtZ3JvdXAgLnBhbmVsLWdyb3VwX190b2dnbGUsIC5mb3JtZ3JvdXAgLmFsZXJ0X19kaXNtaXNzLCAuZm9ybWdyb3VwIC5jYXJkX19hY3Rpb24sIC5mb3JtZ3JvdXAgLnNob3RfX2J1dHRvbiB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAyNHB4OyB9IH1cbiAgLmZvcm1ncm91cCArIC5mb3JtZ3JvdXAge1xuICAgIHBhZGRpbmctdG9wOiAzMnB4O1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjY2NjZmQxOyB9XG5cbi5maWx0ZXItcGFuZWwge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGxlZnQ6IDA7XG4gIHRvcDogY2FsYygxMDAlIC0gNDhweCk7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIHRyYW5zaXRpb246IHRvcCAxNTBtcyBjdWJpYy1iZXppZXIoMC43NywgMCwgMC4xNzUsIDEpO1xuICB6LWluZGV4OiAxMDAwMDsgfVxuICAuZmlsdGVyLXBhbmVsX190aXRsZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogNDhweDtcbiAgICBwYWRkaW5nOiAwIDAgMCA0OHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwNzIyMzU7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJveC1zaGFkb3c6IDAgLTFweCAwIDAgI2ZmZjtcbiAgICBmb250OiA2MDAgMTRweC8xIFwiT3BlbiBTYW5zXCIsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAgIC5maWx0ZXItcGFuZWxfX3RpdGxlOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgbGVmdDogMTZweDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IDE2cHg7XG4gICAgICBoZWlnaHQ6IDE2cHg7XG4gICAgICBtYXJnaW4tdG9wOiAtOHB4O1xuICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2ljb25zL2lfZmlsdGVyX3doaXRlLnN2Z1wiKSBuby1yZXBlYXQgNTAlIDUwJS8xMDAlIGF1dG87IH1cbiAgICAuZmlsdGVyLXBhbmVsX190aXRsZTphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgcmlnaHQ6IDE2cHg7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiAxNnB4O1xuICAgICAgaGVpZ2h0OiAxNnB4O1xuICAgICAgbWFyZ2luLXRvcDogLThweDtcbiAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9pY29ucy9pX2NhcmV0LXVwX3doaXRlLnN2Z1wiKSBuby1yZXBlYXQgNTAlIDUwJS8yNHB4IGF1dG87IH1cbiAgICAuZmlsdGVyLXBhbmVsX190aXRsZTpmb2N1cyB7XG4gICAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAycHggI2ZmYmY0NztcbiAgICAgIG91dGxpbmU6IDA7IH1cbiAgICAuZmlsdGVyLXBhbmVsX190aXRsZVthcmlhLWV4cGFuZGVkPSd0cnVlJ106YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2ljb25zL2lfY2FyZXQtZG93bl93aGl0ZS5zdmdcIik7IH1cbiAgLmZpbHRlci1wYW5lbF9fY29udGVudCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDQ4cHgpO1xuICAgIHBhZGRpbmc6IDMycHg7XG4gICAgb3ZlcmZsb3cteTogYXV0bzsgfVxuICAuZmlsdGVyLXBhbmVsLS1hY3RpdmUge1xuICAgIHRvcDogMCU7IH1cblxuLmRpc3RyaWN0cyB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgZGlzcGxheTogbm9uZTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICAuZGlzdHJpY3RzIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgLmRpc3RyaWN0IHtcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMzMyU7XG4gICAgcGFkZGluZzogMzJweCAwO1xuICAgIG1hcmdpbjogMDtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNjY2NmZDE7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gIC5kaXN0cmljdDpmaXJzdC1jaGlsZCB7XG4gICAgYm9yZGVyLWxlZnQ6IDA7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgLmRpc3RyaWN0X19tZXRhIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfSB9XG5cbi5maWd1cmUtLWZlYXR1cmVkIHtcbiAgbWFyZ2luLWxlZnQ6IC0zMnB4O1xuICBtYXJnaW4tcmlnaHQ6IC0zMnB4O1xuICBib3JkZXItcmFkaXVzOiAwOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAgIC5maWd1cmUtLWZlYXR1cmVkIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtNjRweDtcbiAgICAgIG1hcmdpbi1yaWdodDogLTY0cHg7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgLmZpZ3VyZS0tZmVhdHVyZWQge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBib3JkZXItcmFkaXVzOiA0cHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTAyM3B4KSB7XG4gICAgLmZpZ3VyZS0tZmVhdHVyZWQgaW1nIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7IH0gfVxuICAuZmlndXJlLS1mZWF0dXJlZCBmaWdjYXB0aW9uIHtcbiAgICBtYXJnaW4tbGVmdDogMzJweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDMycHg7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICAgIC5maWd1cmUtLWZlYXR1cmVkIGZpZ2NhcHRpb24ge1xuICAgICAgICBtYXJnaW4tbGVmdDogNjRweDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA2NHB4OyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAuZmlndXJlLS1mZWF0dXJlZCBmaWdjYXB0aW9uIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDsgfSB9XG5cbi52aWRlby0tZmVhdHVyZWQge1xuICBtYXJnaW4tbGVmdDogLTMycHg7XG4gIG1hcmdpbi1yaWdodDogLTMycHg7XG4gIGJvcmRlci1yYWRpdXM6IDA7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gICAgLnZpZGVvLS1mZWF0dXJlZCB7XG4gICAgICBtYXJnaW4tbGVmdDogLTY0cHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC02NHB4OyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgIC52aWRlby0tZmVhdHVyZWQge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBib3JkZXItcmFkaXVzOiA0cHg7IH0gfVxuXG4uYmxvY2txdW90ZS0tZmVhdHVyZWQge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIGJvcmRlcjogMDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgLmJsb2NrcXVvdGUtLWZlYXR1cmVkIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH0gfVxuICAuYmxvY2txdW90ZS0tZmVhdHVyZWQgLmJsb2NrcXVvdGVfX2ltYWdlIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgLmJsb2NrcXVvdGUtLWZlYXR1cmVkIC5ibG9ja3F1b3RlX19pbWFnZSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMjAlOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgIC5ibG9ja3F1b3RlLS1mZWF0dXJlZCAuYmxvY2txdW90ZV9fY29udGVudCB7XG4gICAgICB3aWR0aDogNzUlO1xuICAgICAgbWFyZ2luLWxlZnQ6IDUlOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gIC5zaG90cyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgLnNob3RzW2RhdGEtY29sdW1ucz0nMiddIC5zaG90LCAuc2hvdHMuYmFuZC0tY2FsbG91dCAuc2hvdCB7XG4gICAgd2lkdGg6IDQ4LjA3NjkyMzA3NjklO1xuICAgIG1hcmdpbi1sZWZ0OiAzLjg0NjE1Mzg0NjIlOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAuc2hvdHNbZGF0YS1jb2x1bW5zPScyJ10gLnNob3QsIC5zaG90cy5iYW5kLS1jYWxsb3V0IC5zaG90IHtcbiAgICB3aWR0aDogNDkuMjE4NzUlO1xuICAgIG1hcmdpbi1sZWZ0OiAxLjU2MjUlOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gIC5zaG90c1tkYXRhLWNvbHVtbnM9JzInXSAuc2hvdDpudGgtY2hpbGQob2RkKSwgLnNob3RzLmJhbmQtLWNhbGxvdXQgLnNob3Q6bnRoLWNoaWxkKG9kZCkge1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gIC5zaG90c1tkYXRhLWNvbHVtbnM9JzInXSAuc2hvdDpudGgtY2hpbGQoMSksIC5zaG90cy5iYW5kLS1jYWxsb3V0IC5zaG90Om50aC1jaGlsZCgxKSwgLnNob3RzW2RhdGEtY29sdW1ucz0nMiddIC5zaG90Om50aC1jaGlsZCgyKSwgLnNob3RzLmJhbmQtLWNhbGxvdXQgLnNob3Q6bnRoLWNoaWxkKDIpIHtcbiAgICBtYXJnaW4tdG9wOiAwOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gIC5zaG90c1tkYXRhLWNvbHVtbnM9JzMnXSAuc2hvdCB7XG4gICAgd2lkdGg6IDQ4LjA3NjkyMzA3NjklO1xuICAgIG1hcmdpbi1sZWZ0OiAzLjg0NjE1Mzg0NjIlOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAuc2hvdHNbZGF0YS1jb2x1bW5zPSczJ10gLnNob3Qge1xuICAgIHdpZHRoOiAzMi4xODc1JTtcbiAgICBtYXJnaW4tbGVmdDogMS43MTg3NSU7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgLnNob3RzW2RhdGEtY29sdW1ucz0nMyddIC5zaG90Om50aC1jaGlsZCgzbi0yKSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC5zaG90c1tkYXRhLWNvbHVtbnM9JzMnXSAuc2hvdDpudGgtY2hpbGQoM24tMikge1xuICAgIHdpZHRoOiAzMi4xODc1JTsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAuc2hvdHNbZGF0YS1jb2x1bW5zPSczJ10gLnNob3Q6bnRoLWNoaWxkKDNuLTEpIHtcbiAgICBtYXJnaW4tbGVmdDogMDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLnNob3RzW2RhdGEtY29sdW1ucz0nMyddIC5zaG90Om50aC1jaGlsZCgzbi0xKSB7XG4gICAgbWFyZ2luLWxlZnQ6IDEuNzE4NzUlOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAuc2hvdHNbZGF0YS1jb2x1bW5zPSczJ10gLnNob3Q6bnRoLWNoaWxkKDEpLCAuc2hvdHNbZGF0YS1jb2x1bW5zPSczJ10gLnNob3Q6bnRoLWNoaWxkKDIpLCAuc2hvdHNbZGF0YS1jb2x1bW5zPSczJ10gLnNob3Q6bnRoLWNoaWxkKDMpIHtcbiAgICBtYXJnaW4tdG9wOiAwOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gIC5zaG90c1tkYXRhLWNvbHVtbnM9JzQnXSAuc2hvdCB7XG4gICAgd2lkdGg6IDQ4LjA3NjkyMzA3NjklO1xuICAgIG1hcmdpbi1sZWZ0OiAzLjg0NjE1Mzg0NjIlOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAuc2hvdHNbZGF0YS1jb2x1bW5zPSc0J10gLnNob3Qge1xuICAgIHdpZHRoOiAyMy42NzE4NzUlO1xuICAgIG1hcmdpbi1sZWZ0OiAxLjc3MDgzMzMzMzMlOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gIC5zaG90c1tkYXRhLWNvbHVtbnM9JzQnXSAuc2hvdDpudGgtY2hpbGQob2RkKSB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC5zaG90c1tkYXRhLWNvbHVtbnM9JzQnXSAuc2hvdDpudGgtY2hpbGQob2RkKSB7XG4gICAgbWFyZ2luLWxlZnQ6IDEuNzcwODMzMzMzMyU7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC5zaG90c1tkYXRhLWNvbHVtbnM9JzQnXSAuc2hvdDpudGgtY2hpbGQoNG4tMykge1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gIC5zaG90c1tkYXRhLWNvbHVtbnM9JzQnXSAuc2hvdDpudGgtY2hpbGQoMSksIC5zaG90c1tkYXRhLWNvbHVtbnM9JzQnXSAuc2hvdDpudGgtY2hpbGQoMikge1xuICAgIG1hcmdpbi10b3A6IDA7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC5zaG90c1tkYXRhLWNvbHVtbnM9JzQnXSAuc2hvdDpudGgtY2hpbGQoMyksIC5zaG90c1tkYXRhLWNvbHVtbnM9JzQnXSAuc2hvdDpudGgtY2hpbGQoNCkge1xuICAgIG1hcmdpbi10b3A6IDA7IH0gfVxuXG4uc2hvdCB7XG4gIG1hcmdpbjogMCAwIDMycHg7IH1cbiAgQG1lZGlhIGFsbCBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpIHtcbiAgICAuc2hvdCB7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuOyB9IH1cbiAgLnNob3RfX3Bob3RvIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzMnB4OyB9XG4gIC5zaG90X19wcmVmaXgge1xuICAgIG1hcmdpbi1ib3R0b206IDhweDsgfVxuICAuc2hvdF9fdGl0bGUge1xuICAgIG1hcmdpbjogMDsgfVxuICAuc2hvdF9fc3VmZml4IHtcbiAgICBtYXJnaW4tdG9wOiA4cHg7IH1cbiAgLnNob3RfX2Rlc2NyaXB0aW9uIHtcbiAgICBtYXJnaW46IDE2cHggMCAwOyB9XG4gIC5zaG90X19idXR0b24ge1xuICAgIG1hcmdpbjogMzJweCAwIDA7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gICAgLnNob3QtLWhvcml6b250YWwge1xuICAgICAgZGlzcGxheTogZmxleDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAuc2hvdC0taG9yaXpvbnRhbCB7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gICAgLnNob3QtLWhvcml6b250YWwgLnNob3RfX3Bob3RvIHtcbiAgICAgIHdpZHRoOiA0OC4wNzY5MjMwNzY5JTsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAuc2hvdC0taG9yaXpvbnRhbCAuc2hvdF9fcGhvdG8ge1xuICAgICAgd2lkdGg6IDMyLjAzMTI1JTtcbiAgICAgIG1hcmdpbjogMDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAgIC5zaG90LS1ob3Jpem9udGFsIC5zaG90X19jb250ZW50IHtcbiAgICAgIHdpZHRoOiA0OC4wNzY5MjMwNzY5JTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAzLjg0NjE1Mzg0NjIlOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgIC5zaG90LS1ob3Jpem9udGFsIC5zaG90X19jb250ZW50IHtcbiAgICAgIHdpZHRoOiA2Mi44OTA2MjUlO1xuICAgICAgbWFyZ2luLWxlZnQ6IDUlOyB9IH1cbiAgLnNob3QtLWhvcml6b250YWwgLnNob3RfX3RpdGxlIHtcbiAgICBtYXJnaW46IDA7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgIC5zaG90LS1mZWF0dXJlZCB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBwYWRkaW5nOiAxMjhweCA2NHB4IDY0cHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTgxOTE5O1xuICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgIC5zaG90LS1mZWF0dXJlZDphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgwLCAwLCAwLCAwKSAyNCUsIHJnYmEoMCwgMCwgMCwgMC45KSA2NCUpO1xuICAgICAgLyogRkYzLjYtMTUgKi9cbiAgICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgwLCAwLCAwLCAwKSAyNCUsIHJnYmEoMCwgMCwgMCwgMC45KSA2NCUpO1xuICAgICAgLyogQ2hyb21lMTAtMjUsU2FmYXJpNS4xLTYgKi9cbiAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMCwgMCwgMCwgMCkgMjQlLCByZ2JhKDAsIDAsIDAsIDAuOSkgNjQlKTtcbiAgICAgIC8qIFczQywgSUUxMCssIEZGMTYrLCBDaHJvbWUyNissIE9wZXJhMTIrLCBTYWZhcmk3KyAqL1xuICAgICAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9JyMwMDAwMDAwMCcsIGVuZENvbG9yc3RyPScjMDAwMDAwJyxHcmFkaWVudFR5cGU9MCApO1xuICAgICAgLyogSUU2LTkgKi9cbiAgICAgIHotaW5kZXg6IDE7IH0gfVxuICAuc2hvdC0tZmVhdHVyZWQgLnNob3RfX3Bob3RvIHtcbiAgICBtYXJnaW4tbGVmdDogLTMycHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMzJweDsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAgICAgLnNob3QtLWZlYXR1cmVkIC5zaG90X19waG90byB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgIC5zaG90LS1mZWF0dXJlZCAuc2hvdF9fcGhvdG8ge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgei1pbmRleDogMDsgfVxuICAgICAgICAuc2hvdC0tZmVhdHVyZWQgLnNob3RfX3Bob3RvIHBpY3R1cmUge1xuICAgICAgICAgIGhlaWdodDogMTAwJTsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgLnNob3QtLWZlYXR1cmVkIC5zaG90X19waG90by0tcG9ydHJhaXQgLmZlYXR1cmVkLXNob3QtbGFuZHNjYXBlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gICAgLnNob3QtLWZlYXR1cmVkIC5zaG90X19waG90by0tcG9ydHJhaXQgLmZlYXR1cmVkLXNob3QtcG9ydHJhaXQge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgICAuc2hvdC0tZmVhdHVyZWQgLnNob3RfX3Bob3RvLS1wb3J0cmFpdCAuZmVhdHVyZWQtc2hvdC1wb3J0cmFpdCB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuICAuc2hvdC0tZmVhdHVyZWQgLnNob3RfX3Bob3RvIGltZyB7XG4gICAgYm9yZGVyLXJhZGl1czogMDsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAgICAgLnNob3QtLWZlYXR1cmVkIC5zaG90X19waG90byBpbWcge1xuICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgIC5zaG90LS1mZWF0dXJlZCAuc2hvdF9fcGhvdG8gaW1nIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAnb2JqZWN0LWZpdDogY292ZXI7JzsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAuc2hvdC0tZmVhdHVyZWQgLnNob3RfX3RpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMjRweDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAuc2hvdC0tZmVhdHVyZWQgLnNob3RfX3RpdGxlIGEge1xuICAgICAgY29sb3I6ICNmZmY7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgLnNob3QtLWZlYXR1cmVkIC5zaG90X190aXRsZSBhOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjQsIDI1LCAyNSwgMC41KTsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAuc2hvdC0tZmVhdHVyZWQgLnNob3RfX2NvbnRlbnQge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgei1pbmRleDogMjsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAuc2hvdC0tZmVhdHVyZWQgLnNob3RfX3ByZWZpeCxcbiAgICAuc2hvdC0tZmVhdHVyZWQgLnNob3RfX3N1ZmZpeCB7XG4gICAgICBjb2xvcjogI2ZmZjsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAuc2hvdC0tZmVhdHVyZWQgLnNob3RfX2J1dHRvbiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgY29sb3I6ICMwNzIyMzU7IH0gfVxuXG4udGFncyB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luLXRvcDogOHB4OyB9XG5cbi50YWcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiA0cHggMCAwO1xuICBjb2xvcjogIzE4MTkxOTtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBmb250LXdlaWdodDogNjAwO1xuICBsaW5lLWhlaWdodDogMS41OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAgIC50YWcge1xuICAgICAgZm9udC1zaXplOiAxOXB4OyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgIC50YWcge1xuICAgICAgZm9udC1zaXplOiAyMXB4OyB9IH1cbiAgLnRhZzpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXRvcDogMDsgfVxuXG4uZGlhZ3JhbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIHBhZGRpbmc6IDMycHg7XG4gIG1hcmdpbjogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y2ZjZmNjtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGNvdW50ZXItcmVzZXQ6IHNlY3Rpb247IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gICAgLmRpYWdyYW0ge1xuICAgICAgcGFkZGluZzogNDhweCAzMnB4O1xuICAgICAgZm9udC1zaXplOiAxNnB4OyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgIC5kaWFncmFtIHtcbiAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgcGFkZGluZzogNjRweCAzMnB4OyB9IH1cbiAgLmRpYWdyYW0gbGkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMzJweDtcbiAgICBtYXJnaW46IDMycHggMTJweCAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMxNDc3YTk7XG4gICAgYm9yZGVyOiAycHggc29saWQgIzA3MjIzNTtcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHotaW5kZXg6IDI7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAuZGlhZ3JhbSBsaSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMjgwcHgpIHtcbiAgICAgIC5kaWFncmFtIGxpIHtcbiAgICAgICAgcGFkZGluZzogMjRweDsgfSB9XG4gICAgLmRpYWdyYW0gbGk6YmVmb3JlIHtcbiAgICAgIGNvdW50ZXItaW5jcmVtZW50OiBzZWN0aW9uO1xuICAgICAgY29udGVudDogY291bnRlcnMoc2VjdGlvbiwgXCIuXCIpO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIHdpZHRoOiAzMnB4O1xuICAgICAgaGVpZ2h0OiAzMnB4O1xuICAgICAgbWFyZ2luOiAtMTZweCAwIDAgLTE2cHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDcyMjM1O1xuICAgICAgYm9yZGVyOiAycHggc29saWQgIzA3MjIzNTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICB6LWluZGV4OiAyOyB9XG4gICAgLmRpYWdyYW0gbGk6Zmlyc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLXRvcDogMDsgfVxuXG4udHdlZXQge1xuICBwYWRkaW5nOiAzMnB4O1xuICBtYXJnaW46IDAgMCAyOHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDcyMjM1O1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGNvbG9yOiAjZmZmOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAgIC50d2VldCB7XG4gICAgICBwYWRkaW5nOiA0OHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzJweDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAudHdlZXQge1xuICAgICAgcGFkZGluZzogNjRweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDM4cHg7IH0gfVxuICAudHdlZXQgYTpsaW5rIHtcbiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjk1KTsgfVxuICAudHdlZXQgYTp2aXNpdGVkIHtcbiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjk1KTsgfVxuICAudHdlZXQgYTpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6ICNmZmY7IH1cbiAgLnR3ZWV0IGE6Zm9jdXMsIC50d2VldCBhOmZvY3VzOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZiZjQ3O1xuICAgIGNvbG9yOiAjMDcyMjM1OyB9XG4gIC50d2VldCBhOmFjdGl2ZSB7XG4gICAgY29sb3I6ICMwNzIyMzU7IH1cbiAgLnR3ZWV0IGFbdGFyZ2V0PSdfYmxhbmsnXTphZnRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzBhMzA0YztcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvaWNvbnMvaV9leHRlcm5hbF93aGl0ZS5zdmdcIik7IH1cbiAgLnR3ZWV0X19wcm9maWxlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgICAudHdlZXRfX3Byb2ZpbGUgc3ZnIHtcbiAgICAgIHdpZHRoOiAyNHB4O1xuICAgICAgaGVpZ2h0OiAyNHB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxNnB4OyB9XG4gICAgLnR3ZWV0X19wcm9maWxlIGEge1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuICAudHdlZXRfX21lc3NhZ2Uge1xuICAgIG1hcmdpbi10b3A6IDMycHg7IH1cbiAgLnR3ZWV0X190aW1lc3RhbXAge1xuICAgIG1hcmdpbi10b3A6IDMycHg7XG4gICAgZm9udC1zaXplOiAxNHB4OyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gICAgICAudHdlZXRfX3RpbWVzdGFtcCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDsgfSB9XG5cbi5ob2xpZGF5IHtcbiAgbWFyZ2luOiAwIDAgMjhweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBib3gtc2hhZG93OiAwIDJweCA0cHggcmdiYSgyNCwgMjUsIDI1LCAwLjE2KTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDE1MG1zIGN1YmljLWJlemllcigwLjc3LCAwLCAwLjE3NSwgMSk7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gICAgLmhvbGlkYXkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzJweDtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgLmhvbGlkYXkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzhweDsgfSB9XG4gIC5ob2xpZGF5X19oZWFkZXIge1xuICAgIHBhZGRpbmc6IDMycHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzE0NzdhOTtcbiAgICBjb2xvcjogI2ZmZjsgfVxuICAuaG9saWRheV9fY29udGVudCB7XG4gICAgcGFkZGluZzogMzJweDsgfVxuICAuaG9saWRheV9fdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMTRweDsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgIC5ob2xpZGF5X190aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDsgfSB9XG4gIC5ob2xpZGF5X19kYXRlIHtcbiAgICBmb250LXNpemU6IDE5cHg7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAgICAgLmhvbGlkYXlfX2RhdGUge1xuICAgICAgICBmb250LXNpemU6IDIxcHg7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgIC5ob2xpZGF5X19kYXRlIHtcbiAgICAgICAgZm9udC1zaXplOiAyNHB4OyB9IH1cbiAgLmhvbGlkYXlfX25hbWUge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgZm9udC1zaXplOiAxNnB4OyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gICAgICAuaG9saWRheV9fbmFtZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTlweDsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgLmhvbGlkYXlfX25hbWUge1xuICAgICAgICBmb250LXNpemU6IDIxcHg7IH0gfVxuICAuaG9saWRheTpob3ZlciB7XG4gICAgYm94LXNoYWRvdzogMCA4cHggMTZweCByZ2JhKDI0LCAyNSwgMjUsIDAuMTYpOyB9XG5cbi5ncmFwaGljLWN0YSB7XG4gIG1hcmdpbjogMCAwIDI4cHg7XG4gIGJvcmRlci1yYWRpdXM6IDRweDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICAuZ3JhcGhpYy1jdGEge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzJweDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAuZ3JhcGhpYy1jdGEge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzhweDsgfSB9XG4gIC5ncmFwaGljLWN0YV9fbGluaywgLmdyYXBoaWMtY3RhX19saW5rW3RhcmdldD1cIl9ibGFua1wiXSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgICAuZ3JhcGhpYy1jdGFfX2xpbms6YmVmb3JlLCAuZ3JhcGhpYy1jdGFfX2xpbmtbdGFyZ2V0PVwiX2JsYW5rXCJdOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjQsIDI1LCAyNSwgMC4yNSk7XG4gICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAxNTBtcyBjdWJpYy1iZXppZXIoMC43NywgMCwgMC4xNzUsIDEpO1xuICAgICAgei1pbmRleDogMTsgfVxuICAgIC5ncmFwaGljLWN0YV9fbGluazphZnRlciwgLmdyYXBoaWMtY3RhX19saW5rW3RhcmdldD1cIl9ibGFua1wiXTphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAxMDAlOyB9XG4gICAgLmdyYXBoaWMtY3RhX19saW5rOmhvdmVyOmJlZm9yZSwgLmdyYXBoaWMtY3RhX19saW5rW3RhcmdldD1cIl9ibGFua1wiXTpob3ZlcjpiZWZvcmUge1xuICAgICAgb3BhY2l0eTogMTsgfVxuICAuZ3JhcGhpYy1jdGFfX2dyYXBoaWMge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bzsgfVxuXG4uaGVybyB7XG4gIHBhZGRpbmc6IDRyZW0gMDtcbiAgYmFja2dyb3VuZDogIzA3MjIzNSB1cmwoXCIuLi9pbWcvcF9oZXJvLmpwZ1wiKSBuby1yZXBlYXQgNTAlIDUwJS9jb3ZlcjtcbiAgYm9yZGVyLXRvcDogNHB4IHNvbGlkICNhZTkzNmM7XG4gIGJvcmRlci1ib3R0b206IDRweCBzb2xpZCAjYWU5MzZjO1xuICBjb2xvcjogI2ZmZjsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICAuaGVyby5iYW5kIHtcbiAgICAgIHBhZGRpbmc6IDY0cHggMDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAuaGVybyB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgYm9yZGVyLXRvcC13aWR0aDogOHB4O1xuICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogOHB4O1xuICAgICAgbWluLWhlaWdodDogY2FsYyg3MHZoIC0gNXJlbSk7IH0gfVxuICAuaGVyb19fc2VhbCB7XG4gICAgd2lkdGg6IDk2cHg7XG4gICAgaGVpZ2h0OiA5NnB4O1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9sX3NlYWwtY29sb3Iuc3ZnXCIpOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gICAgICAuaGVyb19fc2VhbCB7XG4gICAgICAgIHdpZHRoOiAxMjhweDtcbiAgICAgICAgaGVpZ2h0OiAxMjhweDsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgLmhlcm9fX3NlYWwge1xuICAgICAgICB3aWR0aDogMTkycHg7XG4gICAgICAgIGhlaWdodDogMTkycHg7IH0gfVxuICAuaGVyb19fdGl0bGUge1xuICAgIG1hcmdpbjogMTZweCAwIDA7XG4gICAgZm9udC1zaXplOiAyOHB4O1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gICAgICAuaGVyb19fdGl0bGUge1xuICAgICAgICBmb250LXNpemU6IDMycHg7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgIC5oZXJvX190aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogNjJweDsgfSB9XG4gIC5oZXJvX19zZWFyY2gge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW46IDMycHggMCAwOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gICAgICAuaGVyb19fc2VhcmNoIHtcbiAgICAgICAgbWFyZ2luLXRvcDogNjRweDsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgLmhlcm9fX3NlYXJjaCB7XG4gICAgICAgIHdpZHRoOiA0OS4yMTg3NSU7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH0gfVxuICAgIC5oZXJvX19zZWFyY2ggLmZvcm1ibG9jayB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAuaGVyb19fc2VhcmNoIC5mb3JtYmxvY2tfX2xhYmVsIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IC0xMDAwMHB4O1xuICAgICAgdG9wOiBhdXRvO1xuICAgICAgd2lkdGg6IDFweDtcbiAgICAgIGhlaWdodDogMXB4O1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAgIC5oZXJvX19zZWFyY2ggLmZvcm1ibG9ja19fZmllbGQge1xuICAgICAgcGFkZGluZy1sZWZ0OiA0OHB4O1xuICAgICAgYm9yZGVyLWNvbG9yOiAjZmZmOyB9XG4gICAgLmhlcm9fX3NlYXJjaCBbdHlwZT0nc3VibWl0J10ge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICBsZWZ0OiA4cHg7XG4gICAgICB3aWR0aDogMzJweDtcbiAgICAgIGhlaWdodDogMzJweDtcbiAgICAgIHBhZGRpbmc6IDE2cHg7XG4gICAgICBtYXJnaW46IC0xNnB4IDAgMDtcbiAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9pY29ucy9pX3NlYXJjaC5zdmdcIikgbm8tcmVwZWF0IDUwJSA1MCUvMTZweCBhdXRvO1xuICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgIGZvbnQtc2l6ZTogMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgICAgYm9yZGVyOiAwOyB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAgIC5oZXJvX19zZWFyY2ggW3R5cGU9J3N1Ym1pdCddIHtcbiAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgb3JkZXI6IDE7IH0gfVxuICAgICAgLmhlcm9fX3NlYXJjaCBbdHlwZT0nc3VibWl0J106aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgICAgLmhlcm9fX3NlYXJjaCBbdHlwZT0nc3VibWl0J106Zm9jdXMge1xuICAgICAgICBvdXRsaW5lOiAwO1xuICAgICAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAzcHggI2ZmYmY0NzsgfVxuICAuaGVyb19fYWN0aW9ucyB7XG4gICAgcGFkZGluZzogMzJweCAwIDA7XG4gICAgbWFyZ2luOiAzMnB4IDAgMDtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIzA3MjIzNTsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAgICAgLmhlcm9fX2FjdGlvbnMge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBtYXJnaW4tdG9wOiA2NHB4O1xuICAgICAgICBib3JkZXItdG9wOiAwOyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTI4MHB4KSB7XG4gICAgICAuaGVyb19fYWN0aW9ucyB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgbWFyZ2luOiAzMnB4IDMycHggMCAwOyB9IH1cbiAgICAuaGVyb19fYWN0aW9ucyB1bCB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gICAgICAgIC5oZXJvX19hY3Rpb25zIHVsIHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAgICAgLmhlcm9fX2FjdGlvbnMgbGkge1xuICAgICAgICBtYXJnaW46IDAgMCAwIDE2cHg7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAgICAgLmhlcm9fX2FjdGlvbnMgbGk6Zmlyc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW46IDA7IH0gfVxuICAgIC5oZXJvX19hY3Rpb25zIC5idXR0b24sIC5oZXJvX19hY3Rpb25zIC50b2dnbGUsIC5oZXJvX19hY3Rpb25zIC5wYW5lbC1ncm91cF9fdG9nZ2xlLCAuaGVyb19fYWN0aW9ucyAuYWxlcnRfX2Rpc21pc3MsIC5oZXJvX19hY3Rpb25zIC5jYXJkX19hY3Rpb24sIC5oZXJvX19hY3Rpb25zIC5zaG90X19idXR0b24ge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBib3JkZXItY29sb3I6ICMxNDc3YTk7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAgIC5oZXJvX19hY3Rpb25zIC5idXR0b246aG92ZXIsIC5oZXJvX19hY3Rpb25zIC50b2dnbGU6aG92ZXIsIC5oZXJvX19hY3Rpb25zIC5wYW5lbC1ncm91cF9fdG9nZ2xlOmhvdmVyLCAuaGVyb19fYWN0aW9ucyAuYWxlcnRfX2Rpc21pc3M6aG92ZXIsIC5oZXJvX19hY3Rpb25zIC5jYXJkX19hY3Rpb246aG92ZXIsIC5oZXJvX19hY3Rpb25zIC5zaG90X19idXR0b246aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGEzMDRjOyB9XG5cbi53ZWJmb3JtLWVsZW1lbnQtaGVscDpsaW5rIHtcbiAgd2lkdGg6IDE4cHg7IH1cblxuLmZpZWxkc2V0LWxlZ2VuZCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDQycHggMCAyMXB4O1xuICBmb250OiA2MDAgMjFweC8xLjI1IFwiT3BlbiBTYW5zXCIsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gICAgLmZpZWxkc2V0LWxlZ2VuZCB7XG4gICAgICBtYXJnaW46IDQ4cHggMCAyNHB4O1xuICAgICAgZm9udC1zaXplOiAyNHB4OyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgIC5maWVsZHNldC1sZWdlbmQge1xuICAgICAgbWFyZ2luOiA1NnB4IDAgMjhweDtcbiAgICAgIGZvbnQtc2l6ZTogMjhweDsgfSB9XG4gIGZpZWxkc2V0IGZpZWxkc2V0IC5maWVsZHNldC1sZWdlbmQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMjhweCAwIDE5cHg7XG4gICAgZm9udDogNDAwIDE5cHgvMS4yNSBcIk9wZW4gU2Fuc1wiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gICAgICBmaWVsZHNldCBmaWVsZHNldCAuZmllbGRzZXQtbGVnZW5kIHtcbiAgICAgICAgbWFyZ2luOiA0MnB4IDAgMjFweDtcbiAgICAgICAgZm9udC1zaXplOiAyMXB4OyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICBmaWVsZHNldCBmaWVsZHNldCAuZmllbGRzZXQtbGVnZW5kIHtcbiAgICAgICAgbWFyZ2luOiA0OHB4IDAgMjRweDtcbiAgICAgICAgZm9udC1zaXplOiAyNHB4OyB9IH1cblxuLndlYmZvcm0tbXVsdGlwbGUtdGFibGUge1xuICB3aWR0aDogMTAwJTsgfVxuICAud2ViZm9ybS1tdWx0aXBsZS10YWJsZSAudGFibGVkcmFnLWhhbmRsZSAuaGFuZGxlIHtcbiAgICB3aWR0aDogMjhweDtcbiAgICBoZWlnaHQ6IDI4cHg7XG4gICAgbWFyZ2luOiAwOyB9XG4gIC53ZWJmb3JtLW11bHRpcGxlLXRhYmxlIHRkIGlucHV0W3R5cGU9XCJpbWFnZVwiXSB7XG4gICAgd2lkdGg6IDIycHg7XG4gICAgaGVpZ2h0OiAyMnB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAud2ViZm9ybS1tdWx0aXBsZS10YWJsZSArIC5jb250YWluZXItaW5saW5lIC5mb3JtLW51bWJlciB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiBhdXRvOyB9XG4gIC53ZWJmb3JtLW11bHRpcGxlLXRhYmxlIC53ZWJmb3JtLW11bHRpcGxlLXRhYmxlZHJhZy10b2dnbGUtd2VpZ2h0IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZzogOHB4IDE2cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg3LCAzNCwgNTMsIDAuOTUpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgYm9yZGVyOiAycHggc29saWQgcmdiYSg3LCAzNCwgNTMsIDAuOTUpO1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBmb250LWZhbWlseTogXCJPcGVuIFNhbnNcIiwgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDE1MG1zIGN1YmljLWJlemllcigwLjc3LCAwLCAwLjE3NSwgMSksIGJvcmRlciAxNTBtcyBjdWJpYy1iZXppZXIoMC43NywgMCwgMC4xNzUsIDEpLCBib3gtc2hhZG93IDE1MG1zIGN1YmljLWJlemllcigwLjc3LCAwLCAwLjE3NSwgMSk7XG4gICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gICAgICAud2ViZm9ybS1tdWx0aXBsZS10YWJsZSAud2ViZm9ybS1tdWx0aXBsZS10YWJsZWRyYWctdG9nZ2xlLXdlaWdodCB7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBmb250LXNpemU6IDE2cHg7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgIC53ZWJmb3JtLW11bHRpcGxlLXRhYmxlIC53ZWJmb3JtLW11bHRpcGxlLXRhYmxlZHJhZy10b2dnbGUtd2VpZ2h0IHtcbiAgICAgICAgZm9udC1zaXplOiAxOXB4OyB9IH1cbiAgICAud2ViZm9ybS1tdWx0aXBsZS10YWJsZSAud2ViZm9ybS1tdWx0aXBsZS10YWJsZWRyYWctdG9nZ2xlLXdlaWdodDpsaW5rLCAud2ViZm9ybS1tdWx0aXBsZS10YWJsZSAud2ViZm9ybS1tdWx0aXBsZS10YWJsZWRyYWctdG9nZ2xlLXdlaWdodDp2aXNpdGVkIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoNywgMzQsIDUzLCAwLjk1KTtcbiAgICAgIGJvcmRlci1jb2xvcjogcmdiYSg3LCAzNCwgNTMsIDAuOTUpO1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgICAud2ViZm9ybS1tdWx0aXBsZS10YWJsZSAud2ViZm9ybS1tdWx0aXBsZS10YWJsZWRyYWctdG9nZ2xlLXdlaWdodDpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzA3MjIzNTtcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDRweCAjZmZiZjQ3O1xuICAgICAgYm9yZGVyLWNvbG9yOiAjMDcyMjM1O1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBvdXRsaW5lOiAwOyB9XG4gICAgLndlYmZvcm0tbXVsdGlwbGUtdGFibGUgLndlYmZvcm0tbXVsdGlwbGUtdGFibGVkcmFnLXRvZ2dsZS13ZWlnaHQ6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzA3MjIzNTtcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDRweCByZ2JhKDcsIDM0LCA1MywgMC4xNSk7XG4gICAgICBib3JkZXItY29sb3I6ICMwNzIyMzU7XG4gICAgICBjb2xvcjogI2ZmZjsgfVxuXG4uZm9ybWJsb2NrIC5hbGVydCB7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLm5vLWRyYWctc2VsZWN0IHtcbiAgdXNlci1kcmFnOiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cblxuLnVpLW1lbnUgLnVpLW1lbnUtaXRlbS13cmFwcGVyIHtcbiAgcGFkZGluZzogOHB4OyB9XG5cbi51aS1zdGF0ZS1hY3RpdmUsXG4udWktd2lkZ2V0LWNvbnRlbnQgLnVpLXN0YXRlLWFjdGl2ZSxcbi51aS13aWRnZXQtaGVhZGVyIC51aS1zdGF0ZS1hY3RpdmUsXG5hLnVpLWJ1dHRvbjphY3RpdmUsXG4udWktYnV0dG9uOmFjdGl2ZSxcbi51aS1idXR0b24udWktc3RhdGUtYWN0aXZlOmhvdmVyIHtcbiAgbWFyZ2luOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjJmNGY5O1xuICBib3JkZXI6IDA7XG4gIGNvbG9yOiAjMDA0MWJhOyB9XG5cbi51aS1kYXRlcGlja2VyLXRyaWdnZXIge1xuICB3aWR0aDogNDRweCAhaW1wb3J0YW50O1xuICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xuICBib3JkZXItbGVmdDogMCAhaW1wb3J0YW50O1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDAgIWltcG9ydGFudDsgfVxuICAudWktZGF0ZXBpY2tlci10cmlnZ2VyOmhvdmVyIHtcbiAgICBib3gtc2hhZG93OiAtMnB4IDAgMCAwICMwMDJmODcgIWltcG9ydGFudDsgfVxuICAudWktZGF0ZXBpY2tlci10cmlnZ2VyOmZvY3VzIHtcbiAgICBib3gtc2hhZG93OiAtMnB4IDAgMCAwICMwMDJmODcsIDAgMCAwIDRweCAjZmZiZjQ3ICFpbXBvcnRhbnQ7IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDYzOXB4KSB7XG4gIC5mb3JtLS1zZWFyY2gtbG9jYXRpb24gLmZvcm1ibG9ja19fZmllbGQtLWlubGluZSB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9IH1cblxuLmZvcm0tLXNlYXJjaC1sb2NhdGlvbiAudWktYXV0b2NvbXBsZXRlLWlucHV0IHtcbiAgcGFkZGluZy1yaWdodDogMjRweDtcbiAgZmxleC1iYXNpczogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMTZweDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNjM5cHgpIHtcbiAgICAuZm9ybS0tc2VhcmNoLWxvY2F0aW9uIC51aS1hdXRvY29tcGxldGUtaW5wdXQgKyAuYnV0dG9uLCAuZm9ybS0tc2VhcmNoLWxvY2F0aW9uIC51aS1hdXRvY29tcGxldGUtaW5wdXQgKyAudG9nZ2xlLCAuZm9ybS0tc2VhcmNoLWxvY2F0aW9uIC51aS1hdXRvY29tcGxldGUtaW5wdXQgKyAucGFuZWwtZ3JvdXBfX3RvZ2dsZSwgLmZvcm0tLXNlYXJjaC1sb2NhdGlvbiAudWktYXV0b2NvbXBsZXRlLWlucHV0ICsgLmFsZXJ0X19kaXNtaXNzLCAuZm9ybS0tc2VhcmNoLWxvY2F0aW9uIC51aS1hdXRvY29tcGxldGUtaW5wdXQgKyAuY2FyZF9fYWN0aW9uLCAuZm9ybS0tc2VhcmNoLWxvY2F0aW9uIC51aS1hdXRvY29tcGxldGUtaW5wdXQgKyAuc2hvdF9fYnV0dG9uIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gICAgLmZvcm0tLXNlYXJjaC1sb2NhdGlvbiAudWktYXV0b2NvbXBsZXRlLWlucHV0IHtcbiAgICAgIG1pbi13aWR0aDogMzAwcHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9IH1cblxuLnVpLWF1dG9jb21wbGV0ZS51aS1tZW51IC51aS1tZW51LWl0ZW0td3JhcHBlciB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbmZpZWxkc2V0IC50aXRsZS0tc2Vjb25kYXJ5IC50aXRsZV9fbGFiZWwsIGZpZWxkc2V0IC5iYW5kX190aXRsZSAudGl0bGVfX2xhYmVsIHtcbiAgbWFyZ2luLXRvcDogMDsgfVxuXG4uY2FyZC5jYXJkLS1jb3VydC1kYXRlLWZvcm0gLmNhcmRfX3RpdGxlLS1vciB7XG4gIG1hcmdpbjogMTZweCAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLmNhcmQuY2FyZC0tY291cnQtZGF0ZS1mb3JtIC5jYXJkX190aXRsZS0tb3I6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgY29udGVudDogXCJcXDIwMTRcIjtcbiAgICBtYXJnaW4tcmlnaHQ6IDhweDsgfVxuICAuY2FyZC5jYXJkLS1jb3VydC1kYXRlLWZvcm0gLmNhcmRfX3RpdGxlLS1vcjphZnRlciB7XG4gICAgZGlzcGxheTogaW5saW5lO1xuICAgIGNvbnRlbnQ6IFwiXFwyMDE0XCI7XG4gICAgbWFyZ2luLWxlZnQ6IDhweDsgfVxuXG4uY2FyZC5jYXJkLS1jb3VydC1kYXRlLWZvcm0gYSB7XG4gIGNvbG9yOiAjZmZmO1xuICBmb250LXdlaWdodDogNjAwOyB9XG4gIC5jYXJkLmNhcmQtLWNvdXJ0LWRhdGUtZm9ybSBhOmhvdmVyIHtcbiAgICBjb2xvcjogIzA3MjIzNTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjZmNmY2OyB9XG4gIC5jYXJkLmNhcmQtLWNvdXJ0LWRhdGUtZm9ybSBhOmZvY3VzIHtcbiAgICBjb2xvcjogIzA3MjIzNTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjZmNmY2OyB9XG4gIC5jYXJkLmNhcmQtLWNvdXJ0LWRhdGUtZm9ybSBhOmFjdGl2ZSB7XG4gICAgY29sb3I6ICNmZmY7IH1cblxuLmNhcmQuY2FyZC0tY291cnQtZGF0ZS1mb3JtIC5idXR0b24sIC5jYXJkLmNhcmQtLWNvdXJ0LWRhdGUtZm9ybSAudG9nZ2xlLCAuY2FyZC5jYXJkLS1jb3VydC1kYXRlLWZvcm0gLnBhbmVsLWdyb3VwX190b2dnbGUsIC5jYXJkLmNhcmQtLWNvdXJ0LWRhdGUtZm9ybSAuYWxlcnRfX2Rpc21pc3MsIC5jYXJkLmNhcmQtLWNvdXJ0LWRhdGUtZm9ybSAuY2FyZF9fYWN0aW9uLCAuY2FyZC5jYXJkLS1jb3VydC1kYXRlLWZvcm0gLnNob3RfX2J1dHRvbiB7XG4gIG1hcmdpbi10b3A6IDE2cHg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gICAgLmNhcmQuY2FyZC0tY291cnQtZGF0ZS1mb3JtIC5idXR0b24sIC5jYXJkLmNhcmQtLWNvdXJ0LWRhdGUtZm9ybSAudG9nZ2xlLCAuY2FyZC5jYXJkLS1jb3VydC1kYXRlLWZvcm0gLnBhbmVsLWdyb3VwX190b2dnbGUsIC5jYXJkLmNhcmQtLWNvdXJ0LWRhdGUtZm9ybSAuYWxlcnRfX2Rpc21pc3MsIC5jYXJkLmNhcmQtLWNvdXJ0LWRhdGUtZm9ybSAuY2FyZF9fYWN0aW9uLCAuY2FyZC5jYXJkLS1jb3VydC1kYXRlLWZvcm0gLnNob3RfX2J1dHRvbiB7XG4gICAgICBtYXJnaW46IDhweCAwIDAgOHB4OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSBhbmQgKG1heC13aWR0aDogMTAyM3B4KSB7XG4gIC5jYXJkLmNhcmQtLWNvdXJ0LWRhdGUtZm9ybSB7XG4gICAgcGFkZGluZzogNDhweDsgfSB9XG5cbi5jYXJkLmNhcmQtLWNvdXJ0LWRhdGUtZm9ybSAuY2FyZF9fdGl0bGUgKyAuZm9ybWJsb2NrIHtcbiAgbWFyZ2luOiAwIDAgMTZweCAwOyB9XG5cbi5jYXJkLmNhcmQtLWNvdXJ0LWRhdGUtZm9ybSAuZm9ybWJsb2NrX19maWVsZC0taW5saW5lIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNjM5cHgpIHtcbiAgICAuY2FyZC5jYXJkLS1jb3VydC1kYXRlLWZvcm0gLmZvcm1ibG9ja19fZmllbGQtLWlubGluZSB7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNjM5cHgpIHtcbiAgICAuY2FyZC5jYXJkLS1jb3VydC1kYXRlLWZvcm0gLmZvcm1ibG9ja19fZmllbGQtLWlubGluZSBpbnB1dFt0eXBlPSd0ZXh0J10ge1xuICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNjM5cHgpIHtcbiAgICAuY2FyZC5jYXJkLS1jb3VydC1kYXRlLWZvcm0gLmZvcm1ibG9ja19fZmllbGQtLWlubGluZSBpbnB1dFt0eXBlPSdzdWJtaXQnXSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1hcmdpbjogOHB4IDAgMDsgfSB9XG5cbmJvZHkuaGFzLWZpbHRlci1wYW5lbCAuc2hvcnRjdXQtLWhlYWRlciB7XG4gIGJvdHRvbTogNjRweDsgfVxuXG5ib2R5Lmhhcy1maWx0ZXItcGFuZWwgLmZvb3Rlci1jb250YWluZXIge1xuICBtYXJnaW4tYm90dG9tOiA0OHB4OyB9XG5cbi5iYW5kLS1jYWxsb3V0IHtcbiAgcGFkZGluZzogMzJweCAwOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAgIC5iYW5kLS1jYWxsb3V0IHtcbiAgICAgIHBhZGRpbmc6IDY0cHggMDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAuYmFuZC0tY2FsbG91dCB7XG4gICAgICBwYWRkaW5nOiAxMjhweCAwOyB9IH1cbiAgLmJhbmQtLWNhbGxvdXQgLmJhbmRfX3BhcnRzIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkgYW5kIChtYXgtd2lkdGg6IDEwMjNweCkge1xuICAuYmFuZC0tY2FsbG91dCAuYmFuZF9fcGFydDpmaXJzdC1jaGlsZCB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuICAuYmFuZC0tY2FsbG91dCAuYmFuZF9fcGFydDpudGgtY2hpbGQoMikge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAuYmFuZC0tY2FsbG91dCAuYmFuZF9fcGFydDpudGgtY2hpbGQoMikge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9IH1cbiAgLmJhbmQtLWNhbGxvdXQgaW1nIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBoZWlnaHQ6IGF1dG87IH1cblxuLmJhbmQtLWZvb3Rub3RlIHtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luLXRvcDogMzJweDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICAuYmFuZC0tZm9vdG5vdGUge1xuICAgICAgbWFyZ2luLXRvcDogNDhweDtcbiAgICAgIHBhZGRpbmc6IDA7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgLmJhbmQtLWZvb3Rub3RlIHtcbiAgICAgIG1hcmdpbi10b3A6IDY0cHg7XG4gICAgICBwYWRkaW5nOiAwOyB9IH1cbiAgLmJhbmQtLWZvb3Rub3RlOm9ubHktY2hpbGQge1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICAgIC5iYW5kLS1mb290bm90ZTpvbmx5LWNoaWxkIHtcbiAgICAgICAgcGFkZGluZzogMDsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgLmJhbmQtLWZvb3Rub3RlOm9ubHktY2hpbGQge1xuICAgICAgICBwYWRkaW5nOiAwOyB9IH1cbiAgLmJhbmQtLWZvb3Rub3RlIC5iYW5kX19wYXJ0IHtcbiAgICBwYWRkaW5nOiAxNnB4OyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gICAgICAuYmFuZC0tZm9vdG5vdGUgLmJhbmRfX3BhcnQge1xuICAgICAgICBwYWRkaW5nOiAyNHB4OyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAuYmFuZC0tZm9vdG5vdGUgLmJhbmRfX3BhcnQge1xuICAgICAgICBwYWRkaW5nOiAzMnB4OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSBhbmQgKG1heC13aWR0aDogMTAyM3B4KSB7XG4gIC5iYW5kLmJhbmQtLWNvdXJ0LWRhdGUtZm9ybSAuYmFuZF9fcGFydDpmaXJzdC1jaGlsZCB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIGFuZCAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgLmJhbmQuYmFuZC0tZm9yY2UtdGFibGV0LXN0YWNrIC5iYW5kX19wYXJ0OmZpcnN0LWNoaWxkLFxuICAuYmFuZFtkYXRhLWNvbHVtbnM9JzInXSAuYmFuZF9fcGFydDpmaXJzdC1jaGlsZCxcbiAgLmJhbmQuYmFuZC0tY2FsbG91dCAuYmFuZF9fcGFydDpmaXJzdC1jaGlsZCB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIGFuZCAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgLmJhbmQuYmFuZC0tZm9yY2UtdGFibGV0LXN0YWNrIC5iYW5kX19wYXJ0Om50aC1jaGlsZCgyKSwgLmJhbmRbZGF0YS1jb2x1bW5zPScyJ10gLmJhbmRfX3BhcnQ6bnRoLWNoaWxkKDIpLCAuYmFuZC5iYW5kLS1jYWxsb3V0IC5iYW5kX19wYXJ0Om50aC1jaGlsZCgyKSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLXRvcDogNjRweDtcbiAgICBtYXJnaW4tbGVmdDogMDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkgYW5kIChtYXgtd2lkdGg6IDEwMjNweCkge1xuICAuYmFuZC5iYW5kLS1jb3VudHktbmV3cy1yZWxhdGVkIC5iYW5kX19wYXJ0OmZpcnN0LWNoaWxkIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkgYW5kIChtYXgtd2lkdGg6IDEwMjNweCkge1xuICAuYmFuZC5iYW5kLS1jb3VudHktbmV3cy1yZWxhdGVkIC5iYW5kX19wYXJ0Om50aC1jaGlsZCgyKSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXRvcDogNjRweDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkgYW5kIChtYXgtd2lkdGg6IDEwMjNweCkge1xuICAuYmFuZC5iYW5kLS1jb3VudHktbmV3cy1yZWxhdGVkIC5iYW5kX19wYXJ0Om50aC1jaGlsZCgyKSAubGlua3Mge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiA0OC4wNzY5MjMwNzY5JTsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkgYW5kIChtYXgtd2lkdGg6IDEwMjNweCkge1xuICAuYmFuZC5iYW5kLS1jb3VudHktbmV3cy1yZWxhdGVkIC5iYW5kX19wYXJ0Om50aC1jaGlsZCgyKSAubGlua3MgKyAubGlua3Mge1xuICAgIGZsb2F0OiByaWdodDtcbiAgICB3aWR0aDogNDguMDc2OTIzMDc2OSU7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIGFuZCAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgLmJhbmQuYmFuZC0tY291bnR5LW5ld3MtcmVsYXRlZCAuYmFuZF9fcGFydDpudGgtY2hpbGQoMikgLmNhcmQge1xuICAgIGNsZWFyOiBib3RoOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSBhbmQgKG1heC13aWR0aDogMTAyM3B4KSB7XG4gIC5iYW5kLmJhbmQtLWFib3V0LXB1YmxpY2F0aW9ucyAuYmFuZF9fcGFydDpmaXJzdC1jaGlsZCB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIGFuZCAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgLmJhbmQuYmFuZC0tYWJvdXQtcHVibGljYXRpb25zIC5iYW5kX19wYXJ0Om50aC1jaGlsZCgyKSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXRvcDogNjRweDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkgYW5kIChtYXgtd2lkdGg6IDEwMjNweCkge1xuICAuYmFuZC5iYW5kLS1hYm91dC1wdWJsaWNhdGlvbnMgLmJhbmRfX3BhcnQ6bnRoLWNoaWxkKDIpIC5zaWRlYmxvY2ssIC5iYW5kLmJhbmQtLWFib3V0LXB1YmxpY2F0aW9ucyAuYmFuZF9fcGFydDpudGgtY2hpbGQoMikgLm1lbnUtLXNlY29uZGFyeSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDQ4LjA3NjkyMzA3NjklO1xuICAgIG1hcmdpbjogMDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkgYW5kIChtYXgtd2lkdGg6IDEwMjNweCkge1xuICAuYmFuZC5iYW5kLS1hYm91dC1wdWJsaWNhdGlvbnMgLmJhbmRfX3BhcnQ6bnRoLWNoaWxkKDIpIC5zaWRlYmxvY2sgKyAuc2lkZWJsb2NrLCAuYmFuZC5iYW5kLS1hYm91dC1wdWJsaWNhdGlvbnMgLmJhbmRfX3BhcnQ6bnRoLWNoaWxkKDIpIC5tZW51LS1zZWNvbmRhcnkgKyAuc2lkZWJsb2NrLCAuYmFuZC5iYW5kLS1hYm91dC1wdWJsaWNhdGlvbnMgLmJhbmRfX3BhcnQ6bnRoLWNoaWxkKDIpIC5zaWRlYmxvY2sgKyAubWVudS0tc2Vjb25kYXJ5LCAuYmFuZC5iYW5kLS1hYm91dC1wdWJsaWNhdGlvbnMgLmJhbmRfX3BhcnQ6bnRoLWNoaWxkKDIpIC5tZW51LS1zZWNvbmRhcnkgKyAubWVudS0tc2Vjb25kYXJ5IHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgd2lkdGg6IDQ4LjA3NjkyMzA3NjklO1xuICAgIG1hcmdpbjogMDsgfSB9XG5cbi56b25lc1tkYXRhLWNvbHVtbnM9JzMnXSAuem9uZTpmaXJzdC1jaGlsZCAuYmFuZF9fdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAxNnB4OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAgIC56b25lc1tkYXRhLWNvbHVtbnM9JzMnXSAuem9uZTpmaXJzdC1jaGlsZCAuYmFuZF9fdGl0bGUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjRweDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAuem9uZXNbZGF0YS1jb2x1bW5zPSczJ10gLnpvbmU6Zmlyc3QtY2hpbGQgLmJhbmRfX3RpdGxlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDMycHg7IH0gfVxuXG4uYmFuZC0tcGVyc29uYXMge1xuICBwYWRkaW5nOiAwOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAuYmFuZC0tcGVyc29uYXMge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjY2NmZDE7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIGFuZCAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgLmJhbmQtLWhvbWUtZmVhdHVyZWQgLmJhbmRfX3BhcnQ6Zmlyc3QtY2hpbGQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIGFuZCAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgLmJhbmQtLWhvbWUtZmVhdHVyZWQgLmJhbmRfX3BhcnQ6bnRoLWNoaWxkKDIpIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tdG9wOiA2NHB4ICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIGFuZCAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgLmJhbmQtLWhvbWUtZmVhdHVyZWQgLmNhcmQge1xuICAgIHdpZHRoOiA0OC4wNzY5MjMwNzY5JTsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkgYW5kIChtYXgtd2lkdGg6IDEwMjNweCkge1xuICAuYmFuZC0taG9tZS1mZWF0dXJlZCAuY2FyZCArIC5jYXJkIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAzLjg0NjE1Mzg0NjIlOyB9IH1cblxuLmJhbmQtLWhvbWUtZmVhdHVyZWQtbXVsdGlwbGUgKyAuYmFuZC0taG9tZS1mZWF0dXJlZC1tdWx0aXBsZSB7XG4gIHBhZGRpbmc6IDY0cHggMCAwOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkgYW5kIChtYXgtd2lkdGg6IDEwMjNweCkge1xuICAuYmFuZC0taG9tZS1uZXdzLXNvY2lhbCAuYmFuZF9fcGFydDpmaXJzdC1jaGlsZCB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIGFuZCAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgLmJhbmQtLWhvbWUtbmV3cy1zb2NpYWwgLmJhbmRfX3BhcnQ6bnRoLWNoaWxkKDIpIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tdG9wOiA2NHB4ICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC5iYW5kLS1ob21lLW5ld3Mtc29jaWFsIC5iYW5kX19wYXJ0Om50aC1jaGlsZCgyKSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSBhbmQgKG1heC13aWR0aDogMTAyM3B4KSB7XG4gIC5iYW5kLS1ob21lLW5ld3Mtc29jaWFsIC50d2VldCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDQ4LjA3NjkyMzA3NjklOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAuYmFuZC0taG9tZS1uZXdzLXNvY2lhbCAudHdlZXQge1xuICAgIG9yZGVyOiAtMjsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkgYW5kIChtYXgtd2lkdGg6IDEwMjNweCkge1xuICAuYmFuZC0taG9tZS1uZXdzLXNvY2lhbCAuaG9saWRheSxcbiAgLmJhbmQtLWhvbWUtbmV3cy1zb2NpYWwgLmdyYXBoaWMtY3RhIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgY2xlYXI6IHJpZ2h0O1xuICAgIHdpZHRoOiA0OC4wNzY5MjMwNzY5JTsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkgYW5kIChtYXgtd2lkdGg6IDEwMjNweCkge1xuICAuYmFuZC0taG9tZS1uZXdzLXNvY2lhbCAubGlua3MtLWNvbm5lY3Qtc2ltcGxlIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBjbGVhcjogYm90aDtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLmJhbmQtLWhvbWUtbmV3cy1zb2NpYWwgLmxpbmtzLS1jb25uZWN0LXNpbXBsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzhweDtcbiAgICBvcmRlcjogLTE7IH0gfVxuXG4uZm9vdGVyLWNvbnRhaW5lciAucGFuZWwtZ3JvdXAucGFuZWwtZ3JvdXAtLWFkZGl0aW9uYWwgLnBhbmVsX19jb250ZW50LFxuLmZvb3Rlci1jb250YWluZXIgLnBhbmVsLWdyb3VwLnBhbmVsLWdyb3VwLS1jb21tdW5pdHkgLnBhbmVsX19jb250ZW50LFxuLmZvb3Rlci1jb250YWluZXIgLnBhbmVsLWdyb3VwLnBhbmVsLWdyb3VwLS1oZWxwLXN1cHBvcnQgLnBhbmVsX19jb250ZW50IHtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luLXRvcDogOHB4OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMjgwcHgpIHtcbiAgICAuZm9vdGVyLWNvbnRhaW5lciAucGFuZWwtZ3JvdXAucGFuZWwtZ3JvdXAtLWFkZGl0aW9uYWwgLnBhbmVsX19jb250ZW50LFxuICAgIC5mb290ZXItY29udGFpbmVyIC5wYW5lbC1ncm91cC5wYW5lbC1ncm91cC0tY29tbXVuaXR5IC5wYW5lbF9fY29udGVudCxcbiAgICAuZm9vdGVyLWNvbnRhaW5lciAucGFuZWwtZ3JvdXAucGFuZWwtZ3JvdXAtLWhlbHAtc3VwcG9ydCAucGFuZWxfX2NvbnRlbnQge1xuICAgICAgbWFyZ2luLXRvcDogMzJweDsgfSB9XG5cbi5mb290ZXItY29udGFpbmVyIC5wYW5lbC1ncm91cC5wYW5lbC1ncm91cC0tbGVnYWwgLnBhbmVsX19jb250ZW50IHtcbiAgcGFkZGluZzogMDsgfVxuXG4uZm9vdGVyLWNvbnRhaW5lciAucGFuZWwtZ3JvdXAucGFuZWwtZ3JvdXAgLnBhbmVsX19jb250ZW50IC5saW5rcyB7XG4gIG1hcmdpbi1ib3R0b206IDM4cHg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEyODBweCkge1xuICAgIC5mb290ZXItY29udGFpbmVyIC5wYW5lbC1ncm91cC5wYW5lbC1ncm91cCAucGFuZWxfX2NvbnRlbnQgLmxpbmtzIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTI4MHB4KSB7XG4gIC5mb290ZXItY29udGFpbmVyIC5wYW5lbC1ncm91cCAucGFuZWxfX3RpdGxlOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogODVweDtcbiAgICBoZWlnaHQ6IDJweDtcbiAgICBtYXJnaW4tdG9wOiAxNnB4O1xuICAgIGJhY2tncm91bmQ6ICNhZTkzNmM7IH0gfVxuXG4uZm9vdGVyLWNvbnRhaW5lciAucGFuZWwtZ3JvdXAgLnBhbmVsX190aXRsZSBhIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNik7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICAuZm9vdGVyLWNvbnRhaW5lciAucGFuZWwtZ3JvdXAgLnBhbmVsX190aXRsZSBhOmhvdmVyIHtcbiAgICBjb2xvcjogI2ZmZjsgfVxuICAuZm9vdGVyLWNvbnRhaW5lciAucGFuZWwtZ3JvdXAgLnBhbmVsX190aXRsZSBhOmZvY3VzIHtcbiAgICBjb2xvcjogI2ZmZjsgfVxuICAuZm9vdGVyLWNvbnRhaW5lciAucGFuZWwtZ3JvdXAgLnBhbmVsX190aXRsZSBhW2FyaWEtZXhwYW5kZWQ9J2ZhbHNlJ106YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9pY29ucy9pX2FkZF93aGl0ZS5zdmdcIik7IH1cbiAgLmZvb3Rlci1jb250YWluZXIgLnBhbmVsLWdyb3VwIC5wYW5lbF9fdGl0bGUgYVthcmlhLWV4cGFuZGVkPSd0cnVlJ106YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9pY29ucy9pX3JlbW92ZV93aGl0ZS5zdmdcIik7IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDEwMjNweCkge1xuICAubWVudS0tc2Vjb25kYXJ5IC5tZW51X19pdGVtIHtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAuem9uZXNbZGF0YS1jb2x1bW5zPSczJ10gLnpvbmU6bGFzdC1jaGlsZCAuc2lkZWJsb2NrICsgLnNpZGVibG9jaywgLnpvbmVzW2RhdGEtY29sdW1ucz0nMyddIC56b25lOmxhc3QtY2hpbGQgLm1lbnUtLXNlY29uZGFyeSArIC5zaWRlYmxvY2ssIC56b25lc1tkYXRhLWNvbHVtbnM9JzMnXSAuem9uZTpsYXN0LWNoaWxkIC5zaWRlYmxvY2sgKyAubWVudS0tc2Vjb25kYXJ5LCAuem9uZXNbZGF0YS1jb2x1bW5zPSczJ10gLnpvbmU6bGFzdC1jaGlsZCAubWVudS0tc2Vjb25kYXJ5ICsgLm1lbnUtLXNlY29uZGFyeSB7XG4gICAgbWFyZ2luLXRvcDogNDhweDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLnpvbmVzW2RhdGEtY29sdW1ucz0nMyddIC56b25lOmxhc3QtY2hpbGQgLnNpZGVibG9jayArIC5zaWRlYmxvY2ssIC56b25lc1tkYXRhLWNvbHVtbnM9JzMnXSAuem9uZTpsYXN0LWNoaWxkIC5tZW51LS1zZWNvbmRhcnkgKyAuc2lkZWJsb2NrLCAuem9uZXNbZGF0YS1jb2x1bW5zPSczJ10gLnpvbmU6bGFzdC1jaGlsZCAuc2lkZWJsb2NrICsgLm1lbnUtLXNlY29uZGFyeSwgLnpvbmVzW2RhdGEtY29sdW1ucz0nMyddIC56b25lOmxhc3QtY2hpbGQgLm1lbnUtLXNlY29uZGFyeSArIC5tZW51LS1zZWNvbmRhcnkge1xuICAgIG1hcmdpbi10b3A6IDY0cHg7IH0gfVxuXG4uem9uZXNbZGF0YS1jb2x1bW5zPSczJ11bZGF0YS1sYXlvdXQtcGVvcGxlXSBpbWcsIC56b25lc1tkYXRhLWNvbHVtbnM9JzMnXVtkYXRhLWxheW91dC1wZW9wbGVdIHBpY3R1cmUge1xuICB3aWR0aDogMTAwJTsgfVxuXG4uem9uZXNbZGF0YS1jb2x1bW5zPSczJ11bZGF0YS1sYXlvdXQtcGVvcGxlXSAuYnV0dG9uLCAuem9uZXNbZGF0YS1jb2x1bW5zPSczJ11bZGF0YS1sYXlvdXQtcGVvcGxlXSAudG9nZ2xlLCAuem9uZXNbZGF0YS1jb2x1bW5zPSczJ11bZGF0YS1sYXlvdXQtcGVvcGxlXSAucGFuZWwtZ3JvdXBfX3RvZ2dsZSwgLnpvbmVzW2RhdGEtY29sdW1ucz0nMyddW2RhdGEtbGF5b3V0LXBlb3BsZV0gLmFsZXJ0X19kaXNtaXNzLCAuem9uZXNbZGF0YS1jb2x1bW5zPSczJ11bZGF0YS1sYXlvdXQtcGVvcGxlXSAuY2FyZF9fYWN0aW9uLCAuem9uZXNbZGF0YS1jb2x1bW5zPSczJ11bZGF0YS1sYXlvdXQtcGVvcGxlXSAuc2hvdF9fYnV0dG9uIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4uc2lkZWJsb2NrX19jb250ZW50IC5tZXRhLCAubWVudS0tc2Vjb25kYXJ5IC5tZW51X19saXN0IC5tZXRhLCAuc2lkZWJsb2NrX19jb250ZW50IC5saW5rcy0tc2VhcmNoLXF1aWNrIC5saW5rc19fdGl0bGUsIC5saW5rcy0tc2VhcmNoLXF1aWNrIC5zaWRlYmxvY2tfX2NvbnRlbnQgLmxpbmtzX190aXRsZSwgLm1lbnUtLXNlY29uZGFyeSAubWVudV9fbGlzdCAubGlua3MtLXNlYXJjaC1xdWljayAubGlua3NfX3RpdGxlLCAubGlua3MtLXNlYXJjaC1xdWljayAubWVudS0tc2Vjb25kYXJ5IC5tZW51X19saXN0IC5saW5rc19fdGl0bGUsIC5zaWRlYmxvY2tfX2NvbnRlbnQgLmxpbmtzLS1zZWFyY2gtc3VnZ2VzdCAubGlua3NfX3RpdGxlLCAubGlua3MtLXNlYXJjaC1zdWdnZXN0IC5zaWRlYmxvY2tfX2NvbnRlbnQgLmxpbmtzX190aXRsZSwgLm1lbnUtLXNlY29uZGFyeSAubWVudV9fbGlzdCAubGlua3MtLXNlYXJjaC1zdWdnZXN0IC5saW5rc19fdGl0bGUsIC5saW5rcy0tc2VhcmNoLXN1Z2dlc3QgLm1lbnUtLXNlY29uZGFyeSAubWVudV9fbGlzdCAubGlua3NfX3RpdGxlLCAuc2lkZWJsb2NrX19jb250ZW50IC5saW5rcy0tc2VhcmNoLXRvcCAubGlua3NfX3RpdGxlLCAubGlua3MtLXNlYXJjaC10b3AgLnNpZGVibG9ja19fY29udGVudCAubGlua3NfX3RpdGxlLCAubWVudS0tc2Vjb25kYXJ5IC5tZW51X19saXN0IC5saW5rcy0tc2VhcmNoLXRvcCAubGlua3NfX3RpdGxlLCAubGlua3MtLXNlYXJjaC10b3AgLm1lbnUtLXNlY29uZGFyeSAubWVudV9fbGlzdCAubGlua3NfX3RpdGxlLCAuc2lkZWJsb2NrX19jb250ZW50IC5saXN0LS1yZWNvZ25pdGlvbiAuaXRlbV9fbWV0YSwgLmxpc3QtLXJlY29nbml0aW9uIC5zaWRlYmxvY2tfX2NvbnRlbnQgLml0ZW1fX21ldGEsIC5tZW51LS1zZWNvbmRhcnkgLm1lbnVfX2xpc3QgLmxpc3QtLXJlY29nbml0aW9uIC5pdGVtX19tZXRhLCAubGlzdC0tcmVjb2duaXRpb24gLm1lbnUtLXNlY29uZGFyeSAubWVudV9fbGlzdCAuaXRlbV9fbWV0YSwgLnNpZGVibG9ja19fY29udGVudCAuY2xvc2luZ19fbWV0YSwgLm1lbnUtLXNlY29uZGFyeSAubWVudV9fbGlzdCAuY2xvc2luZ19fbWV0YSwgLnNpZGVibG9ja19fY29udGVudCAuY2hpcF9fbGFiZWwsIC5tZW51LS1zZWNvbmRhcnkgLm1lbnVfX2xpc3QgLmNoaXBfX2xhYmVsLCAuc2lkZWJsb2NrX19jb250ZW50IC5kaXN0cmljdF9fbWV0YSwgLm1lbnUtLXNlY29uZGFyeSAubWVudV9fbGlzdCAuZGlzdHJpY3RfX21ldGEsIC5zaWRlYmxvY2tfX2NvbnRlbnQgLnNob3RfX3ByZWZpeCwgLm1lbnUtLXNlY29uZGFyeSAubWVudV9fbGlzdCAuc2hvdF9fcHJlZml4LCAuc2lkZWJsb2NrX19jb250ZW50IC5zaG90X19zdWZmaXgsIC5tZW51LS1zZWNvbmRhcnkgLm1lbnVfX2xpc3QgLnNob3RfX3N1ZmZpeCB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1yaWdodDogMDsgfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNjM5cHgpIHtcbiAgYXNpZGUuem9uZSAubGlua3MtLWNvbnRleHR1YWwge1xuICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4uc3dpcGVyLWNvbnRhaW5lciAuYmFuZF9fcGFydCB7XG4gIGhlaWdodDogMTAwJTtcbiAgbWFyZ2luLXRvcDogMDsgfVxuXG4uc3dpcGVyLXNsaWRlIHtcbiAgcGFkZGluZy1sZWZ0OiAzMnB4O1xuICBwYWRkaW5nLXJpZ2h0OiAzMnB4O1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMTUwbXMgY3ViaWMtYmV6aWVyKDAuNzcsIDAsIDAuMTc1LCAxKTsgfVxuXG4uc3dpcGVyLXNsaWRlLXByZXYge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNDhweCk7IH1cblxuLnN3aXBlci1zbGlkZS1uZXh0IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC00OHB4KTsgfVxuXG4uc3dpcGVyLXNsaWRlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSk7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAuem9uZXNbZGF0YS1jb2x1bW5zPSczJ10gLnpvbmU6Zmlyc3QtY2hpbGQgLmJhbmQuYmFuZC0tZm9vdG5vdGUge1xuICAgIHBhZGRpbmc6IDA7IH0gfVxuIiwiLy8gVHlwZWZhY2VzXG4vL1xuLy8gQ29sbGVjdGlvbiBvZiBhbGwgYXBwcm92ZWQgdHlwZWZhY2VzIHRvIGNvbXBseSB3aXRoIGJyYW5kaW5nLlxuLy9cbi8vIDx1bCBjbGFzcz1cInN0eWxlZ3VpZGUgdHlwZWZhY2VzXCI+XG4vLyAgIDxsaSBjbGFzcz1cInR5cGVmYWNlXCI+XG4vLyAgICAgPGg1PkZGIFRpYmVyZTwvaDU+XG4vLyAgICAgPHAgc3R5bGU9XCJmb250LWZhbWlseTogJ0ZGIFRpYmVyZSc7XCI+XG4vLyAgICAgPHNwYW4+QWE8L3NwYW4+PGJyPlxuLy8gICAgIEFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaPGJyPlxuLy8gICAgIGFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6PGJyPlxuLy8gICAgIDAxMjM0NTY3ODk8L3A+XG4vLyAgIDwvbGk+XG4vLyAgIDxsaSBjbGFzcz1cInR5cGVmYWNlXCI+XG4vLyAgICAgPGg1Pk9wZW4gU2FuczwvaDU+XG4vLyAgICAgPHAgc3R5bGU9XCJmb250LWZhbWlseTogJ09wZW4gU2Fucyc7XCI+XG4vLyAgICAgPHNwYW4+QWE8L3NwYW4+PGJyPlxuLy8gICAgIEFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaPGJyPlxuLy8gICAgIGFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6PGJyPlxuLy8gICAgIDAxMjM0NTY3ODk8L3A+XG4vLyAgIDwvbGk+XG4vLyA8L3VsPlxuLy9cbi8vIFN0eWxlZ3VpZGUgQnJhbmRpbmcgLSBUeXBlZmFjZXNcblxuLyoqXG4gKiBAbGljZW5zZVxuICogTXlGb250cyBXZWJmb250IEJ1aWxkIElEIDM0MjU1MTcsIDIwMTctMDctMjBUMTE6NTg6NDYtMDQwMFxuICpcbiAqIFRoZSBmb250cyBsaXN0ZWQgaW4gdGhpcyBub3RpY2UgYXJlIHN1YmplY3QgdG8gdGhlIEVuZCBVc2VyIExpY2Vuc2VcbiAqIEFncmVlbWVudChzKSBlbnRlcmVkIGludG8gYnkgdGhlIHdlYnNpdGUgb3duZXIuIEFsbCBvdGhlciBwYXJ0aWVzIGFyZVxuICogZXhwbGljaXRseSByZXN0cmljdGVkIGZyb20gdXNpbmcgdGhlIExpY2Vuc2VkIFdlYmZvbnRzKHMpLlxuICpcbiAqIFlvdSBtYXkgb2J0YWluIGEgdmFsaWQgbGljZW5zZSBhdCB0aGUgVVJMcyBiZWxvdy5cbiAqXG4gKiBXZWJmb250OiBGRiBUaWJlcmUgV2ViIE1lZGl1bSBieSBGb250Rm9udFxuICogVVJMOiBodHRwczovL3d3dy5teWZvbnRzLmNvbS9mb250cy9mb250Zm9udC90aWJlcmUvb3QtbWVkaXVtL1xuICpcbiAqIFdlYmZvbnQ6IEZGIFRpYmVyZSBXZWIgTGlnaHQgYnkgRm9udEZvbnRcbiAqIFVSTDogaHR0cHM6Ly93d3cubXlmb250cy5jb20vZm9udHMvZm9udGZvbnQvdGliZXJlL290LWxpZ2h0L1xuICpcbiAqIFdlYmZvbnQ6IEZGIFRpYmVyZSBXZWIgSXRhbGljIGJ5IEZvbnRGb250XG4gKiBVUkw6IGh0dHBzOi8vd3d3Lm15Zm9udHMuY29tL2ZvbnRzL2ZvbnRmb250L3RpYmVyZS9vdC1pdGFsaWMvXG4gKlxuICogV2ViZm9udDogRkYgVGliZXJlIFdlYiBMaWdodCBJdGFsaWMgYnkgRm9udEZvbnRcbiAqIFVSTDogaHR0cHM6Ly93d3cubXlmb250cy5jb20vZm9udHMvZm9udGZvbnQvdGliZXJlL290LWxpZ2h0LWl0YWxpYy9cbiAqXG4gKiBXZWJmb250OiBGRiBUaWJlcmUgV2ViIEJvbGQgYnkgRm9udEZvbnRcbiAqIFVSTDogaHR0cHM6Ly93d3cubXlmb250cy5jb20vZm9udHMvZm9udGZvbnQvdGliZXJlL290LWJvbGQvXG4gKlxuICogV2ViZm9udDogVGliZXJlIE9ybmFtZW50cyBCYW5kZWQgYnkgRm9udEZvbnRcbiAqIFVSTDogaHR0cHM6Ly93d3cubXlmb250cy5jb20vZm9udHMvZm9udGZvbnQvdGliZXJlL29ybmFtZW50cy1iYW5kZWQvXG4gKlxuICogV2ViZm9udDogRkYgVGliZXJlIFdlYiBieSBGb250Rm9udFxuICogVVJMOiBodHRwczovL3d3dy5teWZvbnRzLmNvbS9mb250cy9mb250Zm9udC90aWJlcmUvb3QvXG4gKlxuICpcbiAqIExpY2Vuc2U6IGh0dHBzOi8vd3d3Lm15Zm9udHMuY29tL3ZpZXdsaWNlbnNlP3R5cGU9d2ViJmJ1aWxkaWQ9MzQyNTUxN1xuICogTGljZW5zZWQgcGFnZXZpZXdzOiA1MDAsMDAwXG4gKiBXZWJmb250cyBjb3B5cmlnaHQ6IDIwMTAgQWxiZXJ0IEJvdG9uIHB1Ymxpc2hlZCBieSBGU0kgRm9udFNob3AgSW50ZXJuYXRpb25hbCBHbWJIXG4gKlxuICogwqkgMjAxNyBNeUZvbnRzIEluY1xuKi9cblxuXG4vKiBAaW1wb3J0IG11c3QgYmUgYXQgdG9wIG9mIGZpbGUsIG90aGVyd2lzZSBDU1Mgd2lsbCBub3Qgd29yayAqL1xuQGltcG9ydCB1cmwoJy8vaGVsbG8ubXlmb250cy5uZXQvY291bnQvMzQ0NGVkJyk7XG5cbkBpbmNsdWRlIGZvbnQtZmFjZSgnRkYgVGliZXJlJywgJy4uL2ZvbnRzLzM0NDRFRF8xXzAnLCAzMDAsICRmaWxlLWZvcm1hdHM6IGVvdCB3b2ZmMiB3b2ZmIHR0Zik7XG5AaW5jbHVkZSBmb250LWZhY2UoJ0ZGIFRpYmVyZScsICcuLi9mb250cy8zNDQ0RURfNl8wJywgNTAwLCAkZmlsZS1mb3JtYXRzOiBlb3Qgd29mZjIgd29mZiB0dGYpO1xuQGluY2x1ZGUgZm9udC1mYWNlKCdGRiBUaWJlcmUnLCAnLi4vZm9udHMvMzQ0NEVEXzRfMCcsIDcwMCwgJGZpbGUtZm9ybWF0czogZW90IHdvZmYyIHdvZmYgdHRmKTtcblxuXG5AaW1wb3J0IHVybCgnaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3M/ZmFtaWx5PU9wZW4rU2FuczozMDAsNDAwLDYwMCw3MDAnKTtcblxuXG4vLyBGb250IEZhbWlsaWVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuJGZvbnQtcHJpbWFyeTogJ0ZGIFRpYmVyZScsIFBhbGF0aW5vLCBHZW9yZ2lhLCBzYW5zLXNlcmlmO1xuJGZvbnQtc2Vjb25kYXJ5OiAnT3BlbiBTYW5zJywgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjtcbi8vICRiYXNlLWZvbnQtZmFtaWx5OiAnQ2hyb25pY2xlIFRleHQgRzIgQScsICdDaHJvbmljbGUgVGV4dCBHMiBCJywgJGdlb3JnaWE7XG4vLyAkYnJhbmQtZm9udC1mYW1pbHktYm9vazogJ0F2ZW5pciA0NSBCb29rJywgJGhlbHZldGljYTtcbi8vICRicmFuZC1mb250LWZhbWlseS1tZWRpdW06ICdBdmVuaXIgNjUgTWVkaXVtJywgJGhlbHZldGljYTtcbi8vICRicmFuZC1mb250LWZhbWlseS1ibGFjazogJ0F2ZW5pciA5NSBCbGFjaycsICRoZWx2ZXRpY2E7XG5cbi8vIEZvbnQgU2l6ZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyAkYmFzZS1mb250LXNpemU6IHJlbSgxOCk7XG5cbi8vIExpbmUgSGVpZ2h0c1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vICRiYXNlLWxpbmUtaGVpZ2h0OiAxLjU7XG4vLyAkaGVhZGluZy1saW5lLWhlaWdodDogMS4yO1xuIiwiQG1peGluIGZvbnQtZmFjZShcbiAgJGZvbnQtZmFtaWx5LFxuICAkZmlsZS1wYXRoLFxuICAkd2VpZ2h0OiBub3JtYWwsXG4gICRzdHlsZTogbm9ybWFsLFxuICAkYXNzZXQtcGlwZWxpbmU6ICRhc3NldC1waXBlbGluZSxcbiAgJGZpbGUtZm9ybWF0czogZW90IHdvZmYyIHdvZmYgdHRmIHN2Zykge1xuXG4gICR1c2VyLWRlcHJlY2F0aW9uLXdhcm5pbmdzLXNldHRpbmc6ICRvdXRwdXQtYm91cmJvbi1kZXByZWNhdGlvbi13YXJuaW5ncztcbiAgJG91dHB1dC1ib3VyYm9uLWRlcHJlY2F0aW9uLXdhcm5pbmdzOiBmYWxzZSAhZ2xvYmFsO1xuXG4gICRmb250LXVybC1wcmVmaXg6IGZvbnQtdXJsLXByZWZpeGVyKCRhc3NldC1waXBlbGluZSk7XG5cbiAgQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseTtcbiAgICBmb250LXN0eWxlOiAkc3R5bGU7XG4gICAgZm9udC13ZWlnaHQ6ICR3ZWlnaHQ7XG5cbiAgICBzcmM6IGZvbnQtc291cmNlLWRlY2xhcmF0aW9uKFxuICAgICAgJGZvbnQtZmFtaWx5LFxuICAgICAgJGZpbGUtcGF0aCxcbiAgICAgICRhc3NldC1waXBlbGluZSxcbiAgICAgICRmaWxlLWZvcm1hdHMsXG4gICAgICAkZm9udC11cmwtcHJlZml4XG4gICAgKTtcbiAgfVxuXG4gICRvdXRwdXQtYm91cmJvbi1kZXByZWNhdGlvbi13YXJuaW5nczogJHVzZXItZGVwcmVjYXRpb24td2FybmluZ3Mtc2V0dGluZyAhZ2xvYmFsO1xufVxuIiwiLy8gVXNlZCBmb3IgY3JlYXRpbmcgdGhlIHNvdXJjZSBzdHJpbmcgZm9yIGZvbnRzIHVzaW5nIEBmb250LWZhY2Vcbi8vIFJlZmVyZW5jZTogaHR0cDovL2dvby5nbC9SdTFiS1BcblxuQGZ1bmN0aW9uIGZvbnQtdXJsLXByZWZpeGVyKCRhc3NldC1waXBlbGluZSkge1xuICBAaWYgJG91dHB1dC1ib3VyYm9uLWRlcHJlY2F0aW9uLXdhcm5pbmdzID09IHRydWUge1xuICAgIEB3YXJuIFwiW0JvdXJib25dIFtEZXByZWNhdGlvbl0gYGZvbnQtdXJsLXByZWZpeGVyYCBpcyBkZXByZWNhdGVkIGFuZCBcIiArXG4gICAgXCJ3aWxsIGJlIHJlbW92ZWQgaW4gNS4wLjAuXCI7XG4gIH1cblxuICBAaWYgJGFzc2V0LXBpcGVsaW5lID09IHRydWUge1xuICAgIEByZXR1cm4gZm9udC11cmw7XG4gIH0gQGVsc2Uge1xuICAgIEByZXR1cm4gdXJsO1xuICB9XG59XG5cbkBmdW5jdGlvbiBmb250LXNvdXJjZS1kZWNsYXJhdGlvbihcbiAgJGZvbnQtZmFtaWx5LFxuICAkZmlsZS1wYXRoLFxuICAkYXNzZXQtcGlwZWxpbmUsXG4gICRmaWxlLWZvcm1hdHMsXG4gICRmb250LXVybCkge1xuXG4gIEBpZiAkb3V0cHV0LWJvdXJib24tZGVwcmVjYXRpb24td2FybmluZ3MgPT0gdHJ1ZSB7XG4gICAgQHdhcm4gXCJbQm91cmJvbl0gW0RlcHJlY2F0aW9uXSBgZm9udC1zb3VyY2UtZGVjbGFyYXRpb25gIGlzIGRlcHJlY2F0ZWQgXCIgK1xuICAgIFwiYW5kIHdpbGwgYmUgcmVtb3ZlZCBpbiA1LjAuMC5cIjtcbiAgfVxuXG4gICRzcmM6ICgpO1xuXG4gICRmb3JtYXRzLW1hcDogKFxuICAgIGVvdDogICBcIiN7JGZpbGUtcGF0aH0uZW90PyNpZWZpeFwiIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLFxuICAgIHdvZmYyOiBcIiN7JGZpbGUtcGF0aH0ud29mZjJcIiBmb3JtYXQoXCJ3b2ZmMlwiKSxcbiAgICB3b2ZmOiAgXCIjeyRmaWxlLXBhdGh9LndvZmZcIiBmb3JtYXQoXCJ3b2ZmXCIpLFxuICAgIHR0ZjogICBcIiN7JGZpbGUtcGF0aH0udHRmXCIgZm9ybWF0KFwidHJ1ZXR5cGVcIiksXG4gICAgc3ZnOiAgIFwiI3skZmlsZS1wYXRofS5zdmcjI3skZm9udC1mYW1pbHl9XCIgZm9ybWF0KFwic3ZnXCIpXG4gICk7XG5cbiAgQGVhY2ggJGtleSwgJHZhbHVlcyBpbiAkZm9ybWF0cy1tYXAge1xuICAgIEBpZiBjb250YWlucygkZmlsZS1mb3JtYXRzLCAka2V5KSB7XG4gICAgICAkZmlsZS1wYXRoOiBudGgoJHZhbHVlcywgMSk7XG4gICAgICAkZm9udC1mb3JtYXQ6IG50aCgkdmFsdWVzLCAyKTtcblxuICAgICAgQGlmICRhc3NldC1waXBlbGluZSA9PSB0cnVlIHtcbiAgICAgICAgJHNyYzogYXBwZW5kKCRzcmMsIGZvbnQtdXJsKCRmaWxlLXBhdGgpICRmb250LWZvcm1hdCwgY29tbWEpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgICRzcmM6IGFwcGVuZCgkc3JjLCB1cmwoJGZpbGUtcGF0aCkgJGZvbnQtZm9ybWF0LCBjb21tYSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkc3JjO1xufVxuIiwiJWxpbmtzX190aXRsZSB7XG4gIG1hcmdpbjogMCAwIDE2cHg7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGZvbnQtc2l6ZTogMTZweDtcblxuICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgbWFyZ2luOiAwIDAgMzJweDtcbiAgICBmb250LXNpemU6IDE5cHg7XG4gIH1cbiAgQGluY2x1ZGUgbWVkaWEoJz49bGFwdG9wJykge1xuICAgIGZvbnQtc2l6ZTogMjFweDtcbiAgfVxufVxuXG4lbGlua3NfX2l0ZW0ge1xuICBtYXJnaW46IDE2cHggMCAwO1xuXG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbn1cblxuJXNpZGViYXJfX3RpdGxlIHtcbiAgQGV4dGVuZCAlbGlua3NfX3RpdGxlO1xufVxuXG4lc2lkZWJhcl9faXRlbSB7XG4gIEBleHRlbmQgJWxpbmtzX19pdGVtO1xufVxuXG4laGlkZS1vZmYtc2NyZWVuIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAtMTAwMDBweDtcbiAgdG9wOiBhdXRvO1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbiVkaXNhYmxlLWRyYWcge1xuICB1c2VyLWRyYWc6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xufVxuXG4lY2xlYXJmaXgge1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogdGFibGU7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4lbGFiZWwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogOHB4O1xuICBmb250LXdlaWdodDogNjAwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbiVvdmVybGF5IHtcbiAgY29udGVudDogJyc7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKGNvbG9yKHByaW1hcnksIGJsYWNrKSwgLjkpO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5ICRiYXNlLWFuaW1hdGlvbi1zcGVlZCAqIDUgJGJhc2UtYW5pbWF0aW9uLWVhc2luZztcbiAgei1pbmRleDogMjtcblxuICBAaW5jbHVkZSBtZWRpYSgnPj1sYXB0b3AnKSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4lc29jaWFsLWxpc3Qge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmctbGVmdDogNDBweDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDA7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiAzMnB4O1xuICAgIGhlaWdodDogMzJweDtcbiAgICBtYXJnaW4tdG9wOiAtMTZweDtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1MCU7XG4gICAgYmFja2dyb3VuZC1zaXplOiBhdXRvIDI0cHg7XG4gIH1cbn1cblxuJWZvb3Rlci10b2dnbGUtdGl0bGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAxNnB4IDA7XG4gIG1hcmdpbjogMDtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoY29sb3IocHJpbWFyeSwgYmxhY2spLCAuMSk7XG4gIGNvbG9yOiBjb2xvcihwcmltYXJ5LCBibGFjayk7XG5cbiAgLy8gaWNvblxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgcmlnaHQ6IDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDI0cHg7XG4gICAgaGVpZ2h0OiAyNHB4O1xuICAgIG1hcmdpbi10b3A6IC0xMnB4O1xuICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1nL2ljb25zL2lfY2FyZXQtZG93bi5zdmcnKSBuby1yZXBlYXQgNTAlIDUwJSAvIDI0cHggYXV0bztcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gJGJhc2UtYW5pbWF0aW9uLXNwZWVkICRiYXNlLWFuaW1hdGlvbi1lYXNpbmc7XG4gIH1cblxuICAvLyBob3ZlciBzdGF0ZVxuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKGNvbG9yKHByaW1hcnksIGdyYXkpLCAuMDUpO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKGNvbG9yKHByaW1hcnksIGJsYWNrKSwgLjIpO1xuICAgIGNvbG9yOiBsaWdodGVuKGNvbG9yKHByaW1hcnksIGJsdWUpLCAxMCUpO1xuICB9XG5cbiAgLy8gaW5hY3RpdmUgc3RhdGVcbiAgJlthcmlhLWV4cGFuZGVkPSdmYWxzZSddOmFmdGVyIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgfVxuXG4gIC8vIGFjdGl2ZSBzdGF0ZVxuICAmW2FyaWEtZXhwYW5kZWQ9J3RydWUnXTphZnRlciB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgfVxufVxuXG4lZm9vdGVyLXRvZ2dsZS1jb250ZW50IHtcbiAgLy8gaW5hY3RpdmUgc3RhdGVcbiAgJlthcmlhLWhpZGRlbj0ndHJ1ZSddIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLy8gYWN0aXZlIHN0YXRlXG4gICZbYXJpYS1oaWRkZW49J2ZhbHNlJ10ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMzJweCAwO1xuICB9XG59XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vICAgICBfICAgICAgICAgICAgXyAgICAgICAgICAgXyAgICAgICAgICAgICAgICAgICAgICAgICAgIF8gX1xuLy8gICAgKF8pICAgICAgICAgIHwgfCAgICAgICAgIHwgfCAgICAgICAgICAgICAgICAgICAgICAgICB8IChfKVxuLy8gICAgIF8gXyBfXyAgIF9fX3wgfF8gICBfICBfX3wgfCBfX18gICBfIF9fIF9fXyAgIF9fXyAgX198IHxfICBfXyBfXG4vLyAgICB8IHwgJ18gXFwgLyBfX3wgfCB8IHwgfC8gX2AgfC8gXyBcXCB8ICdfIGAgXyBcXCAvIF8gXFwvIF9gIHwgfC8gX2AgfFxuLy8gICAgfCB8IHwgfCB8IChfX3wgfCB8X3wgfCAoX3wgfCAgX18vIHwgfCB8IHwgfCB8ICBfXy8gKF98IHwgfCAoX3wgfFxuLy8gICAgfF98X3wgfF98XFxfX198X3xcXF9fLF98XFxfXyxffFxcX19ffCB8X3wgfF98IHxffFxcX19ffFxcX18sX3xffFxcX18sX3xcbi8vXG4vLyAgICAgIFNpbXBsZSwgZWxlZ2FudCBhbmQgbWFpbnRhaW5hYmxlIG1lZGlhIHF1ZXJpZXMgaW4gU2Fzc1xuLy8gICAgICAgICAgICAgICAgICAgICAgICB2MS40Ljlcbi8vXG4vLyAgICAgICAgICAgICAgICBodHRwOi8vaW5jbHVkZS1tZWRpYS5jb21cbi8vXG4vLyAgICAgICAgIEF1dGhvcnM6IEVkdWFyZG8gQm91Y2FzIChAZWR1YXJkb2JvdWNhcylcbi8vICAgICAgICAgICAgICAgICAgSHVnbyBHaXJhdWRlbCAoQGh1Z29naXJhdWRlbClcbi8vXG4vLyAgICAgIFRoaXMgcHJvamVjdCBpcyBsaWNlbnNlZCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIE1JVCBsaWNlbnNlXG5cblxuLy8vL1xuLy8vIGluY2x1ZGUtbWVkaWEgbGlicmFyeSBwdWJsaWMgY29uZmlndXJhdGlvblxuLy8vIEBhdXRob3IgRWR1YXJkbyBCb3VjYXNcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vL1xuXG5cbi8vL1xuLy8vIENyZWF0ZXMgYSBsaXN0IG9mIGdsb2JhbCBicmVha3BvaW50c1xuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIENyZWF0ZXMgYSBzaW5nbGUgYnJlYWtwb2ludCB3aXRoIHRoZSBsYWJlbCBgcGhvbmVgXG4vLy8gICRicmVha3BvaW50czogKCdwaG9uZSc6IDMyMHB4KTtcbi8vL1xuJGJyZWFrcG9pbnRzOiAoXG4gICdwaG9uZSc6IDMyMHB4LFxuICAndGFibGV0JzogNzY4cHgsXG4gICdkZXNrdG9wJzogMTAyNHB4XG4pICFkZWZhdWx0O1xuXG5cbi8vL1xuLy8vIENyZWF0ZXMgYSBsaXN0IG9mIHN0YXRpYyBleHByZXNzaW9ucyBvciBtZWRpYSB0eXBlc1xuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIENyZWF0ZXMgYSBzaW5nbGUgbWVkaWEgdHlwZSAoc2NyZWVuKVxuLy8vICAkbWVkaWEtZXhwcmVzc2lvbnM6ICgnc2NyZWVuJzogJ3NjcmVlbicpO1xuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIENyZWF0ZXMgYSBzdGF0aWMgZXhwcmVzc2lvbiB3aXRoIGxvZ2ljYWwgZGlzanVuY3Rpb24gKE9SIG9wZXJhdG9yKVxuLy8vICAkbWVkaWEtZXhwcmVzc2lvbnM6IChcbi8vLyAgICAncmV0aW5hMngnOiAnKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMiksIChtaW4tcmVzb2x1dGlvbjogMTkyZHBpKSdcbi8vLyAgKTtcbi8vL1xuJG1lZGlhLWV4cHJlc3Npb25zOiAoXG4gICdzY3JlZW4nOiAnc2NyZWVuJyxcbiAgJ3ByaW50JzogJ3ByaW50JyxcbiAgJ2hhbmRoZWxkJzogJ2hhbmRoZWxkJyxcbiAgJ2xhbmRzY2FwZSc6ICcob3JpZW50YXRpb246IGxhbmRzY2FwZSknLFxuICAncG9ydHJhaXQnOiAnKG9yaWVudGF0aW9uOiBwb3J0cmFpdCknLFxuICAncmV0aW5hMngnOiAnKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMiksIChtaW4tcmVzb2x1dGlvbjogMTkyZHBpKSwgKG1pbi1yZXNvbHV0aW9uOiAyZHBweCknLFxuICAncmV0aW5hM3gnOiAnKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMyksIChtaW4tcmVzb2x1dGlvbjogMzUwZHBpKSwgKG1pbi1yZXNvbHV0aW9uOiAzZHBweCknXG4pICFkZWZhdWx0O1xuXG5cbi8vL1xuLy8vIERlZmluZXMgYSBudW1iZXIgdG8gYmUgYWRkZWQgb3Igc3VidHJhY3RlZCBmcm9tIGVhY2ggdW5pdCB3aGVuIGRlY2xhcmluZyBicmVha3BvaW50cyB3aXRoIGV4Y2x1c2l2ZSBpbnRlcnZhbHNcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBJbnRlcnZhbCBmb3IgcGl4ZWxzIGlzIGRlZmluZWQgYXMgYDFgIGJ5IGRlZmF1bHRcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz4xMjhweCcpIHt9XG4vLy9cbi8vLyAgLyogR2VuZXJhdGVzOiAqL1xuLy8vICBAbWVkaWEgKG1pbi13aWR0aDogMTI5cHgpIHt9XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gSW50ZXJ2YWwgZm9yIGVtcyBpcyBkZWZpbmVkIGFzIGAwLjAxYCBieSBkZWZhdWx0XG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+MjBlbScpIHt9XG4vLy9cbi8vLyAgLyogR2VuZXJhdGVzOiAqL1xuLy8vICBAbWVkaWEgKG1pbi13aWR0aDogMjAuMDFlbSkge31cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBJbnRlcnZhbCBmb3IgcmVtcyBpcyBkZWZpbmVkIGFzIGAwLjFgIGJ5IGRlZmF1bHQsIHRvIGJlIHVzZWQgd2l0aCBgZm9udC1zaXplOiA2Mi41JTtgXG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+Mi4wcmVtJykge31cbi8vL1xuLy8vICAvKiBHZW5lcmF0ZXM6ICovXG4vLy8gIEBtZWRpYSAobWluLXdpZHRoOiAyLjFyZW0pIHt9XG4vLy9cbiR1bml0LWludGVydmFsczogKFxuICAncHgnOiAxLFxuICAnZW0nOiAwLjAxLFxuICAncmVtJzogMC4xLFxuICAnJzogMFxuKSAhZGVmYXVsdDtcblxuLy8vXG4vLy8gRGVmaW5lcyB3aGV0aGVyIHN1cHBvcnQgZm9yIG1lZGlhIHF1ZXJpZXMgaXMgYXZhaWxhYmxlLCB1c2VmdWwgZm9yIGNyZWF0aW5nIHNlcGFyYXRlIHN0eWxlc2hlZXRzXG4vLy8gZm9yIGJyb3dzZXJzIHRoYXQgZG9uJ3Qgc3VwcG9ydCBtZWRpYSBxdWVyaWVzLlxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIERpc2FibGVzIHN1cHBvcnQgZm9yIG1lZGlhIHF1ZXJpZXNcbi8vLyAgJGltLW1lZGlhLXN1cHBvcnQ6IGZhbHNlO1xuLy8vICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4vLy8gICAgLmZvbyB7XG4vLy8gICAgICBjb2xvcjogdG9tYXRvO1xuLy8vICAgIH1cbi8vLyAgfVxuLy8vXG4vLy8gIC8qIEdlbmVyYXRlczogKi9cbi8vLyAgLmZvbyB7XG4vLy8gICAgY29sb3I6IHRvbWF0bztcbi8vLyAgfVxuLy8vXG4kaW0tbWVkaWEtc3VwcG9ydDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vXG4vLy8gU2VsZWN0cyB3aGljaCBicmVha3BvaW50IHRvIGVtdWxhdGUgd2hlbiBzdXBwb3J0IGZvciBtZWRpYSBxdWVyaWVzIGlzIGRpc2FibGVkLiBNZWRpYSBxdWVyaWVzIHRoYXQgc3RhcnQgYXQgb3Jcbi8vLyBpbnRlcmNlcHQgdGhlIGJyZWFrcG9pbnQgd2lsbCBiZSBkaXNwbGF5ZWQsIGFueSBvdGhlcnMgd2lsbCBiZSBpZ25vcmVkLlxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFRoaXMgbWVkaWEgcXVlcnkgd2lsbCBzaG93IGJlY2F1c2UgaXQgaW50ZXJjZXB0cyB0aGUgc3RhdGljIGJyZWFrcG9pbnRcbi8vLyAgJGltLW1lZGlhLXN1cHBvcnQ6IGZhbHNlO1xuLy8vICAkaW0tbm8tbWVkaWEtYnJlYWtwb2ludDogJ2Rlc2t0b3AnO1xuLy8vICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4vLy8gICAgLmZvbyB7XG4vLy8gICAgICBjb2xvcjogdG9tYXRvO1xuLy8vICAgIH1cbi8vLyAgfVxuLy8vXG4vLy8gIC8qIEdlbmVyYXRlczogKi9cbi8vLyAgLmZvbyB7XG4vLy8gICAgY29sb3I6IHRvbWF0bztcbi8vLyAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFRoaXMgbWVkaWEgcXVlcnkgd2lsbCBOT1Qgc2hvdyBiZWNhdXNlIGl0IGRvZXMgbm90IGludGVyY2VwdCB0aGUgZGVza3RvcCBicmVha3BvaW50XG4vLy8gICRpbS1tZWRpYS1zdXBwb3J0OiBmYWxzZTtcbi8vLyAgJGltLW5vLW1lZGlhLWJyZWFrcG9pbnQ6ICd0YWJsZXQnO1xuLy8vICBAaW5jbHVkZSBtZWRpYSgnPj1kZXNrdG9wJykge1xuLy8vICAgIC5mb28ge1xuLy8vICAgICAgY29sb3I6IHRvbWF0bztcbi8vLyAgICB9XG4vLy8gIH1cbi8vL1xuLy8vICAvKiBObyBvdXRwdXQgKi9cbi8vL1xuJGltLW5vLW1lZGlhLWJyZWFrcG9pbnQ6ICdkZXNrdG9wJyAhZGVmYXVsdDtcblxuLy8vXG4vLy8gU2VsZWN0cyB3aGljaCBtZWRpYSBleHByZXNzaW9ucyBhcmUgYWxsb3dlZCBpbiBhbiBleHByZXNzaW9uIGZvciBpdCB0byBiZSB1c2VkIHdoZW4gbWVkaWEgcXVlcmllc1xuLy8vIGFyZSBub3Qgc3VwcG9ydGVkLlxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFRoaXMgbWVkaWEgcXVlcnkgd2lsbCBzaG93IGJlY2F1c2UgaXQgaW50ZXJjZXB0cyB0aGUgc3RhdGljIGJyZWFrcG9pbnQgYW5kIGNvbnRhaW5zIG9ubHkgYWNjZXB0ZWQgbWVkaWEgZXhwcmVzc2lvbnNcbi8vLyAgJGltLW1lZGlhLXN1cHBvcnQ6IGZhbHNlO1xuLy8vICAkaW0tbm8tbWVkaWEtYnJlYWtwb2ludDogJ2Rlc2t0b3AnO1xuLy8vICAkaW0tbm8tbWVkaWEtZXhwcmVzc2lvbnM6ICgnc2NyZWVuJyk7XG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcsICdzY3JlZW4nKSB7XG4vLy8gICAgLmZvbyB7XG4vLy8gICAgICBjb2xvcjogdG9tYXRvO1xuLy8vICAgIH1cbi8vLyAgfVxuLy8vXG4vLy8gICAvKiBHZW5lcmF0ZXM6ICovXG4vLy8gICAuZm9vIHtcbi8vLyAgICAgY29sb3I6IHRvbWF0bztcbi8vLyAgIH1cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBUaGlzIG1lZGlhIHF1ZXJ5IHdpbGwgTk9UIHNob3cgYmVjYXVzZSBpdCBpbnRlcmNlcHRzIHRoZSBzdGF0aWMgYnJlYWtwb2ludCBidXQgY29udGFpbnMgYSBtZWRpYSBleHByZXNzaW9uIHRoYXQgaXMgbm90IGFjY2VwdGVkXG4vLy8gICRpbS1tZWRpYS1zdXBwb3J0OiBmYWxzZTtcbi8vLyAgJGltLW5vLW1lZGlhLWJyZWFrcG9pbnQ6ICdkZXNrdG9wJztcbi8vLyAgJGltLW5vLW1lZGlhLWV4cHJlc3Npb25zOiAoJ3NjcmVlbicpO1xuLy8vICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnLCAncmV0aW5hMngnKSB7XG4vLy8gICAgLmZvbyB7XG4vLy8gICAgICBjb2xvcjogdG9tYXRvO1xuLy8vICAgIH1cbi8vLyAgfVxuLy8vXG4vLy8gIC8qIE5vIG91dHB1dCAqL1xuLy8vXG4kaW0tbm8tbWVkaWEtZXhwcmVzc2lvbnM6ICgnc2NyZWVuJywgJ3BvcnRyYWl0JywgJ2xhbmRzY2FwZScpICFkZWZhdWx0O1xuXG4vLy8vXG4vLy8gQ3Jvc3MtZW5naW5lIGxvZ2dpbmcgZW5naW5lXG4vLy8gQGF1dGhvciBIdWdvIEdpcmF1ZGVsXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8vXG5cblxuLy8vXG4vLy8gTG9nIGEgbWVzc2FnZSBlaXRoZXIgd2l0aCBgQGVycm9yYCBpZiBzdXBwb3J0ZWRcbi8vLyBlbHNlIHdpdGggYEB3YXJuYCwgdXNpbmcgYGZlYXR1cmUtZXhpc3RzKCdhdC1lcnJvcicpYFxuLy8vIHRvIGRldGVjdCBzdXBwb3J0LlxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRtZXNzYWdlIC0gTWVzc2FnZSB0byBsb2dcbi8vL1xuQGZ1bmN0aW9uIGltLWxvZygkbWVzc2FnZSkge1xuICBAaWYgZmVhdHVyZS1leGlzdHMoJ2F0LWVycm9yJykge1xuICAgIEBlcnJvciAkbWVzc2FnZTtcbiAgfSBAZWxzZSB7XG4gICAgQHdhcm4gJG1lc3NhZ2U7XG4gICAgJF86IG5vb3AoKTtcbiAgfVxuXG4gIEByZXR1cm4gJG1lc3NhZ2U7XG59XG5cblxuLy8vXG4vLy8gV3JhcHBlciBtaXhpbiBmb3IgdGhlIGxvZyBmdW5jdGlvbiBzbyBpdCBjYW4gYmUgdXNlZCB3aXRoIGEgbW9yZSBmcmllbmRseVxuLy8vIEFQSSB0aGFuIGBAaWYgaW0tbG9nKCcuLicpIHt9YCBvciBgJF86IGltLWxvZygnLi4nKWAuIEJhc2ljYWxseSwgdXNlIHRoZSBmdW5jdGlvblxuLy8vIHdpdGhpbiBmdW5jdGlvbnMgYmVjYXVzZSBpdCBpcyBub3QgcG9zc2libGUgdG8gaW5jbHVkZSBhIG1peGluIGluIGEgZnVuY3Rpb25cbi8vLyBhbmQgdXNlIHRoZSBtaXhpbiBldmVyeXdoZXJlIGVsc2UgYmVjYXVzZSBpdCdzIG11Y2ggbW9yZSBlbGVnYW50LlxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRtZXNzYWdlIC0gTWVzc2FnZSB0byBsb2dcbi8vL1xuQG1peGluIGxvZygkbWVzc2FnZSkge1xuICBAaWYgaW0tbG9nKCRtZXNzYWdlKSB7fVxufVxuXG5cbi8vL1xuLy8vIEZ1bmN0aW9uIHdpdGggbm8gYEByZXR1cm5gIGNhbGxlZCBuZXh0IHRvIGBAd2FybmAgaW4gU2FzcyAzLjNcbi8vLyB0byB0cmlnZ2VyIGEgY29tcGlsaW5nIGVycm9yIGFuZCBzdG9wIHRoZSBwcm9jZXNzLlxuLy8vXG5AZnVuY3Rpb24gbm9vcCgpIHt9XG5cbi8vL1xuLy8vIERldGVybWluZXMgd2hldGhlciBhIGxpc3Qgb2YgY29uZGl0aW9ucyBpcyBpbnRlcmNlcHRlZCBieSB0aGUgc3RhdGljIGJyZWFrcG9pbnQuXG4vLy9cbi8vLyBAcGFyYW0ge0FyZ2xpc3R9ICAgJGNvbmRpdGlvbnMgIC0gTWVkaWEgcXVlcnkgY29uZGl0aW9uc1xuLy8vXG4vLy8gQHJldHVybiB7Qm9vbGVhbn0gLSBSZXR1cm5zIHRydWUgaWYgdGhlIGNvbmRpdGlvbnMgYXJlIGludGVyY2VwdGVkIGJ5IHRoZSBzdGF0aWMgYnJlYWtwb2ludFxuLy8vXG5AZnVuY3Rpb24gaW0taW50ZXJjZXB0cy1zdGF0aWMtYnJlYWtwb2ludCgkY29uZGl0aW9ucy4uLikge1xuICAkbm8tbWVkaWEtYnJlYWtwb2ludC12YWx1ZTogbWFwLWdldCgkYnJlYWtwb2ludHMsICRpbS1uby1tZWRpYS1icmVha3BvaW50KTtcblxuICBAaWYgbm90ICRuby1tZWRpYS1icmVha3BvaW50LXZhbHVlIHtcbiAgICBAaWYgaW0tbG9nKCdgI3skaW0tbm8tbWVkaWEtYnJlYWtwb2ludH1gIGlzIG5vdCBhIHZhbGlkIGJyZWFrcG9pbnQuJykge31cbiAgfVxuXG4gIEBlYWNoICRjb25kaXRpb24gaW4gJGNvbmRpdGlvbnMge1xuICAgIEBpZiBub3QgbWFwLWhhcy1rZXkoJG1lZGlhLWV4cHJlc3Npb25zLCAkY29uZGl0aW9uKSB7XG4gICAgICAkb3BlcmF0b3I6IGdldC1leHByZXNzaW9uLW9wZXJhdG9yKCRjb25kaXRpb24pO1xuICAgICAgJHByZWZpeDogZ2V0LWV4cHJlc3Npb24tcHJlZml4KCRvcGVyYXRvcik7XG4gICAgICAkdmFsdWU6IGdldC1leHByZXNzaW9uLXZhbHVlKCRjb25kaXRpb24sICRvcGVyYXRvcik7XG5cbiAgICAgIEBpZiAoJHByZWZpeCA9PSAnbWF4JyBhbmQgJHZhbHVlIDw9ICRuby1tZWRpYS1icmVha3BvaW50LXZhbHVlKSBvclxuICAgICAgICAgICgkcHJlZml4ID09ICdtaW4nIGFuZCAkdmFsdWUgPiAkbm8tbWVkaWEtYnJlYWtwb2ludC12YWx1ZSkge1xuICAgICAgICBAcmV0dXJuIGZhbHNlO1xuICAgICAgfVxuICAgIH0gQGVsc2UgaWYgbm90IGluZGV4KCRpbS1uby1tZWRpYS1leHByZXNzaW9ucywgJGNvbmRpdGlvbikge1xuICAgICAgQHJldHVybiBmYWxzZTtcbiAgICB9XG4gIH1cblxuICBAcmV0dXJuIHRydWU7XG59XG5cbi8vLy9cbi8vLyBQYXJzaW5nIGVuZ2luZVxuLy8vIEBhdXRob3IgSHVnbyBHaXJhdWRlbFxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vL1xuXG5cbi8vL1xuLy8vIEdldCBvcGVyYXRvciBvZiBhbiBleHByZXNzaW9uXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGV4cHJlc3Npb24gLSBFeHByZXNzaW9uIHRvIGV4dHJhY3Qgb3BlcmF0b3IgZnJvbVxuLy8vXG4vLy8gQHJldHVybiB7U3RyaW5nfSAtIEFueSBvZiBgPj1gLCBgPmAsIGA8PWAsIGA8YCwgYOKJpWAsIGDiiaRgXG4vLy9cbkBmdW5jdGlvbiBnZXQtZXhwcmVzc2lvbi1vcGVyYXRvcigkZXhwcmVzc2lvbikge1xuICBAZWFjaCAkb3BlcmF0b3IgaW4gKCc+PScsICc+JywgJzw9JywgJzwnLCAn4omlJywgJ+KJpCcpIHtcbiAgICBAaWYgc3RyLWluZGV4KCRleHByZXNzaW9uLCAkb3BlcmF0b3IpIHtcbiAgICAgIEByZXR1cm4gJG9wZXJhdG9yO1xuICAgIH1cbiAgfVxuXG4gIC8vIEl0IGlzIG5vdCBwb3NzaWJsZSB0byBpbmNsdWRlIGEgbWl4aW4gaW5zaWRlIGEgZnVuY3Rpb24sIHNvIHdlIGhhdmUgdG9cbiAgLy8gcmVseSBvbiB0aGUgYGltLWxvZyguLilgIGZ1bmN0aW9uIHJhdGhlciB0aGFuIHRoZSBgbG9nKC4uKWAgbWl4aW4uIEJlY2F1c2VcbiAgLy8gZnVuY3Rpb25zIGNhbm5vdCBiZSBjYWxsZWQgYW55d2hlcmUgaW4gU2Fzcywgd2UgbmVlZCB0byBoYWNrIHRoZSBjYWxsIGluXG4gIC8vIGEgZHVtbXkgdmFyaWFibGUsIHN1Y2ggYXMgYCRfYC4gSWYgYW55Ym9keSBldmVyIHJhaXNlIGEgc2NvcGluZyBpc3N1ZSB3aXRoXG4gIC8vIFNhc3MgMy4zLCBjaGFuZ2UgdGhpcyBsaW5lIGluIGBAaWYgaW0tbG9nKC4uKSB7fWAgaW5zdGVhZC5cbiAgJF86IGltLWxvZygnTm8gb3BlcmF0b3IgZm91bmQgaW4gYCN7JGV4cHJlc3Npb259YC4nKTtcbn1cblxuXG4vLy9cbi8vLyBHZXQgZGltZW5zaW9uIG9mIGFuIGV4cHJlc3Npb24sIGJhc2VkIG9uIGEgZm91bmQgb3BlcmF0b3Jcbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkZXhwcmVzc2lvbiAtIEV4cHJlc3Npb24gdG8gZXh0cmFjdCBkaW1lbnNpb24gZnJvbVxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkb3BlcmF0b3IgLSBPcGVyYXRvciBmcm9tIGAkZXhwcmVzc2lvbmBcbi8vL1xuLy8vIEByZXR1cm4ge1N0cmluZ30gLSBgd2lkdGhgIG9yIGBoZWlnaHRgIChvciBwb3RlbnRpYWxseSBhbnl0aGluZyBlbHNlKVxuLy8vXG5AZnVuY3Rpb24gZ2V0LWV4cHJlc3Npb24tZGltZW5zaW9uKCRleHByZXNzaW9uLCAkb3BlcmF0b3IpIHtcbiAgJG9wZXJhdG9yLWluZGV4OiBzdHItaW5kZXgoJGV4cHJlc3Npb24sICRvcGVyYXRvcik7XG4gICRwYXJzZWQtZGltZW5zaW9uOiBzdHItc2xpY2UoJGV4cHJlc3Npb24sIDAsICRvcGVyYXRvci1pbmRleCAtIDEpO1xuICAkZGltZW5zaW9uOiAnd2lkdGgnO1xuXG4gIEBpZiBzdHItbGVuZ3RoKCRwYXJzZWQtZGltZW5zaW9uKSA+IDAge1xuICAgICRkaW1lbnNpb246ICRwYXJzZWQtZGltZW5zaW9uO1xuICB9XG5cbiAgQHJldHVybiAkZGltZW5zaW9uO1xufVxuXG5cbi8vL1xuLy8vIEdldCBkaW1lbnNpb24gcHJlZml4IGJhc2VkIG9uIGFuIG9wZXJhdG9yXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJG9wZXJhdG9yIC0gT3BlcmF0b3Jcbi8vL1xuLy8vIEByZXR1cm4ge1N0cmluZ30gLSBgbWluYCBvciBgbWF4YFxuLy8vXG5AZnVuY3Rpb24gZ2V0LWV4cHJlc3Npb24tcHJlZml4KCRvcGVyYXRvcikge1xuICBAcmV0dXJuIGlmKGluZGV4KCgnPCcsICc8PScsICfiiaQnKSwgJG9wZXJhdG9yKSwgJ21heCcsICdtaW4nKTtcbn1cblxuXG4vLy9cbi8vLyBHZXQgdmFsdWUgb2YgYW4gZXhwcmVzc2lvbiwgYmFzZWQgb24gYSBmb3VuZCBvcGVyYXRvclxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRleHByZXNzaW9uIC0gRXhwcmVzc2lvbiB0byBleHRyYWN0IHZhbHVlIGZyb21cbi8vLyBAcGFyYW0ge1N0cmluZ30gJG9wZXJhdG9yIC0gT3BlcmF0b3IgZnJvbSBgJGV4cHJlc3Npb25gXG4vLy9cbi8vLyBAcmV0dXJuIHtOdW1iZXJ9IC0gQSBudW1lcmljIHZhbHVlXG4vLy9cbkBmdW5jdGlvbiBnZXQtZXhwcmVzc2lvbi12YWx1ZSgkZXhwcmVzc2lvbiwgJG9wZXJhdG9yKSB7XG4gICRvcGVyYXRvci1pbmRleDogc3RyLWluZGV4KCRleHByZXNzaW9uLCAkb3BlcmF0b3IpO1xuICAkdmFsdWU6IHN0ci1zbGljZSgkZXhwcmVzc2lvbiwgJG9wZXJhdG9yLWluZGV4ICsgc3RyLWxlbmd0aCgkb3BlcmF0b3IpKTtcblxuICBAaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCAkdmFsdWUpIHtcbiAgICAkdmFsdWU6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkdmFsdWUpO1xuICB9IEBlbHNlIHtcbiAgICAkdmFsdWU6IHRvLW51bWJlcigkdmFsdWUpO1xuICB9XG5cbiAgJGludGVydmFsOiBtYXAtZ2V0KCR1bml0LWludGVydmFscywgdW5pdCgkdmFsdWUpKTtcblxuICBAaWYgbm90ICRpbnRlcnZhbCB7XG4gICAgLy8gSXQgaXMgbm90IHBvc3NpYmxlIHRvIGluY2x1ZGUgYSBtaXhpbiBpbnNpZGUgYSBmdW5jdGlvbiwgc28gd2UgaGF2ZSB0b1xuICAgIC8vIHJlbHkgb24gdGhlIGBpbS1sb2coLi4pYCBmdW5jdGlvbiByYXRoZXIgdGhhbiB0aGUgYGxvZyguLilgIG1peGluLiBCZWNhdXNlXG4gICAgLy8gZnVuY3Rpb25zIGNhbm5vdCBiZSBjYWxsZWQgYW55d2hlcmUgaW4gU2Fzcywgd2UgbmVlZCB0byBoYWNrIHRoZSBjYWxsIGluXG4gICAgLy8gYSBkdW1teSB2YXJpYWJsZSwgc3VjaCBhcyBgJF9gLiBJZiBhbnlib2R5IGV2ZXIgcmFpc2UgYSBzY29waW5nIGlzc3VlIHdpdGhcbiAgICAvLyBTYXNzIDMuMywgY2hhbmdlIHRoaXMgbGluZSBpbiBgQGlmIGltLWxvZyguLikge31gIGluc3RlYWQuXG4gICAgJF86IGltLWxvZygnVW5rbm93biB1bml0IGAje3VuaXQoJHZhbHVlKX1gLicpO1xuICB9XG5cbiAgQGlmICRvcGVyYXRvciA9PSAnPicge1xuICAgICR2YWx1ZTogJHZhbHVlICsgJGludGVydmFsO1xuICB9IEBlbHNlIGlmICRvcGVyYXRvciA9PSAnPCcge1xuICAgICR2YWx1ZTogJHZhbHVlIC0gJGludGVydmFsO1xuICB9XG5cbiAgQHJldHVybiAkdmFsdWU7XG59XG5cblxuLy8vXG4vLy8gUGFyc2UgYW4gZXhwcmVzc2lvbiB0byByZXR1cm4gYSB2YWxpZCBtZWRpYS1xdWVyeSBleHByZXNzaW9uXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGV4cHJlc3Npb24gLSBFeHByZXNzaW9uIHRvIHBhcnNlXG4vLy9cbi8vLyBAcmV0dXJuIHtTdHJpbmd9IC0gVmFsaWQgbWVkaWEgcXVlcnlcbi8vL1xuQGZ1bmN0aW9uIHBhcnNlLWV4cHJlc3Npb24oJGV4cHJlc3Npb24pIHtcbiAgLy8gSWYgaXQgaXMgcGFydCBvZiAkbWVkaWEtZXhwcmVzc2lvbnMsIGl0IGhhcyBubyBvcGVyYXRvclxuICAvLyB0aGVuIHRoZXJlIGlzIG5vIG5lZWQgdG8gZ28gYW55IGZ1cnRoZXIsIGp1c3QgcmV0dXJuIHRoZSB2YWx1ZVxuICBAaWYgbWFwLWhhcy1rZXkoJG1lZGlhLWV4cHJlc3Npb25zLCAkZXhwcmVzc2lvbikge1xuICAgIEByZXR1cm4gbWFwLWdldCgkbWVkaWEtZXhwcmVzc2lvbnMsICRleHByZXNzaW9uKTtcbiAgfVxuXG4gICRvcGVyYXRvcjogZ2V0LWV4cHJlc3Npb24tb3BlcmF0b3IoJGV4cHJlc3Npb24pO1xuICAkZGltZW5zaW9uOiBnZXQtZXhwcmVzc2lvbi1kaW1lbnNpb24oJGV4cHJlc3Npb24sICRvcGVyYXRvcik7XG4gICRwcmVmaXg6IGdldC1leHByZXNzaW9uLXByZWZpeCgkb3BlcmF0b3IpO1xuICAkdmFsdWU6IGdldC1leHByZXNzaW9uLXZhbHVlKCRleHByZXNzaW9uLCAkb3BlcmF0b3IpO1xuXG4gIEByZXR1cm4gJygjeyRwcmVmaXh9LSN7JGRpbWVuc2lvbn06ICN7JHZhbHVlfSknO1xufVxuXG4vLy9cbi8vLyBTbGljZSBgJGxpc3RgIGJldHdlZW4gYCRzdGFydGAgYW5kIGAkZW5kYCBpbmRleGVzXG4vLy9cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TGlzdH0gJGxpc3QgLSBMaXN0IHRvIHNsaWNlXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRzdGFydCBbMV0gLSBTdGFydCBpbmRleFxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkZW5kIFtsZW5ndGgoJGxpc3QpXSAtIEVuZCBpbmRleFxuLy8vXG4vLy8gQHJldHVybiB7TGlzdH0gU2xpY2VkIGxpc3Rcbi8vL1xuQGZ1bmN0aW9uIHNsaWNlKCRsaXN0LCAkc3RhcnQ6IDEsICRlbmQ6IGxlbmd0aCgkbGlzdCkpIHtcbiAgQGlmIGxlbmd0aCgkbGlzdCkgPCAxIG9yICRzdGFydCA+ICRlbmQge1xuICAgIEByZXR1cm4gKCk7XG4gIH1cblxuICAkcmVzdWx0OiAoKTtcblxuICBAZm9yICRpIGZyb20gJHN0YXJ0IHRocm91Z2ggJGVuZCB7XG4gICAgJHJlc3VsdDogYXBwZW5kKCRyZXN1bHQsIG50aCgkbGlzdCwgJGkpKTtcbiAgfVxuXG4gIEByZXR1cm4gJHJlc3VsdDtcbn1cblxuLy8vL1xuLy8vIFN0cmluZyB0byBudW1iZXIgY29udmVydGVyXG4vLy8gQGF1dGhvciBIdWdvIEdpcmF1ZGVsXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8vXG5cblxuLy8vXG4vLy8gQ2FzdHMgYSBzdHJpbmcgaW50byBhIG51bWJlclxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmcgfCBOdW1iZXJ9ICR2YWx1ZSAtIFZhbHVlIHRvIGJlIHBhcnNlZFxuLy8vXG4vLy8gQHJldHVybiB7TnVtYmVyfVxuLy8vXG5AZnVuY3Rpb24gdG8tbnVtYmVyKCR2YWx1ZSkge1xuICBAaWYgdHlwZS1vZigkdmFsdWUpID09ICdudW1iZXInIHtcbiAgICBAcmV0dXJuICR2YWx1ZTtcbiAgfSBAZWxzZSBpZiB0eXBlLW9mKCR2YWx1ZSkgIT0gJ3N0cmluZycge1xuICAgICRfOiBpbS1sb2coJ1ZhbHVlIGZvciBgdG8tbnVtYmVyYCBzaG91bGQgYmUgYSBudW1iZXIgb3IgYSBzdHJpbmcuJyk7XG4gIH1cblxuICAkZmlyc3QtY2hhcmFjdGVyOiBzdHItc2xpY2UoJHZhbHVlLCAxLCAxKTtcbiAgJHJlc3VsdDogMDtcbiAgJGRpZ2l0czogMDtcbiAgJG1pbnVzOiAoJGZpcnN0LWNoYXJhY3RlciA9PSAnLScpO1xuICAkbnVtYmVyczogKCcwJzogMCwgJzEnOiAxLCAnMic6IDIsICczJzogMywgJzQnOiA0LCAnNSc6IDUsICc2JzogNiwgJzcnOiA3LCAnOCc6IDgsICc5JzogOSk7XG5cbiAgLy8gUmVtb3ZlICsvLSBzaWduIGlmIHByZXNlbnQgYXQgZmlyc3QgY2hhcmFjdGVyXG4gIEBpZiAoJGZpcnN0LWNoYXJhY3RlciA9PSAnKycgb3IgJGZpcnN0LWNoYXJhY3RlciA9PSAnLScpIHtcbiAgICAkdmFsdWU6IHN0ci1zbGljZSgkdmFsdWUsIDIpO1xuICB9XG5cbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCBzdHItbGVuZ3RoKCR2YWx1ZSkge1xuICAgICRjaGFyYWN0ZXI6IHN0ci1zbGljZSgkdmFsdWUsICRpLCAkaSk7XG5cbiAgICBAaWYgbm90IChpbmRleChtYXAta2V5cygkbnVtYmVycyksICRjaGFyYWN0ZXIpIG9yICRjaGFyYWN0ZXIgPT0gJy4nKSB7XG4gICAgICBAcmV0dXJuIHRvLWxlbmd0aChpZigkbWludXMsIC0kcmVzdWx0LCAkcmVzdWx0KSwgc3RyLXNsaWNlKCR2YWx1ZSwgJGkpKVxuICAgIH1cblxuICAgIEBpZiAkY2hhcmFjdGVyID09ICcuJyB7XG4gICAgICAkZGlnaXRzOiAxO1xuICAgIH0gQGVsc2UgaWYgJGRpZ2l0cyA9PSAwIHtcbiAgICAgICRyZXN1bHQ6ICRyZXN1bHQgKiAxMCArIG1hcC1nZXQoJG51bWJlcnMsICRjaGFyYWN0ZXIpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgJGRpZ2l0czogJGRpZ2l0cyAqIDEwO1xuICAgICAgJHJlc3VsdDogJHJlc3VsdCArIG1hcC1nZXQoJG51bWJlcnMsICRjaGFyYWN0ZXIpIC8gJGRpZ2l0cztcbiAgICB9XG4gIH1cblxuICBAcmV0dXJuIGlmKCRtaW51cywgLSRyZXN1bHQsICRyZXN1bHQpO1xufVxuXG5cbi8vL1xuLy8vIEFkZCBgJHVuaXRgIHRvIGAkdmFsdWVgXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJHZhbHVlIC0gVmFsdWUgdG8gYWRkIHVuaXQgdG9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJHVuaXQgLSBTdHJpbmcgcmVwcmVzZW50YXRpb24gb2YgdGhlIHVuaXRcbi8vL1xuLy8vIEByZXR1cm4ge051bWJlcn0gLSBgJHZhbHVlYCBleHByZXNzZWQgaW4gYCR1bml0YFxuLy8vXG5AZnVuY3Rpb24gdG8tbGVuZ3RoKCR2YWx1ZSwgJHVuaXQpIHtcbiAgJHVuaXRzOiAoJ3B4JzogMXB4LCAnY20nOiAxY20sICdtbSc6IDFtbSwgJyUnOiAxJSwgJ2NoJzogMWNoLCAncGMnOiAxcGMsICdpbic6IDFpbiwgJ2VtJzogMWVtLCAncmVtJzogMXJlbSwgJ3B0JzogMXB0LCAnZXgnOiAxZXgsICd2dyc6IDF2dywgJ3ZoJzogMXZoLCAndm1pbic6IDF2bWluLCAndm1heCc6IDF2bWF4KTtcblxuICBAaWYgbm90IGluZGV4KG1hcC1rZXlzKCR1bml0cyksICR1bml0KSB7XG4gICAgJF86IGltLWxvZygnSW52YWxpZCB1bml0IGAjeyR1bml0fWAuJyk7XG4gIH1cblxuICBAcmV0dXJuICR2YWx1ZSAqIG1hcC1nZXQoJHVuaXRzLCAkdW5pdCk7XG59XG5cbi8vL1xuLy8vIFRoaXMgbWl4aW4gYWltcyBhdCByZWRlZmluaW5nIHRoZSBjb25maWd1cmF0aW9uIGp1c3QgZm9yIHRoZSBzY29wZSBvZlxuLy8vIHRoZSBjYWxsLiBJdCBpcyBoZWxwZnVsIHdoZW4gaGF2aW5nIGEgY29tcG9uZW50IG5lZWRpbmcgYW4gZXh0ZW5kZWRcbi8vLyBjb25maWd1cmF0aW9uIHN1Y2ggYXMgY3VzdG9tIGJyZWFrcG9pbnRzIChyZWZlcnJlZCB0byBhcyB0d2Vha3BvaW50cylcbi8vLyBmb3IgaW5zdGFuY2UuXG4vLy9cbi8vLyBAYXV0aG9yIEh1Z28gR2lyYXVkZWxcbi8vL1xuLy8vIEBwYXJhbSB7TWFwfSAkdHdlYWtwb2ludHMgWygpXSAtIE1hcCBvZiB0d2Vha3BvaW50cyB0byBiZSBtZXJnZWQgd2l0aCBgJGJyZWFrcG9pbnRzYFxuLy8vIEBwYXJhbSB7TWFwfSAkdHdlYWstbWVkaWEtZXhwcmVzc2lvbnMgWygpXSAtIE1hcCBvZiB0d2Vha2VkIG1lZGlhIGV4cHJlc3Npb25zIHRvIGJlIG1lcmdlZCB3aXRoIGAkbWVkaWEtZXhwcmVzc2lvbmBcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBFeHRlbmQgdGhlIGdsb2JhbCBicmVha3BvaW50cyB3aXRoIGEgdHdlYWtwb2ludFxuLy8vICBAaW5jbHVkZSBtZWRpYS1jb250ZXh0KCgnY3VzdG9tJzogNjc4cHgpKSB7XG4vLy8gICAgLmZvbyB7XG4vLy8gICAgICBAaW5jbHVkZSBtZWRpYSgnPnBob25lJywgJzw9Y3VzdG9tJykge1xuLy8vICAgICAgIC8vIC4uLlxuLy8vICAgICAgfVxuLy8vICAgIH1cbi8vLyAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIEV4dGVuZCB0aGUgZ2xvYmFsIG1lZGlhIGV4cHJlc3Npb25zIHdpdGggYSBjdXN0b20gb25lXG4vLy8gIEBpbmNsdWRlIG1lZGlhLWNvbnRleHQoJHR3ZWFrLW1lZGlhLWV4cHJlc3Npb25zOiAoJ2FsbCc6ICdhbGwnKSkge1xuLy8vICAgIC5mb28ge1xuLy8vICAgICAgQGluY2x1ZGUgbWVkaWEoJ2FsbCcsICc+cGhvbmUnKSB7XG4vLy8gICAgICAgLy8gLi4uXG4vLy8gICAgICB9XG4vLy8gICAgfVxuLy8vICB9XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gRXh0ZW5kIGJvdGggY29uZmlndXJhdGlvbiBtYXBzXG4vLy8gIEBpbmNsdWRlIG1lZGlhLWNvbnRleHQoKCdjdXN0b20nOiA2NzhweCksICgnYWxsJzogJ2FsbCcpKSB7XG4vLy8gICAgLmZvbyB7XG4vLy8gICAgICBAaW5jbHVkZSBtZWRpYSgnYWxsJywgJz5waG9uZScsICc8PWN1c3RvbScpIHtcbi8vLyAgICAgICAvLyAuLi5cbi8vLyAgICAgIH1cbi8vLyAgICB9XG4vLy8gIH1cbi8vL1xuQG1peGluIG1lZGlhLWNvbnRleHQoJHR3ZWFrcG9pbnRzOiAoKSwgJHR3ZWFrLW1lZGlhLWV4cHJlc3Npb25zOiAoKSkge1xuICAvLyBTYXZlIGdsb2JhbCBjb25maWd1cmF0aW9uXG4gICRnbG9iYWwtYnJlYWtwb2ludHM6ICRicmVha3BvaW50cztcbiAgJGdsb2JhbC1tZWRpYS1leHByZXNzaW9uczogJG1lZGlhLWV4cHJlc3Npb25zO1xuXG4gIC8vIFVwZGF0ZSBnbG9iYWwgY29uZmlndXJhdGlvblxuICAkYnJlYWtwb2ludHM6IG1hcC1tZXJnZSgkYnJlYWtwb2ludHMsICR0d2Vha3BvaW50cykgIWdsb2JhbDtcbiAgJG1lZGlhLWV4cHJlc3Npb25zOiBtYXAtbWVyZ2UoJG1lZGlhLWV4cHJlc3Npb25zLCAkdHdlYWstbWVkaWEtZXhwcmVzc2lvbnMpICFnbG9iYWw7XG5cbiAgQGNvbnRlbnQ7XG5cbiAgLy8gUmVzdG9yZSBnbG9iYWwgY29uZmlndXJhdGlvblxuICAkYnJlYWtwb2ludHM6ICRnbG9iYWwtYnJlYWtwb2ludHMgIWdsb2JhbDtcbiAgJG1lZGlhLWV4cHJlc3Npb25zOiAkZ2xvYmFsLW1lZGlhLWV4cHJlc3Npb25zICFnbG9iYWw7XG59XG5cbi8vLy9cbi8vLyBpbmNsdWRlLW1lZGlhIHB1YmxpYyBleHBvc2VkIEFQSVxuLy8vIEBhdXRob3IgRWR1YXJkbyBCb3VjYXNcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vL1xuXG5cbi8vL1xuLy8vIEdlbmVyYXRlcyBhIG1lZGlhIHF1ZXJ5IGJhc2VkIG9uIGEgbGlzdCBvZiBjb25kaXRpb25zXG4vLy9cbi8vLyBAcGFyYW0ge0FyZ2xpc3R9ICAgJGNvbmRpdGlvbnMgIC0gTWVkaWEgcXVlcnkgY29uZGl0aW9uc1xuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFdpdGggYSBzaW5nbGUgc2V0IGJyZWFrcG9pbnRcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz5waG9uZScpIHsgfVxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFdpdGggdHdvIHNldCBicmVha3BvaW50c1xuLy8vICBAaW5jbHVkZSBtZWRpYSgnPnBob25lJywgJzw9dGFibGV0JykgeyB9XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gV2l0aCBjdXN0b20gdmFsdWVzXG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+PTM1OHB4JywgJzw4NTBweCcpIHsgfVxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFdpdGggc2V0IGJyZWFrcG9pbnRzIHdpdGggY3VzdG9tIHZhbHVlc1xuLy8vICBAaW5jbHVkZSBtZWRpYSgnPmRlc2t0b3AnLCAnPD0xMzUwcHgnKSB7IH1cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBXaXRoIGEgc3RhdGljIGV4cHJlc3Npb25cbi8vLyAgQGluY2x1ZGUgbWVkaWEoJ3JldGluYTJ4JykgeyB9XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gTWl4aW5nIGV2ZXJ5dGhpbmdcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz49MzUwcHgnLCAnPHRhYmxldCcsICdyZXRpbmEzeCcpIHsgfVxuLy8vXG5AbWl4aW4gbWVkaWEoJGNvbmRpdGlvbnMuLi4pIHtcbiAgQGlmICgkaW0tbWVkaWEtc3VwcG9ydCBhbmQgbGVuZ3RoKCRjb25kaXRpb25zKSA9PSAwKSBvclxuICAgICAgKG5vdCAkaW0tbWVkaWEtc3VwcG9ydCBhbmQgaW0taW50ZXJjZXB0cy1zdGF0aWMtYnJlYWtwb2ludCgkY29uZGl0aW9ucy4uLikpIHtcbiAgICBAY29udGVudDtcbiAgfSBAZWxzZSBpZiAoJGltLW1lZGlhLXN1cHBvcnQgYW5kIGxlbmd0aCgkY29uZGl0aW9ucykgPiAwKSB7XG4gICAgQG1lZGlhICN7dW5xdW90ZShwYXJzZS1leHByZXNzaW9uKG50aCgkY29uZGl0aW9ucywgMSkpKX0ge1xuICAgICAgLy8gUmVjdXJzaXZlIGNhbGxcbiAgICAgIEBpbmNsdWRlIG1lZGlhKHNsaWNlKCRjb25kaXRpb25zLCAyKS4uLikge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gQ29sb3JzXG4vL1xuLy8gU3R5bGVndWlkZSBCcmFuZGluZyAtIENvbG9yc1xuXG4vLyBQcmltYXJ5IENvbG9yc1xuLy9cbi8vIFByb21pbmVudCBjb2xvciBwYWxldHRlIHRoYXQgZXhwcmVzc2VzIHRoZSBicmFuZCBhbmQgZm91bmRhdGlvbi4gVXNlIDxjb2RlPmNvbG9yKHByaW1hcnksICRjb2xvcik8L2NvZGU+LlxuLy9cbi8vIDx1bCBjbGFzcz1cInN3YXRjaGVzXCI+XG4vLyAgIDxsaSBjbGFzcz1cInN3YXRjaFwiPlxuLy8gICAgIDxkaXYgc3R5bGU9XCJiYWNrZ3JvdW5kLWNvbG9yOiAjMDAyZjg3O1wiPjwvZGl2PlxuLy8gICAgIDxoNT5CbHVlPC9oNT5cbi8vICAgICA8dWw+XG4vLyAgICAgICA8bGk+IzAwMmY4NzwvbGk+XG4vLyAgICAgICA8bGk+PGNvZGU+Y29sb3IocHJpbWFyeSwgYmx1ZSk8L2NvZGU+PC9saT5cbi8vICAgICA8L3VsPlxuLy8gICA8L2xpPlxuLy8gICA8bGkgY2xhc3M9XCJzd2F0Y2hcIj5cbi8vICAgICA8ZGl2IHN0eWxlPVwiYmFja2dyb3VuZC1jb2xvcjogI2FlOTM2YztcIj48L2Rpdj5cbi8vICAgICA8aDU+R29sZDwvaDU+XG4vLyAgICAgPHVsPlxuLy8gICAgICAgPGxpPiNhZTkzNmM8L2xpPlxuLy8gICAgICAgPGxpPjxjb2RlPmNvbG9yKHByaW1hcnksIGdvbGQpPC9jb2RlPjwvbGk+XG4vLyAgICAgPC91bD5cbi8vICAgPC9saT5cbi8vICAgPGxpIGNsYXNzPVwic3dhdGNoXCI+XG4vLyAgICAgPGRpdiBzdHlsZT1cImJhY2tncm91bmQtY29sb3I6ICMxODE5MTk7XCI+PC9kaXY+XG4vLyAgICAgPGg1PkJsYWNrPC9oNT5cbi8vICAgICA8dWw+XG4vLyAgICAgICA8bGk+IzE4MTkxOTwvbGk+XG4vLyAgICAgICA8bGk+PGNvZGU+Y29sb3IocHJpbWFyeSwgYmxhY2spPC9jb2RlPjwvbGk+XG4vLyAgICAgPC91bD5cbi8vICAgPC9saT5cbi8vICAgPGxpIGNsYXNzPVwic3dhdGNoXCI+XG4vLyAgICAgPGRpdiBzdHlsZT1cImJhY2tncm91bmQtY29sb3I6ICM2Zjc3N2I7XCI+PC9kaXY+XG4vLyAgICAgPGg1PkdyYXk8L2g1PlxuLy8gICAgIDx1bD5cbi8vICAgICAgIDxsaT4jNmY3NzdiPC9saT5cbi8vICAgICAgIDxsaT48Y29kZT5jb2xvcihwcmltYXJ5LCBncmF5KTwvY29kZT48L2xpPlxuLy8gICAgIDwvdWw+XG4vLyAgIDwvbGk+XG4vLyAgIDxsaSBjbGFzcz1cInN3YXRjaFwiPlxuLy8gICAgIDxkaXYgc3R5bGU9XCJiYWNrZ3JvdW5kLWNvbG9yOiAjZjZmNmY2O1wiPjwvZGl2PlxuLy8gICAgIDxoNT5PZmYgV2hpdGU8L2g1PlxuLy8gICAgIDx1bD5cbi8vICAgICAgIDxsaT4jZjZmNmY2PC9saT5cbi8vICAgICAgIDxsaT48Y29kZT5jb2xvcihwcmltYXJ5LCBvZmYtd2hpdGUpPC9jb2RlPjwvbGk+XG4vLyAgICAgPC91bD5cbi8vICAgPC9saT5cbi8vICAgPGxpIGNsYXNzPVwic3dhdGNoXCI+XG4vLyAgICAgPGRpdiBzdHlsZT1cImJhY2tncm91bmQtY29sb3I6ICNmZmY7XCI+PC9kaXY+XG4vLyAgICAgPGg1PldoaXRlPC9oNT5cbi8vICAgICA8dWw+XG4vLyAgICAgICA8bGk+I2ZmZmZmZjwvbGk+XG4vLyAgICAgICA8bGk+PGNvZGU+Y29sb3IocHJpbWFyeSwgd2hpdGUpPC9jb2RlPjwvbGk+XG4vLyAgICAgPC91bD5cbi8vICAgPC9saT5cbi8vIDwvdWw+XG4vL1xuLy8gU3R5bGVndWlkZSBCcmFuZGluZyAtIENvbG9ycyAtIFByaW1hcnkgQ29sb3JzXG5cbi8vIFNlY29uZGFyeSBDb2xvcnNcbi8vXG4vLyBTdXBwbGVtZW50YWwgYWNjZW50IGNvbG9ycyB0byBlbXBoYXNpemUgZWxlbWVudHMuIFVzZSA8Y29kZT5jb2xvcihzZWNvbmRhcnksICRjb2xvcik8L2NvZGU+LlxuLy9cbi8vIDx1bCBjbGFzcz1cInN3YXRjaGVzIHNlY29uZGFyeVwiPlxuLy8gICA8bGkgY2xhc3M9XCJzd2F0Y2hcIj5cbi8vICAgICA8ZGl2IHN0eWxlPVwiYmFja2dyb3VuZC1jb2xvcjogIzE0NzdhOTtcIj48L2Rpdj5cbi8vICAgICA8aDU+Q3lhbjwvaDU+XG4vLyAgICAgPHVsPlxuLy8gICAgICAgPGxpPiMxNDc3YTk8L2xpPlxuLy8gICAgICAgPGxpPjxjb2RlPmNvbG9yKHNlY29uZGFyeSwgY3lhbik8L2NvZGU+PC9saT5cbi8vICAgICA8L3VsPlxuLy8gICA8L2xpPlxuLy8gICA8bGkgY2xhc3M9XCJzd2F0Y2hcIj5cbi8vICAgICA8ZGl2IHN0eWxlPVwiYmFja2dyb3VuZC1jb2xvcjogIzRjMmM5MjtcIj48L2Rpdj5cbi8vICAgICA8aDU+UHVycGxlPC9oNT5cbi8vICAgICA8dWw+XG4vLyAgICAgICA8bGk+IzRjMmM5MjwvbGk+XG4vLyAgICAgICA8bGk+PGNvZGU+Y29sb3Ioc2Vjb25kYXJ5LCBwdXJwbGUpPC9jb2RlPjwvbGk+XG4vLyAgICAgPC91bD5cbi8vICAgPC9saT5cbi8vICAgPGxpIGNsYXNzPVwic3dhdGNoXCI+XG4vLyAgICAgPGRpdiBzdHlsZT1cImJhY2tncm91bmQtY29sb3I6ICNmZmJmNDc7XCI+PC9kaXY+XG4vLyAgICAgPGg1PkdvbGQ8L2g1PlxuLy8gICAgIDx1bD5cbi8vICAgICAgIDxsaT4jZmZiZjQ3PC9saT5cbi8vICAgICAgIDxsaT48Y29kZT5jb2xvcihzZWNvbmRhcnksIGdvbGQpPC9jb2RlPjwvbGk+XG4vLyAgICAgPC91bD5cbi8vICAgPC9saT5cbi8vICAgPGxpIGNsYXNzPVwic3dhdGNoXCI+XG4vLyAgICAgPGRpdiBzdHlsZT1cImJhY2tncm91bmQtY29sb3I6ICNkYzJhMmE7XCI+PC9kaXY+XG4vLyAgICAgPGg1PlJlZDwvaDU+XG4vLyAgICAgPHVsPlxuLy8gICAgICAgPGxpPiNkYzJhMmE8L2xpPlxuLy8gICAgICAgPGxpPjxjb2RlPmNvbG9yKHNlY29uZGFyeSwgcmVkKTwvY29kZT48L2xpPlxuLy8gICAgIDwvdWw+XG4vLyAgIDwvbGk+XG4vLyAgIDxsaSBjbGFzcz1cInN3YXRjaFwiPlxuLy8gICAgIDxkaXYgc3R5bGU9XCJiYWNrZ3JvdW5kLWNvbG9yOiAjMDA4MDgwO1wiPjwvZGl2PlxuLy8gICAgIDxoNT5HcmVlbjwvaDU+XG4vLyAgICAgPHVsPlxuLy8gICAgICAgPGxpPiMwMDgwODA8L2xpPlxuLy8gICAgICAgPGxpPjxjb2RlPmNvbG9yKHNlY29uZGFyeSwgZ3JlZW4pPC9jb2RlPjwvbGk+XG4vLyAgICAgPC91bD5cbi8vICAgPC9saT5cbi8vICAgPGxpIGNsYXNzPVwic3dhdGNoXCI+XG4vLyAgICAgPGRpdiBzdHlsZT1cImJhY2tncm91bmQtY29sb3I6ICMwOTJiM2M7XCI+PC9kaXY+XG4vLyAgICAgPGg1PkRhcmsgQmx1ZTwvaDU+XG4vLyAgICAgPHVsPlxuLy8gICAgICAgPGxpPiMwOTJiM2M8L2xpPlxuLy8gICAgICAgPGxpPjxjb2RlPmNvbG9yKHNlY29uZGFyeSwgZGFyay1ibHVlKTwvY29kZT48L2xpPlxuLy8gICAgIDwvdWw+XG4vLyAgIDwvbGk+XG4vLyAgIDxsaSBjbGFzcz1cInN3YXRjaFwiPlxuLy8gICAgIDxkaXYgc3R5bGU9XCJiYWNrZ3JvdW5kLWNvbG9yOiAjZjJmNGY5O1wiPjwvZGl2PlxuLy8gICAgIDxoNT5PZmYgQmx1ZTwvaDU+XG4vLyAgICAgPHVsPlxuLy8gICAgICAgPGxpPiNmMmY0Zjk8L2xpPlxuLy8gICAgICAgPGxpPjxjb2RlPmNvbG9yKHNlY29uZGFyeSwgb2ZmLWJsdWUpPC9jb2RlPjwvbGk+XG4vLyAgICAgPC91bD5cbi8vICAgPC9saT5cbi8vIDwvdWw+XG4vL1xuLy8gU3R5bGVndWlkZSBCcmFuZGluZyAtIENvbG9ycyAtIFNlY29uZGFyeSBDb2xvcnNcblxuLy8gU29jaWFsIENvbG9yc1xuLy9cbi8vIExpc3Qgb2YgYnJhbmQgY29sb3JzIGZvciBzb2NpYWwgbWVkaWEgcGxhdGZvcm1zLiBVc2UgPGNvZGU+Y29sb3Ioc29jaWFsLCAkY29sb3IpPC9jb2RlPi5cbi8vXG4vLyA8dWwgY2xhc3M9XCJzd2F0Y2hlcyBzZWNvbmRhcnlcIj5cbi8vICAgPGxpIGNsYXNzPVwic3dhdGNoXCI+XG4vLyAgICAgPGRpdiBzdHlsZT1cImJhY2tncm91bmQtY29sb3I6ICMzYjU5OTg7XCI+PC9kaXY+XG4vLyAgICAgPGg1PkZhY2Vib29rPC9oNT5cbi8vICAgICA8dWw+XG4vLyAgICAgICA8bGk+IzNiNTk5ODwvbGk+XG4vLyAgICAgICA8bGk+PGNvZGU+Y29sb3Ioc29jaWFsLCBmYWNlYm9vayk8L2NvZGU+PC9saT5cbi8vICAgICA8L3VsPlxuLy8gICA8L2xpPlxuLy8gICA8bGkgY2xhc3M9XCJzd2F0Y2hcIj5cbi8vICAgICA8ZGl2IHN0eWxlPVwiYmFja2dyb3VuZC1jb2xvcjogIzAwYjZmMTtcIj48L2Rpdj5cbi8vICAgICA8aDU+VHdpdHRlcjwvaDU+XG4vLyAgICAgPHVsPlxuLy8gICAgICAgPGxpPiMwMGI2ZjE8L2xpPlxuLy8gICAgICAgPGxpPjxjb2RlPmNvbG9yKHNvY2lhbCwgdHdpdHRlcik8L2NvZGU+PC9saT5cbi8vICAgICA8L3VsPlxuLy8gICA8L2xpPlxuLy8gICA8bGkgY2xhc3M9XCJzd2F0Y2hcIj5cbi8vICAgICA8ZGl2IHN0eWxlPVwiYmFja2dyb3VuZC1jb2xvcjogI2IzMTIxNztcIj48L2Rpdj5cbi8vICAgICA8aDU+WW91dHViZTwvaDU+XG4vLyAgICAgPHVsPlxuLy8gICAgICAgPGxpPiNiMzEyMTc8L2xpPlxuLy8gICAgICAgPGxpPjxjb2RlPmNvbG9yKHNvY2lhbCwgeW91dHViZSk8L2NvZGU+PC9saT5cbi8vICAgICA8L3VsPlxuLy8gICA8L2xpPlxuLy8gICA8bGkgY2xhc3M9XCJzd2F0Y2hcIj5cbi8vICAgICA8ZGl2IHN0eWxlPVwiYmFja2dyb3VuZC1jb2xvcjogIzAwN2JiNjtcIj48L2Rpdj5cbi8vICAgICA8aDU+TGlua2VkSW48L2g1PlxuLy8gICAgIDx1bD5cbi8vICAgICAgIDxsaT4jMDA3YmI2PC9saT5cbi8vICAgICAgIDxsaT48Y29kZT5jb2xvcihzb2NpYWwsIGxpbmtlZGluKTwvY29kZT48L2xpPlxuLy8gICAgIDwvdWw+XG4vLyAgIDwvbGk+XG4vLyA8L3VsPlxuLy9cbi8vIFN0eWxlZ3VpZGUgQnJhbmRpbmcgLSBDb2xvcnMgLSBTb2NpYWwgQ29sb3JzXG5cbiRjb2xvcnM6IChcbiAgcHJpbWFyeSAgICAgOiAoXG4gICAgYmx1ZSAgICAgIDogIzAwMmY4NyxcbiAgICBnb2xkICAgICAgOiAjYWU5MzZjLFxuICAgIHdoaXRlICAgICA6ICNmZmYsXG4gICAgZ3JheSAgICAgIDogIzZmNzc3YixcbiAgICBvZmYtd2hpdGUgOiAjZjZmNmY2LFxuICAgIGJsYWNrICAgICA6ICMxODE5MTksXG4gICksXG4gIHNlY29uZGFyeSAgIDogKFxuICAgIGN5YW4gICAgICA6ICMxNDc3YTksXG4gICAgcHVycGxlICAgIDogIzRjMmM5MixcbiAgICBnb2xkICAgICAgOiAjZmZiZjQ3LFxuICAgIHJlZCAgICAgICA6ICNkYzE0M2MsXG4gICAgZ3JlZW4gICAgIDogIzAwODA4MCxcbiAgICBkYXJrLWJsdWUgOiAjMDcyMjM1LFxuICAgIG9mZi1ibHVlICA6ICNmMmY0ZjlcbiAgKSxcbiAgc29jaWFsICAgICAgOiAoXG4gICAgZmFjZWJvb2sgIDogIzNiNTk5OCxcbiAgICB0d2l0dGVyICAgOiAjMDBiNmYxLFxuICAgIHlvdXR1YmUgICA6ICNiMzEyMTcsXG4gICAgbGlua2VkaW4gIDogIzAwN2JiNlxuICApXG4pO1xuIiwiLy8gQW5pbWF0aW9ucyAmIFRyYW5zaXRpb25zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuJGJhc2UtYW5pbWF0aW9uLXNwZWVkOiAxNTBtcztcbiRiYXNlLWFuaW1hdGlvbi1lYXNpbmc6IGN1YmljLWJlemllciguNzcsIDAsIC4xNzUsIDEpO1xuJGJvdW5jZS1hbmltYXRpb24tZWFzaW5nOiBjdWJpYy1iZXppZXIoLjY4LCAtLjU1LCAuMjY1LCAxLjU1KTtcbiIsIi8qISBub3JtYWxpemUuY3NzIHY0LjEuMSB8IE1JVCBMaWNlbnNlIHwgZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MgKi9cblxuLyoqXG4gKiAxLiBDaGFuZ2UgdGhlIGRlZmF1bHQgZm9udCBmYW1pbHkgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKiAyLiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluIElFIGFuZCBpT1MuXG4gKi9cblxuaHRtbCB7XG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmOyAvKiAxICovXG4gIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAyICovXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICovXG5cbmJvZHkge1xuICBtYXJnaW46IDA7XG59XG5cbi8qIEhUTUw1IGRpc3BsYXkgZGVmaW5pdGlvbnNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBFZGdlLCBJRSwgYW5kIEZpcmVmb3guXG4gKiAyLiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRS5cbiAqL1xuXG5hcnRpY2xlLFxuYXNpZGUsXG5kZXRhaWxzLCAvKiAxICovXG5maWdjYXB0aW9uLFxuZmlndXJlLFxuZm9vdGVyLFxuaGVhZGVyLFxubWFpbiwgLyogMiAqL1xubWVudSxcbm5hdixcbnNlY3Rpb24sXG5zdW1tYXJ5IHsgLyogMSAqL1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAqL1xuXG5hdWRpbyxcbmNhbnZhcyxcbnByb2dyZXNzLFxudmlkZW8ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gaU9TIDQtNy5cbiAqL1xuXG5hdWRpbzpub3QoW2NvbnRyb2xzXSkge1xuICBkaXNwbGF5OiBub25lO1xuICBoZWlnaHQ6IDA7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cbiAqL1xuXG5wcm9ncmVzcyB7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMC0uXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRS5cbiAqL1xuXG50ZW1wbGF0ZSwgLyogMSAqL1xuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKiBMaW5rc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBvbiBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG4gKiAyLiBSZW1vdmUgZ2FwcyBpbiBsaW5rcyB1bmRlcmxpbmUgaW4gaU9TIDgrIGFuZCBTYWZhcmkgOCsuXG4gKi9cblxuYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvKiAxICovXG4gIC13ZWJraXQtdGV4dC1kZWNvcmF0aW9uLXNraXA6IG9iamVjdHM7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIG91dGxpbmUgb24gZm9jdXNlZCBsaW5rcyB3aGVuIHRoZXkgYXJlIGFsc28gYWN0aXZlIG9yIGhvdmVyZWRcbiAqIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICovXG5cbmE6YWN0aXZlLFxuYTpob3ZlciB7XG4gIG91dGxpbmUtd2lkdGg6IDA7XG59XG5cbi8qIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIDEuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBGaXJlZm94IDM5LS5cbiAqIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuXG4gKi9cblxuYWJiclt0aXRsZV0ge1xuICBib3JkZXItYm90dG9tOiBub25lOyAvKiAxICovXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyAvKiAyICovXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDsgLyogMiAqL1xufVxuXG4vKipcbiAqIFByZXZlbnQgdGhlIGR1cGxpY2F0ZSBhcHBsaWNhdGlvbiBvZiBgYm9sZGVyYCBieSB0aGUgbmV4dCBydWxlIGluIFNhZmFyaSA2LlxuICovXG5cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogaW5oZXJpdDtcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuICovXG5cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogYm9sZGVyO1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHN0eWxlIGluIEFuZHJvaWQgNC4zLS5cbiAqL1xuXG5kZm4ge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgZm9udCBzaXplIGFuZCBtYXJnaW4gb24gYGgxYCBlbGVtZW50cyB3aXRoaW4gYHNlY3Rpb25gIGFuZFxuICogYGFydGljbGVgIGNvbnRleHRzIGluIENocm9tZSwgRmlyZWZveCwgYW5kIFNhZmFyaS5cbiAqL1xuXG5oMSB7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBtYXJnaW46IDAuNjdlbSAwO1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBiYWNrZ3JvdW5kIGFuZCBjb2xvciBpbiBJRSA5LS5cbiAqL1xuXG5tYXJrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmMDtcbiAgY29sb3I6ICMwMDA7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc21hbGwge1xuICBmb250LXNpemU6IDgwJTtcbn1cblxuLyoqXG4gKiBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbiAqIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zdWIsXG5zdXAge1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdWIge1xuICBib3R0b206IC0wLjI1ZW07XG59XG5cbnN1cCB7XG4gIHRvcDogLTAuNWVtO1xufVxuXG4vKiBFbWJlZGRlZCBjb250ZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFJlbW92ZSB0aGUgYm9yZGVyIG9uIGltYWdlcyBpbnNpZGUgbGlua3MgaW4gSUUgMTAtLlxuICovXG5cbmltZyB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbn1cblxuLyoqXG4gKiBIaWRlIHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAqL1xuXG5zdmc6bm90KDpyb290KSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi8qIEdyb3VwaW5nIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5jb2RlLFxua2JkLFxucHJlLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLyogMSAqL1xuICBmb250LXNpemU6IDFlbTsgLyogMiAqL1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBtYXJnaW4gaW4gSUUgOC5cbiAqL1xuXG5maWd1cmUge1xuICBtYXJnaW46IDFlbSA0MHB4O1xufVxuXG4vKipcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIEZpcmVmb3guXG4gKiAyLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS5cbiAqL1xuXG5ociB7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvKiAxICovXG4gIGhlaWdodDogMDsgLyogMSAqL1xuICBvdmVyZmxvdzogdmlzaWJsZTsgLyogMiAqL1xufVxuXG4vKiBGb3Jtc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqIDIuIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaS5cbiAqL1xuXG5idXR0b24sXG5pbnB1dCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgZm9udDogaW5oZXJpdDsgLyogMSAqL1xuICBtYXJnaW46IDA7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBSZXN0b3JlIHRoZSBmb250IHdlaWdodCB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZS5cbiAqL1xuXG5vcHRncm91cCB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4vKipcbiAqIFNob3cgdGhlIG92ZXJmbG93IGluIElFLlxuICogMS4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZS5cbiAqL1xuXG5idXR0b24sXG5pbnB1dCB7IC8qIDEgKi9cbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBFZGdlLCBGaXJlZm94LCBhbmQgSUUuXG4gKiAxLiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3guXG4gKi9cblxuYnV0dG9uLFxuc2VsZWN0IHsgLyogMSAqL1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuLyoqXG4gKiAxLiBQcmV2ZW50IGEgV2ViS2l0IGJ1ZyB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2AgYW5kIGB2aWRlb2BcbiAqICAgIGNvbnRyb2xzIGluIEFuZHJvaWQgNC5cbiAqIDIuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gKi9cblxuYnV0dG9uLFxuaHRtbCBbdHlwZT1cImJ1dHRvblwiXSwgLyogMSAqL1xuW3R5cGU9XCJyZXNldFwiXSxcblt0eXBlPVwic3VibWl0XCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBpbiBGaXJlZm94LlxuICovXG5cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwiYnV0dG9uXCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJyZXNldFwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwic3VibWl0XCJdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwO1xufVxuXG4vKipcbiAqIFJlc3RvcmUgdGhlIGZvY3VzIHN0eWxlcyB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZS5cbiAqL1xuXG5idXR0b246LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cImJ1dHRvblwiXTotbW96LWZvY3VzcmluZyxcblt0eXBlPVwicmVzZXRcIl06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cInN1Ym1pdFwiXTotbW96LWZvY3VzcmluZyB7XG4gIG91dGxpbmU6IDFweCBkb3R0ZWQgQnV0dG9uVGV4dDtcbn1cblxuLyoqXG4gKiBDaGFuZ2UgdGhlIGJvcmRlciwgbWFyZ2luLCBhbmQgcGFkZGluZyBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqL1xuXG5maWVsZHNldCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjMGMwYzA7XG4gIG1hcmdpbjogMCAycHg7XG4gIHBhZGRpbmc6IDAuMzVlbSAwLjYyNWVtIDAuNzVlbTtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSB0ZXh0IHdyYXBwaW5nIGluIEVkZ2UgYW5kIElFLlxuICogMi4gQ29ycmVjdCB0aGUgY29sb3IgaW5oZXJpdGFuY2UgZnJvbSBgZmllbGRzZXRgIGVsZW1lbnRzIGluIElFLlxuICogMy4gUmVtb3ZlIHRoZSBwYWRkaW5nIHNvIGRldmVsb3BlcnMgYXJlIG5vdCBjYXVnaHQgb3V0IHdoZW4gdGhleSB6ZXJvIG91dFxuICogICAgYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxubGVnZW5kIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuICBjb2xvcjogaW5oZXJpdDsgLyogMiAqL1xuICBkaXNwbGF5OiB0YWJsZTsgLyogMSAqL1xuICBtYXgtd2lkdGg6IDEwMCU7IC8qIDEgKi9cbiAgcGFkZGluZzogMDsgLyogMyAqL1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsOyAvKiAxICovXG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRS5cbiAqL1xuXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG4vKipcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLS5cbiAqIDIuIFJlbW92ZSB0aGUgcGFkZGluZyBpbiBJRSAxMC0uXG4gKi9cblxuW3R5cGU9XCJjaGVja2JveFwiXSxcblt0eXBlPVwicmFkaW9cIl0ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovXG4gIHBhZGRpbmc6IDA7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG4gKi9cblxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBvZGQgYXBwZWFyYW5jZSBpbiBDaHJvbWUgYW5kIFNhZmFyaS5cbiAqIDIuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxuICovXG5cblt0eXBlPVwic2VhcmNoXCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8qIDEgKi9cbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgYW5kIGNhbmNlbCBidXR0b25zIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIE9TIFguXG4gKi9cblxuW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sXG5bdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSB0ZXh0IHN0eWxlIG9mIHBsYWNlaG9sZGVycyBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkuXG4gKi9cblxuOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIG9wYWNpdHk6IDAuNTQ7XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAqIDIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIFNhZmFyaS5cbiAqL1xuXG46Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8qIDEgKi9cbiAgZm9udDogaW5oZXJpdDsgLyogMiAqL1xufVxuIiwiLy8gRXh0ZW5kIG5vcm1hbGl6ZS5jc3Mgd2l0aCBib3JkZXItYm94IHJ1bGVzZXQuXG4qIHsgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxuIiwiLy8gR2xvYmFsIGh0bWwgYW5kIGJvZHlcbmJvZHkge1xuICBmb250OiA0MDAgMTRweCAvIDEuNSAkZm9udC1zZWNvbmRhcnk7XG4gIGNvbG9yOiBjb2xvcihwcmltYXJ5LCBibGFjayk7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG5cbiAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgIGZvbnQ6IDQwMCAxNnB4IC8gMS41ICRmb250LXNlY29uZGFyeTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICBmb250OiA0MDAgMTlweCAvIDEuNSAkZm9udC1zZWNvbmRhcnk7XG4gIH1cblxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKGNvbG9yKHByaW1hcnksIGJsYWNrKSwgLjI1KTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgJGJhc2UtYW5pbWF0aW9uLXNwZWVkICogMiAkYmFzZS1hbmltYXRpb24tZWFzaW5nO1xuICAgIHotaW5kZXg6IDA7XG4gIH1cblxuICAvLyBjbGlwcGVkXG4gICYuY2xpcHBlZCB7XG4gICAgb3ZlcmZsb3cteTogaGlkZGVuO1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgei1pbmRleDogMTA7XG4gICAgfVxuICB9XG5cbiAgLy8gY2xpcHBlZFxuICAmLmNsaXBwZWQtLW1vYmlsZSB7XG4gICAgQGluY2x1ZGUgbWVkaWEoJzxsYXB0b3AnKSB7XG4gICAgICBvdmVyZmxvdy15OiBoaWRkZW47XG4gICAgfVxuXG4gICAgJjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgbWVkaWEoJzxsYXB0b3AnKSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHotaW5kZXg6IDEwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBDb250ZW50IHNlbGVjdGlvbnNcbjo6c2VsZWN0aW9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogY29sb3Ioc2Vjb25kYXJ5LCBnb2xkKTtcbiAgY29sb3I6IGNvbG9yKHByaW1hcnksIGJsYWNrKTtcbn1cbiIsIi8vIEZvcm1cbi8vXG4vLyBTdHlsZWd1aWRlIEVsZW1lbnRzIC0gRm9ybVxuXG5maWVsZHNldCB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyOiAwO1xufVxuXG5cbi8vIExhYmVsXG4vL1xuLy8gVGhlIEhUTUwgPGNvZGU+bGFiZWw8L2NvZGU+IGVsZW1lbnQgcmVwcmVzZW50cyBhIGNhcHRpb24gZm9yIGFuIGl0ZW0gaW4gYSB1c2VyIGludGVyZmFjZS5cbi8vXG4vLyBNYXJrdXA6XG4vLyA8bGFiZWwgZm9yPVwiaW5wdXRJRFwiPkxhYmVsPC9sYWJlbD5cbi8vXG4vLyBTdHlsZWd1aWRlIEVsZW1lbnRzIC0gRm9ybSAtIExhYmVsXG5cbmxhYmVsIHtcbiAgQGV4dGVuZCAlbGFiZWw7XG59XG4iLCIvLyBIaWRlIE9mZiBTY3JlZW5cbi8vXG4vLyBQb3NpdGlvbiBhbiBlbGVtZW50IG9mZi1zY3JlZW4gZm9yIHNjcmVlbi1yZWFkZXJzLlxuLy9cbi8vIE1hcmt1cDpcbi8vIC8vXG4vLyAvLyBNaXhpbjogSGlkZSBPZmYgU2NyZWVuXG4vLyAvLyBAaW5jbHVkZSBoaWRlLW9mZi1zY3JlZW4oKTtcbi8vIC8vXG4vLyAvLyBubyBwYXJhbWV0ZXJzIGF2YWlsYWJsZVxuLy8gLy9cbi8vIC5lbGVtZW50IHsgQGluY2x1ZGUgaGlkZS1vZmYtc2NyZWVuOyB9XG4vL1xuLy8gU3R5bGVndWlkZSBGdW5jdGlvbnMgLSBIaWRlIE9mZiBTY3JlZW5cblxuQG1peGluIGhpZGUtb2ZmLXNjcmVlbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogLTEwMDAwcHg7XG4gIHRvcDogYXV0bztcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIG1hcmdpbjogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuXG4vLyBTaG93IE9uIFNjcmVlblxuLy9cbi8vIFJlc2V0IGEgcHJldmlvdXNseSBoaWRkZW4gb2JqZWN0IHZpYSBAbWl4aW4gaGlkZS1vZmYtc2NyZWVuXG4vL1xuLy8gTWFya3VwOlxuLy8gLy9cbi8vIC8vIE1peGluOiBTaG93IE9uIFNjcmVlblxuLy8gLy8gQGluY2x1ZGUgc2hvdy1vbi1zY3JlZW4oKTtcbi8vIC8vXG4vLyAvLyBubyBwYXJhbWV0ZXJzIGF2YWlsYWJsZVxuLy8gLy9cbi8vIC5lbGVtZW50IHsgQGluY2x1ZGUgc2hvdy1vbi1zY3JlZW47IH1cbi8vXG4vLyBTdHlsZWd1aWRlIEZ1bmN0aW9ucyAtIFNob3cgT24gU2NyZWVuXG5cbkBtaXhpbiBzaG93LW9uLXNjcmVlbiB7XG4gIHBvc2l0aW9uOiBpbmhlcml0O1xuICBsZWZ0OiBpbmhlcml0O1xuICB0b3A6IGluaGVyaXQ7XG4gIHdpZHRoOiBpbmhlcml0O1xuICBoZWlnaHQ6IGluaGVyaXQ7XG4gIG92ZXJmbG93OiBpbmhlcml0O1xufVxuXG5cblxuLy8gQWJzb2x1dGUgQ2VudGVyXG4vL1xuLy8gUG9zaXRpb24gYW4gZWxlbWVudCB2ZXJ0aWNhbGx5IGFuZCBob3Jpem9udGFsbHkgY2VudGVyZWQuXG4vL1xuLy8gTWFya3VwOlxuLy8gLy9cbi8vIC8vIE1peGluOiBBYnNvbHV0ZSBDZW50ZXJcbi8vIC8vIEBpbmNsdWRlIGFic29sdXRlLWNlbnRlcigpO1xuLy8gLy9cbi8vIC8vIG5vIHBhcmFtZXRlcnMgYXZhaWxhYmxlXG4vLyAvLyBOb3RlOiBwYXJlbnQgZWxlbWVudCBzaG91bGQgdXNlIHBvc2l0aW9uOiByZWxhdGl2ZTtcbi8vIC8vXG4vLyAuZWxlbWVudCB7IEBpbmNsdWRlIGFic29sdXRlLWNlbnRlcjsgfVxuLy9cbi8vIFN0eWxlZ3VpZGUgRnVuY3Rpb25zIC0gQWJzb2x1dGUgQ2VudGVyXG5cbkBtaXhpbiBhYnNvbHV0ZS1jZW50ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSB0cmFuc2xhdGVZKC01MCUpO1xufVxuXG5cbi8vIFZlcnRpY2FsIENlbnRlclxuLy9cbi8vIFBvc2l0aW9uIGFuIGVsZW1lbnQgdmVydGljYWxseSBjZW50ZXJlZC5cbi8vXG4vLyBNYXJrdXA6XG4vLyAvL1xuLy8gLy8gTWl4aW46IFZlcnRpY2FsIENlbnRlclxuLy8gLy8gQGluY2x1ZGUgdmVydGljYWwtY2VudGVyKCk7XG4vLyAvL1xuLy8gLy8gbm8gcGFyYW1ldGVycyBhdmFpbGFibGVcbi8vIC8vIE5vdGU6IHBhcmVudCBlbGVtZW50IHNob3VsZCB1c2UgcG9zaXRpb246IHJlbGF0aXZlO1xuLy8gLy9cbi8vIC5lbGVtZW50IHsgQGluY2x1ZGUgdmVydGljYWwtY2VudGVyOyB9XG4vL1xuLy8gU3R5bGVndWlkZSBGdW5jdGlvbnMgLSBWZXJ0aWNhbCBDZW50ZXJcblxuQG1peGluIHZlcnRpY2FsLWNlbnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbn1cblxuXG4vLyBIb3Jpem9udGFsIENlbnRlclxuLy9cbi8vIFBvc2l0aW9uIGFuIGVsZW1lbnQgdmVydGljYWxseSBjZW50ZXJlZC5cbi8vXG4vLyBNYXJrdXA6XG4vLyAvL1xuLy8gLy8gTWl4aW46IEhvcml6b250YWwgQ2VudGVyXG4vLyAvLyBAaW5jbHVkZSBob3Jpem9udGFsLWNlbnRlcigpO1xuLy8gLy9cbi8vIC8vIG5vIHBhcmFtZXRlcnMgYXZhaWxhYmxlXG4vLyAvLyBOb3RlOiBwYXJlbnQgZWxlbWVudCBzaG91bGQgdXNlIHBvc2l0aW9uOiByZWxhdGl2ZTtcbi8vIC8vXG4vLyAuZWxlbWVudCB7IEBpbmNsdWRlIGhvcml6b250YWwtY2VudGVyOyB9XG4vL1xuLy8gU3R5bGVndWlkZSBGdW5jdGlvbnMgLSBIb3Jpem9udGFsIENlbnRlclxuXG5AbWl4aW4gaG9yaXpvbnRhbC1jZW50ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xufVxuXG5cbi8vIFJlc2V0IEJ1dHRvblxuLy9cbi8vIFplcm8gb3V0IGJ1dHRvbiBwcm9wZXJ0aWVzLlxuLy9cbi8vIE1hcmt1cDpcbi8vIC8vXG4vLyAvLyBNaXhpbjogUmVzZXQgQnV0dG9uXG4vLyAvLyBAaW5jbHVkZSByZXNldC1idXR0b24oKTtcbi8vIC8vXG4vLyAvLyBubyBwYXJhbWV0ZXJzIGF2YWlsYWJsZVxuLy8gLy9cbi8vIC5lbGVtZW50IHsgQGluY2x1ZGUgcmVzZXQtYnV0dG9uOyB9XG4vL1xuLy8gU3R5bGVndWlkZSBGdW5jdGlvbnMgLSBSZXNldCBCdXR0b25cblxuQG1peGluIHJlc2V0LWJ1dHRvbiB7XG4gIHBhZGRpbmc6IDA7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG5cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICB9XG59XG5cblxuLy8gUmVzZXQgTGlzdFxuLy9cbi8vIFplcm8gb3V0IGxpc3QgcHJvcGVydGllcy5cbi8vXG4vLyBNYXJrdXA6XG4vLyAvL1xuLy8gLy8gTWl4aW46IFJlc2V0IExpc3Rcbi8vIC8vIEBpbmNsdWRlIHJlc2V0LWxpc3QoKTtcbi8vIC8vXG4vLyAvLyBubyBwYXJhbWV0ZXJzIGF2YWlsYWJsZVxuLy8gLy9cbi8vIC5lbGVtZW50IHsgQGluY2x1ZGUgcmVzZXQtbGlzdDsgfVxuLy9cbi8vIFN0eWxlZ3VpZGUgRnVuY3Rpb25zIC0gUmVzZXQgTGlzdFxuXG5AbWl4aW4gcmVzZXQtbGlzdCB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuXG4vLyBSZXNldCBDb2x1bW5cbi8vXG4vLyBSZXNldHMgYSBjb2x1bW4ncyBndXR0ZXIgbWFyZ2luLlxuLy9cbi8vIE1hcmt1cDpcbi8vIC8vXG4vLyAvLyBNaXhpbjogUmVzZXQgQ29sdW1uXG4vLyAvLyBAaW5jbHVkZSByZXNldC1jb2x1bW4oKTtcbi8vIC8vXG4vLyAvLyBubyBwYXJhbWV0ZXJzIGF2YWlsYWJsZVxuLy8gLy9cbi8vIC5lbGVtZW50IHsgQGluY2x1ZGUgcmVzZXQtY29sdW1uOyB9XG4vL1xuLy8gU3R5bGVndWlkZSBGdW5jdGlvbnMgLSBSZXNldCBDb2x1bW5cblxuQG1peGluIHJlc2V0LWNvbHVtbiB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG5cbi8vIFNwYW4gQ29sdW1uXG4vL1xuLy8gR3JpZCBzaXplIGZvciBzcGVjaWZpYyBjb2x1bW5zLlxuLy9cbi8vIE1hcmt1cDpcbi8vIC8vXG4vLyAvLyBNaXhpbjogU3BhbiBDb2x1bW5cbi8vIC8vIEBpbmNsdWRlIHNwYW4tY29sdW1uKCAkc3BhbiwgJHRvdGFsICk7XG4vLyAvL1xuLy8gLy8gJHNwYW46ICAgJ251bWJlcicgIHJlcXVpcmVkLiBob3cgbWFueSBjb2x1bW5zP1xuLy8gLy8gJHRvdGFsOiAgJ251bWJlcicgIG9wdGlvbmFsLiBkZWZhdWx0cyB0byAxMi5cbi8vIC8vXG4vLyAuZWxlbWVudCB7IEBpbmNsdWRlIHNwYW4tY29sdW1uKDYpOyB9XG4vL1xuLy8gU3R5bGVndWlkZSBGdW5jdGlvbnMgLSBTcGFuIENvbHVtblxuXG5AbWl4aW4gc3Bhbi1jb2x1bW4oJHNwYW4sICR0b3RhbDogMTIpIHtcblxuICAvLyBCYXNlIHNldHRpbmdzXG4gICRjb2x1bW4tYmFzZSAgOiA4NTsgLy8gaW4gcGl4ZWxzXG4gICRndXR0ZXItYmFzZSAgOiAyNDsgLy8gaW4gcGl4ZWxzXG5cbiAgLy8gQ2FsY3VsYXRlZCBzaXplc1xuICAkc3Bhbi1zaXplICA6ICgkY29sdW1uLWJhc2UgKiAkc3BhbikgKyAoJGd1dHRlci1iYXNlICogKCRzcGFuIC0gMSkpO1xuICAkdG90YWwtc2l6ZSA6ICgkY29sdW1uLWJhc2UgKiAkdG90YWwpICsgKCRndXR0ZXItYmFzZSAqICgkdG90YWwgLSAxKSk7XG5cbiAgd2lkdGg6IHBlcmNlbnRhZ2UoJHNwYW4tc2l6ZSAvICR0b3RhbC1zaXplKTtcbiAgbWFyZ2luLWxlZnQ6IHBlcmNlbnRhZ2UoKCRndXR0ZXItYmFzZSkgLyAkdG90YWwtc2l6ZSk7XG5cbn1cblxuXG4vLyBTaGlmdCBDb2x1bW5cbi8vXG4vLyBPZmZzZXQgZWxlbWVudCBieSBjb2x1bW5zLlxuLy9cbi8vIE1hcmt1cDpcbi8vIC8vXG4vLyAvLyBNaXhpbjogU2hpZnQgQ29sdW1uXG4vLyAvLyBAaW5jbHVkZSBzaGlmdC1jb2x1bW4oICRzcGFuLCAkdG90YWwsICRkaXJlY3Rpb24pO1xuLy8gLy9cbi8vIC8vICRzcGFuOiAgICAgICdudW1iZXInICByZXF1aXJlZC4gaG93IG1hbnkgY29sdW1ucz9cbi8vIC8vICR0b3RhbDogICAgICdudW1iZXInICBvcHRpb25hbC4gZGVmYXVsdHMgdG8gMTIuXG4vLyAvLyAkZGlyZWN0aW9uOiAnc3RyaW5nJyAgb3B0aW9uYWwuIGRlZmF1bHRzIHRvIGxlZnRcbi8vIC8vXG4vLyAuZWxlbWVudCB7IEBpbmNsdWRlIHNoaWZ0LWNvbHVtbigxLCAxMiwgbGVmdCk7IH1cbi8vXG4vLyBTdHlsZWd1aWRlIEZ1bmN0aW9ucyAtIFNoaWZ0IENvbHVtblxuXG5AbWl4aW4gc2hpZnQtY29sdW1uKCRzcGFuLCAkdG90YWw6IDEyLCAkZGlyZWN0aW9uOiAnbGVmdCcpIHtcblxuICAvLyBCYXNlIHNldHRpbmdzXG4gICRjb2x1bW4tYmFzZSAgOiA4NTsgLy8gaW4gcGl4ZWxzXG4gICRndXR0ZXItYmFzZSAgOiAyNDsgLy8gaW4gcGl4ZWxzXG5cbiAgLy8gQ2FsY3VsYXRlZCBzaXplc1xuICAkc3Bhbi1zaXplICA6ICgkY29sdW1uLWJhc2UgKiAkc3BhbikgKyAoJGd1dHRlci1iYXNlICogKCRzcGFuIC0gMSkpO1xuICAkdG90YWwtc2l6ZSA6ICgkY29sdW1uLWJhc2UgKiAkdG90YWwpICsgKCRndXR0ZXItYmFzZSAqICgkdG90YWwgLSAxKSk7XG4gICRndXR0ZXItb3JpZzogcGVyY2VudGFnZSgkZ3V0dGVyLWJhc2UgLyAkdG90YWwtc2l6ZSk7XG5cbiAgQGlmICRkaXJlY3Rpb24gPT0gJ3JpZ2h0JyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAkZ3V0dGVyLW9yaWcgKyBwZXJjZW50YWdlKCRzcGFuLXNpemUgLyAkdG90YWwtc2l6ZSk7XG4gIH0gQGVsc2Uge1xuICAgIG1hcmdpbi1sZWZ0OiAoJGd1dHRlci1vcmlnICogMikgKyBwZXJjZW50YWdlKCRzcGFuLXNpemUgLyAkdG90YWwtc2l6ZSk7XG5cbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAkZ3V0dGVyLW9yaWcgKyBwZXJjZW50YWdlKCRzcGFuLXNpemUgLyAkdG90YWwtc2l6ZSk7XG4gICAgfVxuICB9XG5cbn1cblxuXG4vLyBSZXNldCBGb290ZXIgVGl0bGVcbi8vXG4vLyBDb252ZXJ0IGNvbGxhcHNlIHRpdGxlcyB0byBzdGFuZGFyZCBmb3IgdGFibGV0cysuXG4vL1xuLy8gTWFya3VwOlxuLy8gLy9cbi8vIC8vIE1peGluOiBSZXNldCBGb290ZXIgVGl0bGVcbi8vIC8vIEBpbmNsdWRlIHJlc2V0LWZvb3Rlci10aXRsZSgpO1xuLy8gLy9cbi8vIC5lbGVtZW50IHsgQGluY2x1ZGUgcmVzZXQtZm9vdGVyLXRpdGxlKCk7IH1cbi8vXG4vLyBTdHlsZWd1aWRlIEZ1bmN0aW9ucyAtIFJlc2V0IEZvb3RlciBUaXRsZVxuXG5AbWl4aW4gcmVzZXQtZm9vdGVyLXRpdGxlKCkge1xuICAucGFuZWxfX3RpdGxlIGEge1xuICAgIEBpbmNsdWRlIG1lZGlhKCc+PWRlc2t0b3AnKSB7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxuXG4gICAgJjphZnRlciB7XG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPj1kZXNrdG9wJykge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vIEljb24gTGlua1xuLy9cbi8vIENyZWF0ZSBsaW5rIGJsb2NrIHdpdGggY3VzdG9tIGljb24uXG4vL1xuLy8gTWFya3VwOlxuLy8gLy9cbi8vIC8vIE1peGluOiBJY29uIExpbmtcbi8vIC8vIEBpbmNsdWRlIGljb24tbGluayggJGNvbG9yICk7XG4vLyAvL1xuLy8gLy8gJGNvbG9yOiAnc3RyaW5nJyAgb3B0aW9uYWwgY29sb3IgdmFsdWUgdG8gZmlsbCBpY29uXG4vLyAvL1xuLy8gLmVsZW1lbnQgeyBAaW5jbHVkZSBpY29uLWxpbmsoICNjMDAgKTsgfVxuLy9cbi8vIFN0eWxlZ3VpZGUgRnVuY3Rpb25zIC0gSWNvbiBMaW5rXG5cbkBtaXhpbiBpY29uLWxpbmsoJGNvbG9yOm51bGwpIHtcbiAgaSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogMzJweDtcbiAgICBoZWlnaHQ6IDMycHg7XG4gICAgbWFyZ2luLXJpZ2h0OiA4cHg7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgfVxuICBpID4gKiB7XG4gICAgQGluY2x1ZGUgYWJzb2x1dGUtY2VudGVyO1xuICAgIG1heC13aWR0aDogMjRweDtcbiAgfVxuXG4gIEBpZiAkY29sb3IgIT0gbnVsbCB7XG4gICAgc3ZnICogeyBmaWxsOiAkY29sb3I7IH1cbiAgfVxuICBhIHtcbiAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgfVxufVxuXG5cbi8vIEhlYWRpbmdcbi8vXG4vLyBBcHBseSBzdHlsZXMgdG8gYSBzcGVjaWZpYyBoZWFkaW5nIHNpemUuXG4vL1xuLy8gTWFya3VwOlxuLy8gLy9cbi8vIC8vIE1peGluOiBIZWFkaW5nXG4vLyAvLyBAaW5jbHVkZSBoZWFkaW5nKCAkbGV2ZWwgKTtcbi8vIC8vXG4vLyAvLyAkbGV2ZWw6ICdzdHJpbmcnXG4vLyAvL1xuLy8gLmVsZW1lbnQgeyBAaW5jbHVkZSBoZWFkaW5nKCBoMSApOyB9XG4vL1xuLy8gU3R5bGVndWlkZSBGdW5jdGlvbnMgLSBIZWFkaW5nXG5cbkBtaXhpbiBoZWFkaW5nKCRsZXZlbCkge1xuXG4gIC8vIEhlYWRpbmcgMVxuICBAaWYgJGxldmVsID09ICdoMScge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogNjRweCAwIDMycHg7XG4gICAgZm9udDogNzAwIDMycHggLyAxLjI1ICRmb250LXByaW1hcnk7XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgICBtYXJnaW46IDk2cHggMCA0OHB4O1xuICAgICAgZm9udC1zaXplOiA0OHB4O1xuICAgIH1cbiAgICBAaW5jbHVkZSBtZWRpYSgnPj1sYXB0b3AnKSB7XG4gICAgICBtYXJnaW46IDEyNHB4IDAgNjJweDtcbiAgICAgIGZvbnQtc2l6ZTogNjJweDtcbiAgICB9XG4gIH1cblxuICAvLyBIZWFkaW5nIDJcbiAgQGlmICRsZXZlbCA9PSAnaDInIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDQ4cHggMCAyNHB4O1xuICAgIGZvbnQ6IDcwMCAyNHB4IC8gMS4yNSAkZm9udC1zZWNvbmRhcnk7XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgICBtYXJnaW46IDU2cHggMCAyOHB4O1xuICAgICAgZm9udC1zaXplOiAyOHB4O1xuICAgIH1cbiAgICBAaW5jbHVkZSBtZWRpYSgnPj1sYXB0b3AnKSB7XG4gICAgICBtYXJnaW46IDY0cHggMCAzMnB4O1xuICAgICAgZm9udC1zaXplOiAzMnB4O1xuICAgIH1cbiAgfVxuXG4gIC8vIEhlYWRpbmcgM1xuICBAaWYgJGxldmVsID09ICdoMycge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogNDJweCAwIDIxcHg7XG4gICAgZm9udDogNjAwIDIxcHggLyAxLjI1ICRmb250LXNlY29uZGFyeTtcblxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICAgIG1hcmdpbjogNDhweCAwIDI0cHg7XG4gICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgfVxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICAgIG1hcmdpbjogNTZweCAwIDI4cHg7XG4gICAgICBmb250LXNpemU6IDI4cHg7XG4gICAgfVxuICB9XG5cbiAgLy8gSGVhZGluZyA0XG4gIEBpZiAkbGV2ZWwgPT0gJ2g0JyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAyOHB4IDAgMTlweDtcbiAgICBmb250OiA0MDAgMTlweCAvIDEuMjUgJGZvbnQtc2Vjb25kYXJ5O1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgICAgbWFyZ2luOiA0MnB4IDAgMjFweDtcbiAgICAgIGZvbnQtc2l6ZTogMjFweDtcbiAgICB9XG4gICAgQGluY2x1ZGUgbWVkaWEoJz49bGFwdG9wJykge1xuICAgICAgbWFyZ2luOiA0OHB4IDAgMjRweDtcbiAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICB9XG4gIH1cblxuICAvLyBIZWFkaW5nIDVcbiAgQGlmICRsZXZlbCA9PSAnaDUnIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDMycHggMCAxNnB4O1xuICAgIGZvbnQ6IDcwMCAxNnB4IC8gMS4yNSAkZm9udC1zZWNvbmRhcnk7XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgICBtYXJnaW46IDI4cHggMCAxOXB4O1xuICAgICAgZm9udC1zaXplOiAxOXB4O1xuICAgIH1cbiAgICBAaW5jbHVkZSBtZWRpYSgnPj1sYXB0b3AnKSB7XG4gICAgICBtYXJnaW46IDQycHggMCAyMXB4O1xuICAgICAgZm9udC1zaXplOiAyMXB4O1xuICAgIH1cbiAgfVxuXG4gIC8vIEhlYWRpbmcgNlxuICBAaWYgJGxldmVsID09ICdoNicge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMjhweCAwIDE0cHg7XG4gICAgZm9udDogNjAwIDE0cHggLyAxLjI1ICRmb250LXNlY29uZGFyeTtcblxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICAgIG1hcmdpbjogMzJweCAwIDE2cHg7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgfVxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICAgIG1hcmdpbjogMjhweCAwIDE5cHg7XG4gICAgICBmb250LXNpemU6IDE5cHg7XG4gICAgfVxuICB9XG5cbn1cbiIsIi8vIEhlYWRpbmdcbi8vXG4vLyBTdHlsZWd1aWRlIEVsZW1lbnRzIC0gSGVhZGluZ1xuXG5cbi8vIERlZmF1bHRcbi8vXG4vLyBTdGFuZGFyZCBoZWFkaW5ncyBmb3IgaGllcmFyY2hpY2FsIGNvbnRlbnQuXG4vL1xuLy8gTWFya3VwOlxuLy8gPGgxPkhlYWRpbmcgMTwvaDE+XG4vLyA8aDI+SGVhZGluZyAyPC9oMj5cbi8vIDxoMz5IZWFkaW5nIDM8L2gzPlxuLy8gPGg0PkhlYWRpbmcgNDwvaDQ+XG4vLyA8aDU+SGVhZGluZyA1PC9oNT5cbi8vIDxoNj5IZWFkaW5nIDY8L2g2PlxuLy9cbi8vIFN0eWxlZ3VpZGUgRWxlbWVudHMgLSBIZWFkaW5nIC0gRGVmYXVsdFxuXG5oMSB7IEBpbmNsdWRlIGhlYWRpbmcoaDEpOyB9XG5oMiB7IEBpbmNsdWRlIGhlYWRpbmcoaDIpOyB9XG5oMyB7IEBpbmNsdWRlIGhlYWRpbmcoaDMpOyB9XG5oNCB7IEBpbmNsdWRlIGhlYWRpbmcoaDQpOyB9XG5oNSB7IEBpbmNsdWRlIGhlYWRpbmcoaDUpOyB9XG5oNiB7IEBpbmNsdWRlIGhlYWRpbmcoaDYpOyB9XG5cblxuLy8gTWltaWNcbi8vXG4vLyBBbGxvdyBub24tc2VtYW50aWMgZWxlbWVudHMgdG8gbG9vayBsaWtlIHN0YW5kYXJkIGhlYWRpbmdzLlxuLy9cbi8vIE1hcmt1cDpcbi8vIDxkaXYgY2xhc3M9XCJoMVwiPkhlYWRpbmcgMTwvZGl2PlxuLy8gPGRpdiBjbGFzcz1cImgyXCI+SGVhZGluZyAyPC9kaXY+XG4vLyA8ZGl2IGNsYXNzPVwiaDNcIj5IZWFkaW5nIDM8L2Rpdj5cbi8vIDxkaXYgY2xhc3M9XCJoNFwiPkhlYWRpbmcgNDwvZGl2PlxuLy8gPGRpdiBjbGFzcz1cImg1XCI+SGVhZGluZyA1PC9kaXY+XG4vLyA8ZGl2IGNsYXNzPVwiaDZcIj5IZWFkaW5nIDY8L2Rpdj5cbi8vXG4vLyBTdHlsZWd1aWRlIEVsZW1lbnRzIC0gSGVhZGluZyAtIE1pbWljXG5cbi5oMSB7IEBpbmNsdWRlIGhlYWRpbmcoaDEpOyB9XG4uaDIgeyBAaW5jbHVkZSBoZWFkaW5nKGgyKTsgfVxuLmgzIHsgQGluY2x1ZGUgaGVhZGluZyhoMyk7IH1cbi5oNCB7IEBpbmNsdWRlIGhlYWRpbmcoaDQpOyB9XG4uaDUgeyBAaW5jbHVkZSBoZWFkaW5nKGg1KTsgfVxuLmg2IHsgQGluY2x1ZGUgaGVhZGluZyhoNik7IH1cblxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cbn1cbiIsIi8vIExpbmtcbi8vXG4vLyBUaGUgYSBlbGVtZW50IGlzIHVzdWFsbHkgcmVmZXJyZWQgdG8gYXMgYSBsaW5rLlxuLy9cbi8vIE1hcmt1cDpcbi8vIDxhIGNsYXNzPVwie3ttb2RpZmllcl9jbGFzc319XCIgaHJlZj1cIiNcIiB0aXRsZT1cImxpbmsgdGl0bGVcIj5UZXh0IGxpbms8L2E+XG4vL1xuLy8gLnRlYXNlciAgIC0gSW5jcmVhc2VkIHdlaWdodCBmb3IgdGVhc2VyIGxpbmtzXG4vL1xuLy8gU3R5bGVndWlkZSBFbGVtZW50cyAtIExpbmtcblxuYSB7XG5cbiAgLy8gZGVmYXVsdCBsaW5rcywgbm90IHZpc2l0ZWRcbiAgJjpsaW5rIHtcbiAgICBjb2xvcjogY29sb3IocHJpbWFyeSwgYmx1ZSk7XG4gICAgdHJhbnNpdGlvbjpcbiAgICAgIGNvbG9yICRiYXNlLWFuaW1hdGlvbi1zcGVlZCAkYmFzZS1hbmltYXRpb24tZWFzaW5nLFxuICAgICAgYmFja2dyb3VuZCAkYmFzZS1hbmltYXRpb24tc3BlZWQgJGJhc2UtYW5pbWF0aW9uLWVhc2luZyxcbiAgICAgIGJveC1zaGFkb3cgJGJhc2UtYW5pbWF0aW9uLXNwZWVkICRiYXNlLWFuaW1hdGlvbi1lYXNpbmc7XG4gIH1cblxuICAvLyBsaW5rcyB0aGF0IGhhdmUgYmVlbiB2aXNpdGVkXG4gICY6dmlzaXRlZCB7XG4gICAgY29sb3I6IGNvbG9yKHNlY29uZGFyeSwgcHVycGxlKTtcbiAgfVxuXG4gIC8vIGxpbmtzIHRoYXQgYXJlIGhvdmVyZWRcbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3Ioc2Vjb25kYXJ5LCBvZmYtYmx1ZSk7XG4gICAgY29sb3I6IGxpZ2h0ZW4oY29sb3IocHJpbWFyeSwgYmx1ZSksIDEwJSk7XG4gIH1cblxuICAvLyBsaW5rcyB0aGF0IGFyZSBpbiBmb2N1c1xuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKHNlY29uZGFyeSwgZ29sZCk7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgNHB4IGNvbG9yKHNlY29uZGFyeSwgZ29sZCk7XG4gICAgY29sb3I6IGxpZ2h0ZW4oY29sb3IocHJpbWFyeSwgYmx1ZSksIDEwJSk7XG4gICAgei1pbmRleDogMTtcbiAgfVxuXG4gIC8vIGxpbmtzIHRoYXQgYXJlIGFjdGl2ZWx5IGNsaWNrZWRcbiAgJjphY3RpdmUge1xuICAgIG91dGxpbmU6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3Ioc2Vjb25kYXJ5LCBnb2xkKTtcbiAgICBib3gtc2hhZG93OiAwIDAgMCA0cHggY29sb3Ioc2Vjb25kYXJ5LCBnb2xkKTtcbiAgICBjb2xvcjogbGlnaHRlbihjb2xvcihwcmltYXJ5LCBibHVlKSwgMTAlKTtcbiAgfVxuXG5cbiAgLy8gdGVhc2VyIGxpbmtcbiAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICYudGVhc2VyIHtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICB9XG5cblxuICAvLyBleHRlcm5hbCBsaW5rc1xuICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgJlt0YXJnZXQ9J19ibGFuayddIHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0yNHB4O1xuXG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB3aWR0aDogMjRweDtcbiAgICAgIGhlaWdodDogMjRweDtcbiAgICAgIGJhY2tncm91bmQ6IGNvbG9yKHNlY29uZGFyeSwgb2ZmLWJsdWUpIHVybCgnLi4vaW1nL2ljb25zL2lfZXh0ZXJuYWwuc3ZnJykgbm8tcmVwZWF0IDUwJSA1MCUgLyAxNnB4IGF1dG87XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTI1JSk7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgdHJhbnNpdGlvbjpcbiAgICAgICAgb3BhY2l0eSAkYmFzZS1hbmltYXRpb24tc3BlZWQgJGJhc2UtYW5pbWF0aW9uLWVhc2luZyxcbiAgICAgICAgdHJhbnNmb3JtICRiYXNlLWFuaW1hdGlvbi1zcGVlZCAkYmFzZS1hbmltYXRpb24tZWFzaW5nO1xuICAgICAgei1pbmRleDogMDtcbiAgICB9XG5cbiAgICAmOmhvdmVyOmFmdGVyIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSk7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgei1pbmRleDogMTtcbiAgICB9XG4gIH1cblxuXG4gIC8vIHRlbCBsaW5rc1xuICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgJltocmVmXj0ndGVsOiddIHsgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuXG59XG4iLCIvLyBMaXN0XG4vL1xuLy8gRWxlbWVudCB0aGF0IGdyb3VwcyByZWxhdGVkIGNvbnRlbnQgdG9nZXRoZXIuIFRoZXkncmUgcGFydCBvZiBldmVyeWRheSBsaWZlIGFuZCBjb21lIGluIG11bHRpcGxlIGZvcm1hdHMuXG4vL1xuLy8gU3R5bGVndWlkZSBFbGVtZW50cyAtIExpc3RcblxuXG4vLyBVbm9yZGVyZWQgTGlzdFxuLy9cbi8vIFRoZSB1bCBlbGVtZW50LCB0aGUgbmFtZSBmb3Igd2hpY2ggaXMgYW4gYWJicmV2aWF0aW9uIG9mIHVub3JkZXJlZCBsaXN0LCBpcyB1c2VkIHRvIGdyb3VwIGEgY29sbGVjdGlvbiBvZiBpdGVtcyB0b2dldGhlciBpbiBhIGxpc3QsIGJ1dCBpbiBhIHdheSB0aGF0IGRvZXNu4oCZdCBzdWdnZXN0IGFuIG9yZGVyIG9mIHByZWNlZGVuY2Ugb3IgaW1wb3J0YW5jZS5cbi8vXG4vLyBNYXJrdXA6XG4vLyA8dWw+XG4vLyAgICAgPGxpPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0PC9saT5cbi8vICAgICA8bGk+Q29uc2VjdGV0dXIgYWRpcGlzY2luZyBlbGl0PC9saT5cbi8vICAgICA8bGk+SW50ZWdlciBtb2xlc3RpZSBsb3JlbSBhdCBtYXNzYTwvbGk+XG4vLyA8L3VsPlxuLy9cbi8vIFN0eWxlZ3VpZGUgRWxlbWVudHMgLSBMaXN0IC0gVW5vcmRlcmVkIExpc3RcblxudWwge1xuICBtYXJnaW46IDAgMCAxNHB4O1xuXG4gIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxNnB4O1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEoJz49bGFwdG9wJykge1xuICAgIG1hcmdpbi1ib3R0b206IDE5cHg7XG4gIH1cbn1cblxubGkge1xuICBtYXJnaW4tdG9wOiA4cHg7XG5cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxufVxuXG5cbi8vIE9yZGVyZWQgTGlzdFxuLy9cbi8vIFRoZSBvbCBlbGVtZW50IGlzIHNpbWlsYXIgdG8gdGhlIHVsIGVsZW1lbnQgaW4gdGhhdCBpdOKAmXMgdXNlZCB0byBncm91cCBhIGNvbGxlY3Rpb24gb2YgaXRlbXMgdG9nZXRoZXIgaW4gYSBsaXN0LlxuLy9cbi8vIE1hcmt1cDpcbi8vIDxvbD5cbi8vICAgICA8bGk+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ8L2xpPlxuLy8gICAgIDxsaT5Db25zZWN0ZXR1ciBhZGlwaXNjaW5nIGVsaXQ8L2xpPlxuLy8gICAgIDxsaT5JbnRlZ2VyIG1vbGVzdGllIGxvcmVtIGF0IG1hc3NhPC9saT5cbi8vIDwvb2w+XG4vL1xuLy8gU3R5bGVndWlkZSBFbGVtZW50cyAtIExpc3QgLSBPcmRlcmVkIExpc3Rcblxub2wge1xuICBtYXJnaW46IDAgMCAxNHB4O1xuXG4gIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxNnB4O1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEoJz49bGFwdG9wJykge1xuICAgIG1hcmdpbi1ib3R0b206IDE5cHg7XG4gIH1cbn1cblxuXG4vLyBEZWZpbml0aW9uIExpc3Rcbi8vXG4vLyBJZiB5b3Ugd2FudCB0byBsaXN0IGEgc2VyaWVzIG9mIGl0ZW1zIHRoYXQgZXNzZW50aWFsbHkgaGF2ZSBhIHRpdGxlIGFuZCBhIGRlc2NyaXB0aW9uIG9mIHNvbWUga2luZCAodGhhdCBpcywgZWFjaCBpdGVtIGhhcyB0d28gcGFydHMpLCB1c2UgdGhlIGRlZmluaXRpb24gbGlzdCBkbCBlbGVtZW50LlxuLy9cbi8vIE1hcmt1cDpcbi8vIDxkbD5cbi8vICAgICA8ZHQ+RGVmaW5pdGlvbiBMaXN0PC9kdD5cbi8vICAgICA8ZGQ+QSBudW1iZXIgb2YgY29ubmVjdGVkIGl0ZW1zIG9yIG5hbWVzIHdyaXR0ZW4gb3IgcHJpbnRlZCBjb25zZWN1dGl2ZWx5LCB0eXBpY2FsbHkgb25lIGJlbG93IHRoZSBvdGhlci48L2RkPlxuLy8gICAgIDxkdD5UaGlzIGlzIGEgdGVybS48L2R0PlxuLy8gICAgIDxkZD5UaGlzIGlzIHRoZSBkZWZpbml0aW9uIG9mIHRoYXQgdGVybSwgd2hpY2ggYm90aCBsaXZlIGluIGEgZGwuPC9kZD5cbi8vICAgICA8ZHQ+SGVyZSBpcyBhbm90aGVyIHRlcm0uPC9kdD5cbi8vICAgICA8ZGQ+QW5kIGl0IGdldHMgYSBkZWZpbml0aW9uIHRvbywgd2hpY2ggaXMgdGhpcyBsaW5lLjwvZGQ+XG4vLyAgICAgPGR0PkhlcmUgaXMgdGVybSB0aGF0IHNoYXJlcyBhIGRlZmluaXRpb24gd2l0aCB0aGUgdGVybSBiZWxvdy48L2R0PlxuLy8gICAgIDxkZD5BbmQgaXQgZ2V0cyBhIGRlZmluaXRpb24gdG9vLCB3aGljaCBpcyB0aGlzIGxpbmUuPC9kZD5cbi8vIDwvZGw+XG4vL1xuLy8gU3R5bGVndWlkZSBFbGVtZW50cyAtIExpc3QgLSBEZWZpbml0aW9uIExpc3RcblxuZGwge1xuICBtYXJnaW46IDAgMCAyOHB4O1xuXG4gIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzMnB4O1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEoJz49bGFwdG9wJykge1xuICAgIG1hcmdpbi1ib3R0b206IDM4cHg7XG4gIH1cbn1cblxuZHQge1xuICBtYXJnaW4tdG9wOiAyOHB4O1xuICBmb250LXdlaWdodDogNjAwO1xuXG4gIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICBtYXJnaW4tdG9wOiAzMnB4O1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEoJz49bGFwdG9wJykge1xuICAgIG1hcmdpbi10b3A6IDM4cHg7XG4gIH1cblxuICAmOmZpcnN0LWNoaWxkIHsgbWFyZ2luLXRvcDogMDsgfVxufVxuXG5kZCB7XG4gIG1hcmdpbjogMTZweCAwIDA7XG59XG4iLCIvLyBJbWFnZVxuLy9cbi8vIERpc3BsYXkgYSBwaG90b2dyYXBoL2dyYXBoaWMgaW4gdGhlIGNvbnRlbnQuIFlvdSBjYW4gb3B0aW9uYWxseSBjb25maWd1cmUgaW1hZ2Ugc291cmNlcyBmb3IgbXVsdGktZGV2aWNlIHN1cHBvcnQuXG4vL1xuLy8gTWFya3VwOlxuLy8gPGltZyBzcmM9XCJodHRwczovL3Vuc3BsYXNoLml0LzE0NDAvOTAwXCIgYWx0PVwiU2NlbmljIHZpZXcgb2YgbW91bnRhaW5zIGFuZCBvY2VhblwiIC8+XG4vL1xuLy8gU3R5bGVndWlkZSBFbGVtZW50cyAtIEltYWdlXG5cbmltZywgcGljdHVyZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgYm9yZGVyLXJhZGl1czogcmFkaXVzKGJhc2UpO1xufVxuXG5cbi8vIEZpZ3VyZVxuLy9cbi8vIFRoZSBIVE1MIDxjb2RlPmZpZ3VyZTwvY29kZT4gZWxlbWVudCByZXByZXNlbnRzIHNlbGYtY29udGFpbmVkIGNvbnRlbnQsIGZyZXF1ZW50bHkgd2l0aCBhIGNhcHRpb24gKDxjb2RlPmZpZ2NhcHRpb248L2NvZGU+KSwgYW5kIGlzIHR5cGljYWxseSByZWZlcmVuY2VkIGFzIGEgc2luZ2xlIHVuaXQuXG4vL1xuLy8gTWFya3VwOlxuLy8gPGZpZ3VyZT5cbi8vICAgPGltZyBzcmM9XCJodHRwczovL3Vuc3BsYXNoLml0LzE0NDAvOTAwXCIgYWx0PVwiRGVzY3JpcHRpb24gYWJvdXQgdGhlIGZpZ3VyZVwiIC8+XG4vLyAgIDxmaWdjYXB0aW9uPkN1dGUga2l0dGVuIGxvb2tpbmcgcmlnaHQgYXQgeW91PC9maWdjYXB0aW9uPlxuLy8gPC9maWd1cmU+XG4vL1xuLy8gU3R5bGVndWlkZSBFbGVtZW50cyAtIEZpZ3VyZVxuXG5maWd1cmUge1xuICBtYXJnaW46IDAgMCAyOHB4O1xuICBib3JkZXItcmFkaXVzOiByYWRpdXMoYmFzZSk7XG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgIG1hcmdpbi1ib3R0b206IDMycHg7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYSgnPj1sYXB0b3AnKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzhweDtcbiAgfVxufVxuXG5maWdjYXB0aW9uIHtcbiAgbWFyZ2luOiAxNnB4IDAgMDtcbiAgY29sb3I6IGNvbG9yKHByaW1hcnksIGdyYXkpO1xuICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGZvbnQtc2l6ZTogMTRweDtcbn1cblxuXG4vLyBWaWRlb1xuLy9cbi8vIDxzcGFuIGNsYXNzPVwic2ctZmxhZyBzZy1mbGFnLWpzXCI+SlM8L3NwYW4+IERpc3BsYXlzIGEgdmlkZW8gZnJvbSBhbiBleHRlcm5hbCBzb3VyY2UsIHN1Y2ggYXMgWW91VHViZSBvciBWaW1lbywgd2l0aG91dCBmb3JjaW5nIHRoZSB1c2VyIHRvIGxlYXZlIHRoZSBjdXJyZW50IHdlYiBwYWdlLiBWaWRlb3MgcmVxdWlyZSB0aGUgPGNvZGU+Rml0VmlkczwvY29kZT4gbGlicmFyeSBhbmQgbmVlZCB0byBiZSBpbml0aWFsaXplZCB3aXRoIHRoZSA8Y29kZT4kKCdpZnJhbWVbc3JjKj1cInlvdXR1YmVcIl0nKS5wYXJlbnQoKS5maXRWaWRzKCk7PC9jb2RlPiBzY3JpcHQuXG4vL1xuLy8gTWFya3VwOlxuLy8gPGlmcmFtZSB3aWR0aD1cIjU2MFwiIGhlaWdodD1cIjMxNVwiIHNyYz1cImh0dHBzOi8vd3d3LnlvdXR1YmUuY29tL2VtYmVkLzNLdTZzNGRjSlA4XCIgZnJhbWVib3JkZXI9XCIwXCIgYWxsb3dmdWxsc2NyZWVuPjwvaWZyYW1lPlxuLy9cbi8vIFN0eWxlZ3VpZGUgRWxlbWVudHMgLSBWaWRlb1xuXG5pZnJhbWUsIHZpZGVvIHtcbiAgbWFyZ2luOiAwIDAgMTRweDtcbiAgYm9yZGVyLXJhZGl1czogcmFkaXVzKGJhc2UpO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxNnB4O1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEoJz49bGFwdG9wJykge1xuICAgIG1hcmdpbi1ib3R0b206IDE5cHg7XG4gIH1cbn1cbiIsIiRyYWRpdXM6IChcbiAgbm9uZTogMCxcbiAgYmFzZTogNHB4LFxuICBmdWxsOiA1MCUsXG4gIHBpbGw6IDk5OXB4XG4pO1xuIiwiLy8gUGFyYWdyYXBoXG4vL1xuLy8gVGhlIHAgZWxlbWVudCBpcyBvbmUgb2YgdGhlIG1vc3QgY29tbW9ubHkgdXNlZCBidWlsZGluZyBibG9ja3Mgb2YgSFRNTC5cbi8vXG4vLyBNYXJrdXA6XG4vLyA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldCwgY29uc2VjdGV0dXIgYWRpcGlzY2luZyBlbGl0LiBOdWxsYW0gZWdlc3RhcyBvZGlvIHRvcnRvciwgc2VkIHZlaGljdWxhIG51bmMgbG9ib3J0aXMgcnV0cnVtLiBDcmFzIHVsdHJpY2VzIGx1Y3R1cyBwdXJ1cyBub24gbWFsZXN1YWRhLiBNb3JiaSBhY2N1bXNhbiwganVzdG8gdXQgdmVuZW5hdGlzIGFsaXF1ZXQsIHJpc3VzIGVsaXQgc29sbGljaXR1ZGluIHRlbGx1cywgZXUgdmVzdGlidWx1bSB2ZWxpdCBvZGlvIGEganVzdG8uPC9wPlxuLy9cbi8vIFN0eWxlZ3VpZGUgRWxlbWVudHMgLSBQYXJhZ3JhcGhcblxucCB7XG4gIG1hcmdpbjogMCAwIDI4cHg7XG5cbiAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgIG1hcmdpbi1ib3R0b206IDMycHg7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYSgnPj1sYXB0b3AnKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzhweDtcbiAgfVxufVxuXG5cbi8vIFN0cm9uZ1xuLy9cbi8vIFRoZSBIVE1MIDxjb2RlPnN0cm9uZzwvY29kZT4gZWxlbWVudCBnaXZlcyB0ZXh0IHN0cm9uZyBpbXBvcnRhbmNlLCBhbmQgaXMgdHlwaWNhbGx5IGRpc3BsYXllZCBpbiBib2xkLlxuLy9cbi8vIE1hcmt1cDpcbi8vIDxwPldoZW4gZG9pbmcgeCBpdCBpcyA8c3Ryb25nPmltcGVyYXRpdmU8L3N0cm9uZz4gdG8gZG8geSBiZWZvcmUgcHJvY2VlZGluZy48L3A+XG4vL1xuLy8gU3R5bGVndWlkZSBFbGVtZW50cyAtIFN0cm9uZ1xuXG5zdHJvbmcgeyBmb250LXdlaWdodDogNjAwOyB9XG5cblxuLy8gQ2FzaW5nXG4vL1xuLy8gU3R5bGVndWlkZSBFbGVtZW50cyAtIENhc2luZ1xuXG4vLyBBbGwgY2Fwc1xuLy9cbi8vIENvbnZlcnQgYW55IHN0cmluZyBvZiB0ZXh0IGludG8gYWxsLWNhcHMgZ3JhY2VmdWxseSB3aXRob3V0IGltcGFjdGluZyBhY2Nlc3NpYmlsaXR5LlxuLy9cbi8vIE1hcmt1cDpcbi8vIDxzcGFuIGNsYXNzPVwiY2FzaW5nLS1jYXBzXCI+U29tZSB0ZXh0IGxhYmVsPC9zcGFuPlxuLy9cbi8vIFN0eWxlZ3VpZGUgRWxlbWVudHMgLSBDYXNpbmcgLSBBbGwgY2Fwc1xuXG4uY2FzaW5nLS1jYXBzIHsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuXG5cbi8vIExvd2VyY2FzZVxuLy9cbi8vIENvbnZlcnQgYW55IHN0cmluZyBvZiB0ZXh0IGludG8gbG93ZXJjYXNlIGdyYWNlZnVsbHkgd2l0aG91dCBpbXBhY3RpbmcgYWNjZXNzaWJpbGl0eS5cbi8vXG4vLyBNYXJrdXA6XG4vLyA8c3BhbiBjbGFzcz1cImNhc2luZy0tbG93ZXJjYXNlXCI+U29tZSB0ZXh0IGxhYmVsPC9zcGFuPlxuLy9cbi8vIFN0eWxlZ3VpZGUgRWxlbWVudHMgLSBDYXNpbmcgLSBMb3dlcmNhc2VcblxuLmNhc2luZy0tbG93ZXJjYXNlIHsgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZTsgfVxuXG5cbi8vIE1hcmtcbi8vXG4vLyBUaGUgSFRNTCA8Y29kZT5tYXJrPC9jb2RlPiBlbGVtZW50IHJlcHJlc2VudHMgaGlnaGxpZ2h0ZWQgdGV4dCwgaS5lLiwgYSBydW4gb2YgdGV4dCBtYXJrZWQgZm9yIHJlZmVyZW5jZSBwdXJwb3NlLCBkdWUgdG8gaXRzIHJlbGV2YW5jZSBpbiBhIHBhcnRpY3VsYXIgY29udGV4dC5cbi8vXG4vLyBNYXJrdXA6XG4vLyA8cD5XaGVuIGRvaW5nIHggaXQgaXMgPG1hcms+aW1wZXJhdGl2ZTwvbWFyaz4gdG8gZG8geSBiZWZvcmUgcHJvY2VlZGluZy48L3A+XG4vL1xuLy8gU3R5bGVndWlkZSBFbGVtZW50cyAtIE1hcmtcblxubWFyayB7XG4gIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKHNlY29uZGFyeSwgZ29sZCk7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDRweCBjb2xvcihzZWNvbmRhcnksIGdvbGQpO1xufVxuXG5cbi8vIEFiYnJldmlhdGlvblxuLy9cbi8vIFRoZSBIVE1MIDxjb2RlPmFiYnI8L2NvZGU+IGVsZW1lbnQgcmVwcmVzZW50cyBhbiBhYmJyZXZpYXRpb24gYW5kIG9wdGlvbmFsbHkgcHJvdmlkZXMgYSBmdWxsIGRlc2NyaXB0aW9uIGZvciBpdC4gSWYgcHJlc2VudCwgdGhlIHRpdGxlIGF0dHJpYnV0ZSBtdXN0IGNvbnRhaW4gdGhpcyBmdWxsIGRlc2NyaXB0aW9uIGFuZCBub3RoaW5nIGVsc2UuXG4vL1xuLy8gTWFya3VwOlxuLy8gPGFiYnIgdGl0bGU9XCJMYXVnaCBPdXQgTG91ZFwiPkxPTDwvYWJicj5cbi8vXG4vLyBTdHlsZWd1aWRlIEVsZW1lbnRzIC0gQWJicmV2aWF0aW9uXG5cbmFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZDtcbiAgZm9udC12YXJpYW50OiBub25lO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGN1cnNvcjogaGVscDtcbn1cbiIsIi8vIEJsb2NrcXVvdGVcbi8vXG4vLyBUaGUgYmxvY2txdW90ZSBlbGVtZW50IGlzIGEgbWVjaGFuaXNtIGZvciBtYXJraW5nIHVwIGEgYmxvY2sgb2YgdGV4dCBxdW90ZWQgZnJvbSBhIHBlcnNvbiBvciBhbm90aGVyIGRvY3VtZW50IG9yIHNvdXJjZS5cbi8vXG4vLyBNYXJrdXA6XG4vLyA8YmxvY2txdW90ZT5cbi8vICAgPHA+RGVzaWduIGlzIG5vdCBqdXN0IHdoYXQgaXQgbG9va3MgbGlrZSBhbmQgZmVlbHMgbGlrZS4gRGVzaWduIGlzIGhvdyBpdCB3b3Jrcy48L3A+XG4vLyAgIDxmb290ZXI+XG4vLyAgICAgU3RldmUgSm9ic1xuLy8gICA8L2Zvb3Rlcj5cbi8vIDwvYmxvY2txdW90ZT5cbi8vXG4vLyBTdHlsZWd1aWRlIEVsZW1lbnRzIC0gQmxvY2txdW90ZVxuXG5ibG9ja3F1b3RlIHtcbiAgcGFkZGluZzogMCAyOHB4O1xuICBtYXJnaW46IDU2cHggMDtcbiAgYm9yZGVyLWxlZnQ6IDRweCBzb2xpZCBjb2xvcihwcmltYXJ5LCBnb2xkKTtcbiAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnk7XG4gIGZvbnQtc2l6ZTogMjhweDtcbiAgbGluZS1oZWlnaHQ6IDEuMjU7XG5cbiAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgIHBhZGRpbmc6IDAgMzJweDtcbiAgICBtYXJnaW46IDY0cHggMDtcbiAgICBmb250LXNpemU6IDMycHg7XG4gIH1cbiAgQGluY2x1ZGUgbWVkaWEoJz49bGFwdG9wJykge1xuICAgIHBhZGRpbmc6IDAgMzhweDtcbiAgICBtYXJnaW46IDc2cHggMDtcbiAgfVxuXG4gIHAge1xuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IG9wZW4tcXVvdGU7XG4gICAgfVxuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogY2xvc2UtcXVvdGU7XG4gICAgfVxuICB9XG5cbiAgLy8gY2l0YXRpb25cbiAgZm9vdGVyIHtcbiAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXNpemU6IDE2cHg7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnXFwyMDE0JztcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1yaWdodDogOHB4O1xuICAgIH1cbiAgfVxuXG59XG4iLCIvLyBMaW5lIFJ1bGVcbi8vXG4vLyBUaGUgaHIgZWxlbWVudCBjcmVhdGVzIGluIHRoZSBkb2N1bWVudCBhIGhpZ2hseSB2aXNpYmxlIGJyZWFrIHRoYXQgcmVuZGVycyBhcyBhIHNsaW0gaG9yaXpvbnRhbCBsaW5lIHJ1bm5pbmcgdGhlIHdpZHRoIG9mIHRoZSBhcmVhIHRvIHdoaWNoIGl04oCZcyBhcHBsaWVkLlxuLy9cbi8vIE1hcmt1cDpcbi8vIDxociAvPlxuLy9cbi8vIFN0eWxlZ3VpZGUgRWxlbWVudHMgLSBMaW5lIFJ1bGVcblxuaHIge1xuICBoZWlnaHQ6IDFweDtcbiAgbWFyZ2luOiAzMnB4IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oY29sb3IocHJpbWFyeSwgZ3JheSksIDM1JSk7XG4gIGJvcmRlcjogMDtcbn1cbiIsIi8vIFRhYmxlXG4vL1xuLy8gQSB0YWJsZSBkaXNwbGF5cyBhIGNvbGxlY3Rpb25zIG9mIGRhdGEgZ3JvdXBlZCBpbnRvIHJvd3MuIEl0IGlzIE5PVCBtZWFudCB0byBiZSB1c2VkIGZvciBsYXlvdXQgY29tcG9zaXRpb24uXG4vL1xuLy8gTWFya3VwOlxuLy8gPHRhYmxlIGNsYXNzPVwie3ttb2RpZmllcl9jbGFzc319XCI+XG4vLyAgICAgPGNhcHRpb24+U2hlbGx5J3MgRGF1Z2h0ZXJzPC9jYXB0aW9uPlxuLy8gICAgIDx0aGVhZD5cbi8vICAgICAgICAgPHRyPlxuLy8gICAgICAgICAgICAgPHRoIHNjb3BlPVwiY29sXCI+TmFtZTwvdGg+XG4vLyAgICAgICAgICAgICA8dGggc2NvcGU9XCJjb2xcIj5BZ2U8L3RoPlxuLy8gICAgICAgICAgICAgPHRoIHNjb3BlPVwiY29sXCI+QmlydGhkYXk8L3RoPlxuLy8gICAgICAgICA8L3RyPlxuLy8gICAgIDwvdGhlYWQ+XG4vLyAgICAgPHRib2R5PlxuLy8gICAgICAgICA8dHI+XG4vLyAgICAgICAgICAgICA8dGggc2NvcGU9XCJyb3dcIj5KYWNraWU8L3RoPlxuLy8gICAgICAgICAgICAgPHRkPjU8L3RkPlxuLy8gICAgICAgICAgICAgPHRkPkFwcmlsIDU8L3RkPlxuLy8gICAgICAgICA8L3RyPlxuLy8gICAgICAgICA8dHI+XG4vLyAgICAgICAgICAgICA8dGggc2NvcGU9XCJyb3dcIj5CZXRoPC90aD5cbi8vICAgICAgICAgICAgIDx0ZD44PC90ZD5cbi8vICAgICAgICAgICAgIDx0ZD5KYW51YXJ5IDE0PC90ZD5cbi8vICAgICAgICAgPC90cj5cbi8vICAgICA8L3Rib2R5PlxuLy8gPC90YWJsZT5cbi8vXG4vLyBTdHlsZWd1aWRlIEVsZW1lbnRzIC0gVGFibGVcblxuLy8gR2xvYmFsXG50YWJsZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xufVxuXG5jYXB0aW9uIHtcbiAgY29sb3I6IGNvbG9yKHByaW1hcnksIGdyYXkpO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG50cjpob3ZlciB0aCxcbnRyOmhvdmVyIHRkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYShjb2xvcihwcmltYXJ5LCBncmF5KSwgLjA1KTtcbn1cblxuLy8gSGVhZGVyXG50aGVhZCB7XG4gIHRoLCB0ZCB7XG4gICAgcGFkZGluZzogOHB4IDA7XG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIGNvbG9yKHByaW1hcnksIGN5YW4pO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgY29sb3I6IGNvbG9yKHByaW1hcnksIGJsdWUpO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cbn1cblxuLy8gQm9keVxudGJvZHkge1xuICB0aCwgdGQge1xuICAgIHBhZGRpbmc6IDhweCAwO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCBjb2xvcihwcmltYXJ5LCBibGFjayk7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxuXG4gIHRoIHtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICB9XG5cbiAgdHI6Zmlyc3QtY2hpbGQgdGgsXG4gIHRyOmZpcnN0LWNoaWxkIHRkIHtcbiAgICBib3JkZXItdG9wOiAwO1xuICB9XG59XG4iLCIvLyBTZWxlY3QgQm94XG4vL1xuLy8gVGhlIEhUTUwgPGNvZGU+c2VsZWN0PC9jb2RlPiBlbGVtZW50IHJlcHJlc2VudHMgYSBjb250cm9sIHRoYXQgcHJvdmlkZXMgYSBtZW51IG9mIG9wdGlvbnMuXG4vL1xuLy8gTWFya3VwOlxuLy8gPHNlbGVjdCBpZD1cInNlbGVjdElEXCIgbmFtZT1cInNlbGVjdElEXCI+XG4vLyAgIDxvcHRpb24gdmFsdWU9XCJvcHRpb25OYW1lXCI+U2VsZWN0IGFuIG9wdGlvbjwvb3B0aW9uPlxuLy8gICA8b3B0aW9uIHZhbHVlPVwib3B0aW9uTmFtZVwiPlJlZDwvb3B0aW9uPlxuLy8gICA8b3B0aW9uIHZhbHVlPVwib3B0aW9uTmFtZVwiPkJsdWU8L29wdGlvbj5cbi8vICAgPG9wdGlvbiB2YWx1ZT1cIm9wdGlvbk5hbWVcIj5QdXJwbGU8L29wdGlvbj5cbi8vIDwvc2VsZWN0PlxuLy9cbi8vIFN0eWxlZ3VpZGUgRWxlbWVudHMgLSBGb3JtIC0gU2VsZWN0IEJveFxuXG5zZWxlY3Qge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA0MXB4O1xuICBwYWRkaW5nOiA4cHggNDBweCA4cHggOHB4O1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy9pY29ucy9pX2NhcmV0LWRvd24uc3ZnJyk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogMjRweCBhdXRvO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjYWxjKDEwMCUgLSA4cHgpIDUwJTtcbiAgYm9yZGVyOiAycHggc29saWQgY29sb3IocHJpbWFyeSwgZ3JheSk7XG4gIGJvcmRlci1yYWRpdXM6IHJhZGl1cyhiYXNlKTtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB0cmFuc2l0aW9uOlxuICAgIGJvcmRlciAkYmFzZS1hbmltYXRpb24tc3BlZWQgJGJhc2UtYW5pbWF0aW9uLWVhc2luZyxcbiAgICBib3gtc2hhZG93ICRiYXNlLWFuaW1hdGlvbi1zcGVlZCAkYmFzZS1hbmltYXRpb24tZWFzaW5nO1xuXG4gIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICBoZWlnaHQ6IDQ0cHg7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYSgnPj1sYXB0b3AnKSB7XG4gICAgaGVpZ2h0OiA0OHB4O1xuICB9XG5cbiAgLy8gSUUgc3R5bGUgdG8gaGlkZSBkZWZhdWx0IHNlbGVjdCBhcnJvd1xuICAmOjotbXMtZXhwYW5kIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLy8gaG92ZXIgc3RhdGVcbiAgJjpob3ZlciB7XG4gICAgYm9yZGVyLWNvbG9yOiBjb2xvcihwcmltYXJ5LCBibHVlKTtcbiAgfVxuXG4gIC8vIGZvY3VzIHN0YXRlXG4gICY6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogY29sb3IocHJpbWFyeSwgYmx1ZSk7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgNHB4IHJnYmEoY29sb3IocHJpbWFyeSwgYmx1ZSksIC4xNik7XG4gICAgb3V0bGluZTogMDtcbiAgfVxufVxuXG5cbi8vIFJhZGlvc1xuLy9cbi8vIFJhZGlvcyBtdXN0IHVzZSB0aGUgPGNvZGU+ZmllbGRzZXQ8L2NvZGU+IHRhZyBhbmQgc2hvdWxkIGluY2x1ZGUgPGNvZGU+JGlucHV0PC9jb2RlPiwgPGNvZGU+JGxhYmVsPC9jb2RlPiwgYW5kIDxjb2RlPiRpY29uPC9jb2RlPiBmaWVsZHMgZm9yIGVhY2ggb3B0aW9uLlxuLy9cbi8vIE1hcmt1cDpcbi8vIDxmaWVsZHNldCBjbGFzcz1cImZvcm1ibG9jayByYWRpb3NcIj5cbi8vICAgPGxlZ2VuZCBjbGFzcz1cImZvcm1ibG9ja19fbGFiZWxcIj5DaG9vc2UgWW91ciBGYXZvcml0ZTwvbGVnZW5kPlxuLy8gICA8ZGl2IGNsYXNzPVwiZm9ybWJsb2NrX19maWVsZFwiPlxuLy8gICAgIDxkaXYgY2xhc3M9XCJvcHRpb25cIj5cbi8vICAgICAgIDxpbnB1dCBjbGFzcz1cIm9wdGlvbl9faW5wdXRcIiBpZD1cInJhZGlvMVwiIHR5cGU9XCJyYWRpb1wiIG5hbWU9XCJvcHRpb25zXCIgdmFsdWU9XCJ2YWx1ZTFcIj5cbi8vICAgICAgIDxsYWJlbCBjbGFzcz1cIm9wdGlvbl9fbGFiZWxcIiBmb3I9XCJyYWRpbzFcIj5SYWRpbyAxPC9sYWJlbD5cbi8vICAgICAgIDxpIGNsYXNzPVwib3B0aW9uX19pY29uXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCI+PC9pPlxuLy8gICAgIDwvZGl2PlxuLy8gICAgIDxkaXYgY2xhc3M9XCJvcHRpb25cIj5cbi8vICAgICAgIDxpbnB1dCBjbGFzcz1cIm9wdGlvbl9faW5wdXRcIiBpZD1cInJhZGlvMlwiIHR5cGU9XCJyYWRpb1wiIG5hbWU9XCJvcHRpb25zXCIgdmFsdWU9XCJ2YWx1ZTJcIj5cbi8vICAgICAgIDxsYWJlbCBjbGFzcz1cIm9wdGlvbl9fbGFiZWxcIiBmb3I9XCJyYWRpbzJcIj5SYWRpbyAyPC9sYWJlbD5cbi8vICAgICAgIDxpIGNsYXNzPVwib3B0aW9uX19pY29uXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCI+PC9pPlxuLy8gICAgIDwvZGl2PlxuLy8gICAgIDxkaXYgY2xhc3M9XCJvcHRpb25cIj5cbi8vICAgICAgIDxpbnB1dCBjbGFzcz1cIm9wdGlvbl9faW5wdXRcIiBpZD1cInJhZGlvM1wiIHR5cGU9XCJyYWRpb1wiIG5hbWU9XCJvcHRpb25zXCIgdmFsdWU9XCJ2YWx1ZTNcIj5cbi8vICAgICAgIDxsYWJlbCBjbGFzcz1cIm9wdGlvbl9fbGFiZWxcIiBmb3I9XCJyYWRpbzNcIj5SYWRpbyAzPC9sYWJlbD5cbi8vICAgICAgIDxpIGNsYXNzPVwib3B0aW9uX19pY29uXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCI+PC9pPlxuLy8gICAgIDwvZGl2PlxuLy8gICA8L2Rpdj5cbi8vIDwvZmllbGRzZXQ+XG4vL1xuLy8gU3R5bGVndWlkZSBFbGVtZW50cyAtIEZvcm0gLSBSYWRpb3NcblxuLnJhZGlvcyB7XG5cbiAgLy8gbGVnZW5kXG4gIGxlZ2VuZCB7IEBleHRlbmQgJWxhYmVsOyB9XG5cbiAgLy8gb3B0aW9uc1xuICAub3B0aW9uIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAvLyBvcHRpb24gaW5wdXRcbiAgICAmX19pbnB1dCB7IEBleHRlbmQgJWhpZGUtb2ZmLXNjcmVlbjsgfVxuXG4gICAgLy8gb3B0aW9uIGljb25cbiAgICAmX19pY29uIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMXB4O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogMjBweDtcbiAgICAgIGhlaWdodDogMjBweDtcbiAgICAgIGJvcmRlcjogMnB4IHNvbGlkIGNvbG9yKHByaW1hcnksIGdyYXkpO1xuICAgICAgYm9yZGVyLXJhZGl1czogcmFkaXVzKGZ1bGwpO1xuICAgICAgdHJhbnNpdGlvbjpcbiAgICAgICAgYm9yZGVyICRiYXNlLWFuaW1hdGlvbi1zcGVlZCAkYmFzZS1hbmltYXRpb24tZWFzaW5nLFxuICAgICAgICBib3gtc2hhZG93ICRiYXNlLWFuaW1hdGlvbi1zcGVlZCAkYmFzZS1hbmltYXRpb24tZWFzaW5nO1xuICAgICAgei1pbmRleDogMTtcblxuICAgICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgICAgICB0b3A6IDJweDtcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgbWVkaWEoJz49bGFwdG9wJykge1xuICAgICAgICB0b3A6IDRweDtcbiAgICAgIH1cblxuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICB3aWR0aDogMTBweDtcbiAgICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgICBtYXJnaW46IC01cHggMCAwIC01cHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKHByaW1hcnksIGJsdWUpO1xuICAgICAgICBib3JkZXItcmFkaXVzOiByYWRpdXMoZnVsbCk7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gICAgICAgIHRyYW5zaXRpb246XG4gICAgICAgICB0cmFuc2Zvcm0gJGJhc2UtYW5pbWF0aW9uLXNwZWVkICRiYXNlLWFuaW1hdGlvbi1lYXNpbmcsXG4gICAgICAgICBvcGFjaXR5ICRiYXNlLWFuaW1hdGlvbi1zcGVlZCAkYmFzZS1hbmltYXRpb24tZWFzaW5nO1xuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLy8gb3B0aW9uIGxhYmVsXG4gICAgJl9fbGFiZWwge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgcGFkZGluZy1sZWZ0OiAyOHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIHotaW5kZXg6IDI7XG4gICAgfVxuXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gICAgLy8gZm9jdXMgc3RhdGVcbiAgICAmX19pbnB1dDpmb2N1cyArIC5vcHRpb25fX2xhYmVsICsgLm9wdGlvbl9faWNvbiB7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMCA0cHggcmdiYShjb2xvcihwcmltYXJ5LCBibHVlKSwgLjE2KTtcblxuICAgICAgc3ZnIHBhdGgge1xuICAgICAgICBzdHJva2UtZGFzaG9mZnNldDogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyB3aGVuIGhvdmVyZWRcbiAgICAmOmhvdmVyIC5vcHRpb25fX2ljb24ge1xuICAgICAgYm9yZGVyLWNvbG9yOiBjb2xvcihwcmltYXJ5LCBibHVlKTtcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDRweCBjb2xvcihzZWNvbmRhcnksIG9mZi1ibHVlKTtcblxuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihwcmltYXJ5LCBibHVlKTtcbiAgICAgICAgb3BhY2l0eTogLjI1O1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKC41KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyB3aGVuIGNoZWNrZWRcbiAgICAmX19pbnB1dDpjaGVja2VkICsgLm9wdGlvbl9fbGFiZWwgKyAub3B0aW9uX19pY29uIHtcbiAgICAgIGJvcmRlci1jb2xvcjogY29sb3IocHJpbWFyeSwgYmx1ZSk7XG5cbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxufVxuXG5cbi8vIENoZWNrYm94ZXNcbi8vXG4vLyBDaGVja2JveGVzIG11c3QgdXNlIHRoZSA8Y29kZT5maWVsZHNldDwvY29kZT4gdGFnIGFuZCBzaG91bGQgaW5jbHVkZSA8Y29kZT4kaW5wdXQ8L2NvZGU+LCA8Y29kZT4kbGFiZWw8L2NvZGU+LCBhbmQgPGNvZGU+JGljb248L2NvZGU+IGZpZWxkcyBmb3IgZWFjaCBvcHRpb24uXG4vL1xuLy8gTWFya3VwOlxuLy8gPGZpZWxkc2V0IGNsYXNzPVwiZm9ybWJsb2NrIGNoZWNrYm94ZXNcIj5cbi8vICAgPGxlZ2VuZCBjbGFzcz1cImZvcm1ibG9ja19fbGFiZWxcIj5DaGVjayB0aGVzZSBvdXQ8L2xlZ2VuZD5cbi8vICAgPGRpdiBjbGFzcz1cImZvcm1ibG9ja19fZmllbGRcIj5cbi8vICAgICA8ZGl2IGNsYXNzPVwib3B0aW9uXCI+XG4vLyAgICAgICA8aW5wdXQgY2xhc3M9XCJvcHRpb25fX2lucHV0XCIgaWQ9XCJjaGVja2JveDFcIiB0eXBlPVwiY2hlY2tib3hcIj5cbi8vICAgICAgIDxsYWJlbCBjbGFzcz1cIm9wdGlvbl9fbGFiZWxcIiBmb3I9XCJjaGVja2JveDFcIj5DaGVja2JveCAxPC9sYWJlbD5cbi8vICAgICAgIDxpIGNsYXNzPVwib3B0aW9uX19pY29uXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCI+XG4vLyAgICAgICAgIDxzdmcgd2lkdGg9XCIyMHB4XCIgaGVpZ2h0PVwiMjBweFwiIHZpZXdCb3g9XCIwIDAgMjAgMjBcIj5cbi8vICAgICAgICAgICA8cGF0aCBkPVwiTTMsMSBMMTcsMSBMMTcsMSBDMTguMTA0NTY5NSwxIDE5LDEuODk1NDMwNSAxOSwzIEwxOSwxNyBMMTksMTcgQzE5LDE4LjEwNDU2OTUgMTguMTA0NTY5NSwxOSAxNywxOSBMMywxOSBMMywxOSBDMS44OTU0MzA1LDE5IDEsMTguMTA0NTY5NSAxLDE3IEwxLDMgTDEsMyBDMSwxLjg5NTQzMDUgMS44OTU0MzA1LDEgMywxIFpcIj48L3BhdGg+XG4vLyAgICAgICAgICAgPHBvbHlsaW5lIHBvaW50cz1cIjQgMTEgOCAxNSAxNiA2XCI+PC9wb2x5bGluZT5cbi8vICAgICAgICAgPC9zdmc+XG4vLyAgICAgICA8L2k+XG4vLyAgICAgPC9kaXY+XG4vLyAgICAgPGRpdiBjbGFzcz1cIm9wdGlvblwiPlxuLy8gICAgICAgPGlucHV0IGNsYXNzPVwib3B0aW9uX19pbnB1dFwiIGlkPVwiY2hlY2tib3gyXCIgdHlwZT1cImNoZWNrYm94XCI+XG4vLyAgICAgICA8bGFiZWwgY2xhc3M9XCJvcHRpb25fX2xhYmVsXCIgZm9yPVwiY2hlY2tib3gyXCI+Q2hlY2tib3ggMjwvbGFiZWw+XG4vLyAgICAgICA8aSBjbGFzcz1cIm9wdGlvbl9faWNvblwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPlxuLy8gICAgICAgICA8c3ZnIHdpZHRoPVwiMjBweFwiIGhlaWdodD1cIjIwcHhcIiB2aWV3Qm94PVwiMCAwIDIwIDIwXCI+XG4vLyAgICAgICAgICAgPHBhdGggZD1cIk0zLDEgTDE3LDEgTDE3LDEgQzE4LjEwNDU2OTUsMSAxOSwxLjg5NTQzMDUgMTksMyBMMTksMTcgTDE5LDE3IEMxOSwxOC4xMDQ1Njk1IDE4LjEwNDU2OTUsMTkgMTcsMTkgTDMsMTkgTDMsMTkgQzEuODk1NDMwNSwxOSAxLDE4LjEwNDU2OTUgMSwxNyBMMSwzIEwxLDMgQzEsMS44OTU0MzA1IDEuODk1NDMwNSwxIDMsMSBaXCI+PC9wYXRoPlxuLy8gICAgICAgICAgIDxwb2x5bGluZSBwb2ludHM9XCI0IDExIDggMTUgMTYgNlwiPjwvcG9seWxpbmU+XG4vLyAgICAgICAgIDwvc3ZnPlxuLy8gICAgICAgPC9pPlxuLy8gICAgIDwvZGl2PlxuLy8gICAgIDxkaXYgY2xhc3M9XCJvcHRpb25cIj5cbi8vICAgICAgIDxpbnB1dCBjbGFzcz1cIm9wdGlvbl9faW5wdXRcIiBpZD1cImNoZWNrYm94M1wiIHR5cGU9XCJjaGVja2JveFwiPlxuLy8gICAgICAgPGxhYmVsIGNsYXNzPVwib3B0aW9uX19sYWJlbFwiIGZvcj1cImNoZWNrYm94M1wiPkNoZWNrYm94IDM8L2xhYmVsPlxuLy8gICAgICAgPGkgY2xhc3M9XCJvcHRpb25fX2ljb25cIiBhcmlhLWhpZGRlbj1cInRydWVcIj5cbi8vICAgICAgICAgPHN2ZyB3aWR0aD1cIjIwcHhcIiBoZWlnaHQ9XCIyMHB4XCIgdmlld0JveD1cIjAgMCAyMCAyMFwiPlxuLy8gICAgICAgICAgIDxwYXRoIGQ9XCJNMywxIEwxNywxIEwxNywxIEMxOC4xMDQ1Njk1LDEgMTksMS44OTU0MzA1IDE5LDMgTDE5LDE3IEwxOSwxNyBDMTksMTguMTA0NTY5NSAxOC4xMDQ1Njk1LDE5IDE3LDE5IEwzLDE5IEwzLDE5IEMxLjg5NTQzMDUsMTkgMSwxOC4xMDQ1Njk1IDEsMTcgTDEsMyBMMSwzIEMxLDEuODk1NDMwNSAxLjg5NTQzMDUsMSAzLDEgWlwiPjwvcGF0aD5cbi8vICAgICAgICAgICA8cG9seWxpbmUgcG9pbnRzPVwiNCAxMSA4IDE1IDE2IDZcIj48L3BvbHlsaW5lPlxuLy8gICAgICAgICA8L3N2Zz5cbi8vICAgICAgIDwvaT5cbi8vICAgICA8L2Rpdj5cbi8vICAgPC9kaXY+XG4vLyA8L2ZpZWxkc2V0PlxuLy9cbi8vIFN0eWxlZ3VpZGUgRWxlbWVudHMgLSBGb3JtIC0gQ2hlY2tib3hlc1xuXG4uY2hlY2tib3hlcyB7XG5cbiAgLy8gbGVnZW5kXG4gIGxlZ2VuZCB7IEBleHRlbmQgJWxhYmVsOyB9XG5cbiAgLy8gb3B0aW9uc1xuICAub3B0aW9uIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAvLyBvcHRpb24gaW5wdXRcbiAgICAmX19pbnB1dCB7IEBleHRlbmQgJWhpZGUtb2ZmLXNjcmVlbjsgfVxuXG4gICAgLy8gb3B0aW9uIGljb25cbiAgICAmX19pY29uIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMXB4O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogMjBweDtcbiAgICAgIGhlaWdodDogMjBweDtcbiAgICAgIGJvcmRlcjogMnB4IHNvbGlkIGNvbG9yKHByaW1hcnksIGdyYXkpO1xuICAgICAgYm9yZGVyLXJhZGl1czogcmFkaXVzKGJhc2UpO1xuICAgICAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAkYmFzZS1hbmltYXRpb24tc3BlZWQgJGJhc2UtYW5pbWF0aW9uLWVhc2luZztcbiAgICAgIHotaW5kZXg6IDE7XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICAgICAgdG9wOiAycHg7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICAgICAgdG9wOiA0cHg7XG4gICAgICB9XG5cbiAgICAgIHN2ZyB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAtMnB4O1xuICAgICAgICBsZWZ0OiAtMnB4O1xuICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgfVxuXG4gICAgICBzdmcgcGF0aCB7XG4gICAgICAgIGZpbGw6IG5vbmU7XG4gICAgICAgIHN0cm9rZTogY29sb3IocHJpbWFyeSwgYmx1ZSk7XG4gICAgICAgIHN0cm9rZS13aWR0aDogMjtcbiAgICAgICAgc3Ryb2tlLWxpbmVjYXA6IHJvdW5kO1xuICAgICAgICBzdHJva2UtbGluZWpvaW46IHJvdW5kO1xuICAgICAgICBzdHJva2UtZGFzaGFycmF5OiA3MXB4O1xuICAgICAgICBzdHJva2UtZGFzaG9mZnNldDogNzFweDtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNnMgZWFzZTtcbiAgICAgIH1cblxuICAgICAgc3ZnIHBvbHlsaW5lIHtcbiAgICAgICAgZmlsbDogbm9uZTtcbiAgICAgICAgc3Ryb2tlOiBjb2xvcihwcmltYXJ5LCB3aGl0ZSk7XG4gICAgICAgIHN0cm9rZS13aWR0aDogMjtcbiAgICAgICAgc3Ryb2tlLWxpbmVjYXA6IHJvdW5kO1xuICAgICAgICBzdHJva2UtbGluZWpvaW46IHJvdW5kO1xuICAgICAgICBzdHJva2UtZGFzaGFycmF5OiAxOHB4O1xuICAgICAgICBzdHJva2UtZGFzaG9mZnNldDogMThweDtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBvcHRpb24gbGFiZWxcbiAgICAmX19sYWJlbCB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDI4cHg7XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgei1pbmRleDogMjtcbiAgICB9XG5cbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiAgICAvLyBmb2N1cyBzdGF0ZVxuICAgICZfX2lucHV0OmZvY3VzICsgLm9wdGlvbl9fbGFiZWwgKyAub3B0aW9uX19pY29uIHtcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDRweCByZ2JhKGNvbG9yKHByaW1hcnksIGJsdWUpLCAuMTYpO1xuXG4gICAgICBzdmcgcGF0aCB7XG4gICAgICAgIHN0cm9rZS1kYXNob2Zmc2V0OiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIGhvdmVyIHN0YXRlXG4gICAgJjpob3ZlciAub3B0aW9uX19pY29uIHtcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDRweCBjb2xvcihzZWNvbmRhcnksIG9mZi1ibHVlKTtcblxuICAgICAgc3ZnIHBhdGgge1xuICAgICAgICBzdHJva2UtZGFzaG9mZnNldDogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBjaGVja2VkIHN0YXRlXG4gICAgJl9faW5wdXQ6Y2hlY2tlZCArIC5vcHRpb25fX2xhYmVsICsgLm9wdGlvbl9faWNvbiB7XG4gICAgICBib3JkZXItY29sb3I6IGNvbG9yKHByaW1hcnksIGJsdWUpO1xuXG4gICAgICBzdmcgcGF0aCB7XG4gICAgICAgIGZpbGw6IGNvbG9yKHByaW1hcnksIGJsdWUpO1xuICAgICAgfVxuXG4gICAgICBzdmcgcG9seWxpbmUge1xuICAgICAgICBzdHJva2UtZGFzaG9mZnNldDogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuXG59XG4iLCIvLyBJbnB1dFxuLy9cbi8vIFRoZSBIVE1MIDxjb2RlPmlucHV0PC9jb2RlPiBlbGVtZW50IGlzIHVzZWQgdG8gY3JlYXRlIGludGVyYWN0aXZlIGNvbnRyb2xzIGZvciB3ZWItYmFzZWQgZm9ybXMgaW4gb3JkZXIgdG8gYWNjZXB0IGRhdGEgZnJvbSB0aGUgdXNlci5cbi8vXG4vLyBNYXJrdXA6XG4vLyA8aW5wdXQgdHlwZT1cInRleHRcIiBpZD1cImlucHV0SURcIiBuYW1lPVwiaW5wdXRJRFwiIHBsYWNlaG9sZGVyPVwicGxhY2Vob2xkZXIuLi5cIiAvPlxuLy9cbi8vIFN0eWxlZ3VpZGUgRWxlbWVudHMgLSBGb3JtIC0gSW5wdXRcblxuaW5wdXQge1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDhweDtcbiAgYm9yZGVyOiAycHggc29saWQgY29sb3IocHJpbWFyeSwgZ3JheSk7XG4gIHRyYW5zaXRpb246XG4gICAgYm9yZGVyICRiYXNlLWFuaW1hdGlvbi1zcGVlZCAkYmFzZS1hbmltYXRpb24tZWFzaW5nLFxuICAgIGJveC1zaGFkb3cgJGJhc2UtYW5pbWF0aW9uLXNwZWVkICRiYXNlLWFuaW1hdGlvbi1lYXNpbmc7XG5cbiAgLy8gZm9jdXMgc3RhdGVcbiAgJjpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiBjb2xvcihwcmltYXJ5LCBibHVlKTtcbiAgICBib3gtc2hhZG93OiAwIDAgMCA0cHggcmdiYShjb2xvcihwcmltYXJ5LCBibHVlKSwgLjE2KTtcbiAgICBvdXRsaW5lOiAwO1xuICB9XG5cbiAgLy8gaG92ZXIgc3RhdGVcbiAgJjpob3ZlciB7XG4gICAgYm9yZGVyLWNvbG9yOiBjb2xvcihwcmltYXJ5LCBibHVlKTtcbiAgfVxufVxuXG4vLyBEaXNhYmxlIGJ1aWx0LWluIHNlYXJjaCBpbnB1dCBmb3JtYXRzIGZvciBzdXBwb3J0ZWQgYnJvd3NlcnNcbmlucHV0W3R5cGU9J3NlYXJjaCddIHtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuLy8gRGlzYWJsZSBidWlsdC1pbiBzcGlubmVyIGNvbnRyb2wgZm9yIHN1cHBvcnRlZCBicm93c2Vyc1xuaW5wdXRbdHlwZT0nbnVtYmVyJ106Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5pbnB1dFt0eXBlPSdudW1iZXInXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIG1hcmdpbjogMDtcbn1cblxuXG4vLyBUZXh0YXJlYVxuLy9cbi8vIFRoZSBIVE1MIDxjb2RlPnRleHRhcmVhPC9jb2RlPiBlbGVtZW50IHJlcHJlc2VudHMgYSBtdWx0aS1saW5lIHBsYWluLXRleHQgZWRpdGluZyBjb250cm9sLlxuLy9cbi8vIE1hcmt1cDpcbi8vIDx0ZXh0YXJlYSBpZD1cImlucHV0SURcIiBuYW1lPVwiaW5wdXRJRFwiIHBsYWNlaG9sZGVyPVwicGxhY2Vob2xkZXIuLi5cIj48L3RleHRhcmVhPlxuLy9cbi8vIFN0eWxlZ3VpZGUgRWxlbWVudHMgLSBGb3JtIC0gVGV4dGFyZWFcblxudGV4dGFyZWEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDEyOHB4O1xuICBwYWRkaW5nOiA4cHg7XG4gIGJvcmRlcjogMnB4IHNvbGlkIGNvbG9yKHByaW1hcnksIGdyYXkpO1xuICByZXNpemU6IHZlcnRpY2FsO1xuICB0cmFuc2l0aW9uOlxuICAgIGJvcmRlciAkYmFzZS1hbmltYXRpb24tc3BlZWQgJGJhc2UtYW5pbWF0aW9uLWVhc2luZyxcbiAgICBib3gtc2hhZG93ICRiYXNlLWFuaW1hdGlvbi1zcGVlZCAkYmFzZS1hbmltYXRpb24tZWFzaW5nO1xuXG4gIC8vIGZvY3VzIHN0YXRlXG4gICY6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogY29sb3IocHJpbWFyeSwgYmx1ZSk7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgNHB4IHJnYmEoY29sb3IocHJpbWFyeSwgYmx1ZSksIC4xNik7XG4gICAgb3V0bGluZTogMDtcbiAgfVxuXG4gIC8vIGhvdmVyIHN0YXRlXG4gICY6aG92ZXIge1xuICAgIGJvcmRlci1jb2xvcjogY29sb3IocHJpbWFyeSwgYmx1ZSk7XG4gIH1cbn1cbiIsImFkZHJlc3Mge1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIG1hcmdpbjogMCAwIDE0cHg7XG5cbiAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgIG1hcmdpbi1ib3R0b206IDE2cHg7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYSgnPj1sYXB0b3AnKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTlweDtcbiAgfVxufVxuIiwiLndyYXBwZXIge1xuICBwYWRkaW5nOiAwIDMycHg7XG4gIG1hcmdpbjogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIFxuICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgcGFkZGluZzogMCA2NHB4O1xuICB9XG4gIEBpbmNsdWRlIG1lZGlhKCc+PWRlc2t0b3Bfd2lkZScpIHtcbiAgICB3aWR0aDogMTE0MHB4O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gIH1cbiAgQGluY2x1ZGUgbWVkaWEoJz49MTY4MHB4Jykge1xuICAgIHdpZHRoOiAxMjgwcHg7XG4gIH1cbn1cbiIsIi5oZWFkZXItY29udGFpbmVyIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICBhbGlnbi1jb250ZW50OiBzdHJldGNoO1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDY4cHg7XG4gIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKHByaW1hcnksIHdoaXRlKTtcbiAgYm94LXNoYWRvdzogMCAxcHggMCAwIHJnYmEoY29sb3IocHJpbWFyeSwgZ3JheSksIC4yNSk7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgJGJhc2UtYW5pbWF0aW9uLXNwZWVkICogMiAkYmFzZS1hbmltYXRpb24tZWFzaW5nO1xuICB6LWluZGV4OiAxMDAwMDtcblxuICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgaGVpZ2h0OiA4NHB4O1xuICB9XG4gIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgaGVpZ2h0OiA4MHB4O1xuICAgIGJvcmRlcjogMDtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gIH1cblxuICAvLyBvdmVybGF5c1xuICAmOmJlZm9yZSB7XG4gICAgQGV4dGVuZCAlb3ZlcmxheTtcbiAgfVxuXG4gIC8vIGhlYWRlciBtYXJnaW5zXG4gICsgKiB7XG4gICAgbWFyZ2luLXRvcDogNjhweDtcblxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICAgIG1hcmdpbi10b3A6IDg0cHg7XG4gICAgfVxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICAgIG1hcmdpbi10b3A6IDE2MHB4O1xuICAgIH1cbiAgICBAaW5jbHVkZSBtZWRpYSgnPj0xMzY2cHgnKSB7XG4gICAgICBtYXJnaW4tdG9wOiA4MHB4O1xuICAgIH1cbiAgfVxuXG4gIC8vIGhlYWRlciBhY3Rpb25zXG4gIC5hY3Rpb25zIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIC8vIElFIDExIGZpeFxuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIC8vIGVuZCBJRSAxMSBmaXhcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPj1sYXB0b3AnKSB7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICB9XG4gIH1cblxuICAvLyBoZWFkZXIgcGFuZWxzXG4gIC5wYW5lbCB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IocHJpbWFyeSwgd2hpdGUpO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgdHJhbnNpdGlvbjogdmlzaWJpbGl0eSAkYmFzZS1hbmltYXRpb24tc3BlZWQgKiAyICRiYXNlLWFuaW1hdGlvbi1lYXNpbmcsXG4gICAgdHJhbnNmb3JtICRiYXNlLWFuaW1hdGlvbi1zcGVlZCAqIDIgJGJhc2UtYW5pbWF0aW9uLWVhc2luZztcbiAgICB6LWluZGV4OiAxMDAwMjtcblxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICAgIGJveC1zaGFkb3c6IC0ycHggMCA4cHggMCByZ2JhKGNvbG9yKHByaW1hcnksIGdyYXkpLCAuMjUpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHRvcDogYXV0bztcbiAgICAgIGxlZnQ6IGF1dG87XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgIHotaW5kZXg6IGF1dG87XG4gICAgfVxuXG4gICAgLy8gTWVudSBwYW5lbFxuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAmLS1tZW51IHtcbiAgICAgIGxlZnQ6IDEwMCU7XG4gICAgICBwYWRkaW5nOiA2NHB4IDMycHggMzJweDtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICB6LWluZGV4OiAxMDAwMjtcblxuICAgICAgQGluY2x1ZGUgbWVkaWEoJz49bGFwdG9wJykge1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgfVxuXG4gICAgICAvLyBhY3RpdmUgc3RhdGVcbiAgICAgICYucGFuZWwtLWFjdGl2ZSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG4gICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gU2VhcmNoIHBhbmVsXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICYtLXNlYXJjaCB7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IocHJpbWFyeSwgb2ZmLXdoaXRlKTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDEwMCU7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXg6IDIgMCBhdXRvO1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IocHJpbWFyeSwgd2hpdGUpO1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYShjb2xvcihwcmltYXJ5LCBncmF5KSwgLjE1KTtcbiAgICAgICAgYm94LXNoYWRvdzogMCAycHggOHB4IDAgcmdiYShjb2xvcihwcmltYXJ5LCBncmF5KSwgLjI1KTtcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgbWVkaWEoJz49MTM2NnB4Jykge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDE2cHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc8MTM2NnB4JywgJz49bGFwdG9wJykge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cblxuICAgICAgLy8gYWN0aXZlIHN0YXRlXG4gICAgICAmLnBhbmVsLS1hY3RpdmUge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFN1Z2dlc3Rpb25zIHBhbmVsXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICYtLXN1Z2dlc3Rpb25zIHtcbiAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgICBwYWRkaW5nOiAxMDBweCAzMnB4IDMycHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIHotaW5kZXg6IDEwMDtcblxuICAgICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgICAgICBwYWRkaW5nOiAxNDhweCA3MnB4IDY0cHg7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPj1sYXB0b3AnKSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAxMDAlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWluLXdpZHRoOiA0ODBweDtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBtYXgtaGVpZ2h0OiA3NXZoO1xuICAgICAgICBwYWRkaW5nOiA2NHB4O1xuICAgICAgICBtYXJnaW4tdG9wOiA0cHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKHByaW1hcnksIHdoaXRlKTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogcmFkaXVzKGJhc2UpO1xuICAgICAgICBib3gtc2hhZG93OiAwIDJweCA4cHggMCByZ2JhKGNvbG9yKHByaW1hcnksIGdyYXkpLCAuMjUpO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTE2cHgpO1xuICAgICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5LCB0cmFuc2Zvcm0sIHZpc2liaWxpdHk7XG4gICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDcwbXMsIDI1MG1zLCAyNTBtcztcbiAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhciwgY3ViaWMtYmV6aWVyKC4yMywgMSwgLjMyLCAxKTtcbiAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMjVtcywgNTBtcywgMG1zO1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgICAgIH1cblxuICAgICAgJi5wYW5lbC0tYWN0aXZlIHtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJz49bGFwdG9wJykge1xuICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMTAwbXMsIDE1MG1zLCAyNW1zO1xuICAgICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDM1bXMsIDUwbXMsIDI1bXM7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi5jb250ZW50LWNvbnRhaW5lciB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgLy8gb3ZlcmxheXNcbiAgJjpiZWZvcmUge1xuICAgIEBleHRlbmQgJW92ZXJsYXk7XG4gIH1cblxuICAvLyBQYW5lbHNcbiAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC5wYW5lbCB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IocHJpbWFyeSwgd2hpdGUpO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgdHJhbnNpdGlvbjpcbiAgICAgIHZpc2liaWxpdHkgJGJhc2UtYW5pbWF0aW9uLXNwZWVkICogMiAkYmFzZS1hbmltYXRpb24tZWFzaW5nLFxuICAgICAgdHJhbnNmb3JtICRiYXNlLWFuaW1hdGlvbi1zcGVlZCAqIDIgJGJhc2UtYW5pbWF0aW9uLWVhc2luZztcbiAgICB6LWluZGV4OiAxMDAwMjtcblxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICAgIGJveC1zaGFkb3c6IC0ycHggMCA4cHggMCByZ2JhKCBjb2xvcihwcmltYXJ5LCBncmF5KSwgLjI1ICk7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEoJz49bGFwdG9wJykge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdG9wOiBhdXRvO1xuICAgICAgbGVmdDogYXV0bztcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlcjogMDtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgei1pbmRleDogYXV0bztcbiAgICB9XG5cbiAgICAvLyBTZWNvbmRhcnkgbWVudSBwYW5lbFxuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgJi0tc2Vjb25kYXJ5LW1lbnUge1xuICAgICAgbGVmdDogMTAwJTtcbiAgICAgIHBhZGRpbmc6IDY0cHggMzJweCAzMnB4O1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgIHotaW5kZXg6IDEwMDAyO1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgIH1cblxuICAgICAgLy8gYWN0aXZlIHN0YXRlXG4gICAgICAmLnBhbmVsLS1hY3RpdmUge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xuICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIENvbnRleHR1YWwgbWVudSBwYW5lbFxuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICYtLWNvbnRleHR1YWwtbWVudSB7XG4gICAgICB0b3A6IGF1dG87XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgcGFkZGluZzogMzJweDtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7XG4gICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICB6LWluZGV4OiAxO1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgICAgIHBhZGRpbmc6IDY0cHg7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDEwMCU7XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBib3R0b206IGF1dG87XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIHBhZGRpbmc6IDMycHg7XG4gICAgICAgIG1hcmdpbi10b3A6IC0zMnB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihwcmltYXJ5LCB3aGl0ZSk7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoY29sb3IocHJpbWFyeSwgZ3JheSksIC4yNSk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHJhZGl1cyhiYXNlKTtcbiAgICAgICAgYm94LXNoYWRvdzogMCAycHggNHB4IHJnYmEoY29sb3IocHJpbWFyeSwgYmxhY2spLCAuMSk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTZweCk7XG4gICAgICAgIHRyYW5zaXRpb246XG4gICAgICAgICAgb3BhY2l0eSAkYmFzZS1hbmltYXRpb24tc3BlZWQgJGJhc2UtYW5pbWF0aW9uLWVhc2luZyxcbiAgICAgICAgICB2aXNpYmlsaXR5ICRiYXNlLWFuaW1hdGlvbi1zcGVlZCAkYmFzZS1hbmltYXRpb24tZWFzaW5nLFxuICAgICAgICAgIHRyYW5zZm9ybSAkYmFzZS1hbmltYXRpb24tc3BlZWQgJGJhc2UtYW5pbWF0aW9uLWVhc2luZztcbiAgICAgIH1cblxuICAgICAgLy8gYWN0aXZlIHN0YXRlXG4gICAgICAmLnBhbmVsLS1hY3RpdmUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xuICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICB6LWluZGV4OiAxMDAwMjtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYSgnPj1sYXB0b3AnKSB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmxpbmtzIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAgICZfX2l0ZW0ge1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgbGlnaHRlbihjb2xvcihwcmltYXJ5LCBncmF5KSwgMzUlKTtcblxuICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDE5cHg7XG4gICAgICAgICAgICBib3JkZXItdG9wOiAwO1xuICAgICAgICAgIH1cblxuICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogMDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoJz49bGFwdG9wJykge1xuICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmX19pdGVtIGEge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHBhZGRpbmc6IDE2cHggMDtcblxuICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgICAgIHBhZGRpbmc6IGluaGVyaXQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5idXR0b24ge1xuICAgICAgICBAaW5jbHVkZSBtZWRpYSgnPj1sYXB0b3AnKSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEhvbWVwYWdlIHNlYXJjaFxuICAgICYtLWhvbWUtc3VnZ2VzdGlvbnMge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAxMDAlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgcGFkZGluZzogMzJweDtcbiAgICAgIG1hcmdpbi10b3A6IDRweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKHByaW1hcnksIHdoaXRlKTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IHJhZGl1cyhiYXNlKTtcbiAgICAgIGJveC1zaGFkb3c6IDAgMnB4IDhweCAwIHJnYmEoIGNvbG9yKHByaW1hcnksIGdyYXkpLCAuMjUgKTtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTE2cHgpO1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eSwgdHJhbnNmb3JtLCB2aXNpYmlsaXR5O1xuICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNzBtcywgMjUwbXMsIDI1MG1zO1xuICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhciwgY3ViaWMtYmV6aWVyKC4yMywgMSwgLjMyLCAxKTtcbiAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDI1bXMsIDUwbXMsIDBtcztcbiAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgIHotaW5kZXg6IDEwMDtcblxuICAgICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgICAgICBwYWRkaW5nOiA0OHB4O1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgbWVkaWEoJz49bGFwdG9wJykge1xuICAgICAgICBtaW4td2lkdGg6IDQ4MHB4O1xuICAgICAgICBtYXgtaGVpZ2h0OiA3NXZoO1xuICAgICAgICBwYWRkaW5nOiA0OHB4O1xuICAgICAgICBvdmVyZmxvdy15OiBzY3JvbGw7XG4gICAgICB9XG5cbiAgICAgICYucGFuZWwtLWFjdGl2ZSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMTAwbXMsIDE1MG1zLCAyNW1zO1xuICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAzNW1zLCA1MG1zLCAyNW1zO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG59XG4iLCIuZm9vdGVyLWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogMzJweCAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihzZWNvbmRhcnksIGRhcmstYmx1ZSk7XG4gIGJvcmRlci10b3A6IDJweCBzb2xpZCBjb2xvcihwcmltYXJ5LCBnb2xkKTtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAycHggMCAwIGNvbG9yKHByaW1hcnksIGdvbGQpO1xuICBjb2xvcjogY29sb3IocHJpbWFyeSwgd2hpdGUpO1xuXG4gIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICBwYWRkaW5nOiA2NHB4IDA7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYSgnPj1sYXB0b3AnKSB7XG4gICAgcGFkZGluZzogMTI4cHggMDtcbiAgICBib3JkZXItdG9wOiA0cHggc29saWQgY29sb3IocHJpbWFyeSwgZ29sZCk7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCA0cHggMCAwIGNvbG9yKHByaW1hcnksIGdvbGQpO1xuICB9XG5cblxuICAvLyBHZW5lcmFsXG4gIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBhIHtcblxuICAgIC8vIGRlZmF1bHQgbGlua3MsIG5vdCB2aXNpdGVkXG4gICAgJjpsaW5rIHtcbiAgICAgIGNvbG9yOiBjb2xvcihwcmltYXJ5LCB3aGl0ZSk7XG4gICAgfVxuXG4gICAgLy8gbGlua3MgdGhhdCBoYXZlIGJlZW4gdmlzaXRlZFxuICAgICY6dmlzaXRlZCB7XG4gICAgICBjb2xvcjogY29sb3IocHJpbWFyeSwgd2hpdGUpO1xuICAgIH1cblxuICAgIC8vIGhvdmVyIHN0YXRlXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKGNvbG9yKHNlY29uZGFyeSwgZGFyay1ibHVlKSwgNSUpO1xuICAgICAgY29sb3I6IGNvbG9yKHByaW1hcnksIHdoaXRlKTtcbiAgICB9XG5cbiAgICAvLyBmb2N1cyBzdGF0ZVxuICAgICY6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3Ioc2Vjb25kYXJ5LCBnb2xkKTtcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDRweCBjb2xvcihzZWNvbmRhcnksIGdvbGQpO1xuICAgICAgY29sb3I6IGNvbG9yKHNlY29uZGFyeSwgZGFyay1ibHVlKTtcbiAgICB9XG5cbiAgICAvLyBhY3RpdmUgc3RhdGVcbiAgICAmOmFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihzZWNvbmRhcnksIGdvbGQpO1xuICAgICAgYm94LXNoYWRvdzogMCAwIDAgNHB4IGNvbG9yKHNlY29uZGFyeSwgZ29sZCk7XG4gICAgICBjb2xvcjogY29sb3Ioc2Vjb25kYXJ5LCBkYXJrLWJsdWUpO1xuICAgIH1cblxuICAgIC8vIGV4dGVybmFsIGxpbmtzXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICZbdGFyZ2V0PSdfYmxhbmsnXSB7XG5cbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKGNvbG9yKHNlY29uZGFyeSwgZGFyay1ibHVlKSwgNSUpO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy9pY29ucy9pX2V4dGVybmFsX3doaXRlLnN2ZycpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG5cbiAgLnBhbmVsLWdyb3VwIHtcblxuICAgIC8vIEFkZGl0aW9uYWwgaW5mb3JtYXRpb25cbiAgICAmLS1hZGRpdGlvbmFsIHtcbiAgICAgIEBpbmNsdWRlIHJlc2V0LWZvb3Rlci10aXRsZTtcblxuICAgICAgQGluY2x1ZGUgbWVkaWEoJz49ZGVza3RvcCcpIHtcbiAgICAgICAgd2lkdGg6IHBlcmNlbnRhZ2UoNjMwLzEyODApO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgfVxuXG4gICAgICAubGlua3NfX2xpc3Qge1xuICAgICAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5saW5rc19faXRlbSB7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICAgICAgICB3aWR0aDogcGVyY2VudGFnZSgzMDAvNjI0KTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIENvbW11bml0eSBzdXBwb3J0XG4gICAgJi0tY29tbXVuaXR5IHtcbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PWRlc2t0b3AnKSB7XG4gICAgICAgIHdpZHRoOiBwZXJjZW50YWdlKDMwMy8xMjgwKTtcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgcmVzZXQtZm9vdGVyLXRpdGxlO1xuICAgIH1cblxuICAgIC8vIEhlbHAgYW5kIHN1cHBvcnRcbiAgICAmLS1oZWxwLXN1cHBvcnQge1xuICAgICAgQGluY2x1ZGUgbWVkaWEoJz49ZGVza3RvcCcpIHtcbiAgICAgICAgd2lkdGg6IHBlcmNlbnRhZ2UoMzAzLzEyODApO1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSByZXNldC1mb290ZXItdGl0bGU7XG4gICAgfVxuXG4gICAgLy8gU2l0ZSBpbmZvcm1hdGlvblxuICAgICYtLWxlZ2FsIHtcbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PWRlc2t0b3AnKSB7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgfVxuXG4gICAgICAvLyBwYW5lbCB0aXRsZVxuICAgICAgLnBhbmVsX190aXRsZSB7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PWRlc2t0b3AnKSB7XG4gICAgICAgICAgQGluY2x1ZGUgaGlkZS1vZmYtc2NyZWVuO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIHBhbmVsIGNvbnRlbnRcbiAgICAgIC5wYW5lbF9fY29udGVudCB7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PWRlc2t0b3AnKSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBsaW5rcyBpdGVtc1xuICAgICAgLmxpbmtzX19pdGVtIHtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJz49ZGVza3RvcCcpIHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDE2cHg7XG4gICAgICAgIH1cblxuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gIH1cblxuXG4gIC8vIExpbmtzXG4gIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAubGlua3Mge1xuXG4gICAgLy8gU29jaWFsIGl0ZW1zXG4gICAgJl9faXRlbS0tZmFjZWJvb2sge1xuICAgICAgYTpiZWZvcmUgeyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy9pY29ucy9pX3NvY2lhbC1mYWNlYm9va193aGl0ZS5zdmcnKTsgfVxuICAgIH1cblxuICAgICZfX2l0ZW0tLXR3aXR0ZXIge1xuICAgICAgYTpiZWZvcmUgeyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy9pY29ucy9pX3NvY2lhbC10d2l0dGVyX3doaXRlLnN2ZycpOyB9XG4gICAgfVxuXG4gICAgJl9faXRlbS0tbGlua2VkaW4ge1xuICAgICAgYTpiZWZvcmUgeyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy9pY29ucy9pX3NvY2lhbC1saW5rZWRpbl93aGl0ZS5zdmcnKTsgfVxuICAgIH1cblxuICAgICZfX2l0ZW0tLXlvdXR1YmUge1xuICAgICAgYTpiZWZvcmUgeyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy9pY29ucy9pX3NvY2lhbC15b3V0dWJlX3doaXRlLnN2ZycpOyB9XG4gICAgfVxuXG4gICAgJl9faXRlbS0tZW1haWwge1xuICAgICAgYTpiZWZvcmUgeyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy9pY29ucy9pX3NvY2lhbC1lbWFpbF93aGl0ZS5zdmcnKTsgfVxuICAgIH1cblxuICAgIC8vIENvbm5lY3Qgd2l0aCB1c1xuICAgICYtLWNvbm5lY3Qge1xuICAgICAgbWFyZ2luLXRvcDogMzJweDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgQGluY2x1ZGUgbWVkaWEoJz49ZGVza3RvcCcpIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PWRlc2t0b3Bfd2lkZScpIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgIH1cblxuICAgICAgLmxpbmtzX190aXRsZSB7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE2cHg7XG4gICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJz49ZGVza3RvcCcpIHtcbiAgICAgICAgICBtYXJnaW46IDAgMTZweCAwIDA7XG4gICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgY29udGVudDogJzonO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5saW5rc19fbGlzdCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBmb250LXNpemU6IDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgICAgfVxuXG4gICAgICAubGlua3NfX2l0ZW0ge1xuICAgICAgICB3aWR0aDogMzJweDtcbiAgICAgICAgaGVpZ2h0OiAzMnB4O1xuICAgICAgICBtYXJnaW46IDAgOHB4O1xuICAgICAgfVxuXG4gICAgICAubGlua3NfX2l0ZW0gYSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICAvLyBmb2N1cyBzdGF0ZVxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIExhbmd1YWdlc1xuICAgICYtLWxhbmd1YWdlcyB7XG4gICAgICBtYXJnaW4tdG9wOiAzMnB4O1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPj1kZXNrdG9wJykge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgfVxuXG4gICAgICAubGlua3NfX3RpdGxlIHtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKCc8ZGVza3RvcCcpIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJz49ZGVza3RvcCcpIHtcbiAgICAgICAgICBtYXJnaW46IDAgMTZweCAwIDA7XG4gICAgICAgIH1cblxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiAnOic7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gbGlua3MgbGlzdFxuICAgICAgLmxpbmtzX19saXN0IHtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJzxkZXNrdG9wJykge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBsaW5rcyBsaXN0IGl0ZW1zXG4gICAgICAubGlua3NfX2l0ZW0ge1xuICAgICAgICBAaW5jbHVkZSBtZWRpYSgnPGRlc2t0b3AnKSB7XG4gICAgICAgICAgZmxleC1iYXNpczogMzAlO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKCc8dGFibGV0Jykge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICBmbGV4LWJhc2lzOiA0MCU7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJz49ZGVza3RvcCcpIHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDE2cHg7XG4gICAgICAgIH1cblxuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICBAaW5jbHVkZSBtZWRpYSgnPGRlc2t0b3AnKSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxNnB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuXG4gIC8vIFByaW1hcnkgZm9vdGVyIGFyZWFcbiAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC5wcmltYXJ5IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBtYXJnaW4tdG9wOiAxNnB4O1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoJz49ZGVza3RvcCcpIHtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA2NHB4O1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG4gIH1cblxuXG4gIC8vIFNlY29uZGFyeSBmb290ZXIgYXJlYVxuICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLnNlY29uZGFyeSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIG1hcmdpbi1ib3R0b206IDE2cHg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPj1kZXNrdG9wJykge1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICBwYWRkaW5nLXRvcDogNjRweDtcbiAgICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCBjb2xvcihwcmltYXJ5LCBnb2xkKTtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICB9XG5cbiAgICAvLyBzdGFyc1xuICAgICY6YmVmb3JlIHtcbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PWRlc2t0b3AnKSB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICB3aWR0aDogMTI0cHg7XG4gICAgICAgIGhlaWdodDogMjRweDtcbiAgICAgICAgYmFja2dyb3VuZDogY29sb3Ioc2Vjb25kYXJ5LCBkYXJrLWJsdWUpIHVybCgnLi4vaW1nL2dyYXBoaWNzL2dfc3RhcnMuc3ZnJykgbm8tcmVwZWF0IDUwJSA1MCUgLyA4MHB4IGF1dG87XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTUwJSwgLTUwJSwgMCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gbG9nb1xuICAgIC5sb2dvIHtcbiAgICAgIG9yZGVyOiAyO1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPj1kZXNrdG9wJykge1xuICAgICAgICBvcmRlcjogMTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBsaW5rc1xuICAgIC5saW5rcyB7XG4gICAgICBvcmRlcjogMTtcblxuICAgICAgQGluY2x1ZGUgbWVkaWEoJz49ZGVza3RvcCcpIHtcbiAgICAgICAgb3JkZXI6IDI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gY29weXJpZ2h0XG4gICAgLmNvcHlyaWdodCB7XG4gICAgICBvcmRlcjogMztcbiAgICB9XG4gIH1cblxuICAvLyBMYW5ndWFnZSBmb290ZXIgYXJlYVxuICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLmxhbmd1YWdlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgbWFyZ2luLWJvdHRvbTogMTZweDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PWRlc2t0b3AnKSB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIFpvbmVzXG4vL1xuLy8gTXVsdGktY29sdW1uIGNvbXBvc2l0aW9ucyBmb3IgeW91ciBjb250ZW50LlxuLy9cbi8vIFN0eWxlZ3VpZGUgTGF5b3V0cyAtIFpvbmVzXG5cbi56b25lcyB7XG4gIG1hcmdpbi1ib3R0b206IDQ4cHg7XG5cbiAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgIG1hcmdpbi1ib3R0b206IDk2cHg7XG4gIH1cbiAgQGluY2x1ZGUgbWVkaWEoJz49ZGVza3RvcCcpIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBtYXJnaW4tYm90dG9tOiAxMjhweDtcbiAgfVxuXG4gID4gLndyYXBwZXIge1xuICAgIEBpbmNsdWRlIG1lZGlhKCc+PWRlc2t0b3AnKSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIH1cbiAgfVxuXG5cbiAgLy8gMiBab25lc1xuICAvL1xuICAvLyBNYXJrdXA6XG4gIC8vIDxkaXYgY2xhc3M9XCJ6b25lc1wiIGRhdGEtY29sdW1ucz1cIjJcIj5cbiAgLy8gICA8ZGl2IGNsYXNzPVwiem9uZVwiIHN0eWxlPVwicGFkZGluZzogMzJweDsgYmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLC4wNCk7IGJvcmRlcjogMXB4IGRhc2hlZCByZ2JhKDAsMCwwLC4xNik7XCI+XG4gIC8vICAgICBBbGwgYnVzaW5lc3MgcGVydGFpbmluZyB0byBjb3VydCwgY2FzZXMsIHJlY29yZHMsIGZpbGluZ3MsIGZlZXMsIHRyYWZmaWMgdmlvbGF0aW9ucywganVyeSBkdXR5LCBldGMuLCBzaG91bGQgYmUgcmVmZXJyZWQgdG8gdGhlIGNvdW50eSBjb3VydGhvdXNlIGluIHdoaWNoIHRoZSBtYXR0ZXIgaXMgZmlsZWQgb3Igb2NjdXJyZWQuXG4gIC8vICAgPC9kaXY+XG4gIC8vICAgPGRpdiBjbGFzcz1cInpvbmVcIiBzdHlsZT1cInBhZGRpbmc6IDMycHg7IGJhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwuMDQpOyBib3JkZXI6IDFweCBkYXNoZWQgcmdiYSgwLDAsMCwuMTYpO1wiPlxuICAvLyAgICAgQWxsIGJ1c2luZXNzIHBlcnRhaW5pbmcgdG8gY291cnQsIGNhc2VzLCByZWNvcmRzLCBmaWxpbmdzLCBmZWVzLCB0cmFmZmljIHZpb2xhdGlvbnMsIGp1cnkgZHV0eSwgZXRjLiwgc2hvdWxkIGJlIHJlZmVycmVkIHRvIHRoZSBjb3VudHkgY291cnRob3VzZSBpbiB3aGljaCB0aGUgbWF0dGVyIGlzIGZpbGVkIG9yIG9jY3VycmVkLlxuICAvLyAgIDwvZGl2PlxuICAvLyA8L2Rpdj5cbiAgLy9cbiAgLy8gU3R5bGVndWlkZSBMYXlvdXRzIC0gWm9uZXMgLSAyIFpvbmVzXG5cbiAgJltkYXRhLWNvbHVtbnM9JzInXSB7XG4gICAgLnpvbmUge1xuICAgICAgQGluY2x1ZGUgbWVkaWEoJz49ZGVza3RvcCcpIHtcbiAgICAgICAgd2lkdGg6IHBlcmNlbnRhZ2UoMzAzLzEyODApO1xuICAgICAgfVxuICAgIH1cbiAgICAuem9uZTpmaXJzdC1jaGlsZCB7XG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPj1kZXNrdG9wJykge1xuICAgICAgICB3aWR0aDogcGVyY2VudGFnZSg4NDYvMTI4MCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cblxuICAvLyAyIFpvbmVzIChSZXZlcnNlKVxuICAvL1xuICAvLyBNYXJrdXA6XG4gIC8vIDxkaXYgY2xhc3M9XCJ6b25lc1wiIGRhdGEtY29sdW1ucz1cIjJcIiBkYXRhLWxheW91dC1yZXZlcnNlPlxuICAvLyAgIDxkaXYgY2xhc3M9XCJ6b25lXCIgc3R5bGU9XCJwYWRkaW5nOiAzMnB4OyBiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsLjA0KTsgYm9yZGVyOiAxcHggZGFzaGVkIHJnYmEoMCwwLDAsLjE2KTtcIj5cbiAgLy8gICAgIEFsbCBidXNpbmVzcyBwZXJ0YWluaW5nIHRvIGNvdXJ0LCBjYXNlcywgcmVjb3JkcywgZmlsaW5ncywgZmVlcywgdHJhZmZpYyB2aW9sYXRpb25zLCBqdXJ5IGR1dHksIGV0Yy4sIHNob3VsZCBiZSByZWZlcnJlZCB0byB0aGUgY291bnR5IGNvdXJ0aG91c2UgaW4gd2hpY2ggdGhlIG1hdHRlciBpcyBmaWxlZCBvciBvY2N1cnJlZC5cbiAgLy8gICA8L2Rpdj5cbiAgLy8gICA8ZGl2IGNsYXNzPVwiem9uZVwiIHN0eWxlPVwicGFkZGluZzogMzJweDsgYmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLC4wNCk7IGJvcmRlcjogMXB4IGRhc2hlZCByZ2JhKDAsMCwwLC4xNik7XCI+XG4gIC8vICAgICBBbGwgYnVzaW5lc3MgcGVydGFpbmluZyB0byBjb3VydCwgY2FzZXMsIHJlY29yZHMsIGZpbGluZ3MsIGZlZXMsIHRyYWZmaWMgdmlvbGF0aW9ucywganVyeSBkdXR5LCBldGMuLCBzaG91bGQgYmUgcmVmZXJyZWQgdG8gdGhlIGNvdW50eSBjb3VydGhvdXNlIGluIHdoaWNoIHRoZSBtYXR0ZXIgaXMgZmlsZWQgb3Igb2NjdXJyZWQuXG4gIC8vICAgPC9kaXY+XG4gIC8vIDwvZGl2PlxuICAvL1xuICAvLyBTdHlsZWd1aWRlIExheW91dHMgLSBab25lcyAtIDIgWm9uZXMgKFJldmVyc2UpXG5cbiAgJltkYXRhLWNvbHVtbnM9JzInXVtkYXRhLWxheW91dC1yZXZlcnNlXSB7XG4gICAgLnpvbmUge1xuICAgICAgQGluY2x1ZGUgbWVkaWEoJz49ZGVza3RvcCcpIHtcbiAgICAgICAgd2lkdGg6IHBlcmNlbnRhZ2UoODQ2LzEyODApO1xuICAgICAgfVxuICAgIH1cbiAgICAuem9uZTpmaXJzdC1jaGlsZCB7XG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPj1kZXNrdG9wJykge1xuICAgICAgICB3aWR0aDogcGVyY2VudGFnZSgzMDMvMTI4MCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cblxuICAvLyAzIFpvbmVzXG4gIC8vXG4gIC8vIE1hcmt1cDpcbiAgLy8gPGRpdiBjbGFzcz1cInpvbmVzXCIgZGF0YS1jb2x1bW5zPVwiM1wiPlxuICAvLyAgIDxkaXYgY2xhc3M9XCJ6b25lXCIgc3R5bGU9XCJwYWRkaW5nOiAzMnB4OyBiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsLjA0KTsgYm9yZGVyOiAxcHggZGFzaGVkIHJnYmEoMCwwLDAsLjE2KTtcIj5cbiAgLy8gICAgIEFsbCBidXNpbmVzcyBwZXJ0YWluaW5nIHRvIGNvdXJ0LCBjYXNlcywgcmVjb3JkcywgZmlsaW5ncywgZmVlcywgdHJhZmZpYyB2aW9sYXRpb25zLCBqdXJ5IGR1dHksIGV0Yy4sIHNob3VsZCBiZSByZWZlcnJlZCB0byB0aGUgY291bnR5IGNvdXJ0aG91c2UgaW4gd2hpY2ggdGhlIG1hdHRlciBpcyBmaWxlZCBvciBvY2N1cnJlZC5cbiAgLy8gICA8L2Rpdj5cbiAgLy8gICA8ZGl2IGNsYXNzPVwiem9uZVwiIHN0eWxlPVwicGFkZGluZzogMzJweDsgYmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLC4wNCk7IGJvcmRlcjogMXB4IGRhc2hlZCByZ2JhKDAsMCwwLC4xNik7XCI+XG4gIC8vICAgICBBbGwgYnVzaW5lc3MgcGVydGFpbmluZyB0byBjb3VydCwgY2FzZXMsIHJlY29yZHMsIGZpbGluZ3MsIGZlZXMsIHRyYWZmaWMgdmlvbGF0aW9ucywganVyeSBkdXR5LCBldGMuLCBzaG91bGQgYmUgcmVmZXJyZWQgdG8gdGhlIGNvdW50eSBjb3VydGhvdXNlIGluIHdoaWNoIHRoZSBtYXR0ZXIgaXMgZmlsZWQgb3Igb2NjdXJyZWQuXG4gIC8vICAgPC9kaXY+XG4gIC8vICAgPGRpdiBjbGFzcz1cInpvbmVcIiBzdHlsZT1cInBhZGRpbmc6IDMycHg7IGJhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwuMDQpOyBib3JkZXI6IDFweCBkYXNoZWQgcmdiYSgwLDAsMCwuMTYpO1wiPlxuICAvLyAgICAgQWxsIGJ1c2luZXNzIHBlcnRhaW5pbmcgdG8gY291cnQsIGNhc2VzLCByZWNvcmRzLCBmaWxpbmdzLCBmZWVzLCB0cmFmZmljIHZpb2xhdGlvbnMsIGp1cnkgZHV0eSwgZXRjLiwgc2hvdWxkIGJlIHJlZmVycmVkIHRvIHRoZSBjb3VudHkgY291cnRob3VzZSBpbiB3aGljaCB0aGUgbWF0dGVyIGlzIGZpbGVkIG9yIG9jY3VycmVkLlxuICAvLyAgIDwvZGl2PlxuICAvLyA8L2Rpdj5cbiAgLy9cbiAgLy8gU3R5bGVndWlkZSBMYXlvdXRzIC0gWm9uZXMgLSAzIFpvbmVzXG5cbiAgJltkYXRhLWNvbHVtbnM9JzMnXSB7XG4gICAgLnpvbmUge1xuICAgICAgQGluY2x1ZGUgbWVkaWEoJz49ZGVza3RvcCcpIHtcbiAgICAgICAgd2lkdGg6IHBlcmNlbnRhZ2UoMjAwLzEyODApO1xuICAgICAgICBvcmRlcjogMTtcbiAgICAgIH1cbiAgICB9XG4gICAgLnpvbmU6Zmlyc3QtY2hpbGQge1xuICAgICAgQGluY2x1ZGUgbWVkaWEoJz49ZGVza3RvcCcpIHtcbiAgICAgICAgd2lkdGg6IHBlcmNlbnRhZ2UoNjMwLzEyODApO1xuICAgICAgICBvcmRlcjogMjtcbiAgICAgIH1cblxuICAgICAgLy8gYWRqYWNlbnQgem9uZVxuICAgICAgKyAuem9uZSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAzMnB4O1xuICAgICAgICBib3JkZXItdG9wOiAycHggc29saWQgY29sb3IocHJpbWFyeSwgYmxhY2spO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICAgICAgICBwYWRkaW5nLXRvcDogNDhweDtcbiAgICAgICAgfVxuXG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJz49ZGVza3RvcCcpIHtcbiAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgICAgICBib3JkZXItdG9wOiAwO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIGJhbmRzXG4gICAgICAuYmFuZCB7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICAgICAgICBwYWRkaW5nOiA2NHB4IDAgMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEZpcnN0IGJhbmRcbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIE9ubHkgY2hpbGRcbiAgICAgICAgJjpvbmx5LWNoaWxkIHtcbiAgICAgICAgICBAaW5jbHVkZSBtZWRpYSgnPj1sYXB0b3AnKSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDAgNjRweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLnpvbmU6bGFzdC1jaGlsZCB7XG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPj1kZXNrdG9wJykge1xuICAgICAgICBvcmRlcjogMztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuXG4gIC8vIDMgWm9uZXMgKENvbXBhY3QpXG4gIC8vXG4gIC8vIE1hcmt1cDpcbiAgLy8gPGRpdiBjbGFzcz1cInpvbmVzXCIgZGF0YS1jb2x1bW5zPVwiM1wiIGRhdGEtbGF5b3V0LWNvbXBhY3Q+XG4gIC8vICAgPGRpdiBjbGFzcz1cInpvbmVcIiBzdHlsZT1cInBhZGRpbmc6IDMycHg7IGJhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwuMDQpOyBib3JkZXI6IDFweCBkYXNoZWQgcmdiYSgwLDAsMCwuMTYpO1wiPlxuICAvLyAgICAgQWxsIGJ1c2luZXNzIHBlcnRhaW5pbmcgdG8gY291cnQsIGNhc2VzLCByZWNvcmRzLCBmaWxpbmdzLCBmZWVzLCB0cmFmZmljIHZpb2xhdGlvbnMsIGp1cnkgZHV0eSwgZXRjLiwgc2hvdWxkIGJlIHJlZmVycmVkIHRvIHRoZSBjb3VudHkgY291cnRob3VzZSBpbiB3aGljaCB0aGUgbWF0dGVyIGlzIGZpbGVkIG9yIG9jY3VycmVkLlxuICAvLyAgIDwvZGl2PlxuICAvLyAgIDxkaXYgY2xhc3M9XCJ6b25lXCIgc3R5bGU9XCJwYWRkaW5nOiAzMnB4OyBiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsLjA0KTsgYm9yZGVyOiAxcHggZGFzaGVkIHJnYmEoMCwwLDAsLjE2KTtcIj5cbiAgLy8gICAgIEFsbCBidXNpbmVzcyBwZXJ0YWluaW5nIHRvIGNvdXJ0LCBjYXNlcywgcmVjb3JkcywgZmlsaW5ncywgZmVlcywgdHJhZmZpYyB2aW9sYXRpb25zLCBqdXJ5IGR1dHksIGV0Yy4sIHNob3VsZCBiZSByZWZlcnJlZCB0byB0aGUgY291bnR5IGNvdXJ0aG91c2UgaW4gd2hpY2ggdGhlIG1hdHRlciBpcyBmaWxlZCBvciBvY2N1cnJlZC5cbiAgLy8gICA8L2Rpdj5cbiAgLy8gICA8ZGl2IGNsYXNzPVwiem9uZVwiIHN0eWxlPVwicGFkZGluZzogMzJweDsgYmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLC4wNCk7IGJvcmRlcjogMXB4IGRhc2hlZCByZ2JhKDAsMCwwLC4xNik7XCI+XG4gIC8vICAgICBBbGwgYnVzaW5lc3MgcGVydGFpbmluZyB0byBjb3VydCwgY2FzZXMsIHJlY29yZHMsIGZpbGluZ3MsIGZlZXMsIHRyYWZmaWMgdmlvbGF0aW9ucywganVyeSBkdXR5LCBldGMuLCBzaG91bGQgYmUgcmVmZXJyZWQgdG8gdGhlIGNvdW50eSBjb3VydGhvdXNlIGluIHdoaWNoIHRoZSBtYXR0ZXIgaXMgZmlsZWQgb3Igb2NjdXJyZWQuXG4gIC8vICAgPC9kaXY+XG4gIC8vIDwvZGl2PlxuICAvL1xuICAvLyBTdHlsZWd1aWRlIExheW91dHMgLSBab25lcyAtIDMgWm9uZXMgKENvbXBhY3QpXG5cbiAgJltkYXRhLWNvbHVtbnM9JzMnXVtkYXRhLWxheW91dC1jb21wYWN0XSB7XG4gICAgLnpvbmUge1xuICAgICAgQGluY2x1ZGUgbWVkaWEoJz49ZGVza3RvcCcpIHtcbiAgICAgICAgd2lkdGg6IHBlcmNlbnRhZ2UoMjU1LzEyODApO1xuICAgICAgICBvcmRlcjogMTtcbiAgICAgIH1cbiAgICB9XG4gICAgLnpvbmU6Zmlyc3QtY2hpbGQge1xuICAgICAgQGluY2x1ZGUgbWVkaWEoJz49ZGVza3RvcCcpIHtcbiAgICAgICAgd2lkdGg6IHBlcmNlbnRhZ2UoNjMwLzEyODApO1xuICAgICAgICBvcmRlcjogMjtcbiAgICAgIH1cbiAgICB9XG4gICAgLnpvbmU6bGFzdC1jaGlsZCB7XG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPj1kZXNrdG9wJykge1xuICAgICAgICBvcmRlcjogMztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmW2RhdGEtY29sdW1ucz0nMyddW2RhdGEtbGF5b3V0LXBlb3BsZV0ge1xuICAgID4gLndyYXBwZXIge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPj1kZXNrdG9wJykge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICB9XG4gICAgfVxuICAgIC56b25lOmZpcnN0LWNoaWxkICsgLnpvbmUge1xuICAgICAgb3JkZXI6IDM7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PWRlc2t0b3AnKSB7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBvcmRlcjogMVxuICAgICAgfVxuICAgIH1cbiAgICAuem9uZTpmaXJzdC1jaGlsZCB7XG4gICAgICBvcmRlcjogMjtcbiAgICAgIG1hcmdpbi10b3A6IDMycHg7XG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPj1kZXNrdG9wJykge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgfVxuICAgIH1cbiAgICAuem9uZTpsYXN0LWNoaWxkIHtcbiAgICAgIG9yZGVyOiAxO1xuICAgICAgQGluY2x1ZGUgbWVkaWEoJz49ZGVza3RvcCcpIHtcbiAgICAgICAgb3JkZXI6IDNcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gMSBab25lXG4vL1xuLy8gTWFya3VwOlxuLy8gPGRpdiBjbGFzcz1cInpvbmVzXCI+XG4vLyAgIDxkaXYgY2xhc3M9XCJ6b25lXCIgc3R5bGU9XCJwYWRkaW5nOiAzMnB4OyBiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsLjA0KTsgYm9yZGVyOiAxcHggZGFzaGVkIHJnYmEoMCwwLDAsLjE2KTtcIj5cbi8vICAgICBBbGwgYnVzaW5lc3MgcGVydGFpbmluZyB0byBjb3VydCwgY2FzZXMsIHJlY29yZHMsIGZpbGluZ3MsIGZlZXMsIHRyYWZmaWMgdmlvbGF0aW9ucywganVyeSBkdXR5LCBldGMuLCBzaG91bGQgYmUgcmVmZXJyZWQgdG8gdGhlIGNvdW50eSBjb3VydGhvdXNlIGluIHdoaWNoIHRoZSBtYXR0ZXIgaXMgZmlsZWQgb3Igb2NjdXJyZWQuXG4vLyAgIDwvZGl2PlxuLy8gPC9kaXY+XG4vL1xuLy8gU3R5bGVndWlkZSBMYXlvdXRzIC0gWm9uZXMgLSAxIFpvbmVcblxuLnpvbmUge1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLXRvcDogMzJweDtcblxuICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgbWFyZ2luLXRvcDogNDhweDtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICBtYXJnaW4tdG9wOiA2NHB4O1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEoJz49ZGVza3RvcCcpIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG5cbiAgLy8gb3B0aW9uYWwgem9uZSB0aXRsZSBmb3Igc2NyZWVuIHJlYWRlcnNcbiAgJl9fdGl0bGUge1xuICAgIEBleHRlbmQgJWhpZGUtb2ZmLXNjcmVlbjtcbiAgfVxuXG4gIC8vIGZpcnN0IHpvbmVcbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxuXG59XG4iLCIvLyBCYW5kc1xuLy9cbi8vIEN1c3RvbWl6YWJsZSBzZWN0aW9ucyBvZiBjb250ZW50LiBUbyBhbGxvdyBmb3Igc2VtYW50aWNzLCBiYW5kcyBjYW4gYmUgc3RydWN0dXJlZCBhczogPGNvZGU+c2VjdGlvbjwvY29kZT4gKHJlY29tbWVuZGVkKSwgPGNvZGU+YXNpZGU8L2NvZGU+LCBvciA8Y29kZT5kaXY8L2NvZGU+LlxuLy9cbi8vIFN0eWxlZ3VpZGUgTGF5b3V0cyAtIEJhbmRzXG5cbi5iYW5kIHtcbiAgcGFkZGluZzogMzJweCAwIDA7XG5cbiAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgIHBhZGRpbmc6IDY0cHggMCAwO1xuICB9XG4gIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICBwYWRkaW5nOiAxMjhweCAwIDA7XG4gIH1cblxuXG4gIC8vIEZpcnN0IGJhbmRcbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG5cbiAgLy8gT25seSBjaGlsZFxuICAmOm9ubHktY2hpbGQge1xuICAgIHBhZGRpbmc6IDAgMCAzMnB4O1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgICAgcGFkZGluZzogMCAwIDY0cHg7XG4gICAgfVxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICAgIHBhZGRpbmc6IDAgMCAxMjhweDtcbiAgICB9XG4gIH1cblxuXG4gIC8vIEJhbmQgdGl0bGVzXG4gICZfX3RpdGxlIHtcbiAgICBAZXh0ZW5kIC5oMjtcbiAgICBAZXh0ZW5kIC50aXRsZS0tc2Vjb25kYXJ5O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cblxuXG4gIC8vIEJhbmQgZm9vdG5vdGVzXG4gIC8vXG4gIC8vIEJhbmRzIGNhbiBkaXNwbGF5IGFuIG9wdGlvbmFsIGZvb3Rub3RlLlxuICAvL1xuICAvLyBNYXJrdXA6XG4gIC8vIDxzZWN0aW9uIGNsYXNzPVwiYmFuZFwiIGRhdGEtdGhlbWU9XCJvZmYtd2hpdGVcIj5cbiAgLy8gICA8ZGl2IGNsYXNzPVwid3JhcHBlclwiPlxuICAvLyAgICAgPGgzIGNsYXNzPVwiYmFuZF9fdGl0bGVcIj5CYW5kIFRpdGxlPC9oMz5cbiAgLy8gICAgIDxkaXYgY2xhc3M9XCJiYW5kX19wYXJ0c1wiPlxuICAvLyAgICAgICA8ZGl2IGNsYXNzPVwiYmFuZF9fcGFydFwiIHN0eWxlPVwiYmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLC4wNCk7IGJvcmRlcjogMXB4IGRhc2hlZCByZ2JhKDAsMCwwLC4xNik7XCI+XG4gIC8vICAgICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQsIGNvbnNlY3RldHVyIGFkaXBpc2NpbmcgZWxpdC4gRG9uZWMgZXUgc2VtIGJsYW5kaXQsIHVsdHJpY2VzIHF1YW0gdmVsLCBtYXhpbXVzIGlwc3VtLiBOdWxsYSBpcHN1bSBhcmN1LCBsYWNpbmlhIHZpdGFlIGZpbmlidXMgYXQsIHVsdHJpY2llcyB2aXRhZSB0dXJwaXMuIERvbmVjIGV1IHBvcnRhIHJpc3VzLiBWZXN0aWJ1bHVtIHRyaXN0aXF1ZSBtb2xsaXMgZHVpIHV0IGVsZWlmZW5kLiBBbGlxdWFtIGJpYmVuZHVtIGRpZ25pc3NpbSBwZWxsZW50ZXNxdWUuPC9wPlxuICAvLyAgICAgICA8L2Rpdj5cbiAgLy8gICAgIDwvZGl2PlxuICAvLyAgICAgPGZvb3RlciBjbGFzcz1cImJhbmRfX2Zvb3Rub3RlXCI+XG4gIC8vICAgICAgIDxzbWFsbD5cbiAgLy8gICAgICAgVGhlc2UgZmlsZXMgbWF5IG5vdCBiZSBzdWl0YWJsZSBmb3IgdXNlcnMgb2YgYXNzaXN0aXZlIHRlY2hub2xvZ3kuIElmIHlvdSBhcmUgaGF2aW5nIHRyb3VibGUgYWNjZXNzaW5nIHRoZXNlIGZpbGVzLCB5b3UgbWF5IDxhIGhyZWY9XCIvY29udGFjdC10ZWNobmljYWwtc3VwcG9ydD93aGF0K2lzK3RoZStpc3N1ZSthYm91dD1SZXF1ZXN0K2FjY2Vzc2libGUrZmlsZVwiPnJlcXVlc3QgYW4gYWNjZXNzaWJsZSBmb3JtYXQuPC9hPlxuICAvLyAgICAgICA8L3NtYWxsPlxuICAvLyAgICAgPC9mb290ZXI+XG4gIC8vICAgPC9kaXY+XG4gIC8vIDwvc2VjdGlvbj5cbiAgLy9cbiAgLy8gU3R5bGVndWlkZSBMYXlvdXRzIC0gQmFuZHMgLSBCYW5kIEZvb3Rub3Rlc1xuICAmX19mb290bm90ZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHRyYW5zcGFyZW50aXplKGNvbG9yKHByaW1hcnksIGdyYXkpLCAwLjgpO1xuICAgIGNvbG9yOiBjb2xvcihwcmltYXJ5LCBncmF5KTtcbiAgICBtYXJnaW4tdG9wOiAxNnB4O1xuICAgIHBhZGRpbmctdG9wOiAxNnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgICBtYXJnaW4tdG9wOiAyNHB4O1xuICAgICAgcGFkZGluZy10b3A6IDI0cHg7XG4gICAgfVxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICAgIG1hcmdpbi10b3A6IDMycHg7XG4gICAgICBwYWRkaW5nLXRvcDogMzJweDtcbiAgICB9XG4gIH1cblxuXG4gIC8vIEJhbmQgVGhlbWVzXG4gIC8vXG4gIC8vIEJhbmQgdGhlbWVzIGFsbG93cyBmb3IgYmFja2dyb3VuZCBjdXN0b21pemF0aW9uIGJ5IHVzaW5nIHRoZSA8Y29kZT5kYXRhLXRoZW1lPC9jb2RlPiBtb2RpZmllci5cbiAgLy9cbiAgLy8gTWFya3VwOlxuICAvLyA8c2VjdGlvbiBjbGFzcz1cImJhbmRcIiBkYXRhLXBhZGRpbmc9XCJsZ1wiIGRhdGEtdGhlbWU9XCJ7e21vZGlmaWVyX2NsYXNzfX1cIj5cbiAgLy8gICA8ZGl2IGNsYXNzPVwid3JhcHBlclwiPlxuICAvLyAgICAgPGgzIGNsYXNzPVwiYmFuZF9fdGl0bGVcIj5CYW5kIHRpdGxlPC9oMz5cbiAgLy8gICAgIDxkaXYgY2xhc3M9XCJiYW5kX19wYXJ0c1wiPlxuICAvLyAgICAgICA8ZGl2IGNsYXNzPVwiYmFuZF9fcGFydFwiPlxuICAvLyAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0LCBjb25zZWN0ZXR1ciBhZGlwaXNjaW5nIGVsaXQuIERvbmVjIGV1IHNlbSBibGFuZGl0LCB1bHRyaWNlcyBxdWFtIHZlbCwgbWF4aW11cyBpcHN1bS4gTnVsbGEgaXBzdW0gYXJjdSwgbGFjaW5pYSB2aXRhZSBmaW5pYnVzIGF0LCB1bHRyaWNpZXMgdml0YWUgdHVycGlzLiBEb25lYyBldSBwb3J0YSByaXN1cy4gVmVzdGlidWx1bSB0cmlzdGlxdWUgbW9sbGlzIGR1aSB1dCBlbGVpZmVuZC4gQWxpcXVhbSBiaWJlbmR1bSBkaWduaXNzaW0gcGVsbGVudGVzcXVlLjwvcD5cbiAgLy8gICAgICAgPC9kaXY+XG4gIC8vICAgICA8L2Rpdj5cbiAgLy8gICA8L2Rpdj5cbiAgLy8gPC9zZWN0aW9uPlxuICAvL1xuICAvLyBvZmYtd2hpdGUgICAgLSBPZmYtV2hpdGUgVGhlbWVcbiAgLy9cbiAgLy8gU3R5bGVndWlkZSBMYXlvdXRzIC0gQmFuZHMgLSBCYW5kIFRoZW1lc1xuXG4gICZbZGF0YS10aGVtZT0nb2ZmLXdoaXRlJ10ge1xuICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKHByaW1hcnksIG9mZi13aGl0ZSk7XG5cbiAgICAubWV0YSB7XG4gICAgICBjb2xvcjogY29sb3IocHJpbWFyeSwgYmxhY2spO1xuICAgIH1cbiAgfVxuXG5cbiAgLy8gQmFuZCBDb2x1bW5zXG4gIC8vXG4gIC8vIEJhbmRzIGNhbiBkaXNwbGF5IGl0cyBjb250ZW50IGluIGEgbnVtYmVyIG9mIGRpZmZlcmVudCBsYXlvdXRzIHVzaW5nIHRoZSA8Y29kZT5kYXRhLWNvbHVtbnM8L2NvZGU+IG1vZGlmaWVyLkJhbmRzIG11c3QgdXNlIDxjb2RlPmJhbmRfX3BhcnRzPC9jb2RlPiBjbGFzcyB0byB3cmFwIGFsbCBjb250ZW50IHRoYXQgd2lsbCBiZSBicm9rZW4gaW50byBjb2x1bW5zLiBFYWNoIGNvbHVtbiBibG9jayBtdXN0IHVzZSB0aGUgPGNvZGU+YmFuZF9fcGFydDwvY29kZT4gY2xhc3MuXG4gIC8vXG4gIC8vIE1hcmt1cDpcbiAgLy8gPHNlY3Rpb24gY2xhc3M9XCJiYW5kXCIgZGF0YS1jb2x1bW5zPVwie3ttb2RpZmllcl9jbGFzc319XCIgZGF0YS1wYWRkaW5nPVwibGdcIiBkYXRhLXRoZW1lPVwib2ZmLXdoaXRlXCI+XG4gIC8vICAgPGRpdiBjbGFzcz1cIndyYXBwZXJcIj5cbiAgLy8gICAgIDxoMyBjbGFzcz1cImJhbmRfX3RpdGxlXCI+QmFuZCBUaXRsZTwvaDM+XG4gIC8vICAgICA8ZGl2IGNsYXNzPVwiYmFuZF9fcGFydHNcIj5cbiAgLy8gICAgICAgPGRpdiBjbGFzcz1cImJhbmRfX3BhcnRcIiBzdHlsZT1cImJhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwuMDQpOyBib3JkZXI6IDFweCBkYXNoZWQgcmdiYSgwLDAsMCwuMTYpO1wiPlxuICAvLyAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0LCBjb25zZWN0ZXR1ciBhZGlwaXNjaW5nIGVsaXQuIERvbmVjIGV1IHNlbSBibGFuZGl0LCB1bHRyaWNlcyBxdWFtIHZlbCwgbWF4aW11cyBpcHN1bS4gTnVsbGEgaXBzdW0gYXJjdSwgbGFjaW5pYSB2aXRhZSBmaW5pYnVzIGF0LCB1bHRyaWNpZXMgdml0YWUgdHVycGlzLiBEb25lYyBldSBwb3J0YSByaXN1cy4gVmVzdGlidWx1bSB0cmlzdGlxdWUgbW9sbGlzIGR1aSB1dCBlbGVpZmVuZC4gQWxpcXVhbSBiaWJlbmR1bSBkaWduaXNzaW0gcGVsbGVudGVzcXVlLjwvcD5cbiAgLy8gICAgICAgPC9kaXY+XG4gIC8vICAgICAgIDxkaXYgY2xhc3M9XCJiYW5kX19wYXJ0XCIgc3R5bGU9XCJiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsLjA0KTsgYm9yZGVyOiAxcHggZGFzaGVkIHJnYmEoMCwwLDAsLjE2KTtcIj5cbiAgLy8gICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldCwgY29uc2VjdGV0dXIgYWRpcGlzY2luZyBlbGl0LiBEb25lYyBldSBzZW0gYmxhbmRpdCwgdWx0cmljZXMgcXVhbSB2ZWwsIG1heGltdXMgaXBzdW0uIE51bGxhIGlwc3VtIGFyY3UsIGxhY2luaWEgdml0YWUgZmluaWJ1cyBhdCwgdWx0cmljaWVzIHZpdGFlIHR1cnBpcy4gRG9uZWMgZXUgcG9ydGEgcmlzdXMuIFZlc3RpYnVsdW0gdHJpc3RpcXVlIG1vbGxpcyBkdWkgdXQgZWxlaWZlbmQuIEFsaXF1YW0gYmliZW5kdW0gZGlnbmlzc2ltIHBlbGxlbnRlc3F1ZS48L3A+XG4gIC8vICAgICAgIDwvZGl2PlxuICAvLyAgICAgICA8ZGl2IGNsYXNzPVwiYmFuZF9fcGFydFwiIHN0eWxlPVwiYmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLC4wNCk7IGJvcmRlcjogMXB4IGRhc2hlZCByZ2JhKDAsMCwwLC4xNik7XCI+XG4gIC8vICAgICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQsIGNvbnNlY3RldHVyIGFkaXBpc2NpbmcgZWxpdC4gRG9uZWMgZXUgc2VtIGJsYW5kaXQsIHVsdHJpY2VzIHF1YW0gdmVsLCBtYXhpbXVzIGlwc3VtLiBOdWxsYSBpcHN1bSBhcmN1LCBsYWNpbmlhIHZpdGFlIGZpbmlidXMgYXQsIHVsdHJpY2llcyB2aXRhZSB0dXJwaXMuIERvbmVjIGV1IHBvcnRhIHJpc3VzLiBWZXN0aWJ1bHVtIHRyaXN0aXF1ZSBtb2xsaXMgZHVpIHV0IGVsZWlmZW5kLiBBbGlxdWFtIGJpYmVuZHVtIGRpZ25pc3NpbSBwZWxsZW50ZXNxdWUuPC9wPlxuICAvLyAgICAgICA8L2Rpdj5cbiAgLy8gICAgICAgPGRpdiBjbGFzcz1cImJhbmRfX3BhcnRcIiBzdHlsZT1cImJhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwuMDQpOyBib3JkZXI6IDFweCBkYXNoZWQgcmdiYSgwLDAsMCwuMTYpO1wiPlxuICAvLyAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0LCBjb25zZWN0ZXR1ciBhZGlwaXNjaW5nIGVsaXQuIERvbmVjIGV1IHNlbSBibGFuZGl0LCB1bHRyaWNlcyBxdWFtIHZlbCwgbWF4aW11cyBpcHN1bS4gTnVsbGEgaXBzdW0gYXJjdSwgbGFjaW5pYSB2aXRhZSBmaW5pYnVzIGF0LCB1bHRyaWNpZXMgdml0YWUgdHVycGlzLiBEb25lYyBldSBwb3J0YSByaXN1cy4gVmVzdGlidWx1bSB0cmlzdGlxdWUgbW9sbGlzIGR1aSB1dCBlbGVpZmVuZC4gQWxpcXVhbSBiaWJlbmR1bSBkaWduaXNzaW0gcGVsbGVudGVzcXVlLjwvcD5cbiAgLy8gICAgICAgPC9kaXY+XG4gIC8vICAgICA8L2Rpdj5cbiAgLy8gICA8L2Rpdj5cbiAgLy8gPC9zZWN0aW9uPlxuICAvL1xuICAvLyAyICAgIC0gMiBDb2x1bW5zXG4gIC8vIDMgICAgLSAzIENvbHVtbnNcbiAgLy8gNCAgICAtIDQgQ29sdW1uc1xuICAvL1xuICAvLyBTdHlsZWd1aWRlIExheW91dHMgLSBCYW5kcyAtIEJhbmQgQ29sdW1uc1xuXG4gICZfX3BhcnRzIHtcbiAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgIH1cbiAgfVxuXG4gICZfX3BhcnQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi10b3A6IDMycHg7XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgICBtYXJnaW4tdG9wOiA0OHB4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICAgIG1hcmdpbi10b3A6IDY0cHg7XG4gICAgfVxuXG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cblxuICAgIC8vIHJlbW92ZSBtYXJnaW4gb24gZmlyc3QgZWxlbWVudFxuICAgID4gKjpmaXJzdC1jaGlsZCB7IG1hcmdpbi10b3A6IDA7IH1cblxuICAgIC8vIHJlbW92ZSBtYXJnaW4gb24gbGFzdCBlbGVtZW50XG4gICAgPiAqOmxhc3QtY2hpbGQgeyBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIH1cblxuICAmW2RhdGEtY29sdW1ucz0nMiddIHtcblxuICAgIC5iYW5kX19wYXJ0IHtcblxuICAgICAgLy8gZGVmYXVsdCBwYXJ0XG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgICAgIHdpZHRoOiBwZXJjZW50YWdlKDMwMC82MjQpO1xuICAgICAgICBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgyNC82MjQpO1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPj1sYXB0b3AnKSB7XG4gICAgICAgIHdpZHRoOiBwZXJjZW50YWdlKDYzMC8xMjgwKTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IHBlcmNlbnRhZ2UoMjAvMTI4MCk7XG4gICAgICB9XG5cbiAgICAgIC8vIGZpcnN0IHBhcnQgaW4gZWFjaCByb3dcbiAgICAgICY6bnRoLWNoaWxkKG9kZCkge1xuICAgICAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gZmlyc3QgYW5kIHNlY29uZCBpdGVtcyBvZiBncm91cFxuICAgICAgJjpudGgtY2hpbGQoMSksXG4gICAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gIH1cblxuICAmW2RhdGEtY29sdW1ucz0nMyddIHtcblxuICAgIC5iYW5kX19wYXJ0IHtcblxuICAgICAgLy8gZGVmYXVsdCBwYXJ0XG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgICAgIHdpZHRoOiBwZXJjZW50YWdlKDMwMC82MjQpO1xuICAgICAgICBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgyNC82MjQpO1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPj1sYXB0b3AnKSB7XG4gICAgICAgIHdpZHRoOiBwZXJjZW50YWdlKDQxMi8xMjgwKTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IHBlcmNlbnRhZ2UoMjIvMTI4MCk7XG4gICAgICB9XG5cbiAgICAgIC8vIGV2ZXJ5IDNyZCBpdGVtLCBzdGFydGluZyB3aXRoIHRoZSBmaXJzdCBlbGVtZW50ICh0YWJsZXQpXG4gICAgICAmOm50aC1jaGlsZCgzbi0yKSB7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICAgICAgICB3aWR0aDogcGVyY2VudGFnZSg0MTIvMTI4MCk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gZXZlcnkgM3JkIGl0ZW0sIHN0YXJ0aW5nIHdpdGggdGhlIHNlY29uZCBlbGVtZW50ICh0YWJsZXQpXG4gICAgICAmOm50aC1jaGlsZCgzbi0xKSB7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgyMi8xMjgwKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBmaXJzdCByb3cgKGxhcHRvcClcbiAgICAgICY6bnRoLWNoaWxkKDEpLFxuICAgICAgJjpudGgtY2hpbGQoMiksXG4gICAgICAmOm50aC1jaGlsZCgzKSB7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gICZbZGF0YS1jb2x1bW5zPSc0J10ge1xuXG4gICAgLmJhbmRfX3BhcnQge1xuXG4gICAgICAvLyBkZWZhdWx0IHBhcnRcbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICAgICAgd2lkdGg6IHBlcmNlbnRhZ2UoMzAwLzYyNCk7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBwZXJjZW50YWdlKDI0LzYyNCk7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICAgICAgd2lkdGg6IHBlcmNlbnRhZ2UoMzAzLzEyODApO1xuICAgICAgICBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgoNjgvMykgLzEyODApO1xuICAgICAgfVxuXG4gICAgICAvLyBmaXJzdCBwYXJ0IGluIGVhY2ggcm93ICh0YWJsZXQpXG4gICAgICAmOm50aC1jaGlsZChvZGQpIHtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJz49bGFwdG9wJykge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiBwZXJjZW50YWdlKCg2OC8zKSAvMTI4MCk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gZmlyc3QgcGFydCBpbiBlYWNoIHJvdyAobGFwdG9wKVxuICAgICAgJjpudGgtY2hpbGQoNG4tMykge1xuICAgICAgICBAaW5jbHVkZSBtZWRpYSgnPj1sYXB0b3AnKSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gZmlyc3QgYW5kIHNlY29uZCBpdGVtcyBvZiBncm91cFxuICAgICAgJjpudGgtY2hpbGQoMSksXG4gICAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIHRoaXJkIGFuZCBmb3VydGggaXRlbXMgb2YgZ3JvdXAgKGxhcHRvcClcbiAgICAgICY6bnRoLWNoaWxkKDMpLFxuICAgICAgJjpudGgtY2hpbGQoNCkge1xuICAgICAgICBAaW5jbHVkZSBtZWRpYSgnPj1sYXB0b3AnKSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICB9XG5cblxuICAvLyBCYW5kIFRlbnNpb25cbiAgLy9cbiAgLy8gQmFuZHMgY2FuIGJlIGRpc3RyaWJ1dGVkIGluIGFuIG9mZi1iYWxhbmNlZCBtYW5uZXIgdXNpbmcgdGhlIDxjb2RlPmRhdGEtdGVuc2lvbjwvY29kZT4gZGF0YSBhdHRyaWJ1dGUuIFRoZXNlIHRlbnNpb24gc2V0dGluZ3Mgc2hvdWxkIGJlIGFwcGxpZWQgb24gdG9wIG9mIHRoZSA8Y29kZT5kYXRhLWNvbHVtbnM8L2NvZGU+IGRhdGEgYXR0aWJ1dGUuXG4gIC8vXG4gIC8vIE1hcmt1cDpcbiAgLy8gPHNlY3Rpb24gY2xhc3M9XCJiYW5kXCIgZGF0YS1jb2x1bW5zPVwiMlwiIGRhdGEtdGVuc2lvbj1cInt7bW9kaWZpZXJfY2xhc3N9fVwiIGRhdGEtcGFkZGluZz1cImxnXCIgZGF0YS10aGVtZT1cIm9mZi13aGl0ZVwiPlxuICAvLyAgIDxkaXYgY2xhc3M9XCJ3cmFwcGVyXCI+XG4gIC8vICAgICA8aDMgY2xhc3M9XCJiYW5kX190aXRsZVwiPkJhbmQgVGl0bGU8L2gzPlxuICAvLyAgICAgPGRpdiBjbGFzcz1cImJhbmRfX3BhcnRzXCI+XG4gIC8vICAgICAgIDxkaXYgY2xhc3M9XCJiYW5kX19wYXJ0XCIgc3R5bGU9XCJiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsLjA0KTsgYm9yZGVyOiAxcHggZGFzaGVkIHJnYmEoMCwwLDAsLjE2KTtcIj5cbiAgLy8gICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldCwgY29uc2VjdGV0dXIgYWRpcGlzY2luZyBlbGl0LiBEb25lYyBldSBzZW0gYmxhbmRpdCwgdWx0cmljZXMgcXVhbSB2ZWwsIG1heGltdXMgaXBzdW0uIE51bGxhIGlwc3VtIGFyY3UsIGxhY2luaWEgdml0YWUgZmluaWJ1cyBhdCwgdWx0cmljaWVzIHZpdGFlIHR1cnBpcy4gRG9uZWMgZXUgcG9ydGEgcmlzdXMuIFZlc3RpYnVsdW0gdHJpc3RpcXVlIG1vbGxpcyBkdWkgdXQgZWxlaWZlbmQuIEFsaXF1YW0gYmliZW5kdW0gZGlnbmlzc2ltIHBlbGxlbnRlc3F1ZS48L3A+XG4gIC8vICAgICAgIDwvZGl2PlxuICAvLyAgICAgICA8ZGl2IGNsYXNzPVwiYmFuZF9fcGFydFwiIHN0eWxlPVwiYmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLC4wNCk7IGJvcmRlcjogMXB4IGRhc2hlZCByZ2JhKDAsMCwwLC4xNik7XCI+XG4gIC8vICAgICAgICAgPHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQsIGNvbnNlY3RldHVyIGFkaXBpc2NpbmcgZWxpdC4gRG9uZWMgZXUgc2VtIGJsYW5kaXQsIHVsdHJpY2VzIHF1YW0gdmVsLCBtYXhpbXVzIGlwc3VtLiBOdWxsYSBpcHN1bSBhcmN1LCBsYWNpbmlhIHZpdGFlIGZpbmlidXMgYXQsIHVsdHJpY2llcyB2aXRhZSB0dXJwaXMuIERvbmVjIGV1IHBvcnRhIHJpc3VzLiBWZXN0aWJ1bHVtIHRyaXN0aXF1ZSBtb2xsaXMgZHVpIHV0IGVsZWlmZW5kLiBBbGlxdWFtIGJpYmVuZHVtIGRpZ25pc3NpbSBwZWxsZW50ZXNxdWUuPC9wPlxuICAvLyAgICAgICA8L2Rpdj5cbiAgLy8gICAgICAgPGRpdiBjbGFzcz1cImJhbmRfX3BhcnRcIiBzdHlsZT1cImJhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwuMDQpOyBib3JkZXI6IDFweCBkYXNoZWQgcmdiYSgwLDAsMCwuMTYpO1wiPlxuICAvLyAgICAgICAgIDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0LCBjb25zZWN0ZXR1ciBhZGlwaXNjaW5nIGVsaXQuIERvbmVjIGV1IHNlbSBibGFuZGl0LCB1bHRyaWNlcyBxdWFtIHZlbCwgbWF4aW11cyBpcHN1bS4gTnVsbGEgaXBzdW0gYXJjdSwgbGFjaW5pYSB2aXRhZSBmaW5pYnVzIGF0LCB1bHRyaWNpZXMgdml0YWUgdHVycGlzLiBEb25lYyBldSBwb3J0YSByaXN1cy4gVmVzdGlidWx1bSB0cmlzdGlxdWUgbW9sbGlzIGR1aSB1dCBlbGVpZmVuZC4gQWxpcXVhbSBiaWJlbmR1bSBkaWduaXNzaW0gcGVsbGVudGVzcXVlLjwvcD5cbiAgLy8gICAgICAgPC9kaXY+XG4gIC8vICAgICAgIDxkaXYgY2xhc3M9XCJiYW5kX19wYXJ0XCIgc3R5bGU9XCJiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsLjA0KTsgYm9yZGVyOiAxcHggZGFzaGVkIHJnYmEoMCwwLDAsLjE2KTtcIj5cbiAgLy8gICAgICAgICA8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldCwgY29uc2VjdGV0dXIgYWRpcGlzY2luZyBlbGl0LiBEb25lYyBldSBzZW0gYmxhbmRpdCwgdWx0cmljZXMgcXVhbSB2ZWwsIG1heGltdXMgaXBzdW0uIE51bGxhIGlwc3VtIGFyY3UsIGxhY2luaWEgdml0YWUgZmluaWJ1cyBhdCwgdWx0cmljaWVzIHZpdGFlIHR1cnBpcy4gRG9uZWMgZXUgcG9ydGEgcmlzdXMuIFZlc3RpYnVsdW0gdHJpc3RpcXVlIG1vbGxpcyBkdWkgdXQgZWxlaWZlbmQuIEFsaXF1YW0gYmliZW5kdW0gZGlnbmlzc2ltIHBlbGxlbnRlc3F1ZS48L3A+XG4gIC8vICAgICAgIDwvZGl2PlxuICAvLyAgICAgPC9kaXY+XG4gIC8vICAgPC9kaXY+XG4gIC8vIDwvc2VjdGlvbj5cbiAgLy9cbiAgLy8gOC00ICAgICAgLSAyIENvbHVtbnMgKFR3by10aGlyZCwgT25lLXRoaXJkKVxuICAvLyA4LTMgICAgICAtIDIgQ29sdW1ucyAoVHdvLXRoaXJkLCBPbmUtZm91cnRoKVxuICAvL1xuICAvLyBTdHlsZWd1aWRlIExheW91dHMgLSBCYW5kcyAtIEJhbmQgVGVuc2lvblxuXG4gICZbZGF0YS10ZW5zaW9uPSc4LTQnXSB7XG5cbiAgICAvLyBkZWZhdWx0IHBhcnQgKGxhcHRvcClcbiAgICAuYmFuZF9fcGFydCB7XG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPj1sYXB0b3AnKSB7XG4gICAgICAgIHdpZHRoOiBwZXJjZW50YWdlKDQxMC8xMjgwKTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IHBlcmNlbnRhZ2UoMjQvMTI4MCk7XG4gICAgICB9XG5cbiAgICAgIC8vIGZpcnN0IHBhcnQgaW4gZWFjaCByb3cgKGxhcHRvcClcbiAgICAgICY6bnRoLWNoaWxkKG9kZCkge1xuICAgICAgICBAaW5jbHVkZSBtZWRpYSgnPj1sYXB0b3AnKSB7XG4gICAgICAgICAgd2lkdGg6IHBlcmNlbnRhZ2UoODQ1LzEyODApO1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gIH1cblxuICAmW2RhdGEtdGVuc2lvbj0nOC0zJ10ge1xuXG4gICAgLy8gZGVmYXVsdCBwYXJ0IChsYXB0b3ApXG4gICAgLmJhbmRfX3BhcnQge1xuICAgICAgQGluY2x1ZGUgbWVkaWEoJz49bGFwdG9wJykge1xuICAgICAgICB3aWR0aDogcGVyY2VudGFnZSgzMDMvMTI4MCk7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBwZXJjZW50YWdlKDEzMi8xMjgwKTtcbiAgICAgIH1cblxuICAgICAgLy8gZmlyc3QgcGFydCBpbiBlYWNoIHJvdyAobGFwdG9wKVxuICAgICAgJjpudGgtY2hpbGQob2RkKSB7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICAgICAgICB3aWR0aDogcGVyY2VudGFnZSg4NDUvMTI4MCk7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgfVxuXG5cbiAgJi0tc3RyaXBlZCxcbiAgJi0tc3RyaXBlZDpmaXJzdC1jaGlsZCB7XG4gICAgcGFkZGluZy1ib3R0b206IDMycHg7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgY29sb3IocHJpbWFyeSwgd2hpdGUpIDUwJSwgY29sb3IocHJpbWFyeSwgb2ZmLXdoaXRlKSA1MCUpO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgICAgcGFkZGluZy1ib3R0b206IDY0cHg7XG4gICAgfVxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxMjhweDtcbiAgICB9XG4gIH1cblxufVxuXG5cbi8vIEFzaWRlIC8gY2FsbG91dCBiYW5kc1xuYXNpZGUuYmFuZCB7XG4gIG1hcmdpbi1ib3R0b206IDMycHg7IC8vIGluY2x1ZGVzIGJhc2UgcGFkZGluZ1xuXG4gIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICBtYXJnaW4tYm90dG9tOiA2NHB4O1xuICB9XG4gIEBpbmNsdWRlIG1lZGlhKCc+PWRlc2t0b3AnKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTI4cHg7XG4gIH1cbn1cbmFzaWRlLmJhbmQuYmFuZC0tY2FsbG91dCB7XG4gIHBhZGRpbmc6IDMycHggMCA2NHB4OyAvLyBvZmZzZXQgaGFsZi1oZWlnaHQgb2Ygc2VhbFxuICBtYXJnaW46IDA7XG5cbiAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgIHBhZGRpbmc6IDY0cHggMCA5NnB4O1xuICB9XG4gIEBpbmNsdWRlIG1lZGlhKCc+PWRlc2t0b3AnKSB7XG4gICAgcGFkZGluZzogMTI4cHggMCAxNjBweDtcbiAgfVxufVxuIiwiLy8gQnJlYWRjcnVtYnNcbi8vXG4vLyBJbmRpY2F0ZSB0aGUgY3VycmVudCBwYWdlJ3MgbG9jYXRpb24gd2l0aGluIGEgbmF2aWdhdGlvbmFsIGhpZXJhcmNoeS5cbi8vXG4vLyBNYXJrdXA6XG4vLyA8ZGl2IGNsYXNzPVwiYnJlYWRjcnVtYnNcIj5cbi8vICAgPGRpdiBjbGFzcz1cIndyYXBwZXJcIj5cbi8vICAgICA8b2wgY2xhc3M9XCJicmVhZGNydW1ic1wiIGl0ZW1zY29wZSBpdGVtdHlwZT1cImh0dHA6Ly9zY2hlbWEub3JnL0JyZWFkY3J1bWJMaXN0XCI+XG4vLyAgICAgICA8bGkgaXRlbXByb3A9XCJpdGVtTGlzdEVsZW1lbnRcIiBpdGVtc2NvcGUgaXRlbXR5cGU9XCJodHRwOi8vc2NoZW1hLm9yZy9MaXN0SXRlbVwiPlxuLy8gICAgICAgICA8YSBpdGVtc2NvcGUgaXRlbXR5cGU9XCJodHRwOi8vc2NoZW1hLm9yZy9UaGluZ1wiIGl0ZW1wcm9wPVwiaXRlbVwiIGhyZWY9XCIjXCI+XG4vLyAgICAgICAgICAgPHNwYW4gaXRlbXByb3A9XCJuYW1lXCI+SG9tZTwvc3Bhbj5cbi8vICAgICAgICAgPC9hPlxuLy8gICAgICAgICA8bWV0YSBpdGVtcHJvcD1cInBvc2l0aW9uXCIgY29udGVudD1cIjFcIi8+XG4vLyAgICAgICA8L2xpPlxuLy8gICAgICAgPGxpIGNsYXNzPVwicGFyZW50XCIgaXRlbXByb3A9XCJpdGVtTGlzdEVsZW1lbnRcIiBpdGVtc2NvcGUgaXRlbXR5cGU9XCJodHRwOi8vc2NoZW1hLm9yZy9MaXN0SXRlbVwiPlxuLy8gICAgICAgICA8YSBpdGVtc2NvcGUgaXRlbXR5cGU9XCJodHRwOi8vc2NoZW1hLm9yZy9UaGluZ1wiIGl0ZW1wcm9wPVwiaXRlbVwiIGhyZWY9XCIjXCI+XG4vLyAgICAgICAgICAgPHNwYW4gaXRlbXByb3A9XCJuYW1lXCI+Rm9ybXM8L3NwYW4+XG4vLyAgICAgICAgIDwvYT5cbi8vICAgICAgICAgPG1ldGEgaXRlbXByb3A9XCJwb3NpdGlvblwiIGNvbnRlbnQ9XCIyXCIvPlxuLy8gICAgICAgPC9saT5cbi8vICAgICAgIDxsaSBpdGVtcHJvcD1cIml0ZW1MaXN0RWxlbWVudFwiIGl0ZW1zY29wZSBpdGVtdHlwZT1cImh0dHA6Ly9zY2hlbWEub3JnL0xpc3RJdGVtXCI+XG4vLyAgICAgICAgIDxzcGFuIGl0ZW1zY29wZSBpdGVtdHlwZT1cImh0dHA6Ly9zY2hlbWEub3JnL1RoaW5nXCIgaXRlbXByb3A9XCJpdGVtXCI+XG4vLyAgICAgICAgICAgPHNwYW4gaXRlbXByb3A9XCJuYW1lXCI+Tm90aWNlIG9mIHBldGl0aW9uIHRvIG9idGFpbiB0aXRsZSB0byBhYmFuZG9uZWQgcHJvcGVydHk8L3NwYW4+XG4vLyAgICAgICAgIDwvc3Bhbj5cbi8vICAgICAgICAgPG1ldGEgaXRlbXByb3A9XCJwb3NpdGlvblwiIGNvbnRlbnQ9XCIzXCIvPlxuLy8gICAgICAgPC9saT5cbi8vICAgICA8L29sPlxuLy8gICA8L2Rpdj5cbi8vIDwvZGl2PlxuLy9cbi8vIFN0eWxlZ3VpZGUgQ29tcG9uZW50cyAtIEJyZWFkY3J1bWJzXG5cbiRicmVhZGNydW1iX3NwYWNpbmc6IDhweDtcbiRicmVhZGNydW1iX3RydW5jYXRlOiAyMDBweDtcblxuLmJyZWFkY3J1bWJzIHtcblxuICBvbCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGhlaWdodDogNjRweDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogMDtcbiAgICBjb2xvcjogY29sb3IocHJpbWFyeSwgZ3JheSk7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjU7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgfVxuXG4gIGxpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIG1hcmdpbjogMCAwIDAgJGJyZWFkY3J1bWJfc3BhY2luZztcblxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG5cbiAgICAvLyBpY29uXG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB3aWR0aDogMTZweDtcbiAgICAgIGhlaWdodDogMjBweDtcbiAgICAgIG1hcmdpbi1yaWdodDogJGJyZWFkY3J1bWJfc3BhY2luZztcbiAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1nL2ljb25zL2lfcmV0dXJuLnN2ZycpIG5vLXJlcGVhdCA1MCUgNTAlIC8gMTAwJSBhdXRvO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuICAgICAgQGluY2x1ZGUgbWVkaWEoJz49bGFwdG9wJykge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIGljb25cbiAgICAmOmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgd2lkdGg6IDE4cHg7XG4gICAgICAgIGhlaWdodDogMThweDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6ICRicmVhZGNydW1iX3NwYWNpbmc7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1nL2ljb25zL2lfY2FyZXQtcmlnaHQuc3ZnJykgbm8tcmVwZWF0IDUwJSA1MCUgLyAxMDAlIGF1dG87XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gZmlyc3QgZWxlbWVudFxuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuXG4gICAgLy8gbGFzdCBlbGVtZW50XG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIHBhcmVudCBlbGVtZW50XG4gICAgJi5wYXJlbnQge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICAgICAgbWFyZ2luOiAwIDAgMCAkYnJlYWRjcnVtYl9zcGFjaW5nO1xuICAgICAgfVxuXG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJz49bGFwdG9wJykge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgW2l0ZW1wcm9wPSdpdGVtJ10ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXgtd2lkdGg6ICRicmVhZGNydW1iX3RydW5jYXRlO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB9XG5cbn1cbiIsIi8vIFBhZ2luYXRpb25cbi8vXG4vLyBQcm92aWRlIHBhZ2luYXRpb24gbGlua3MgZm9yIHlvdXIgc2l0ZSBvciBhcHAgd2l0aCB0aGUgbXVsdGktcGFnZSBwYWdpbmF0aW9uIGNvbXBvbmVudC5cbi8vXG4vLyBNYXJrdXA6XG4vLyA8bmF2IGNsYXNzPVwicGFnaW5hdGlvblwiIHJvbGU9XCJuYXZpZ2F0aW9uXCIgYXJpYS1sYWJlbD1cIlBhZ2UgbmF2aWdhdGlvblwiPlxuLy8gICA8aDMgY2xhc3M9XCJwYWdpbmF0aW9uX190aXRsZVwiPlBhZ2UgTmF2aWdhdGlvbjwvaDM+XG4vLyAgIDx1bCBjbGFzcz1cInBhZ2luYXRpb25fX2xpc3RcIj5cbi8vICAgICA8bGkgY2xhc3M9XCJwYWdpbmF0aW9uX19wcmV2aW91cyBwYWdpbmF0aW9uLS1kaXNhYmxlZFwiPiZsYXF1bzsgUHJldjxzcGFuIGNsYXNzPVwic3Itb25seVwiPmlvdXMgcGFnZTwvc3Bhbj48L2xpPlxuLy8gICAgIDxsaSBjbGFzcz1cInBhZ2luYXRpb25fX2l0ZW0gcGFnaW5hdGlvbi0tYWN0aXZlXCI+PHNwYW4gY2xhc3M9XCJzci1vbmx5XCI+WW91J3JlIG9uIHBhZ2U8L3NwYW4+IDE8L2xpPlxuLy8gICAgIDxsaSBjbGFzcz1cInBhZ2luYXRpb25fX2l0ZW1cIj48YSBocmVmPVwiI1wiIGFyaWEtbGFiZWw9XCJQYWdlIDJcIj4yPC9hPjwvbGk+XG4vLyAgICAgPGxpIGNsYXNzPVwicGFnaW5hdGlvbl9faXRlbVwiPjxhIGhyZWY9XCIjXCIgYXJpYS1sYWJlbD1cIlBhZ2UgM1wiPjM8L2E+PC9saT5cbi8vICAgICA8bGkgY2xhc3M9XCJwYWdpbmF0aW9uX19pdGVtIHBhZ2luYXRpb24tLW92ZXJmbG93XCIgYXJpYS1oaWRkZW49XCJ0cnVlXCI+JmhlbGxpcDs8L2xpPlxuLy8gICAgIDxsaSBjbGFzcz1cInBhZ2luYXRpb25fX2l0ZW1cIj48YSBocmVmPVwiI1wiIGFyaWEtbGFiZWw9XCJQYWdlIDIwXCI+MjA8L2E+PC9saT5cbi8vICAgICA8bGkgY2xhc3M9XCJwYWdpbmF0aW9uX19uZXh0XCI+PGEgaHJlZj1cIiNcIiBhcmlhLWxhYmVsPVwiTmV4dCBwYWdlXCI+TmV4dCA8c3BhbiBjbGFzcz1cInNyLW9ubHlcIj5wYWdlPC9zcGFuPiAmcmFxdW87PC9hPjwvbGk+XG4vLyAgIDwvdWw+XG4vLyA8L25hdj5cbi8vXG4vLyBTdHlsZWd1aWRlIENvbXBvbmVudHMgLSBQYWdpbmF0aW9uXG5cbiRwYWdpbmF0aW9uX3BhZGRpbmc6IDEycHggMTZweDtcbiRwYWdpbmF0aW9uX3NwYWNpbmc6IDAgNHB4O1xuXG4ucGFnaW5hdGlvbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwYWRkaW5nLXRvcDogMzJweDtcbiAgbWFyZ2luLXRvcDogMzJweDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIGxpZ2h0ZW4oY29sb3IocHJpbWFyeSwgZ3JheSksIDM1JSk7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgbGluZS1oZWlnaHQ6IDE7XG5cbiAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgIG1hcmdpbi10b3A6IDQ4cHg7XG4gIH1cbiAgQGluY2x1ZGUgbWVkaWEoJz49bGFwdG9wJykge1xuICAgIG1hcmdpbi10b3A6IDY0cHg7XG4gIH1cblxuICAvLyB0aXRsZVxuICAmX190aXRsZSB7IEBleHRlbmQgJWhpZGUtb2ZmLXNjcmVlbjsgfVxuXG4gIC8vIGxpc3QgY29udGFpbmVyXG4gICZfX2xpc3Qge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgfVxuXG4gIC8vIGxpc3QgaXRlbXNcbiAgJl9faXRlbSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBtYXJnaW46ICRwYWdpbmF0aW9uX3NwYWNpbmc7XG4gICAgYm9yZGVyLXJhZGl1czogcmFkaXVzKGJhc2UpO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPj1sYXB0b3AnKSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBwYWRkaW5nOiAkcGFnaW5hdGlvbl9wYWRkaW5nO1xuICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IHJhZGl1cyhiYXNlKTtcbiAgICAgIGNvbG9yOiBjb2xvcihwcmltYXJ5LCBibHVlKTtcbiAgICAgIHRyYW5zaXRpb246XG4gICAgICAgIGJhY2tncm91bmQgJGJhc2UtYW5pbWF0aW9uLXNwZWVkICRiYXNlLWFuaW1hdGlvbi1lYXNpbmcsXG4gICAgICAgIGJveC1zaGFkb3cgJGJhc2UtYW5pbWF0aW9uLXNwZWVkICRiYXNlLWFuaW1hdGlvbi1lYXNpbmcsXG4gICAgICAgIGNvbG9yICRiYXNlLWFuaW1hdGlvbi1zcGVlZCAkYmFzZS1hbmltYXRpb24tZWFzaW5nO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IocHJpbWFyeSwgb2ZmLXdoaXRlKTtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgNHB4IHJnYmEoY29sb3Ioc2Vjb25kYXJ5LCBkYXJrLWJsdWUpLCAuMTUpO1xuICAgICAgICBjb2xvcjogbGlnaHRlbihjb2xvcihwcmltYXJ5LCBibHVlKSwgMTAlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBwcmV2aW91cyBidXR0b25cbiAgJl9fcHJldmlvdXMge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW46ICRwYWdpbmF0aW9uX3NwYWNpbmc7XG5cbiAgICBhIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHBhZGRpbmc6ICRwYWdpbmF0aW9uX3BhZGRpbmc7XG4gICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgYm9yZGVyLXJhZGl1czogcmFkaXVzKGJhc2UpO1xuICAgICAgY29sb3I6IGNvbG9yKHByaW1hcnksIGJsdWUpO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IocHJpbWFyeSwgb2ZmLXdoaXRlKTtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgNHB4IHJnYmEoY29sb3Ioc2Vjb25kYXJ5LCBkYXJrLWJsdWUpLCAuMTUpO1xuICAgICAgICBjb2xvcjogbGlnaHRlbihjb2xvcihwcmltYXJ5LCBibHVlKSwgMTAlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBuZXh0IGJ1dHRvblxuICAmX19uZXh0IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luOiAkcGFnaW5hdGlvbl9zcGFjaW5nO1xuXG4gICAgYSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBwYWRkaW5nOiAkcGFnaW5hdGlvbl9wYWRkaW5nO1xuICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IHJhZGl1cyhiYXNlKTtcbiAgICAgIGNvbG9yOiBjb2xvcihwcmltYXJ5LCBibHVlKTtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKHByaW1hcnksIG9mZi13aGl0ZSk7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDRweCByZ2JhKGNvbG9yKHNlY29uZGFyeSwgZGFyay1ibHVlKSwgLjE1KTtcbiAgICAgICAgY29sb3I6IGxpZ2h0ZW4oY29sb3IocHJpbWFyeSwgYmx1ZSksIDEwJSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gc3RhdGU6IG92ZXJmbG93IGNsdXN0ZXJcbiAgJi0tb3ZlcmZsb3cge1xuICAgIHBhZGRpbmc6ICRwYWdpbmF0aW9uX3BhZGRpbmc7XG4gICAgYm9yZGVyOiAwO1xuICAgIGNvbG9yOiBjb2xvcihwcmltYXJ5LCBncmF5KTtcbiAgfVxuXG4gIC8vIHN0YXRlOiBhY3RpdmUgaXRlbVxuICAmLS1hY3RpdmUge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwYWRkaW5nOiAkcGFnaW5hdGlvbl9wYWRkaW5nO1xuICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKHNlY29uZGFyeSwgZGFyay1ibHVlKTtcbiAgICBib3JkZXItY29sb3I6IGNvbG9yKHNlY29uZGFyeSwgZGFyay1ibHVlKTtcbiAgICBjb2xvcjogY29sb3IocHJpbWFyeSwgd2hpdGUpO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IGF0dHIoZGF0YS1kZXB0aCk7XG4gICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgfVxuICB9XG5cbiAgLy8gc3RhdGU6IGRpc2FibGVkIGl0ZW1cbiAgJi0tZGlzYWJsZWQge1xuICAgIHBhZGRpbmc6ICRwYWdpbmF0aW9uX3BhZGRpbmc7XG4gICAgY29sb3I6IGNvbG9yKHByaW1hcnksIGdyYXkpO1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gIH1cblxuXG4gIC8vIExlYXJuIHBhZ2luYXRpb25cbiAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICYtLWxlYXJuIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBib3JkZXItdG9wOiAwO1xuICAgIGp1c3RpZnktY29udGVudDogbm9uZTtcblxuICAgIGEge1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIH1cbiAgICBzdmcge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICB3aWR0aDogMjRweDtcbiAgICAgIGhlaWdodDogMjRweDtcbiAgICAgIG1hcmdpbi10b3A6IC0xMnB4O1xuICAgIH1cblxuICAgIC5wYWdpbmF0aW9uX19saXN0IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAucGFnaW5hdGlvbl9fbGluay10aXRsZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgfVxuXG4gICAgLnBhZ2luYXRpb25fX2xpbmstbGFiZWwge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgLnBhZ2luYXRpb25fX3ByZXZpb3VzIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIH1cblxuICAgICAgYSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDU2cHg7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDU2cHg7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDE2cHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHN2ZyB7IGxlZnQ6IDE2cHg7IH1cbiAgICB9XG5cbiAgICAucGFnaW5hdGlvbl9fbmV4dCB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgIH1cblxuICAgICAgYSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDU2cHg7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDU2cHg7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMTZweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgc3ZnIHsgcmlnaHQ6IDE2cHg7IH1cbiAgICB9XG5cbiAgICAucGFnaW5hdGlvbl9fcHJldmlvdXMgKyAucGFnaW5hdGlvbl9fbmV4dCB7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgY29sb3IocHJpbWFyeSwgZ3JheSk7XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgfVxuXG59XG4iLCIubWVudSB7XG5cbiAgLy8gRGVmYXVsdFxuICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuICAvLyBNZW51IHRpdGxlXG4gICZfX3RpdGxlIHtcbiAgICBAZXh0ZW5kIC5oNTtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG5cbiAgLy8gTWVudSBzdWJ0aXRsZVxuICAmX19zdWJ0aXRsZSB7XG4gICAgcGFkZGluZzogOHB4IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgY29sb3I6IGNvbG9yKHByaW1hcnksIGdyYXkpO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoJz49bGFwdG9wJykge1xuICAgICAgcGFkZGluZzogOHB4IDE2cHg7XG4gICAgfVxuICB9XG5cbiAgQGF0LXJvb3QgYXNpZGUgLm1lbnVfX3N1YnRpdGxlIHtcbiAgICBAaW5jbHVkZSBtZWRpYSgnPj1sYXB0b3AnKSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIH1cblxuICAgICsgLm1lbnVfX2xpc3Qge1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG4gIH1cblxuICAvLyBNZW51IGRpdmlkZXJcbiAgJl9fZGl2aWRlciB7XG4gICAgQGV4dGVuZCBocjtcbiAgICBtYXJnaW46IDhweCAwO1xuICB9XG5cbiAgLy8gTWVudSBsaXN0XG4gICZfX2xpc3Qge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgfVxuXG4gIC8vIE1lbnUgaXRlbVxuICAmX19pdGVtIHtcbiAgICBAZXh0ZW5kICVzaWRlYmFyX19pdGVtO1xuXG4gICAgLy8gZHJvcGRvd24gbWVudSBpdGVtc1xuICAgICYtLWRyb3Bkb3duIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgPiBhIHtcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIHdpZHRoOiAyNHB4O1xuICAgICAgICAgIGhlaWdodDogMjRweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltZy9pY29ucy9pX2NhcmV0LWRvd24uc3ZnJykgbm8tcmVwZWF0IDUwJSA1MCUgLyAxMDAlIGF1dG87XG4gICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtICRiYXNlLWFuaW1hdGlvbi1zcGVlZCAqIDIgJGJhc2UtYW5pbWF0aW9uLWVhc2luZztcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLm1lbnVfX2l0ZW0tLWFjdGl2ZSA+IGEge1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVgoMTgwZGVnKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIE1lbnUgZHJvcGRvd25zXG4gIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAmX19kcm9wZG93biB7XG4gICAgbWF4LWhlaWdodDogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbjpcbiAgICAgIG1heC1oZWlnaHQgJGJhc2UtYW5pbWF0aW9uLXNwZWVkICRiYXNlLWFuaW1hdGlvbi1lYXNpbmcsXG4gICAgICBvcGFjaXR5ICRiYXNlLWFuaW1hdGlvbi1zcGVlZCAkYmFzZS1hbmltYXRpb24tZWFzaW5nO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoJz49bGFwdG9wJykge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAxMDAlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIG1pbi13aWR0aDogMjQwcHg7XG4gICAgICBtYXgtaGVpZ2h0OiAxMDAwcHg7XG4gICAgICBwYWRkaW5nOiA4cHggMDtcbiAgICAgIG1hcmdpbi10b3A6IDRweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKHByaW1hcnksIHdoaXRlKTtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoY29sb3IocHJpbWFyeSwgZ3JheSksIC4yNSk7XG4gICAgICBib3JkZXItcmFkaXVzOiByYWRpdXMoYmFzZSk7XG4gICAgICBib3gtc2hhZG93OiAwIDJweCA0cHggcmdiYShjb2xvcihwcmltYXJ5LCBibGFjayksIC4xKTtcbiAgICAgIG92ZXJmbG93OiBhdXRvO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xNnB4KTtcbiAgICAgIHRyYW5zaXRpb246XG4gICAgICAgIG9wYWNpdHkgJGJhc2UtYW5pbWF0aW9uLXNwZWVkICRiYXNlLWFuaW1hdGlvbi1lYXNpbmcsXG4gICAgICAgIHZpc2liaWxpdHkgJGJhc2UtYW5pbWF0aW9uLXNwZWVkICRiYXNlLWFuaW1hdGlvbi1lYXNpbmcsXG4gICAgICAgIHRyYW5zZm9ybSAkYmFzZS1hbmltYXRpb24tc3BlZWQgJGJhc2UtYW5pbWF0aW9uLWVhc2luZztcbiAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB9XG5cbiAgICAvLyBEZWZhdWx0c1xuICAgIHVsIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIH1cblxuICAgIGxpIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgIHBhZGRpbmc6IDhweDtcbiAgICB9XG5cbiAgICAvLyBBY3RpdmUgc3RhdGVcbiAgICAmLS1hY3RpdmUge1xuICAgICAgbWF4LWhlaWdodDogMTAwMHB4O1xuICAgICAgbWFyZ2luOiAxNnB4IDAgMzJweDtcbiAgICAgIG9wYWNpdHk6IDE7XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICAgICAgbWFyZ2luOiA0cHggMCAwO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cblxuICAvLyBQcmltYXJ5IG1lbnVcbiAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICYtLXByaW1hcnkge1xuICAgIGZvbnQtc2l6ZTogMTZweDtcblxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICB9XG4gICAgQGluY2x1ZGUgbWVkaWEoJz49ZGVza3RvcCcpIHtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICB9XG5cbiAgICAvLyBNZW51IHRpdGxlXG4gICAgLm1lbnVfX3RpdGxlIHtcbiAgICAgIHBhZGRpbmc6IDY0cHggNjRweCAxNnB4IDMycHg7XG4gICAgICBtYXJnaW46IC02NHB4IC0zMnB4IDE2cHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihzZWNvbmRhcnksIGRhcmstYmx1ZSk7XG4gICAgICBjb2xvcjogY29sb3IocHJpbWFyeSwgd2hpdGUpO1xuICAgICAgZm9udC1zaXplOiAzMnB4O1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPj1sYXB0b3AnKSB7XG4gICAgICAgIEBpbmNsdWRlIGhpZGUtb2ZmLXNjcmVlbjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBNZW51IGxpc3RcbiAgICAubWVudV9fbGlzdCB7XG4gICAgICBtYXJnaW46IDA7XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24tY29udGVudDogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gTWVudSBpdGVtXG4gICAgLm1lbnVfX2l0ZW0ge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIGxpZ2h0ZW4oY29sb3IocHJpbWFyeSwgZ3JheSksIDM1JSk7XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgfVxuXG4gICAgICBhIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgYWxpZ24tc2VsZjogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIHBhZGRpbmc6IDE2cHggMDtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgY29sb3I6IGNvbG9yKHByaW1hcnksIGJsYWNrKTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICB0cmFuc2l0aW9uOlxuICAgICAgICAgIGNvbG9yICRiYXNlLWFuaW1hdGlvbi1zcGVlZCAkYmFzZS1hbmltYXRpb24tZWFzaW5nLFxuICAgICAgICAgIGJveC1zaGFkb3cgJGJhc2UtYW5pbWF0aW9uLXNwZWVkICRiYXNlLWFuaW1hdGlvbi1lYXNpbmc7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJz49bGFwdG9wJykge1xuICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICBwYWRkaW5nOiAwIDE2cHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIGhvdmVyIHN0YXRlXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGNvbG9yOiBjb2xvcihwcmltYXJ5LCBibHVlKTtcblxuICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMXB4IDAgMCByZ2JhKGNvbG9yKHByaW1hcnksIGdyYXkpLCAuNSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gZm9jdXMgc3RhdGVcbiAgICAgICAgJjpmb2N1cyxcbiAgICAgICAgJjpmb2N1czpob3ZlciB7XG4gICAgICAgICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgNHB4IGNvbG9yKHNlY29uZGFyeSwgZ29sZCk7XG4gICAgICAgICAgb3V0bGluZTogMDtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIC8vIGZpcnN0IGl0ZW1cbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBib3JkZXI6IDA7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJz49bGFwdG9wJykge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxNnB4O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIGxhc3QgaXRlbVxuICAgICAgJi0tbGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDMycHg7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogcmFkaXVzKGJhc2UpO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxNnB4O1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgICAgIH1cblxuICAgICAgICBhIHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgYWxpZ24tc2VsZjogaW5oZXJpdDtcbiAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgcGFkZGluZzogMjRweCAzMnB4O1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKHNlY29uZGFyeSwgY3lhbik7XG4gICAgICAgICAgY29sb3I6IGNvbG9yKHByaW1hcnksIHdoaXRlKTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kICRiYXNlLWFuaW1hdGlvbi1zcGVlZCAkYmFzZS1hbmltYXRpb24tZWFzaW5nO1xuXG4gICAgICAgICAgQGluY2x1ZGUgbWVkaWEoJz49bGFwdG9wJykge1xuICAgICAgICAgICAgcGFkZGluZzogMCAzMnB4O1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC8vIGljb24gYWRkb25cbiAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgd2lkdGg6IDE2cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDE2cHg7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMTZweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1nL2ljb25zL2lfYXJyb3ctcmlnaHRfd2hpdGUuc3ZnJykgbm8tcmVwZWF0IDUwJSA1MCUgLyAxMDAlIGF1dG87XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gJGJhc2UtYW5pbWF0aW9uLXNwZWVkICogMiAkYmFzZS1hbmltYXRpb24tZWFzaW5nO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC8vIGhvdmVyIHN0YXRlXG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKGNvbG9yKHNlY29uZGFyeSwgY3lhbiksIDIlKTtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgICAgICBjb2xvcjogY29sb3IocHJpbWFyeSwgd2hpdGUpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgICY6aG92ZXI6YWZ0ZXIge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDJweCk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLy8gZm9jdXMgc3RhdGVcbiAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDRweCBjb2xvcihzZWNvbmRhcnksIGdvbGQpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBhY3RpdmUgc3RhdGVcbiAgICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAmLS1hY3RpdmUge1xuICAgICAgICA+IGEsXG4gICAgICAgID4gYTpob3ZlciB7XG4gICAgICAgICAgQGluY2x1ZGUgbWVkaWEoJz49bGFwdG9wJykge1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAxcHggY29sb3Ioc2Vjb25kYXJ5LCBkYXJrLWJsdWUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBjdXJyZW50IHN0YXRlXG4gICAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgJi0tY3VycmVudCB7XG4gICAgICAgIC8vIGRlZmF1bHQgYW5kIGhvdmVyIHN0YXRlc1xuICAgICAgICA+IGEsXG4gICAgICAgID4gYTpob3ZlciB7XG4gICAgICAgICAgQGluY2x1ZGUgbWVkaWEoJz49bGFwdG9wJykge1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAxcHggY29sb3Ioc2Vjb25kYXJ5LCBkYXJrLWJsdWUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIGZvY3VzIHN0YXRlXG4gICAgICAgID4gYTpmb2N1cyB7XG4gICAgICAgICAgQGluY2x1ZGUgbWVkaWEoJz49bGFwdG9wJykge1xuICAgICAgICAgICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgNHB4IGNvbG9yKHNlY29uZGFyeSwgZ29sZCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLm1lbnVfX2Ryb3Bkb3duIGEge1xuICAgICAgcGFkZGluZzogOHB4IDA7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcblxuICAgICAgQGluY2x1ZGUgbWVkaWEoJz49bGFwdG9wJykge1xuICAgICAgICBwYWRkaW5nOiA4cHggMTZweDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgfVxuXG4gICAgICAvLyBob3ZlciBzdGF0ZVxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoY29sb3IocHJpbWFyeSwgZ3JheSksIC4wNSk7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cblxuICAvLyBTZWNvbmRhcnkgbWVudVxuICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgJi0tc2Vjb25kYXJ5IHtcbiAgICBAZXh0ZW5kIC5zaWRlYmxvY2s7XG5cbiAgICAvLyBNZW51IHRpdGxlXG4gICAgLm1lbnVfX3RpdGxlIHtcbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc8PXRhYmxldCcpIHtcbiAgICAgICAgcGFkZGluZzogNjRweCA2NHB4IDE2cHggMzJweDtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc8bGFwdG9wJykge1xuICAgICAgICBwYWRkaW5nOiA2NHB4IDY0cHggMTZweCA2NHB4O1xuICAgICAgICBtYXJnaW46IDY0cHggLTY0cHggMTZweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3Ioc2Vjb25kYXJ5LCBkYXJrLWJsdWUpO1xuICAgICAgICBjb2xvcjogY29sb3IocHJpbWFyeSwgd2hpdGUpO1xuICAgICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPj1sYXB0b3AnKSB7XG4gICAgICAgIGZvbnQ6IDYwMCAxOXB4IC8gMS4yNSAkZm9udC1zZWNvbmRhcnk7XG4gICAgICAgIG1hcmdpbjogMCAwIDE5cHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gTWVudSBsaXN0XG4gICAgLm1lbnVfX2xpc3Qge1xuICAgICAgQGV4dGVuZCAuc2lkZWJsb2NrX19jb250ZW50O1xuICAgIH1cblxuICAgIC8vIE1lbnUgaXRlbVxuICAgIC5tZW51X19pdGVtIHtcbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc8bGFwdG9wJykge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCBsaWdodGVuKGNvbG9yKHByaW1hcnksIGdyYXkpLCAzNSUpO1xuICAgICAgfVxuXG4gICAgICBhIHtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJzxsYXB0b3AnKSB7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgcGFkZGluZzogMTZweCAwO1xuICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgdHJhbnNpdGlvbjpcbiAgICAgICAgICAgIGNvbG9yICRiYXNlLWFuaW1hdGlvbi1zcGVlZCAkYmFzZS1hbmltYXRpb24tZWFzaW5nLFxuICAgICAgICAgICAgYm94LXNoYWRvdyAkYmFzZS1hbmltYXRpb24tc3BlZWQgJGJhc2UtYW5pbWF0aW9uLWVhc2luZztcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBmaXJzdCBpdGVtXG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJzxsYXB0b3AnKSB7XG4gICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQWN0aXZlIG1lbnUgaXRlbVxuICAgIC5tZW51X19pdGVtLS1hY3RpdmUge1xuICAgICAgPiBhIHtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJz49bGFwdG9wJykge1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIH1cblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgQGluY2x1ZGUgbWVkaWEoJz49bGFwdG9wJykge1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDlweDtcbiAgICAgICAgICAgIGxlZnQ6IC0yNHB4O1xuICAgICAgICAgICAgd2lkdGg6IDhweDtcbiAgICAgICAgICAgIGhlaWdodDogOHB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IocHJpbWFyeSwgZ29sZCk7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiByYWRpdXMoZnVsbCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gIH1cblxuXG4gIC8vIE51bWJlcmVkIG1lbnVcbiAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICYtLW51bWJlcmVkIHtcblxuICAgIC8vIE1lbnUgbGlzdFxuICAgIC5tZW51X19pdGVtIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGNvdW50ZXItaW5jcmVtZW50OiBzdGVwLWNvdW50ZXI7XG5cbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogY291bnRlcihzdGVwLWNvdW50ZXIpICcuJztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHJpZ2h0OiAxMDAlO1xuICAgICAgICB3aWR0aDogMjRweDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA4cHg7XG4gICAgICAgIGNvbG9yOiBjb2xvcihwcmltYXJ5LCBncmF5KTtcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMTZweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICB9XG5cbn1cbiIsIi5zaG9ydGN1dCB7XG5cbiAgLy8gU2hvcnRjdXQgdG8gaGVhZGVyIChpLmUuIGJhY2sgdG8gdG9wKVxuICAmLS1oZWFkZXIge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBib3R0b206IDE2cHg7XG4gICAgcmlnaHQ6IDE2cHg7XG4gICAgd2lkdGg6IDQ4cHg7XG4gICAgaGVpZ2h0OiA0OHB4O1xuICAgIGJhY2tncm91bmQ6IGNvbG9yKHNlY29uZGFyeSwgZGFyay1ibHVlKSB1cmwoJy4uL2ltZy9pY29ucy9pX2NhcmV0LXVwX3doaXRlLnN2ZycpIG5vLXJlcGVhdCA1MCUgNTAlIC8gNTAlIGF1dG87XG4gICAgYm94LXNoYWRvdzpcbiAgICAgIDAgMCAwIDJweCByZ2JhKGNvbG9yKHByaW1hcnksIHdoaXRlKSwgLjI0KSxcbiAgICAgIDAgNHB4IDhweCAwIHJnYmEoY29sb3IocHJpbWFyeSwgYmxhY2spLCAuMTIpLFxuICAgICAgMCA0cHggOHB4IDAgcmdiYShjb2xvcihwcmltYXJ5LCBibGFjayksIC4yNCk7XG4gICAgYm9yZGVyLXJhZGl1czogcmFkaXVzKGZ1bGwpO1xuICAgIGZvbnQtc2l6ZTogMDtcbiAgICBsaW5lLWhlaWdodDogMDtcbiAgICBjb2xvcjogY29sb3IocHJpbWFyeSwgd2hpdGUpO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDE2JSk7XG4gICAgdHJhbnNpdGlvbjpcbiAgICAgIGJveC1zaGFkb3cgKCRiYXNlLWFuaW1hdGlvbi1zcGVlZCAqIDIpICRiYXNlLWFuaW1hdGlvbi1lYXNpbmcsXG4gICAgICBvcGFjaXR5ICgkYmFzZS1hbmltYXRpb24tc3BlZWQgKiAyKSAkYmFzZS1hbmltYXRpb24tZWFzaW5nLFxuICAgICAgdHJhbnNmb3JtICgkYmFzZS1hbmltYXRpb24tc3BlZWQgKiAyKSAkYmFzZS1hbmltYXRpb24tZWFzaW5nO1xuICAgIHotaW5kZXg6IDk5OTk7XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgICBib3R0b206IDMycHg7XG4gICAgICByaWdodDogMzJweDtcbiAgICAgIHdpZHRoOiA2NHB4O1xuICAgICAgaGVpZ2h0OiA2NHB4O1xuICAgIH1cblxuICAgIC8vIGxpbmsgc3RhdGVcbiAgICAmOmxpbmsge1xuICAgICAgY29sb3I6IGNvbG9yKHByaW1hcnksIHdoaXRlKTtcbiAgICAgIHRyYW5zaXRpb246XG4gICAgICAgIGJveC1zaGFkb3cgKCRiYXNlLWFuaW1hdGlvbi1zcGVlZCAqIDIpICRiYXNlLWFuaW1hdGlvbi1lYXNpbmcsXG4gICAgICAgIG9wYWNpdHkgKCRiYXNlLWFuaW1hdGlvbi1zcGVlZCAqIDIpICRiYXNlLWFuaW1hdGlvbi1lYXNpbmcsXG4gICAgICAgIHRyYW5zZm9ybSAoJGJhc2UtYW5pbWF0aW9uLXNwZWVkICogMikgJGJhc2UtYW5pbWF0aW9uLWVhc2luZztcbiAgICB9XG5cbiAgICAvLyB2aXNpdGVkIHN0YXRlXG4gICAgJjp2aXNpdGVkIHtcbiAgICAgIGNvbG9yOiBjb2xvcihwcmltYXJ5LCB3aGl0ZSk7XG4gICAgfVxuXG4gICAgLy8gZm9jdXMgc3RhdGVcbiAgICAmOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oY29sb3IocHJpbWFyeSwgYmx1ZSksIDEwJSk7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMCA0cHggcmdiYShjb2xvcihwcmltYXJ5LCBibHVlKSwgLjE2KTtcbiAgICAgIG91dGxpbmU6IDA7XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgOHB4IHJnYmEoY29sb3IocHJpbWFyeSwgYmx1ZSksIC4xNik7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gaG92ZXIgc3RhdGVcbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oY29sb3IocHJpbWFyeSwgYmx1ZSksIDEwJSk7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMCA0cHggcmdiYShjb2xvcihwcmltYXJ5LCBibHVlKSwgLjE2KTtcblxuICAgICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCA4cHggcmdiYShjb2xvcihwcmltYXJ5LCBibHVlKSwgLjE2KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBhY3RpdmUgc3RhdGVcbiAgICAmOmFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKGNvbG9yKHByaW1hcnksIGJsdWUpLCAxMCUpO1xuICAgICAgYm94LXNoYWRvdzogMCAwIDAgNnB4IHJnYmEoY29sb3IocHJpbWFyeSwgYmx1ZSksIC4yNCk7XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMTJweCByZ2JhKGNvbG9yKHByaW1hcnksIGJsdWUpLCAuMjQpO1xuICAgICAgfVxuICAgIH1cblxuICB9XG5cbiAgLy8gU2hvcnRjdXQgdmlzaWJpbGl0eVxuICAmLS12aXNpYmxlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwJSk7XG4gIH1cblxuICAvLyBTaG9ydGN1dCB0byBtYWluIGNvbnRlbnRcbiAgJi0tbWFpbiB7XG4gICAgQGV4dGVuZCAlaGlkZS1vZmYtc2NyZWVuO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICB0b3A6IDNweDtcbiAgICAgIGxlZnQ6IDNweDtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgcGFkZGluZzogOHB4IDE2cHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihwcmltYXJ5LCB3aGl0ZSk7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICBvdXRsaW5lOiAzcHggc29saWQgY29sb3Ioc2Vjb25kYXJ5LCBnb2xkKTtcbiAgICAgIG92ZXJmbG93OiBhdXRvO1xuICAgICAgei1pbmRleDogMTAwMDE7XG4gICAgfVxuICB9XG5cbn1cbiIsIi8vIEJ1dHRvblxuLy9cbi8vIERpc3BsYXkgYW4gZW1waGFzaXplZCBhY3Rpb24gaW4gYSBmb3JtLCBkaWFsb2csIGFuZCBtb3JlLlxuLy9cbi8vIE1hcmt1cDpcbi8vIDwhLS0gc3RhbmRhcmQgYnV0dG9uIC0tPlxuLy8gPGJ1dHRvbiBjbGFzcz1cImJ1dHRvbiB7e21vZGlmaWVyX2NsYXNzfX1cIj5CdXR0b248L2J1dHRvbj5cbi8vIDwhLS0gbGluayB3aXRoIGJ1dHRvbiBjbGFzcyAtLT5cbi8vIDxhIGNsYXNzPVwiYnV0dG9uIHt7bW9kaWZpZXJfY2xhc3N9fVwiIGhyZWY9XCIjXCIgdGl0bGU9XCJsaW5rIHRpdGxlXCI+QnV0dG9uPC9hPlxuLy8gPCEtLSBzdWJtaXQgaW5wdXQgLS0+XG4vLyA8aW5wdXQgY2xhc3M9XCJidXR0b24ge3ttb2RpZmllcl9jbGFzc319XCIgdHlwZT1cInN1Ym1pdFwiIHZhbHVlPVwiQnV0dG9uXCIgLz5cbi8vXG4vLyAuYnV0dG9uLS1wcmltYXJ5ICAgICAgICAgICAgICAgLSBQcmltYXJ5XG4vLyAuYnV0dG9uLS1zZWNvbmRhcnkgICAgICAgICAgICAgLSBTZWNvbmRhcnlcbi8vIC5idXR0b24tLXRlcnRpYXJ5ICAgICAgICAgICAgICAtIFRlcnRpYXJ5XG4vLyAuYnV0dG9uLS1wcmltYXJ5LmJ1dHRvbi0tZ2hvc3QgLSBQcmltYXJ5IE91dGxpbmVcbi8vIC5idXR0b24tLWxpbmsgICAgICAgICAgICAgICAgICAtIExpbmtcbi8vXG4vLyBTdHlsZWd1aWRlIENvbXBvbmVudHMgLSBCdXR0b25zXG5cbiRwcmltYXJ5X2NvbG9yOiBjb2xvcihwcmltYXJ5LCB3aGl0ZSk7XG4kcHJpbWFyeV9iZzogY29sb3Ioc2Vjb25kYXJ5LCBkYXJrLWJsdWUpO1xuJHNlY29uZGFyeV9jb2xvcjogY29sb3Ioc2Vjb25kYXJ5LCBkYXJrLWJsdWUpO1xuJHNlY29uZGFyeV9iZzogY29sb3IocHJpbWFyeSwgd2hpdGUpO1xuJHRlcnRpYXJ5X2NvbG9yOiBjb2xvcihwcmltYXJ5LCB3aGl0ZSk7XG4kdGVydGlhcnlfYmc6IGNvbG9yKHNlY29uZGFyeSwgY3lhbik7XG4kbGlua19jb2xvcjogY29sb3IocHJpbWFyeSwgYmx1ZSk7XG4kbGlua19iZzogdHJhbnNwYXJlbnQ7XG5cbi5idXR0b24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDhweCAxNnB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRwcmltYXJ5X2JnLCAuOTUpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICBib3JkZXI6IDJweCBzb2xpZCByZ2JhKCRwcmltYXJ5X2JnLCAuOTUpO1xuICBib3JkZXItcmFkaXVzOiByYWRpdXMoYmFzZSk7XG4gIGNvbG9yOiAkcHJpbWFyeV9jb2xvcjtcbiAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgZm9udC1zaXplOiAxNHB4O1xuICB0cmFuc2l0aW9uOlxuICAgIGJhY2tncm91bmQgJGJhc2UtYW5pbWF0aW9uLXNwZWVkICRiYXNlLWFuaW1hdGlvbi1lYXNpbmcsXG4gICAgYm9yZGVyICRiYXNlLWFuaW1hdGlvbi1zcGVlZCAkYmFzZS1hbmltYXRpb24tZWFzaW5nLFxuICAgIGJveC1zaGFkb3cgJGJhc2UtYW5pbWF0aW9uLXNwZWVkICRiYXNlLWFuaW1hdGlvbi1lYXNpbmc7XG4gIGN1cnNvcjogcG9pbnRlcjtcblxuICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICB9XG4gIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICBmb250LXNpemU6IDE5cHg7XG4gIH1cblxuICAmOmxpbmssICY6dmlzaXRlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkcHJpbWFyeV9iZywgLjk1KTtcbiAgICBib3JkZXItY29sb3I6IHJnYmEoJHByaW1hcnlfYmcsIC45NSk7XG4gICAgY29sb3I6ICRwcmltYXJ5X2NvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuICAmOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5X2JnO1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDRweCBjb2xvcihzZWNvbmRhcnksIGdvbGQpO1xuICAgIGJvcmRlci1jb2xvcjogJHByaW1hcnlfYmc7XG4gICAgY29sb3I6ICRwcmltYXJ5X2NvbG9yO1xuICAgIG91dGxpbmU6IDA7XG4gIH1cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnlfYmc7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgNHB4IHJnYmEoJHByaW1hcnlfYmcsIC4xNSk7XG4gICAgYm9yZGVyLWNvbG9yOiAkcHJpbWFyeV9iZztcbiAgICBjb2xvcjogJHByaW1hcnlfY29sb3I7XG4gIH1cbiAgJjphY3RpdmUge31cblxuXG4gIC8vIERpc2FibGVkIGJ1dHRvblxuICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgJltkaXNhYmxlZF0ge1xuICAgIG9wYWNpdHk6IC42NTtcbiAgfVxuXG5cbiAgLy8gSWNvbnNcbiAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIGkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDE2cHg7XG4gICAgaGVpZ2h0OiAxNnB4O1xuICAgIG1hcmdpbjogLThweCA4cHggMCAwO1xuICB9XG5cblxuICAvLyBQcmltYXJ5IGJ1dHRvblxuICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgJi0tcHJpbWFyeSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkcHJpbWFyeV9iZywgLjk1KTtcbiAgICBib3JkZXItY29sb3I6IHJnYmEoJHByaW1hcnlfYmcsIC45NSk7XG4gICAgY29sb3I6ICRwcmltYXJ5X2NvbG9yO1xuXG4gICAgJjpsaW5rLCAmOnZpc2l0ZWQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkcHJpbWFyeV9iZywgLjk1KTtcbiAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgkcHJpbWFyeV9iZywgLjk1KTtcbiAgICAgIGNvbG9yOiAkcHJpbWFyeV9jb2xvcjtcbiAgICB9XG4gICAgJjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeV9iZztcbiAgICAgIGJvcmRlci1jb2xvcjogJHByaW1hcnlfYmc7XG4gICAgICBjb2xvcjogJHByaW1hcnlfY29sb3I7XG4gICAgfVxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnlfYmc7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMCA0cHggcmdiYSgkcHJpbWFyeV9iZywgLjE1KTtcbiAgICAgIGJvcmRlci1jb2xvcjogJHByaW1hcnlfYmc7XG4gICAgICBjb2xvcjogJHByaW1hcnlfY29sb3I7XG4gICAgfVxuICAgICY6YWN0aXZlIHt9XG5cbiAgICBpID4gc3ZnID4gKiB7XG4gICAgICBmaWxsOiBjb2xvcihwcmltYXJ5LCB3aGl0ZSk7XG4gICAgfVxuXG4gICAgLy8gUHJpbWFyeSBnaG9zdCBidXR0b25cbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICYuYnV0dG9uLS1naG9zdCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeV9jb2xvcjtcbiAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgkcHJpbWFyeV9iZywgLjk1KTtcbiAgICAgIGNvbG9yOiAkcHJpbWFyeV9iZztcblxuICAgICAgJjpsaW5rLCAmOnZpc2l0ZWQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeV9jb2xvcjtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKCRwcmltYXJ5X2JnLCAuOTUpO1xuICAgICAgICBjb2xvcjogJHByaW1hcnlfYmc7XG4gICAgICB9XG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnlfY29sb3I7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJHByaW1hcnlfYmc7XG4gICAgICAgIGNvbG9yOiAkcHJpbWFyeV9iZztcbiAgICAgIH1cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeV9jb2xvcjtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkcHJpbWFyeV9iZztcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5X2JnO1xuICAgICAgfVxuICAgICAgJjphY3RpdmUge31cbiAgICB9XG4gIH1cblxuXG4gIC8vIFNlY29uZGFyeSBidXR0b25cbiAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICYtLXNlY29uZGFyeSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkc2Vjb25kYXJ5X2JnLCAuOTUpO1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSgkc2Vjb25kYXJ5X2JnLCAuOTUpO1xuICAgIGNvbG9yOiAkc2Vjb25kYXJ5X2NvbG9yO1xuXG4gICAgJjpsaW5rLCAmOnZpc2l0ZWQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkc2Vjb25kYXJ5X2JnLCAuOTUpO1xuICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKCRzZWNvbmRhcnlfYmcsIC45NSk7XG4gICAgICBjb2xvcjogJHNlY29uZGFyeV9jb2xvcjtcbiAgICB9XG4gICAgJjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2Vjb25kYXJ5X2JnO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkc2Vjb25kYXJ5X2JnO1xuICAgICAgY29sb3I6ICRzZWNvbmRhcnlfY29sb3I7XG4gICAgfVxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHNlY29uZGFyeV9iZztcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDRweCByZ2JhKCRzZWNvbmRhcnlfYmcsIC4xNSk7XG4gICAgICBib3JkZXItY29sb3I6ICRzZWNvbmRhcnlfYmc7XG4gICAgICBjb2xvcjogJHNlY29uZGFyeV9jb2xvcjtcbiAgICB9XG4gICAgJjphY3RpdmUge31cbiAgfVxuXG5cbiAgLy8gVGVydGlhcnkgYnV0dG9uXG4gIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAmLS10ZXJ0aWFyeSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkdGVydGlhcnlfYmcsIC45NSk7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKCR0ZXJ0aWFyeV9iZywgLjk1KTtcbiAgICBjb2xvcjogJHRlcnRpYXJ5X2NvbG9yO1xuXG4gICAgJjpsaW5rLCAmOnZpc2l0ZWQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkdGVydGlhcnlfYmcsIC45NSk7XG4gICAgICBib3JkZXItY29sb3I6IHJnYmEoJHRlcnRpYXJ5X2JnLCAuOTUpO1xuICAgICAgY29sb3I6ICR0ZXJ0aWFyeV9jb2xvcjtcbiAgICB9XG4gICAgJjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGVydGlhcnlfYmc7XG4gICAgICBib3JkZXItY29sb3I6ICR0ZXJ0aWFyeV9iZztcbiAgICAgIGNvbG9yOiAkdGVydGlhcnlfY29sb3I7XG4gICAgfVxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRlcnRpYXJ5X2JnO1xuICAgICAgYm94LXNoYWRvdzogMCAwIDAgNHB4IHJnYmEoJHRlcnRpYXJ5X2JnLCAuMTUpO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkdGVydGlhcnlfYmc7XG4gICAgICBjb2xvcjogJHRlcnRpYXJ5X2NvbG9yO1xuICAgIH1cbiAgICAmOmFjdGl2ZSB7fVxuICB9XG5cblxuICAvLyBMaW5rIGJ1dHRvblxuICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgJi0tbGluayB7XG4gICAgYmFja2dyb3VuZDogJGxpbmtfYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkbGlua19iZztcbiAgICBjb2xvcjogJGxpbmtfY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG5cbiAgICAmOmxpbmssICY6dmlzaXRlZCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlua19iZztcbiAgICAgIGJvcmRlci1jb2xvcjogJGxpbmtfYmc7XG4gICAgICBjb2xvcjogJGxpbmtfY29sb3I7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB9XG4gICAgJjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlua19iZztcbiAgICAgIGJvcmRlci1jb2xvcjogJGxpbmtfYmc7XG4gICAgICBjb2xvcjogJGxpbmtfY29sb3I7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB9XG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihzZWNvbmRhcnksIG9mZi1ibHVlKTtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICBib3JkZXItY29sb3I6ICRsaW5rX2JnO1xuICAgICAgY29sb3I6IGxpZ2h0ZW4oJGxpbmtfY29sb3IsIDEwJSk7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB9XG4gICAgJjphY3RpdmUge31cbiAgfVxuXG5cbiAgLy8gQ29udHJvbCBidXR0b25zXG4gIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAmLS1jb250cm9sIHtcbiAgICB3aWR0aDogNDhweDtcbiAgICBoZWlnaHQ6IDQ0cHg7XG4gICAgcGFkZGluZzogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihwcmltYXJ5LCBvZmYtd2hpdGUpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDUwJTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDE2cHggYXV0bztcbiAgICBib3JkZXI6IDJweCBzb2xpZCBjb2xvcihwcmltYXJ5LCBncmF5KTtcbiAgICBib3JkZXItcmFkaXVzOiByYWRpdXMoYmFzZSk7XG4gICAgY29sb3I6IGNvbG9yKHNlY29uZGFyeSwgZGFyay1ibHVlKTtcbiAgICBmb250LXNpemU6IDA7XG4gICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgICAgaGVpZ2h0OiA0NHB4O1xuICAgIH1cbiAgICBAaW5jbHVkZSBtZWRpYSgnPj1sYXB0b3AnKSB7XG4gICAgICBoZWlnaHQ6IDQ4cHg7XG4gICAgfVxuXG4gICAgLy8gbGluayBzdGF0ZVxuICAgICY6bGluayB7XG4gICAgICBjb2xvcjogY29sb3IocHJpbWFyeSwgYmxhY2spO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cblxuICAgIC8vIHZpc2l0ZWQgc3RhdGVcbiAgICAmOnZpc2l0ZWQge1xuICAgICAgY29sb3I6IGNvbG9yKHByaW1hcnksIGJsYWNrKTtcbiAgICB9XG5cbiAgICAvLyBmb2N1cyBzdGF0ZVxuICAgICY6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IocHJpbWFyeSwgd2hpdGUpO1xuICAgICAgYm9yZGVyLWNvbG9yOiBjb2xvcihzZWNvbmRhcnksIGRhcmstYmx1ZSk7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMCA0cHggY29sb3Ioc2Vjb25kYXJ5LCBnb2xkKTtcbiAgICAgIG91dGxpbmU6IDA7XG4gICAgfVxuXG4gICAgLy8gaG92ZXIgc3RhdGVcbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKHByaW1hcnksIG9mZi13aGl0ZSk7XG4gICAgICBib3JkZXItY29sb3I6IGNvbG9yKHNlY29uZGFyeSwgZGFyay1ibHVlKTtcbiAgICAgIGNvbG9yOiBsaWdodGVuKGNvbG9yKHByaW1hcnksIGJsdWUpLCAxMCUpO1xuICAgIH1cblxuICAgIC8vIGFjdGl2ZSBzdGF0ZVxuICAgICY6YWN0aXZlIHt9XG5cbiAgfVxuXG5cbiAgLy8gU2Vjb25kYXJ5IG1lbnVzXG4gIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAmLS1zZWNvbmRhcnktbWVudSB7XG4gICAgQGV4dGVuZCAuYnV0dG9uLS1wcmltYXJ5O1xuICAgIEBleHRlbmQgLmJ1dHRvbi0tZ2hvc3Q7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDQ4cHg7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgICB3aWR0aDogcGVyY2VudGFnZSgzMDAvNjI0KTtcbiAgICB9XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICByaWdodDogMTZweDtcbiAgICAgIHdpZHRoOiAxNnB4O1xuICAgICAgaGVpZ2h0OiAxNnB4O1xuICAgICAgbWFyZ2luLXRvcDogLThweDtcbiAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1nL2ljb25zL2lfc2xpZGUtbGVmdC5zdmcnKSBuby1yZXBlYXQgNTAlIDUwJSAvIDEwMCUgYXV0bztcbiAgICB9XG4gIH1cblxuXG4gIC8vIENvbnRleHR1YWwgbWVudXNcbiAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICYtLWNvbnRleHR1YWwtbWVudSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiA0OHB4O1xuICAgIGhlaWdodDogNDhweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihwcmltYXJ5LCB3aGl0ZSk7XG4gICAgYm9yZGVyLWNvbG9yOiBjb2xvcihwcmltYXJ5LCB3aGl0ZSk7XG4gICAgYm9yZGVyLXJhZGl1czogcmFkaXVzKGZ1bGwpO1xuICAgIGNvbG9yOiBjb2xvcihwcmltYXJ5LCBibHVlKTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAmOmxpbmssICY6dmlzaXRlZCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihwcmltYXJ5LCB3aGl0ZSk7XG4gICAgICBib3JkZXItY29sb3I6IGNvbG9yKHByaW1hcnksIHdoaXRlKTtcbiAgICAgIGNvbG9yOiBjb2xvcihwcmltYXJ5LCBibHVlKTtcbiAgICB9XG4gICAgJjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihzZWNvbmRhcnksIG9mZi1ibHVlKTtcbiAgICAgIGJvcmRlci1jb2xvcjogY29sb3Ioc2Vjb25kYXJ5LCBvZmYtYmx1ZSk7XG4gICAgICBjb2xvcjogY29sb3IocHJpbWFyeSwgYmx1ZSk7XG4gICAgfVxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3Ioc2Vjb25kYXJ5LCBvZmYtYmx1ZSk7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgYm9yZGVyLWNvbG9yOiBjb2xvcihzZWNvbmRhcnksIG9mZi1ibHVlKTtcbiAgICAgIGNvbG9yOiBjb2xvcihwcmltYXJ5LCBibHVlKTtcbiAgICB9XG4gICAgJjphY3RpdmUge31cblxuICAgIHN2ZyB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHdpZHRoOiAxNnB4O1xuICAgICAgaGVpZ2h0OiAxNnB4O1xuICAgICAgbWFyZ2luOiAtOHB4IDAgMCAtOHB4O1xuICAgIH1cbiAgfVxuXG5cbiAgLy8gQWRkIGNvbnRyb2xzXG4gIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAmLS1hZGQsXG4gICYtLWFkZDpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWcvaWNvbnMvaV9jaXJjbGUtYWRkLnN2ZycpO1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICB9XG4gICYtLWFkZCB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgcGFkZGluZzogMCAxNnB4IDAgNDBweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxNnB4IDUwJTtcbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxuXG5cbiAgLy8gUmVtb3ZlIGNvbnRyb2xzXG4gIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAmLS1yZW1vdmUsXG4gICYtLXJlbW92ZTpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWcvaWNvbnMvaV9jaXJjbGUtZGVsZXRlLnN2ZycpO1xuICB9XG5cblxuICAvLyBDYWxlbmRhciBjb250cm9sXG4gIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAmLS1jYWxlbmRhcixcbiAgJi0tY2FsZW5kYXI6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1nL2ljb25zL2lfZGF0ZXBpY2tlci5zdmcnKTtcbiAgfVxuXG59XG5cblxuLnRvZ2dsZSB7XG4gIEBleHRlbmQgLmJ1dHRvbjtcblxuICAmLS1zZWFyY2gsXG4gICYtLW1lbnUge1xuICAgIHdpZHRoOiA2NHB4O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGZvbnQtc2l6ZTogMDtcbiAgICBsaW5lLWhlaWdodDogMDtcblxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICAgIHdpZHRoOiA4MHB4O1xuICAgIH1cblxuICAgIC8vIGhvdmVyIHN0YXRlXG4gICAgJjpob3ZlciB7IGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbiAgICAvLyBmb2N1cyBzdGF0ZVxuICAgICY6Zm9jdXMge1xuICAgICAgYm94LXNoYWRvdzogMCAtNHB4IGNvbG9yKHNlY29uZGFyeSwgY3lhbik7XG4gICAgICBvdXRsaW5lOiAwO1xuICAgIH1cbiAgfVxuXG4gICYtLXNlYXJjaCB7XG4gICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWcvaWNvbnMvaV9zZWFyY2guc3ZnJykgbm8tcmVwZWF0IDUwJSA1MCUgLyAyMHB4IGF1dG87XG4gICAgYm9yZGVyOiAwO1xuICAgIG9yZGVyOiAxO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgICAgYmFja2dyb3VuZC1zaXplOiAyNHB4IGF1dG87XG4gICAgfVxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLy8gaG92ZXIgYW5kIGZvY3VzIHN0YXRlc1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy9pY29ucy9pX3NlYXJjaC5zdmcnKTtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgfVxuXG4gICAgJi50b2dnbGUtLWFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihzZWNvbmRhcnksIGRhcmstYmx1ZSk7XG4gICAgfVxuICB9XG5cbiAgJi0tbWVudSB7XG4gICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWcvaWNvbnMvaV9tZW51LnN2ZycpIG5vLXJlcGVhdCA1MCUgNTAlIC8gMjRweCBhdXRvO1xuICAgIGJvcmRlcjogMDtcbiAgICBvcmRlcjogMztcblxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogMjRweCBhdXRvO1xuICAgIH1cbiAgICBAaW5jbHVkZSBtZWRpYSgnPj1sYXB0b3AnKSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC8vIGhvdmVyIGFuZCBmb2N1cyBzdGF0ZXNcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWcvaWNvbnMvaV9tZW51LnN2ZycpO1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICB9XG4gIH1cblxuICAmLS1hY3RpdmUsXG4gICYtLWFjdGl2ZTpob3ZlcixcbiAgJi0tYWN0aXZlOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy9pY29ucy9pX2Nsb3NlX3doaXRlLnN2ZycpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogMjRweCBhdXRvO1xuICAgIHotaW5kZXg6IDEwMDAzO1xuICB9XG5cbn1cblxuXG4vLyBDbG9zZSBzZWNvbmRhcnkgbWVudXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLmNsb3NlLS1zZWNvbmRhcnktbWVudSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgd2lkdGg6IDY0cHg7XG4gIGhlaWdodDogNjhweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMDtcblxuICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgd2lkdGg6IDgwcHg7XG4gICAgaGVpZ2h0OiA4NHB4O1xuICB9XG5cbiAgc3ZnIHtcbiAgICBAaW5jbHVkZSBhYnNvbHV0ZS1jZW50ZXI7XG4gICAgKiB7IGZpbGw6IGNvbG9yKHByaW1hcnksIHdoaXRlKTsgfVxuICB9XG5cbiAgc3BhbiB7XG4gICAgQGV4dGVuZCAuc3Itb25seTtcbiAgfVxufVxuIiwiLmxvZ28ge1xuICBtYXJnaW46IDA7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5O1xuICBmb250LXNpemU6IDE5cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjEzO1xuICBjb2xvcjogY29sb3IocHJpbWFyeSwgYmx1ZSk7XG5cbiAgYSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBjb2xvcjogY29sb3IocHJpbWFyeSwgYmx1ZSk7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiA2NHB4O1xuICAgICAgaGVpZ2h0OiA2NHB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxNnB4O1xuICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWcvbF9zZWFsLWNvbG9yLnN2ZycpIG5vLXJlcGVhdCA1MCUgNTAlIC8gMTAwJSBhdXRvO1xuICAgIH1cblxuICAgIC8vIHZpc2l0ZWQgc3RhdGVcbiAgICAmOnZpc2l0ZWQge1xuICAgICAgY29sb3I6IGNvbG9yKHByaW1hcnksIGJsdWUpO1xuICAgIH1cblxuICAgIC8vIGhvdmVyIHN0YXRlXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogbGlnaHRlbihjb2xvcihwcmltYXJ5LCBibHVlKSwgMTAlKTtcbiAgICB9XG5cbiAgICAvLyBmb2N1cyBzdGF0ZVxuICAgICY6Zm9jdXMge1xuICAgICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgNHB4IGNvbG9yKHNlY29uZGFyeSwgZ29sZCk7XG4gICAgfVxuICB9XG5cbiAgZGl2IHtcbiAgICBtYXgtd2lkdGg6IDEyOHB4O1xuICB9XG5cbiAgc3Ryb25nIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDEycHggMCA0cHg7XG5cbiAgICArIHNwYW4ge1xuICAgICAgY29sb3I6IGNvbG9yKHByaW1hcnksIGJsYWNrKTtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2U7XG4gICAgfVxuICB9XG5cbiAgLy8gaGVhZGVyIGxvZ29cbiAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICYtLWhlYWRlciB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgb3JkZXI6IDI7XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPj1sYXB0b3AnKSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDMycHg7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICB3aWR0aDogMTYwcHg7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgYWxpZ24tY29udGVudDogY2VudGVyO1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPj1kZXNrdG9wX3dpZGUnKSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBjb2xvcjogY29sb3IocHJpbWFyeSwgYmx1ZSk7XG4gICAgICB9XG5cbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYSgnPj1kZXNrdG9wX3dpZGUnKSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgd2lkdGg6IDY0cHg7XG4gICAgICAgICAgaGVpZ2h0OiA2NHB4O1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBzcGFuIHtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJz49ZGVza3RvcF93aWRlJykge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHdpZHRoOiAxNjBweDtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIGhvdmVyIHN0YXRlXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6IGxpZ2h0ZW4oY29sb3IocHJpbWFyeSwgYmx1ZSksIDEwJSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gZm9vdGVyIGxvZ29cbiAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICYtLWZvb3RlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiA1MCU7XG4gICAgd2lkdGg6IDY0cHg7XG4gICAgaGVpZ2h0OiA2NHB4O1xuICAgIG1hcmdpbjogMDtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNTAlLCAtNTAlLCAwKTtcbiAgICB6LWluZGV4OiAxO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgICAgd2lkdGg6IDk2cHg7XG4gICAgICBoZWlnaHQ6IDk2cHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEoJz49bGFwdG9wJykge1xuICAgICAgd2lkdGg6IDEyOHB4O1xuICAgICAgaGVpZ2h0OiAxMjhweDtcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBjb2xvcjogY29sb3IocHJpbWFyeSwgd2hpdGUpO1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuXG4gICAgICAvLyB2aXNpdGVkIHN0YXRlXG4gICAgICAmOnZpc2l0ZWQge1xuICAgICAgICBjb2xvcjogY29sb3IocHJpbWFyeSwgd2hpdGUpO1xuICAgICAgfVxuXG4gICAgICAvLyBob3ZlciBzdGF0ZVxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgfVxuXG4gICAgICAvLyBsb2dvIHNlYWxcbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICB9XG4gICAgfVxuXG4gIH1cbn1cblxuLnRhZ2xpbmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMzJweDtcbiAgbWFyZ2luOiAxNnB4IGF1dG8gMDtcbiAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWcvbF90YWdsaW5lLnN2Zz92MicpIG5vLXJlcGVhdCA1MCUgNTAlIC8gYXV0byAxMDAlO1xuICBmb250LXNpemU6IDA7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuXG4gIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICBtYXgtd2lkdGg6IDMwMHB4O1xuICB9XG4gIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICBtYXJnaW46IC0zMnB4IGF1dG8gNjRweDtcbiAgfVxufVxuIiwiLy8gTGlua3Ncbi8vXG4vLyBBIGdyb3VwIG9mIGxpbmtzLiBDYW4gb3B0aW9uYWxseSBkaXNwbGF5IGEgPGNvZGU+JHRpdGxlPC9jb2RlPi5cbi8vXG4vLyBNYXJrdXA6XG4vLyA8ZGl2IGNsYXNzPVwibGlua3Mge3ttb2RpZmllcl9jbGFzc319XCI+XG4vLyAgIDxoMyBjbGFzcz1cImxpbmtzX190aXRsZVwiPkxpbmtzIHRpdGxlPC9oMz5cbi8vICAgPHVsIGNsYXNzPVwibGlua3NfX2xpc3RcIj5cbi8vICAgICA8bGkgY2xhc3M9XCJsaW5rc19faXRlbVwiPjxhIGhyZWY9XCIjXCI+Q3VycmVudCByb2FkIGNvbmRpdGlvbnM8L2E+PC9saT5cbi8vICAgICA8bGkgY2xhc3M9XCJsaW5rc19faXRlbVwiPjxhIGhyZWY9XCIjXCI+TkMgRGVwYXJ0bWVudCBvZiBUcmFuc3BvcnRhdGlvbjwvYT48L2xpPlxuLy8gICAgIDxsaSBjbGFzcz1cImxpbmtzX19pdGVtXCI+PGEgaHJlZj1cIiNcIj5OQyBEZXBhcnRtZW50IG9mIFB1YmxpYyBTYWZldHk8L2E+PC9saT5cbi8vICAgPC91bD5cbi8vIDwvZGl2PlxuLy9cbi8vIC5saW5rcy0tY29udGV4dHVhbCAgIC0gQ29udGV4dHVhbCBsaW5rc1xuLy9cbi8vIFN0eWxlZ3VpZGUgQ29tcG9uZW50cyAtIExpbmtzXG5cbi5saW5rcyB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAzMnB4O1xuXG4gIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICBtYXJnaW4tYm90dG9tOiA2NHB4O1xuICB9XG5cblxuICAvLyBEZWZhdWx0c1xuICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgJl9fdGl0bGUge1xuICAgIEBleHRlbmQgJWxpbmtzX190aXRsZTtcbiAgfVxuXG4gICZfX2xpc3Qge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgJi0tbm8tcmVzdWx0cyB7XG4gICAgICBsaXN0LXN0eWxlOiBkaXNjO1xuICAgICAgbWFyZ2luOiAwIDAgMCA0MHB4O1xuICAgIH1cbiAgfVxuXG4gICZfX2l0ZW0ge1xuICAgIEBleHRlbmQgJWxpbmtzX19pdGVtO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIC8vIGJ1bGxldCBzZXBhcmF0b3JcbiAgICAmLS1idWxsZXQge1xuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBAaW5jbHVkZSBtZWRpYSgnPj1kZXNrdG9wJykge1xuICAgICAgICAgIGNvbnRlbnQ6ICdcXDIwMjInO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cblxuICAvLyBTb2NpYWwgaXRlbXNcbiAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICZfX2l0ZW0tLWZhY2Vib29rIHtcbiAgICBhIHsgQGV4dGVuZCAlc29jaWFsLWxpc3Q7IH1cbiAgICBhOmJlZm9yZSB7IGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1nL2ljb25zL2lfc29jaWFsLWZhY2Vib29rLnN2ZycpOyB9XG4gIH1cblxuICAmX19pdGVtLS10d2l0dGVyIHtcbiAgICBhIHsgQGV4dGVuZCAlc29jaWFsLWxpc3Q7IH1cbiAgICBhOmJlZm9yZSB7IGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1nL2ljb25zL2lfc29jaWFsLXR3aXR0ZXIuc3ZnJyk7IH1cbiAgfVxuXG4gICZfX2l0ZW0tLWxpbmtlZGluIHtcbiAgICBhIHsgQGV4dGVuZCAlc29jaWFsLWxpc3Q7IH1cbiAgICBhOmJlZm9yZSB7IGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1nL2ljb25zL2lfc29jaWFsLWxpbmtlZGluLnN2ZycpOyB9XG4gIH1cblxuICAmX19pdGVtLS15b3V0dWJlIHtcbiAgICBhIHsgQGV4dGVuZCAlc29jaWFsLWxpc3Q7IH1cbiAgICBhOmJlZm9yZSB7IGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1nL2ljb25zL2lfc29jaWFsLXlvdXR1YmUuc3ZnJyk7IH1cbiAgfVxuXG4gICZfX2l0ZW0tLWluc3RhZ3JhbSB7XG4gICAgYSB7IEBleHRlbmQgJXNvY2lhbC1saXN0OyB9XG4gICAgYTpiZWZvcmUgeyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy9pY29ucy9pX3NvY2lhbC1pbnN0YWdyYW0uc3ZnJyk7IH1cbiAgfVxuXG4gICZfX2l0ZW0tLWVtYWlsIHtcbiAgICBhIHsgQGV4dGVuZCAlc29jaWFsLWxpc3Q7IH1cbiAgICBhOmJlZm9yZSB7IGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1nL2ljb25zL2lfc29jaWFsLWVtYWlsLnN2ZycpOyB9XG4gIH1cblxuXG4gIC8vIENvbm5lY3RcbiAgLy9cbiAgLy8gR3JvdXAgb2YgbGlua3MgZGlzcGxheWluZyBzb2NpYWwgbWVkaWEgcGxhdGZvcm1zLlxuICAvL1xuICAvLyBNYXJrdXA6XG4gIC8vIDxkaXYgY2xhc3M9XCJsaW5rcyBsaW5rcy0tY29ubmVjdFwiPlxuICAvLyAgIDxoNCBjbGFzcz1cImxpbmtzX190aXRsZVwiPkNvbm5lY3Qgd2l0aCB1czwvaDQ+XG4gIC8vICAgPHVsIGNsYXNzPVwibGlua3NfX2xpc3RcIj5cbiAgLy8gICAgIDxsaSBjbGFzcz1cImxpbmtzX19pdGVtIGxpbmtzX19pdGVtLS1mYWNlYm9va1wiPlxuICAvLyAgICAgICA8YSBocmVmPVwiaHR0cHM6Ly93d3cuZmFjZWJvb2suY29tL05DY291cnRzL1wiIHRhcmdldD1cIl9ibGFua1wiPjxzcGFuPkZhY2Vib29rPC9zcGFuPjwvYT5cbiAgLy8gICAgIDwvbGk+XG4gIC8vICAgICA8bGkgY2xhc3M9XCJsaW5rc19faXRlbSBsaW5rc19faXRlbS0tbGlua2VkaW5cIj5cbiAgLy8gICAgICAgPGEgaHJlZj1cImh0dHBzOi8vd3d3LmxpbmtlZGluLmNvbS9jb21wYW55L25vcnRoLWNhcm9saW5hLWFkbWluaXN0cmF0aXZlLW9mZmljZS1vZi10aGUtY291cnRzXCIgdGFyZ2V0PVwiX2JsYW5rXCI+PHNwYW4+TGlua2VkSW48L3NwYW4+PC9hPlxuICAvLyAgICAgPC9saT5cbiAgLy8gICAgIDxsaSBjbGFzcz1cImxpbmtzX19pdGVtIGxpbmtzX19pdGVtLS10d2l0dGVyXCI+XG4gIC8vICAgICAgIDxhIGhyZWY9XCJodHRwczovL3R3aXR0ZXIuY29tL05DQ291cnRzXCIgdGFyZ2V0PVwiX2JsYW5rXCI+PHNwYW4+VHdpdHRlcjwvc3Bhbj48L2E+XG4gIC8vICAgICA8L2xpPlxuICAvLyAgICAgPGxpIGNsYXNzPVwibGlua3NfX2l0ZW0gbGlua3NfX2l0ZW0tLXlvdXR1YmVcIj5cbiAgLy8gICAgICAgPGEgaHJlZj1cImh0dHBzOi8vd3d3LnlvdXR1YmUuY29tL3VzZXIvTm9ydGhDYXJvbGluYUNvdXJ0c1wiIHRhcmdldD1cIl9ibGFua1wiPjxzcGFuPllvdXR1YmU8L3NwYW4+PC9hPlxuICAvLyAgICAgPC9saT5cbiAgLy8gICA8L3VsPlxuICAvLyA8L2Rpdj5cbiAgLy9cbiAgLy8gU3R5bGVndWlkZSBDb21wb25lbnRzIC0gTGlua3MgLSBDb25uZWN0XG5cbiAgJi0tY29ubmVjdCB7XG4gICAgbWFyZ2luOiAwO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoJz49ZGVza3RvcCcpIHtcbiAgICAgIHdpZHRoOiBwZXJjZW50YWdlKDMwMy8xMjgwKTtcbiAgICAgIG9yZGVyOiAyO1xuICAgIH1cbiAgfVxuXG5cbiAgLy8gQ29ubmVjdCBTaW1wbGVcbiAgLy9cbiAgLy8gU2ltcGxpZmllZCBjb25uZWN0IGxpbmtzLCBkaXNwbGF5aW5nIG9ubHkgdGhlIHBsYXRmb3JtIGxvZ29zLlxuICAvL1xuICAvLyBNYXJrdXA6XG4gIC8vIDxkaXYgY2xhc3M9XCJsaW5rcyBsaW5rcy0tY29ubmVjdCBsaW5rcy0tY29ubmVjdC1zaW1wbGVcIj5cbiAgLy8gICA8aDQgY2xhc3M9XCJsaW5rc19fdGl0bGVcIj5Db25uZWN0IHdpdGggdXM8L2g0PlxuICAvLyAgIDx1bCBjbGFzcz1cImxpbmtzX19saXN0XCI+XG4gIC8vICAgICA8bGkgY2xhc3M9XCJsaW5rc19faXRlbSBsaW5rc19faXRlbS0tZmFjZWJvb2tcIj5cbiAgLy8gICAgICAgPGEgaHJlZj1cImh0dHBzOi8vd3d3LmZhY2Vib29rLmNvbS9OQ2NvdXJ0cy9cIiB0YXJnZXQ9XCJfYmxhbmtcIj48c3Bhbj5GYWNlYm9vazwvc3Bhbj48L2E+XG4gIC8vICAgICA8L2xpPlxuICAvLyAgICAgPGxpIGNsYXNzPVwibGlua3NfX2l0ZW0gbGlua3NfX2l0ZW0tLWxpbmtlZGluXCI+XG4gIC8vICAgICAgIDxhIGhyZWY9XCJodHRwczovL3d3dy5saW5rZWRpbi5jb20vY29tcGFueS9ub3J0aC1jYXJvbGluYS1hZG1pbmlzdHJhdGl2ZS1vZmZpY2Utb2YtdGhlLWNvdXJ0c1wiIHRhcmdldD1cIl9ibGFua1wiPjxzcGFuPkxpbmtlZEluPC9zcGFuPjwvYT5cbiAgLy8gICAgIDwvbGk+XG4gIC8vICAgICA8bGkgY2xhc3M9XCJsaW5rc19faXRlbSBsaW5rc19faXRlbS0tdHdpdHRlclwiPlxuICAvLyAgICAgICA8YSBocmVmPVwiaHR0cHM6Ly90d2l0dGVyLmNvbS9OQ0NvdXJ0c1wiIHRhcmdldD1cIl9ibGFua1wiPjxzcGFuPlR3aXR0ZXI8L3NwYW4+PC9hPlxuICAvLyAgICAgPC9saT5cbiAgLy8gICAgIDxsaSBjbGFzcz1cImxpbmtzX19pdGVtIGxpbmtzX19pdGVtLS15b3V0dWJlXCI+XG4gIC8vICAgICAgIDxhIGhyZWY9XCJodHRwczovL3d3dy55b3V0dWJlLmNvbS91c2VyL05vcnRoQ2Fyb2xpbmFDb3VydHNcIiB0YXJnZXQ9XCJfYmxhbmtcIj48c3Bhbj5Zb3V0dWJlPC9zcGFuPjwvYT5cbiAgLy8gICAgIDwvbGk+XG4gIC8vICAgPC91bD5cbiAgLy8gPC9kaXY+XG4gIC8vXG4gIC8vIFN0eWxlZ3VpZGUgQ29tcG9uZW50cyAtIExpbmtzIC0gQ29ubmVjdCBTaW1wbGVcblxuICAmLS1jb25uZWN0LXNpbXBsZSB7XG4gICAgbWFyZ2luOiAwIDAgMjhweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzMnB4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PWRlc2t0b3AnKSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDM4cHg7XG4gICAgICBvcmRlcjogaW5oZXJpdDtcbiAgICB9XG5cbiAgICAubGlua3NfX2xpc3Qge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB9XG5cbiAgICAubGlua3NfX2l0ZW0ge1xuICAgICAgbWFyZ2luOiAwIDhweDtcblxuICAgICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgICAgICBtYXJnaW46IDAgMTJweDtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PWRlc2t0b3AnKSB7XG4gICAgICAgIG1hcmdpbjogMCAxNnB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIC5saW5rc19faXRlbSBhIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHdpZHRoOiAzNnB4O1xuICAgICAgaGVpZ2h0OiAzNnB4O1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcblxuICAgICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgcmlnaHQ6IC0yNHB4O1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubGlua3NfX2l0ZW0gYTpiZWZvcmUge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGF1dG8gMTAwJTtcbiAgICB9XG4gICAgLmxpbmtzX19pdGVtLS1mYWNlYm9vayBhOmJlZm9yZSB7IGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1nL2ljb25zL2lfc29jaWFsLWZhY2Vib29rLWFsdC5zdmcnKTsgfVxuICAgIC5saW5rc19faXRlbS0tbGlua2VkaW4gYTpiZWZvcmUge31cbiAgICAubGlua3NfX2l0ZW0tLXR3aXR0ZXIgYTpiZWZvcmUgeyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy9pY29ucy9pX3NvY2lhbC10d2l0dGVyLWFsdC5zdmcnKTsgfVxuICAgIC5saW5rc19faXRlbS0teW91dHViZSBhOmJlZm9yZSB7IGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1nL2ljb25zL2lfc29jaWFsLXlvdXR1YmUtYWx0LnBuZycpOyB9XG4gICAgLmxpbmtzX19pdGVtLS1pbnN0YWdyYW0gYTpiZWZvcmUgeyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy9pY29ucy9pX3NvY2lhbC1pbnN0YWdyYW0tYWx0LnN2ZycpOyB9XG5cbiAgICAubGlua3NfX2l0ZW0gc3BhbiB7XG4gICAgICBAZXh0ZW5kIC5zci1vbmx5O1xuICAgIH1cbiAgfVxuXG5cbiAgLy8gU2VhcmNoIHF1aWNrIGxpbmtzXG4gIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAmLS1zZWFyY2gtcXVpY2sge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgbWFyZ2luOiAwO1xuXG4gICAgLy8gbGlua3MgdGl0bGVcbiAgICAubGlua3NfX3RpdGxlIHtcbiAgICAgIEBleHRlbmQgLm1ldGE7XG4gICAgfVxuXG4gICAgLy8gbGlua3MgaXRlbVxuICAgIC5saW5rc19faXRlbSB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgbGlnaHRlbihjb2xvcihwcmltYXJ5LCBncmF5KSwgMzUlKTtcblxuICAgICAgQGluY2x1ZGUgbWVkaWEoJz49bGFwdG9wJykge1xuICAgICAgICBtYXJnaW4tdG9wOiAxNnB4O1xuICAgICAgICBib3JkZXItdG9wOiAwO1xuICAgICAgfVxuXG4gICAgICBhIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBhZGRpbmc6IDE2cHggMDtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYSgnPj1sYXB0b3AnKSB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBmaXJzdCBsaW5rcyBpdGVtXG4gICAgLmxpbmtzX19pdGVtOmZpcnN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci10b3A6IDA7XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBhY3RpdmVcbiAgICAmLmxpbmtzLS1hY3RpdmUge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgJiB+IC5saW5rcy0tYWN0aXZlIHtcbiAgICAgIG1hcmdpbi10b3A6IDMycHg7XG4gICAgfVxuICB9XG5cblxuICAvLyBTZWFyY2ggc3VnZ2VzdGlvbiBsaW5rc1xuICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgJi0tc2VhcmNoLXN1Z2dlc3Qge1xuICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPj1sYXB0b3AnKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzMnB4O1xuICAgIH1cblxuICAgIC8vIGxpbmtzIHRpdGxlXG4gICAgLmxpbmtzX190aXRsZSB7XG4gICAgICBAZXh0ZW5kIC5tZXRhO1xuICAgIH1cblxuICAgIC8vIGxpbmtzIGl0ZW1cbiAgICAubGlua3NfX2l0ZW0ge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIGxpZ2h0ZW4oY29sb3IocHJpbWFyeSwgZ3JheSksIDM1JSk7XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMTZweDtcbiAgICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgIH1cblxuICAgICAgaSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMTZweDtcbiAgICAgICAgaGVpZ2h0OiAxNnB4O1xuICAgICAgICBtYXJnaW4tdG9wOiAtOHB4O1xuICAgICAgfVxuXG4gICAgICBzdmcge1xuICAgICAgICBAaW5jbHVkZSBhYnNvbHV0ZS1jZW50ZXI7XG4gICAgICB9XG5cbiAgICAgIGEge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcGFkZGluZzogMTZweCAwIDE2cHggMzJweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYSgnPj1sYXB0b3AnKSB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIHBhZGRpbmc6IDAgMCAwIDMycHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBmaXJzdCBsaW5rcyBpdGVtXG4gICAgLmxpbmtzX19pdGVtOmZpcnN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci10b3A6IDA7XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBoaWdobGlnaHRlZCBpdGVtc1xuICAgIG1hcmsge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgIH1cblxuICAgIC8vIGFjdGl2ZVxuICAgICYubGlua3MtLWFjdGl2ZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cblxuXG4gIC8vIFNlYXJjaCB0b3AgbGlua3NcbiAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICYtLXNlYXJjaC10b3Age1xuICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPj1sYXB0b3AnKSB7XG4gICAgICBwYWRkaW5nLXRvcDogMzJweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDMycHg7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgbGlnaHRlbihjb2xvcihwcmltYXJ5LCBncmF5KSwgMzUlKTtcbiAgICB9XG5cbiAgICAubGlua3NfX3RpdGxlIHtcbiAgICAgIEBleHRlbmQgLm1ldGE7XG4gICAgfVxuXG4gICAgLmxpbmtzX19pdGVtIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCBsaWdodGVuKGNvbG9yKHByaW1hcnksIGdyYXkpLCAzNSUpO1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPj1sYXB0b3AnKSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDE2cHg7XG4gICAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgICB9XG5cbiAgICAgIGEge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcGFkZGluZzogMTZweCAwO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5saW5rc19faXRlbTpmaXJzdC1jaGlsZCB7XG4gICAgICBib3JkZXItdG9wOiAwO1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPj1sYXB0b3AnKSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gYWN0aXZlXG4gICAgJi5saW5rcy0tYWN0aXZlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxuXG5cbiAgLy8gU2VhcmNoIGFsbFxuICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgJi0tc2VhcmNoLWFsbCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBtYXJnaW46IDA7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcblxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICAgIHBhZGRpbmctdG9wOiAzMnB4O1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIGxpZ2h0ZW4oY29sb3IocHJpbWFyeSwgZ3JheSksIDM1JSk7XG4gICAgfVxuXG4gICAgLy8gYWN0aXZlXG4gICAgJi5saW5rcy0tYWN0aXZlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxuXG5cbiAgLy8gQ29udGV4dHVhbCBsaW5rc1xuICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgJi0tY29udGV4dHVhbCB7XG4gICAgLmxpbmtzX190aXRsZSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICBsZWZ0OiAtMzJweDtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB3aWR0aDogMTZweDtcbiAgICAgICAgICBoZWlnaHQ6IDE2cHg7XG4gICAgICAgICAgbWFyZ2luLXRvcDogLThweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltZy9pY29ucy9pX2Fycm93LWJvdHRvbS5zdmcnKSBuby1yZXBlYXQgNTAlIDUwJSAvIDEwMCUgYXV0bztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG59XG4iLCIvLyBUaXRsZXNcbi8vXG4vLyBTdHJ1Y3R1cmVkIHBhZ2UgaGVhZGVycyB0aGF0IGludHJvZHVjZXMgdGhlIGNvbnRlbnQuXG4vL1xuLy8gU3R5bGVndWlkZSBDb21wb25lbnRzIC0gVGl0bGVzXG5cbi50aXRsZSB7XG5cbiAgLy8gZGVmYXVsdCBsYWJlbFxuICAmX19sYWJlbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gIC8vIGRlZmF1bHQgZGVzY3JpcHRpb25cbiAgJl9fZGVzY3JpcHRpb24ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMTZweCAwIDA7XG4gICAgY29sb3I6IGNvbG9yKHByaW1hcnksIGJsYWNrKTtcbiAgICBmb250LXNpemU6IDE2cHg7XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgICBmb250LXNpemU6IDE5cHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEoJz49bGFwdG9wJykge1xuICAgICAgZm9udC1zaXplOiAyMXB4O1xuICAgIH1cblxuICAgIC8vIGRlc2NyaXB0aW9uIGZvciBwZXJzb24gY29udGVudCB0eXBlXG4gICAgJi0tcGVyc29uIHtcbiAgICAgIGNvbG9yOiBjb2xvcihwcmltYXJ5LCBncmF5KTtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjRlbTtcblxuICAgICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgICAgICBmb250LXNpemU6IDE5cHg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gUHJpbWFyeSBUaXRsZVxuICAvL1xuICAvLyBVc2VkIGV4Y2x1c2l2ZWx5IGZvciBwYWdlIHRpdGxlcy4gT3B0aW9uYWwgbWV0YSBhbmQgZGVzY3JpcHRpb24gZmllbGRzLlxuICAvL1xuICAvLyBNYXJrdXA6XG4gIC8vIDxkaXYgY2xhc3M9XCJ0aXRsZSB0aXRsZS0tcHJpbWFyeVwiPlxuICAvLyAgIDxkaXYgY2xhc3M9XCJtZXRhXCIgaXRlbXByb3A9XCJrZXl3b3Jkc1wiPktleXdvcmQocyk8L2Rpdj5cbiAgLy8gICA8aDEgY2xhc3M9XCJ0aXRsZV9fbGFiZWxcIiBpdGVtcHJvcD1cImhlYWRsaW5lXCI+VGl0bGUgSGVhZGxpbmU8L2gxPlxuICAvLyAgIDxwIGNsYXNzPVwidGl0bGVfX2Rlc2NyaXB0aW9uXCIgaXRlbXByb3A9XCJkZXNjcmlwdGlvblwiPlNob3J0IGRlc2NyaXB0aW9uIHRoYXQgaXMgYWJvdXQgdGhpcyB0aXRsZSBoZWFkbGluZS48L3A+XG4gIC8vIDwvZGl2PlxuICAvL1xuICAvLyBTdHlsZWd1aWRlIENvbXBvbmVudHMgLSBUaXRsZXMgLSBQcmltYXJ5IFRpdGxlXG5cbiAgJi0tcHJpbWFyeSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbjogMzJweCAwO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgICAgbWFyZ2luOiA2NHB4IDA7XG4gICAgfVxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PWRlc2t0b3AnKSB7XG4gICAgICBtYXJnaW46IDEyOHB4IDA7XG4gICAgfVxuXG4gICAgLy8gcGlwZSAoYXBwbGllZCB0byBsYXN0IGVsZW1lbnQpXG4gICAgLnRpdGxlX19sYWJlbDpsYXN0LWNoaWxkOmFmdGVyLFxuICAgIC50aXRsZV9fZGVzY3JpcHRpb246bGFzdC1jaGlsZDphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IDU1cHg7XG4gICAgICBoZWlnaHQ6IDRweDtcbiAgICAgIG1hcmdpbi10b3A6IDMycHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihwcmltYXJ5LCBnb2xkKTtcblxuICAgICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgICAgICB3aWR0aDogNTdweDtcbiAgICAgICAgaGVpZ2h0OiA2cHg7XG4gICAgICAgIG1hcmdpbi10b3A6IDY0cHg7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICAgICAgd2lkdGg6IDg1cHg7XG4gICAgICAgIGhlaWdodDogOHB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIC50aXRsZV9fbGFiZWwge1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG5cbiAgICAubWV0YSArIFtpdGVtcHJvcD0nbmFtZSddLFxuICAgIC5tZXRhICsgW2l0ZW1wcm9wPSdoZWFkbGluZSddIHtcbiAgICAgIG1hcmdpbi10b3A6IDE2cHg7XG4gICAgfVxuXG4gICAgW2l0ZW1wcm9wPSdkZXNjcmlwdGlvbiddIHtcbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PWRlc2t0b3AnKSB7XG4gICAgICAgIG1heC13aWR0aDogcGVyY2VudGFnZSg4NDYvMTI4MCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gU2Vjb25kYXJ5IFRpdGxlXG4gIC8vXG4gIC8vIEhlbHBzIGRlc2NyaWJlIGNvbnRlbnQgYXQgdGhlIGJhbmQvc2VjdGlvbiBsZXZlbC4gT3B0aW9uYWwgZGVzY3JpcHRpb24gZmllbGQuXG4gIC8vXG4gIC8vIE1hcmt1cDpcbiAgLy8gPGRpdiBjbGFzcz1cInRpdGxlIHRpdGxlLS1zZWNvbmRhcnlcIj5cbiAgLy8gICA8aDIgY2xhc3M9XCJ0aXRsZV9fbGFiZWxcIiBpdGVtcHJvcD1cImhlYWRsaW5lXCI+VGl0bGUgSGVhZGxpbmU8L2gyPlxuICAvLyAgIDxzcGFuIGNsYXNzPVwidGl0bGVfX2Rlc2NyaXB0aW9uXCIgaXRlbXByb3A9XCJkZXNjcmlwdGlvblwiPlNob3J0IGRlc2NyaXB0aW9uIHRoYXQgaXMgYWJvdXQgdGhpcyB0aXRsZSBoZWFkbGluZS48L3NwYW4+XG4gIC8vIDwvZGl2PlxuICAvL1xuICAvLyBTdHlsZWd1aWRlIENvbXBvbmVudHMgLSBUaXRsZXMgLSBTZWNvbmRhcnkgVGl0bGVcblxuICAmLS1zZWNvbmRhcnkge1xuICAgIHBhZGRpbmctYm90dG9tOiAxNnB4O1xuICAgIG1hcmdpbjogMCAwIDMycHg7XG4gICAgYm9yZGVyLWJvdHRvbTogNHB4IHNvbGlkIGNvbG9yKHByaW1hcnksIGJsYWNrKTtcblxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDQ4cHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEoJz49bGFwdG9wJykge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNjRweDtcbiAgICB9XG5cbiAgICAudGl0bGVfX2xhYmVsIHtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgfVxuICAgIC50aXRsZV9fZGVzY3JpcHRpb24ge1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG4gIH1cblxuICAvLyBUZXJ0aWFyeSBUaXRsZVxuICAvL1xuICAvLyBIZWxwcyBkZXNjcmliZSBjb250ZW50IGF0IHRoZSBibG9jay9lbGVtZW50IGxldmVsLlxuICAvL1xuICAvLyBNYXJrdXA6XG4gIC8vIDxoMyBjbGFzcz1cInRpdGxlIHRpdGxlLS10ZXJ0aWFyeVwiPlRpdGxlIGhlYWRsaW5lPC9oMz5cbiAgLy9cbiAgLy8gU3R5bGVndWlkZSBDb21wb25lbnRzIC0gVGl0bGVzIC0gVGVydGlhcnkgVGl0bGVcblxuICAmLS10ZXJ0aWFyeSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGZvbnQ6IDcwMCAxOXB4LzEuMjUgJGZvbnQtc2Vjb25kYXJ5O1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgICAgZm9udC1zaXplOiAyMXB4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICB9XG5cbiAgICArIHAge1xuICAgICAgbWFyZ2luLXRvcDogMTRweDtcblxuICAgICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgICAgICBtYXJnaW4tdG9wOiAxNnB4O1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgbWVkaWEoJz49bGFwdG9wJykge1xuICAgICAgICBtYXJnaW4tdG9wOiAxOXB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIENvbnRleHR1YWwgVGl0bGVcbiAgLy9cbiAgLy8gTWFya3VwOlxuICAvLyA8aDIgY2xhc3M9XCJ0aXRsZSB0aXRsZS0tY29udGV4dHVhbFwiPjxzdHJvbmc+MzIgZm9ybXM8L3N0cm9uZz4gY29udGFpbmluZyA8c3Bhbj5hYmFuZG9uZWQgcHJvcGVydHk8L3NwYW4+LCBhYm91dCA8c3Bhbj5Fc3RhdGVzPC9zcGFuPjwvaDI+XG4gIC8vXG4gIC8vIFN0eWxlZ3VpZGUgQ29tcG9uZW50cyAtIFRpdGxlcyAtIENvbnRleHR1YWwgVGl0bGVcblxuICAmLS1jb250ZXh0dWFsIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTZweDtcbiAgICBtYXJnaW46IDAgMCAzMnB4O1xuICAgIGJvcmRlci1ib3R0b206IDRweCBzb2xpZCBjb2xvcihwcmltYXJ5LCBibGFjayk7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBsaW5lLWhlaWdodDogMS4yNTtcblxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDQ4cHg7XG4gICAgICBmb250LXNpemU6IDE5cHg7XG4gICAgfVxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDY0cHg7XG4gICAgICBmb250LXNpemU6IDIxcHg7XG4gICAgfVxuXG4gICAgc3Ryb25nIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luLWJvdHRvbTogOHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIGZvbnQtc2l6ZTogMjFweDtcbiAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICAgICAgZm9udC1zaXplOiAyOHB4O1xuICAgICAgfVxuICAgIH1cbiAgICBzcGFuIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgfVxuICB9XG5cbiAgLy8gQ2xvc2luZ3MgVGl0bGVcbiAgLy9cbiAgLy8gTWFya3VwOlxuICAvLyA8ZGl2IGNsYXNzPVwidGl0bGUgdGl0bGUtLWNsb3NpbmdzXCI+VHVlc2RheSwgPHNwYW4gY2xhc3M9XCJzci1vbmx5XCI+Ojwvc3Bhbj4gPHNwYW4+V2VkbmVzZGF5LCBGZWJydWFyeSAyMSwgMjAxODwvc3Bhbj48L2Rpdj5cbiAgLy9cbiAgLy8gU3R5bGVndWlkZSBDb21wb25lbnRzIC0gVGl0bGVzIC0gQ2xvc2luZ3MgVGl0bGVcblxuICAmLS1jbG9zaW5ncyB7XG4gICAgQGV4dGVuZCAuaDM7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKHByaW1hcnksIHdoaXRlKTtcbiAgICBwYWRkaW5nOiAzMnB4IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG5cbiAgICAmLnRpdGxlLS1waW5uZWQge1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgYm94LXNoYWRvdzogMCAxcHggMCAwIGxpZ2h0ZW4oY29sb3IocHJpbWFyeSwgZ3JheSksIDM1JSk7XG4gICAgICB6LWluZGV4OiAxMDA7XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc8PWxhcHRvcCcpIHtcbiAgICAgICAgdG9wOiA4MHB4O1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgbWVkaWEoJzw9dGFibGV0Jykge1xuICAgICAgICB0b3A6IDY1cHg7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPmxhcHRvcCcsICc8PTEzNjVweCcpIHtcbiAgICAgICAgdG9wOiAxNjBweDtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc+MTM2NXB4Jykge1xuICAgICAgICB0b3A6IDgwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbn1cbiIsIi8vIExpc3RzXG4vL1xuLy8gQSBsaXN0IG9mIGRhdGEgb2JqZWN0cy5cbi8vXG4vLyBNYXJrdXA6XG4vLyA8ZGl2IGNsYXNzPVwibGlzdFwiPlxuLy8gICA8aDIgY2xhc3M9XCJsaXN0X190aXRsZVwiPkxpc3QgdGl0bGU8L2gyPlxuLy8gICA8ZGl2IGNsYXNzPVwibGlzdF9faXRlbXNcIj5cbi8vICAgICA8YXJ0aWNsZSBjbGFzcz1cImxpc3RfX2l0ZW1cIj5cbi8vICAgICAgIExvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0LCBjb25zZWN0ZXR1ciBhZGlwaXNjaW5nIGVsaXQuIEZ1c2NlIGRhcGlidXMgbnVuYyBzZWQgZG9sb3IgaW1wZXJkaWV0IGNvbnNlY3RldHVyLiBQZWxsZW50ZXNxdWUgZGFwaWJ1cyBvcmNpIGV0IG5lcXVlIHZ1bHB1dGF0ZSBjb252YWxsaXMuXG4vLyAgICAgPC9hcnRpY2xlPlxuLy8gICAgIDxhcnRpY2xlIGNsYXNzPVwibGlzdF9faXRlbVwiPlxuLy8gICAgICAgTG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQsIGNvbnNlY3RldHVyIGFkaXBpc2NpbmcgZWxpdC4gRnVzY2UgZGFwaWJ1cyBudW5jIHNlZCBkb2xvciBpbXBlcmRpZXQgY29uc2VjdGV0dXIuIFBlbGxlbnRlc3F1ZSBkYXBpYnVzIG9yY2kgZXQgbmVxdWUgdnVscHV0YXRlIGNvbnZhbGxpcy5cbi8vICAgICA8L2FydGljbGU+XG4vLyAgICAgPGFydGljbGUgY2xhc3M9XCJsaXN0X19pdGVtXCI+XG4vLyAgICAgICBMb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldCwgY29uc2VjdGV0dXIgYWRpcGlzY2luZyBlbGl0LiBGdXNjZSBkYXBpYnVzIG51bmMgc2VkIGRvbG9yIGltcGVyZGlldCBjb25zZWN0ZXR1ci4gUGVsbGVudGVzcXVlIGRhcGlidXMgb3JjaSBldCBuZXF1ZSB2dWxwdXRhdGUgY29udmFsbGlzLlxuLy8gICAgIDwvYXJ0aWNsZT5cbi8vICAgPC9kaXY+XG4vLyA8L2Rpdj5cbi8vXG4vLyBTdHlsZWd1aWRlIENvbXBvbmVudHMgLSBMaXN0c1xuXG4ubGlzdCB7XG5cbiAgLy8gRGVmYXVsdFxuICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgJl9fdGl0bGUge1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gICZfX3RpdGxlICsgdWwge1xuICAgIG1hcmdpbi10b3A6IDE5cHg7XG4gIH1cblxuICAmX19mb290bm90ZSB7XG4gICAgbWFyZ2luOiAzMnB4IDAgMDtcbiAgICBjb2xvcjogY29sb3IocHJpbWFyeSwgZ3JheSk7XG4gICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcblxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICAgIG1hcmdpbi10b3A6IDQ4cHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEoJz49bGFwdG9wJykge1xuICAgICAgbWFyZ2luLXRvcDogNjRweDtcbiAgICB9XG4gIH1cblxuICAmX19pdGVtcyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIH1cblxuICAmX19pdGVtIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogMzJweCAwIDA7XG4gICAgYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgICBtYXJnaW4tdG9wOiA0OHB4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICAgIG1hcmdpbi10b3A6IDY0cHg7XG4gICAgfVxuXG4gICAgLy8gZmlyc3QgaXRlbVxuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG5cbiAgICAvLyBsYXN0IGVsZW1lbnRcbiAgICAqOmxhc3QtY2hpbGQgeyBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbiAgICAvLyBpY29uXG4gICAgaSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiA1NXB4O1xuICAgICAgaGVpZ2h0OiA1NXB4O1xuICAgICAgYmFja2dyb3VuZC1zaXplOiA1MCUgYXV0bztcblxuICAgICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgICAgICB3aWR0aDogMTM4cHg7XG4gICAgICAgIGhlaWdodDogMTM4cHg7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICAgICAgd2lkdGg6IDE5M3B4O1xuICAgICAgICBoZWlnaHQ6IDE5M3B4O1xuICAgICAgfVxuXG4gICAgICBzdmcge1xuICAgICAgICBAaW5jbHVkZSBhYnNvbHV0ZS1jZW50ZXI7XG4gICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgIGhlaWdodDogNTAlO1xuICAgICAgfVxuICAgICAgc3ZnICoge1xuICAgICAgICBzdHJva2U6IGNvbG9yKHByaW1hcnksIGJsdWUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIHNwYWNpbmcgaW5zaWRlIHRoZSBpdGVtXG4gICAgLm1ldGEgKyAubGlzdF9fdGl0bGUge1xuICAgICAgbWFyZ2luOiAxNnB4IDAgMDtcbiAgICB9XG5cbiAgICAubGlzdF9fdGl0bGUge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgZm9udDogNzAwIDE5cHgvMS4yNSAkZm9udC1zZWNvbmRhcnk7XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICAgICAgZm9udC1zaXplOiAyMXB4O1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPj1sYXB0b3AnKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubGlzdF9fdGl0bGUgKyAubWV0YSxcbiAgICAubGlzdF9fdGl0bGUgKyBbaXRlbXByb3A9J2Rlc2NyaXB0aW9uJ10gKyAubWV0YSB7XG4gICAgICBtYXJnaW46IDE2cHggMCAwO1xuICAgIH1cblxuICAgIFtpdGVtcHJvcD0nZGVzY3JpcHRpb24nXSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbjogMTRweCAwIDA7XG4gICAgICBjb2xvcjogY29sb3IocHJpbWFyeSwgYmxhY2spO1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDE2cHg7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPj1sYXB0b3AnKSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDE5cHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgW2l0ZW1wcm9wPSd0ZWxlcGhvbmUnXSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW4tdG9wOiAxNnB4O1xuICAgIH1cblxuICAgIC5mb3JtIHtcbiAgICAgIG1hcmdpbi10b3A6IDE2cHg7XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMjRweDtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMzJweDtcbiAgICAgIH1cbiAgICB9XG5cblxuICAgIC8vIFByb21vdGVkIExpc3RzXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICYtLXBvcHVsYXIge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgcGFkZGluZzogMTZweCAzMnB4IDMycHg7XG4gICAgICBtYXJnaW4tbGVmdDogLTMycHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0zMnB4O1xuICAgICAgbWFyZ2luLXRvcDogMTZweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKHNlY29uZGFyeSwgb2ZmLWJsdWUpO1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDI0cHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHJhZGl1cyhiYXNlKTtcbiAgICAgICAgcGFkZGluZzogMzJweDtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMzJweDtcbiAgICAgIH1cblxuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBAZXh0ZW5kIC5iYWRnZSwgLmJhZGdlLS1waWxsLCAuYmFkZ2UtLWxpZ2h0O1xuICAgICAgICBjb250ZW50OiAnUG9wdWxhcic7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKCc8dGFibGV0Jykge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE2cHg7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IDMycHg7XG4gICAgICAgICAgcmlnaHQ6IDMycHg7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgW2l0ZW1wcm9wPSdkZXNjcmlwdGlvbiddLFxuICAgICAgLm1ldGEge1xuICAgICAgICBjb2xvcjogY29sb3IocHJpbWFyeSwgYmxhY2spO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG5cbiAgLy8gRGl2aWRlZCBMaXN0c1xuICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgJi0tZGl2aWRlZCB7XG4gICAgLmxpc3RfX2l0ZW1zIHtcbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMXB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiBjb2xvcihwcmltYXJ5LCB3aGl0ZSk7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICB9XG4gICAgfVxuICAgIC5saXN0X19pdGVtIHtcbiAgICAgIHBhZGRpbmc6IDMycHggMDtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCBsaWdodGVuKGNvbG9yKHByaW1hcnksIGdyYXkpLCAzNSUpO1xuICAgIH1cbiAgfVxuXG4gICYtLWRpdmlkZWQtY29uZGVuc2VkIHtcbiAgICAubGlzdF9faXRlbXMge1xuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICAgIGJhY2tncm91bmQ6IGNvbG9yKHByaW1hcnksIHdoaXRlKTtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgIH1cbiAgICB9XG4gICAgLmxpc3RfX2l0ZW0ge1xuICAgICAgcGFkZGluZzogMTZweCAwO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIGxpZ2h0ZW4oY29sb3IocHJpbWFyeSwgZ3JheSksIDM1JSk7XG4gICAgfVxuICB9XG5cblxuICAvLyBOZXdzIExpc3RzXG4gIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAmLS1uZXdzIHtcbiAgICAubGlzdF9faXRlbSB7XG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICB9XG5cbiAgICAgIC5uZXdzX19waG90byB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHdpZHRoOiBwZXJjZW50YWdlKDEzOC82MjQpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAubmV3c19fY29udGVudCB7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICAgICAgICB3aWR0aDogcGVyY2VudGFnZSg0NTQvNjI0KTtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgzMi82MjQpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIFtpdGVtcHJvcD0nZGVzY3JpcHRpb24nXSB7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKCc8dGFibGV0Jykge1xuICAgICAgICAgIEBpbmNsdWRlIGhpZGUtb2ZmLXNjcmVlbjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG5cbiAgLy8gRmlsZXMgTGlzdHNcbiAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICYtLWZpbGVzIHtcbiAgICAubGlzdF9fdGl0bGUge1xuICAgICAgbWFyZ2luOiAwIDAgMTZweDtcbiAgICB9XG5cbiAgICAubGlzdF9faXRlbSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDU2cHg7XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA4NXB4O1xuICAgICAgfVxuXG4gICAgICBbaXRlbXByb3A9J2hlYWRsaW5lJ10ge1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI1O1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICAgICAgICBmb250LXNpemU6IDE5cHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjU7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJz49bGFwdG9wJykge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMjFweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMS4yNTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgW2l0ZW1wcm9wPSd1cmwnXSB7XG4gICAgICAgIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gcmVtb3ZlIG1hcmdpbnMgb24gbWV0YVxuICAgIC5tZXRhIHNwYW4geyBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgfVxuXG5cbiAgLy8gUmVjb2duaXRpb24gTGlzdHNcbiAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICYtLXJlY29nbml0aW9uIHtcbiAgICAuaXRlbV9fbWV0YSB7XG4gICAgICBAZXh0ZW5kIC5tZXRhO1xuICAgIH1cblxuICAgIC5pdGVtX190aXRsZSB7XG4gICAgICBAZXh0ZW5kIC5oNjtcbiAgICAgIG1hcmdpbi10b3A6IDhweDtcbiAgICB9XG5cbiAgICAuaXRlbV9fYXR0cmlidXRpb24ge31cblxuICAgIC5pdGVtX19kZXNjcmlwdGlvbiB7XG4gICAgICBjb2xvcjogY29sb3IocHJpbWFyeSwgZ3JheSk7XG4gICAgfVxuICB9XG5cblxuICAvLyBDb3VudGllcyBMaXN0c1xuICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgJi0tY291bnRpZXMge1xuICAgIEBleHRlbmQgLmxpc3QtLWRpdmlkZWQtY29uZGVuc2VkO1xuICAgIG1hcmdpbi10b3A6IDMycHg7XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgICBtYXJnaW4tdG9wOiA0OHB4O1xuICAgIH1cbiAgICBAaW5jbHVkZSBtZWRpYSgnPj1sYXB0b3AnKSB7XG4gICAgICBtYXJnaW4tdG9wOiA2NHB4O1xuICAgIH1cblxuICAgIC5saXN0X19pdGVtczpiZWZvcmUge1xuICAgICAgei1pbmRleDogMTtcbiAgICB9XG5cbiAgICAubGlzdF9faXRlbSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBicmVhay1pbnNpZGU6IGF2b2lkO1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgICAgIHBhZGRpbmc6IDI0cHggMDtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICAgICAgcGFkZGluZzogMzJweCAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIC50aXRsZSB7XG4gICAgICBtYXJnaW46IDAgMCA4cHg7XG4gICAgfVxuXG4gICAgLm1ldGEge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgLmJ1dHRvbiB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgd2lkdGg6IDQ4cHg7XG4gICAgICBoZWlnaHQ6IDQ4cHg7XG4gICAgICBtYXJnaW4tdG9wOiAtMjRweDtcbiAgICB9XG4gIH1cblxuXG4gIC8vIFBlb3BsZSBMaXN0c1xuICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgJi0tcGVvcGxlIHtcbiAgICAubGlzdF9faXRlbSB7XG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBbaXRlbXByb3A9J3RlbGVwaG9uZSddIHtcbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDM1cHg7IC8vIG9mZnNldCBwYWRkaW5nICsgdGl0bGUgaGVpZ2h0XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgbWVkaWEoJz49bGFwdG9wJykge1xuICAgICAgICB0b3A6IDM2cHg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cblxuICAvLyBTZWFyY2ggUmVzdWx0c1xuICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgJi0tc2VhcmNoLXJlc3VsdHMge1xuICAgIC8vIGhpZ2hsaWdodGluZ1xuICAgIC5saXN0X19kZXNjcmlwdGlvbiBtYXJrIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgfVxuICB9XG5cblxuICAvLyBQZXJzb25hc1xuICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICYtLXBlcnNvbmFzIHtcbiAgICAubGlzdF9faXRlbXMge1xuICAgICAgQGluY2x1ZGUgbWVkaWEoJz49bGFwdG9wJykge1xuICAgICAgICBwYWRkaW5nOiAzMnB4IDA7XG4gICAgICAgIGNvbHVtbi1ydWxlOiAxcHggc29saWQgbGlnaHRlbihjb2xvcihwcmltYXJ5LCBncmF5KSwgMzUlKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubGlzdF9faXRlbSB7XG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPj1sYXB0b3AnKSB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5saXN0X190aXRsZSBhIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcblxuICAgICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICAgICAgZm9udC1zaXplOiAxOXB4O1xuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgIH1cblxuICAgICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxNnB4O1xuICAgICAgICBoZWlnaHQ6IDE2cHg7XG4gICAgICAgIG1hcmdpbi10b3A6IC04cHg7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1nL2ljb25zL2lfYXJyb3ctcmlnaHQuc3ZnJykgbm8tcmVwZWF0IDUwJSA1MCUgLyAxMDAlIGF1dG87XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuXG4gIC8vIExpc3RzIHRoYXQgZGlzcGxheSBtdWx0aXBsZSBjb2x1bW5zIHdpbGwgbmVlZCB0byBzZXR1cCBpdHMgY29udGFpbmVyXG4gIC8vIGJhc2VkIG9uIHRoZSBkYXRhLWF0dHJpYnV0ZS5cbiAgJltkYXRhLWNvbHVtbnNdIHtcbiAgICAubGlzdF9faXRlbXMge1xuICAgICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cblxuICAvLyAyIENvbHVtbnNcbiAgLy9cbiAgLy8gRGlzcGxheSBhIGxpc3QgaW4gYSAyLWNvbHVtbiBsYXlvdXQuXG4gIC8vXG4gIC8vIE1hcmt1cDpcbiAgLy8gPGRpdiBjbGFzcz1cImxpc3RcIiBkYXRhLWNvbHVtbnM9XCIyXCI+XG4gIC8vICAgPGgyIGNsYXNzPVwibGlzdF9fdGl0bGVcIj5MaXN0IHRpdGxlPC9oMj5cbiAgLy8gICA8ZGl2IGNsYXNzPVwibGlzdF9faXRlbXNcIj5cbiAgLy8gICAgIDxhcnRpY2xlIGNsYXNzPVwibGlzdF9faXRlbVwiPlxuICAvLyAgICAgICBMb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldCwgY29uc2VjdGV0dXIgYWRpcGlzY2luZyBlbGl0LiBGdXNjZSBkYXBpYnVzIG51bmMgc2VkIGRvbG9yIGltcGVyZGlldCBjb25zZWN0ZXR1ci4gUGVsbGVudGVzcXVlIGRhcGlidXMgb3JjaSBldCBuZXF1ZSB2dWxwdXRhdGUgY29udmFsbGlzLlxuICAvLyAgICAgPC9hcnRpY2xlPlxuICAvLyAgICAgPGFydGljbGUgY2xhc3M9XCJsaXN0X19pdGVtXCI+XG4gIC8vICAgICAgIExvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0LCBjb25zZWN0ZXR1ciBhZGlwaXNjaW5nIGVsaXQuIEZ1c2NlIGRhcGlidXMgbnVuYyBzZWQgZG9sb3IgaW1wZXJkaWV0IGNvbnNlY3RldHVyLiBQZWxsZW50ZXNxdWUgZGFwaWJ1cyBvcmNpIGV0IG5lcXVlIHZ1bHB1dGF0ZSBjb252YWxsaXMuXG4gIC8vICAgICA8L2FydGljbGU+XG4gIC8vICAgPC9kaXY+XG4gIC8vIDwvZGl2PlxuICAvL1xuICAvLyBTdHlsZWd1aWRlIENvbXBvbmVudHMgLSBMaXN0cyAtIDIgQ29sdW1uc1xuXG4gICZbZGF0YS1jb2x1bW5zPScyJ10ge1xuXG4gICAgLmxpc3RfX2l0ZW0ge1xuICAgICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgICAgICB3aWR0aDogNDguMTI1JTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAzLjc1JTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PWRlc2t0b3AnKSB7XG4gICAgICAgIHdpZHRoOiA0OC45NDczNjg0MjExJTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAyLjEwNTI2MzE1NzklO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5saXN0X19pdGVtOm50aC1jaGlsZChldmVuKSB7XG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubGlzdF9faXRlbTpudGgtY2hpbGQoMikge1xuICAgICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgfVxuICAgIH1cblxuICB9XG5cblxuICAvLyAzIENvbHVtbnNcbiAgLy9cbiAgLy8gRGlzcGxheSBhIGxpc3QgaW4gYSAzLWNvbHVtbiBsYXlvdXQuXG4gIC8vXG4gIC8vIE1hcmt1cDpcbiAgLy8gPGRpdiBjbGFzcz1cImxpc3RcIiBkYXRhLWNvbHVtbnM9XCIzXCI+XG4gIC8vICAgPGgyIGNsYXNzPVwibGlzdF9fdGl0bGVcIj5MaXN0IHRpdGxlPC9oMj5cbiAgLy8gICA8ZGl2IGNsYXNzPVwibGlzdF9faXRlbXNcIj5cbiAgLy8gICAgIDxhcnRpY2xlIGNsYXNzPVwibGlzdF9faXRlbVwiPlxuICAvLyAgICAgICBMb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldCwgY29uc2VjdGV0dXIgYWRpcGlzY2luZyBlbGl0LiBGdXNjZSBkYXBpYnVzIG51bmMgc2VkIGRvbG9yIGltcGVyZGlldCBjb25zZWN0ZXR1ci4gUGVsbGVudGVzcXVlIGRhcGlidXMgb3JjaSBldCBuZXF1ZSB2dWxwdXRhdGUgY29udmFsbGlzLlxuICAvLyAgICAgPC9hcnRpY2xlPlxuICAvLyAgICAgPGFydGljbGUgY2xhc3M9XCJsaXN0X19pdGVtXCI+XG4gIC8vICAgICAgIExvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0LCBjb25zZWN0ZXR1ciBhZGlwaXNjaW5nIGVsaXQuIEZ1c2NlIGRhcGlidXMgbnVuYyBzZWQgZG9sb3IgaW1wZXJkaWV0IGNvbnNlY3RldHVyLiBQZWxsZW50ZXNxdWUgZGFwaWJ1cyBvcmNpIGV0IG5lcXVlIHZ1bHB1dGF0ZSBjb252YWxsaXMuXG4gIC8vICAgICA8L2FydGljbGU+XG4gIC8vICAgICA8YXJ0aWNsZSBjbGFzcz1cImxpc3RfX2l0ZW1cIj5cbiAgLy8gICAgICAgTG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQsIGNvbnNlY3RldHVyIGFkaXBpc2NpbmcgZWxpdC4gRnVzY2UgZGFwaWJ1cyBudW5jIHNlZCBkb2xvciBpbXBlcmRpZXQgY29uc2VjdGV0dXIuIFBlbGxlbnRlc3F1ZSBkYXBpYnVzIG9yY2kgZXQgbmVxdWUgdnVscHV0YXRlIGNvbnZhbGxpcy5cbiAgLy8gICAgIDwvYXJ0aWNsZT5cbiAgLy8gICA8L2Rpdj5cbiAgLy8gPC9kaXY+XG4gIC8vXG4gIC8vIFN0eWxlZ3VpZGUgQ29tcG9uZW50cyAtIExpc3RzIC0gMyBDb2x1bW5zXG5cbiAgJltkYXRhLWNvbHVtbnM9JzMnXSB7XG5cbiAgICAubGlzdF9faXRlbSB7XG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgICAgIHdpZHRoOiA0OC4xMjUlO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDMuNzUlO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgbWVkaWEoJz49ZGVza3RvcCcpIHtcbiAgICAgICAgd2lkdGg6IDMxLjkyOTgyNDU2MTQlO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDIuMTA1MjYzMTU3OSU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmxpc3RfX2l0ZW06bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgbWVkaWEoJz49ZGVza3RvcCcpIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAyLjEwNTI2MzE1NzklO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5saXN0X19pdGVtOm50aC1jaGlsZCgzbikge1xuICAgICAgQGluY2x1ZGUgbWVkaWEoJz49ZGVza3RvcCcpIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5saXN0X19pdGVtOm50aC1jaGlsZCgyKSB7XG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmxpc3RfX2l0ZW06bnRoLWNoaWxkKDMpIHtcbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PWRlc2t0b3AnKSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gIH1cblxuXG4gIC8vIDQgQ29sdW1uc1xuICAvL1xuICAvLyBEaXNwbGF5IGEgbGlzdCBpbiBhIDQtY29sdW1uIGxheW91dC5cbiAgLy9cbiAgLy8gTWFya3VwOlxuICAvLyA8ZGl2IGNsYXNzPVwibGlzdFwiIGRhdGEtY29sdW1ucz1cIjRcIj5cbiAgLy8gICA8aDIgY2xhc3M9XCJsaXN0X190aXRsZVwiPkxpc3QgdGl0bGU8L2gyPlxuICAvLyAgIDxkaXYgY2xhc3M9XCJsaXN0X19pdGVtc1wiPlxuICAvLyAgICAgPGFydGljbGUgY2xhc3M9XCJsaXN0X19pdGVtXCI+XG4gIC8vICAgICAgIExvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0LCBjb25zZWN0ZXR1ciBhZGlwaXNjaW5nIGVsaXQuIEZ1c2NlIGRhcGlidXMgbnVuYyBzZWQgZG9sb3IgaW1wZXJkaWV0IGNvbnNlY3RldHVyLiBQZWxsZW50ZXNxdWUgZGFwaWJ1cyBvcmNpIGV0IG5lcXVlIHZ1bHB1dGF0ZSBjb252YWxsaXMuXG4gIC8vICAgICA8L2FydGljbGU+XG4gIC8vICAgICA8YXJ0aWNsZSBjbGFzcz1cImxpc3RfX2l0ZW1cIj5cbiAgLy8gICAgICAgTG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQsIGNvbnNlY3RldHVyIGFkaXBpc2NpbmcgZWxpdC4gRnVzY2UgZGFwaWJ1cyBudW5jIHNlZCBkb2xvciBpbXBlcmRpZXQgY29uc2VjdGV0dXIuIFBlbGxlbnRlc3F1ZSBkYXBpYnVzIG9yY2kgZXQgbmVxdWUgdnVscHV0YXRlIGNvbnZhbGxpcy5cbiAgLy8gICAgIDwvYXJ0aWNsZT5cbiAgLy8gICAgIDxhcnRpY2xlIGNsYXNzPVwibGlzdF9faXRlbVwiPlxuICAvLyAgICAgICBMb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldCwgY29uc2VjdGV0dXIgYWRpcGlzY2luZyBlbGl0LiBGdXNjZSBkYXBpYnVzIG51bmMgc2VkIGRvbG9yIGltcGVyZGlldCBjb25zZWN0ZXR1ci4gUGVsbGVudGVzcXVlIGRhcGlidXMgb3JjaSBldCBuZXF1ZSB2dWxwdXRhdGUgY29udmFsbGlzLlxuICAvLyAgICAgPC9hcnRpY2xlPlxuICAvLyAgICAgPGFydGljbGUgY2xhc3M9XCJsaXN0X19pdGVtXCI+XG4gIC8vICAgICAgIExvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0LCBjb25zZWN0ZXR1ciBhZGlwaXNjaW5nIGVsaXQuIEZ1c2NlIGRhcGlidXMgbnVuYyBzZWQgZG9sb3IgaW1wZXJkaWV0IGNvbnNlY3RldHVyLiBQZWxsZW50ZXNxdWUgZGFwaWJ1cyBvcmNpIGV0IG5lcXVlIHZ1bHB1dGF0ZSBjb252YWxsaXMuXG4gIC8vICAgICA8L2FydGljbGU+XG4gIC8vICAgPC9kaXY+XG4gIC8vIDwvZGl2PlxuICAvL1xuICAvLyBTdHlsZWd1aWRlIENvbXBvbmVudHMgLSBMaXN0cyAtIDQgQ29sdW1uc1xuXG4gICZbZGF0YS1jb2x1bW5zPSc0J10ge1xuXG4gICAgLmxpc3RfX2l0ZW0ge1xuICAgICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgICAgICB3aWR0aDogNDguMTI1JTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAzLjc1JTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PWRlc2t0b3AnKSB7XG4gICAgICAgIHdpZHRoOiAyMy40MjEwNTI2MzE2JTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAyLjEwNTI2MzE1NzklO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5saXN0X19pdGVtOm50aC1jaGlsZChldmVuKSB7XG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PWRlc2t0b3AnKSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMi4xMDUyNjMxNTc5JTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubGlzdF9faXRlbTpudGgtY2hpbGQoNG4pIHtcbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PWRlc2t0b3AnKSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubGlzdF9faXRlbTpudGgtY2hpbGQoMikge1xuICAgICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5saXN0X19pdGVtOm50aC1jaGlsZCgzKSxcbiAgICAubGlzdF9faXRlbTpudGgtY2hpbGQoNCkge1xuICAgICAgQGluY2x1ZGUgbWVkaWEoJz49ZGVza3RvcCcpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgfVxuXG59XG5cblxuLy8gQ2hlY2tsaXN0XG4vL1xuLy8gRGlzcGxheSBhIGxpc3Qgd2l0aCBhIHNlcmllcyBvZiBjaGVjayBpY29ucyB1c2luZyB0aGUgPGNvZGU+Y2hlY2tsaXN0PC9jb2RlPiBjbGFzcy5cbi8vXG4vLyBNYXJrdXA6XG4vLyA8dWwgY2xhc3M9XCJjaGVja2xpc3RcIj5cbi8vICAgPGxpPlJlYWNoZWQgdGhlIGFnZSBvZiAxODwvbGk+XG4vLyAgIDxsaT5SZWdpc3RlcmVkIHRvIHZvdGU8L2xpPlxuLy8gICA8bGk+Vm90ZWQgaW4gdGhlIGVsZWN0aW9uPC9saT5cbi8vIDwvdWw+XG4vL1xuLy8gU3R5bGVndWlkZSBDb21wb25lbnRzIC0gQ2hlY2tsaXN0XG5cbi5jaGVja2xpc3Qge1xuICBwYWRkaW5nOiAwIDAgMCAzMnB4O1xuICBsaXN0LXN0eWxlOiBub25lO1xuXG4gIGxpIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNnB4O1xuICAgICAgbGVmdDogLTMycHg7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiAxNnB4O1xuICAgICAgaGVpZ2h0OiAxNnB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxNnB4O1xuICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWcvaWNvbnMvaV9jaGVjay1zaW1wbGUuc3ZnJykgbm8tcmVwZWF0IDUwJSA1MCUgLyAxMDAlIGF1dG87XG4gICAgfVxuICB9XG5cbn1cbiIsIi8vIE1ldGFcbi8vXG4vLyBBIHNldCBvZiBkYXRhIHRoYXQgZGVzY3JpYmVzIGFuZCBnaXZlcyBpbmZvcm1hdGlvbiBhYm91dCBvdGhlciBkYXRhLlxuLy9cbi8vIE1hcmt1cDpcbi8vIDxkaXYgY2xhc3M9XCJtZXRhXCI+UHJlc3MgcmVsZWFzZTwvZGl2PlxuLy9cbi8vIFN0eWxlZ3VpZGUgQ29tcG9uZW50cyAtIE1ldGFcblxuLm1ldGEge1xuICBmb250LXNpemU6IDE0cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjI1O1xuICBjb2xvcjogY29sb3IocHJpbWFyeSwgZ3JheSk7XG4gIG1hcmdpbi10b3A6IC01cHg7XG4gIG1hcmdpbi1yaWdodDogLTE2cHg7XG5cbiAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBsaW5lLWhlaWdodDogMS4yNTtcbiAgfVxuXG4gIHN0cm9uZyB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1yaWdodDogMTZweDtcbiAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgY29sb3I6IGNvbG9yKHByaW1hcnksIGJsYWNrKTtcbiAgfVxuXG4gIHNwYW4sIHRpbWUge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tcmlnaHQ6IDE2cHg7XG4gICAgbWFyZ2luLXRvcDogNXB4O1xuICB9XG5cbiAgLmJhZGdlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDE2cHg7XG4gICAgbWFyZ2luLXRvcDogNXB4O1xuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgfVxuXG5cbiAgLy8gU2VhcmNoIHJlc3VsdHMgbWV0YVxuICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgJi0tc2VhcmNoLXJlc3VsdHMge1xuICAgIG1hcmdpbi1ib3R0b206IDMycHg7XG4gIH1cbn1cbiIsIltkYXRhLXNpbmdsZT0nbmV3cyddIHtcblxuICBbaXRlbXByb3A9J21haW5FbnRpdHlPZlBhZ2UnXSAuem9uZTpmaXJzdC1jaGlsZCB7XG4gICAgbGluZS1oZWlnaHQ6IDI7XG4gIH1cblxufVxuIiwiLy8gRm9ybSBCbG9ja3Ncbi8vXG4vLyBBZGQgc3RydWN0dXJlIHRvIGEgZm9ybSBsYWJlbCBhbmQgaW5wdXQgd2l0aCB0aGUgPGNvZGU+LmZvcm1ibG9jazwvY29kZT4gY2xhc3MuXG4vL1xuLy8gU3R5bGVndWlkZSBDb21wb25lbnRzIC0gRm9ybSBCbG9ja3NcblxuXG4vLyBEZWZhdWx0XG4vL1xuLy8gRm9ybSBibG9ja3Mgc2hvdWxkIGFsd2F5cyBoYXZlIGEgPGNvZGU+LmZvcm1ibG9ja19fbGFiZWw8L2NvZGU+IGFuZCA8Y29kZT4uZm9ybWJsb2NrX19maWVsZDwvY29kZT4uXG4vL1xuLy8gTWFya3VwOlxuLy8gPGRpdiBjbGFzcz1cImZvcm1ibG9jayB7e21vZGlmaWVyX2NsYXNzfX1cIj5cbi8vICAgPGxhYmVsIGNsYXNzPVwiZm9ybWJsb2NrX19sYWJlbFwiIGZvcj1cImV4YW1wbGUtaW5wdXRcIj5FeGFtcGxlIGxhYmVsPC9sYWJlbD5cbi8vICAgPGlucHV0IGNsYXNzPVwiZm9ybWJsb2NrX19maWVsZFwiIHR5cGU9XCJ0ZXh0XCIgaWQ9XCJleGFtcGxlLWlucHV0XCIgcGxhY2Vob2xkZXI9XCJFeGFtcGxlIGlucHV0XCI+XG4vLyA8L2Rpdj5cbi8vXG4vLyAuZm9ybWJsb2NrLS1lcnJvciAgIC0gRXJyb3Jcbi8vXG4vLyBXZWlnaHQ6IC0xMFxuLy9cbi8vIFN0eWxlZ3VpZGUgQ29tcG9uZW50cyAtIEZvcm0gQmxvY2tzIC0gRGVmYXVsdFxuXG4uZm9ybWJsb2NrIHtcbiAgKyAuZm9ybWJsb2NrIHtcbiAgICBtYXJnaW4tdG9wOiAzMnB4O1xuICB9XG5cblxuICAvLyBmb3JtYmxvY2sgbGFiZWxzXG4gICZfX2xhYmVsIHt9XG5cblxuICAvLyBmb3JtYmxvY2sgY2xlYXJcbiAgJl9fY2xlYXIge31cblxuXG4gIC8vIEFkZC1vbiBBY3Rpb25cbiAgLy9cbiAgLy8gQWRkIGEgcHJlZml4IG9yIHN1ZmZpeCBhY3Rpb24gdG8geW91ciBmaWVsZCB3aXRoIHRoZSA8Y29kZT4uZm9ybWJsb2NrX19maWVsZC0taW5saW5lPC9jb2RlPiBtb2RpZmllciBhbmQgdGhlIGFwcHJvcHJpYXRlIGJ1dHRvbi5cbiAgLy9cbiAgLy8gTWFya3VwOlxuICAvLyA8ZGl2IGNsYXNzPVwiZm9ybWJsb2NrXCI+XG4gIC8vICAgPGxhYmVsIGNsYXNzPVwiZm9ybWJsb2NrX19sYWJlbFwiIGZvcj1cImV4YW1wbGUtaW5wdXRcIj5FeGFtcGxlIGxhYmVsPC9sYWJlbD5cbiAgLy8gICA8ZGl2IGNsYXNzPVwiZm9ybWJsb2NrX19maWVsZCBmb3JtYmxvY2tfX2ZpZWxkLS1pbmxpbmVcIj5cbiAgLy8gICAgIDxpbnB1dCB0eXBlPVwic3VibWl0XCIgdmFsdWU9XCJCdXR0b25cIiAvPlxuICAvLyAgICAgPGlucHV0IHR5cGU9XCJ0ZXh0XCIgaWQ9XCJleGFtcGxlLWlucHV0XCIgcGxhY2Vob2xkZXI9XCIwLjAwXCI+XG4gIC8vICAgPC9kaXY+XG4gIC8vIDwvZGl2PlxuICAvLyA8ZGl2IGNsYXNzPVwiZm9ybWJsb2NrXCI+XG4gIC8vICAgPGxhYmVsIGNsYXNzPVwiZm9ybWJsb2NrX19sYWJlbFwiIGZvcj1cImV4YW1wbGUtaW5wdXRcIj5FeGFtcGxlIGxhYmVsPC9sYWJlbD5cbiAgLy8gICA8ZGl2IGNsYXNzPVwiZm9ybWJsb2NrX19maWVsZCBmb3JtYmxvY2tfX2ZpZWxkLS1pbmxpbmVcIj5cbiAgLy8gICAgIDxpbnB1dCB0eXBlPVwidGV4dFwiIGlkPVwiZXhhbXBsZS1pbnB1dFwiIHBsYWNlaG9sZGVyPVwiMC4wMFwiPlxuICAvLyAgICAgPGlucHV0IHR5cGU9XCJzdWJtaXRcIiB2YWx1ZT1cIkJ1dHRvblwiIC8+XG4gIC8vICAgPC9kaXY+XG4gIC8vIDwvZGl2PlxuICAvL1xuICAvLyBTdHlsZWd1aWRlIENvbXBvbmVudHMgLSBGb3JtIEJsb2NrcyAtIEFkZC1vbiBBY3Rpb25cblxuICAmX19hZGRvbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTBweDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAwO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgY29sb3I6IGNvbG9yKHByaW1hcnksIGdyYXkpO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge31cblxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHt9XG4gIH1cblxuICAvLyBmb3JtYmxvY2sgZmllbGRzXG4gICZfX2ZpZWxkIHtcblxuICAgIC8vIExhYmVsIFByZWZpeFxuICAgIC8vXG4gICAgLy8gQWRkIGEgcHJlZml4IGxhYmVsIHRvIHlvdXIgZmllbGQgd2l0aCB0aGUgPGNvZGU+LmZvcm1ibG9ja19fZmllbGQtLXByZWZpeDwvY29kZT4gbW9kaWZpZXIgYW5kIHRoZSA8Y29kZT4uZm9ybWJsb2NrX19hZGRvbjwvY29kZT4gYmxvY2suXG4gICAgLy9cbiAgICAvLyBNYXJrdXA6XG4gICAgLy8gPGRpdiBjbGFzcz1cImZvcm1ibG9ja1wiPlxuICAgIC8vICAgPGxhYmVsIGNsYXNzPVwiZm9ybWJsb2NrX19sYWJlbFwiIGZvcj1cImV4YW1wbGUtaW5wdXRcIj5FeGFtcGxlIGxhYmVsPC9sYWJlbD5cbiAgICAvLyAgIDxkaXYgY2xhc3M9XCJmb3JtYmxvY2tfX2ZpZWxkIGZvcm1ibG9ja19fZmllbGQtLXByZWZpeFwiPlxuICAgIC8vICAgICA8c3BhbiBjbGFzcz1cImZvcm1ibG9ja19fYWRkb25cIj4kPC9zcGFuPlxuICAgIC8vICAgICA8aW5wdXQgdHlwZT1cInRleHRcIiBpZD1cImV4YW1wbGUtaW5wdXRcIiBwbGFjZWhvbGRlcj1cIjAuMDBcIj5cbiAgICAvLyAgIDwvZGl2PlxuICAgIC8vIDwvZGl2PlxuICAgIC8vXG4gICAgLy8gU3R5bGVndWlkZSBDb21wb25lbnRzIC0gRm9ybSBCbG9ja3MgLSBMYWJlbCBQcmVmaXhcblxuICAgICYtLXByZWZpeCB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgIGlucHV0IHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAzMnB4O1xuICAgICAgfVxuICAgICAgLmZvcm1ibG9ja19fYWRkb24ge1xuICAgICAgICBsZWZ0OiAxNnB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIExhYmVsIFN1ZmZpeFxuICAgIC8vXG4gICAgLy8gQWRkIGEgc3VmZml4IGxhYmVsIHRvIHlvdXIgZmllbGQgd2l0aCB0aGUgPGNvZGU+LmZvcm1ibG9ja19fZmllbGQtLXN1ZmZpeDwvY29kZT4gbW9kaWZpZXIgYW5kIHRoZSA8Y29kZT4uZm9ybWJsb2NrX19hZGRvbjwvY29kZT4gYmxvY2suXG4gICAgLy9cbiAgICAvLyBNYXJrdXA6XG4gICAgLy8gPGRpdiBjbGFzcz1cImZvcm1ibG9ja1wiPlxuICAgIC8vICAgPGxhYmVsIGNsYXNzPVwiZm9ybWJsb2NrX19sYWJlbFwiIGZvcj1cImV4YW1wbGUtaW5wdXRcIj5FeGFtcGxlIGxhYmVsPC9sYWJlbD5cbiAgICAvLyAgIDxkaXYgY2xhc3M9XCJmb3JtYmxvY2tfX2ZpZWxkIGZvcm1ibG9ja19fZmllbGQtLXN1ZmZpeFwiPlxuICAgIC8vICAgICA8aW5wdXQgdHlwZT1cInRleHRcIiBpZD1cImV4YW1wbGUtaW5wdXRcIiBwbGFjZWhvbGRlcj1cIjAuMDBcIj5cbiAgICAvLyAgICAgPHNwYW4gY2xhc3M9XCJmb3JtYmxvY2tfX2FkZG9uXCI+JTwvc3Bhbj5cbiAgICAvLyAgIDwvZGl2PlxuICAgIC8vIDwvZGl2PlxuICAgIC8vXG4gICAgLy8gU3R5bGVndWlkZSBDb21wb25lbnRzIC0gRm9ybSBCbG9ja3MgLSBMYWJlbCBTdWZmaXhcblxuICAgICYtLXN1ZmZpeCB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgIGlucHV0IHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMzJweDtcbiAgICAgIH1cbiAgICAgIC5mb3JtYmxvY2tfX2FkZG9uIHtcbiAgICAgICAgcmlnaHQ6IDE2cHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gaW5saW5lIGZvcm1ibG9jayBmaWVsZHNcbiAgICAmLS1pbmxpbmUge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgZGlzcGxheTogZmxleDtcblxuICAgICAgYnV0dG9uLCBbdHlwZT0nc3VibWl0J10sIC5idXR0b24ge1xuICAgICAgICB3aWR0aDogYXV0bztcblxuICAgICAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogOHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDhweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICB9XG5cblxuICAvLyBkYXRlcGlja2VyXG4gIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAmLS1kYXRlcGlja2VyIHtcblxuICAgIC5mb3JtYmxvY2tfX2ZpZWxkIHtcbiAgICAgIGlucHV0IHtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIGZsZXgtZ3JvdzogMjtcbiAgICAgIH1cbiAgICB9XG5cbiAgfVxuXG5cbiAgLy8gSGVscGVyIFRleHRcbiAgLy9cbiAgLy8gRm9ybSBibG9ja3MgY2FuIG9wdGlvbmFsbHkgZGlzcGxheSBoZWxwZXIgdGV4dCB3aXRoIHRoZSA8Y29kZT4uZm9ybWJsb2NrX19ub3RpY2U8L2NvZGU+LlxuICAvL1xuICAvLyBNYXJrdXA6XG4gIC8vIDxkaXYgY2xhc3M9XCJmb3JtYmxvY2tcIj5cbiAgLy8gICA8bGFiZWwgY2xhc3M9XCJmb3JtYmxvY2tfX2xhYmVsXCIgZm9yPVwiZXhhbXBsZS1pbnB1dFwiPkV4YW1wbGUgbGFiZWw8L2xhYmVsPlxuICAvLyAgIDxpbnB1dCBjbGFzcz1cImZvcm1ibG9ja19fZmllbGRcIiB0eXBlPVwidGV4dFwiIGlkPVwiZXhhbXBsZS1pbnB1dFwiIHBsYWNlaG9sZGVyPVwiRXhhbXBsZSBpbnB1dFwiPlxuICAvLyAgIDxzbWFsbCBjbGFzcz1cImZvcm1ibG9ja19fbm90aWNlXCI+V2UnbGwgbmV2ZXIgc2hhcmUgeW91ciBlbWFpbCB3aXRoIGFueW9uZSBlbHNlLjwvc21hbGw+XG4gIC8vIDwvZGl2PlxuICAvL1xuICAvLyBTdHlsZWd1aWRlIENvbXBvbmVudHMgLSBGb3JtIEJsb2NrcyAtIEhlbHBlciBUZXh0XG5cbiAgJl9fbm90aWNlIHtcbiAgICBjb2xvcjogY29sb3IocHJpbWFyeSwgZ3JheSk7XG4gIH1cblxuICAvLyBmb3JtYmxvY2sgd3JhcHBlclxuICAmX193cmFwcGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cblxuXG4gIC8vIGZvcm1ibG9jayBzaXplc1xuICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgJltkYXRhLXNpemU9J21kJ10ge1xuICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICAgIHdpZHRoOiAzMDBweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPj1sYXB0b3AnKSB7XG4gICAgICB3aWR0aDogNDEycHg7XG4gICAgfVxuICB9XG5cblxuICAvLyBmb3JtYmxvY2sgbGltaXRcbiAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICZfX2xpbWl0IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAxNnB4O1xuICAgIHJpZ2h0OiAxNnB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKHByaW1hcnksIHdoaXRlKTtcbiAgICBib3gtc2hhZG93OiAwIDAgMCA4cHggY29sb3IocHJpbWFyeSwgd2hpdGUpO1xuICAgIGNvbG9yOiBjb2xvcihwcmltYXJ5LCBncmF5KTtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgfVxuICB9XG5cblxuXG4gIC8vIHJlcXVpcmVkIGZvcm1ibG9ja3NcbiAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICYtLXJlcXVpcmVkIHt9XG5cblxuICAvLyBpbnZhbGlkIGZvcm1ibG9ja3NcbiAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICYtLWVycm9yIHtcblxuICAgIC5mb3JtYmxvY2tfX2xhYmVsIHtcbiAgICAgIGNvbG9yOiBjb2xvcihzZWNvbmRhcnksIHJlZCk7XG4gICAgfVxuXG4gICAgLmZvcm1ibG9ja19fZmllbGQge1xuICAgICAgYm9yZGVyLWNvbG9yOiBjb2xvcihzZWNvbmRhcnksIHJlZCk7XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCA0cHggcmdiYShjb2xvcihzZWNvbmRhcnksIHJlZCksIC4xNik7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmZvcm1ibG9ja19fbm90aWNlIHtcbiAgICAgIGNvbG9yOiBjb2xvcihzZWNvbmRhcnksIHJlZCk7XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgIH1cblxuICB9XG5cbn1cbiIsIi5mb3JtYWN0aW9uLFxuLmZvcm0tYWN0aW9ucyB7ICBcbiAgbWFyZ2luLXRvcDogMzJweDtcblxuICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgbWFyZ2luLXRvcDogNjRweDtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKCc+PWRlc2t0b3AnKSB7XG4gICAgbWFyZ2luLXRvcDogMTI4cHg7XG4gIH1cbn1cbiIsIi8vIENvbGxhcHNlXG4vL1xuLy8gPHNwYW4gY2xhc3M9XCJzZy1mbGFnIHNnLWZsYWctanNcIj5KUzwvc3Bhbj4gQWxsb3dzIGNvbnRlbnQgdG8gYmUgY29sbGFwc2VkIGFuZCBleHBhbmRlZCB3aXRoIHVzZXIgaW50ZXJhY3Rpb24uIFRoaXMgY29tcG9uZW50IHJlcXVpcmVzIDxjb2RlPmNvbGxhcHNlLmpzPC9jb2RlPiBmb3IgZGlzbWlzcyBmdW5jdGlvbmFsaXR5LlxuLy9cbi8vIE1hcmt1cDpcbi8vIDxkaXYgY2xhc3M9XCJwYW5lbC1ncm91cCBwYW5lbC1ncm91cC0tYWNjb3JkaW9uXCIgcm9sZT1cInRhYmxpc3RcIiBhcmlhLW11bHRpc2VsZWN0YWJsZT1cInRydWVcIj5cbi8vICAgPGRpdiBjbGFzcz1cInBhbmVsXCI+XG4vLyAgICAgPGRpdiBpZD1cImhlYWRpbmdfX3BhbmVsLXNhbXBsZVwiIGNsYXNzPVwicGFuZWxfX2hlYWRpbmdcIiByb2xlPVwidGFiXCI+XG4vLyAgICAgICA8aDQgY2xhc3M9XCJwYW5lbF9fdGl0bGVcIj48YSByb2xlPVwiYnV0dG9uXCIgZGF0YS10b2dnbGU9XCJjb2xsYXBzZVwiIGhyZWY9XCIjcGFuZWxfX2NvbnRlbnQtc2FtcGxlXCIgYXJpYS1leHBhbmRlZD1cInRydWVcIiBhcmlhLWNvbnRyb2xzPVwicGFuZWxfX2NvbnRlbnQtc2FtcGxlXCI+Q29sbGFwc2UgR3JvdXA8L2E+PC9oND5cbi8vICAgICA8L2Rpdj5cbi8vICAgICA8ZGl2IGlkPVwicGFuZWxfX2NvbnRlbnQtc2FtcGxlXCIgY2xhc3M9XCJwYW5lbF9fY29udGVudFwiIHJvbGU9XCJ0YWJwYW5lbFwiIGFyaWEtaGlkZGVuPVwiZmFsc2VcIj5cbi8vICAgICAgIEFuaW0gcGFyaWF0dXIgY2xpY2hlIHJlcHJlaGVuZGVyaXQsIGVuaW0gZWl1c21vZCBoaWdoIGxpZmUgYWNjdXNhbXVzIHRlcnJ5IHJpY2hhcmRzb24gYWQgc3F1aWQuIDMgd29sZiBtb29uIG9mZmljaWEgYXV0ZSwgbm9uIGN1cGlkYXRhdCBza2F0ZWJvYXJkIGRvbG9yIGJydW5jaC4gRm9vZCB0cnVjayBxdWlub2EgbmVzY2l1bnQgbGFib3J1bSBlaXVzbW9kLiBCcnVuY2ggMyB3b2xmIG1vb24gdGVtcG9yLCBzdW50IGFsaXF1YSBwdXQgYSBiaXJkIG9uIGl0IHNxdWlkIHNpbmdsZS1vcmlnaW4gY29mZmVlIG51bGxhIGFzc3VtZW5kYSBzaG9yZWRpdGNoIGV0LiBOaWhpbCBhbmltIGtlZmZpeWVoIGhlbHZldGljYSwgY3JhZnQgYmVlciBsYWJvcmUgd2VzIGFuZGVyc29uIGNyZWQgbmVzY2l1bnQgc2FwaWVudGUgZWEgcHJvaWRlbnQuIEFkIHZlZ2FuIGV4Y2VwdGV1ciBidXRjaGVyIHZpY2UgbG9tby4gTGVnZ2luZ3Mgb2NjYWVjYXQgY3JhZnQgYmVlciBmYXJtLXRvLXRhYmxlLCByYXcgZGVuaW0gYWVzdGhldGljIHN5bnRoIG5lc2NpdW50IHlvdSBwcm9iYWJseSBoYXZlbid0IGhlYXJkIG9mIHRoZW0gYWNjdXNhbXVzIGxhYm9yZSBzdXN0YWluYWJsZSBWSFMuXG4vLyAgICAgPC9kaXY+XG4vLyAgIDwvZGl2PlxuLy8gPC9kaXY+XG4vL1xuLy8gU3R5bGVndWlkZSBDb21wb25lbnRzIC0gQ29sbGFwc2VcblxuLnBhbmVsLWdyb3VwIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKGNvbG9yKHByaW1hcnksIGJsYWNrKSwgLjEpO1xuXG4gIC8vIFBhbmVsIGdyb3VwIHRvZ2dsZVxuICAmX190b2dnbGUge1xuICAgIEBleHRlbmQgLmJ1dHRvbjtcbiAgICBAZXh0ZW5kIC5idXR0b24tLWxpbms7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIG1hcmdpbi1ib3R0b206IDE2cHg7XG4gIH1cblxuICAucGFuZWwge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgdG9wOiBhdXRvO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgY2xlYXI6IHJpZ2h0O1xuXG4gICAgLy8gUGFuZWwgaGVhZGluZ1xuICAgICZfX2hlYWRpbmcge1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoY29sb3IocHJpbWFyeSwgYmxhY2spLCAuMSk7XG4gICAgfVxuXG4gICAgLy8gUGFuZWwgdGl0bGVzXG4gICAgJl9fdGl0bGUge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICAgICAgZm9udC1zaXplOiAxOXB4O1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgbWVkaWEoJz49bGFwdG9wJykge1xuICAgICAgICBmb250LXNpemU6IDIxcHg7XG4gICAgICB9XG5cbiAgICAgIGEge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwYWRkaW5nOiAxNnB4IDgwcHggMTZweCAwO1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICBjb2xvcjogY29sb3IocHJpbWFyeSwgYmxhY2spO1xuXG4gICAgICAgIC8vIGljb25cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgIHJpZ2h0OiAzMnB4O1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHdpZHRoOiAxNnB4O1xuICAgICAgICAgIGhlaWdodDogMTZweDtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAtOHB4O1xuICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1MCU7XG4gICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDE2cHggYXV0bztcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIGhvdmVyIHN0YXRlXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoY29sb3IocHJpbWFyeSwgZ3JheSksIC4wNSk7XG4gICAgICAgICAgY29sb3I6IGxpZ2h0ZW4oY29sb3IocHJpbWFyeSwgYmx1ZSksIDEwJSk7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBpbmFjdGl2ZSBzdGF0ZVxuICAgICAgICAmW2FyaWEtZXhwYW5kZWQ9J2ZhbHNlJ106YWZ0ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1nL2ljb25zL2lfYWRkLnN2ZycpO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gYWN0aXZlIHN0YXRlXG4gICAgICAgICZbYXJpYS1leHBhbmRlZD0ndHJ1ZSddOmFmdGVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy9pY29ucy9pX3JlbW92ZS5zdmcnKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFBhbmVsIGNvbnRlbnRcbiAgICAmX19jb250ZW50IHtcblxuICAgICAgLy8gaW5hY3RpdmUgc3RhdGVcbiAgICAgICZbYXJpYS1oaWRkZW49J3RydWUnXSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgIC8vIGFjdGl2ZSBzdGF0ZVxuICAgICAgJlthcmlhLWhpZGRlbj0nZmFsc2UnXSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwYWRkaW5nOiAzMnB4IDA7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgICAgICAgIHBhZGRpbmc6IDQ4cHggMDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICAgICAgICBwYWRkaW5nOiA2NHB4IDA7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gbGlua3MgbGlzdCBpbnNpZGUgY29sbGFwc2VcbiAgICAgIC5saW5rcyB7IG1hcmdpbjogMDsgfVxuICAgIH1cbiAgfVxufVxuIiwiLmZvcm0ge1xuICB3aWR0aDogMTAwJTtcblxuICAvLyBEZWZhdWx0c1xuICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgJl9fdGl0bGUge1xuICAgIG1hcmdpbjogMCAwIDE2cHg7XG4gICAgZm9udDogNzAwIDE5cHgvMS4yNSAkZm9udC1zZWNvbmRhcnk7XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgICBmb250LXNpemU6IDIxcHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEoJz49bGFwdG9wJykge1xuICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgIH1cbiAgfVxuXG4gICZfX2Rlc2NyaXB0aW9uIHtcbiAgICBtYXJnaW46IDAgMCAzMnB4O1xuICB9XG5cbiAgLy8gU2Vjb25kYXJ5IHRpdGxlc1xuICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLnRpdGxlLnRpdGxlLS1zZWNvbmRhcnkge1xuICAgIG1hcmdpbi10b3A6IDMycHg7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgICBtYXJnaW4tdG9wOiA0OHB4O1xuICAgIH1cbiAgICBAaW5jbHVkZSBtZWRpYSgnPj1sYXB0b3AnKSB7XG4gICAgICBtYXJnaW4tdG9wOiA2NHB4O1xuICAgIH1cblxuICAgICY6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cbiAgfVxuXG4gIC8vIEZpZWxkc2V0cyB3aXRoIGxlZ2VuZHNcbiAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC5maWVsZHNldCB7XG4gICAgbWFyZ2luLXRvcDogMzJweDtcblxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICAgIG1hcmdpbi10b3A6IDQ4cHg7XG4gICAgfVxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICAgIG1hcmdpbi10b3A6IDY0cHg7XG4gICAgfVxuXG4gICAgJjpmaXJzdC1vZi10eXBlIHtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgfVxuXG4gICAgLnRpdGxlLnRpdGxlLS1zZWNvbmRhcnkge1xuICAgICAgbWFyZ2luLXRvcDogMDtcblxuICAgICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgbWVkaWEoJz49bGFwdG9wJykge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgfVxuXG4gICAgfVxuICB9XG5cbiAgPiAuZmllbGRzZXQ6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cblxuICAvLyBGaWVsZCBkaXZpZGVyc1xuICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgaHIud2ViZm9ybS1ob3Jpem9udGFsLXJ1bGUge1xuICAgIG1hcmdpbjogMzJweCAwO1xuICB9XG5cbiAgLy8gU2VhcmNoIGZvcm1cbiAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICYtLXNlYXJjaCB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiA2NHB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDY0cHgpO1xuICAgIGhlaWdodDogNjhweDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHotaW5kZXg6IDE7XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPGxhcHRvcCcsICdpZTExJykge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICAgIGxlZnQ6IDgwcHg7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gODBweCk7XG4gICAgICBoZWlnaHQ6IDg0cHg7XG4gICAgfVxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHRvcDogYXV0bztcbiAgICAgIGxlZnQ6IGF1dG87XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG5cbiAgICAvLyBzZWFyY2ggbGFiZWxcbiAgICBsYWJlbCB7XG4gICAgICBAaW5jbHVkZSBoaWRlLW9mZi1zY3JlZW47XG4gICAgfVxuXG4gICAgLy8gc2VhcmNoIGlucHV0XG4gICAgW3R5cGU9J3NlYXJjaCddIHtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKHByaW1hcnksIHdoaXRlKTtcbiAgICAgIHBhZGRpbmc6IDAgMTZweCAwIDY0cHg7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPj1sYXB0b3AnKSB7XG4gICAgICAgIC8vbWluLXdpZHRoOiA0ODBweDtcbiAgICAgICAgb3JkZXI6IDI7XG4gICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgJGJhc2UtYW5pbWF0aW9uLXNwZWVkICRiYXNlLWFuaW1hdGlvbi1lYXNpbmc7XG4gICAgICB9XG5cbiAgICAgIC8vIGZvY3VzIHN0YXRlXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgNHB4IGNvbG9yKHNlY29uZGFyeSwgZ29sZCk7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJz49bGFwdG9wJykge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoY29sb3IocHJpbWFyeSwgZ3JheSksIC4wNSk7XG4gICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIHNlYXJjaCBzdWJtaXRcbiAgICBbdHlwZT0nc3VibWl0J10ge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogMTZweDtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgcGFkZGluZzogMTZweDtcbiAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1nL2ljb25zL2lfc2VhcmNoLnN2ZycpIG5vLXJlcGVhdCA1MCUgNTAlIC8gMTZweCBhdXRvO1xuICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgIGZvbnQtc2l6ZTogMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgICAgYm9yZGVyOiAwO1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPGxhcHRvcCcsICdpZTExJykge1xuICAgICAgICB0b3A6IDA7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBvcmRlcjogMTtcbiAgICAgICAgLy8gSUUgMTEgZml4XG4gICAgICAgIEBtZWRpYSBhbGwgYW5kICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSksICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gaG92ZXIgc3RhdGVcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIH1cblxuICAgICAgLy8gZm9jdXMgc3RhdGVcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBvdXRsaW5lOiAwO1xuICAgICAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAzcHggY29sb3Ioc2Vjb25kYXJ5LCBnb2xkKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBTZWFyY2ggbG9jYXRpb24gZm9ybVxuICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgJi0tc2VhcmNoLWxvY2F0aW9uIHtcbiAgICAuZm9ybWJsb2NrIHtcbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc8bGFwdG9wJykge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBTZWFyY2ggZmlsdGVyc1xuICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgJi0tc2VhcmNoLWZpbHRlcnMge1xuICAgIHBhZGRpbmc6IDMycHggMCAwO1xuICAgIG1hcmdpbi1ib3R0b206IDMycHg7XG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIGNvbG9yKHByaW1hcnksIG9mZi13aGl0ZSk7XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA0OHB4O1xuICAgIH1cbiAgICBAaW5jbHVkZSBtZWRpYSgnPj1sYXB0b3AnKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA2NHB4O1xuICAgIH1cblxuICAgIC8vIGZpcnN0IGZvcm1ibG9ja1xuICAgIC53cmFwcGVyIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDMycHg7XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNDhweDtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNjRweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBzZWFyY2ggY29udGFpbmVyXG4gICAgLndyYXBwZXIgLmZvcm1ibG9jayB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgfVxuXG4gICAgLy8gc2VhcmNoIHN1Ym1pdFxuICAgIC53cmFwcGVyIGJ1dHRvbiB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIGxlZnQ6IDhweDtcbiAgICAgIHdpZHRoOiAzMnB4O1xuICAgICAgaGVpZ2h0OiAzMnB4O1xuICAgICAgcGFkZGluZzogMTZweDtcbiAgICAgIG1hcmdpbi10b3A6IC0xNnB4O1xuICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWcvaWNvbnMvaV9zZWFyY2guc3ZnJykgbm8tcmVwZWF0IDUwJSA1MCUgLyAxNnB4IGF1dG87XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgZm9udC1zaXplOiAwO1xuICAgICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgICBib3JkZXI6IDA7XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBvcmRlcjogMTtcbiAgICAgIH1cblxuICAgICAgLy8gaG92ZXIgc3RhdGVcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIH1cblxuICAgICAgLy8gZm9jdXMgc3RhdGVcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBvdXRsaW5lOiAwO1xuICAgICAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAzcHggY29sb3Ioc2Vjb25kYXJ5LCBnb2xkKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBzZWFyY2ggaW5wdXRcbiAgICBpbnB1dFt0eXBlPSd0ZXh0J10ge1xuICAgICAgcGFkZGluZy1sZWZ0OiA0OHB4O1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPj1sYXB0b3AnKSB7XG4gICAgICAgIHdpZHRoOiBwZXJjZW50YWdlKDQxMC8xMjgwKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBmb3JtYmxvY2sgbGFiZWxzXG4gICAgLmZvcm1ibG9ja19fbGFiZWwge1xuICAgICAgQGV4dGVuZCAuc3Itb25seTtcbiAgICB9XG5cbiAgICAvLyBzd2lwZXItY29udGFpbmVyXG4gICAgLnN3aXBlci1jb250YWluZXIge1xuICAgICAgdG9wOiAycHg7IC8vIG9mZnNldCBib3R0b20gYm9yZGVyXG4gICAgICBwYWRkaW5nOiAwIDMycHg7XG4gICAgICBtYXJnaW4tdG9wOiAtMnB4OyAvLyBvZmZzZXQgYm90dG9tIGJvcmRlclxuXG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgICAgIHBhZGRpbmc6IDAgNjRweDtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PWRlc2t0b3Bfd2lkZScpIHtcbiAgICAgICAgd2lkdGg6IDExNDBweDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PTE2ODBweCcpIHtcbiAgICAgICAgd2lkdGg6IDEyODBweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBvcHRpb25zIGNvbnRhaW5lclxuICAgIC5yYWRpb3Mge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAvLyBvcHRpb25zXG4gICAgLnJhZGlvcyAub3B0aW9uIHtcbiAgICAgIG1hcmdpbjogMCAzMnB4IDAgMDtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSk7XG4gICAgfVxuXG4gICAgLy8gb3B0aW9uIGxhYmVsc1xuICAgIC5vcHRpb25fX2xhYmVsIHtcbiAgICAgIHBhZGRpbmc6IDAgMCAxNnB4O1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAgICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgICAgICBmb250LXNpemU6IDE5cHg7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPj1sYXB0b3AnKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjFweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBvcHRpb24gaWNvbnNcbiAgICAub3B0aW9uX19pY29uIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLy8gY2hlY2tlZCBvcHRpb25zXG4gICAgLm9wdGlvbl9faW5wdXQ6Y2hlY2tlZCArIC5vcHRpb25fX2xhYmVsIHtcbiAgICAgIGJveC1zaGFkb3c6IGluc2V0IDAgLTJweCAwIDAgY29sb3IocHJpbWFyeSwgYmxhY2spO1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICB9XG5cbiAgfVxuXG4gIC8vIHJlcXVpcmVkIHN0eWxlXG4gICYtcmVxdWlyZWQge1xuICAgIG1hcmdpbi1yaWdodDogM3B4O1xuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyonO1xuICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgY29sb3I6IGNvbG9yKHNlY29uZGFyeSwgcmVkKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEFsZXJ0c1xuLy9cbi8vIFByb3ZpZGUgY29udGV4dHVhbCBmZWVkYmFjayBtZXNzYWdlcyBmb3IgdHlwaWNhbCB1c2VyIGFjdGlvbnMgd2l0aCB0aGUgaGFuZGZ1bCBvZiBhdmFpbGFibGUgYW5kIGZsZXhpYmxlIGFsZXJ0IG1lc3NhZ2VzLlxuLy9cbi8vIFN0eWxlZ3VpZGUgQ29tcG9uZW50cyAtIEFsZXJ0c1xuXG5cbi8vIElubGluZSBBbGVydHNcbi8vXG4vLyBNYXJrdXA6XG4vLyA8ZGl2IGNsYXNzPVwiYWxlcnQge3ttb2RpZmllcl9jbGFzc319XCIgcm9sZT1cImFsZXJ0XCI+PHA+VGhpcyByZXNvdXJjZSBoYXMgYmVlbiBkaXNjb250aW51ZWQuIE9uIEF1Z3VzdCAxMiwgMjAxNywgd2UgYXJjaGl2ZWQgRm9ybSAjNDE0NjBCIGFuZCBhcmUgbm8gbG9uZ2VyIGFjY2VwdGluZyB0aGlzIHJlc291cmNlLiBXZSBoYXZlIHJlcGxhY2VkIHRoaXMgcmVzb3VyY2Ugd2l0aCA8YSBocmVmPVwiI1wiPkZvcm0gIzQxNDYwQzwvYT4uPC9wPjwvZGl2PlxuLy9cbi8vIC5hbGVydC0tcHJpbWFyeSAgICAtIFByaW1hcnlcbi8vIC5hbGVydC0tc2Vjb25kYXJ5ICAtIFNlY29uZGFyeVxuLy8gLmFsZXJ0LS1icmVha2luZyAgIC0gQnJlYWtpbmdcbi8vXG4vLyBTdHlsZWd1aWRlIENvbXBvbmVudHMgLSBBbGVydHMgLSBJbmxpbmUgQWxlcnRzXG5cblxuLy8gR2xvYmFsIEFsZXJ0c1xuLy9cbi8vIDxzcGFuIGNsYXNzPVwic2ctZmxhZyBzZy1mbGFnLWpzXCI+SlM8L3NwYW4+IFRoaXMgY29tcG9uZW50IHJlcXVpcmVzIDxjb2RlPmFsZXJ0cy5qczwvY29kZT4gZm9yIGRpc21pc3MgZnVuY3Rpb25hbGl0eS5cbi8vXG4vLyBNYXJrdXA6XG4vLyA8ZGl2IGNsYXNzPVwiYWxlcnQgYWxlcnQtLWdsb2JhbFwiIHJvbGU9XCJhbGVydFwiPlxuLy8gICA8ZGl2IGNsYXNzPVwid3JhcHBlclwiPlxuLy8gICAgIDxkaXYgY2xhc3M9XCJhbGVydF9faXRlbVwiPlxuLy8gICAgICAgPGRpdiBjbGFzcz1cImFsZXJ0X19jYXRlZ29yeVwiPjxzcGFuIGNsYXNzPVwiYmFkZ2UgYmFkZ2UtLWRhbmdlclwiPkNvdXJ0IENsb3NpbmdzPC9zcGFuPjwvZGl2PlxuLy8gICAgICAgPGRpdiBjbGFzcz1cImFsZXJ0X19tZXNzYWdlXCI+XG4vLyAgICAgICAgIDxzcGFuPjxzdHJvbmc+NyBjb3VudGllczwvc3Ryb25nPiBhcmUgY3VycmVudGx5IHJlcG9ydGluZyBjbG9zaW5ncyBhbmQvb3IgYWR2aXNvcmllczwvc3Bhbj5cbi8vICAgICAgICAgPGEgY2xhc3M9XCJhbGVydF9fbGlua1wiIGhyZWY9XCIjXCI+VmlldyBhY3RpdmUgY2xvc2luZ3M8L2E+XG4vLyAgICAgICA8L2Rpdj5cbi8vICAgICA8L2Rpdj5cbi8vICAgICA8ZGl2IGNsYXNzPVwiYWxlcnRfX2l0ZW1cIj5cbi8vICAgICAgIDxkaXYgY2xhc3M9XCJhbGVydF9fY2F0ZWdvcnlcIj48c3BhbiBjbGFzcz1cImJhZGdlIGJhZGdlLS1pbmZvXCI+TmV3cyBBbGVydDwvc3Bhbj48L2Rpdj5cbi8vICAgICAgIDxkaXYgY2xhc3M9XCJhbGVydF9fbWVzc2FnZVwiPlxuLy8gICAgICAgICA8c3Bhbj5DaGllZiBKdXN0aWNlIE1hcnRpbiBkZWxpdmVycyBTdGF0ZSBvZiB0aGUgSnVkaWNpYXJ5IEFkZHJlc3MgdG8gTkMgQmFyIEFzc29jaWF0aW9uPC9zcGFuPlxuLy8gICAgICAgICA8YSBjbGFzcz1cImFsZXJ0X19saW5rXCIgaHJlZj1cIiNcIj5SZWFkIG5ld3MgYXJ0aWNsZTwvYT5cbi8vICAgICAgIDwvZGl2PlxuLy8gICAgIDwvZGl2PlxuLy8gICA8L2Rpdj5cbi8vICAgPGJ1dHRvbiBjbGFzcz1cImFsZXJ0X19kaXNtaXNzXCI+RGlzbWlzcyBhbGVydDwvYnV0dG9uPlxuLy8gPC9kaXY+XG4vL1xuLy8gU3R5bGVndWlkZSBDb21wb25lbnRzIC0gQWxlcnRzIC0gR2xvYmFsIEFsZXJ0c1xuXG4uYWxlcnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDgwcHggMzJweCAzMnB4O1xuICBtYXJnaW4tYm90dG9tOiAzMnB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihwcmltYXJ5LCB3aGl0ZSk7XG4gIGJvcmRlci1yYWRpdXM6IHJhZGl1cyhiYXNlKTtcblxuICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogNDhweDtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICBwYWRkaW5nOiAzMnB4IDMycHggMzJweCA4OHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDY0cHg7XG4gIH1cblxuICAvLyBEZWZhdWx0c1xuICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuICAud3JhcHBlciB7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gICo6bGFzdC1jaGlsZCB7IG1hcmdpbi1ib3R0b206IDA7IH1cblxuICAvLyBBbGVydCBpY29uXG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAzMnB4O1xuICAgIGxlZnQ6IDMycHg7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiAyNHB4O1xuICAgIGhlaWdodDogMjRweDtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltZy9pY29ucy9pX2FsZXJ0LWNpcmNsZS1leGMuc3ZnJykgbm8tcmVwZWF0IDUwJSA1MCUgLyAxMDAlIGF1dG87XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPj1sYXB0b3AnKSB7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIG1hcmdpbi10b3A6IC0xMnB4O1xuICAgIH1cbiAgfVxuXG4gIC8vIEFsZXJ0IGNhdGVnb3J5XG4gICZfX2NhdGVnb3J5IHtcbiAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgICB3aWR0aDogcGVyY2VudGFnZSgxMzgvNjI0KTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPj1kZXNrdG9wX3dpZGUnKSB7XG4gICAgICB3aWR0aDogcGVyY2VudGFnZSgxMzAvMTI4MCk7XG4gICAgfVxuICB9XG5cbiAgLy8gQWxlcnQgbWVzc2FnZVxuICAmX19tZXNzYWdlIHtcbiAgICBtYXJnaW4tdG9wOiA4cHg7XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgICB3aWR0aDogcGVyY2VudGFnZSg0NjIvNjI0KTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICB9XG4gICAgQGluY2x1ZGUgbWVkaWEoJz49ZGVza3RvcF93aWRlJykge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIHdpZHRoOiBwZXJjZW50YWdlKDExMTgvMTI4MCk7XG4gICAgfVxuICB9XG5cbiAgLy8gQWxlcnQgbGlua3NcbiAgYSB7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgfVxuXG4gIC8vIEFsZXJ0IGRpc21pc3NcbiAgJl9fZGlzbWlzcyB7XG4gICAgQGV4dGVuZCAuYnV0dG9uO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgd2lkdGg6IDY0cHg7XG4gICAgaGVpZ2h0OiA2NHB4O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYmFja2dyb3VuZDogY29sb3Ioc2Vjb25kYXJ5LCBkYXJrLWJsdWUpIHVybCgnLi4vaW1nL2ljb25zL2lfY2xvc2Vfd2hpdGUuc3ZnJykgbm8tcmVwZWF0IDUwJSA1MCUgLyAyNHB4IGF1dG87XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICB0cmFuc2l0aW9uOlxuICAgICAgYmFja2dyb3VuZCAkYmFzZS1hbmltYXRpb24tc3BlZWQgJGJhc2UtYW5pbWF0aW9uLWVhc2luZztcbiAgICBmb250LXNpemU6IDA7XG4gICAgbGluZS1oZWlnaHQ6IDA7XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPj1kZXNrdG9wX3dpZGUnKSB7XG4gICAgICB3aWR0aDogNjRweDtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG5cbiAgICAvLyBob3ZlciBzdGF0ZVxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWcvaWNvbnMvaV9jbG9zZV93aGl0ZS5zdmcnKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbihjb2xvcihzZWNvbmRhcnksIGRhcmstYmx1ZSksIDUlKTtcbiAgICB9XG5cbiAgICAvLyBmb2N1cyBzdGF0ZVxuICAgICY6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWcvaWNvbnMvaV9jbG9zZV93aGl0ZS5zdmcnKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbihjb2xvcihzZWNvbmRhcnksIGRhcmstYmx1ZSksIDUlKTtcbiAgICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDNweCBjb2xvcihzZWNvbmRhcnksIGdvbGQpO1xuICAgIH1cbiAgfVxuXG5cbiAgLy8gUHJpbWFyeSBhbGVydHNcbiAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICYtLXByaW1hcnkge1xuICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKHNlY29uZGFyeSwgZGFyay1ibHVlKTtcbiAgICBjb2xvcjogY29sb3IocHJpbWFyeSwgd2hpdGUpO1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWcvaWNvbnMvaV9hbGVydC1jaXJjbGUtZXhjX3doaXRlLnN2ZycpO1xuICAgIH1cblxuICAgIGEge1xuICAgICAgY29sb3I6IGNvbG9yKHByaW1hcnksIHdoaXRlKTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG5cbiAgICAgIC8vIGhvdmVyIHN0YXRlXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKGNvbG9yKHNlY29uZGFyeSwgZGFyay1ibHVlKSwgNSUpO1xuICAgICAgfVxuXG4gICAgICAvLyBmb2N1cyBzdGF0ZVxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiBjb2xvcihzZWNvbmRhcnksIGRhcmstYmx1ZSk7XG4gICAgICB9XG5cbiAgICAgIC8vIGFjdGl2ZSBzdGF0ZVxuICAgICAgJjphY3RpdmUge1xuICAgICAgICBjb2xvcjogY29sb3IocHJpbWFyeSwgd2hpdGUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG5cbiAgLy8gU2Vjb25kYXJ5IGFsZXJ0c1xuICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgJi0tc2Vjb25kYXJ5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihwcmltYXJ5LCBvZmYtd2hpdGUpO1xuICAgIGNvbG9yOiBjb2xvcihwcmltYXJ5LCBibGFjayk7XG5cbiAgICBhIHtcbiAgICAgIGNvbG9yOiBjb2xvcihwcmltYXJ5LCBibGFjayk7XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuXG4gICAgICAvLyBob3ZlciBzdGF0ZVxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbihjb2xvcihwcmltYXJ5LCBvZmYtd2hpdGUpLCA1JSk7XG4gICAgICB9XG5cbiAgICAgIC8vIGZvY3VzIHN0YXRlXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6IGNvbG9yKHByaW1hcnksIGJsYWNrKTtcbiAgICAgIH1cblxuICAgICAgLy8gYWN0aXZlIHN0YXRlXG4gICAgICAmOmFjdGl2ZSB7XG4gICAgICAgIGNvbG9yOiBjb2xvcihwcmltYXJ5LCBibGFjayk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cblxuICAvLyBTZWNvbmRhcnkgYWxlcnRzXG4gIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAmLS1icmVha2luZyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3Ioc2Vjb25kYXJ5LCByZWQpO1xuICAgIGNvbG9yOiBjb2xvcihwcmltYXJ5LCB3aGl0ZSk7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy9pY29ucy9pX2FsZXJ0LWNpcmNsZS1leGNfd2hpdGUuc3ZnJyk7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICBjb2xvcjogY29sb3IocHJpbWFyeSwgd2hpdGUpO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcblxuICAgICAgLy8gaG92ZXIgc3RhdGVcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oY29sb3Ioc2Vjb25kYXJ5LCByZWQpLCAxNSUpO1xuICAgICAgfVxuXG4gICAgICAvLyBmb2N1cyBzdGF0ZVxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiBjb2xvcihwcmltYXJ5LCBibGFjayk7XG4gICAgICB9XG5cbiAgICAgIC8vIGFjdGl2ZSBzdGF0ZVxuICAgICAgJjphY3RpdmUge1xuICAgICAgICBjb2xvcjogY29sb3IocHJpbWFyeSwgYmxhY2spO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG5cbiAgLy8gR2xvYmFsIGFsZXJ0c1xuICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgJi0tZ2xvYmFsIHtcbiAgICBwYWRkaW5nOiA2NHB4IDMycHggMzJweDtcbiAgICBtYXJnaW46IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3Ioc2Vjb25kYXJ5LCBkYXJrLWJsdWUpO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgY29sb3I6IGNvbG9yKHByaW1hcnksIHdoaXRlKTtcblxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PWRlc2t0b3Bfd2lkZScpIHtcbiAgICAgIHBhZGRpbmc6IDMycHg7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgfVxuXG4gICAgLy8gSGlkZSBpY29uXG4gICAgJjpiZWZvcmUge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAvLyBMaW5rc1xuICAgIGEge1xuICAgICAgY29sb3I6IGNvbG9yKHByaW1hcnksIHdoaXRlKTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG5cbiAgICAgIC8vIGhvdmVyIHN0YXRlXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKGNvbG9yKHNlY29uZGFyeSwgZGFyay1ibHVlKSwgNSUpO1xuICAgICAgfVxuXG4gICAgICAvLyBmb2N1cyBzdGF0ZVxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKHNlY29uZGFyeSwgZ29sZCk7XG4gICAgICAgIGNvbG9yOiBjb2xvcihzZWNvbmRhcnksIGRhcmstYmx1ZSk7XG4gICAgICB9XG5cbiAgICAgIC8vIGFjdGl2ZSBzdGF0ZVxuICAgICAgJjphY3RpdmUge1xuICAgICAgICBjb2xvcjogY29sb3IocHJpbWFyeSwgd2hpdGUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEFsZXJ0IGl0ZW1zXG4gICAgLmFsZXJ0X19pdGVtIHtcbiAgICAgIHBhZGRpbmc6IDMycHggMDtcbiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKGNvbG9yKHByaW1hcnksIHdoaXRlKSwgLjI1KTtcblxuICAgICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PWRlc2t0b3Bfd2lkZScpIHtcbiAgICAgICAgcGFkZGluZzogMjRweCAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEFsZXJ0IGl0ZW0gKGZpcnN0KVxuICAgIC5hbGVydF9faXRlbTpmaXJzdC1jaGlsZCB7XG4gICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgIGJvcmRlcjogMDtcbiAgICB9XG5cbiAgICAvLyBBbGVydCBpdGVtIChsYXN0KVxuICAgIC5hbGVydF9faXRlbTpsYXN0LWNoaWxkIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIH1cbiAgfVxuXG5cbiAgLy8gQ29sbGxhcHNpYmxlIGFsZXJ0c1xuICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgJi0tY29sbGFwc2libGUge1xuICAgIEBpbmNsdWRlIG1lZGlhKCc8dGFibGV0Jykge1xuICAgICAgcGFkZGluZy10b3A6IDMycHg7XG4gICAgfVxuXG4gICAgLmFsZXJ0X19sYWJlbCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbjogMCA0OHB4IDAgMzJweDtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgfVxuXG4gICAgLmFsZXJ0X19vdmVyZmxvdyB7XG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPHRhYmxldCcpIHtcbiAgICAgICAgbWF4LWhlaWdodDogMDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIH1cblxuICAgICAgJi0tYWN0aXZlIHtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJzx0YWJsZXQnKSB7XG4gICAgICAgICAgbWF4LWhlaWdodDogMTAwMHB4O1xuICAgICAgICAgIHBhZGRpbmctdG9wOiAzMnB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmFsZXJ0X190b2dnbGUge1xuICAgICAgQGluY2x1ZGUgbWVkaWEoJzx0YWJsZXQnKSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAzMnB4O1xuICAgICAgICByaWdodDogMzJweDtcbiAgICAgICAgd2lkdGg6IDI0cHg7XG4gICAgICAgIGhlaWdodDogMjRweDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgYmFja2dyb3VuZDogbm8tcmVwZWF0IHVybCgnLi4vaW1nL2ljb25zL2lfbWVudS1kb3RzLnN2ZycpIDUwJSA1MCUgLyAxMDAlIGF1dG87XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKCc8dGFibGV0Jykge1xuICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDJweCBjb2xvcihzZWNvbmRhcnksIGdvbGQpO1xuICAgICAgICAgIG91dGxpbmU6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgc3BhbiB7IEBleHRlbmQgLnNyLW9ubHk7IH1cblxuICAgICAgJi0tYWN0aXZlIHtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJzx0YWJsZXQnKSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWcvaWNvbnMvaV9jbG9zZS5zdmcnKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIHRoZW1lIGVsZW1lbnRzXG4gICAgJi5hbGVydC0tcHJpbWFyeSAuYWxlcnRfX3RvZ2dsZSxcbiAgICAmLmFsZXJ0LS1icmVha2luZyAuYWxlcnRfX3RvZ2dsZSB7XG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPHRhYmxldCcpIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWcvaWNvbnMvaV9tZW51LWRvdHNfd2hpdGUuc3ZnJyk7XG4gICAgICB9XG4gICAgfVxuICAgICYuYWxlcnQtLXByaW1hcnkgLmFsZXJ0X190b2dnbGUuYWxlcnRfX3RvZ2dsZS0tYWN0aXZlLFxuICAgICYuYWxlcnQtLWJyZWFraW5nIC5hbGVydF9fdG9nZ2xlLmFsZXJ0X190b2dnbGUtLWFjdGl2ZSB7XG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPHRhYmxldCcpIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWcvaWNvbnMvaV9jbG9zZV93aGl0ZS5zdmcnKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgfVxuXG59XG4iLCIvLyBGaWxlc1xuLy9cbi8vIERpZ2l0YWwgZG9jdW1lbnQgdGhhdCB1c2VycyBjYW4gZG93bmxvYWQuXG4vL1xuLy8gTWFya3VwOlxuLy8gPHNlY3Rpb24gY2xhc3M9XCJsaXN0IGxpc3QtLWZpbGVzXCI+XG4vLyAgIDxkaXYgY2xhc3M9XCJsaXN0X19pdGVtc1wiPlxuLy8gICAgIDxhcnRpY2xlIGNsYXNzPVwibGlzdF9faXRlbSBmaWxlXCIgbGFuZyBpdGVtc2NvcGUgaXRlbXR5cGU9XCJodHRwOi8vc2NoZW1hLm9yZy9EaWdpdGFsRG9jdW1lbnRcIj5cbi8vICAgICAgIDxoMSBjbGFzcz1cImxpc3RfX3RpdGxlXCIgaXRlbXByb3A9XCJoZWFkbGluZVwiPjxhIGl0ZW1wcm9wPVwidXJsXCIgaHJlZj1cInNhbXBsZS1maWxlLmRvY1wiIHRhcmdldD1cIl9ibGFua1wiPjxzcGFuPlJlcXVlc3QgdGl0bGUgZm9yIGFiYW5kb25lZCBwcm9wZXJ0eTwvc3Bhbj48L2E+PC9oMT5cbi8vICAgICAgIDxkaXYgY2xhc3M9XCJtZXRhXCI+XG4vLyAgICAgICAgIDxzcGFuIGl0ZW1wcm9wPVwiZmlsZUZvcm1hdFwiPldvcmQgZG9jdW1lbnQ8L3NwYW4+LCA0MUtCXG4vLyAgICAgICA8L2Rpdj5cbi8vICAgICA8L2FydGljbGU+XG4vLyAgICAgPGFydGljbGUgY2xhc3M9XCJsaXN0X19pdGVtIGZpbGVcIiBsYW5nIGl0ZW1zY29wZSBpdGVtdHlwZT1cImh0dHA6Ly9zY2hlbWEub3JnL0RpZ2l0YWxEb2N1bWVudFwiPlxuLy8gICAgICAgPGgxIGNsYXNzPVwibGlzdF9fdGl0bGVcIiBpdGVtcHJvcD1cImhlYWRsaW5lXCI+PGEgaXRlbXByb3A9XCJ1cmxcIiBocmVmPVwic2FtcGxlLWZpbGUueGxzXCIgdGFyZ2V0PVwiX2JsYW5rXCI+PHNwYW4+UmVxdWVzdCB0aXRsZSBmb3IgYWJhbmRvbmVkIHByb3BlcnR5PC9zcGFuPjwvYT48L2gxPlxuLy8gICAgICAgPGRpdiBjbGFzcz1cIm1ldGFcIj5cbi8vICAgICAgICAgPHNwYW4gaXRlbXByb3A9XCJmaWxlRm9ybWF0XCI+V29yZCBkb2N1bWVudDwvc3Bhbj4sIDQxS0Jcbi8vICAgICAgIDwvZGl2PlxuLy8gICAgIDwvYXJ0aWNsZT5cbi8vICAgICA8YXJ0aWNsZSBjbGFzcz1cImxpc3RfX2l0ZW0gZmlsZVwiIGxhbmcgaXRlbXNjb3BlIGl0ZW10eXBlPVwiaHR0cDovL3NjaGVtYS5vcmcvRGlnaXRhbERvY3VtZW50XCI+XG4vLyAgICAgICA8aDEgY2xhc3M9XCJsaXN0X190aXRsZVwiIGl0ZW1wcm9wPVwiaGVhZGxpbmVcIj48YSBpdGVtcHJvcD1cInVybFwiIGhyZWY9XCJzYW1wbGUtZmlsZS5wcHRcIiB0YXJnZXQ9XCJfYmxhbmtcIj48c3Bhbj5SZXF1ZXN0IHRpdGxlIGZvciBhYmFuZG9uZWQgcHJvcGVydHk8L3NwYW4+PC9hPjwvaDE+XG4vLyAgICAgICA8ZGl2IGNsYXNzPVwibWV0YVwiPlxuLy8gICAgICAgICA8c3BhbiBpdGVtcHJvcD1cImZpbGVGb3JtYXRcIj5Xb3JkIGRvY3VtZW50PC9zcGFuPiwgNDFLQlxuLy8gICAgICAgPC9kaXY+XG4vLyAgICAgPC9hcnRpY2xlPlxuLy8gICAgIDxhcnRpY2xlIGNsYXNzPVwibGlzdF9faXRlbSBmaWxlXCIgbGFuZyBpdGVtc2NvcGUgaXRlbXR5cGU9XCJodHRwOi8vc2NoZW1hLm9yZy9EaWdpdGFsRG9jdW1lbnRcIj5cbi8vICAgICAgIDxoMSBjbGFzcz1cImxpc3RfX3RpdGxlXCIgaXRlbXByb3A9XCJoZWFkbGluZVwiPjxhIGl0ZW1wcm9wPVwidXJsXCIgaHJlZj1cInNhbXBsZS1maWxlLnBkZlwiIHRhcmdldD1cIl9ibGFua1wiPjxzcGFuPlJlcXVlc3QgdGl0bGUgZm9yIGFiYW5kb25lZCBwcm9wZXJ0eTwvc3Bhbj48L2E+PC9oMT5cbi8vICAgICAgIDxkaXYgY2xhc3M9XCJtZXRhXCI+XG4vLyAgICAgICAgIDxzcGFuIGl0ZW1wcm9wPVwiZmlsZUZvcm1hdFwiPldvcmQgZG9jdW1lbnQ8L3NwYW4+LCA0MUtCXG4vLyAgICAgICA8L2Rpdj5cbi8vICAgICA8L2FydGljbGU+XG4vLyAgICAgPGFydGljbGUgY2xhc3M9XCJsaXN0X19pdGVtIGZpbGVcIiBsYW5nIGl0ZW1zY29wZSBpdGVtdHlwZT1cImh0dHA6Ly9zY2hlbWEub3JnL0RpZ2l0YWxEb2N1bWVudFwiPlxuLy8gICAgICAgPGgxIGNsYXNzPVwibGlzdF9fdGl0bGVcIiBpdGVtcHJvcD1cImhlYWRsaW5lXCI+PGEgaXRlbXByb3A9XCJ1cmxcIiBocmVmPVwic2FtcGxlLWZpbGUuanBnXCIgdGFyZ2V0PVwiX2JsYW5rXCI+PHNwYW4+UmVxdWVzdCB0aXRsZSBmb3IgYWJhbmRvbmVkIHByb3BlcnR5PC9zcGFuPjwvYT48L2gxPlxuLy8gICAgICAgPGRpdiBjbGFzcz1cIm1ldGFcIj5cbi8vICAgICAgICAgPHNwYW4gaXRlbXByb3A9XCJmaWxlRm9ybWF0XCI+V29yZCBkb2N1bWVudDwvc3Bhbj4sIDQxS0Jcbi8vICAgICAgIDwvZGl2PlxuLy8gICAgIDwvYXJ0aWNsZT5cbi8vICAgICA8YXJ0aWNsZSBjbGFzcz1cImxpc3RfX2l0ZW0gZmlsZVwiIGxhbmcgaXRlbXNjb3BlIGl0ZW10eXBlPVwiaHR0cDovL3NjaGVtYS5vcmcvRGlnaXRhbERvY3VtZW50XCI+XG4vLyAgICAgICA8aDEgY2xhc3M9XCJsaXN0X190aXRsZVwiIGl0ZW1wcm9wPVwiaGVhZGxpbmVcIj48YSBpdGVtcHJvcD1cInVybFwiIGhyZWY9XCJzYW1wbGUtZmlsZS50eHRcIiB0YXJnZXQ9XCJfYmxhbmtcIj48c3Bhbj5SZXF1ZXN0IHRpdGxlIGZvciBhYmFuZG9uZWQgcHJvcGVydHk8L3NwYW4+PC9hPjwvaDE+XG4vLyAgICAgICA8ZGl2IGNsYXNzPVwibWV0YVwiPlxuLy8gICAgICAgICA8c3BhbiBpdGVtcHJvcD1cImZpbGVGb3JtYXRcIj5Xb3JkIGRvY3VtZW50PC9zcGFuPiwgNDFLQlxuLy8gICAgICAgPC9kaXY+XG4vLyAgICAgPC9hcnRpY2xlPlxuLy8gICA8L2Rpdj5cbi8vIDwvc2VjdGlvbj5cbi8vXG4vLyBTdHlsZWd1aWRlIENvbXBvbmVudHMgLSBGaWxlc1xuXG4uZmlsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXG4gIFtpdGVtcHJvcD0ndXJsJ10ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogLTU2cHg7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgaGVpZ2h0OiA0OHB4O1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1MCU7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGF1dG8gMTAwJTtcblxuICAgICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgICAgICBsZWZ0OiAtODVweDtcbiAgICAgICAgd2lkdGg6IDUzcHg7XG4gICAgICAgIGhlaWdodDogNjRweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBkb2N1bWVudHNcbiAgICAmW2hyZWYqPScuZG9jJ106YmVmb3JlLFxuICAgICZbaHJlZio9Jy5kb2N4J106YmVmb3JlIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWcvZ3JhcGhpY3MvZ19maWxlLWRvYy5zdmcnKTsgfVxuXG4gICAgLy8gc3ByZWFkc2hlZXRzXG4gICAgJltocmVmKj0nLnhscyddOmJlZm9yZSxcbiAgICAmW2hyZWYqPScueGxzeCddOmJlZm9yZSxcbiAgICAmW2hyZWYqPScuY3N2J106YmVmb3JlIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWcvZ3JhcGhpY3MvZ19maWxlLXhscy5zdmcnKTsgfVxuXG4gICAgLy8gcHJlc2VudGF0aW9uc1xuICAgICZbaHJlZio9Jy5wcHQnXTpiZWZvcmUgeyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy9ncmFwaGljcy9nX2ZpbGUtcHB0LnN2ZycpOyB9XG5cbiAgICAvLyBwZGZzXG4gICAgJltocmVmKj0nLnBkZiddOmJlZm9yZSxcbiAgICAvLyBzb21lIHBkZiBsaW5rcyBkb24ndCBoYXZlIGV4dGVuc2lvbnMuXG4gICAgJi5wZGZfbGluazpiZWZvcmUgeyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy9ncmFwaGljcy9nX2ZpbGUtcGRmLnN2ZycpOyB9XG5cbiAgICAvLyBpbWFnZXNcbiAgICAmW2hyZWYqPScuanBnJ106YmVmb3JlLFxuICAgICZbaHJlZio9Jy5wbmcnXTpiZWZvcmUsXG4gICAgJltocmVmKj0nLmdpZiddOmJlZm9yZSB7IGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1nL2dyYXBoaWNzL2dfZmlsZS1pbWcuc3ZnJyk7IH1cblxuICAgIC8vIHRleHRzXG4gICAgJltocmVmKj0nLnR4dCddOmJlZm9yZSB7IGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1nL2dyYXBoaWNzL2dfZmlsZS10eHQuc3ZnJyk7IH1cblxuICAgIC8vIGFyY2hpdmVcbiAgICAmW2hyZWYqPScuemlwJ106YmVmb3JlLFxuICAgIC8vIHNvbWUgemlwIGxpbmtzIGRvbid0IGhhdmUgZXh0ZW5zaW9ucy5cbiAgICAmLnppcF9saW5rOmJlZm9yZSB7IGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1nL2dyYXBoaWNzL2dfZmlsZS16aXAuc3ZnJyk7IH1cblxuICB9XG5cbn1cbiIsIltkYXRhLXNpbmdsZT0nZG9jdW1lbnQnXSB7XG5cbiAgW2l0ZW1wcm9wPSdtYWluQ29udGVudE9mUGFnZSddIHtcbiAgICBsaW5lLWhlaWdodDogMjtcbiAgfVxuXG59XG4iLCIvLyBCYWRnZXNcbi8vXG4vLyBJbmxpbmUgbGFiZWxzLiBDb250ZXh0IGFuZCBzdHlsZXMgY2FuIGJlIGFkZGVkIHdpdGggPGNvZGU+LmJhZGdlLS0kbW9kaWZpZXI8L2NvZGU+IGNsYXNzKGVzKS5cbi8vXG4vLyBNYXJrdXA6XG4vLyA8c3BhbiBjbGFzcz1cImJhZGdlIHt7bW9kaWZpZXJfY2xhc3N9fVwiPkxhYmVsPC9zcGFuPlxuLy9cbi8vIC5iYWRnZS0tcGlsbCAgICAgIC0gSW5jcmVhc2Ugcm91bmRlZCBhcHBlYXJhbmNlXG4vLyAuYmFkZ2UtLXByaW1hcnkgICAtIFByaW1hcnlcbi8vIC5iYWRnZS0tc2Vjb25kYXJ5IC0gU2Vjb25kYXJ5XG4vLyAuYmFkZ2UtLWluZm8gICAgICAtIEluZm9cbi8vIC5iYWRnZS0tZGFuZ2VyICAgIC0gRGFuZ2VyIGFsZXJ0c1xuLy8gLmJhZGdlLS1saWdodCAgICAgLSBMaWdodFxuLy9cbi8vIFN0eWxlZ3VpZGUgQ29tcG9uZW50cyAtIEJhZGdlc1xuXG4uYmFkZ2Uge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDhweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IocHJpbWFyeSwgYmxhY2spO1xuICBib3JkZXItcmFkaXVzOiByYWRpdXMoYmFzZSk7XG4gIGNvbG9yOiBjb2xvcihwcmltYXJ5LCB3aGl0ZSk7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgLy8gYmFkZ2UgY29udGV4dFxuICAmLS1wcmltYXJ5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihwcmltYXJ5LCBibHVlKTtcbiAgfVxuICAmLS1zZWNvbmRhcnkge1xuICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKHByaW1hcnksIGdyYXkpO1xuICB9XG4gICYtLWluZm8ge1xuICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKHNlY29uZGFyeSwgY3lhbik7XG4gIH1cbiAgJi0tZGFuZ2VyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihzZWNvbmRhcnksIHJlZCk7XG4gIH1cbiAgJi0tbGlnaHQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKHByaW1hcnksIHdoaXRlKTtcbiAgICBjb2xvcjogY29sb3IocHJpbWFyeSwgYmxhY2spO1xuICB9XG5cbiAgLy8gYmFkZ2Ugc3R5bGVcbiAgJi0tcGlsbCB7XG4gICAgcGFkZGluZzogN3B4IDEycHggNnB4O1xuICAgIGJvcmRlci1yYWRpdXM6IHJhZGl1cyhwaWxsKTtcbiAgfVxufVxuIiwiLy8gQ2xvc2luZ3Ncbi8vXG4vLyBBbGVydCBtZXNzYWdlIGZvciBhIGZhY2lsaXR5IGNsb3NpbmcuIFByb3ZpZGVzIG9wdGlvbnMgZm9yIGRlc2NyaXB0aW9uLCBob3VycyBvZiBvcGVyYXRpb24sIGluc3RydWN0aW9ucywgYW5kIGFsdGVybmF0ZSBmaWxpbmcuXG4vL1xuLy8gTWFya3VwOlxuLy8gPGRpdiBjbGFzcz1cImNsb3NpbmdcIj5cbi8vICAgPGgzIGNsYXNzPVwiY2xvc2luZ19fdGl0bGVcIj5XYWtlIENvdW50eSBDbGVyayBvZiBTdXBlcmlvciBDb3VydDwvaDM+XG4vLyAgIDxkaXYgY2xhc3M9XCJjbG9zaW5nX19tZXRhXCI+MzE2IEZheWV0dGV2aWxsZSBTdHJlZXQ8L2Rpdj5cbi8vICAgPGRpdiBjbGFzcz1cImNsb3NpbmdfX21lc3NhZ2VcIj5cbi8vICAgICA8cD5GYXIgZmFyIGF3YXksIGJlaGluZCB0aGUgd29yZCBtb3VudGFpbnMsIGZhciBmcm9tIHRoZSBjb3VudHJpZXMgVm9rYWxpYSBhbmQgQ29uc29uYW50aWEsIHRoZXJlIGxpdmUgdGhlIGJsaW5kIHRleHRzLiBTZXBhcmF0ZWQgdGhleSBsaXZlIGluIEJvb2ttYXJrc2dyb3ZlIHJpZ2h0IGF0IHRoZSBjb2FzdCBvZiB0aGUgU2VtYW50aWNzLCBhIGxhcmdlIGxhbmd1YWdlIG9jZWFuLjwvcD48cD5BIHNtYWxsIHJpdmVyIG5hbWVkIER1ZGVuIGZsb3dzIGJ5IHRoZWlyIHBsYWNlIGFuZCBzdXBwbGllcyBpdCB3aXRoIHRoZSBuZWNlc3NhcnkgcmVnZWxpYWxpYS4gSXQgaXMgYSBwYXJhZGlzZW1hdGljIGNvdW50cnksIGluIHdoaWNoIHJvYXN0ZWQgcGFydHMgb2Ygc2VudGVuY2VzIGZseSBpbnRvIHlvdXIgbW91dGguIEV2ZW4gdGhlIGFsbC1wb3dlcmZ1bCBQb2ludGluZyBoYXMgbm8gY29udHJvbCBhYm91dCB0aGUgYmxpbmQgdGV4dHMgaXQgaXMgYW4gYWxtb3N0IHVub3J0aG9ncmFwaGljIGxpZmUgT25lIGRheSBobzwvcD5cbi8vICAgICA8ZGl2IGNsYXNzPVwiaDZcIj5Ib3VycyBvZiBvcGVyYXRpb246PC9kaXY+XG4vLyAgICAgPGRsIGNsYXNzPVwiaW5saW5lLWRlZmluaXRpb25zXCI+XG4vLyAgICAgICA8ZHQ+Q291cnRob3VzZTwvZHQ+XG4vLyAgICAgICA8ZGQ+T3BlbnMgYXQgODowMCBhLm0uPC9kZD5cbi8vICAgICAgIDxkdD5DbGVyaydzIG9mZmljZTwvZHQ+XG4vLyAgICAgICA8ZGQ+T3BlbnMgYXQgODowMCBhLm0uPC9kZD5cbi8vICAgICAgIDxkdD5DdXN0b20gcm9vbS9hcmVhPC9kdD5cbi8vICAgICAgIDxkZD5DbG9zZWQ8L2RkPlxuLy8gICAgICAgPGR0PkRpc3RyaWN0IGNpdmlsPC9kdD5cbi8vICAgICAgIDxkZD5DbG9zZXMgYXQgODowMCBhLm0uPC9kZD5cbi8vICAgICAgIDxkdD5EaXN0cmljdCBjcmltaW5hbDwvZHQ+XG4vLyAgICAgICA8ZGQ+Q2xvc2VzIGF0IDg6MDAgYS5tLjwvZGQ+XG4vLyAgICAgICA8ZHQ+U3VwZXJpb3IgY3JpbWluYWw8L2R0PlxuLy8gICAgICAgPGRkPkNsb3NlZDwvZGQ+XG4vLyAgICAgPC9kbD5cbi8vICAgICA8ZGl2IGNsYXNzPVwiaDZcIj5JbnN0cnVjdGlvbnM6PC9kaXY+XG4vLyAgICAgPHA+RmFyIGZhciBhd2F5LCBiZWhpbmQgdGhlIHdvcmQgbW91bnRhaW5zLCBmYXIgZnJvbSB0aGUgY291bnRyaWVzIFZva2FsaWEgYW5kIENvbnNvbmFudGlhLCB0aGVyZSBsaXZlIHRoZSBibGluZCB0ZXh0cy4gU2VwYXJhdGVkIHRoZXkgbGl2ZSBpbiBCb29rbWFya3Nncm92ZSByaWdodCBhdCB0aGUgY29hc3Qgb2YgdGhlIFNlbWFudGljcywgYSBsYXJnZSBsYW5ndWFnZSBvY2Vhbi48L3A+PHA+QSBzbWFsbCByaXZlciBuYW1lZCBEdWRlbiBmbG93cyBieSB0aGVpciBwbGFjZSBhbmQgc3VwcGxpZXMgaXQgd2l0aCB0aGUgbmVjZXNzYXJ5IHJlZ2VsaWFsaWEuIEl0IGlzIGEgcGFyYWRpc2VtYXRpYyBjb3VudHJ5LCBpbiB3aGljaCByb2FzdGVkIHBhcnRzIG9mIHNlbnRlbmNlcyBmbHkgaW50byB5b3VyIG1vdXRoLiBFdmVuIHRoZSBhbGwtcG93ZXJmdWwgUG9pbnRpbmcgaGFzIG5vIGNvbnRyb2wgYWJvdXQgdGhlIGJsaW5kIHRleHRzIGl0IGlzIGFuIGFsbW9zdCB1bm9ydGhvZ3JhcGhpYyBsaWZlIE9uZSBkYXkgaG88L3A+XG4vLyAgICAgPGRpdiBjbGFzcz1cImNsb3NpbmdfX2FsdGVybmF0ZVwiPlxuLy8gICAgICAgPGRpdiBjbGFzcz1cImNsb3NpbmdfX2FsdGVybmF0ZS1sb2NhdGlvblwiPlxuLy8gICAgICAgICA8ZGl2IGNsYXNzPVwiaDZcIj5BbHRlcm5hdGUgZmlsaW5nIGxvY2F0aW9uOjwvZGl2PlxuLy8gICAgICAgICA8ZGl2IGl0ZW1zY29wZT1cIlwiIGl0ZW10eXBlPVwiaHR0cDovL3NjaGVtYS5vcmcvUG9zdGFsQWRkcmVzc1wiPlxuLy8gICAgICAgICAgIDxzcGFuIGl0ZW1wcm9wPVwic3RyZWV0QWRkcmVzc1wiPjU0IENodXJjaCBTdHJlZXQ8L3NwYW4+XG4vLyAgICAgICAgICAgPHNwYW4gaXRlbXByb3A9XCJhZGRyZXNzTG9jYWxpdHlcIj5IYXllc3ZpbGxlPC9zcGFuPiwgPHNwYW4gaXRlbXByb3A9XCJhZGRyZXNzUmVnaW9uXCI+Tm9ydGggQ2Fyb2xpbmE8L3NwYW4+IDxzcGFuIGl0ZW1wcm9wPVwicG9zdGFsQ29kZVwiPjI4OTA0PC9zcGFuPlxuLy8gICAgICAgICAgIDxhIGhyZWY9XCJodHRwczovL3d3dy5nb29nbGUuY29tL21hcHMvcGxhY2UvNTQrQ2h1cmNoK1N0LCtIYXllc3ZpbGxlLCtOQysyODkwNC9AMzUuMDQ2MDU0NSwtODMuODE5NzgwMSwxN3ovZGF0YT0hM20xITRiMSE0bTUhM200ITFzMHg4ODVmMjc2Zjg1YTIwZjY5OjB4OGNiZDhlZDJiZWI1MzMzNiE4bTIhM2QzNS4wNDYwNTQ1ITRkLTgzLjgxNzU4NjFcIiB0YXJnZXQ9XCJfYmxhbmtcIj5NYXBzIGFuZCBkaXJlY3Rpb25zPC9hPlxuLy8gICAgICAgICA8L2Rpdj5cbi8vICAgICAgIDwvZGl2PlxuLy8gICAgICAgPGRpdiBjbGFzcz1cImNsb3NpbmdfX2FsdGVybmF0ZS1jb250YWN0XCI+XG4vLyAgICAgICAgIDxkaXYgY2xhc3M9XCJoNlwiPkFsdGVybmF0ZSBmaWxpbmcgY29udGFjdDo8L2Rpdj5cbi8vICAgICAgICAgPGEgaHJlZj1cInRlbDooOTE5KSAxMjMtNDU2N1wiPig5MTkpIDEyMy00NTY3PC9hPlxuLy8gICAgICAgPC9kaXY+XG4vLyAgICAgPC9kaXY+XG4vLyAgIDwvZGl2PlxuLy8gPC9kaXY+XG4vL1xuLy8gU3R5bGVndWlkZSBDb21wb25lbnRzIC0gQ2xvc2luZ3NcblxuLmNsb3NpbmdzLWdyb3VwICsgLmNsb3NpbmdzLWdyb3VwIHtcbiAgbWFyZ2luLXRvcDogNjRweDtcblxuICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgbWFyZ2luLXRvcDogOTZweDtcbiAgfVxuICBAaW5jbHVkZSBtZWRpYSgnPj1sYXB0b3AnKSB7XG4gICAgbWFyZ2luLXRvcDogMTI4cHg7XG4gIH1cbn1cblxuLmNsb3Npbmcge1xuICBtYXJnaW46IDY0cHggMCAwO1xuXG4gIC8vIGNsb3NpbmcgdGl0bGVcbiAgJl9fdGl0bGUge1xuICAgIEBleHRlbmQgLmg1O1xuICAgIG1hcmdpbjogMCAwIDhweDtcbiAgICBjb2xvcjogY29sb3Ioc2Vjb25kYXJ5LCByZWQpO1xuICB9XG5cbiAgLy8gY2xvc2luZyBtZXRhIGRhdGFcbiAgJl9fbWV0YSB7XG4gICAgQGV4dGVuZCAubWV0YTtcbiAgfVxuXG4gIC8vIGNsb3NpbmcgbWVzc2FnZVxuICAmX19tZXNzYWdlIHtcbiAgICBtYXJnaW46IDMycHggMCAwO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgICAgLy9kaXNwbGF5OiBmbGV4O1xuICAgIH1cblxuICAgIHN0cm9uZyB7XG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgQGV4dGVuZCAlY2xlYXJmaXg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgW2l0ZW1wcm9wPSdzdHJlZXRBZGRyZXNzJ10ge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgW2l0ZW1wcm9wPSdwb3N0YWxDb2RlJ10ge1xuICAgICAgJjphZnRlciB7XG4gICAgICAgIEBleHRlbmQgJWNsZWFyZml4O1xuICAgICAgfVxuICAgIH1cblxuICB9XG5cbiAgLy8gYWx0ZXJuYXRlXG4gICZfX2FsdGVybmF0ZSB7XG4gICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICB9XG5cbiAgICAvLyBjbG9zaW5nIGxvY2F0aW9uXG4gICAgJi1sb2NhdGlvbiB7XG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgICAgIHdpZHRoOiBwZXJjZW50YWdlKDMwMC82MjQpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIGNsb3NpbmcgY29udGFjdFxuICAgICYtY29udGFjdCB7XG4gICAgICBtYXJnaW46IDMycHggMCAwO1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgICAgIHdpZHRoOiBwZXJjZW50YWdlKDMwMC82MjQpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIHdoZW4gYm90aCBsb2NhdGlvbiBhbmQgY29udGFjdCBleGlzdFxuICAgICYtbG9jYXRpb24gKyAmLWNvbnRhY3Qge1xuICAgICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgICAgICBtYXJnaW46IDAgMCAwIHBlcmNlbnRhZ2UoMjQvNjI0KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgfVxuXG4gIC8vIGZpcnN0IGl0ZW1cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxuXG4gIC8vIGxhc3QgaXRlbSBpbnNpZGUgYWxlcnRcbiAgKjpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbn1cbiIsIi5zaWRlYmxvY2sge1xuICBtYXJnaW4tdG9wOiAzMnB4O1xuXG5cbiAgLy8gRGVmYXVsdHNcbiAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiAgLy8gZmlyc3QgaXRlbVxuICAmOmZpcnN0LW9mLXR5cGUge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cblxuICAvLyBzaWRlYmxvY2sgdGl0bGVcbiAgJl9fdGl0bGUge1xuICAgIEBleHRlbmQgLmg2O1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cblxuICAvLyBzaWRlYmxvY2sgY29udGVudFxuICAmX19jb250ZW50IHtcbiAgICA+ICo6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxuXG5cbiAgLy8gTGluayBsaXN0c1xuICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLmxpbmtzIHtcblxuICAgICZfX2l0ZW0ge1xuICAgICAgbWFyZ2luLXRvcDogMTJweDtcbiAgICB9XG5cbiAgfVxuXG5cbiAgLy8gTWVudSBsaXN0c1xuICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLm1lbnUge1xuXG4gICAgJl9faXRlbSB7XG4gICAgICBtYXJnaW4tdG9wOiAxMnB4O1xuICAgIH1cblxuICB9XG5cbn1cbiIsIi8qXG4gKiBUYWJsZSBzdHlsZXNcbiAqL1xudGFibGUuZGF0YVRhYmxlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBjbGVhcjogYm90aDtcbiAgYm9yZGVyLWNvbGxhcHNlOiBzZXBhcmF0ZTtcbiAgYm9yZGVyLXNwYWNpbmc6IDA7XG4gIC8qXG4gICAqIEhlYWRlciBhbmQgZm9vdGVyIHN0eWxlc1xuICAgKi9cbiAgLypcbiAgICogQm9keSBzdHlsZXNcbiAgICovXG59XG50YWJsZS5kYXRhVGFibGUgdGhlYWQgdGgsXG50YWJsZS5kYXRhVGFibGUgdGZvb3QgdGgge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cbnRhYmxlLmRhdGFUYWJsZSB0aGVhZCB0aCxcbnRhYmxlLmRhdGFUYWJsZSB0aGVhZCB0ZCB7XG4gIHBhZGRpbmc6IDEwcHggMThweDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICMxMTE7XG59XG50YWJsZS5kYXRhVGFibGUgdGhlYWQgdGg6YWN0aXZlLFxudGFibGUuZGF0YVRhYmxlIHRoZWFkIHRkOmFjdGl2ZSB7XG4gIG91dGxpbmU6IG5vbmU7XG59XG50YWJsZS5kYXRhVGFibGUgdGZvb3QgdGgsXG50YWJsZS5kYXRhVGFibGUgdGZvb3QgdGQge1xuICBwYWRkaW5nOiAxMHB4IDE4cHggNnB4IDE4cHg7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjMTExO1xufVxudGFibGUuZGF0YVRhYmxlIHRoZWFkIC5zb3J0aW5nLFxudGFibGUuZGF0YVRhYmxlIHRoZWFkIC5zb3J0aW5nX2FzYyxcbnRhYmxlLmRhdGFUYWJsZSB0aGVhZCAuc29ydGluZ19kZXNjLFxudGFibGUuZGF0YVRhYmxlIHRoZWFkIC5zb3J0aW5nX2FzY19kaXNhYmxlZCxcbnRhYmxlLmRhdGFUYWJsZSB0aGVhZCAuc29ydGluZ19kZXNjX2Rpc2FibGVkIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICAqY3Vyc29yOiBoYW5kO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgcmlnaHQ7XG4gIGJhY2tncm91bmQtc2l6ZTogYXV0byAxNnB4O1xufVxudGFibGUuZGF0YVRhYmxlIHRoZWFkIC5zb3J0aW5nIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWcvaWNvbnMvaV9zb3J0LWJvdGguc3ZnJyk7XG59XG50YWJsZS5kYXRhVGFibGUgdGhlYWQgLnNvcnRpbmdfYXNjIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWcvaWNvbnMvaV9zb3J0LWFzYy5zdmcnKTtcbn1cbnRhYmxlLmRhdGFUYWJsZSB0aGVhZCAuc29ydGluZ19kZXNjIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWcvaWNvbnMvaV9zb3J0LWRlc2Muc3ZnJyk7XG59XG50YWJsZS5kYXRhVGFibGUgdGhlYWQgLnNvcnRpbmdfYXNjX2Rpc2FibGVkIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWcvaWNvbnMvaV9zb3J0LWFzYy1kaXNhYmxlZC5zdmcnKTtcbn1cbnRhYmxlLmRhdGFUYWJsZSB0aGVhZCAuc29ydGluZ19kZXNjX2Rpc2FibGVkIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWcvaWNvbnMvaV9zb3J0LWRlc2MtZGlzYWJsZWQuc3ZnJyk7XG59XG50YWJsZS5kYXRhVGFibGUgdGJvZHkgdHIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xufVxudGFibGUuZGF0YVRhYmxlIHRib2R5IHRyLnNlbGVjdGVkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0IwQkVEOTtcbn1cbnRhYmxlLmRhdGFUYWJsZSB0Ym9keSB0aCxcbnRhYmxlLmRhdGFUYWJsZSB0Ym9keSB0ZCB7XG4gIHBhZGRpbmc6IDhweCAxMHB4O1xufVxudGFibGUuZGF0YVRhYmxlLnJvdy1ib3JkZXIgdGJvZHkgdGgsIHRhYmxlLmRhdGFUYWJsZS5yb3ctYm9yZGVyIHRib2R5IHRkLCB0YWJsZS5kYXRhVGFibGUuZGlzcGxheSB0Ym9keSB0aCwgdGFibGUuZGF0YVRhYmxlLmRpc3BsYXkgdGJvZHkgdGQge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2RkZDtcbn1cbnRhYmxlLmRhdGFUYWJsZS5yb3ctYm9yZGVyIHRib2R5IHRyOmZpcnN0LWNoaWxkIHRoLFxudGFibGUuZGF0YVRhYmxlLnJvdy1ib3JkZXIgdGJvZHkgdHI6Zmlyc3QtY2hpbGQgdGQsIHRhYmxlLmRhdGFUYWJsZS5kaXNwbGF5IHRib2R5IHRyOmZpcnN0LWNoaWxkIHRoLFxudGFibGUuZGF0YVRhYmxlLmRpc3BsYXkgdGJvZHkgdHI6Zmlyc3QtY2hpbGQgdGQge1xuICBib3JkZXItdG9wOiBub25lO1xufVxudGFibGUuZGF0YVRhYmxlLmNlbGwtYm9yZGVyIHRib2R5IHRoLCB0YWJsZS5kYXRhVGFibGUuY2VsbC1ib3JkZXIgdGJvZHkgdGQge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2RkZDtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2RkZDtcbn1cbnRhYmxlLmRhdGFUYWJsZS5jZWxsLWJvcmRlciB0Ym9keSB0ciB0aDpmaXJzdC1jaGlsZCxcbnRhYmxlLmRhdGFUYWJsZS5jZWxsLWJvcmRlciB0Ym9keSB0ciB0ZDpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2RkZDtcbn1cbnRhYmxlLmRhdGFUYWJsZS5jZWxsLWJvcmRlciB0Ym9keSB0cjpmaXJzdC1jaGlsZCB0aCxcbnRhYmxlLmRhdGFUYWJsZS5jZWxsLWJvcmRlciB0Ym9keSB0cjpmaXJzdC1jaGlsZCB0ZCB7XG4gIGJvcmRlci10b3A6IG5vbmU7XG59XG50YWJsZS5kYXRhVGFibGUuc3RyaXBlIHRib2R5IHRyLm9kZCwgdGFibGUuZGF0YVRhYmxlLmRpc3BsYXkgdGJvZHkgdHIub2RkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y5ZjlmOTtcbn1cbnRhYmxlLmRhdGFUYWJsZS5zdHJpcGUgdGJvZHkgdHIub2RkLnNlbGVjdGVkLCB0YWJsZS5kYXRhVGFibGUuZGlzcGxheSB0Ym9keSB0ci5vZGQuc2VsZWN0ZWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYWNiYWQ0O1xufVxudGFibGUuZGF0YVRhYmxlLmhvdmVyIHRib2R5IHRyOmhvdmVyLCB0YWJsZS5kYXRhVGFibGUuZGlzcGxheSB0Ym9keSB0cjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmNmY2ZjY7XG59XG50YWJsZS5kYXRhVGFibGUuaG92ZXIgdGJvZHkgdHI6aG92ZXIuc2VsZWN0ZWQsIHRhYmxlLmRhdGFUYWJsZS5kaXNwbGF5IHRib2R5IHRyOmhvdmVyLnNlbGVjdGVkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2FhYjdkMTtcbn1cbnRhYmxlLmRhdGFUYWJsZS5vcmRlci1jb2x1bW4gdGJvZHkgdHIgPiAuc29ydGluZ18xLFxudGFibGUuZGF0YVRhYmxlLm9yZGVyLWNvbHVtbiB0Ym9keSB0ciA+IC5zb3J0aW5nXzIsXG50YWJsZS5kYXRhVGFibGUub3JkZXItY29sdW1uIHRib2R5IHRyID4gLnNvcnRpbmdfMywgdGFibGUuZGF0YVRhYmxlLmRpc3BsYXkgdGJvZHkgdHIgPiAuc29ydGluZ18xLFxudGFibGUuZGF0YVRhYmxlLmRpc3BsYXkgdGJvZHkgdHIgPiAuc29ydGluZ18yLFxudGFibGUuZGF0YVRhYmxlLmRpc3BsYXkgdGJvZHkgdHIgPiAuc29ydGluZ18zIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZhZmFmYTtcbn1cbnRhYmxlLmRhdGFUYWJsZS5vcmRlci1jb2x1bW4gdGJvZHkgdHIuc2VsZWN0ZWQgPiAuc29ydGluZ18xLFxudGFibGUuZGF0YVRhYmxlLm9yZGVyLWNvbHVtbiB0Ym9keSB0ci5zZWxlY3RlZCA+IC5zb3J0aW5nXzIsXG50YWJsZS5kYXRhVGFibGUub3JkZXItY29sdW1uIHRib2R5IHRyLnNlbGVjdGVkID4gLnNvcnRpbmdfMywgdGFibGUuZGF0YVRhYmxlLmRpc3BsYXkgdGJvZHkgdHIuc2VsZWN0ZWQgPiAuc29ydGluZ18xLFxudGFibGUuZGF0YVRhYmxlLmRpc3BsYXkgdGJvZHkgdHIuc2VsZWN0ZWQgPiAuc29ydGluZ18yLFxudGFibGUuZGF0YVRhYmxlLmRpc3BsYXkgdGJvZHkgdHIuc2VsZWN0ZWQgPiAuc29ydGluZ18zIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2FjYmFkNTtcbn1cbnRhYmxlLmRhdGFUYWJsZS5kaXNwbGF5IHRib2R5IHRyLm9kZCA+IC5zb3J0aW5nXzEsIHRhYmxlLmRhdGFUYWJsZS5vcmRlci1jb2x1bW4uc3RyaXBlIHRib2R5IHRyLm9kZCA+IC5zb3J0aW5nXzEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjFmMWYxO1xufVxudGFibGUuZGF0YVRhYmxlLmRpc3BsYXkgdGJvZHkgdHIub2RkID4gLnNvcnRpbmdfMiwgdGFibGUuZGF0YVRhYmxlLm9yZGVyLWNvbHVtbi5zdHJpcGUgdGJvZHkgdHIub2RkID4gLnNvcnRpbmdfMiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmM2YzZjM7XG59XG50YWJsZS5kYXRhVGFibGUuZGlzcGxheSB0Ym9keSB0ci5vZGQgPiAuc29ydGluZ18zLCB0YWJsZS5kYXRhVGFibGUub3JkZXItY29sdW1uLnN0cmlwZSB0Ym9keSB0ci5vZGQgPiAuc29ydGluZ18zIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGVzbW9rZTtcbn1cbnRhYmxlLmRhdGFUYWJsZS5kaXNwbGF5IHRib2R5IHRyLm9kZC5zZWxlY3RlZCA+IC5zb3J0aW5nXzEsIHRhYmxlLmRhdGFUYWJsZS5vcmRlci1jb2x1bW4uc3RyaXBlIHRib2R5IHRyLm9kZC5zZWxlY3RlZCA+IC5zb3J0aW5nXzEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTZiNGNkO1xufVxudGFibGUuZGF0YVRhYmxlLmRpc3BsYXkgdGJvZHkgdHIub2RkLnNlbGVjdGVkID4gLnNvcnRpbmdfMiwgdGFibGUuZGF0YVRhYmxlLm9yZGVyLWNvbHVtbi5zdHJpcGUgdGJvZHkgdHIub2RkLnNlbGVjdGVkID4gLnNvcnRpbmdfMiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNhOGI1Y2Y7XG59XG50YWJsZS5kYXRhVGFibGUuZGlzcGxheSB0Ym9keSB0ci5vZGQuc2VsZWN0ZWQgPiAuc29ydGluZ18zLCB0YWJsZS5kYXRhVGFibGUub3JkZXItY29sdW1uLnN0cmlwZSB0Ym9keSB0ci5vZGQuc2VsZWN0ZWQgPiAuc29ydGluZ18zIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2E5YjdkMTtcbn1cbnRhYmxlLmRhdGFUYWJsZS5kaXNwbGF5IHRib2R5IHRyLmV2ZW4gPiAuc29ydGluZ18xLCB0YWJsZS5kYXRhVGFibGUub3JkZXItY29sdW1uLnN0cmlwZSB0Ym9keSB0ci5ldmVuID4gLnNvcnRpbmdfMSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmYWZhZmE7XG59XG50YWJsZS5kYXRhVGFibGUuZGlzcGxheSB0Ym9keSB0ci5ldmVuID4gLnNvcnRpbmdfMiwgdGFibGUuZGF0YVRhYmxlLm9yZGVyLWNvbHVtbi5zdHJpcGUgdGJvZHkgdHIuZXZlbiA+IC5zb3J0aW5nXzIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmNmY2ZjO1xufVxudGFibGUuZGF0YVRhYmxlLmRpc3BsYXkgdGJvZHkgdHIuZXZlbiA+IC5zb3J0aW5nXzMsIHRhYmxlLmRhdGFUYWJsZS5vcmRlci1jb2x1bW4uc3RyaXBlIHRib2R5IHRyLmV2ZW4gPiAuc29ydGluZ18zIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbn1cbnRhYmxlLmRhdGFUYWJsZS5kaXNwbGF5IHRib2R5IHRyLmV2ZW4uc2VsZWN0ZWQgPiAuc29ydGluZ18xLCB0YWJsZS5kYXRhVGFibGUub3JkZXItY29sdW1uLnN0cmlwZSB0Ym9keSB0ci5ldmVuLnNlbGVjdGVkID4gLnNvcnRpbmdfMSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNhY2JhZDU7XG59XG50YWJsZS5kYXRhVGFibGUuZGlzcGxheSB0Ym9keSB0ci5ldmVuLnNlbGVjdGVkID4gLnNvcnRpbmdfMiwgdGFibGUuZGF0YVRhYmxlLm9yZGVyLWNvbHVtbi5zdHJpcGUgdGJvZHkgdHIuZXZlbi5zZWxlY3RlZCA+IC5zb3J0aW5nXzIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYWViY2Q2O1xufVxudGFibGUuZGF0YVRhYmxlLmRpc3BsYXkgdGJvZHkgdHIuZXZlbi5zZWxlY3RlZCA+IC5zb3J0aW5nXzMsIHRhYmxlLmRhdGFUYWJsZS5vcmRlci1jb2x1bW4uc3RyaXBlIHRib2R5IHRyLmV2ZW4uc2VsZWN0ZWQgPiAuc29ydGluZ18zIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2FmYmRkODtcbn1cbnRhYmxlLmRhdGFUYWJsZS5kaXNwbGF5IHRib2R5IHRyOmhvdmVyID4gLnNvcnRpbmdfMSwgdGFibGUuZGF0YVRhYmxlLm9yZGVyLWNvbHVtbi5ob3ZlciB0Ym9keSB0cjpob3ZlciA+IC5zb3J0aW5nXzEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWFlYWVhO1xufVxudGFibGUuZGF0YVRhYmxlLmRpc3BsYXkgdGJvZHkgdHI6aG92ZXIgPiAuc29ydGluZ18yLCB0YWJsZS5kYXRhVGFibGUub3JkZXItY29sdW1uLmhvdmVyIHRib2R5IHRyOmhvdmVyID4gLnNvcnRpbmdfMiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlY2VjZWM7XG59XG50YWJsZS5kYXRhVGFibGUuZGlzcGxheSB0Ym9keSB0cjpob3ZlciA+IC5zb3J0aW5nXzMsIHRhYmxlLmRhdGFUYWJsZS5vcmRlci1jb2x1bW4uaG92ZXIgdGJvZHkgdHI6aG92ZXIgPiAuc29ydGluZ18zIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VmZWZlZjtcbn1cbnRhYmxlLmRhdGFUYWJsZS5kaXNwbGF5IHRib2R5IHRyOmhvdmVyLnNlbGVjdGVkID4gLnNvcnRpbmdfMSwgdGFibGUuZGF0YVRhYmxlLm9yZGVyLWNvbHVtbi5ob3ZlciB0Ym9keSB0cjpob3Zlci5zZWxlY3RlZCA+IC5zb3J0aW5nXzEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTJhZWM3O1xufVxudGFibGUuZGF0YVRhYmxlLmRpc3BsYXkgdGJvZHkgdHI6aG92ZXIuc2VsZWN0ZWQgPiAuc29ydGluZ18yLCB0YWJsZS5kYXRhVGFibGUub3JkZXItY29sdW1uLmhvdmVyIHRib2R5IHRyOmhvdmVyLnNlbGVjdGVkID4gLnNvcnRpbmdfMiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNhM2IwYzk7XG59XG50YWJsZS5kYXRhVGFibGUuZGlzcGxheSB0Ym9keSB0cjpob3Zlci5zZWxlY3RlZCA+IC5zb3J0aW5nXzMsIHRhYmxlLmRhdGFUYWJsZS5vcmRlci1jb2x1bW4uaG92ZXIgdGJvZHkgdHI6aG92ZXIuc2VsZWN0ZWQgPiAuc29ydGluZ18zIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2E1YjJjYjtcbn1cbnRhYmxlLmRhdGFUYWJsZS5uby1mb290ZXIge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzExMTtcbn1cbnRhYmxlLmRhdGFUYWJsZS5ub3dyYXAgdGgsIHRhYmxlLmRhdGFUYWJsZS5ub3dyYXAgdGQge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxudGFibGUuZGF0YVRhYmxlLmNvbXBhY3QgdGhlYWQgdGgsXG50YWJsZS5kYXRhVGFibGUuY29tcGFjdCB0aGVhZCB0ZCB7XG4gIHBhZGRpbmc6IDRweCAxN3B4IDRweCA0cHg7XG59XG50YWJsZS5kYXRhVGFibGUuY29tcGFjdCB0Zm9vdCB0aCxcbnRhYmxlLmRhdGFUYWJsZS5jb21wYWN0IHRmb290IHRkIHtcbiAgcGFkZGluZzogNHB4O1xufVxudGFibGUuZGF0YVRhYmxlLmNvbXBhY3QgdGJvZHkgdGgsXG50YWJsZS5kYXRhVGFibGUuY29tcGFjdCB0Ym9keSB0ZCB7XG4gIHBhZGRpbmc6IDRweDtcbn1cbnRhYmxlLmRhdGFUYWJsZSB0aC5kdC1sZWZ0LFxudGFibGUuZGF0YVRhYmxlIHRkLmR0LWxlZnQge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxudGFibGUuZGF0YVRhYmxlIHRoLmR0LWNlbnRlcixcbnRhYmxlLmRhdGFUYWJsZSB0ZC5kdC1jZW50ZXIsXG50YWJsZS5kYXRhVGFibGUgdGQuZGF0YVRhYmxlc19lbXB0eSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbnRhYmxlLmRhdGFUYWJsZSB0aC5kdC1yaWdodCxcbnRhYmxlLmRhdGFUYWJsZSB0ZC5kdC1yaWdodCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxudGFibGUuZGF0YVRhYmxlIHRoLmR0LWp1c3RpZnksXG50YWJsZS5kYXRhVGFibGUgdGQuZHQtanVzdGlmeSB7XG4gIHRleHQtYWxpZ246IGp1c3RpZnk7XG59XG50YWJsZS5kYXRhVGFibGUgdGguZHQtbm93cmFwLFxudGFibGUuZGF0YVRhYmxlIHRkLmR0LW5vd3JhcCB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG50YWJsZS5kYXRhVGFibGUgdGhlYWQgdGguZHQtaGVhZC1sZWZ0LFxudGFibGUuZGF0YVRhYmxlIHRoZWFkIHRkLmR0LWhlYWQtbGVmdCxcbnRhYmxlLmRhdGFUYWJsZSB0Zm9vdCB0aC5kdC1oZWFkLWxlZnQsXG50YWJsZS5kYXRhVGFibGUgdGZvb3QgdGQuZHQtaGVhZC1sZWZ0IHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cbnRhYmxlLmRhdGFUYWJsZSB0aGVhZCB0aC5kdC1oZWFkLWNlbnRlcixcbnRhYmxlLmRhdGFUYWJsZSB0aGVhZCB0ZC5kdC1oZWFkLWNlbnRlcixcbnRhYmxlLmRhdGFUYWJsZSB0Zm9vdCB0aC5kdC1oZWFkLWNlbnRlcixcbnRhYmxlLmRhdGFUYWJsZSB0Zm9vdCB0ZC5kdC1oZWFkLWNlbnRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbnRhYmxlLmRhdGFUYWJsZSB0aGVhZCB0aC5kdC1oZWFkLXJpZ2h0LFxudGFibGUuZGF0YVRhYmxlIHRoZWFkIHRkLmR0LWhlYWQtcmlnaHQsXG50YWJsZS5kYXRhVGFibGUgdGZvb3QgdGguZHQtaGVhZC1yaWdodCxcbnRhYmxlLmRhdGFUYWJsZSB0Zm9vdCB0ZC5kdC1oZWFkLXJpZ2h0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG50YWJsZS5kYXRhVGFibGUgdGhlYWQgdGguZHQtaGVhZC1qdXN0aWZ5LFxudGFibGUuZGF0YVRhYmxlIHRoZWFkIHRkLmR0LWhlYWQtanVzdGlmeSxcbnRhYmxlLmRhdGFUYWJsZSB0Zm9vdCB0aC5kdC1oZWFkLWp1c3RpZnksXG50YWJsZS5kYXRhVGFibGUgdGZvb3QgdGQuZHQtaGVhZC1qdXN0aWZ5IHtcbiAgdGV4dC1hbGlnbjoganVzdGlmeTtcbn1cbnRhYmxlLmRhdGFUYWJsZSB0aGVhZCB0aC5kdC1oZWFkLW5vd3JhcCxcbnRhYmxlLmRhdGFUYWJsZSB0aGVhZCB0ZC5kdC1oZWFkLW5vd3JhcCxcbnRhYmxlLmRhdGFUYWJsZSB0Zm9vdCB0aC5kdC1oZWFkLW5vd3JhcCxcbnRhYmxlLmRhdGFUYWJsZSB0Zm9vdCB0ZC5kdC1oZWFkLW5vd3JhcCB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG50YWJsZS5kYXRhVGFibGUgdGJvZHkgdGguZHQtYm9keS1sZWZ0LFxudGFibGUuZGF0YVRhYmxlIHRib2R5IHRkLmR0LWJvZHktbGVmdCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG50YWJsZS5kYXRhVGFibGUgdGJvZHkgdGguZHQtYm9keS1jZW50ZXIsXG50YWJsZS5kYXRhVGFibGUgdGJvZHkgdGQuZHQtYm9keS1jZW50ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG50YWJsZS5kYXRhVGFibGUgdGJvZHkgdGguZHQtYm9keS1yaWdodCxcbnRhYmxlLmRhdGFUYWJsZSB0Ym9keSB0ZC5kdC1ib2R5LXJpZ2h0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG50YWJsZS5kYXRhVGFibGUgdGJvZHkgdGguZHQtYm9keS1qdXN0aWZ5LFxudGFibGUuZGF0YVRhYmxlIHRib2R5IHRkLmR0LWJvZHktanVzdGlmeSB7XG4gIHRleHQtYWxpZ246IGp1c3RpZnk7XG59XG50YWJsZS5kYXRhVGFibGUgdGJvZHkgdGguZHQtYm9keS1ub3dyYXAsXG50YWJsZS5kYXRhVGFibGUgdGJvZHkgdGQuZHQtYm9keS1ub3dyYXAge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG50YWJsZS5kYXRhVGFibGUsXG50YWJsZS5kYXRhVGFibGUgdGgsXG50YWJsZS5kYXRhVGFibGUgdGQge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbn1cblxuLypcbiAqIENvbnRyb2wgZmVhdHVyZSBsYXlvdXRcbiAqL1xuLmRhdGFUYWJsZXNfd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgY2xlYXI6IGJvdGg7XG4gICp6b29tOiAxO1xuICB6b29tOiAxO1xufVxuLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19sZW5ndGgge1xuICBmbG9hdDogbGVmdDtcbn1cbi5kYXRhVGFibGVzX3dyYXBwZXIgLmRhdGFUYWJsZXNfbGVuZ3RoIHNlbGVjdCB7XG4gIHdpZHRoOiA4MHB4O1xufVxuLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19maWx0ZXIge1xuICBmbG9hdDogcmlnaHQ7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19maWx0ZXIgaW5wdXQge1xuICB3aWR0aDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IDAuNWVtO1xufVxuLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19pbmZvIHtcbiAgY2xlYXI6IGJvdGg7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nLXRvcDogMC43NTVlbTtcbn1cbi5kYXRhVGFibGVzX3dyYXBwZXIgLmRhdGFUYWJsZXNfcGFnaW5hdGUge1xuICBmbG9hdDogcmlnaHQ7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICBwYWRkaW5nLXRvcDogMC4yNWVtO1xufVxuLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19wYWdpbmF0ZSAucGFnaW5hdGVfYnV0dG9uIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtaW4td2lkdGg6IDEuNWVtO1xuICBwYWRkaW5nOiAwLjVlbSAxZW07XG4gIG1hcmdpbi1sZWZ0OiAycHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgKmN1cnNvcjogaGFuZDtcbiAgY29sb3I6ICMzMzMgIWltcG9ydGFudDtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbn1cbi5kYXRhVGFibGVzX3dyYXBwZXIgLmRhdGFUYWJsZXNfcGFnaW5hdGUgLnBhZ2luYXRlX2J1dHRvbi5jdXJyZW50LCAuZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX3BhZ2luYXRlIC5wYWdpbmF0ZV9idXR0b24uY3VycmVudDpob3ZlciB7XG4gIGNvbG9yOiAjMzMzICFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM5Nzk3OTc7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICBiYWNrZ3JvdW5kOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIGxlZnQgYm90dG9tLCBjb2xvci1zdG9wKDAlLCB3aGl0ZSksIGNvbG9yLXN0b3AoMTAwJSwgI2RjZGNkYykpO1xuICAvKiBDaHJvbWUsU2FmYXJpNCsgKi9cbiAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCB3aGl0ZSAwJSwgI2RjZGNkYyAxMDAlKTtcbiAgLyogQ2hyb21lMTArLFNhZmFyaTUuMSsgKi9cbiAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCB3aGl0ZSAwJSwgI2RjZGNkYyAxMDAlKTtcbiAgLyogRkYzLjYrICovXG4gIGJhY2tncm91bmQ6IC1tcy1saW5lYXItZ3JhZGllbnQodG9wLCB3aGl0ZSAwJSwgI2RjZGNkYyAxMDAlKTtcbiAgLyogSUUxMCsgKi9cbiAgYmFja2dyb3VuZDogLW8tbGluZWFyLWdyYWRpZW50KHRvcCwgd2hpdGUgMCUsICNkY2RjZGMgMTAwJSk7XG4gIC8qIE9wZXJhIDExLjEwKyAqL1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCB3aGl0ZSAwJSwgI2RjZGNkYyAxMDAlKTtcbiAgLyogVzNDICovXG59XG4uZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX3BhZ2luYXRlIC5wYWdpbmF0ZV9idXR0b24uZGlzYWJsZWQsIC5kYXRhVGFibGVzX3dyYXBwZXIgLmRhdGFUYWJsZXNfcGFnaW5hdGUgLnBhZ2luYXRlX2J1dHRvbi5kaXNhYmxlZDpob3ZlciwgLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19wYWdpbmF0ZSAucGFnaW5hdGVfYnV0dG9uLmRpc2FibGVkOmFjdGl2ZSB7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgY29sb3I6ICM2NjYgIWltcG9ydGFudDtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3gtc2hhZG93OiBub25lO1xufVxuLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19wYWdpbmF0ZSAucGFnaW5hdGVfYnV0dG9uOmhvdmVyIHtcbiAgY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMxMTE7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1ODU4NTg7XG4gIGJhY2tncm91bmQ6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgbGVmdCBib3R0b20sIGNvbG9yLXN0b3AoMCUsICM1ODU4NTgpLCBjb2xvci1zdG9wKDEwMCUsICMxMTEpKTtcbiAgLyogQ2hyb21lLFNhZmFyaTQrICovXG4gIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgIzU4NTg1OCAwJSwgIzExMSAxMDAlKTtcbiAgLyogQ2hyb21lMTArLFNhZmFyaTUuMSsgKi9cbiAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCAjNTg1ODU4IDAlLCAjMTExIDEwMCUpO1xuICAvKiBGRjMuNisgKi9cbiAgYmFja2dyb3VuZDogLW1zLWxpbmVhci1ncmFkaWVudCh0b3AsICM1ODU4NTggMCUsICMxMTEgMTAwJSk7XG4gIC8qIElFMTArICovXG4gIGJhY2tncm91bmQ6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsICM1ODU4NTggMCUsICMxMTEgMTAwJSk7XG4gIC8qIE9wZXJhIDExLjEwKyAqL1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjNTg1ODU4IDAlLCAjMTExIDEwMCUpO1xuICAvKiBXM0MgKi9cbn1cbi5kYXRhVGFibGVzX3dyYXBwZXIgLmRhdGFUYWJsZXNfcGFnaW5hdGUgLnBhZ2luYXRlX2J1dHRvbjphY3RpdmUge1xuICBvdXRsaW5lOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmIyYjJiO1xuICBiYWNrZ3JvdW5kOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIGxlZnQgYm90dG9tLCBjb2xvci1zdG9wKDAlLCAjMmIyYjJiKSwgY29sb3Itc3RvcCgxMDAlLCAjMGMwYzBjKSk7XG4gIC8qIENocm9tZSxTYWZhcmk0KyAqL1xuICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsICMyYjJiMmIgMCUsICMwYzBjMGMgMTAwJSk7XG4gIC8qIENocm9tZTEwKyxTYWZhcmk1LjErICovXG4gIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgIzJiMmIyYiAwJSwgIzBjMGMwYyAxMDAlKTtcbiAgLyogRkYzLjYrICovXG4gIGJhY2tncm91bmQ6IC1tcy1saW5lYXItZ3JhZGllbnQodG9wLCAjMmIyYjJiIDAlLCAjMGMwYzBjIDEwMCUpO1xuICAvKiBJRTEwKyAqL1xuICBiYWNrZ3JvdW5kOiAtby1saW5lYXItZ3JhZGllbnQodG9wLCAjMmIyYjJiIDAlLCAjMGMwYzBjIDEwMCUpO1xuICAvKiBPcGVyYSAxMS4xMCsgKi9cbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgIzJiMmIyYiAwJSwgIzBjMGMwYyAxMDAlKTtcbiAgLyogVzNDICovXG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAzcHggIzExMTtcbn1cbi5kYXRhVGFibGVzX3dyYXBwZXIgLmRhdGFUYWJsZXNfcGFnaW5hdGUgLmVsbGlwc2lzIHtcbiAgcGFkZGluZzogMCAxZW07XG59XG4uZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX3Byb2Nlc3Npbmcge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDQwcHg7XG4gIG1hcmdpbi1sZWZ0OiAtNTAlO1xuICBtYXJnaW4tdG9wOiAtMjVweDtcbiAgcGFkZGluZy10b3A6IDIwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1zaXplOiAxLjJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gIGJhY2tncm91bmQ6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgcmlnaHQgdG9wLCBjb2xvci1zdG9wKDAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApKSwgY29sb3Itc3RvcCgyNSUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KSksIGNvbG9yLXN0b3AoNzUlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSkpLCBjb2xvci1zdG9wKDEwMCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkpKTtcbiAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQobGVmdCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpIDI1JSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpIDc1JSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAxMDAlKTtcbiAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQobGVmdCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpIDI1JSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpIDc1JSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAxMDAlKTtcbiAgYmFja2dyb3VuZDogLW1zLWxpbmVhci1ncmFkaWVudChsZWZ0LCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSkgMjUlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSkgNzUlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDEwMCUpO1xuICBiYWNrZ3JvdW5kOiAtby1saW5lYXItZ3JhZGllbnQobGVmdCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpIDI1JSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpIDc1JSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAxMDAlKTtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSkgMjUlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSkgNzUlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDEwMCUpO1xufVxuLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19sZW5ndGgsXG4uZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX2ZpbHRlcixcbi5kYXRhVGFibGVzX3dyYXBwZXIgLmRhdGFUYWJsZXNfaW5mbyxcbi5kYXRhVGFibGVzX3dyYXBwZXIgLmRhdGFUYWJsZXNfcHJvY2Vzc2luZyxcbi5kYXRhVGFibGVzX3dyYXBwZXIgLmRhdGFUYWJsZXNfcGFnaW5hdGUge1xuICBjb2xvcjogIzMzMztcbn1cbi5kYXRhVGFibGVzX3dyYXBwZXIgLmRhdGFUYWJsZXNfc2Nyb2xsIHtcbiAgY2xlYXI6IGJvdGg7XG59XG4uZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX3Njcm9sbCBkaXYuZGF0YVRhYmxlc19zY3JvbGxCb2R5IHtcbiAgKm1hcmdpbi10b3A6IC0xcHg7XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbn1cbi5kYXRhVGFibGVzX3dyYXBwZXIgLmRhdGFUYWJsZXNfc2Nyb2xsIGRpdi5kYXRhVGFibGVzX3Njcm9sbEJvZHkgPiB0YWJsZSA+IHRoZWFkID4gdHIgPiB0aCwgLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19zY3JvbGwgZGl2LmRhdGFUYWJsZXNfc2Nyb2xsQm9keSA+IHRhYmxlID4gdGhlYWQgPiB0ciA+IHRkLCAuZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX3Njcm9sbCBkaXYuZGF0YVRhYmxlc19zY3JvbGxCb2R5ID4gdGFibGUgPiB0Ym9keSA+IHRyID4gdGgsIC5kYXRhVGFibGVzX3dyYXBwZXIgLmRhdGFUYWJsZXNfc2Nyb2xsIGRpdi5kYXRhVGFibGVzX3Njcm9sbEJvZHkgPiB0YWJsZSA+IHRib2R5ID4gdHIgPiB0ZCB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG4uZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX3Njcm9sbCBkaXYuZGF0YVRhYmxlc19zY3JvbGxCb2R5ID4gdGFibGUgPiB0aGVhZCA+IHRyID4gdGggPiBkaXYuZGF0YVRhYmxlc19zaXppbmcsXG4uZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX3Njcm9sbCBkaXYuZGF0YVRhYmxlc19zY3JvbGxCb2R5ID4gdGFibGUgPiB0aGVhZCA+IHRyID4gdGQgPiBkaXYuZGF0YVRhYmxlc19zaXppbmcsIC5kYXRhVGFibGVzX3dyYXBwZXIgLmRhdGFUYWJsZXNfc2Nyb2xsIGRpdi5kYXRhVGFibGVzX3Njcm9sbEJvZHkgPiB0YWJsZSA+IHRib2R5ID4gdHIgPiB0aCA+IGRpdi5kYXRhVGFibGVzX3NpemluZyxcbi5kYXRhVGFibGVzX3dyYXBwZXIgLmRhdGFUYWJsZXNfc2Nyb2xsIGRpdi5kYXRhVGFibGVzX3Njcm9sbEJvZHkgPiB0YWJsZSA+IHRib2R5ID4gdHIgPiB0ZCA+IGRpdi5kYXRhVGFibGVzX3NpemluZyB7XG4gIGhlaWdodDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbn1cbi5kYXRhVGFibGVzX3dyYXBwZXIubm8tZm9vdGVyIC5kYXRhVGFibGVzX3Njcm9sbEJvZHkge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzExMTtcbn1cbi5kYXRhVGFibGVzX3dyYXBwZXIubm8tZm9vdGVyIGRpdi5kYXRhVGFibGVzX3Njcm9sbEhlYWQgdGFibGUuZGF0YVRhYmxlLFxuLmRhdGFUYWJsZXNfd3JhcHBlci5uby1mb290ZXIgZGl2LmRhdGFUYWJsZXNfc2Nyb2xsQm9keSA+IHRhYmxlIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbn1cbi5kYXRhVGFibGVzX3dyYXBwZXI6YWZ0ZXIge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb250ZW50OiBcIlwiO1xuICBjbGVhcjogYm90aDtcbiAgaGVpZ2h0OiAwO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX2luZm8sXG4gIC5kYXRhVGFibGVzX3dyYXBwZXIgLmRhdGFUYWJsZXNfcGFnaW5hdGUge1xuICAgIGZsb2F0OiBub25lO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuICAuZGF0YVRhYmxlc193cmFwcGVyIC5kYXRhVGFibGVzX3BhZ2luYXRlIHtcbiAgICBtYXJnaW4tdG9wOiAwLjVlbTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjQwcHgpIHtcbiAgLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19sZW5ndGgsXG4gIC5kYXRhVGFibGVzX3dyYXBwZXIgLmRhdGFUYWJsZXNfZmlsdGVyIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbiAgLmRhdGFUYWJsZXNfd3JhcHBlciAuZGF0YVRhYmxlc19maWx0ZXIge1xuICAgIG1hcmdpbi10b3A6IDAuNWVtO1xuICB9XG59XG4iLCJ0YWJsZS5kYXRhVGFibGUuZHRyLWlubGluZS5jb2xsYXBzZWQgPiB0Ym9keSA+IHRyID4gdGQuY2hpbGQsXG50YWJsZS5kYXRhVGFibGUuZHRyLWlubGluZS5jb2xsYXBzZWQgPiB0Ym9keSA+IHRyID4gdGguY2hpbGQsXG50YWJsZS5kYXRhVGFibGUuZHRyLWlubGluZS5jb2xsYXBzZWQgPiB0Ym9keSA+IHRyID4gdGQuZGF0YVRhYmxlc19lbXB0eSB7XG4gIGN1cnNvcjogZGVmYXVsdCAhaW1wb3J0YW50O1xufVxudGFibGUuZGF0YVRhYmxlLmR0ci1pbmxpbmUuY29sbGFwc2VkID4gdGJvZHkgPiB0ciA+IHRkLmNoaWxkOmJlZm9yZSxcbnRhYmxlLmRhdGFUYWJsZS5kdHItaW5saW5lLmNvbGxhcHNlZCA+IHRib2R5ID4gdHIgPiB0aC5jaGlsZDpiZWZvcmUsXG50YWJsZS5kYXRhVGFibGUuZHRyLWlubGluZS5jb2xsYXBzZWQgPiB0Ym9keSA+IHRyID4gdGQuZGF0YVRhYmxlc19lbXB0eTpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG50YWJsZS5kYXRhVGFibGUuZHRyLWlubGluZS5jb2xsYXBzZWQgPiB0Ym9keSA+IHRyW3JvbGU9XCJyb3dcIl0gPiB0ZDpmaXJzdC1jaGlsZCxcbnRhYmxlLmRhdGFUYWJsZS5kdHItaW5saW5lLmNvbGxhcHNlZCA+IHRib2R5ID4gdHJbcm9sZT1cInJvd1wiXSA+IHRoOmZpcnN0LWNoaWxkIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbnRhYmxlLmRhdGFUYWJsZS5kdHItaW5saW5lLmNvbGxhcHNlZCA+IHRib2R5ID4gdHJbcm9sZT1cInJvd1wiXSA+IHRkOmZpcnN0LWNoaWxkOmJlZm9yZSxcbnRhYmxlLmRhdGFUYWJsZS5kdHItaW5saW5lLmNvbGxhcHNlZCA+IHRib2R5ID4gdHJbcm9sZT1cInJvd1wiXSA+IHRoOmZpcnN0LWNoaWxkOmJlZm9yZSB7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiAwO1xuICBoZWlnaHQ6IDE2cHg7XG4gIHdpZHRoOiAxNnB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb250ZW50OiAnJztcbiAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWcvaWNvbnMvaV9hZGQuc3ZnJykgbm8tcmVwZWF0IDUwJSA1MCUgLyAxMDAlIGF1dG87XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbn1cbnRhYmxlLmRhdGFUYWJsZS5kdHItaW5saW5lLmNvbGxhcHNlZCA+IHRib2R5ID4gdHIucGFyZW50ID4gdGQ6Zmlyc3QtY2hpbGQ6YmVmb3JlLFxudGFibGUuZGF0YVRhYmxlLmR0ci1pbmxpbmUuY29sbGFwc2VkID4gdGJvZHkgPiB0ci5wYXJlbnQgPiB0aDpmaXJzdC1jaGlsZDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy9pY29ucy9pX3JlbW92ZS5zdmcnKTtcbn1cbnRhYmxlLmRhdGFUYWJsZS5kdHItaW5saW5lLmNvbGxhcHNlZC5jb21wYWN0ID4gdGJvZHkgPiB0ciA+IHRkOmZpcnN0LWNoaWxkLFxudGFibGUuZGF0YVRhYmxlLmR0ci1pbmxpbmUuY29sbGFwc2VkLmNvbXBhY3QgPiB0Ym9keSA+IHRyID4gdGg6Zmlyc3QtY2hpbGQge1xuICBwYWRkaW5nLWxlZnQ6IDI3cHg7XG59XG50YWJsZS5kYXRhVGFibGUuZHRyLWlubGluZS5jb2xsYXBzZWQuY29tcGFjdCA+IHRib2R5ID4gdHIgPiB0ZDpmaXJzdC1jaGlsZDpiZWZvcmUsXG50YWJsZS5kYXRhVGFibGUuZHRyLWlubGluZS5jb2xsYXBzZWQuY29tcGFjdCA+IHRib2R5ID4gdHIgPiB0aDpmaXJzdC1jaGlsZDpiZWZvcmUge1xuICB0b3A6IDVweDtcbiAgbGVmdDogNHB4O1xuICBoZWlnaHQ6IDE0cHg7XG4gIHdpZHRoOiAxNHB4O1xuICBib3JkZXItcmFkaXVzOiAxNHB4O1xuICBsaW5lLWhlaWdodDogMTRweDtcbiAgdGV4dC1pbmRlbnQ6IDNweDtcbn1cbnRhYmxlLmRhdGFUYWJsZS5kdHItY29sdW1uID4gdGJvZHkgPiB0ciA+IHRkLmNvbnRyb2wsXG50YWJsZS5kYXRhVGFibGUuZHRyLWNvbHVtbiA+IHRib2R5ID4gdHIgPiB0aC5jb250cm9sIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG50YWJsZS5kYXRhVGFibGUuZHRyLWNvbHVtbiA+IHRib2R5ID4gdHIgPiB0ZC5jb250cm9sOmJlZm9yZSxcbnRhYmxlLmRhdGFUYWJsZS5kdHItY29sdW1uID4gdGJvZHkgPiB0ciA+IHRoLmNvbnRyb2w6YmVmb3JlIHtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgaGVpZ2h0OiAxNnB4O1xuICB3aWR0aDogMTZweDtcbiAgbWFyZ2luLXRvcDogLTEwcHg7XG4gIG1hcmdpbi1sZWZ0OiAtMTBweDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29sb3I6IHdoaXRlO1xuICBib3JkZXI6IDJweCBzb2xpZCB3aGl0ZTtcbiAgYm9yZGVyLXJhZGl1czogMTRweDtcbiAgYm94LXNoYWRvdzogMCAwIDNweCAjNDQ0O1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LWluZGVudDogMCAhaW1wb3J0YW50O1xuICBmb250LWZhbWlseTogJ0NvdXJpZXIgTmV3JywgQ291cmllciwgbW9ub3NwYWNlO1xuICBsaW5lLWhlaWdodDogMTRweDtcbiAgY29udGVudDogJysnO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzFiMTMxO1xufVxudGFibGUuZGF0YVRhYmxlLmR0ci1jb2x1bW4gPiB0Ym9keSA+IHRyLnBhcmVudCB0ZC5jb250cm9sOmJlZm9yZSxcbnRhYmxlLmRhdGFUYWJsZS5kdHItY29sdW1uID4gdGJvZHkgPiB0ci5wYXJlbnQgdGguY29udHJvbDpiZWZvcmUge1xuICBjb250ZW50OiAnLSc7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkMzMzMzM7XG59XG50YWJsZS5kYXRhVGFibGUgPiB0Ym9keSA+IHRyLmNoaWxkIHtcbiAgcGFkZGluZzogMC41ZW0gMWVtO1xufVxudGFibGUuZGF0YVRhYmxlID4gdGJvZHkgPiB0ci5jaGlsZDpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG59XG50YWJsZS5kYXRhVGFibGUgPiB0Ym9keSA+IHRyLmNoaWxkIHVsLmR0ci1kZXRhaWxzIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbn1cbnRhYmxlLmRhdGFUYWJsZSA+IHRib2R5ID4gdHIuY2hpbGQgdWwuZHRyLWRldGFpbHMgPiBsaSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZWZlZmVmO1xuICBwYWRkaW5nOiAwLjVlbSAwO1xufVxudGFibGUuZGF0YVRhYmxlID4gdGJvZHkgPiB0ci5jaGlsZCB1bC5kdHItZGV0YWlscyA+IGxpOmZpcnN0LWNoaWxkIHtcbiAgcGFkZGluZy10b3A6IDA7XG59XG50YWJsZS5kYXRhVGFibGUgPiB0Ym9keSA+IHRyLmNoaWxkIHVsLmR0ci1kZXRhaWxzID4gbGk6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG59XG50YWJsZS5kYXRhVGFibGUgPiB0Ym9keSA+IHRyLmNoaWxkIHNwYW4uZHRyLXRpdGxlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtaW4td2lkdGg6IDc1cHg7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG5kaXYuZHRyLW1vZGFsIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDEwMDtcbiAgcGFkZGluZzogMTBlbSAxZW07XG59XG5kaXYuZHRyLW1vZGFsIGRpdi5kdHItbW9kYWwtZGlzcGxheSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDA7XG4gIHJpZ2h0OiAwO1xuICB3aWR0aDogNTAlO1xuICBoZWlnaHQ6IDUwJTtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIG1hcmdpbjogYXV0bztcbiAgei1pbmRleDogMTAyO1xuICBvdmVyZmxvdzogYXV0bztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjVmNztcbiAgYm9yZGVyOiAxcHggc29saWQgYmxhY2s7XG4gIGJvcmRlci1yYWRpdXM6IDAuNWVtO1xuICBib3gtc2hhZG93OiAwIDEycHggMzBweCByZ2JhKDAsIDAsIDAsIDAuNik7XG59XG5kaXYuZHRyLW1vZGFsIGRpdi5kdHItbW9kYWwtY29udGVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogMWVtO1xufVxuZGl2LmR0ci1tb2RhbCBkaXYuZHRyLW1vZGFsLWNsb3NlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDZweDtcbiAgcmlnaHQ6IDZweDtcbiAgd2lkdGg6IDIycHg7XG4gIGhlaWdodDogMjJweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2VhZWFlYTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y5ZjlmOTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgei1pbmRleDogMTI7XG59XG5kaXYuZHRyLW1vZGFsIGRpdi5kdHItbW9kYWwtY2xvc2U6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWFlYWVhO1xufVxuZGl2LmR0ci1tb2RhbCBkaXYuZHRyLW1vZGFsLWJhY2tncm91bmQge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgei1pbmRleDogMTAxO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNik7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIGRpdi5kdHItbW9kYWwgZGl2LmR0ci1tb2RhbC1kaXNwbGF5IHtcbiAgICB3aWR0aDogOTUlO1xuICB9XG59XG4iLCIvKiEgalF1ZXJ5IFVJIC0gdjEuMTIuMSAtIDIwMTctMTEtMTdcbiogaHR0cDovL2pxdWVyeXVpLmNvbVxuKiBJbmNsdWRlczogZHJhZ2dhYmxlLmNzcywgY29yZS5jc3MsIHJlc2l6YWJsZS5jc3MsIHNlbGVjdGFibGUuY3NzLCBzb3J0YWJsZS5jc3MsIGFjY29yZGlvbi5jc3MsIGF1dG9jb21wbGV0ZS5jc3MsIG1lbnUuY3NzLCBidXR0b24uY3NzLCBjb250cm9sZ3JvdXAuY3NzLCBjaGVja2JveHJhZGlvLmNzcywgZGF0ZXBpY2tlci5jc3MsIGRpYWxvZy5jc3MsIHByb2dyZXNzYmFyLmNzcywgc2VsZWN0bWVudS5jc3MsIHNsaWRlci5jc3MsIHNwaW5uZXIuY3NzLCB0YWJzLmNzcywgdG9vbHRpcC5jc3NcbiogQ29weXJpZ2h0IGpRdWVyeSBGb3VuZGF0aW9uIGFuZCBvdGhlciBjb250cmlidXRvcnM7IExpY2Vuc2VkIE1JVCAqL1xuXG4udWktZHJhZ2dhYmxlLWhhbmRsZSB7XG5cdC1tcy10b3VjaC1hY3Rpb246IG5vbmU7XG5cdHRvdWNoLWFjdGlvbjogbm9uZTtcbn1cbi8qIExheW91dCBoZWxwZXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS1oZWxwZXItaGlkZGVuIHtcblx0ZGlzcGxheTogbm9uZTtcbn1cbi51aS1oZWxwZXItaGlkZGVuLWFjY2Vzc2libGUge1xuXHRib3JkZXI6IDA7XG5cdGNsaXA6IHJlY3QoMCAwIDAgMCk7XG5cdGhlaWdodDogMXB4O1xuXHRtYXJnaW46IC0xcHg7XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cdHBhZGRpbmc6IDA7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0d2lkdGg6IDFweDtcbn1cbi51aS1oZWxwZXItcmVzZXQge1xuXHRtYXJnaW46IDA7XG5cdHBhZGRpbmc6IDA7XG5cdGJvcmRlcjogMDtcblx0b3V0bGluZTogMDtcblx0bGluZS1oZWlnaHQ6IDEuMztcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRmb250LXNpemU6IDEwMCU7XG5cdGxpc3Qtc3R5bGU6IG5vbmU7XG59XG4udWktaGVscGVyLWNsZWFyZml4OmJlZm9yZSxcbi51aS1oZWxwZXItY2xlYXJmaXg6YWZ0ZXIge1xuXHRjb250ZW50OiBcIlwiO1xuXHRkaXNwbGF5OiB0YWJsZTtcblx0Ym9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbn1cbi51aS1oZWxwZXItY2xlYXJmaXg6YWZ0ZXIge1xuXHRjbGVhcjogYm90aDtcbn1cbi51aS1oZWxwZXItemZpeCB7XG5cdHdpZHRoOiAxMDAlO1xuXHRoZWlnaHQ6IDEwMCU7XG5cdHRvcDogMDtcblx0bGVmdDogMDtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHRvcGFjaXR5OiAwO1xuXHRmaWx0ZXI6QWxwaGEoT3BhY2l0eT0wKTsgLyogc3VwcG9ydDogSUU4ICovXG59XG5cbi51aS1mcm9udCB7XG5cdHotaW5kZXg6IDEwMDtcbn1cblxuXG4vKiBJbnRlcmFjdGlvbiBDdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS1zdGF0ZS1kaXNhYmxlZCB7XG5cdGN1cnNvcjogZGVmYXVsdCAhaW1wb3J0YW50O1xuXHRwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuXG4vKiBJY29uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4udWktaWNvbiB7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcblx0bWFyZ2luLXRvcDogLS4yNWVtO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHRleHQtaW5kZW50OiAtOTk5OTlweDtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cblxuLnVpLXdpZGdldC1pY29uLWJsb2NrIHtcblx0bGVmdDogNTAlO1xuXHRtYXJnaW4tbGVmdDogLThweDtcblx0ZGlzcGxheTogYmxvY2s7XG59XG5cbi8qIE1pc2MgdmlzdWFsc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIE92ZXJsYXlzICovXG4udWktd2lkZ2V0LW92ZXJsYXkge1xuXHRwb3NpdGlvbjogZml4ZWQ7XG5cdHRvcDogMDtcblx0bGVmdDogMDtcblx0d2lkdGg6IDEwMCU7XG5cdGhlaWdodDogMTAwJTtcbn1cbi51aS1yZXNpemFibGUge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4udWktcmVzaXphYmxlLWhhbmRsZSB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0Zm9udC1zaXplOiAwLjFweDtcblx0ZGlzcGxheTogYmxvY2s7XG5cdC1tcy10b3VjaC1hY3Rpb246IG5vbmU7XG5cdHRvdWNoLWFjdGlvbjogbm9uZTtcbn1cbi51aS1yZXNpemFibGUtZGlzYWJsZWQgLnVpLXJlc2l6YWJsZS1oYW5kbGUsXG4udWktcmVzaXphYmxlLWF1dG9oaWRlIC51aS1yZXNpemFibGUtaGFuZGxlIHtcblx0ZGlzcGxheTogbm9uZTtcbn1cbi51aS1yZXNpemFibGUtbiB7XG5cdGN1cnNvcjogbi1yZXNpemU7XG5cdGhlaWdodDogN3B4O1xuXHR3aWR0aDogMTAwJTtcblx0dG9wOiAtNXB4O1xuXHRsZWZ0OiAwO1xufVxuLnVpLXJlc2l6YWJsZS1zIHtcblx0Y3Vyc29yOiBzLXJlc2l6ZTtcblx0aGVpZ2h0OiA3cHg7XG5cdHdpZHRoOiAxMDAlO1xuXHRib3R0b206IC01cHg7XG5cdGxlZnQ6IDA7XG59XG4udWktcmVzaXphYmxlLWUge1xuXHRjdXJzb3I6IGUtcmVzaXplO1xuXHR3aWR0aDogN3B4O1xuXHRyaWdodDogLTVweDtcblx0dG9wOiAwO1xuXHRoZWlnaHQ6IDEwMCU7XG59XG4udWktcmVzaXphYmxlLXcge1xuXHRjdXJzb3I6IHctcmVzaXplO1xuXHR3aWR0aDogN3B4O1xuXHRsZWZ0OiAtNXB4O1xuXHR0b3A6IDA7XG5cdGhlaWdodDogMTAwJTtcbn1cbi51aS1yZXNpemFibGUtc2Uge1xuXHRjdXJzb3I6IHNlLXJlc2l6ZTtcblx0d2lkdGg6IDEycHg7XG5cdGhlaWdodDogMTJweDtcblx0cmlnaHQ6IDFweDtcblx0Ym90dG9tOiAxcHg7XG59XG4udWktcmVzaXphYmxlLXN3IHtcblx0Y3Vyc29yOiBzdy1yZXNpemU7XG5cdHdpZHRoOiA5cHg7XG5cdGhlaWdodDogOXB4O1xuXHRsZWZ0OiAtNXB4O1xuXHRib3R0b206IC01cHg7XG59XG4udWktcmVzaXphYmxlLW53IHtcblx0Y3Vyc29yOiBudy1yZXNpemU7XG5cdHdpZHRoOiA5cHg7XG5cdGhlaWdodDogOXB4O1xuXHRsZWZ0OiAtNXB4O1xuXHR0b3A6IC01cHg7XG59XG4udWktcmVzaXphYmxlLW5lIHtcblx0Y3Vyc29yOiBuZS1yZXNpemU7XG5cdHdpZHRoOiA5cHg7XG5cdGhlaWdodDogOXB4O1xuXHRyaWdodDogLTVweDtcblx0dG9wOiAtNXB4O1xufVxuLnVpLXNlbGVjdGFibGUge1xuXHQtbXMtdG91Y2gtYWN0aW9uOiBub25lO1xuXHR0b3VjaC1hY3Rpb246IG5vbmU7XG59XG4udWktc2VsZWN0YWJsZS1oZWxwZXIge1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHotaW5kZXg6IDEwMDtcblx0Ym9yZGVyOiAxcHggZG90dGVkIGJsYWNrO1xufVxuLnVpLXNvcnRhYmxlLWhhbmRsZSB7XG5cdC1tcy10b3VjaC1hY3Rpb246IG5vbmU7XG5cdHRvdWNoLWFjdGlvbjogbm9uZTtcbn1cbi51aS1hY2NvcmRpb24gLnVpLWFjY29yZGlvbi1oZWFkZXIge1xuXHRkaXNwbGF5OiBibG9jaztcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdG1hcmdpbjogMnB4IDAgMCAwO1xuXHRwYWRkaW5nOiAuNWVtIC41ZW0gLjVlbSAuN2VtO1xuXHRmb250LXNpemU6IDEwMCU7XG59XG4udWktYWNjb3JkaW9uIC51aS1hY2NvcmRpb24tY29udGVudCB7XG5cdHBhZGRpbmc6IDFlbSAyLjJlbTtcblx0Ym9yZGVyLXRvcDogMDtcblx0b3ZlcmZsb3c6IGF1dG87XG59XG4udWktYXV0b2NvbXBsZXRlIHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6IDA7XG5cdGxlZnQ6IDA7XG5cdGN1cnNvcjogZGVmYXVsdDtcbn1cbi51aS1tZW51IHtcblx0bGlzdC1zdHlsZTogbm9uZTtcblx0cGFkZGluZzogMDtcblx0bWFyZ2luOiAwO1xuXHRkaXNwbGF5OiBibG9jaztcblx0b3V0bGluZTogMDtcbn1cbi51aS1tZW51IC51aS1tZW51IHtcblx0cG9zaXRpb246IGFic29sdXRlO1xufVxuLnVpLW1lbnUgLnVpLW1lbnUtaXRlbSB7XG5cdG1hcmdpbjogMDtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHQvKiBzdXBwb3J0OiBJRTEwLCBzZWUgIzg4NDQgKi9cblx0bGlzdC1zdHlsZS1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9naWY7YmFzZTY0LFIwbEdPRGxoQVFBQkFJQUFBQUFBQVAvLy95SDVCQUVBQUFBQUxBQUFBQUFCQUFFQUFBSUJSQUE3XCIpO1xufVxuLnVpLW1lbnUgLnVpLW1lbnUtaXRlbS13cmFwcGVyIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRwYWRkaW5nOiAzcHggMWVtIDNweCAuNGVtO1xufVxuLnVpLW1lbnUgLnVpLW1lbnUtZGl2aWRlciB7XG5cdG1hcmdpbjogNXB4IDA7XG5cdGhlaWdodDogMDtcblx0Zm9udC1zaXplOiAwO1xuXHRsaW5lLWhlaWdodDogMDtcblx0Ym9yZGVyLXdpZHRoOiAxcHggMCAwIDA7XG59XG4udWktbWVudSAudWktc3RhdGUtZm9jdXMsXG4udWktbWVudSAudWktc3RhdGUtYWN0aXZlIHtcblx0bWFyZ2luOiAtMXB4O1xufVxuXG4vKiBpY29uIHN1cHBvcnQgKi9cbi51aS1tZW51LWljb25zIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xufVxuLnVpLW1lbnUtaWNvbnMgLnVpLW1lbnUtaXRlbS13cmFwcGVyIHtcblx0cGFkZGluZy1sZWZ0OiAyZW07XG59XG5cbi8qIGxlZnQtYWxpZ25lZCAqL1xuLnVpLW1lbnUgLnVpLWljb24ge1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHRvcDogMDtcblx0Ym90dG9tOiAwO1xuXHRsZWZ0OiAuMmVtO1xuXHRtYXJnaW46IGF1dG8gMDtcbn1cblxuLyogcmlnaHQtYWxpZ25lZCAqL1xuLnVpLW1lbnUgLnVpLW1lbnUtaWNvbiB7XG5cdGxlZnQ6IGF1dG87XG5cdHJpZ2h0OiAwO1xufVxuLnVpLWJ1dHRvbiB7XG5cdHBhZGRpbmc6IC40ZW0gMWVtO1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0bGluZS1oZWlnaHQ6IG5vcm1hbDtcblx0bWFyZ2luLXJpZ2h0OiAuMWVtO1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblx0LXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcblx0LW1vei11c2VyLXNlbGVjdDogbm9uZTtcblx0LW1zLXVzZXItc2VsZWN0OiBub25lO1xuXHR1c2VyLXNlbGVjdDogbm9uZTtcblxuXHQvKiBTdXBwb3J0OiBJRSA8PSAxMSAqL1xuXHRvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLnVpLWJ1dHRvbixcbi51aS1idXR0b246bGluayxcbi51aS1idXR0b246dmlzaXRlZCxcbi51aS1idXR0b246aG92ZXIsXG4udWktYnV0dG9uOmFjdGl2ZSB7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLyogdG8gbWFrZSByb29tIGZvciB0aGUgaWNvbiwgYSB3aWR0aCBuZWVkcyB0byBiZSBzZXQgaGVyZSAqL1xuLnVpLWJ1dHRvbi1pY29uLW9ubHkge1xuXHR3aWR0aDogMmVtO1xuXHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXHR0ZXh0LWluZGVudDogLTk5OTlweDtcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLyogbm8gaWNvbiBzdXBwb3J0IGZvciBpbnB1dCBlbGVtZW50cyAqL1xuaW5wdXQudWktYnV0dG9uLnVpLWJ1dHRvbi1pY29uLW9ubHkge1xuXHR0ZXh0LWluZGVudDogMDtcbn1cblxuLyogYnV0dG9uIGljb24gZWxlbWVudChzKSAqL1xuLnVpLWJ1dHRvbi1pY29uLW9ubHkgLnVpLWljb24ge1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHRvcDogNTAlO1xuXHRsZWZ0OiA1MCU7XG5cdG1hcmdpbi10b3A6IC04cHg7XG5cdG1hcmdpbi1sZWZ0OiAtOHB4O1xufVxuXG4udWktYnV0dG9uLnVpLWljb24tbm90ZXh0IC51aS1pY29uIHtcblx0cGFkZGluZzogMDtcblx0d2lkdGg6IDIuMWVtO1xuXHRoZWlnaHQ6IDIuMWVtO1xuXHR0ZXh0LWluZGVudDogLTk5OTlweDtcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcblxufVxuXG5pbnB1dC51aS1idXR0b24udWktaWNvbi1ub3RleHQgLnVpLWljb24ge1xuXHR3aWR0aDogYXV0bztcblx0aGVpZ2h0OiBhdXRvO1xuXHR0ZXh0LWluZGVudDogMDtcblx0d2hpdGUtc3BhY2U6IG5vcm1hbDtcblx0cGFkZGluZzogLjRlbSAxZW07XG59XG5cbi8qIHdvcmthcm91bmRzICovXG4vKiBTdXBwb3J0OiBGaXJlZm94IDUgLSA0MCAqL1xuaW5wdXQudWktYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuYnV0dG9uLnVpLWJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lciB7XG5cdGJvcmRlcjogMDtcblx0cGFkZGluZzogMDtcbn1cbi51aS1jb250cm9sZ3JvdXAge1xuXHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG4udWktY29udHJvbGdyb3VwID4gLnVpLWNvbnRyb2xncm91cC1pdGVtIHtcblx0ZmxvYXQ6IGxlZnQ7XG5cdG1hcmdpbi1sZWZ0OiAwO1xuXHRtYXJnaW4tcmlnaHQ6IDA7XG59XG4udWktY29udHJvbGdyb3VwID4gLnVpLWNvbnRyb2xncm91cC1pdGVtOmZvY3VzLFxuLnVpLWNvbnRyb2xncm91cCA+IC51aS1jb250cm9sZ3JvdXAtaXRlbS51aS12aXN1YWwtZm9jdXMge1xuXHR6LWluZGV4OiA5OTk5O1xufVxuLnVpLWNvbnRyb2xncm91cC12ZXJ0aWNhbCA+IC51aS1jb250cm9sZ3JvdXAtaXRlbSB7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRmbG9hdDogbm9uZTtcblx0d2lkdGg6IDEwMCU7XG5cdG1hcmdpbi10b3A6IDA7XG5cdG1hcmdpbi1ib3R0b206IDA7XG5cdHRleHQtYWxpZ246IGxlZnQ7XG59XG4udWktY29udHJvbGdyb3VwLXZlcnRpY2FsIC51aS1jb250cm9sZ3JvdXAtaXRlbSB7XG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG4udWktY29udHJvbGdyb3VwIC51aS1jb250cm9sZ3JvdXAtbGFiZWwge1xuXHRwYWRkaW5nOiAuNGVtIDFlbTtcbn1cbi51aS1jb250cm9sZ3JvdXAgLnVpLWNvbnRyb2xncm91cC1sYWJlbCBzcGFuIHtcblx0Zm9udC1zaXplOiA4MCU7XG59XG4udWktY29udHJvbGdyb3VwLWhvcml6b250YWwgLnVpLWNvbnRyb2xncm91cC1sYWJlbCArIC51aS1jb250cm9sZ3JvdXAtaXRlbSB7XG5cdGJvcmRlci1sZWZ0OiBub25lO1xufVxuLnVpLWNvbnRyb2xncm91cC12ZXJ0aWNhbCAudWktY29udHJvbGdyb3VwLWxhYmVsICsgLnVpLWNvbnRyb2xncm91cC1pdGVtIHtcblx0Ym9yZGVyLXRvcDogbm9uZTtcbn1cbi51aS1jb250cm9sZ3JvdXAtaG9yaXpvbnRhbCAudWktY29udHJvbGdyb3VwLWxhYmVsLnVpLXdpZGdldC1jb250ZW50IHtcblx0Ym9yZGVyLXJpZ2h0OiBub25lO1xufVxuLnVpLWNvbnRyb2xncm91cC12ZXJ0aWNhbCAudWktY29udHJvbGdyb3VwLWxhYmVsLnVpLXdpZGdldC1jb250ZW50IHtcblx0Ym9yZGVyLWJvdHRvbTogbm9uZTtcbn1cblxuLyogU3Bpbm5lciBzcGVjaWZpYyBzdHlsZSBmaXhlcyAqL1xuLnVpLWNvbnRyb2xncm91cC12ZXJ0aWNhbCAudWktc3Bpbm5lci1pbnB1dCB7XG5cblx0LyogU3VwcG9ydDogSUU4IG9ubHksIEFuZHJvaWQgPCA0LjQgb25seSAqL1xuXHR3aWR0aDogNzUlO1xuXHR3aWR0aDogY2FsYyggMTAwJSAtIDIuNGVtICk7XG59XG4udWktY29udHJvbGdyb3VwLXZlcnRpY2FsIC51aS1zcGlubmVyIC51aS1zcGlubmVyLXVwIHtcblx0Ym9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG59XG5cbi51aS1jaGVja2JveHJhZGlvLWxhYmVsIC51aS1pY29uLWJhY2tncm91bmQge1xuXHRib3gtc2hhZG93OiBpbnNldCAxcHggMXB4IDFweCAjY2NjO1xuXHRib3JkZXItcmFkaXVzOiAuMTJlbTtcblx0Ym9yZGVyOiBub25lO1xufVxuLnVpLWNoZWNrYm94cmFkaW8tcmFkaW8tbGFiZWwgLnVpLWljb24tYmFja2dyb3VuZCB7XG5cdHdpZHRoOiAxNnB4O1xuXHRoZWlnaHQ6IDE2cHg7XG5cdGJvcmRlci1yYWRpdXM6IDFlbTtcblx0b3ZlcmZsb3c6IHZpc2libGU7XG5cdGJvcmRlcjogbm9uZTtcbn1cbi51aS1jaGVja2JveHJhZGlvLXJhZGlvLWxhYmVsLnVpLWNoZWNrYm94cmFkaW8tY2hlY2tlZCAudWktaWNvbixcbi51aS1jaGVja2JveHJhZGlvLXJhZGlvLWxhYmVsLnVpLWNoZWNrYm94cmFkaW8tY2hlY2tlZDpob3ZlciAudWktaWNvbiB7XG5cdGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG5cdHdpZHRoOiA4cHg7XG5cdGhlaWdodDogOHB4O1xuXHRib3JkZXItd2lkdGg6IDRweDtcblx0Ym9yZGVyLXN0eWxlOiBzb2xpZDtcbn1cbi51aS1jaGVja2JveHJhZGlvLWRpc2FibGVkIHtcblx0cG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4udWktZGF0ZXBpY2tlciB7XG5cdHdpZHRoOiAxN2VtO1xuXHRwYWRkaW5nOiAuMmVtIC4yZW0gMDtcblx0ZGlzcGxheTogbm9uZTtcbn1cbi51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLWhlYWRlciB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0cGFkZGluZzogLjJlbSAwO1xufVxuLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItcHJldixcbi51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLW5leHQge1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHRvcDogMnB4O1xuXHR3aWR0aDogMS44ZW07XG5cdGhlaWdodDogMS44ZW07XG59XG4udWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci1wcmV2LWhvdmVyLFxuLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItbmV4dC1ob3ZlciB7XG5cdHRvcDogMXB4O1xufVxuLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItcHJldiB7XG5cdGxlZnQ6IDJweDtcbn1cbi51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLW5leHQge1xuXHRyaWdodDogMnB4O1xufVxuLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItcHJldi1ob3ZlciB7XG5cdGxlZnQ6IDFweDtcbn1cbi51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLW5leHQtaG92ZXIge1xuXHRyaWdodDogMXB4O1xufVxuLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItcHJldiBzcGFuLFxuLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItbmV4dCBzcGFuIHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0bGVmdDogNTAlO1xuXHRtYXJnaW4tbGVmdDogLThweDtcblx0dG9wOiA1MCU7XG5cdG1hcmdpbi10b3A6IC04cHg7XG59XG4udWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci10aXRsZSB7XG5cdG1hcmdpbjogMCAyLjNlbTtcblx0bGluZS1oZWlnaHQ6IDEuOGVtO1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4udWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci10aXRsZSBzZWxlY3Qge1xuXHRmb250LXNpemU6IDFlbTtcblx0bWFyZ2luOiAxcHggMDtcbn1cbi51aS1kYXRlcGlja2VyIHNlbGVjdC51aS1kYXRlcGlja2VyLW1vbnRoLFxuLnVpLWRhdGVwaWNrZXIgc2VsZWN0LnVpLWRhdGVwaWNrZXIteWVhciB7XG5cdHdpZHRoOiA0NSU7XG59XG4udWktZGF0ZXBpY2tlciB0YWJsZSB7XG5cdHdpZHRoOiAxMDAlO1xuXHRmb250LXNpemU6IC45ZW07XG5cdGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG5cdG1hcmdpbjogMCAwIC40ZW07XG59XG4udWktZGF0ZXBpY2tlciB0aCB7XG5cdHBhZGRpbmc6IC43ZW0gLjNlbTtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRmb250LXdlaWdodDogYm9sZDtcblx0Ym9yZGVyOiAwO1xufVxuLnVpLWRhdGVwaWNrZXIgdGQge1xuXHRib3JkZXI6IDA7XG5cdHBhZGRpbmc6IDFweDtcbn1cbi51aS1kYXRlcGlja2VyIHRkIHNwYW4sXG4udWktZGF0ZXBpY2tlciB0ZCBhIHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdHBhZGRpbmc6IC4yZW07XG5cdHRleHQtYWxpZ246IHJpZ2h0O1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4udWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci1idXR0b25wYW5lIHtcblx0YmFja2dyb3VuZC1pbWFnZTogbm9uZTtcblx0bWFyZ2luOiAuN2VtIDAgMCAwO1xuXHRwYWRkaW5nOiAwIC4yZW07XG5cdGJvcmRlci1sZWZ0OiAwO1xuXHRib3JkZXItcmlnaHQ6IDA7XG5cdGJvcmRlci1ib3R0b206IDA7XG59XG4udWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci1idXR0b25wYW5lIGJ1dHRvbiB7XG5cdGZsb2F0OiByaWdodDtcblx0bWFyZ2luOiAuNWVtIC4yZW0gLjRlbTtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHRwYWRkaW5nOiAuMmVtIC42ZW0gLjNlbSAuNmVtO1xuXHR3aWR0aDogYXV0bztcblx0b3ZlcmZsb3c6IHZpc2libGU7XG59XG4udWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci1idXR0b25wYW5lIGJ1dHRvbi51aS1kYXRlcGlja2VyLWN1cnJlbnQge1xuXHRmbG9hdDogbGVmdDtcbn1cblxuLyogd2l0aCBtdWx0aXBsZSBjYWxlbmRhcnMgKi9cbi51aS1kYXRlcGlja2VyLnVpLWRhdGVwaWNrZXItbXVsdGkge1xuXHR3aWR0aDogYXV0bztcbn1cbi51aS1kYXRlcGlja2VyLW11bHRpIC51aS1kYXRlcGlja2VyLWdyb3VwIHtcblx0ZmxvYXQ6IGxlZnQ7XG59XG4udWktZGF0ZXBpY2tlci1tdWx0aSAudWktZGF0ZXBpY2tlci1ncm91cCB0YWJsZSB7XG5cdHdpZHRoOiA5NSU7XG5cdG1hcmdpbjogMCBhdXRvIC40ZW07XG59XG4udWktZGF0ZXBpY2tlci1tdWx0aS0yIC51aS1kYXRlcGlja2VyLWdyb3VwIHtcblx0d2lkdGg6IDUwJTtcbn1cbi51aS1kYXRlcGlja2VyLW11bHRpLTMgLnVpLWRhdGVwaWNrZXItZ3JvdXAge1xuXHR3aWR0aDogMzMuMyU7XG59XG4udWktZGF0ZXBpY2tlci1tdWx0aS00IC51aS1kYXRlcGlja2VyLWdyb3VwIHtcblx0d2lkdGg6IDI1JTtcbn1cbi51aS1kYXRlcGlja2VyLW11bHRpIC51aS1kYXRlcGlja2VyLWdyb3VwLWxhc3QgLnVpLWRhdGVwaWNrZXItaGVhZGVyLFxuLnVpLWRhdGVwaWNrZXItbXVsdGkgLnVpLWRhdGVwaWNrZXItZ3JvdXAtbWlkZGxlIC51aS1kYXRlcGlja2VyLWhlYWRlciB7XG5cdGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xufVxuLnVpLWRhdGVwaWNrZXItbXVsdGkgLnVpLWRhdGVwaWNrZXItYnV0dG9ucGFuZSB7XG5cdGNsZWFyOiBsZWZ0O1xufVxuLnVpLWRhdGVwaWNrZXItcm93LWJyZWFrIHtcblx0Y2xlYXI6IGJvdGg7XG5cdHdpZHRoOiAxMDAlO1xuXHRmb250LXNpemU6IDA7XG59XG5cbi8qIFJUTCBzdXBwb3J0ICovXG4udWktZGF0ZXBpY2tlci1ydGwge1xuXHRkaXJlY3Rpb246IHJ0bDtcbn1cbi51aS1kYXRlcGlja2VyLXJ0bCAudWktZGF0ZXBpY2tlci1wcmV2IHtcblx0cmlnaHQ6IDJweDtcblx0bGVmdDogYXV0bztcbn1cbi51aS1kYXRlcGlja2VyLXJ0bCAudWktZGF0ZXBpY2tlci1uZXh0IHtcblx0bGVmdDogMnB4O1xuXHRyaWdodDogYXV0bztcbn1cbi51aS1kYXRlcGlja2VyLXJ0bCAudWktZGF0ZXBpY2tlci1wcmV2OmhvdmVyIHtcblx0cmlnaHQ6IDFweDtcblx0bGVmdDogYXV0bztcbn1cbi51aS1kYXRlcGlja2VyLXJ0bCAudWktZGF0ZXBpY2tlci1uZXh0OmhvdmVyIHtcblx0bGVmdDogMXB4O1xuXHRyaWdodDogYXV0bztcbn1cbi51aS1kYXRlcGlja2VyLXJ0bCAudWktZGF0ZXBpY2tlci1idXR0b25wYW5lIHtcblx0Y2xlYXI6IHJpZ2h0O1xufVxuLnVpLWRhdGVwaWNrZXItcnRsIC51aS1kYXRlcGlja2VyLWJ1dHRvbnBhbmUgYnV0dG9uIHtcblx0ZmxvYXQ6IGxlZnQ7XG59XG4udWktZGF0ZXBpY2tlci1ydGwgLnVpLWRhdGVwaWNrZXItYnV0dG9ucGFuZSBidXR0b24udWktZGF0ZXBpY2tlci1jdXJyZW50LFxuLnVpLWRhdGVwaWNrZXItcnRsIC51aS1kYXRlcGlja2VyLWdyb3VwIHtcblx0ZmxvYXQ6IHJpZ2h0O1xufVxuLnVpLWRhdGVwaWNrZXItcnRsIC51aS1kYXRlcGlja2VyLWdyb3VwLWxhc3QgLnVpLWRhdGVwaWNrZXItaGVhZGVyLFxuLnVpLWRhdGVwaWNrZXItcnRsIC51aS1kYXRlcGlja2VyLWdyb3VwLW1pZGRsZSAudWktZGF0ZXBpY2tlci1oZWFkZXIge1xuXHRib3JkZXItcmlnaHQtd2lkdGg6IDA7XG5cdGJvcmRlci1sZWZ0LXdpZHRoOiAxcHg7XG59XG5cbi8qIEljb25zICovXG4udWktZGF0ZXBpY2tlciAudWktaWNvbiB7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHR0ZXh0LWluZGVudDogLTk5OTk5cHg7XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdGxlZnQ6IC41ZW07XG5cdHRvcDogLjNlbTtcbn1cbi51aS1kaWFsb2cge1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHRvcDogMDtcblx0bGVmdDogMDtcblx0cGFkZGluZzogLjJlbTtcblx0b3V0bGluZTogMDtcbn1cbi51aS1kaWFsb2cgLnVpLWRpYWxvZy10aXRsZWJhciB7XG5cdHBhZGRpbmc6IC40ZW0gMWVtO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4udWktZGlhbG9nIC51aS1kaWFsb2ctdGl0bGUge1xuXHRmbG9hdDogbGVmdDtcblx0bWFyZ2luOiAuMWVtIDA7XG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cdHdpZHRoOiA5MCU7XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cdHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xufVxuLnVpLWRpYWxvZyAudWktZGlhbG9nLXRpdGxlYmFyLWNsb3NlIHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHRyaWdodDogLjNlbTtcblx0dG9wOiA1MCU7XG5cdHdpZHRoOiAyMHB4O1xuXHRtYXJnaW46IC0xMHB4IDAgMCAwO1xuXHRwYWRkaW5nOiAxcHg7XG5cdGhlaWdodDogMjBweDtcbn1cbi51aS1kaWFsb2cgLnVpLWRpYWxvZy1jb250ZW50IHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRib3JkZXI6IDA7XG5cdHBhZGRpbmc6IC41ZW0gMWVtO1xuXHRiYWNrZ3JvdW5kOiBub25lO1xuXHRvdmVyZmxvdzogYXV0bztcbn1cbi51aS1kaWFsb2cgLnVpLWRpYWxvZy1idXR0b25wYW5lIHtcblx0dGV4dC1hbGlnbjogbGVmdDtcblx0Ym9yZGVyLXdpZHRoOiAxcHggMCAwIDA7XG5cdGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG5cdG1hcmdpbi10b3A6IC41ZW07XG5cdHBhZGRpbmc6IC4zZW0gMWVtIC41ZW0gLjRlbTtcbn1cbi51aS1kaWFsb2cgLnVpLWRpYWxvZy1idXR0b25wYW5lIC51aS1kaWFsb2ctYnV0dG9uc2V0IHtcblx0ZmxvYXQ6IHJpZ2h0O1xufVxuLnVpLWRpYWxvZyAudWktZGlhbG9nLWJ1dHRvbnBhbmUgYnV0dG9uIHtcblx0bWFyZ2luOiAuNWVtIC40ZW0gLjVlbSAwO1xuXHRjdXJzb3I6IHBvaW50ZXI7XG59XG4udWktZGlhbG9nIC51aS1yZXNpemFibGUtbiB7XG5cdGhlaWdodDogMnB4O1xuXHR0b3A6IDA7XG59XG4udWktZGlhbG9nIC51aS1yZXNpemFibGUtZSB7XG5cdHdpZHRoOiAycHg7XG5cdHJpZ2h0OiAwO1xufVxuLnVpLWRpYWxvZyAudWktcmVzaXphYmxlLXMge1xuXHRoZWlnaHQ6IDJweDtcblx0Ym90dG9tOiAwO1xufVxuLnVpLWRpYWxvZyAudWktcmVzaXphYmxlLXcge1xuXHR3aWR0aDogMnB4O1xuXHRsZWZ0OiAwO1xufVxuLnVpLWRpYWxvZyAudWktcmVzaXphYmxlLXNlLFxuLnVpLWRpYWxvZyAudWktcmVzaXphYmxlLXN3LFxuLnVpLWRpYWxvZyAudWktcmVzaXphYmxlLW5lLFxuLnVpLWRpYWxvZyAudWktcmVzaXphYmxlLW53IHtcblx0d2lkdGg6IDdweDtcblx0aGVpZ2h0OiA3cHg7XG59XG4udWktZGlhbG9nIC51aS1yZXNpemFibGUtc2Uge1xuXHRyaWdodDogMDtcblx0Ym90dG9tOiAwO1xufVxuLnVpLWRpYWxvZyAudWktcmVzaXphYmxlLXN3IHtcblx0bGVmdDogMDtcblx0Ym90dG9tOiAwO1xufVxuLnVpLWRpYWxvZyAudWktcmVzaXphYmxlLW5lIHtcblx0cmlnaHQ6IDA7XG5cdHRvcDogMDtcbn1cbi51aS1kaWFsb2cgLnVpLXJlc2l6YWJsZS1udyB7XG5cdGxlZnQ6IDA7XG5cdHRvcDogMDtcbn1cbi51aS1kcmFnZ2FibGUgLnVpLWRpYWxvZy10aXRsZWJhciB7XG5cdGN1cnNvcjogbW92ZTtcbn1cbi51aS1wcm9ncmVzc2JhciB7XG5cdGhlaWdodDogMmVtO1xuXHR0ZXh0LWFsaWduOiBsZWZ0O1xuXHRvdmVyZmxvdzogaGlkZGVuO1xufVxuLnVpLXByb2dyZXNzYmFyIC51aS1wcm9ncmVzc2Jhci12YWx1ZSB7XG5cdG1hcmdpbjogLTFweDtcblx0aGVpZ2h0OiAxMDAlO1xufVxuLnVpLXByb2dyZXNzYmFyIC51aS1wcm9ncmVzc2Jhci1vdmVybGF5IHtcblx0YmFja2dyb3VuZDogdXJsKFwiZGF0YTppbWFnZS9naWY7YmFzZTY0LFIwbEdPRGxoS0FBb0FJQUJBQUFBQVAvLy95SC9DMDVGVkZORFFWQkZNaTR3QXdFQUFBQWgrUVFKQVFBQkFDd0FBQUFBS0FBb0FBQUNrWXdOcVhyZEM1MkRTMDZhN01GWkkrNEZIQkNLb0RlV0tYcXltUHFHcXh2SnJYWmJNeDdUdGMrdzlYZ1UyRkIzbE95UVJXRVQySUZHaVU5bTFmckRWcHhaWmM2YmZId3Y0YzFZWFA2azFWZHkyOTJGYjZVa3V2RnRYcHZXU3pBK0h5Y1hKSFVYaUdZSWlNZzJSNlc0NTlnbldHZkhOZGpJcURXVnFlbUgyZWtwT2JrcE9scHBXVXFaaXFyNmVkcXFXUUFBSWZrRUNRRUFBUUFzQUFBQUFDZ0FLQUFBQXBTTWdabkdmYXFjZzFFMnV1ekRtbUhVQlI4UWlsOTVoaVBLcVduM2FxdExzUzE4eTdHMVN6TmVvd1dCRU50UWQrVDFKa3RQMDVuelBUZEpabFI2dlV4TldXalYrdlVXaFdOa1dGd3hsOVZwWlJlZFljZmxJT0xhZmFhMjhYZHNIL3lubGNjMXVQVkRaeFFJUjBLMjUrY0lDQ21vcUNlNW1HaFpPZmVZU1VoNXlKY0p5cmtaV1dwYVI4ZG9KMm80TllxNjJsQUFBQ0g1QkFrQkFBRUFMQUFBQUFBb0FDZ0FBQUtWREk0WXkyMlpuSU5STnFvc3cwQnY3aTFneUhVa0ZqN29TYVdsdTNvdkM4R3hOc281Zmx1ejNxTFZoQlZlVC9MejdaVEh5eEw1ZERhbFFXUFZPc1FXdFJudXdYYUZUajlqVlZoOHBtYTlKalo0ellTajVaT3ltYTd1dW9sZmZoK0lSNWFXOTdjSHVCVVhLR0tYbEtqbitEaUhXTWNZSmFoNE4wbFlDTWxKT1hpcEdScjVxZGdvU1RycVdTcTZXRmwyeXBvYVVBQUFJZmtFQ1FFQUFRQXNBQUFBQUNnQUtBQUFBcGFFYjZITGdkL2lPN0ZOV3RjRldlK3VmT0RHalJmb2lKMmFrU2hidWViMHd0STUwem0wMnBidndmV0VNV0JRMXpLR2xMSWhza2lFUG05UjZ2Ulh4VjRaeldUMnlIT0dwV015b3JibEtsTnA4SG1IRWIvbENYamNXN2JtdFhQOFh0MjI5T1ZXUjFmb2QyZVdxTmZIdU1qWENQa0lHTmlsZU9pSW1WbUNPRW1vU2ZuM3lYbEpXbW9IR2hxcDZpbFl1V1lwbVRxS1VnQUFJZmtFQ1FFQUFRQXNBQUFBQUNnQUtBQUFBcGlFSDZrYjU4YmlRM0ZOV3RNRldXM2VOVmNvanVGR2ZxblpxU2VidVMwNnc1VjgwL1gwMnBLZTh6RndQNkVGV09UMWxERms4ckdFUmgxVFROT29jUTYxSG00WG0yVmV4VUhwemp5bVZpSHJGYmlFTHNlZlZybjZYS2ZudDJROUcvK1hkaWU0OTlYSGQyZzRoN2lvT0doWEdKYm9HQW5YU0Jub0J3S1l5ZmlvdWJaSjJIbjBSdVJaYWZsWk9pbDU2WnA2aWlvS1NYcFVBQUFoK1FRSkFRQUJBQ3dBQUFBQUtBQW9BQUFDa29RUnFSdm54dUk3a1UxYTFVVTViZDV0blNlT1pYaG1uNWxXSzNxTlRXdlJkUXhQOHF2YUMrL3lhWVF6WE83Qk12YVVFbUpSZDNUc2lNQWdzd21OWXJTZ1pkWXJUWDZ0U0hHWk83M2V6dUF3MnV4dVErQmJlWmZNeHNleFkzNSsvUWU0SjFpblYwZzR4M1dIdU1oSWwyalhPS1QyUStWVTVmZ29TVUk1MlZmWnlma0pHa2hhNmptWSthYVlkaXJxK2xRQUFDSDVCQWtCQUFFQUxBQUFBQUFvQUNnQUFBS1dCSUtwWWUwTDNZTktUb3Fzd1VsdnpuaWdkNHdpUjRLaFpyS3Q5VXBxaXA2MWk5RTN2TXZ4UmRIbGJFRmlFWGZrOVlBUll4T1paRDZWUTJwVXVuQm10UlhvMUxmOGhNVlZjTmw4SmFmVjM4YU0yL0Z1NVYxNkJuNjNyNnh0OTdqMDkrTVhTRmk0Qm5pR0ZhZTNoemJIOStoWUJ6a3B1VWg1YVptSHVhblpPWmdJdXZiR2lOZW9tQ25heHhhcDJ1cGFDWnNxKzFrQUFDSDVCQWtCQUFFQUxBQUFBQUFvQUNnQUFBS1hqSThCeTV6ZjRrT3hUVnJYTlZsdjFYMGQ4SUdaR0tMbk5wWXRtOExyOWNxVmV1T1N2Zk9XNzlEOWFESGl6TmhESmlkRlpoTnlkRWFoT2FESDZub210SmpwMXR1dEtvTldrdkE2SnFmUlZMSFUvUVVmYXU5bDJ4N0c1NGQxZmw5OTV4Y0lHQWRYcU1mQk5hZG9ZcmhIK01nMktCbHBWcGJsdUNpWG1NbloyU2g0R0JxSitja0lPcXFKNkxtS1NsbFptc29xNndwUUFBQWgrUVFKQVFBQkFDd0FBQUFBS0FBb0FBQUNsWXgvb0x2b3h1SkRrVTFhMVlVWmJKNTluU2QyWlhoV3FiUmEyL2dGOEd1MkRZM2lxczd5cnEreEJZRWtZdkZTTThhU1NPYkUrWmdSbDFCSEZaTnI3cFJDYXZaNUJXMjE0MmhZM0FOL3pXdHNtZjEycDlYeHhGbDJscExuMXJzZXp0ZlhaamRJV0lmMnM1ZEl0d2pZS0Jnbzl5ZzVwSGd6SlhURWVHbFp1ZW5weVBtcEdRb0tPV2tZbVNwYVNucUtpbGVJMkZBQUFDSDVCQWtCQUFFQUxBQUFBQUFvQUNnQUFBS1ZqQitndStqRzRrT1JUVnJWaFJsc25uMmRKM1psZUZhcHRGcmIrQ1htTzlPb3plTDVWZlA5OUh2QVdocGlVZGN3a3BCSDM4MjVBd1lkVTh4VHFsTEdodENvc0FyS01wdmZhMW1NUmFlOVZ2V1pmZUIyWGZQa2VMbW0xOGxVY0JqK3A1ZG5OOGpYWjNZSUdFaFl1T1VuNDVhb0NEa3AxNmhsNUlqWUp2aldLY25vR1FwcXlQbHBPaHIzYUVsYXFycTU2QnE3VkFBQU93PT1cIik7XG5cdGhlaWdodDogMTAwJTtcblx0ZmlsdGVyOiBhbHBoYShvcGFjaXR5PTI1KTsgLyogc3VwcG9ydDogSUU4ICovXG5cdG9wYWNpdHk6IDAuMjU7XG59XG4udWktcHJvZ3Jlc3NiYXItaW5kZXRlcm1pbmF0ZSAudWktcHJvZ3Jlc3NiYXItdmFsdWUge1xuXHRiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xufVxuLnVpLXNlbGVjdG1lbnUtbWVudSB7XG5cdHBhZGRpbmc6IDA7XG5cdG1hcmdpbjogMDtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6IDA7XG5cdGxlZnQ6IDA7XG5cdGRpc3BsYXk6IG5vbmU7XG59XG4udWktc2VsZWN0bWVudS1tZW51IC51aS1tZW51IHtcblx0b3ZlcmZsb3c6IGF1dG87XG5cdG92ZXJmbG93LXg6IGhpZGRlbjtcblx0cGFkZGluZy1ib3R0b206IDFweDtcbn1cbi51aS1zZWxlY3RtZW51LW1lbnUgLnVpLW1lbnUgLnVpLXNlbGVjdG1lbnUtb3B0Z3JvdXAge1xuXHRmb250LXNpemU6IDFlbTtcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdGxpbmUtaGVpZ2h0OiAxLjU7XG5cdHBhZGRpbmc6IDJweCAwLjRlbTtcblx0bWFyZ2luOiAwLjVlbSAwIDAgMDtcblx0aGVpZ2h0OiBhdXRvO1xuXHRib3JkZXI6IDA7XG59XG4udWktc2VsZWN0bWVudS1vcGVuIHtcblx0ZGlzcGxheTogYmxvY2s7XG59XG4udWktc2VsZWN0bWVudS10ZXh0IHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdG1hcmdpbi1yaWdodDogMjBweDtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0dGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG59XG4udWktc2VsZWN0bWVudS1idXR0b24udWktYnV0dG9uIHtcblx0dGV4dC1hbGlnbjogbGVmdDtcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcblx0d2lkdGg6IDE0ZW07XG59XG4udWktc2VsZWN0bWVudS1pY29uLnVpLWljb24ge1xuXHRmbG9hdDogcmlnaHQ7XG5cdG1hcmdpbi10b3A6IDA7XG59XG4udWktc2xpZGVyIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR0ZXh0LWFsaWduOiBsZWZ0O1xufVxuLnVpLXNsaWRlciAudWktc2xpZGVyLWhhbmRsZSB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0ei1pbmRleDogMjtcblx0d2lkdGg6IDEuMmVtO1xuXHRoZWlnaHQ6IDEuMmVtO1xuXHRjdXJzb3I6IGRlZmF1bHQ7XG5cdC1tcy10b3VjaC1hY3Rpb246IG5vbmU7XG5cdHRvdWNoLWFjdGlvbjogbm9uZTtcbn1cbi51aS1zbGlkZXIgLnVpLXNsaWRlci1yYW5nZSB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0ei1pbmRleDogMTtcblx0Zm9udC1zaXplOiAuN2VtO1xuXHRkaXNwbGF5OiBibG9jaztcblx0Ym9yZGVyOiAwO1xuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDA7XG59XG5cbi8qIHN1cHBvcnQ6IElFOCAtIFNlZSAjNjcyNyAqL1xuLnVpLXNsaWRlci51aS1zdGF0ZS1kaXNhYmxlZCAudWktc2xpZGVyLWhhbmRsZSxcbi51aS1zbGlkZXIudWktc3RhdGUtZGlzYWJsZWQgLnVpLXNsaWRlci1yYW5nZSB7XG5cdGZpbHRlcjogaW5oZXJpdDtcbn1cblxuLnVpLXNsaWRlci1ob3Jpem9udGFsIHtcblx0aGVpZ2h0OiAuOGVtO1xufVxuLnVpLXNsaWRlci1ob3Jpem9udGFsIC51aS1zbGlkZXItaGFuZGxlIHtcblx0dG9wOiAtLjNlbTtcblx0bWFyZ2luLWxlZnQ6IC0uNmVtO1xufVxuLnVpLXNsaWRlci1ob3Jpem9udGFsIC51aS1zbGlkZXItcmFuZ2Uge1xuXHR0b3A6IDA7XG5cdGhlaWdodDogMTAwJTtcbn1cbi51aS1zbGlkZXItaG9yaXpvbnRhbCAudWktc2xpZGVyLXJhbmdlLW1pbiB7XG5cdGxlZnQ6IDA7XG59XG4udWktc2xpZGVyLWhvcml6b250YWwgLnVpLXNsaWRlci1yYW5nZS1tYXgge1xuXHRyaWdodDogMDtcbn1cblxuLnVpLXNsaWRlci12ZXJ0aWNhbCB7XG5cdHdpZHRoOiAuOGVtO1xuXHRoZWlnaHQ6IDEwMHB4O1xufVxuLnVpLXNsaWRlci12ZXJ0aWNhbCAudWktc2xpZGVyLWhhbmRsZSB7XG5cdGxlZnQ6IC0uM2VtO1xuXHRtYXJnaW4tbGVmdDogMDtcblx0bWFyZ2luLWJvdHRvbTogLS42ZW07XG59XG4udWktc2xpZGVyLXZlcnRpY2FsIC51aS1zbGlkZXItcmFuZ2Uge1xuXHRsZWZ0OiAwO1xuXHR3aWR0aDogMTAwJTtcbn1cbi51aS1zbGlkZXItdmVydGljYWwgLnVpLXNsaWRlci1yYW5nZS1taW4ge1xuXHRib3R0b206IDA7XG59XG4udWktc2xpZGVyLXZlcnRpY2FsIC51aS1zbGlkZXItcmFuZ2UtbWF4IHtcblx0dG9wOiAwO1xufVxuLnVpLXNwaW5uZXIge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0cGFkZGluZzogMDtcblx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cbi51aS1zcGlubmVyLWlucHV0IHtcblx0Ym9yZGVyOiBub25lO1xuXHRiYWNrZ3JvdW5kOiBub25lO1xuXHRjb2xvcjogaW5oZXJpdDtcblx0cGFkZGluZzogLjIyMmVtIDA7XG5cdG1hcmdpbjogLjJlbSAwO1xuXHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXHRtYXJnaW4tbGVmdDogLjRlbTtcblx0bWFyZ2luLXJpZ2h0OiAyZW07XG59XG4udWktc3Bpbm5lci1idXR0b24ge1xuXHR3aWR0aDogMS42ZW07XG5cdGhlaWdodDogNTAlO1xuXHRmb250LXNpemU6IC41ZW07XG5cdHBhZGRpbmc6IDA7XG5cdG1hcmdpbjogMDtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdGN1cnNvcjogZGVmYXVsdDtcblx0ZGlzcGxheTogYmxvY2s7XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cdHJpZ2h0OiAwO1xufVxuLyogbW9yZSBzcGVjaWZpY2l0eSByZXF1aXJlZCBoZXJlIHRvIG92ZXJyaWRlIGRlZmF1bHQgYm9yZGVycyAqL1xuLnVpLXNwaW5uZXIgYS51aS1zcGlubmVyLWJ1dHRvbiB7XG5cdGJvcmRlci10b3Atc3R5bGU6IG5vbmU7XG5cdGJvcmRlci1ib3R0b20tc3R5bGU6IG5vbmU7XG5cdGJvcmRlci1yaWdodC1zdHlsZTogbm9uZTtcbn1cbi51aS1zcGlubmVyLXVwIHtcblx0dG9wOiAwO1xufVxuLnVpLXNwaW5uZXItZG93biB7XG5cdGJvdHRvbTogMDtcbn1cbi51aS10YWJzIHtcblx0cG9zaXRpb246IHJlbGF0aXZlOy8qIHBvc2l0aW9uOiByZWxhdGl2ZSBwcmV2ZW50cyBJRSBzY3JvbGwgYnVnIChlbGVtZW50IHdpdGggcG9zaXRpb246IHJlbGF0aXZlIGluc2lkZSBjb250YWluZXIgd2l0aCBvdmVyZmxvdzogYXV0byBhcHBlYXIgYXMgXCJmaXhlZFwiKSAqL1xuXHRwYWRkaW5nOiAuMmVtO1xufVxuLnVpLXRhYnMgLnVpLXRhYnMtbmF2IHtcblx0bWFyZ2luOiAwO1xuXHRwYWRkaW5nOiAuMmVtIC4yZW0gMDtcbn1cbi51aS10YWJzIC51aS10YWJzLW5hdiBsaSB7XG5cdGxpc3Qtc3R5bGU6IG5vbmU7XG5cdGZsb2F0OiBsZWZ0O1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHRvcDogMDtcblx0bWFyZ2luOiAxcHggLjJlbSAwIDA7XG5cdGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG5cdHBhZGRpbmc6IDA7XG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4udWktdGFicyAudWktdGFicy1uYXYgLnVpLXRhYnMtYW5jaG9yIHtcblx0ZmxvYXQ6IGxlZnQ7XG5cdHBhZGRpbmc6IC41ZW0gMWVtO1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4udWktdGFicyAudWktdGFicy1uYXYgbGkudWktdGFicy1hY3RpdmUge1xuXHRtYXJnaW4tYm90dG9tOiAtMXB4O1xuXHRwYWRkaW5nLWJvdHRvbTogMXB4O1xufVxuLnVpLXRhYnMgLnVpLXRhYnMtbmF2IGxpLnVpLXRhYnMtYWN0aXZlIC51aS10YWJzLWFuY2hvcixcbi51aS10YWJzIC51aS10YWJzLW5hdiBsaS51aS1zdGF0ZS1kaXNhYmxlZCAudWktdGFicy1hbmNob3IsXG4udWktdGFicyAudWktdGFicy1uYXYgbGkudWktdGFicy1sb2FkaW5nIC51aS10YWJzLWFuY2hvciB7XG5cdGN1cnNvcjogdGV4dDtcbn1cbi51aS10YWJzLWNvbGxhcHNpYmxlIC51aS10YWJzLW5hdiBsaS51aS10YWJzLWFjdGl2ZSAudWktdGFicy1hbmNob3Ige1xuXHRjdXJzb3I6IHBvaW50ZXI7XG59XG4udWktdGFicyAudWktdGFicy1wYW5lbCB7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRib3JkZXItd2lkdGg6IDA7XG5cdHBhZGRpbmc6IDFlbSAxLjRlbTtcblx0YmFja2dyb3VuZDogbm9uZTtcbn1cbi51aS10b29sdGlwIHtcblx0cGFkZGluZzogOHB4O1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHotaW5kZXg6IDk5OTk7XG5cdG1heC13aWR0aDogMzAwcHg7XG59XG5ib2R5IC51aS10b29sdGlwIHtcblx0Ym9yZGVyLXdpZHRoOiAycHg7XG59XG4iLCIvLyBqUXVlcnkgVUkgVGhlbWVcbi8vIC0tLS0tLS0tLS0tLS0tLVxuLy8gVXNlIHRoaXMgcGFydGlhbCB0byBjdXN0b21pemUgdGhlIHRoZW1lIG9uIHRvcCBvZiB0aGUgYmFzZSBfanF1ZXJ5LXVpLnNjc3MuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBVSSBEYXRlcGlja2VyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLnVpLWRhdGVwaWNrZXIge1xuICBwYWRkaW5nOiA4cHg7XG4gIG1hcmdpbjogNHB4IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKHByaW1hcnksIHdoaXRlKTtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYShjb2xvcihwcmltYXJ5LCBncmF5KSwgLjI1KTtcbiAgYm9yZGVyLXJhZGl1czogcmFkaXVzKGJhc2UpO1xuICBib3gtc2hhZG93OiAwIDJweCA0cHggcmdiYShjb2xvcihwcmltYXJ5LCBibGFjayksIC4xKTtcbiAgY29sb3I6IGNvbG9yKHByaW1hcnksIGJsYWNrKTtcblxuICAvLyB0aXRsZVxuICAudWktZGF0ZXBpY2tlci10aXRsZSB7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgfVxuXG4gIC8vIGNvbnRyb2xzXG4gIC51aS1kYXRlcGlja2VyLXByZXYsXG4gIC51aS1kYXRlcGlja2VyLW5leHQge1xuICAgIHRvcDogMDtcbiAgICBib3JkZXI6IDFweCBkb3R0ZWQgd2hpdGU7XG4gICAgYm9yZGVyLXJhZGl1czogcmFkaXVzKGJhc2UpO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxuICAudWktZGF0ZXBpY2tlci1wcmV2IHtcbiAgICBsZWZ0OiAwO1xuICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1nL2ljb25zL2lfY2FyZXQtbGVmdC5zdmcnKSBuby1yZXBlYXQgNTAlIDUwJSAvIDE2cHggYXV0bztcblxuICB9XG4gIC51aS1kYXRlcGlja2VyLW5leHQge1xuICAgIHJpZ2h0OiAwO1xuICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1nL2ljb25zL2lfY2FyZXQtcmlnaHQuc3ZnJykgbm8tcmVwZWF0IDUwJSA1MCUgLyAxNnB4IGF1dG87XG4gIH1cblxuICAvLyBoZWFkZXJcbiAgLnVpLWRhdGVwaWNrZXItaGVhZGVyIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCBjb2xvcihwcmltYXJ5LCB3aGl0ZSk7XG4gIH1cblxuICAvLyB0YWJsZVxuICB0YWJsZSB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgdGhlYWQgdGgsXG4gIHRoZWFkIHRkIHtcbiAgICBjb2xvcjogY29sb3IocHJpbWFyeSwgYmxhY2spO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG5cbiAgdHI6aG92ZXIgdGgsXG4gIHRyOmhvdmVyIHRkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpbmhlcml0O1xuICB9XG5cbiAgLy8gY3VycmVudCBkYXlcbiAgLnVpLWRhdGVwaWNrZXItY3VycmVudC1kYXkge1xuICAgIGEge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3Ioc2Vjb25kYXJ5LCBvZmYtYmx1ZSk7XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgIH1cbiAgfVxuXG4gIC8vIHRvZGF5XG4gIC51aS1kYXRlcGlja2VyLXRvZGF5IHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGNvbG9yOiBjb2xvcihwcmltYXJ5LCB3aGl0ZSk7XG5cbiAgICBhIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKHNlY29uZGFyeSwgcmVkKTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IHJhZGl1cyhiYXNlKTtcbiAgICAgIGNvbG9yOiBjb2xvcihwcmltYXJ5LCB3aGl0ZSk7XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgIH1cbiAgfVxuXG4gIC8vIGxpbmtzXG4gIHRkIHNwYW4sXG4gIHRkIGEge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yYWRpdXM6IHJhZGl1cyhiYXNlKTtcbiAgICBjb2xvcjogY29sb3IocHJpbWFyeSwgYmxhY2spO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG5cbiAgLy8gaG92ZXJcbiAgLnVpLXN0YXRlLWhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKGNvbG9yKHByaW1hcnksIGdyYXkpLCAuMjUpO1xuICAgIGNvbG9yOiBjb2xvcihwcmltYXJ5LCBibGFjayk7XG4gIH1cblxufVxuXG5cbi8vIFVJIERhdGVwaWNrZXIgVHJpZ2dlclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi51aS1kYXRlcGlja2VyLXRyaWdnZXIge1xuICBAZXh0ZW5kIC5idXR0b24tLWNvbnRyb2w7XG4gIEBleHRlbmQgLmJ1dHRvbi0tY2FsZW5kYXI7XG59XG5cblxuLy8gVUkgQXV0b2NvbXBsZXRlXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLnVpLWF1dG9jb21wbGV0ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKHByaW1hcnksIHdoaXRlKTtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYShjb2xvcihwcmltYXJ5LCBncmF5KSwgLjI1KTtcbiAgYm9yZGVyLXJhZGl1czogcmFkaXVzKGJhc2UpO1xuICBib3gtc2hhZG93OiAwIDJweCA0cHggcmdiYShjb2xvcihwcmltYXJ5LCBibGFjayksIC4xKTtcbn1cbiIsIi5qdWRnZXMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGNvdW50ZXItcmVzZXQ6IHNlY3Rpb247XG5cbiAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICB9XG5cbiAgLy8gRGVmYXVsdCBpdGVtXG4gIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAuanVkZ2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogMzJweCAwIDA7XG4gICAgYm9yZGVyLXJhZGl1czogcmFkaXVzKGJhc2UpO1xuICAgIGNvbG9yOiBjb2xvcihwcmltYXJ5LCB3aGl0ZSk7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHotaW5kZXg6IDI7XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgICBtYXJnaW46IDMycHggMTJweCAwO1xuICAgICAgd2lkdGg6IDQ1JTtcbiAgICB9XG5cbiAgICAvLyBKdWRnZSBwaG90b1xuICAgICZfX3Bob3RvIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDMycHg7XG5cbiAgICAgIHBpY3R1cmUsaW1nIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgbWF4LWhlaWdodDogNDUwcHg7XG4gICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJz49bGFwdG9wJykge1xuICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICBtYXgtaGVpZ2h0OiA0NTBweDtcbiAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBKdWRnZSBuYW1lXG4gICAgJl9fbmFtZSB7XG4gICAgICBAZXh0ZW5kIC5oNjtcbiAgICAgIG1hcmdpbjogMDtcbiAgICB9XG5cbiAgICAvLyBmaXJzdCBpdGVtIGluIGxpc3RcbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbjogMDtcblxuICAgICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgICAgICBtYXJnaW46IDAgMjcuNSU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJltkYXRhLXRoZW1lPSdzdXByZW1lLWNvdXJ0J10ge1xuICAgIC5qdWRnZSB7XG4gICAgICBtYXJnaW4tdG9wOiA0OHB4O1xuXG4gICAgICAvLyBpdGVtIGNvdW50XG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvdW50ZXItaW5jcmVtZW50OiBzZWN0aW9uO1xuICAgICAgICBjb250ZW50OiBjb3VudGVycyhzZWN0aW9uLCAnLicpO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgd2lkdGg6IDMycHg7XG4gICAgICAgIGhlaWdodDogMzJweDtcbiAgICAgICAgbWFyZ2luOiAtMTZweCAwIDAgLTE2cHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKHNlY29uZGFyeSwgZGFyay1ibHVlKTtcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgY29sb3Ioc2Vjb25kYXJ5LCBkYXJrLWJsdWUpO1xuICAgICAgICBib3JkZXItcmFkaXVzOiByYWRpdXMoZnVsbCk7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIHotaW5kZXg6IDI7XG4gICAgICB9XG5cbiAgICAgIC8vIGZpcnN0IGl0ZW0gaW4gbGlzdFxuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbjogMTZweCAwIDA7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgICAgICAgIG1hcmdpbjogMTZweCAyNy41JTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gUHJvZ3Jlc3Ncbi8vXG4vLyBJbmRpY2F0ZXMgaG93IGZhciBhbG9uZyB0aGUgdXNlciBpcyBpbiBhIHByb2Nlc3MuXG4vL1xuLy8gU3R5bGVndWlkZSBDb21wb25lbnRzIC0gUHJvZ3Jlc3NcblxuJGFuaW1hdGlvbi1vZmZzZXQ6IDE4NztcbiRhbmltYXRpb24tZHVyYXRpb246IDEwMDBtcztcblxuXG4vLyBQYXJlbnQgY2xhc3MgdG8gYmUgdXNlZCBvbiBlbGVtZW50IHRoYXQgd2lsbCBiZSByZXBsYWNpbmcgaXRzIGNvbnRlbnQuXG4vLyBQbGFjZSB0aGUgc3Bpbm5lciBpbnNpZGUgdGhpcyBjb250YWluZXIgdG8gcHJvcGVybHkgZGlzcGxheSBhIHByb2dyZXNzIGluZGljYXRvci5cbi5sb2FkaW5nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtaW4taGVpZ2h0OiA2NHB4O1xufVxuXG4ucHJvZ3Jlc3Mge1xuXG4gIC8vIFNwaW5uZXJcbiAgLy9cbiAgLy8gUHJvZ3Jlc3MgaW5kaWNhdG9yIGluIGEgY2lyY3VsYXIgZm9ybS4gUmVxdWlyZXMgdGhlIDxjb2RlPnN2ZzwvY29kZT4gbWFya3VwIGFuZCB0aGUgPGNvZGU+LmxvYWRpbmc8L2NvZGU+IGNsYXNzIGZvciBpdHMgcGFyZW50LlxuICAvL1xuICAvLyBNYXJrdXA6XG4gIC8vIDxkaXYgY2xhc3M9XCJsb2FkaW5nXCI+XG4gIC8vICAgPHN2ZyBjbGFzcz1cInByb2dyZXNzIHByb2dyZXNzLS1zcGlubmVyXCIgd2lkdGg9XCI2NXB4XCIgaGVpZ2h0PVwiNjVweFwiIHZpZXdCb3g9XCIwIDAgNjYgNjZcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XG4gIC8vICAgICA8Y2lyY2xlIGN4PVwiMzNcIiBjeT1cIjMzXCIgcj1cIjMwXCI+PC9jaXJjbGU+XG4gIC8vICAgPC9zdmc+XG4gIC8vIDwvZGl2PlxuICAvL1xuICAvLyBTdHlsZWd1aWRlIENvbXBvbmVudHMgLSBQcm9ncmVzcyAtIFNwaW5uZXJcblxuICAmLS1zcGlubmVyIHtcbiAgICBAaW5jbHVkZSBhYnNvbHV0ZS1jZW50ZXI7XG4gICAgd2lkdGg6IDMycHg7XG4gICAgaGVpZ2h0OiAzMnB4O1xuICAgIG1hcmdpbjogLTE2cHggMCAwIC0xNnB4O1xuICAgIGFuaW1hdGlvbjogcm90YXRvciAkYW5pbWF0aW9uLWR1cmF0aW9uIGxpbmVhciBpbmZpbml0ZTtcblxuICAgIGNpcmNsZSB7XG4gICAgICBmaWxsOiBub25lO1xuICAgICAgc3Ryb2tlOiBjb2xvcihzZWNvbmRhcnksIGRhcmstYmx1ZSk7XG4gICAgICBzdHJva2Utd2lkdGg6IDZweDtcbiAgICAgIHN0cm9rZS1kYXNoYXJyYXk6ICRhbmltYXRpb24tb2Zmc2V0O1xuICAgICAgc3Ryb2tlLWRhc2hvZmZzZXQ6IDA7XG4gICAgICBzdHJva2UtbGluZWNhcDogcm91bmQ7XG4gICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gICAgICBhbmltYXRpb246XG4gICAgICAgIGRhc2ggJGFuaW1hdGlvbi1kdXJhdGlvbiBlYXNlLWluLW91dCBpbmZpbml0ZSxcbiAgICB9XG5cbiAgfVxuXG59XG5cbkBrZXlmcmFtZXMgcm90YXRvciB7XG4gIDAlIHsgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7IH1cbiAgMTAwJSB7IHRyYW5zZm9ybTogcm90YXRlKDI3MGRlZyk7IH1cbn1cblxuQGtleWZyYW1lcyBkYXNoIHtcbiAgMCUgeyBzdHJva2UtZGFzaG9mZnNldDogJGFuaW1hdGlvbi1vZmZzZXQ7IH1cbiAgNTAlIHtcbiAgICBzdHJva2UtZGFzaG9mZnNldDogJGFuaW1hdGlvbi1vZmZzZXQgLyA0O1xuICAgIHRyYW5zZm9ybTpyb3RhdGUoMTM1ZGVnKTtcbiAgfVxuICAxMDAlIHtcbiAgICBzdHJva2UtZGFzaG9mZnNldDogJGFuaW1hdGlvbi1vZmZzZXQ7XG4gICAgdHJhbnNmb3JtOnJvdGF0ZSg0NTBkZWcpO1xuICB9XG59XG4iLCIuY29weXJpZ2h0IHtcbiAgcGFkZGluZy1yaWdodDogNDhweDsgLy8gb2Zmc2V0IGZyb20gc2hvcnRjdXQgYnV0dG9uIChyaWdodC1zaWRlKVxuICBtYXJnaW46IDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjI1O1xuICBjb2xvcjogY29sb3IocHJpbWFyeSwgZ3JheSk7XG5cbiAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgIHBhZGRpbmctcmlnaHQ6IDY0cHg7XG4gICAgbWFyZ2luLXRvcDogNDhweDtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi10b3A6IDE2cHg7XG4gIH1cblxuICAvLyBsaW5rXG4gIGEge1xuICAgIC8vIGRlZmF1bHQgbGlua3MsIG5vdCB2aXNpdGVkXG4gICAgJjpsaW5rIHtcbiAgICAgIGNvbG9yOiBjb2xvcihwcmltYXJ5LCBncmF5KTtcbiAgICB9XG5cbiAgICAvLyBsaW5rcyB0aGF0IGhhdmUgYmVlbiB2aXNpdGVkXG4gICAgJjp2aXNpdGVkIHtcbiAgICAgIGNvbG9yOiBjb2xvcihwcmltYXJ5LCBncmF5KTtcbiAgICB9XG5cbiAgICAvLyBsaW5rcyB0aGF0IGFyZSBob3ZlcmVkXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihzZWNvbmRhcnksIG9mZi1ibHVlKTtcbiAgICAgIGNvbG9yOiBjb2xvcihwcmltYXJ5LCBibGFjayk7XG4gICAgfVxuXG4gICAgLy8gbGlua3MgdGhhdCBhcmUgaW4gZm9jdXNcbiAgICAmOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKHNlY29uZGFyeSwgZ29sZCk7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMCA0cHggY29sb3Ioc2Vjb25kYXJ5LCBnb2xkKTtcbiAgICAgIGNvbG9yOiBjb2xvcihwcmltYXJ5LCBibGFjayk7XG4gICAgfVxuXG4gICAgLy8gbGlua3MgdGhhdCBhcmUgYWN0aXZlbHkgY2xpY2tlZFxuICAgICY6YWN0aXZlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKHNlY29uZGFyeSwgZ29sZCk7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMCA0cHggY29sb3Ioc2Vjb25kYXJ5LCBnb2xkKTtcbiAgICAgIGNvbG9yOiBjb2xvcihwcmltYXJ5LCBibGFjayk7XG4gICAgfVxuICB9XG59XG4iLCJpbWcuc2NhbGUge1xuICAmLS1sZyB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgyKTtcbiAgfVxufVxuIiwiW2RhdGEtc2luZ2xlPSd0b3BpYyddIHtcblxuICBbaXRlbXByb3A9J21haW5Db250ZW50T2ZQYWdlJ10ge1xuXG4gICAgLmJhbmQ6Zmlyc3QtY2hpbGQgLnBhZ2luYXRpb24tLXRvcGljcyBsaTpmaXJzdC1jaGlsZCxcbiAgICAuYmFuZDpsYXN0LWNoaWxkIC5wYWdpbmF0aW9uLS10b3BpY3MgbGk6bGFzdC1jaGlsZCB7XG4gICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgfVxuXG4gIH1cblxufVxuIiwiLy8gQ2FyZHNcbi8vXG4vLyBBIGNhcmQgaXMgYSBzaGVldCBvZiBtYXRlcmlhbCB0aGF0IHNlcnZlcyBhcyBhbiBlbnRyeSBwb2ludCB0byBtb3JlIGRldGFpbGVkIGluZm9ybWF0aW9uLlxuLy9cbi8vIE1hcmt1cDpcbi8vIDxkaXYgY2xhc3M9XCJjYXJkIHt7bW9kaWZpZXJfY2xhc3N9fVwiPlxuLy8gICA8aSBjbGFzcz1cImNhcmRfX2ljb24gY2FyZF9faWNvbi0tZmlsbFwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPlxuLy8gICAgIDxzdmcgdmVyc2lvbj1cIjEuMVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB4bWxuczp4bGluaz1cImh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmtcIiB4PVwiMHB4XCIgeT1cIjBweFwiIHZpZXdCb3g9XCIwIDAgNDggNDhcIiB4bWw6c3BhY2U9XCJwcmVzZXJ2ZVwiIHdpZHRoPVwiNDhcIiBoZWlnaHQ9XCI0OFwiPjxnIGNsYXNzPVwibmMtaWNvbi13cmFwcGVyXCIgZmlsbD1cIiM0NDQ0NDRcIj48cGF0aCBmaWxsPVwiIzQ0NDQ0NFwiIGQ9XCJNNDQuNzQsMjUuMzI3bC0yMC0yMmMtMC4zOTctMC40MzctMS4wODQtMC40MzctMS40OCwwbC0yMCwyMmMtMC4yNjYsMC4yOTMtMC4zMzQsMC43MTUtMC4xNzQsMS4wNzggQzMuMjQ2LDI2Ljc2NywzLjYwNCwyNyw0LDI3aDV2MThjMCwxLjEwNSwwLjg5NSwyLDIsMmg4YzAuNTUyLDAsMS0wLjQ0OCwxLTFWMzZoOHYxMGMwLDAuNTUyLDAuNDQ4LDEsMSwxaDhjMS4xMDUsMCwyLTAuODk1LDItMlYyNyBoNWMwLjM5NiwwLDAuNzU0LTAuMjMzLDAuOTE0LTAuNTk1QzQ1LjA3NCwyNi4wNDIsNDUuMDA2LDI1LjYyLDQ0Ljc0LDI1LjMyN3pcIj48L3BhdGg+PC9nPjwvc3ZnPlxuLy8gICA8L2k+XG4vLyAgIDxoMiBjbGFzcz1cImNhcmRfX3RpdGxlXCI+Q2FyZCB0aXRsZTwvaDI+XG4vLyAgIDxwIGNsYXNzPVwiY2FyZF9fZGVzY3JpcHRpb25cIj5FdmVyeSBjYXJkIHNob3VsZCBoYXZlIGEgZGVzY3JpcHRpb24gdG8gYnJpZWZseSBleHBsYWluIGl0cyBjb250ZW50LjwvcD5cbi8vICAgPGEgY2xhc3M9XCJjYXJkX19hY3Rpb25cIiBocmVmPVwiI1wiPkFjdGlvbjwvYT5cbi8vIDwvZGl2PlxuLy9cbi8vIC5jYXJkLS1pbnZlcnRlZCAgICAtIEludmVydGVkIGNhcmRcbi8vIC5jYXJkLS1iYXNpYyAgICAgICAtIEJhc2ljIGNhcmRcbi8vIC5jYXJkLS1ob3Jpem9udGFsICAtIEhvcml6b250YWwgY2FyZFxuLy9cbi8vIFN0eWxlZ3VpZGUgQ29tcG9uZW50cyAtIENhcmRzXG5cbi5jYXJkIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAzMnB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihwcmltYXJ5LCB3aGl0ZSk7XG4gIGJvcmRlci1yYWRpdXM6IHJhZGl1cyhiYXNlKTtcbiAgYm94LXNoYWRvdzogMCAycHggNHB4IHJnYmEoY29sb3IocHJpbWFyeSwgYmxhY2spLCAuMTYpO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0cmFuc2l0aW9uOlxuICAgIGJhY2tncm91bmQgJGJhc2UtYW5pbWF0aW9uLXNwZWVkICRiYXNlLWFuaW1hdGlvbi1lYXNpbmcsXG4gICAgYm94LXNoYWRvdyAkYmFzZS1hbmltYXRpb24tc3BlZWQgJGJhc2UtYW5pbWF0aW9uLWVhc2luZztcblxuICBAaW5jbHVkZSBtZWRpYSgnPj1sYXB0b3AnKSB7XG4gICAgcGFkZGluZzogNjRweDtcbiAgfVxuXG5cbiAgLy8gSG92ZXIgc3RhdGVcbiAgJjpob3ZlciB7XG4gICAgYm94LXNoYWRvdzogMCA4cHggMTZweCByZ2JhKGNvbG9yKHByaW1hcnksIGJsYWNrKSwgLjE2KTtcbiAgfVxuXG5cbiAgLy8gQWRqYWNlbnQgY2FyZHNcbiAgKyAuY2FyZCB7XG4gICAgbWFyZ2luLXRvcDogMTZweDtcblxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICAgIG1hcmdpbi10b3A6IDI0cHg7XG4gICAgfVxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICAgIG1hcmdpbi10b3A6IDMycHg7XG4gICAgfVxuICB9XG5cblxuICAvLyBDYXJkIGljb25cbiAgJl9faWNvbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDMycHg7XG4gICAgaGVpZ2h0OiAzMnB4O1xuICAgIG1hcmdpbi1ib3R0b206IDMycHg7XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPj1sYXB0b3AnKSB7XG4gICAgICB3aWR0aDogNDhweDtcbiAgICAgIGhlaWdodDogNDhweDtcbiAgICB9XG5cbiAgICBzdmcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgfVxuXG4gICAgJi0tZmlsbCB7IHN2ZyAqIHsgZmlsbDogY29sb3Ioc2Vjb25kYXJ5LCBkYXJrLWJsdWUpOyB9IH1cbiAgICAmLS1zdHJva2UgeyBzdmcgKiB7IHN0cm9rZTogY29sb3Ioc2Vjb25kYXJ5LCBkYXJrLWJsdWUpOyB9IH1cbiAgfVxuXG5cbiAgLy8gQ2FyZCB0aXRsZVxuICAmX190aXRsZSB7XG4gICAgbWFyZ2luOiAwIDAgMTZweDtcbiAgICBmb250OiA2MDAgMTZweCAvIDEuMjUgJGZvbnQtc2Vjb25kYXJ5O1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgICAgZm9udC1zaXplOiAxOXB4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICAgIGZvbnQtc2l6ZTogMjFweDtcbiAgICB9XG4gICAgLmJhbmRbZGF0YS1jb2x1bW5zPScyJ10gJiB7XG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPj1sYXB0b3AnKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMzJweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuXG4gIC8vIENhcmQgZGVzY3JpcHRpb25cbiAgJl9fZGVzY3JpcHRpb24ge1xuICAgIG1hcmdpbi1ib3R0b206IDMycHg7XG4gICAgY29sb3I6IGNvbG9yKHByaW1hcnksIGdyYXkpO1xuICB9XG5cblxuICAvLyBDYXJkIGFjdGlvblxuICAmX19hY3Rpb24ge1xuICAgIEBleHRlbmQgLmJ1dHRvbjtcbiAgfVxuXG5cbiAgLy8gSW52ZXJ0ZWQgY2FyZFxuICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgJi0taW52ZXJ0ZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKHNlY29uZGFyeSwgZGFyay1ibHVlKTtcbiAgICBjb2xvcjogY29sb3IocHJpbWFyeSwgd2hpdGUpO1xuXG4gICAgLy8gY2FyZCBpY29uXG4gICAgLmNhcmRfX2ljb24ge1xuICAgICAgJi0tZmlsbCB7IHN2ZyAqIHsgZmlsbDogY29sb3IocHJpbWFyeSwgd2hpdGUpOyB9IH1cbiAgICAgICYtLXN0cm9rZSB7IHN2ZyAqIHsgc3Ryb2tlOiBjb2xvcihwcmltYXJ5LCB3aGl0ZSk7IH0gfVxuICAgIH1cblxuICAgIC8vIGNhcmQgZGVzY3JpcHRpb25cbiAgICAuY2FyZF9fZGVzY3JpcHRpb24ge1xuICAgICAgY29sb3I6IHJnYmEoY29sb3IocHJpbWFyeSwgd2hpdGUpLCAuNzUpO1xuICAgIH1cblxuICAgIC8vIGNhcmQgYWN0aW9uXG4gICAgLmNhcmRfX2FjdGlvbiB7XG4gICAgICBAZXh0ZW5kIC5idXR0b24tLXNlY29uZGFyeTtcbiAgICB9XG5cbiAgICAvLyBidXR0b25zXG4gICAgLmJ1dHRvbiB7XG4gICAgICBAZXh0ZW5kIC5idXR0b24tLXNlY29uZGFyeTtcbiAgICB9XG5cbiAgICAvLyBidXR0b25zXG4gICAgW3R5cGU9J3N1Ym1pdCddIHtcbiAgICAgIEBleHRlbmQgLmJ1dHRvbi0tdGVydGlhcnk7XG4gICAgfVxuICB9XG5cblxuICAvLyBCYXNpYyBjYXJkXG4gIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAmLS1iYXNpYyB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHBhZGRpbmc6IDMycHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IocHJpbWFyeSwgb2ZmLXdoaXRlKTtcbiAgICBib3gtc2hhZG93OiBub25lO1xuXG4gICAgLy8gZGlzYWJsZSBob3ZlclxuICAgICY6aG92ZXIge1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICB9XG5cbiAgICAuY2FyZC10aXRsZSB7XG4gICAgICAuYmFuZFtkYXRhLWNvbHVtbnM9JzInXSAmIHtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJz49bGFwdG9wJykge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMjFweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIGhpZGUgdW5zdXBwb3J0ZWQgZWxlbWVudHNcbiAgICAmOmJlZm9yZSxcbiAgICAuY2FyZF9faWNvbiB7IGRpc3BsYXk6IG5vbmU7IH1cblxuICAgIC8vIGNhcmQgZGVzY3JpcHRpb25cbiAgICAuY2FyZF9fZGVzY3JpcHRpb24ge1xuICAgICAgY29sb3I6IGNvbG9yKHByaW1hcnksIGJsYWNrKTtcbiAgICB9XG5cbiAgICAvLyByZW1vdmUgdW53YW50ZWQgbWFyZ2luIG9uIGxhc3QgZWxlbWVudFxuICAgID4gKjpsYXN0LWNoaWxkIHsgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4gIH1cblxuXG4gIC8vIEhvcml6b250YWwgY2FyZFxuICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgJi0taG9yaXpvbnRhbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEoJz49bGFwdG9wJykge1xuICAgICAgcGFkZGluZy1sZWZ0OiAxNDRweDtcbiAgICB9XG5cbiAgICAuY2FyZF9faWNvbiB7XG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPj1sYXB0b3AnKSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA2NHB4O1xuICAgICAgICBsZWZ0OiA2NHB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIC5jYXJkX190aXRsZSB7XG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPj1sYXB0b3AnKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgIH1cbiAgICAgIC5iYW5kW2RhdGEtY29sdW1ucz0nMiddICYge1xuICAgICAgICBAaW5jbHVkZSBtZWRpYSgnPj1sYXB0b3AnKSB7XG4gICAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJjpub3QoLmNhcmQtLWhvcml6b250YWwpIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgPiAqIHtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cbn1cblxuLmJhbmQtLXN0cmlwZWQge1xuICAuY2FyZDpub3QoLmNhcmQtLWhvcml6b250YWwpIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICB9XG59XG4iLCIuY2hpcCB7XG5cbiAgJl9fdmFsdWUge1xuICAgIEBleHRlbmQgLmgzO1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gICZfX2xhYmVsIHtcbiAgICBAZXh0ZW5kIC5tZXRhO1xuICB9XG5cbiAgLy8gU3RhdCBjaGlwc1xuICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgJi0tc3RhdCB7fVxuXG59XG4iLCIvKipcbiAqIFN3aXBlciA0LjEuMFxuICogTW9zdCBtb2Rlcm4gbW9iaWxlIHRvdWNoIHNsaWRlciBhbmQgZnJhbWV3b3JrIHdpdGggaGFyZHdhcmUgYWNjZWxlcmF0ZWQgdHJhbnNpdGlvbnNcbiAqIGh0dHA6Ly93d3cuaWRhbmdlcm8udXMvc3dpcGVyL1xuICpcbiAqIENvcHlyaWdodCAyMDE0LTIwMTggVmxhZGltaXIgS2hhcmxhbXBpZGlcbiAqXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2VcbiAqXG4gKiBSZWxlYXNlZCBvbjogSmFudWFyeSAxMywgMjAxOFxuICovXG4uc3dpcGVyLWNvbnRhaW5lciB7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmctYm90dG9tOiAxNnB4O1xuICAvKiBGaXggb2YgV2Via2l0IGZsaWNrZXJpbmcgKi9cbiAgei1pbmRleDogMTtcbn1cbi5zd2lwZXItY29udGFpbmVyLW5vLWZsZXhib3ggLnN3aXBlci1zbGlkZSB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuLnN3aXBlci1jb250YWluZXItdmVydGljYWwgPiAuc3dpcGVyLXdyYXBwZXIge1xuICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xuICAtd2Via2l0LWJveC1kaXJlY3Rpb246IG5vcm1hbDtcbiAgLXdlYmtpdC1mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cbi5zd2lwZXItd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgei1pbmRleDogMTtcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogLXdlYmtpdC10cmFuc2Zvcm07XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IC13ZWJraXQtdHJhbnNmb3JtO1xuICAtby10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCAtd2Via2l0LXRyYW5zZm9ybTtcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG59XG4uc3dpcGVyLWNvbnRhaW5lci1hbmRyb2lkIC5zd2lwZXItc2xpZGUsXG4uc3dpcGVyLXdyYXBwZXIge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwcHgsIDAsIDApO1xufVxuLnN3aXBlci1jb250YWluZXItbXVsdGlyb3cgPiAuc3dpcGVyLXdyYXBwZXIge1xuICAtd2Via2l0LWZsZXgtd3JhcDogd3JhcDtcbiAgLW1zLWZsZXgtd3JhcDogd3JhcDtcbiAgZmxleC13cmFwOiB3cmFwO1xufVxuLnN3aXBlci1jb250YWluZXItZnJlZS1tb2RlID4gLnN3aXBlci13cmFwcGVyIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gIC1vLXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICBtYXJnaW46IDAgYXV0bztcbn1cbi5zd2lwZXItc2xpZGUge1xuICAtd2Via2l0LWZsZXgtc2hyaW5rOiAwO1xuICAtbXMtZmxleC1uZWdhdGl2ZTogMDtcbiAgZmxleC1zaHJpbms6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiAtd2Via2l0LXRyYW5zZm9ybTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogLXdlYmtpdC10cmFuc2Zvcm07XG4gIC1vLXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIC13ZWJraXQtdHJhbnNmb3JtO1xufVxuLnN3aXBlci1pbnZpc2libGUtYmxhbmstc2xpZGUge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG4vKiBBdXRvIEhlaWdodCAqL1xuLnN3aXBlci1jb250YWluZXItYXV0b2hlaWdodCxcbi5zd2lwZXItY29udGFpbmVyLWF1dG9oZWlnaHQgLnN3aXBlci1zbGlkZSB7XG4gIGhlaWdodDogYXV0bztcbn1cbi5zd2lwZXItY29udGFpbmVyLWF1dG9oZWlnaHQgLnN3aXBlci13cmFwcGVyIHtcbiAgLXdlYmtpdC1ib3gtYWxpZ246IHN0YXJ0O1xuICAtd2Via2l0LWFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAtbXMtZmxleC1hbGlnbjogc3RhcnQ7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IGhlaWdodCwgLXdlYmtpdC10cmFuc2Zvcm07XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IGhlaWdodCwgLXdlYmtpdC10cmFuc2Zvcm07XG4gIC1vLXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgaGVpZ2h0O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIGhlaWdodDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBoZWlnaHQsIC13ZWJraXQtdHJhbnNmb3JtO1xufVxuLyogM0QgRWZmZWN0cyAqL1xuLnN3aXBlci1jb250YWluZXItM2Qge1xuICAtd2Via2l0LXBlcnNwZWN0aXZlOiAxMjAwcHg7XG4gIHBlcnNwZWN0aXZlOiAxMjAwcHg7XG59XG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXdyYXBwZXIsXG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLFxuLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctbGVmdCxcbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LXJpZ2h0LFxuLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctdG9wLFxuLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctYm90dG9tLFxuLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci1jdWJlLXNoYWRvdyB7XG4gIC13ZWJraXQtdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbiAgdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbn1cbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LWxlZnQsXG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1yaWdodCxcbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LXRvcCxcbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LWJvdHRvbSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgei1pbmRleDogMTA7XG59XG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1sZWZ0IHtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIHJpZ2h0IHRvcCwgbGVmdCB0b3AsIGZyb20ocmdiYSgwLCAwLCAwLCAwLjUpKSwgdG8ocmdiYSgwLCAwLCAwLCAwKSkpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChyaWdodCwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KHJpZ2h0LCByZ2JhKDAsIDAsIDAsIDAuNSksIHJnYmEoMCwgMCwgMCwgMCkpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gbGVmdCwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTtcbn1cbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LXJpZ2h0IHtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCByaWdodCB0b3AsIGZyb20ocmdiYSgwLCAwLCAwLCAwLjUpKSwgdG8ocmdiYSgwLCAwLCAwLCAwKSkpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCByZ2JhKDAsIDAsIDAsIDAuNSksIHJnYmEoMCwgMCwgMCwgMCkpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQobGVmdCwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCByZ2JhKDAsIDAsIDAsIDAuNSksIHJnYmEoMCwgMCwgMCwgMCkpO1xufVxuLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctdG9wIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgYm90dG9tLCBsZWZ0IHRvcCwgZnJvbShyZ2JhKDAsIDAsIDAsIDAuNSkpLCB0byhyZ2JhKDAsIDAsIDAsIDApKSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGJvdHRvbSwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KGJvdHRvbSwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHRvcCwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTtcbn1cbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LWJvdHRvbSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgbGVmdCBib3R0b20sIGZyb20ocmdiYSgwLCAwLCAwLCAwLjUpKSwgdG8ocmdiYSgwLCAwLCAwLCAwKSkpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsIHJnYmEoMCwgMCwgMCwgMC41KSwgcmdiYSgwLCAwLCAwLCAwKSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsIHJnYmEoMCwgMCwgMCwgMC41KSwgcmdiYSgwLCAwLCAwLCAwKSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMCwgMCwgMCwgMC41KSwgcmdiYSgwLCAwLCAwLCAwKSk7XG59XG4vKiBJRTEwIFdpbmRvd3MgUGhvbmUgOCBGaXhlcyAqL1xuLnN3aXBlci1jb250YWluZXItd3A4LWhvcml6b250YWwsXG4uc3dpcGVyLWNvbnRhaW5lci13cDgtaG9yaXpvbnRhbCA+IC5zd2lwZXItd3JhcHBlciB7XG4gIC1tcy10b3VjaC1hY3Rpb246IHBhbi15O1xuICB0b3VjaC1hY3Rpb246IHBhbi15O1xufVxuLnN3aXBlci1jb250YWluZXItd3A4LXZlcnRpY2FsLFxuLnN3aXBlci1jb250YWluZXItd3A4LXZlcnRpY2FsID4gLnN3aXBlci13cmFwcGVyIHtcbiAgLW1zLXRvdWNoLWFjdGlvbjogcGFuLXg7XG4gIHRvdWNoLWFjdGlvbjogcGFuLXg7XG59XG4uc3dpcGVyLWJ1dHRvbi1wcmV2LFxuLnN3aXBlci1idXR0b24tbmV4dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHdpZHRoOiAyN3B4O1xuICBoZWlnaHQ6IDQ0cHg7XG4gIG1hcmdpbi10b3A6IC0yMnB4O1xuICB6LWluZGV4OiAxMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IDI3cHggNDRweDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuLnN3aXBlci1idXR0b24tcHJldi5zd2lwZXItYnV0dG9uLWRpc2FibGVkLFxuLnN3aXBlci1idXR0b24tbmV4dC5zd2lwZXItYnV0dG9uLWRpc2FibGVkIHtcbiAgb3BhY2l0eTogMC4zNTtcbiAgY3Vyc29yOiBhdXRvO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbi5zd2lwZXItYnV0dG9uLXByZXYsXG4uc3dpcGVyLWNvbnRhaW5lci1ydGwgLnN3aXBlci1idXR0b24tbmV4dCB7XG4gIC8vIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyUyMHhtbG5zJTNEJ2h0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyclMjB2aWV3Qm94JTNEJzAlMjAwJTIwMjclMjA0NCclM0UlM0NwYXRoJTIwZCUzRCdNMCUyQzIyTDIyJTJDMGwyLjElMkMyLjFMNC4yJTJDMjJsMTkuOSUyQzE5LjlMMjIlMkM0NEwwJTJDMjJMMCUyQzIyTDAlMkMyMnonJTIwZmlsbCUzRCclMjMwMDdhZmYnJTJGJTNFJTNDJTJGc3ZnJTNFXCIpO1xuICBsZWZ0OiAxMHB4O1xuICByaWdodDogYXV0bztcbn1cbi5zd2lwZXItYnV0dG9uLW5leHQsXG4uc3dpcGVyLWNvbnRhaW5lci1ydGwgLnN3aXBlci1idXR0b24tcHJldiB7XG4gIC8vIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyUyMHhtbG5zJTNEJ2h0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyclMjB2aWV3Qm94JTNEJzAlMjAwJTIwMjclMjA0NCclM0UlM0NwYXRoJTIwZCUzRCdNMjclMkMyMkwyNyUyQzIyTDUlMkM0NGwtMi4xLTIuMUwyMi44JTJDMjJMMi45JTJDMi4xTDUlMkMwTDI3JTJDMjJMMjclMkMyMnonJTIwZmlsbCUzRCclMjMwMDdhZmYnJTJGJTNFJTNDJTJGc3ZnJTNFXCIpO1xuICByaWdodDogMTBweDtcbiAgbGVmdDogYXV0bztcbn1cbi5zd2lwZXItYnV0dG9uLXByZXYuc3dpcGVyLWJ1dHRvbi13aGl0ZSxcbi5zd2lwZXItY29udGFpbmVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1uZXh0LnN3aXBlci1idXR0b24td2hpdGUge1xuICAvLyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGYtOCwlM0NzdmclMjB4bWxucyUzRCdodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmcnJTIwdmlld0JveCUzRCcwJTIwMCUyMDI3JTIwNDQnJTNFJTNDcGF0aCUyMGQlM0QnTTAlMkMyMkwyMiUyQzBsMi4xJTJDMi4xTDQuMiUyQzIybDE5LjklMkMxOS45TDIyJTJDNDRMMCUyQzIyTDAlMkMyMkwwJTJDMjJ6JyUyMGZpbGwlM0QnJTIzZmZmZmZmJyUyRiUzRSUzQyUyRnN2ZyUzRVwiKTtcbn1cbi5zd2lwZXItYnV0dG9uLW5leHQuc3dpcGVyLWJ1dHRvbi13aGl0ZSxcbi5zd2lwZXItY29udGFpbmVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1wcmV2LnN3aXBlci1idXR0b24td2hpdGUge1xuICAvLyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGYtOCwlM0NzdmclMjB4bWxucyUzRCdodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmcnJTIwdmlld0JveCUzRCcwJTIwMCUyMDI3JTIwNDQnJTNFJTNDcGF0aCUyMGQlM0QnTTI3JTJDMjJMMjclMkMyMkw1JTJDNDRsLTIuMS0yLjFMMjIuOCUyQzIyTDIuOSUyQzIuMUw1JTJDMEwyNyUyQzIyTDI3JTJDMjJ6JyUyMGZpbGwlM0QnJTIzZmZmZmZmJyUyRiUzRSUzQyUyRnN2ZyUzRVwiKTtcbn1cbi5zd2lwZXItYnV0dG9uLXByZXYuc3dpcGVyLWJ1dHRvbi1ibGFjayxcbi5zd2lwZXItY29udGFpbmVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1uZXh0LnN3aXBlci1idXR0b24tYmxhY2sge1xuICAvLyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGYtOCwlM0NzdmclMjB4bWxucyUzRCdodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmcnJTIwdmlld0JveCUzRCcwJTIwMCUyMDI3JTIwNDQnJTNFJTNDcGF0aCUyMGQlM0QnTTAlMkMyMkwyMiUyQzBsMi4xJTJDMi4xTDQuMiUyQzIybDE5LjklMkMxOS45TDIyJTJDNDRMMCUyQzIyTDAlMkMyMkwwJTJDMjJ6JyUyMGZpbGwlM0QnJTIzMDAwMDAwJyUyRiUzRSUzQyUyRnN2ZyUzRVwiKTtcbn1cbi5zd2lwZXItYnV0dG9uLW5leHQuc3dpcGVyLWJ1dHRvbi1ibGFjayxcbi5zd2lwZXItY29udGFpbmVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1wcmV2LnN3aXBlci1idXR0b24tYmxhY2sge1xuICAvLyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGYtOCwlM0NzdmclMjB4bWxucyUzRCdodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmcnJTIwdmlld0JveCUzRCcwJTIwMCUyMDI3JTIwNDQnJTNFJTNDcGF0aCUyMGQlM0QnTTI3JTJDMjJMMjclMkMyMkw1JTJDNDRsLTIuMS0yLjFMMjIuOCUyQzIyTDIuOSUyQzIuMUw1JTJDMEwyNyUyQzIyTDI3JTJDMjJ6JyUyMGZpbGwlM0QnJTIzMDAwMDAwJyUyRiUzRSUzQyUyRnN2ZyUzRVwiKTtcbn1cbi5zd2lwZXItYnV0dG9uLWxvY2sge1xuICBkaXNwbGF5OiBub25lO1xufVxuLnN3aXBlci1wYWdpbmF0aW9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogMzAwbXMgb3BhY2l0eTtcbiAgLW8tdHJhbnNpdGlvbjogMzAwbXMgb3BhY2l0eTtcbiAgdHJhbnNpdGlvbjogMzAwbXMgb3BhY2l0eTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB6LWluZGV4OiAxMDtcbn1cbi5zd2lwZXItcGFnaW5hdGlvbi5zd2lwZXItcGFnaW5hdGlvbi1oaWRkZW4ge1xuICBvcGFjaXR5OiAwO1xufVxuLyogQ29tbW9uIFN0eWxlcyAqL1xuLnN3aXBlci1wYWdpbmF0aW9uLWZyYWN0aW9uLFxuLnN3aXBlci1wYWdpbmF0aW9uLWN1c3RvbSxcbi5zd2lwZXItY29udGFpbmVyLWhvcml6b250YWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cyB7XG4gIGJvdHRvbTogMTBweDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG59XG4vKiBCdWxsZXRzICovXG4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgZm9udC1zaXplOiAwO1xufVxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuMzMpO1xuICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgwLjMzKTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjMzKTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSk7XG59XG4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlLXByZXYge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC42Nik7XG4gIC1tcy10cmFuc2Zvcm06IHNjYWxlKDAuNjYpO1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuNjYpO1xufVxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZS1wcmV2LXByZXYge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC4zMyk7XG4gIC1tcy10cmFuc2Zvcm06IHNjYWxlKDAuMzMpO1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuMzMpO1xufVxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZS1uZXh0IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuNjYpO1xuICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgwLjY2KTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjY2KTtcbn1cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUtbmV4dC1uZXh0IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuMzMpO1xuICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgwLjMzKTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjMzKTtcbn1cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICB3aWR0aDogOHB4O1xuICBoZWlnaHQ6IDhweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICBiYWNrZ3JvdW5kOiAjMDAwO1xuICBvcGFjaXR5OiAwLjI7XG59XG5idXR0b24uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgYm9yZGVyOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG59XG4uc3dpcGVyLXBhZ2luYXRpb24tY2xpY2thYmxlIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZSB7XG4gIG9wYWNpdHk6IDE7XG4gIGJhY2tncm91bmQ6ICMwMDdhZmY7XG59XG4uc3dpcGVyLWNvbnRhaW5lci12ZXJ0aWNhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzIHtcbiAgcmlnaHQ6IDEwcHg7XG4gIHRvcDogNTAlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAtNTAlLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwcHgsIC01MCUsIDApO1xufVxuLnN3aXBlci1jb250YWluZXItdmVydGljYWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgbWFyZ2luOiA2cHggMDtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4uc3dpcGVyLWNvbnRhaW5lci12ZXJ0aWNhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyB7XG4gIHRvcDogNTAlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICB3aWR0aDogOHB4O1xufVxuLnN3aXBlci1jb250YWluZXItdmVydGljYWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAyMDBtcyB0b3AsIDIwMG1zIC13ZWJraXQtdHJhbnNmb3JtO1xuICB0cmFuc2l0aW9uOiAyMDBtcyB0b3AsIDIwMG1zIC13ZWJraXQtdHJhbnNmb3JtO1xuICAtby10cmFuc2l0aW9uOiAyMDBtcyB0cmFuc2Zvcm0sIDIwMG1zIHRvcDtcbiAgdHJhbnNpdGlvbjogMjAwbXMgdHJhbnNmb3JtLCAyMDBtcyB0b3A7XG4gIHRyYW5zaXRpb246IDIwMG1zIHRyYW5zZm9ybSwgMjAwbXMgdG9wLCAyMDBtcyAtd2Via2l0LXRyYW5zZm9ybTtcbn1cbi5zd2lwZXItY29udGFpbmVyLWhvcml6b250YWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgbWFyZ2luOiAwIDRweDtcbn1cbi5zd2lwZXItY29udGFpbmVyLWhvcml6b250YWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMge1xuICBsZWZ0OiA1MCU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4uc3dpcGVyLWNvbnRhaW5lci1ob3Jpem9udGFsID4gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICAtd2Via2l0LXRyYW5zaXRpb246IDIwMG1zIGxlZnQsIDIwMG1zIC13ZWJraXQtdHJhbnNmb3JtO1xuICB0cmFuc2l0aW9uOiAyMDBtcyBsZWZ0LCAyMDBtcyAtd2Via2l0LXRyYW5zZm9ybTtcbiAgLW8tdHJhbnNpdGlvbjogMjAwbXMgdHJhbnNmb3JtLCAyMDBtcyBsZWZ0O1xuICB0cmFuc2l0aW9uOiAyMDBtcyB0cmFuc2Zvcm0sIDIwMG1zIGxlZnQ7XG4gIHRyYW5zaXRpb246IDIwMG1zIHRyYW5zZm9ybSwgMjAwbXMgbGVmdCwgMjAwbXMgLXdlYmtpdC10cmFuc2Zvcm07XG59XG4uc3dpcGVyLWNvbnRhaW5lci1ob3Jpem9udGFsLnN3aXBlci1jb250YWluZXItcnRsID4gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAyMDBtcyByaWdodCwgMjAwbXMgLXdlYmtpdC10cmFuc2Zvcm07XG4gIHRyYW5zaXRpb246IDIwMG1zIHJpZ2h0LCAyMDBtcyAtd2Via2l0LXRyYW5zZm9ybTtcbiAgLW8tdHJhbnNpdGlvbjogMjAwbXMgdHJhbnNmb3JtLCAyMDBtcyByaWdodDtcbiAgdHJhbnNpdGlvbjogMjAwbXMgdHJhbnNmb3JtLCAyMDBtcyByaWdodDtcbiAgdHJhbnNpdGlvbjogMjAwbXMgdHJhbnNmb3JtLCAyMDBtcyByaWdodCwgMjAwbXMgLXdlYmtpdC10cmFuc2Zvcm07XG59XG4vKiBQcm9ncmVzcyAqL1xuLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyIHtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjI1KTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xufVxuLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyIC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1maWxsIHtcbiAgYmFja2dyb3VuZDogIzAwN2FmZjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCB0b3A7XG4gIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IHRvcDtcbiAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCB0b3A7XG59XG4uc3dpcGVyLWNvbnRhaW5lci1ydGwgLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyIC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1maWxsIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCB0b3A7XG4gIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCB0b3A7XG4gIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IHRvcDtcbn1cbi5zd2lwZXItY29udGFpbmVyLWhvcml6b250YWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA0cHg7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbn1cbi5zd2lwZXItY29udGFpbmVyLXZlcnRpY2FsID4gLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyIHtcbiAgd2lkdGg6IDRweDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG59XG4uc3dpcGVyLXBhZ2luYXRpb24td2hpdGUgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUge1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xufVxuLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLnN3aXBlci1wYWdpbmF0aW9uLXdoaXRlIHtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjI1KTtcbn1cbi5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci5zd2lwZXItcGFnaW5hdGlvbi13aGl0ZSAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItZmlsbCB7XG4gIGJhY2tncm91bmQ6ICNmZmZmZmY7XG59XG4uc3dpcGVyLXBhZ2luYXRpb24tYmxhY2sgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUge1xuICBiYWNrZ3JvdW5kOiAjMDAwMDAwO1xufVxuLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLnN3aXBlci1wYWdpbmF0aW9uLWJsYWNrIHtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjI1KTtcbn1cbi5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci5zd2lwZXItcGFnaW5hdGlvbi1ibGFjayAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItZmlsbCB7XG4gIGJhY2tncm91bmQ6ICMwMDAwMDA7XG59XG4uc3dpcGVyLXBhZ2luYXRpb24tbG9jayB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4vKiBTY3JvbGxiYXIgKi9cbi5zd2lwZXItc2Nyb2xsYmFyIHtcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAtbXMtdG91Y2gtYWN0aW9uOiBub25lO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMSk7XG59XG4uc3dpcGVyLWNvbnRhaW5lci1ob3Jpem9udGFsID4gLnN3aXBlci1zY3JvbGxiYXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDElO1xuICBib3R0b206IDNweDtcbiAgei1pbmRleDogNTA7XG4gIGhlaWdodDogNXB4O1xuICB3aWR0aDogOTglO1xufVxuLnN3aXBlci1jb250YWluZXItdmVydGljYWwgPiAuc3dpcGVyLXNjcm9sbGJhciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDNweDtcbiAgdG9wOiAxJTtcbiAgei1pbmRleDogNTA7XG4gIHdpZHRoOiA1cHg7XG4gIGhlaWdodDogOTglO1xufVxuLnN3aXBlci1zY3JvbGxiYXItZHJhZyB7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjUpO1xuICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG59XG4uc3dpcGVyLXNjcm9sbGJhci1jdXJzb3ItZHJhZyB7XG4gIGN1cnNvcjogbW92ZTtcbn1cbi5zd2lwZXItc2Nyb2xsYmFyLWxvY2sge1xuICBkaXNwbGF5OiBub25lO1xufVxuLnN3aXBlci16b29tLWNvbnRhaW5lciB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICBkaXNwbGF5OiBmbGV4O1xuICAtd2Via2l0LWJveC1wYWNrOiBjZW50ZXI7XG4gIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIC1tcy1mbGV4LXBhY2s6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7XG4gIC13ZWJraXQtYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLnN3aXBlci16b29tLWNvbnRhaW5lciA+IGltZyxcbi5zd2lwZXItem9vbS1jb250YWluZXIgPiBzdmcsXG4uc3dpcGVyLXpvb20tY29udGFpbmVyID4gY2FudmFzIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAtby1vYmplY3QtZml0OiBjb250YWluO1xuICBvYmplY3QtZml0OiBjb250YWluO1xufVxuLnN3aXBlci1zbGlkZS16b29tZWQge1xuICBjdXJzb3I6IG1vdmU7XG59XG4vKiBQcmVsb2FkZXIgKi9cbi5zd2lwZXItbGF6eS1wcmVsb2FkZXIge1xuICB3aWR0aDogNDJweDtcbiAgaGVpZ2h0OiA0MnB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDUwJTtcbiAgdG9wOiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMjFweDtcbiAgbWFyZ2luLXRvcDogLTIxcHg7XG4gIHotaW5kZXg6IDEwO1xuICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IDUwJTtcbiAgLW1zLXRyYW5zZm9ybS1vcmlnaW46IDUwJTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogNTAlO1xuICAtd2Via2l0LWFuaW1hdGlvbjogc3dpcGVyLXByZWxvYWRlci1zcGluIDFzIHN0ZXBzKDEyLCBlbmQpIGluZmluaXRlO1xuICBhbmltYXRpb246IHN3aXBlci1wcmVsb2FkZXItc3BpbiAxcyBzdGVwcygxMiwgZW5kKSBpbmZpbml0ZTtcbn1cbi5zd2lwZXItbGF6eS1wcmVsb2FkZXI6YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29udGVudDogJyc7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIC8vIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyUyMHZpZXdCb3glM0QnMCUyMDAlMjAxMjAlMjAxMjAnJTIweG1sbnMlM0QnaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJyUyMHhtbG5zJTNBeGxpbmslM0QnaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYxOTk5JTJGeGxpbmsnJTNFJTNDZGVmcyUzRSUzQ2xpbmUlMjBpZCUzRCdsJyUyMHgxJTNEJzYwJyUyMHgyJTNEJzYwJyUyMHkxJTNEJzcnJTIweTIlM0QnMjcnJTIwc3Ryb2tlJTNEJyUyMzZjNmM2YyclMjBzdHJva2Utd2lkdGglM0QnMTEnJTIwc3Ryb2tlLWxpbmVjYXAlM0Qncm91bmQnJTJGJTNFJTNDJTJGZGVmcyUzRSUzQ2clM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4yNyclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4yNyclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDMwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuMjcnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSg2MCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjI3JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoOTAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4yNyclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDEyMCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjI3JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMTUwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuMzcnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgxODAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy40NiclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDIxMCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjU2JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMjQwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuNjYnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgyNzAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy43NSclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDMwMCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjg1JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMzMwJTIwNjAlMkM2MCknJTJGJTNFJTNDJTJGZyUzRSUzQyUyRnN2ZyUzRVwiKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlO1xuICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG4uc3dpcGVyLWxhenktcHJlbG9hZGVyLXdoaXRlOmFmdGVyIHtcbiAgLy8gYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmLTgsJTNDc3ZnJTIwdmlld0JveCUzRCcwJTIwMCUyMDEyMCUyMDEyMCclMjB4bWxucyUzRCdodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmcnJTIweG1sbnMlM0F4bGluayUzRCdodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjE5OTklMkZ4bGluayclM0UlM0NkZWZzJTNFJTNDbGluZSUyMGlkJTNEJ2wnJTIweDElM0QnNjAnJTIweDIlM0QnNjAnJTIweTElM0QnNyclMjB5MiUzRCcyNyclMjBzdHJva2UlM0QnJTIzZmZmJyUyMHN0cm9rZS13aWR0aCUzRCcxMSclMjBzdHJva2UtbGluZWNhcCUzRCdyb3VuZCclMkYlM0UlM0MlMkZkZWZzJTNFJTNDZyUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjI3JyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjI3JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMzAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4yNyclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDYwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuMjcnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSg5MCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjI3JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMTIwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuMjcnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgxNTAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4zNyclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDE4MCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjQ2JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMjEwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuNTYnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgyNDAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy42NiclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDI3MCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjc1JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMzAwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuODUnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgzMzAlMjA2MCUyQzYwKSclMkYlM0UlM0MlMkZnJTNFJTNDJTJGc3ZnJTNFXCIpO1xufVxuQC13ZWJraXQta2V5ZnJhbWVzIHN3aXBlci1wcmVsb2FkZXItc3BpbiB7XG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICB9XG59XG5Aa2V5ZnJhbWVzIHN3aXBlci1wcmVsb2FkZXItc3BpbiB7XG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICB9XG59XG4vKiBhMTF5ICovXG4uc3dpcGVyLWNvbnRhaW5lciAuc3dpcGVyLW5vdGlmaWNhdGlvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgb3BhY2l0eTogMDtcbiAgei1pbmRleDogLTEwMDA7XG59XG4uc3dpcGVyLWNvbnRhaW5lci1mYWRlLnN3aXBlci1jb250YWluZXItZnJlZS1tb2RlIC5zd2lwZXItc2xpZGUge1xuICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgLW8tdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG59XG4uc3dpcGVyLWNvbnRhaW5lci1mYWRlIC5zd2lwZXItc2xpZGUge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xuICAtby10cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xufVxuLnN3aXBlci1jb250YWluZXItZmFkZSAuc3dpcGVyLXNsaWRlIC5zd2lwZXItc2xpZGUge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbi5zd2lwZXItY29udGFpbmVyLWZhZGUgLnN3aXBlci1zbGlkZS1hY3RpdmUsXG4uc3dpcGVyLWNvbnRhaW5lci1mYWRlIC5zd2lwZXItc2xpZGUtYWN0aXZlIC5zd2lwZXItc2xpZGUtYWN0aXZlIHtcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XG59XG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlIHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlIC5zd2lwZXItc2xpZGUge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgei1pbmRleDogMTtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IDAgMDtcbiAgLW1zLXRyYW5zZm9ybS1vcmlnaW46IDAgMDtcbiAgdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuLnN3aXBlci1jb250YWluZXItY3ViZSAuc3dpcGVyLXNsaWRlIC5zd2lwZXItc2xpZGUge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbi5zd2lwZXItY29udGFpbmVyLWN1YmUuc3dpcGVyLWNvbnRhaW5lci1ydGwgLnN3aXBlci1zbGlkZSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogMTAwJSAwO1xuICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogMTAwJSAwO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAxMDAlIDA7XG59XG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlIC5zd2lwZXItc2xpZGUtYWN0aXZlLFxuLnN3aXBlci1jb250YWluZXItY3ViZSAuc3dpcGVyLXNsaWRlLWFjdGl2ZSAuc3dpcGVyLXNsaWRlLWFjdGl2ZSB7XG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xufVxuLnN3aXBlci1jb250YWluZXItY3ViZSAuc3dpcGVyLXNsaWRlLWFjdGl2ZSxcbi5zd2lwZXItY29udGFpbmVyLWN1YmUgLnN3aXBlci1zbGlkZS1uZXh0LFxuLnN3aXBlci1jb250YWluZXItY3ViZSAuc3dpcGVyLXNsaWRlLXByZXYsXG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlIC5zd2lwZXItc2xpZGUtbmV4dCArIC5zd2lwZXItc2xpZGUge1xuICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbn1cbi5zd2lwZXItY29udGFpbmVyLWN1YmUgLnN3aXBlci1zbGlkZS1zaGFkb3ctdG9wLFxuLnN3aXBlci1jb250YWluZXItY3ViZSAuc3dpcGVyLXNsaWRlLXNoYWRvdy1ib3R0b20sXG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlIC5zd2lwZXItc2xpZGUtc2hhZG93LWxlZnQsXG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlIC5zd2lwZXItc2xpZGUtc2hhZG93LXJpZ2h0IHtcbiAgei1pbmRleDogMDtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbn1cbi5zd2lwZXItY29udGFpbmVyLWN1YmUgLnN3aXBlci1jdWJlLXNoYWRvdyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgYm90dG9tOiAwcHg7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQ6ICMwMDA7XG4gIG9wYWNpdHk6IDAuNjtcbiAgLXdlYmtpdC1maWx0ZXI6IGJsdXIoNTBweCk7XG4gIGZpbHRlcjogYmx1cig1MHB4KTtcbiAgei1pbmRleDogMDtcbn1cbi5zd2lwZXItY29udGFpbmVyLWZsaXAge1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cbi5zd2lwZXItY29udGFpbmVyLWZsaXAgLnN3aXBlci1zbGlkZSB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICB6LWluZGV4OiAxO1xufVxuLnN3aXBlci1jb250YWluZXItZmxpcCAuc3dpcGVyLXNsaWRlIC5zd2lwZXItc2xpZGUge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbi5zd2lwZXItY29udGFpbmVyLWZsaXAgLnN3aXBlci1zbGlkZS1hY3RpdmUsXG4uc3dpcGVyLWNvbnRhaW5lci1mbGlwIC5zd2lwZXItc2xpZGUtYWN0aXZlIC5zd2lwZXItc2xpZGUtYWN0aXZlIHtcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XG59XG4uc3dpcGVyLWNvbnRhaW5lci1mbGlwIC5zd2lwZXItc2xpZGUtc2hhZG93LXRvcCxcbi5zd2lwZXItY29udGFpbmVyLWZsaXAgLnN3aXBlci1zbGlkZS1zaGFkb3ctYm90dG9tLFxuLnN3aXBlci1jb250YWluZXItZmxpcCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1sZWZ0LFxuLnN3aXBlci1jb250YWluZXItZmxpcCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1yaWdodCB7XG4gIHotaW5kZXg6IDA7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG4uc3dpcGVyLWNvbnRhaW5lci1jb3ZlcmZsb3cgLnN3aXBlci13cmFwcGVyIHtcbiAgLyogV2luZG93cyA4IElFIDEwIGZpeCAqL1xuICAtbXMtcGVyc3BlY3RpdmU6IDEyMDBweDtcbn1cblxuXG4vLyBUZWFzZSBzd2lwZXIgb24gaW5pdFxuLnN3aXBlci0tdGVhc2VkIC5zd2lwZXItd3JhcHBlciB7XG4gIEBpbmNsdWRlIG1lZGlhKCc8bGFwdG9wJykge1xuICAgIGFuaW1hdGlvbjogc3dpcGVyVGVhc2UgMnMgJGJhc2UtYW5pbWF0aW9uLWVhc2luZztcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHN3aXBlclRlYXNlIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwwLDApO1xuICB9XG4gIDUwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMzJweCwwLDApO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwwLDApO1xuICB9XG59XG4iLCIvLyBJbmxpbmUgRGVmaW5pdGlvbnNcbi8vXG4vLyBEaXNwbGF5IGEgbGlzdCB3aGVyZSBsYWJlbHMgYXJlIGlubGluZSB3aXRoIHZhbHVlcyB1c2luZyB0aGUgPGNvZGU+aW5saW5lLWRlZmluaXRpb25zPC9jb2RlPiBjbGFzcy5cbi8vXG4vLyBNYXJrdXA6XG4vLyA8ZGwgY2xhc3M9XCJpbmxpbmUtZGVmaW5pdGlvbnNcIj5cbi8vICAgPGR0PkZyaWRheTwvZHQ+XG4vLyAgIDxkZD45OjAwYW0gLSA1OjAwcG08L2RkPlxuLy8gICA8ZHQ+U2F0dXJkYXk8L2R0PlxuLy8gICA8ZGQ+Q2xvc2VkPC9kZD5cbi8vICAgPGR0PlN1bmRheTwvZHQ+XG4vLyAgIDxkZD5DbG9zZWQ8L2RkPlxuLy8gICA8ZHQ+TW9uZGF5PC9kdD5cbi8vICAgPGRkPjk6MDBhbSAtIDU6MDBwbTwvZGQ+XG4vLyAgIDxkdD5UdWVzZGF5PC9kdD5cbi8vICAgPGRkPjk6MDBhbSAtIDU6MDBwbTwvZGQ+XG4vLyAgIDxkdD5XZWRuZXNkYXk8L2R0PlxuLy8gICA8ZGQ+OTowMGFtIC0gNTowMHBtPC9kZD5cbi8vICAgPGR0PlRodXJzZGF5PC9kdD5cbi8vICAgPGRkPjk6MDBhbSAtIDU6MDBwbTwvZGQ+XG4vLyA8L2RsPlxuLy9cbi8vIFN0eWxlZ3VpZGUgQ29tcG9uZW50cyAtIElubGluZSBEZWZpbml0aW9uc1xuXG4uaW5saW5lLWRlZmluaXRpb25zIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXJnaW46IDAgMCA0NHB4O1xuXG4gIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICBtYXJnaW4tYm90dG9tOiA0OHB4O1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEoJz49bGFwdG9wJykge1xuICAgIG1hcmdpbi1ib3R0b206IDU0cHg7XG4gIH1cblxuICAvLyBkZWZhdWx0IGl0ZW1zXG4gIGR0LCBkZCB7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBwYWRkaW5nLXRvcDogMTZweDtcbiAgICBtYXJnaW4tdG9wOiAxNnB4O1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKGNvbG9yKHByaW1hcnksIGJsYWNrKSwgLjEpO1xuICB9XG5cbiAgZHQgeyBwYWRkaW5nLXJpZ2h0OiAxMnB4OyB9XG4gIGRkIHsgcGFkZGluZy1sZWZ0OiAxMnB4OyB9XG5cbiAgLy8gZmlyc3Qgcm93XG4gIGR0OmZpcnN0LW9mLXR5cGUsXG4gIGRkOmZpcnN0LW9mLXR5cGUge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgfVxuXG59XG4iLCIuZm9ybWdyb3VwIHtcbiAgcGFkZGluZy1ib3R0b206IDMycHg7XG5cbiAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMzJweDtcbiAgfVxuXG4gIC8vIEZvcm1ibG9ja3NcbiAgLmZvcm1ibG9jayB7XG4gICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgICAgZmxleC1ncm93OiAyO1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxuXG4gIC5mb3JtYmxvY2sgKyAuZm9ybWJsb2NrIHtcbiAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgICBtYXJnaW4tbGVmdDogMjRweDtcbiAgICB9XG4gIH1cblxuICAvLyBCdXR0b25zXG4gIC5idXR0b24ge1xuICAgIG1hcmdpbi10b3A6IDI0cHg7XG4gICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAyNHB4O1xuICAgIH1cbiAgfVxuXG4gIC8vIEFkamFjZW50IEZvcm1ncm91cHNcbiAgKyAuZm9ybWdyb3VwIHtcbiAgICBwYWRkaW5nLXRvcDogMzJweDtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgbGlnaHRlbihjb2xvcihwcmltYXJ5LCBncmF5KSwgMzUlKTtcbiAgfVxuXG59XG4iLCIuZmlsdGVyLXBhbmVsIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBsZWZ0OiAwO1xuICB0b3A6IGNhbGMoMTAwJSAtIDQ4cHgpO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihwcmltYXJ5LCB3aGl0ZSk7XG4gIHRyYW5zaXRpb246IHRvcCAkYmFzZS1hbmltYXRpb24tc3BlZWQgJGJhc2UtYW5pbWF0aW9uLWVhc2luZztcbiAgei1pbmRleDogMTAwMDA7XG5cbiAgLy8gdGl0bGUgYWN0aW9uXG4gICZfX3RpdGxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiA0OHB4O1xuICAgIHBhZGRpbmc6IDAgMCAwIDQ4cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3Ioc2Vjb25kYXJ5LCBkYXJrLWJsdWUpO1xuICAgIGJvcmRlcjogMDtcbiAgICBib3gtc2hhZG93OiAwIC0xcHggMCAwIGNvbG9yKHByaW1hcnksIHdoaXRlKTtcbiAgICBmb250OiA2MDAgMTRweC8xICRmb250LXNlY29uZGFyeTtcbiAgICBjb2xvcjogY29sb3IocHJpbWFyeSwgd2hpdGUpO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgbGVmdDogMTZweDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IDE2cHg7XG4gICAgICBoZWlnaHQ6IDE2cHg7XG4gICAgICBtYXJnaW4tdG9wOiAtOHB4O1xuICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWcvaWNvbnMvaV9maWx0ZXJfd2hpdGUuc3ZnJykgbm8tcmVwZWF0IDUwJSA1MCUgLyAxMDAlIGF1dG87XG4gICAgfVxuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIHJpZ2h0OiAxNnB4O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogMTZweDtcbiAgICAgIGhlaWdodDogMTZweDtcbiAgICAgIG1hcmdpbi10b3A6IC04cHg7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltZy9pY29ucy9pX2NhcmV0LXVwX3doaXRlLnN2ZycpIG5vLXJlcGVhdCA1MCUgNTAlIC8gMjRweCBhdXRvO1xuICAgIH1cblxuICAgIC8vIGZvY3VzIHN0YXRlXG4gICAgJjpmb2N1cyB7XG4gICAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAycHggY29sb3Ioc2Vjb25kYXJ5LCBnb2xkKTtcbiAgICAgIG91dGxpbmU6IDA7XG4gICAgfVxuXG4gICAgLy8gYWN0aXZlIHN0YXRlXG4gICAgJlthcmlhLWV4cGFuZGVkPSd0cnVlJ106YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWcvaWNvbnMvaV9jYXJldC1kb3duX3doaXRlLnN2ZycpO1xuICAgIH1cblxuICB9XG5cblxuICAvLyBjb250ZW50XG4gICZfX2NvbnRlbnQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKHByaW1hcnksIHdoaXRlKTtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDQ4cHgpO1xuICAgIHBhZGRpbmc6IDMycHg7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcblxuICAgIC8vIGFjdGl2ZSBzdGF0ZVxuICAgICZbYXJpYS1oaWRkZW49J2ZhbHNlJ10ge31cblxuICB9XG5cblxuICAvLyBhY3RpdmUgc3RhdGVcbiAgJi0tYWN0aXZlIHtcbiAgICB0b3A6IDAlO1xuXG4gICAgLmZpbHRlci1wYW5lbF9fdGl0bGUge31cbiAgICAuZmlsdGVyLXBhbmVsX19jb250ZW50IHt9XG4gIH1cblxufVxuIiwiLmRpc3RyaWN0cyB7XG4gIEBpbmNsdWRlIHJlc2V0LWxpc3Q7XG4gIGRpc3BsYXk6IG5vbmU7XG5cbiAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cbn1cblxuLmRpc3RyaWN0IHtcbiAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgIHdpZHRoOiBwZXJjZW50YWdlKDEvMyk7XG4gICAgcGFkZGluZzogMzJweCAwO1xuICAgIG1hcmdpbjogMDtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIGxpZ2h0ZW4oY29sb3IocHJpbWFyeSwgZ3JheSksIDM1JSk7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG5cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgfVxuICB9XG5cbiAgJl9fbWV0YSB7XG4gICAgQGV4dGVuZCAubWV0YTtcblxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxuXG4gICZfX3ZhbHVlIHt9XG5cbn1cbiIsIi5maWd1cmUge1xuICAmLS1mZWF0dXJlZCB7XG4gICAgbWFyZ2luLWxlZnQ6IC0zMnB4O1xuICAgIG1hcmdpbi1yaWdodDogLTMycHg7XG4gICAgYm9yZGVyLXJhZGl1czogcmFkaXVzKG5vbmUpO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgICAgbWFyZ2luLWxlZnQ6IC02NHB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtNjRweDtcbiAgICB9XG4gICAgQGluY2x1ZGUgbWVkaWEoJz49bGFwdG9wJykge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBib3JkZXItcmFkaXVzOiByYWRpdXMoYmFzZSk7XG4gICAgfVxuXG4gICAgaW1nICB7XG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPGxhcHRvcCcpIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogcmFkaXVzKG5vbmUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIGZpZ2NhcHRpb24ge1xuICAgICAgbWFyZ2luLWxlZnQ6IDMycHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDMycHg7XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDY0cHg7XG4gICAgICAgIG1hcmdpbi1yaWdodDogNjRweDtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi52aWRlbyB7XG4gICYtLWZlYXR1cmVkIHtcbiAgICBtYXJnaW4tbGVmdDogLTMycHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMzJweDtcbiAgICBib3JkZXItcmFkaXVzOiByYWRpdXMobm9uZSk7XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgICBtYXJnaW4tbGVmdDogLTY0cHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC02NHB4O1xuICAgIH1cbiAgICBAaW5jbHVkZSBtZWRpYSgnPj1sYXB0b3AnKSB7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IHJhZGl1cyhiYXNlKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEJsb2NrcXVvdGUgKEZlYXR1cmVkKVxuLy9cbi8vIFByb21vdGlvbmFsIGJsb2NrcXVvdGUgdGhhdCBkaXNwbGF5cyBhbiBhc3NvY2lhdGVkIGltYWdlLlxuLy9cbi8vIE1hcmt1cDpcbi8vIDxibG9ja3F1b3RlIGNsYXNzPVwiYmxvY2txdW90ZS0tZmVhdHVyZWRcIj5cbi8vICAgPGRpdiBjbGFzcz1cImJsb2NrcXVvdGVfX2ltYWdlXCI+XG4vLyAgICAgPGltZyBzcmM9XCJodHRwczovL3Vuc3BsYXNoLml0LzMyMC8zMjBcIiBhbHQ9XCJjYXB0aW9uIGZvciBpbWFnZVwiPlxuLy8gICA8L2Rpdj5cbi8vICAgPGRpdiBjbGFzcz1cImJsb2NrcXVvdGVfX2NvbnRlbnRcIj5cbi8vICAgICA8cCBjbGFzcz1cImJsb2NrcXVvdGVfX3RleHRcIj5EZXNpZ24gaXMgbm90IGp1c3Qgd2hhdCBpdCBsb29rcyBsaWtlIGFuZCBmZWVscyBsaWtlLiBEZXNpZ24gaXMgaG93IGl0IHdvcmtzLjwvcD5cbi8vICAgICA8Zm9vdGVyIGNsYXNzPVwiYmxvY2txdW90ZV9fY2l0ZVwiPlN0ZXZlIEpvYnM8L2Zvb3Rlcj5cbi8vICAgPC9kaXY+XG4vLyA8L2Jsb2NrcXVvdGU+XG4vL1xuLy8gU3R5bGVndWlkZSBDb21wb25lbnRzIC0gQmxvY2txdW90ZSAoRmVhdHVyZWQpXG5cbi5ibG9ja3F1b3RlIHtcbiAgJi0tZmVhdHVyZWQge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIGJvcmRlcjogMDtcblxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAvLyBtaW4taGVpZ2h0OiAyMCU7XG4gICAgICAvLyBwYWRkaW5nLWxlZnQ6IDI1JTtcbiAgICB9XG5cbiAgICAuYmxvY2txdW90ZV9faW1hZ2Uge1xuICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgQGluY2x1ZGUgbWVkaWEoJz49bGFwdG9wJykge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDIwJTtcbiAgICAgIH1cbiAgICB9XG4gICAgLmJsb2NrcXVvdGVfX2NvbnRlbnQge1xuICAgICAgQGluY2x1ZGUgbWVkaWEoJz49bGFwdG9wJykge1xuICAgICAgICB3aWR0aDogNzUlO1xuICAgICAgICBtYXJnaW4tbGVmdDogNSU7XG4gICAgICB9XG4gICAgfVxuICAgIC5ibG9ja3F1b3RlX190ZXh0IHt9XG4gICAgLmJsb2NrcXVvdGVfX2NpdGUge31cbiAgfVxufVxuIiwiLy8gU2hvdFxuLy9cbi8vIERpc3BsYXkgYSBwcm9tb3Rpb25hbCBjYWxsLXRvLWFjdGlvbiBmb3IgYSBwYWdlLCBwZXJzb24sIGV0Yy4gT3B0aW9uYWxseSBjYW4gZGlzcGxheSBhIHByZWZpeCwgc3VmZml4LCBhbmQvb3IgZGVzY3JpcHRpb24uXG4vL1xuLy8gTWFya3VwOlxuLy8gPGRpdiBjbGFzcz1cInNob3Qge3ttb2RpZmllcl9jbGFzc319XCIgaXRlbXNjb3BlPVwiXCIgaXRlbXR5cGU9XCJodHRwOi8vc2NoZW1hLm9yZy9XZWJQYWdlXCI+XG4vLyAgIDxkaXYgY2xhc3M9XCJzaG90X19waG90b1wiPlxuLy8gICAgIDxpbWcgc3JjPVwiaHR0cHM6Ly9waWNzdW0ucGhvdG9zLzEwMjQvNTc2XCIgYWx0PVwiQ2FwdGlvbiBmb3IgdGhpcyBwaG90b2dyYXBoXCI+XG4vLyAgIDwvZGl2PlxuLy8gICA8ZGl2IGNsYXNzPVwic2hvdF9fY29udGVudFwiPlxuLy8gICAgIDxoNCBjbGFzcz1cInNob3RfX3RpdGxlXCI+PGEgaXRlbXByb3A9XCJ1cmxcIiBocmVmPVwiI1wiPlNob3QgdGl0bGU8L2E+PC9oND5cbi8vICAgICA8cCBjbGFzcz1cInNob3RfX2Rlc2NyaXB0aW9uXCI+RmFyIGZhciBhd2F5LCBiZWhpbmQgdGhlIHdvcmQgbW91bnRhaW5zLCBmYXIgZnJvbSB0aGUgY291bnRyaWVzIFZva2FsaWEgYW5kIENvbnNvbmFudGlhLCB0aGVyZSBsaXZlLjwvcD5cbi8vICAgPC9kaXY+XG4vLyA8L2Rpdj5cbi8vXG4vLyAuc2hvdC0taG9yaXpvbnRhbCAgIC0gSG9yaXpvbnRhbCBzaG90XG4vLyAuc2hvdC0tZmVhdHVyZWQgICAgIC0gRmVhdHVyZWQgc2hvdFxuLy9cbi8vIFN0eWxlZ3VpZGUgQ29tcG9uZW50cyAtIFNob3RcblxuXG4vLyBNdWdzaG90c1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5zaG90cyB7XG4gIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgfVxuXG4gIC8vIDIgY29sdW1uc1xuICAmW2RhdGEtY29sdW1ucz0nMiddIHtcbiAgICAuc2hvdCB7XG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgICAgIHdpZHRoOiBwZXJjZW50YWdlKDMwMC82MjQpO1xuICAgICAgICBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgyNC82MjQpO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgbWVkaWEoJz49bGFwdG9wJykge1xuICAgICAgICB3aWR0aDogcGVyY2VudGFnZSg2MzAvMTI4MCk7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBwZXJjZW50YWdlKDIwLzEyODApO1xuICAgICAgfVxuXG4gICAgICAvLyBmaXJzdCBwYXJ0IGluIGVhY2ggcm93XG4gICAgICAmOm50aC1jaGlsZChvZGQpIHtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIGZpcnN0IGFuZCBzZWNvbmQgaXRlbXMgb2YgZ3JvdXBcbiAgICAgICY6bnRoLWNoaWxkKDEpLFxuICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIDMgY29sdW1uc1xuICAmW2RhdGEtY29sdW1ucz0nMyddIHtcbiAgICAuc2hvdCB7XG4gICAgICAvLyBkZWZhdWx0IHBhcnRcbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICAgICAgd2lkdGg6IHBlcmNlbnRhZ2UoMzAwLzYyNCk7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBwZXJjZW50YWdlKDI0LzYyNCk7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICAgICAgd2lkdGg6IHBlcmNlbnRhZ2UoNDEyLzEyODApO1xuICAgICAgICBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgyMi8xMjgwKTtcbiAgICAgIH1cblxuICAgICAgLy8gZXZlcnkgM3JkIGl0ZW0sIHN0YXJ0aW5nIHdpdGggdGhlIGZpcnN0IGVsZW1lbnQgKHRhYmxldClcbiAgICAgICY6bnRoLWNoaWxkKDNuLTIpIHtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJz49bGFwdG9wJykge1xuICAgICAgICAgIHdpZHRoOiBwZXJjZW50YWdlKDQxMi8xMjgwKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBldmVyeSAzcmQgaXRlbSwgc3RhcnRpbmcgd2l0aCB0aGUgc2Vjb25kIGVsZW1lbnQgKHRhYmxldClcbiAgICAgICY6bnRoLWNoaWxkKDNuLTEpIHtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJz49bGFwdG9wJykge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiBwZXJjZW50YWdlKDIyLzEyODApO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIGZpcnN0IHJvdyAobGFwdG9wKVxuICAgICAgJjpudGgtY2hpbGQoMSksXG4gICAgICAmOm50aC1jaGlsZCgyKSxcbiAgICAgICY6bnRoLWNoaWxkKDMpIHtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJz49bGFwdG9wJykge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyA0IGNvbHVtbnNcbiAgJltkYXRhLWNvbHVtbnM9JzQnXSB7XG4gICAgLnNob3Qge1xuICAgICAgLy8gZGVmYXVsdCBwYXJ0XG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgICAgIHdpZHRoOiBwZXJjZW50YWdlKDMwMC82MjQpO1xuICAgICAgICBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgyNC82MjQpO1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPj1sYXB0b3AnKSB7XG4gICAgICAgIHdpZHRoOiBwZXJjZW50YWdlKDMwMy8xMjgwKTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IHBlcmNlbnRhZ2UoKDY4LzMpIC8xMjgwKTtcbiAgICAgIH1cblxuICAgICAgLy8gZmlyc3QgcGFydCBpbiBlYWNoIHJvdyAodGFibGV0KVxuICAgICAgJjpudGgtY2hpbGQob2RkKSB7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgoNjgvMykgLzEyODApO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIGZpcnN0IHBhcnQgaW4gZWFjaCByb3cgKGxhcHRvcClcbiAgICAgICY6bnRoLWNoaWxkKDRuLTMpIHtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJz49bGFwdG9wJykge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIGZpcnN0IGFuZCBzZWNvbmQgaXRlbXMgb2YgZ3JvdXBcbiAgICAgICY6bnRoLWNoaWxkKDEpLFxuICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyB0aGlyZCBhbmQgZm91cnRoIGl0ZW1zIG9mIGdyb3VwIChsYXB0b3ApXG4gICAgICAmOm50aC1jaGlsZCgzKSxcbiAgICAgICY6bnRoLWNoaWxkKDQpIHtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJz49bGFwdG9wJykge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxufVxuXG5cbi8vIFNob3Rcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uc2hvdCB7XG4gIC8vIElFIDExIGZpeFxuICBAbWVkaWEgYWxsIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSkge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cbiAgbWFyZ2luOiAwIDAgMzJweDtcblxuICAvLyBTaG90IHBob3RvXG4gICZfX3Bob3RvIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzMnB4O1xuICB9XG5cbiAgLy8gU2hvdCBwcmVmaXhcbiAgJl9fcHJlZml4IHtcbiAgICBAZXh0ZW5kIC5tZXRhO1xuICAgIG1hcmdpbi1ib3R0b206IDhweDtcbiAgfVxuXG4gIC8vIFNob3QgdGl0bGVcbiAgJl9fdGl0bGUge1xuICAgIEBleHRlbmQgLmg2O1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gIC8vIFNob3Qgc3VmZml4XG4gICZfX3N1ZmZpeCB7XG4gICAgQGV4dGVuZCAubWV0YTtcbiAgICBtYXJnaW4tdG9wOiA4cHg7XG4gIH1cblxuICAvLyBTaG90IGRlc2NyaXB0aW9uXG4gICZfX2Rlc2NyaXB0aW9uIHtcbiAgICBtYXJnaW46IDE2cHggMCAwO1xuICB9XG5cbiAgLy8gU2hvdCBidXR0b25cbiAgJl9fYnV0dG9uIHtcbiAgICBAZXh0ZW5kIC5idXR0b247XG4gICAgbWFyZ2luOiAzMnB4IDAgMDtcbiAgfVxuXG5cbiAgLy8gSG9yaXpvbnRhbCBzaG90XG4gIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAmLS1ob3Jpem9udGFsIHtcbiAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgfVxuXG4gICAgLnNob3RfX3Bob3RvIHtcbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICAgICAgd2lkdGg6IHBlcmNlbnRhZ2UoMzAwLzYyNCk7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPj1sYXB0b3AnKSB7XG4gICAgICAgIHdpZHRoOiBwZXJjZW50YWdlKDQxMC8xMjgwKTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5zaG90X19jb250ZW50IHtcbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICAgICAgd2lkdGg6IHBlcmNlbnRhZ2UoMzAwLzYyNCk7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBwZXJjZW50YWdlKDI0LzYyNCk7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPj1sYXB0b3AnKSB7XG4gICAgICAgIHdpZHRoOiBwZXJjZW50YWdlKDgwNS8xMjgwKTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IHBlcmNlbnRhZ2UoNjQvMTI4MCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnNob3RfX3RpdGxlIHtcbiAgICAgIEBleHRlbmQgLmg1O1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbiAgfVxuXG5cbiAgLy8gRmVhdHVyZWQgc2hvdFxuICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgJi0tZmVhdHVyZWQge1xuICAgIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHBhZGRpbmc6IDEyOHB4IDY0cHggNjRweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKHByaW1hcnksIGJsYWNrKTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IHJhZGl1cyhiYXNlKTtcbiAgICAgIGNvbG9yOiBjb2xvcihwcmltYXJ5LCB3aGl0ZSk7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIH1cblxuICAgICY6YWZ0ZXIge1xuICAgICAgQGluY2x1ZGUgbWVkaWEoJz49bGFwdG9wJykge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgwLDAsMCwwKSAyNCUsIHJnYmEoMCwwLDAsLjkpIDY0JSk7IC8qIEZGMy42LTE1ICovXG4gICAgICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgwLDAsMCwwKSAyNCUscmdiYSgwLDAsMCwuOSkgNjQlKTsgLyogQ2hyb21lMTAtMjUsU2FmYXJpNS4xLTYgKi9cbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgcmdiYSgwLDAsMCwwKSAyNCUscmdiYSgwLDAsMCwuOSkgNjQlKTsgLyogVzNDLCBJRTEwKywgRkYxNissIENocm9tZTI2KywgT3BlcmExMissIFNhZmFyaTcrICovXG4gICAgICAgIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KCBzdGFydENvbG9yc3RyPScjMDAwMDAwMDAnLCBlbmRDb2xvcnN0cj0nIzAwMDAwMCcsR3JhZGllbnRUeXBlPTAgKTsgLyogSUU2LTkgKi9cbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuc2hvdF9fcGhvdG8ge1xuICAgICAgbWFyZ2luLWxlZnQ6IC0zMnB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMzJweDtcblxuICAgICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgbWVkaWEoJz49bGFwdG9wJykge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgei1pbmRleDogMDtcblxuICAgICAgICBwaWN0dXJlIHtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYtLXBvcnRyYWl0IHtcbiAgICAgICAgLmZlYXR1cmVkLXNob3QtbGFuZHNjYXBlIHtcbiAgICAgICAgICBAaW5jbHVkZSBtZWRpYSgnPj1sYXB0b3AnKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuZmVhdHVyZWQtc2hvdC1wb3J0cmFpdCB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICBAaW5jbHVkZSBtZWRpYSgnPj1sYXB0b3AnKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLnNob3RfX3Bob3RvIGltZyB7XG4gICAgICBib3JkZXItcmFkaXVzOiByYWRpdXMobm9uZSk7XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogcmFkaXVzKGJhc2UpO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgbWVkaWEoJz49bGFwdG9wJykge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgZm9udC1mYW1pbHk6ICdvYmplY3QtZml0OiBjb3ZlcjsnO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5zaG90X190aXRsZSB7XG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPj1sYXB0b3AnKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgIH1cbiAgICB9XG4gICAgLnNob3RfX3RpdGxlIGEge1xuICAgICAgQGluY2x1ZGUgbWVkaWEoJz49bGFwdG9wJykge1xuICAgICAgICBjb2xvcjogY29sb3IocHJpbWFyeSwgd2hpdGUpO1xuICAgICAgfVxuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJz49bGFwdG9wJykge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoY29sb3IocHJpbWFyeSwgYmxhY2spLCAuNSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuc2hvdF9fY29udGVudCB7XG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPj1sYXB0b3AnKSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDogMjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuc2hvdF9fcHJlZml4LFxuICAgIC5zaG90X19zdWZmaXgge1xuICAgICAgQGluY2x1ZGUgbWVkaWEoJz49bGFwdG9wJykge1xuICAgICAgICBjb2xvcjogY29sb3IocHJpbWFyeSwgd2hpdGUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5zaG90X19idXR0b24ge1xuICAgICAgQGluY2x1ZGUgbWVkaWEoJz49bGFwdG9wJykge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihwcmltYXJ5LCB3aGl0ZSk7XG4gICAgICAgIGNvbG9yOiBjb2xvcihzZWNvbmRhcnksIGRhcmstYmx1ZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbn1cbiIsIi8vIFRhZ3Ncbi8vXG4vLyBBIGxpc3Qgb2YgZGF0YSBvYmplY3RzLlxuLy9cbi8vIE1hcmt1cDpcbi8vIDx1bCBjbGFzcz1cInRhZ3NcIj5cbi8vICAgPGxpIGNsYXNzPVwidGFnXCI+XG4vLyAgICAgPGEgaHJlZj1cIiNcIiB0aXRsZT1cIkJyb3dzZSBuZXdzIGFydGljbGVzIGFib3V0IHByZXNzIHJlbGVhc2VzXCI+UHJlc3MgcmVsZWFzZTwvYT5cbi8vICAgPC9saT5cbi8vICAgPGxpIGNsYXNzPVwidGFnXCI+XG4vLyAgICAgPGEgaHJlZj1cIiNcIiB0aXRsZT1cIkJyb3dzZSBuZXdzIGFydGljbGVzIGFib3V0IFdha2UgQ291bnR5XCI+V2FrZSBDb3VudHk8L2E+XG4vLyAgIDwvbGk+XG4vLyAgIDxsaSBjbGFzcz1cInRhZ1wiPlxuLy8gICAgIDxhIGhyZWY9XCIjXCIgdGl0bGU9XCJCcm93c2UgbmV3cyBhcnRpY2xlcyBhYm91dCBTdXByZW1lIENvdXJ0XCI+U3VwcmVtZSBDb3VydDwvYT5cbi8vICAgPC9saT5cbi8vIDwvdWw+XG4vL1xuLy8gU3R5bGVndWlkZSBDb21wb25lbnRzIC0gVGFnc1xuXG4udGFncyB7XG4gIEBpbmNsdWRlIHJlc2V0LWxpc3Q7XG4gIG1hcmdpbi10b3A6IDhweDtcbn1cblxuLnRhZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDRweCAwIDA7XG4gIGNvbG9yOiBjb2xvcihwcmltYXJ5LCBibGFjayk7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcblxuICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgZm9udC1zaXplOiAxOXB4O1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEoJz49bGFwdG9wJykge1xuICAgIGZvbnQtc2l6ZTogMjFweDtcbiAgfVxuXG4gIC8vIGZpcnN0IHRhZ1xuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG59XG4iLCIvLyBEaWFncmFtc1xuLy9cbi8vIFZpc3VhbCBncmFwaGljIHJlcHJlc2VudGluZyBhIGxpbmVhciBwcm9jZXNzLiBHcmVhdCBmb3IgdXAgdG8gNSBzdGVwcy5cbi8vXG4vLyBNYXJrdXA6XG4vLyA8b2wgY2xhc3M9XCJkaWFncmFtXCI+XG4vLyAgIDxsaT5BcnJlc3Q8L2xpPlxuLy8gICA8bGk+SW5pdGlhbCBoZWFyaW5nPC9saT5cbi8vICAgPGxpPlRyaWFsPC9saT5cbi8vICAgPGxpPlNlbnRlbmNpbmc8L2xpPlxuLy8gICA8bGk+QXBwZWFsPC9saT5cbi8vIDwvb2w+XG4vL1xuLy9cbi8vIFN0eWxlZ3VpZGUgQ29tcG9uZW50cyAtIERpYWdyYW1zXG5cbi5kaWFncmFtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogMzJweDtcbiAgbWFyZ2luOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihwcmltYXJ5LCBvZmYtd2hpdGUpO1xuICBib3JkZXItcmFkaXVzOiByYWRpdXMoYmFzZSk7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgY291bnRlci1yZXNldDogc2VjdGlvbjtcblxuICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgcGFkZGluZzogNDhweCAzMnB4O1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgfVxuICBAaW5jbHVkZSBtZWRpYSgnPj1sYXB0b3AnKSB7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgcGFkZGluZzogNjRweCAzMnB4O1xuICB9XG5cblxuICAvLyBEZWZhdWx0IGl0ZW1cbiAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIGxpIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDMycHg7XG4gICAgbWFyZ2luOiAzMnB4IDEycHggMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihzZWNvbmRhcnksIGN5YW4pO1xuICAgIGJvcmRlcjogMnB4IHNvbGlkIGNvbG9yKHNlY29uZGFyeSwgZGFyay1ibHVlKTtcbiAgICBib3JkZXItcmFkaXVzOiByYWRpdXMoYmFzZSk7XG4gICAgY29sb3I6IGNvbG9yKHByaW1hcnksIHdoaXRlKTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgei1pbmRleDogMjtcblxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHt9XG4gICAgQGluY2x1ZGUgbWVkaWEoJz49bGFwdG9wJykge1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG4gICAgQGluY2x1ZGUgbWVkaWEoJz49ZGVza3RvcCcpIHtcbiAgICAgIHBhZGRpbmc6IDI0cHg7XG4gICAgfVxuXG4gICAgLy8gaXRlbSBjb3VudFxuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvdW50ZXItaW5jcmVtZW50OiBzZWN0aW9uO1xuICAgICAgY29udGVudDogY291bnRlcnMoc2VjdGlvbiwgJy4nKTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICB3aWR0aDogMzJweDtcbiAgICAgIGhlaWdodDogMzJweDtcbiAgICAgIG1hcmdpbjogLTE2cHggMCAwIC0xNnB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3Ioc2Vjb25kYXJ5LCBkYXJrLWJsdWUpO1xuICAgICAgYm9yZGVyOiAycHggc29saWQgY29sb3Ioc2Vjb25kYXJ5LCBkYXJrLWJsdWUpO1xuICAgICAgYm9yZGVyLXJhZGl1czogcmFkaXVzKGZ1bGwpO1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIHotaW5kZXg6IDI7XG4gICAgfVxuXG4gICAgLy8gZmlyc3QgaXRlbSBpbiBsaXN0XG4gICAgJjpmaXJzdC1jaGlsZCB7IG1hcmdpbi10b3A6IDA7IH1cbiAgfVxuXG4gIC8vIDIgaXRlbXNcbiAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIGxpOm50aC1sYXN0LWNoaWxkKDIpOmZpcnN0LWNoaWxkLFxuICBsaTpudGgtbGFzdC1jaGlsZCgyKTpmaXJzdC1jaGlsZCB+IGxpIHtcbiAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7fVxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHt9XG4gIH1cblxuXG4gIC8vIDMgaXRlbXNcbiAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIGxpOm50aC1sYXN0LWNoaWxkKDMpOmZpcnN0LWNoaWxkLFxuICBsaTpudGgtbGFzdC1jaGlsZCgzKTpmaXJzdC1jaGlsZCB+IGxpIHtcbiAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7fVxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHt9XG4gIH1cblxuXG4gIC8vIDQgaXRlbXNcbiAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIGxpOm50aC1sYXN0LWNoaWxkKDQpOmZpcnN0LWNoaWxkLFxuICBsaTpudGgtbGFzdC1jaGlsZCg0KTpmaXJzdC1jaGlsZCB+IGxpIHtcbiAgICBAaW5jbHVkZSBtZWRpYSgnPj1sYXB0b3AnKSB7XG4gICAgICAvL3dpZHRoOiAyNCU7XG4gICAgfVxuICB9XG5cblxuICAvLyA1IGl0ZW1zXG4gIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBsaTpudGgtbGFzdC1jaGlsZCg1KTpmaXJzdC1jaGlsZCxcbiAgbGk6bnRoLWxhc3QtY2hpbGQoNSk6Zmlyc3QtY2hpbGQgfiBsaSB7XG4gICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge31cbiAgICBAaW5jbHVkZSBtZWRpYSgnPj1sYXB0b3AnKSB7XG4gICAgICAvL3dpZHRoOiAxOCU7XG4gICAgfVxuICB9XG5cblxufVxuIiwiLy8gVHdlZXRcbi8vXG4vLyBEaXNwbGF5IGEgdHdlZXQgZnJvbSBUd2l0dGVyLlxuLy9cbi8vIE1hcmt1cDpcbi8vIDxkaXYgY2xhc3M9XCJ0d2VldFwiPlxuLy8gICA8ZGl2IGNsYXNzPVwidHdlZXRfX3Byb2ZpbGVcIj5cbi8vICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCI+XG4vLyAgICAgICA8cGF0aCBmaWxsPVwiIzFEQTFGMlwiIGQ9XCJNMjQgNC42Yy0uOS40LTEuOC43LTIuOC44IDEtLjYgMS44LTEuNiAyLjItMi43LTEgLjYtMiAxLTMuMSAxLjItLjktMS0yLjItMS42LTMuNi0xLjYtMi43IDAtNC45IDIuMi00LjkgNC45IDAgLjQgMCAuOC4xIDEuMS00LjItLjItNy44LTIuMi0xMC4yLTUuMi0uNS44LS43IDEuNi0uNyAyLjUgMCAxLjcuOSAzLjIgMi4yIDQuMS0uOCAwLTEuNi0uMi0yLjItLjZ2LjFjMCAyLjQgMS43IDQuNCAzLjkgNC44LS40LjEtLjguMi0xLjMuMi0uMyAwLS42IDAtLjktLjEuNiAyIDIuNCAzLjQgNC42IDMuNC0xLjcgMS4zLTMuOCAyLjEtNi4xIDIuMS0uNCAwLS44IDAtMS4yLS4xIDIuMiAxLjQgNC44IDIuMiA3LjUgMi4yIDkuMSAwIDE0LTcuNSAxNC0xNHYtLjZjMS0uNyAxLjgtMS42IDIuNS0yLjV6XCI+PC9wYXRoPlxuLy8gICAgIDwvc3ZnPlxuLy8gICAgIDxhIGhyZWY9XCJodHRwczovL3R3aXR0ZXIuY29tL05DQ291cnRzXCIgdGFyZ2V0PVwiX2JsYW5rXCI+QE5DQ291cnRzPC9hPlxuLy8gICA8L2Rpdj5cbi8vICAgPGRpdiBjbGFzcz1cInR3ZWV0X19tZXNzYWdlXCI+XG4vLyAgICAgPHA+SW1wb3J0YW50IGRpc2N1c3Npb24gd2l0aCA8YSBocmVmPVwiI1wiPkBHT1BMZWFkZXI8L2E+ICZhbXA7IDxhIGhyZWY9XCIjXCI+QHJlcGdyZWd3YWxkZW48L2E+IGF0IHRoZSBDYXBpdG9sIGFib3V0IHRoZSBuZWVkIHRvIHByb3Blcmx5IGZ1bmQgb3VyIGdvdmVybm1lbnQgc28gdGhhdCBvdXIgY291cmFnZW91cyB0cm9vcHMgaGF2ZSB0aGUgcmVzb3VyY2VzIGFuZCBzdXBwb3J0IHRoZXkgbmVlZCB0byBhY2NvbXBsaXNoIHRoZWlyIG1pc3Npb24gYW5kIGNvbWUgaG9tZSBTQUZFLjwvcD5cbi8vICAgPC9kaXY+XG4vLyAgIDxkaXYgY2xhc3M9XCJ0d2VldF9fdGltZXN0YW1wXCI+XG4vLyAgICAgPHRpbWUgZGF0ZXRpbWU9XCIyMDE4LTAyLTI3VDE5OjAwXCI+RmVicnVhcnkgMjcsIDIwMTggYXQgNzowMCBwLm0uPC90aW1lPlxuLy8gICA8L2Rpdj5cbi8vIDwvZGl2PlxuLy9cbi8vIFN0eWxlZ3VpZGUgQ29tcG9uZW50cyAtIFR3ZWV0XG5cbi50d2VldCB7XG4gIHBhZGRpbmc6IDMycHg7XG4gIG1hcmdpbjogMCAwIDI4cHg7XG4gIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKHNlY29uZGFyeSwgZGFyay1ibHVlKTtcbiAgYm9yZGVyLXJhZGl1czogcmFkaXVzKGJhc2UpO1xuICBjb2xvcjogY29sb3IocHJpbWFyeSwgd2hpdGUpO1xuXG4gIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICBwYWRkaW5nOiA0OHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDMycHg7XG4gIH1cbiAgQGluY2x1ZGUgbWVkaWEoJz49bGFwdG9wJykge1xuICAgIHBhZGRpbmc6IDY0cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMzhweDtcbiAgfVxuXG5cbiAgLy8gTGlua3NcbiAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBhIHtcbiAgICAvLyBkZWZhdWx0IGxpbmtzLCBub3QgdmlzaXRlZFxuICAgICY6bGluayB7XG4gICAgICBjb2xvcjogcmdiYShjb2xvcihwcmltYXJ5LCB3aGl0ZSksIC45NSk7XG4gICAgfVxuXG4gICAgLy8gbGlua3MgdGhhdCBoYXZlIGJlZW4gdmlzaXRlZFxuICAgICY6dmlzaXRlZCB7XG4gICAgICBjb2xvcjogcmdiYShjb2xvcihwcmltYXJ5LCB3aGl0ZSksIC45NSk7XG4gICAgfVxuXG4gICAgLy8gbGlua3MgdGhhdCBhcmUgaG92ZXJlZFxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBjb2xvcjogY29sb3IocHJpbWFyeSwgd2hpdGUpO1xuICAgIH1cblxuICAgIC8vIGxpbmtzIHRoYXQgYXJlIGluIGZvY3VzXG4gICAgJjpmb2N1cyxcbiAgICAmOmZvY3VzOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKHNlY29uZGFyeSwgZ29sZCk7XG4gICAgICBjb2xvcjogY29sb3Ioc2Vjb25kYXJ5LCBkYXJrLWJsdWUpO1xuICAgIH1cblxuICAgIC8vIGxpbmtzIHRoYXQgYXJlIGFjdGl2ZWx5IGNsaWNrZWRcbiAgICAmOmFjdGl2ZSB7XG4gICAgICBjb2xvcjogY29sb3Ioc2Vjb25kYXJ5LCBkYXJrLWJsdWUpO1xuICAgIH1cblxuICAgIC8vIGV4dGVybmFsIGxpbmtzXG4gICAgJlt0YXJnZXQ9J19ibGFuayddIHtcbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKGNvbG9yKHNlY29uZGFyeSwgZGFyay1ibHVlKSwgNSUpO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy9pY29ucy9pX2V4dGVybmFsX3doaXRlLnN2ZycpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG5cbiAgLy8gUHJvZmlsZVxuICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICZfX3Byb2ZpbGUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgIHN2ZyB7XG4gICAgICB3aWR0aDogMjRweDtcbiAgICAgIGhlaWdodDogMjRweDtcbiAgICAgIG1hcmdpbi1yaWdodDogMTZweDtcbiAgICB9XG4gICAgYSB7IGZvbnQtd2VpZ2h0OiA3MDA7IH1cblxuICB9XG5cblxuICAvLyBNZXNzYWdlXG4gIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgJl9fbWVzc2FnZSB7XG4gICAgbWFyZ2luLXRvcDogMzJweDtcbiAgfVxuXG5cbiAgLy8gVGltZXN0YW1wXG4gIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgJl9fdGltZXN0YW1wIHtcbiAgICBtYXJnaW4tdG9wOiAzMnB4O1xuICAgIGZvbnQtc2l6ZTogMTRweDtcblxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICB9XG4gIH1cblxufVxuIiwiLy8gSG9saWRheVxuLy9cbi8vIERpc3BsYXkgdGhlIGxhdGVzdCBob2xpZGF5IGFuZCBsaW5rIHRvIHRoZSBob2xpZGF5IHNjaGVkdWxlLlxuLy9cbi8vIE1hcmt1cDpcbi8vIDxkaXYgY2xhc3M9XCJob2xpZGF5XCI+XG4vLyAgIDxkaXYgY2xhc3M9XCJob2xpZGF5X19oZWFkZXJcIj5cbi8vICAgICA8ZGl2IGNsYXNzPVwiaG9saWRheV9fdGl0bGVcIj5cbi8vICAgICAgIDxzdHJvbmc+VXBjb21pbmcgSnVkaWNpYWwgQnJhbmNoIGhvbGlkYXk8L3N0cm9uZz5cbi8vICAgICA8L2Rpdj5cbi8vICAgICA8dGltZSBjbGFzcz1cImhvbGlkYXlfX2RhdGVcIiBkYXRldGltZT1cIjIwMTgtMTItMjVUMDA6MDBcIj48c3BhbiBjbGFzcz1cImRheVwiPk1vbmRheTwvc3Bhbj4sIDxzcGFuIGNsYXNzPVwiZGF0ZVwiPkRlY2VtYmVyIDI1PC9zcGFuPjwvdGltZT5cbi8vICAgPC9kaXY+XG4vLyAgIDxkaXYgY2xhc3M9XCJob2xpZGF5X19jb250ZW50XCI+XG4vLyAgICAgPGRpdiBjbGFzcz1cImhvbGlkYXlfX25hbWVcIj5cbi8vICAgICAgIDxzdHJvbmc+Q2hyaXN0bWFzIERheTwvc3Ryb25nPlxuLy8gICAgIDwvZGl2PlxuLy8gICAgIDxkaXYgY2xhc3M9XCJob2xpZGF5X19saW5rXCI+XG4vLyAgICAgICA8YSBocmVmPVwiI1wiPlNlZSBvdXIgZnVsbCBob2xpZGF5IHNjaGVkdWxlPC9hPlxuLy8gICAgIDwvZGl2PlxuLy8gICA8L2Rpdj5cbi8vIDwvZGl2PlxuLy9cbi8vIFN0eWxlZ3VpZGUgQ29tcG9uZW50cyAtIEhvbGlkYXlcblxuLmhvbGlkYXkge1xuICBtYXJnaW46IDAgMCAyOHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihwcmltYXJ5LCB3aGl0ZSk7XG4gIGJvcmRlci1yYWRpdXM6IHJhZGl1cyhiYXNlKTtcbiAgYm94LXNoYWRvdzogMCAycHggNHB4IHJnYmEoY29sb3IocHJpbWFyeSwgYmxhY2spLCAuMTYpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgJGJhc2UtYW5pbWF0aW9uLXNwZWVkICRiYXNlLWFuaW1hdGlvbi1lYXNpbmc7XG5cbiAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgIG1hcmdpbi1ib3R0b206IDMycHg7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzOHB4O1xuICB9XG5cbiAgJl9faGVhZGVyIHtcbiAgICBwYWRkaW5nOiAzMnB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKHNlY29uZGFyeSwgY3lhbik7XG4gICAgY29sb3I6IGNvbG9yKHByaW1hcnksIHdoaXRlKTtcbiAgfVxuICAmX19jb250ZW50IHtcbiAgICBwYWRkaW5nOiAzMnB4O1xuICB9XG5cbiAgJl9fdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcblxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICB9XG4gIH1cbiAgJl9fZGF0ZSB7XG4gICAgZm9udC1zaXplOiAxOXB4O1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgICBmb250LXNpemU6IDIxcHg7XG4gICAgfVxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICB9XG4gIH1cbiAgJl9fbmFtZSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBmb250LXNpemU6IDE2cHg7XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgICBmb250LXNpemU6IDE5cHg7XG4gICAgfVxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICAgIGZvbnQtc2l6ZTogMjFweDtcbiAgICB9XG4gIH1cbiAgJl9fbGluayB7fVxuXG4gIC8vIEhvdmVyIHN0YXRlXG4gICY6aG92ZXIge1xuICAgIGJveC1zaGFkb3c6IDAgOHB4IDE2cHggcmdiYShjb2xvcihwcmltYXJ5LCBibGFjayksIC4xNik7XG4gIH1cblxufVxuIiwiLy8gR3JhcGhpYyBDVEFcbi8vXG4vLyBEaXNwbGF5IGEgY2FsbC10by1hY3Rpb24gbGluayB1c2luZyBhIGdyYXBoaWMuXG4vL1xuLy8gTWFya3VwOlxuLy8gPGRpdiBjbGFzcz1cImdyYXBoaWMtY3RhXCI+XG4vLyAgIDxhIGNsYXNzPVwiZ3JhcGhpYy1jdGFfX2xpbmtcIiBocmVmPVwiaHR0cDovL2NlbGVicmF0ZS5uY2NvdXJ0cy5vcmcvXCIgdGl0bGU9XCJWaXNpdCB3ZWJzaXRlIGZvciBDZWxlYnJhdGUgTm9ydGggQ2Fyb2xpbmEgQ291cnRzXCIgdGFyZ2V0PVwiX2JsYW5rXCI+XG4vLyAgICAgPGltZyBjbGFzcz1cImdyYXBoaWMtLWN0YV9fZ3JhcGhpY1wiIHNyYz1cImh0dHBzOi8vcGljc3VtLnBob3Rvcy82NDAvMzYwLz9yYW5kb21cIiBhbHQ9XCJMb2dvIGZvciBDZWxlYnJhdGUgTm9ydGggQ2Fyb2xpbmEgQ291cnRzIHN1cGVyaW1wb3NlZCBvdmVyIGNvdXJ0aG91c2UgY29sdW1uc1wiPlxuLy8gICA8L2E+XG4vLyA8L2Rpdj5cbi8vXG4vLyBTdHlsZWd1aWRlIENvbXBvbmVudHMgLSBHcmFwaGljIENUQVxuXG4uZ3JhcGhpYy1jdGEge1xuICBtYXJnaW46IDAgMCAyOHB4O1xuICBib3JkZXItcmFkaXVzOiByYWRpdXMoYmFzZSk7XG5cbiAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgIG1hcmdpbi1ib3R0b206IDMycHg7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYSgnPj1sYXB0b3AnKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzhweDtcbiAgfVxuXG4gIC8vIGN0YSBsaW5rXG4gICZfX2xpbmssXG4gICZfX2xpbmtbdGFyZ2V0PVwiX2JsYW5rXCJdIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgYm9yZGVyLXJhZGl1czogcmFkaXVzKGJhc2UpO1xuICAgIG1hcmdpbi1yaWdodDogMDtcblxuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYShjb2xvcihwcmltYXJ5LCBibGFjayksIC4yNSk7XG4gICAgICBib3JkZXItcmFkaXVzOiByYWRpdXMoYmFzZSk7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAkYmFzZS1hbmltYXRpb24tc3BlZWQgJGJhc2UtYW5pbWF0aW9uLWVhc2luZztcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgfVxuXG4gICAgJjphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAxMDAlO1xuICAgIH1cblxuICAgICY6aG92ZXI6YmVmb3JlIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICB9XG5cbiAgLy8gY3RhIGdyYXBoaWNcbiAgJl9fZ3JhcGhpYyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG59XG4iLCIuaGVybyB7XG4gIHBhZGRpbmc6IDRyZW0gMDtcbiAgYmFja2dyb3VuZDogY29sb3Ioc2Vjb25kYXJ5LCBkYXJrLWJsdWUpIHVybCgnLi4vaW1nL3BfaGVyby5qcGcnKSBuby1yZXBlYXQgNTAlIDUwJSAvIGNvdmVyO1xuICBib3JkZXItdG9wOiA0cHggc29saWQgY29sb3IocHJpbWFyeSwgZ29sZCk7XG4gIGJvcmRlci1ib3R0b206IDRweCBzb2xpZCBjb2xvcihwcmltYXJ5LCBnb2xkKTtcbiAgY29sb3I6IGNvbG9yKHByaW1hcnksIHdoaXRlKTtcblxuICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgJi5iYW5kIHtcbiAgICAgIHBhZGRpbmc6IDY0cHggMDtcbiAgICB9XG4gIH1cbiAgQGluY2x1ZGUgbWVkaWEoJz49bGFwdG9wJykge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogOHB4O1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDhweDtcbiAgICBtaW4taGVpZ2h0OiBjYWxjKDcwdmggLSA1cmVtKTtcbiAgfVxuXG4gICZfX3NlYWwge1xuICAgIHdpZHRoOiA5NnB4O1xuICAgIGhlaWdodDogOTZweDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy9sX3NlYWwtY29sb3Iuc3ZnJyk7XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgICB3aWR0aDogMTI4cHg7XG4gICAgICBoZWlnaHQ6IDEyOHB4O1xuICAgIH1cbiAgICBAaW5jbHVkZSBtZWRpYSgnPj1sYXB0b3AnKSB7XG4gICAgICB3aWR0aDogMTkycHg7XG4gICAgICBoZWlnaHQ6IDE5MnB4O1xuICAgIH1cbiAgfVxuXG4gICZfX3RpdGxlIHtcbiAgICBtYXJnaW46IDE2cHggMCAwO1xuICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICAgIGZvbnQtc2l6ZTogMzJweDtcbiAgICB9XG4gICAgQGluY2x1ZGUgbWVkaWEoJz49bGFwdG9wJykge1xuICAgICAgZm9udC1zaXplOiA2MnB4O1xuICAgIH1cbiAgfVxuXG4gICZfX3NlYXJjaCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbjogMzJweCAwIDA7XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgICBtYXJnaW4tdG9wOiA2NHB4O1xuICAgIH1cbiAgICBAaW5jbHVkZSBtZWRpYSgnPj1sYXB0b3AnKSB7XG4gICAgICB3aWR0aDogcGVyY2VudGFnZSg2MzAvMTI4MCk7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICB9XG5cbiAgICAuZm9ybWJsb2NrIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG5cbiAgICAuZm9ybWJsb2NrX19sYWJlbCB7XG4gICAgICBAaW5jbHVkZSBoaWRlLW9mZi1zY3JlZW47XG4gICAgfVxuXG4gICAgLmZvcm1ibG9ja19fZmllbGQge1xuICAgICAgcGFkZGluZy1sZWZ0OiA0OHB4O1xuICAgICAgYm9yZGVyLWNvbG9yOiBjb2xvcihwcmltYXJ5LCB3aGl0ZSk7XG4gICAgfVxuXG4gICAgW3R5cGU9J3N1Ym1pdCddIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgbGVmdDogOHB4O1xuICAgICAgd2lkdGg6IDMycHg7XG4gICAgICBoZWlnaHQ6IDMycHg7XG4gICAgICBwYWRkaW5nOiAxNnB4O1xuICAgICAgbWFyZ2luOiAtMTZweCAwIDA7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltZy9pY29ucy9pX3NlYXJjaC5zdmcnKSBuby1yZXBlYXQgNTAlIDUwJSAvIDE2cHggYXV0bztcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICBmb250LXNpemU6IDA7XG4gICAgICBsaW5lLWhlaWdodDogMDtcbiAgICAgIGJvcmRlcjogMDtcblxuICAgICAgQGluY2x1ZGUgbWVkaWEoJz49bGFwdG9wJykge1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIG9yZGVyOiAxO1xuICAgICAgfVxuXG4gICAgICAvLyBob3ZlciBzdGF0ZVxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgfVxuXG4gICAgICAvLyBmb2N1cyBzdGF0ZVxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIG91dGxpbmU6IDA7XG4gICAgICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDNweCBjb2xvcihzZWNvbmRhcnksIGdvbGQpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICZfX2FjdGlvbnMge1xuICAgIHBhZGRpbmc6IDMycHggMCAwO1xuICAgIG1hcmdpbjogMzJweCAwIDA7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIGNvbG9yKHNlY29uZGFyeSwgZGFyay1ibHVlKTtcblxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBtYXJnaW4tdG9wOiA2NHB4O1xuICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICB9XG4gICAgQGluY2x1ZGUgbWVkaWEoJz49ZGVza3RvcCcpIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgbWFyZ2luOiAzMnB4IDMycHggMCAwO1xuICAgIH1cblxuICAgIHVsIHtcbiAgICAgIEBpbmNsdWRlIHJlc2V0LWxpc3Q7XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgbGkge1xuICAgICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgICAgICBtYXJnaW46IDAgMCAwIDE2cHg7XG4gICAgICB9XG4gICAgfVxuICAgIGxpOmZpcnN0LWNoaWxkIHtcbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5idXR0b24ge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBib3JkZXItY29sb3I6IGNvbG9yKHNlY29uZGFyeSwgY3lhbik7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKGNvbG9yKHNlY29uZGFyeSwgZGFyay1ibHVlKSwgNSUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG59XG4iLCJcbi8vIEhlbHAgVG9vbHRpcCBzdHlsZVxuLndlYmZvcm0tZWxlbWVudC1oZWxwOmxpbmsge1xuICB3aWR0aDogMThweDtcbn1cblxuLy8gTGVnZW5kIHN0eWxlIGZvciBmaWVsZHNldHMgYW5kIG5lc3RlZCBmaWVsZHNldHNcbi5maWVsZHNldC1sZWdlbmQge1xuICBAaW5jbHVkZSBoZWFkaW5nKGgzKTtcblxuICBmaWVsZHNldCBmaWVsZHNldCAmIHtcbiAgICBAaW5jbHVkZSBoZWFkaW5nKGg0KTtcbiAgfVxufVxuXG4vLyBMZWdlbmQgc3R5bGVkIGFzIGEgbGFiZWwgZm9yIGNoZWNrYm94IGFuZCByYWRpbyBncm91cHNcbi5sZWdlbmQtbGFiZWwge1xuICBAZXh0ZW5kICVsYWJlbDtcbn1cblxuLy8gTXVsdGlwbGUgdGFibGUgd2ViZm9ybSBjb21wb25lbnQgb3ZlcnJpZGVzXG4ud2ViZm9ybS1tdWx0aXBsZS10YWJsZSB7XG4gIEBleHRlbmQgJWNsZWFyZml4O1xuICB3aWR0aDogMTAwJTtcblxuICAvLyBEcmFnZ2VyIHN0eWxlXG4gIC50YWJsZWRyYWctaGFuZGxlIC5oYW5kbGUge1xuICAgIHdpZHRoOiAyOHB4O1xuICAgIGhlaWdodDogMjhweDtcbiAgICBtYXJnaW46IDA7XG4gIH0gXG4gIC8vIEFkZC9SZW1vdmUgcm93IGJ1dHRvbiBzdHlsZVxuICB0ZCBpbnB1dFt0eXBlPVwiaW1hZ2VcIl0ge1xuICAgIHdpZHRoOiAyMnB4O1xuICAgIGhlaWdodDogMjJweDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH0gXG4gIC8vIEFsaWduIGFkZCBtb3JlIHdpZGdldFxuICArLmNvbnRhaW5lci1pbmxpbmUge1xuICAgIC5mb3JtLW51bWJlciB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICB9XG4gIH1cbiAgLndlYmZvcm0tbXVsdGlwbGUtdGFibGVkcmFnLXRvZ2dsZS13ZWlnaHQge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwYWRkaW5nOiA4cHggMTZweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRwcmltYXJ5X2JnLCAuOTUpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgYm9yZGVyOiAycHggc29saWQgcmdiYSgkcHJpbWFyeV9iZywgLjk1KTtcbiAgICBib3JkZXItcmFkaXVzOiByYWRpdXMoYmFzZSk7XG4gICAgY29sb3I6ICRwcmltYXJ5X2NvbG9yO1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgdHJhbnNpdGlvbjpcbiAgICAgIGJhY2tncm91bmQgJGJhc2UtYW5pbWF0aW9uLXNwZWVkICRiYXNlLWFuaW1hdGlvbi1lYXNpbmcsXG4gICAgICBib3JkZXIgJGJhc2UtYW5pbWF0aW9uLXNwZWVkICRiYXNlLWFuaW1hdGlvbi1lYXNpbmcsXG4gICAgICBib3gtc2hhZG93ICRiYXNlLWFuaW1hdGlvbi1zcGVlZCAkYmFzZS1hbmltYXRpb24tZWFzaW5nO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgIH1cbiAgICBAaW5jbHVkZSBtZWRpYSgnPj1sYXB0b3AnKSB7XG4gICAgICBmb250LXNpemU6IDE5cHg7XG4gICAgfVxuXG4gICAgJjpsaW5rLCAmOnZpc2l0ZWQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkcHJpbWFyeV9iZywgLjk1KTtcbiAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgkcHJpbWFyeV9iZywgLjk1KTtcbiAgICAgIGNvbG9yOiAkcHJpbWFyeV9jb2xvcjtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG4gICAgJjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnlfYmc7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMCA0cHggY29sb3Ioc2Vjb25kYXJ5LCBnb2xkKTtcbiAgICAgIGJvcmRlci1jb2xvcjogJHByaW1hcnlfYmc7XG4gICAgICBjb2xvcjogJHByaW1hcnlfY29sb3I7XG4gICAgICBvdXRsaW5lOiAwO1xuICAgIH1cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5X2JnO1xuICAgICAgYm94LXNoYWRvdzogMCAwIDAgNHB4IHJnYmEoJHByaW1hcnlfYmcsIC4xNSk7XG4gICAgICBib3JkZXItY29sb3I6ICRwcmltYXJ5X2JnO1xuICAgICAgY29sb3I6ICRwcmltYXJ5X2NvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4vLyBBbGVydHMgaW5zaWRlIG9mIGZvcm1ibG9ja3MgbmVlZCB0byBoYXZlIG1hZ2lucyByZW1vdmVkXG4uZm9ybWJsb2NrIHtcbiAgLmFsZXJ0IHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG4iLCIvLyBTY3JlZW4gcmVhZGVycyBvbmx5XG4uc3Itb25seSB7XG4gIEBleHRlbmQgJWhpZGUtb2ZmLXNjcmVlbjtcbn1cblxuLy8gUHJldmVudCBkcmFnZ2luZ1xuLm5vLWRyYWctc2VsZWN0IHtcbiAgdXNlci1kcmFnOiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4iLCIvLyAudWktd2lkZ2V0LnVpLXdpZGdldC1jb250ZW50IHtcbi8vICAgYm9yZGVyOiAycHggc29saWQgbGlnaHRlbihjb2xvcihwcmltYXJ5LCBncmF5KSwgMzUlKTtcbi8vIH1cblxuLnVpLW1lbnUgLnVpLW1lbnUtaXRlbS13cmFwcGVyIHtcbiAgcGFkZGluZzogOHB4O1xufVxuXG4udWktc3RhdGUtYWN0aXZlLFxuLnVpLXdpZGdldC1jb250ZW50IC51aS1zdGF0ZS1hY3RpdmUsXG4udWktd2lkZ2V0LWhlYWRlciAudWktc3RhdGUtYWN0aXZlLFxuYS51aS1idXR0b246YWN0aXZlLFxuLnVpLWJ1dHRvbjphY3RpdmUsXG4udWktYnV0dG9uLnVpLXN0YXRlLWFjdGl2ZTpob3ZlciB7XG4gIG1hcmdpbjogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogY29sb3Ioc2Vjb25kYXJ5LCBvZmYtYmx1ZSk7XG4gIGJvcmRlcjogMDtcbiAgY29sb3I6IGxpZ2h0ZW4oY29sb3IocHJpbWFyeSwgYmx1ZSksIDEwJSk7XG59XG5cbi8vIFVJIERhdGVwaWNrZXIgVHJpZ2dlclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi51aS1kYXRlcGlja2VyLXRyaWdnZXIge1xuICB3aWR0aDogNDRweCAhaW1wb3J0YW50O1xuICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xuICBib3JkZXItbGVmdDogMCAhaW1wb3J0YW50O1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDAgIWltcG9ydGFudDtcblxuXG4gICY6aG92ZXIge1xuICAgIGJveC1zaGFkb3c6IC0ycHggMCAwIDAgY29sb3IocHJpbWFyeSwgYmx1ZSkgIWltcG9ydGFudDtcbiAgfVxuICAmOmZvY3VzIHtcbiAgICBib3gtc2hhZG93OlxuICAgICAgLTJweCAwIDAgMCBjb2xvcihwcmltYXJ5LCBibHVlKSxcbiAgICAgIDAgMCAwIDRweCBjb2xvcihzZWNvbmRhcnksIGdvbGQpICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmZvcm0tLXNlYXJjaC1sb2NhdGlvbiB7XG4gIC5mb3JtYmxvY2tfX2ZpZWxkLS1pbmxpbmUge1xuICAgIEBpbmNsdWRlIG1lZGlhKCc8dGFibGV0Jykge1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgIH1cbiAgfVxuICAudWktYXV0b2NvbXBsZXRlLWlucHV0IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyNHB4O1xuICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogMTZweDtcblxuICAgICYgKyAuYnV0dG9uIHtcbiAgICAgICBAaW5jbHVkZSBtZWRpYSgnPHRhYmxldCcpIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgICAgbWluLXdpZHRoOiAzMDBweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG5cbn1cbi51aS1hdXRvY29tcGxldGUge1xuICAmLnVpLW1lbnUgLnVpLW1lbnUtaXRlbS13cmFwcGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufSIsImZpZWxkc2V0IC50aXRsZS0tc2Vjb25kYXJ5IHtcbiAgLnRpdGxlX19sYWJlbCB7IG1hcmdpbi10b3A6IDA7IH1cbn1cbiIsIi8vIGNhcmQgZm9yIGNvdXJ0IGRhdGUgZm9ybVxuLmNhcmQuY2FyZC0tY291cnQtZGF0ZS1mb3JtIHtcbiAgQGV4dGVuZCAuY2FyZC0taW52ZXJ0ZWQ7XG5cbiAgLmNhcmRfX3RpdGxlLS1vciB7XG4gICAgbWFyZ2luOiAxNnB4IDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICY6YmVmb3JlIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgIGNvbnRlbnQ6IFwiXFwyMDE0XCI7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDhweDtcbiAgICB9XG4gICAgJjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICBjb250ZW50OiBcIlxcMjAxNFwiO1xuICAgICAgbWFyZ2luLWxlZnQ6IDhweDtcbiAgICB9XG4gIH1cblxuICBhIHtcbiAgICBjb2xvcjogY29sb3IocHJpbWFyeSwgd2hpdGUpO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG5cbiAgICAvLyBob3ZlciBzdGF0ZVxuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6IGNvbG9yKHNlY29uZGFyeSwgZGFyay1ibHVlKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKHByaW1hcnksIG9mZi13aGl0ZSk7XG4gICAgfVxuXG4gICAgLy8gZm9jdXMgc3RhdGVcbiAgICAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiBjb2xvcihzZWNvbmRhcnksIGRhcmstYmx1ZSk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihwcmltYXJ5LCBvZmYtd2hpdGUpO1xuICAgIH1cblxuICAgIC8vIGFjdGl2ZSBzdGF0ZVxuICAgICY6YWN0aXZlIHtcbiAgICAgIGNvbG9yOiBjb2xvcihwcmltYXJ5LCB3aGl0ZSk7XG4gICAgfVxuICB9XG5cbiAgLmJ1dHRvbiB7XG4gICAgbWFyZ2luLXRvcDogMTZweDtcbiAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgICBtYXJnaW46IDhweCAwIDAgOHB4O1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcsICc8bGFwdG9wJykge1xuICAgIHBhZGRpbmc6IDQ4cHg7XG4gIH1cblxuICAuY2FyZF9fdGl0bGUgKyAuZm9ybWJsb2NrIHtcbiAgICBtYXJnaW46IDAgMCAxNnB4IDA7XG4gIH1cblxuICAvLyBmaXggaW5saW5lIGZvcm1cbiAgLmZvcm1ibG9ja19fZmllbGQtLWlubGluZSB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBAaW5jbHVkZSBtZWRpYSgnPHRhYmxldCcpIHtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICB9XG5cbiAgICBpbnB1dFt0eXBlPSd0ZXh0J10ge1xuICAgICAgQGluY2x1ZGUgbWVkaWEoJzx0YWJsZXQnKSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgfVxuICAgIH1cbiAgICBpbnB1dFt0eXBlPSdzdWJtaXQnXSB7XG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPHRhYmxldCcpIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1hcmdpbjogOHB4IDAgMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIFByZXNlbnQgd2hlbiBhIGZpbHRlciBwYW5lbCBleGlzdHMgb24gdGhlIHBhZ2UgKG1vYmlsZS1vbmx5KVxuYm9keS5oYXMtZmlsdGVyLXBhbmVsIHtcblxuICAvLyBvZmZzZXQgYmFjay10by10b3AgbGlua1xuICAuc2hvcnRjdXQtLWhlYWRlciB7XG4gICAgYm90dG9tOiA2NHB4OyAvLyBvcmlnaW5hbCBwb3MuICsgaGVpZ2h0IG9mIHBhbmVsIHRpdGxlXG4gIH1cblxuICAvLyBvZmZzZXQgZm9vdGVyXG4gIC5mb290ZXItY29udGFpbmVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiA0OHB4OyAvLyBtYXRjaCBoZWlnaHQgb2YgcGFuZWwgdGl0bGVcbiAgfVxuXG59XG4iLCIvLyBDYWxsb3V0XG4vL1xuLy8gUHJvcHJpZXRhcnkgYmFuZCB0aGF0IHByb3ZpZGVzIGEgMiBjb2x1bW4gbGF5b3V0IGZvciBhIHByb21vdGlvbmFsIG1lc3NhZ2UgYW5kIGEgZ3JhcGhpYy4gQXV0b21hdGljYWxseSBpbmhlcml0cyBjZXJ0YWluIGJhbmQgcHJvcGVydGllcy5cbi8vXG4vLyBNYXJrdXA6XG4vLyA8ZGl2IGNsYXNzPVwiYmFuZCBiYW5kLS1jYWxsb3V0XCI+XG4vLyAgIDxkaXYgY2xhc3M9XCJ3cmFwcGVyXCI+XG4vLyAgICAgPGRpdiBjbGFzcz1cImJhbmRfX3BhcnRzXCI+XG4vLyAgICAgICA8ZGl2IGNsYXNzPVwiYmFuZF9fcGFydFwiPlxuLy8gICAgICAgICA8aDIgY2xhc3M9XCJoM1wiPkZvbGxvdyB1cyBvbiBUd2l0dGVyPC9oMj5cbi8vICAgICAgICAgPHA+VG8gc3RheSB1cCB0byBkYXRlIG9uIHRoZSBsYXRlc3QgY2xvc2luZ3MgYW5kIGFkdmlzb3JpZXMgZm9yIHlvdXIgY291bnR5LCA8YSBjbGFzcz1cInRlYXNlclwiIGhyZWY9XCIjXCIgdGFyZ2V0PVwiX2JsYW5rXCI+Zm9sbG93IHVzIG9uIFR3aXR0ZXI8L2E+LiBXZSdsbCBhbHNvIGtlZXAgeW91IGluIHRoZSBsb29wIG9uIHRoZSBsYXRlc3QgbmV3cywgZXZlbnRzLCBhbmQgbW9yZS48L3A+XG4vLyAgICAgICA8L2Rpdj5cbi8vICAgICAgIDxkaXYgY2xhc3M9XCJiYW5kX19wYXJ0XCI+XG4vLyAgICAgICAgIDxpbWcgc3JjPVwiaW1nL2ljb25zL2lfc29jaWFsLXR3aXR0ZXIuc3ZnXCIgYWx0PVwiVHdpdHRlciBsb2dvXCIgLz5cbi8vICAgICAgIDwvZGl2PlxuLy8gICAgIDwvZGl2PlxuLy8gICA8L2Rpdj5cbi8vIDwvZGl2PlxuLy9cbi8vIFN0eWxlZ3VpZGUgTGF5b3V0cyAtIEJhbmRzIC0gQ2FsbG91dFxuXG4uYmFuZC0tY2FsbG91dCB7XG4gIEBleHRlbmQgW2RhdGEtY29sdW1ucz0nMiddO1xuICBAZXh0ZW5kIFtkYXRhLXRlbnNpb249JzgtMyddO1xuICBAZXh0ZW5kIFtkYXRhLXRoZW1lPSdvZmYtd2hpdGUnXTtcbiAgcGFkZGluZzogMzJweCAwO1xuXG4gIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICBwYWRkaW5nOiA2NHB4IDA7XG4gIH1cbiAgQGluY2x1ZGUgbWVkaWEoJz49bGFwdG9wJykge1xuICAgIHBhZGRpbmc6IDEyOHB4IDA7XG4gIH1cblxuICAvLyBmb3JjZSBjb250ZW50IHRvIGJlIHZlcnRpY2FsbHkgY2VudGVyZWRcbiAgLmJhbmRfX3BhcnRzIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG5cbiAgLy8gMXN0IGJhbmQgcGFydFxuICAuYmFuZF9fcGFydDpmaXJzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0JywgJzxsYXB0b3AnKSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cblxuICAvLyAybmQgYmFuZCBwYXJ0XG4gIC5iYW5kX19wYXJ0Om50aC1jaGlsZCgyKSB7XG4gICAgZGlzcGxheTogbm9uZTtcblxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbiAgfVxuXG4gIC8vIGJhbmQgaW1hZ2VcbiAgaW1nIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbn1cblxuXG4vLyBQYWdlIEZvb3Rub3RlXG4vL1xuLy8gUHJvcHJpZXRhcnkgYmFuZCB0aGF0IHByb3ZpZGVzIGEgc2luZ2xlIGNvbHVtbiBsYXlvdXQgZm9yIGEgcGFnZSBmb290bm90ZS4gQXV0b21hdGljYWxseSBpbmhlcml0cyBjZXJ0YWluIGJhbmQgcHJvcGVydGllcy5cbi8vXG4vLyBNYXJrdXA6XG4vLyA8ZGl2IGNsYXNzPVwiYmFuZCBiYW5kLS1mb290bm90ZVwiPlxuLy8gICA8ZGl2IGNsYXNzPVwid3JhcHBlclwiPlxuLy8gICAgIDxkaXYgY2xhc3M9XCJiYW5kX19wYXJ0c1wiPlxuLy8gICAgICAgPGRpdiBjbGFzcz1cImJhbmRfX3BhcnRcIj5cbi8vICAgICAgICAgPHNtYWxsPlxuLy8gICAgICAgICAgIFRvIHN0YXkgdXAgdG8gZGF0ZSBvbiB0aGUgbGF0ZXN0IGNsb3NpbmdzIGFuZCBhZHZpc29yaWVzIGZvciB5b3VyIGNvdW50eSwgPGEgY2xhc3M9XCJ0ZWFzZXJcIiBocmVmPVwiI1wiIHRhcmdldD1cIl9ibGFua1wiPmZvbGxvdyB1cyBvbiBUd2l0dGVyPC9hPi4gV2UnbGwgYWxzbyBrZWVwIHlvdSBpbiB0aGUgbG9vcCBvbiB0aGUgbGF0ZXN0IG5ld3MsIGV2ZW50cywgYW5kIG1vcmUuXG4vLyAgICAgICAgIDwvc21hbGw+XG4vLyAgICAgICA8L2Rpdj5cbi8vICAgICA8L2Rpdj5cbi8vICAgPC9kaXY+XG4vLyA8L2Rpdj5cbi8vXG4vLyBTdHlsZWd1aWRlIExheW91dHMgLSBCYW5kcyAtIFBhZ2UgRm9vdG5vdGVcblxuLmJhbmQtLWZvb3Rub3RlIHtcbiAgQGV4dGVuZCBbZGF0YS10aGVtZT0nb2ZmLXdoaXRlJ107XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbi10b3A6IDMycHg7XG5cbiAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgIG1hcmdpbi10b3A6IDQ4cHg7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuICBAaW5jbHVkZSBtZWRpYSgnPj1sYXB0b3AnKSB7XG4gICAgbWFyZ2luLXRvcDogNjRweDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgLy8gT25seSBjaGlsZFxuICAmOm9ubHktY2hpbGQge1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cbiAgICBAaW5jbHVkZSBtZWRpYSgnPj1sYXB0b3AnKSB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cbiAgfVxuXG4gIC5iYW5kX19wYXJ0IHtcbiAgICBwYWRkaW5nOiAxNnB4O1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgICAgcGFkZGluZzogMjRweDtcbiAgICB9XG4gICAgQGluY2x1ZGUgbWVkaWEoJz49bGFwdG9wJykge1xuICAgICAgcGFkZGluZzogMzJweDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBDb3VydCBkYXRlIGZvcm1cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uYmFuZC5iYW5kLS1jb3VydC1kYXRlLWZvcm0ge1xuICBAZXh0ZW5kIC5iYW5kLS1zdHJpcGVkO1xuXG4gIC5iYW5kX19wYXJ0OmZpcnN0LWNoaWxkIHtcbiAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnLCAnPGxhcHRvcCcpIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIEZvcmNlIGJhbmQgcGFydCBzdGFja2luZyBvbiB0YWJsZXRzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLmJhbmQuYmFuZC0tZm9yY2UtdGFibGV0LXN0YWNrLFxuLmJhbmRbZGF0YS1jb2x1bW5zPScyJ10ge1xuXG4gIC5iYW5kX19wYXJ0OmZpcnN0LWNoaWxkIHtcbiAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnLCAnPGxhcHRvcCcpIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxuICAuYmFuZF9fcGFydDpudGgtY2hpbGQoMikge1xuICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcsICc8bGFwdG9wJykge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXJnaW4tdG9wOiA2NHB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuICB9XG5cbn1cblxuXG4vLyBDb3VudHkgbmV3cy9yZWxhdGVkXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLmJhbmQuYmFuZC0tY291bnR5LW5ld3MtcmVsYXRlZCB7XG5cbiAgLmJhbmRfX3BhcnQ6Zmlyc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcsICc8bGFwdG9wJykge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgLmJhbmRfX3BhcnQ6bnRoLWNoaWxkKDIpIHtcbiAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnLCAnPGxhcHRvcCcpIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBtYXJnaW4tdG9wOiA2NHB4O1xuICAgIH1cblxuICAgIC5saW5rcyB7XG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnLCAnPGxhcHRvcCcpIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHdpZHRoOiBwZXJjZW50YWdlKDMwMC82MjQpO1xuICAgICAgfVxuICAgIH1cbiAgICAubGlua3MgKyAubGlua3Mge1xuICAgICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0JywgJzxsYXB0b3AnKSB7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgd2lkdGg6IHBlcmNlbnRhZ2UoMzAwLzYyNCk7XG4gICAgICB9XG4gICAgfVxuICAgIC5jYXJkIHtcbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcsICc8bGFwdG9wJykge1xuICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgIH1cbiAgICB9XG5cbiAgfVxuXG59XG5cblxuLy8gQWJvdXQgcHVibGljYXRpb25zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLmJhbmQuYmFuZC0tYWJvdXQtcHVibGljYXRpb25zIHtcblxuICAuYmFuZF9fcGFydDpmaXJzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0JywgJzxsYXB0b3AnKSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cblxuICAuYmFuZF9fcGFydDpudGgtY2hpbGQoMikge1xuICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcsICc8bGFwdG9wJykge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIG1hcmdpbi10b3A6IDY0cHg7XG4gICAgfVxuXG4gICAgLnNpZGVibG9jayB7XG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnLCAnPGxhcHRvcCcpIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHdpZHRoOiBwZXJjZW50YWdlKDMwMC82MjQpO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICB9XG4gICAgfVxuICAgIC5zaWRlYmxvY2sgKyAuc2lkZWJsb2NrIHtcbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcsICc8bGFwdG9wJykge1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIHdpZHRoOiBwZXJjZW50YWdlKDMwMC82MjQpO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbn1cblxuXG4vLyAzIHpvbmUgYmFuZCB0aXRsZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uem9uZXNbZGF0YS1jb2x1bW5zPSczJ10gLnpvbmU6Zmlyc3QtY2hpbGQgLmJhbmRfX3RpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMTZweDtcblxuICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjRweDtcbiAgfVxuICBAaW5jbHVkZSBtZWRpYSgnPj1sYXB0b3AnKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzJweDtcbiAgfVxufVxuXG5cbi8vIFBlcnNvbmFzIGJhbmRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uYmFuZC0tcGVyc29uYXMge1xuICBwYWRkaW5nOiAwO1xuXG4gIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgbGlnaHRlbihjb2xvcihwcmltYXJ5LCBncmF5KSwgMzUlKTtcbiAgfVxufVxuXG5cbi8vIEhvbWVwYWdlIGZlYXR1cmVkIGJhbmRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uYmFuZC0taG9tZS1mZWF0dXJlZCB7XG4gIC5iYW5kX19wYXJ0OmZpcnN0LWNoaWxkIHtcbiAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnLCAnPGxhcHRvcCcpIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cbiAgLmJhbmRfX3BhcnQ6bnRoLWNoaWxkKDIpIHtcbiAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnLCAnPGxhcHRvcCcpIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBtYXJnaW4tdG9wOiA2NHB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG4gIC5jYXJkIHtcbiAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnLCAnPGxhcHRvcCcpIHtcbiAgICAgIHdpZHRoOiBwZXJjZW50YWdlKDMwMC82MjQpO1xuICAgIH1cbiAgfVxuICAuY2FyZCArIC5jYXJkIHtcbiAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnLCAnPGxhcHRvcCcpIHtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgyNC82MjQpO1xuICAgIH1cbiAgfVxufVxuXG4uYmFuZC0taG9tZS1mZWF0dXJlZC1tdWx0aXBsZSB7XG4gICsgLmJhbmQtLWhvbWUtZmVhdHVyZWQtbXVsdGlwbGUge1xuICAgICAgcGFkZGluZzogNjRweCAwIDA7XG4gIH1cbn1cblxuLy8gSG9tZXBhZ2UgbmV3cy9zb2NpYWwgYmFuZFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5iYW5kLS1ob21lLW5ld3Mtc29jaWFsIHtcbiAgLmJhbmRfX3BhcnQ6Zmlyc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcsICc8bGFwdG9wJykge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG4gIC5iYW5kX19wYXJ0Om50aC1jaGlsZCgyKSB7XG4gICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0JywgJzxsYXB0b3AnKSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgbWFyZ2luLXRvcDogNjRweCAhaW1wb3J0YW50O1xuICAgIH1cbiAgICBAaW5jbHVkZSBtZWRpYSgnPj1sYXB0b3AnKSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB9XG4gIH1cbiAgLnR3ZWV0IHtcbiAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnLCAnPGxhcHRvcCcpIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgd2lkdGg6IHBlcmNlbnRhZ2UoMzAwLzYyNCk7XG4gICAgfVxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICAgIG9yZGVyOiAtMjtcbiAgICB9XG4gIH1cbiAgLmhvbGlkYXksXG4gIC5ncmFwaGljLWN0YSB7XG4gICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0JywgJzxsYXB0b3AnKSB7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICBjbGVhcjogcmlnaHQ7XG4gICAgICB3aWR0aDogcGVyY2VudGFnZSgzMDAvNjI0KTtcbiAgICB9XG4gIH1cbiAgLmxpbmtzLS1jb25uZWN0LXNpbXBsZSB7XG4gICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0JywgJzxsYXB0b3AnKSB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDM4cHg7XG4gICAgICBvcmRlcjogLTE7XG4gICAgfVxuICB9XG59XG4iLCIuZm9vdGVyLWNvbnRhaW5lciAucGFuZWwtZ3JvdXAge1xuXG4gIC8vIGFkZGl0aW9uYWwgcGFuZWxcbiAgJi5wYW5lbC1ncm91cC0tYWRkaXRpb25hbCAucGFuZWxfX2NvbnRlbnQsXG4gICYucGFuZWwtZ3JvdXAtLWNvbW11bml0eSAucGFuZWxfX2NvbnRlbnQsXG4gICYucGFuZWwtZ3JvdXAtLWhlbHAtc3VwcG9ydCAucGFuZWxfX2NvbnRlbnQge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luLXRvcDogOHB4O1xuICAgIEBpbmNsdWRlIG1lZGlhKCc+PWRlc2t0b3AnKSB7XG4gICAgICBtYXJnaW4tdG9wOiAzMnB4O1xuICAgIH1cbiAgfVxuXG4gICYucGFuZWwtZ3JvdXAtLWxlZ2FsIC5wYW5lbF9fY29udGVudCB7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gICYucGFuZWwtZ3JvdXAgLnBhbmVsX19jb250ZW50IHtcbiAgICAubGlua3Mge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzhweDtcbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PWRlc2t0b3AnKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gcGFuZWxcbiAgLnBhbmVsIHtcbiAgICAmX190aXRsZSB7XG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJz49ZGVza3RvcCcpIHtcbiAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB3aWR0aDogODVweDtcbiAgICAgICAgICBoZWlnaHQ6IDJweDtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAxNnB4O1xuICAgICAgICAgIGJhY2tncm91bmQ6IGNvbG9yKHByaW1hcnksIGdvbGQpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGEge1xuICAgICAgICBjb2xvcjogY29sb3IocHJpbWFyeSwgd2hpdGUpO1xuICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiByZ2JhKGNvbG9yKHByaW1hcnksIHdoaXRlKSwgLjE2KTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICAgIC8vIGhvdmVyIHN0YXRlXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGNvbG9yOiBjb2xvcihwcmltYXJ5LCB3aGl0ZSk7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBmb2N1cyBzdGF0ZVxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICBjb2xvcjogY29sb3IocHJpbWFyeSwgd2hpdGUpO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gaW5hY3RpdmUgc3RhdGVcbiAgICAgICAgJlthcmlhLWV4cGFuZGVkPSdmYWxzZSddOmFmdGVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy9pY29ucy9pX2FkZF93aGl0ZS5zdmcnKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIGFjdGl2ZSBzdGF0ZVxuICAgICAgICAmW2FyaWEtZXhwYW5kZWQ9J3RydWUnXTphZnRlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWcvaWNvbnMvaV9yZW1vdmVfd2hpdGUuc3ZnJyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi5tZW51LS1zZWNvbmRhcnkgLm1lbnVfX2l0ZW0ge1xuICBAaW5jbHVkZSBtZWRpYSgnPGxhcHRvcCcpIHtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgfVxufVxuIiwiLy8gQWRqYWNlbnQgc2lkZWJsb2NrcyBpbiAzcmQgem9uZVxuLnpvbmVzW2RhdGEtY29sdW1ucz0nMyddIC56b25lOmxhc3QtY2hpbGQgLnNpZGVibG9jayArIC5zaWRlYmxvY2sge1xuICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgbWFyZ2luLXRvcDogNDhweDtcbiAgfVxuICBAaW5jbHVkZSBtZWRpYSgnPj1sYXB0b3AnKSB7XG4gICAgbWFyZ2luLXRvcDogNjRweDtcbiAgfVxufVxuXG4vLyBQb3J0cmFpdCBpbWFnZSBhbmQgdmNhcmQgYnV0dG9uIGluIHBlb3BsZSBzaWRlYmFyXG4uem9uZXNbZGF0YS1jb2x1bW5zPSczJ11bZGF0YS1sYXlvdXQtcGVvcGxlXSB7XG4gIGltZywgcGljdHVyZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLmJ1dHRvbiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5cbi8vIE1ldGEgbGFiZWxzIGluIHNpZGViYXJcbi5zaWRlYmxvY2tfX2NvbnRlbnQge1xuICAubWV0YSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbn1cbiIsImFzaWRlLnpvbmUgLmxpbmtzLS1jb250ZXh0dWFsIHtcbiAgQGluY2x1ZGUgbWVkaWEoJzx0YWJsZXQnKSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuIiwiLnN3aXBlci1jb250YWluZXIge1xuICAuYmFuZF9fcGFydCB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbn1cblxuLnN3aXBlci1zbGlkZSB7XG4gIHBhZGRpbmctbGVmdDogMzJweDtcbiAgcGFkZGluZy1yaWdodDogMzJweDtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtICRiYXNlLWFuaW1hdGlvbi1zcGVlZCAkYmFzZS1hbmltYXRpb24tZWFzaW5nO1xufVxuXG4uc3dpcGVyLXNsaWRlLXByZXYge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNDhweCk7XG59XG4uc3dpcGVyLXNsaWRlLW5leHQge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTQ4cHgpO1xufVxuXG4uc3dpcGVyLXNsaWRlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSk7XG59XG4iLCIuem9uZXNbZGF0YS1jb2x1bW5zPSczJ10ge1xuICAuem9uZTpmaXJzdC1jaGlsZCB7XG4gICAgLmJhbmQuYmFuZC0tZm9vdG5vdGUge1xuICAgICAgQGluY2x1ZGUgbWVkaWEoJz49bGFwdG9wJykge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIl19 */
