/*! normalize.css v7.0.0 | MIT License | github.com/necolas/normalize.css */
/* Document @mixin ========================================================================= */
/** 1. Correct the line height in all browsers. 2. Prevent adjustments of font size after orientation changes in IE on Windows Phone and in iOS. */
html { line-height: 1.15; /* 1 */ -ms-text-size-adjust: 100%; /* 2 */ -webkit-text-size-adjust: 100%; /* 2 */ }

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

/** Add the correct display in IE 9-. */
article, aside, footer, header, nav, section { display: block; }

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

/* Grouping content @mixin ========================================================================= */
/** Add the correct display in IE 9-. 1. Add the correct display in IE. */
figcaption, figure, main { display: block; }

/** 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 { -webkit-box-sizing: content-box; box-sizing: content-box; /* 1 */ height: 0; /* 1 */ overflow: visible; /* 2 */ }

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

/* Text-level semantics @mixin ========================================================================= */
/** 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 */ }

/** 1. Remove the bottom border in Chrome 57- and Firefox 39-. 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari. */
abbr[title] { border-bottom: none; /* 1 */ text-decoration: underline; /* 2 */ text-decoration: underline dotted; /* 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; }

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

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

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

/** 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: -0.25em; }

sup { top: -0.5em; }

/* Embedded content @mixin ========================================================================= */
/** Add the correct display in IE 9-. */
audio, video { display: inline-block; }

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

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

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

/* Forms @mixin ========================================================================= */
/** 1. Change the font styles in all browsers (opinionated). 2. Remove the margin in Firefox and Safari. */
button, input, optgroup, select, textarea { font-family: sans-serif; /* 1 */ font-size: 100%; /* 1 */ line-height: 1.15; /* 1 */ margin: 0; /* 2 */ }

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

/** Remove the inheritance of text transform in Edge, Firefox, and IE. 1. Remove the inheritance of text transform in Firefox. */
button, select { 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. */
[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 { border-style: none; padding: 0; }

/** 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; }

/** Correct the padding in Firefox. */
fieldset { padding: 0.35em 0.75em 0.625em; }

/** 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 { -webkit-box-sizing: border-box; box-sizing: border-box; /* 1 */ color: inherit; /* 2 */ display: table; /* 1 */ max-width: 100%; /* 1 */ padding: 0; /* 3 */ white-space: normal; /* 1 */ }

/** 1. Add the correct display in IE 9-. 2. Add the correct vertical alignment in Chrome, Firefox, and Opera. */
progress { display: inline-block; /* 1 */ vertical-align: baseline; /* 2 */ }

/** 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"] { -webkit-box-sizing: border-box; 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"] { -webkit-appearance: textfield; /* 1 */ outline-offset: -2px; /* 2 */ }

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

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

/* Interactive @mixin ========================================================================= */
/* Add the correct display in IE 9-. 1. Add the correct display in Edge, IE, and Firefox. */
menu { display: block; }

/* Add the correct display in all browsers. */
summary { display: list-item; }

/* Scripting @mixin ========================================================================= */
/** Add the correct display in IE 9-. */
canvas { display: inline-block; }

/** Add the correct display in IE. */
template { display: none; }

/* Hidden @mixin ========================================================================= */
/** Add the correct display in IE 10-. */
[hidden] { display: none; }

.body-overflow { overflow: hidden; }

main { position: relative; z-index: 2; }

footer { z-index: 3; position: relative; }

.container { max-width: 1230px; width: 100%; position: relative; margin: 0 auto; padding: 0 15px; }

@media all and (max-width: 1365px) { .container { padding: 0 25px; max-width: 1010px; } }

@media all and (max-width: 1199px) { .container { max-width: 800px; padding: 0 16px; } }

@media all and (max-width: 767px) { .container { padding: 0 18px; } }

* { -webkit-box-sizing: border-box; box-sizing: border-box; margin: 0; padding: 0; }

button, a { outline: none; }

b, strong { font-weight: inherit; }

b, strong { font-weight: bolder; }

ul, ol { list-style: none; }

.fw { display: -ms-flex; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-align: start; -ms-flex-align: start; align-items: flex-start; }

label.error { display: none; position: absolute; bottom: 0px; right: 0; color: #FF151F; font-size: 14px; font-weight: 400; text-align: right; font-size: 12px; z-index: 5; }

.custom-select-wrapper { position: relative; display: inline-block; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; width: 100%; }

.custom-select-wrapper select { display: none; }

.custom-select { position: relative; display: inline-block; z-index: 5; text-align: left; width: 100%; }

.custom-select-trigger { position: relative; display: block; width: 100%; padding: 0 15px; font-size: 16px; font-weight: 300; color: #373737; font-weight: 500; height: 44px; line-height: 44px; background: #fff; border: 1px solid #9b9a9a; cursor: pointer; font-family: 'Exo 2', sans-serif; }

.custom-select-trigger:after { position: absolute; content: ''; display: block; right: 15px; top: 49%; -webkit-transform: translateY(-50%) rotate(45deg); -ms-transform: translateY(-50%) rotate(45deg); transform: translateY(-50%) rotate(45deg); border: solid #FF151F; border-width: 0 2px 2px 0; padding: 3px; z-index: 1; -webkit-transition: all .2s; transition: all .2s; }

.custom-select.opened .custom-select-trigger:after { -webkit-transform: rotate(-135deg) translateY(0%); -ms-transform: rotate(-135deg) translateY(0%); transform: rotate(-135deg) translateY(0%); }

.custom-options { position: absolute; display: block; top: 100%; left: 0; right: 0; min-width: 100%; background: #fff; -webkit-transition: all .4s ease-in-out; transition: all .4s ease-in-out; opacity: 0; visibility: hidden; pointer-events: none; -webkit-transform: translateY(-15px); -ms-transform: translateY(-15px); transform: translateY(-15px); -webkit-box-shadow: 0 0 20px 1px rgba(0, 0, 0, 0.1); box-shadow: 0 0 20px 1px rgba(0, 0, 0, 0.1); }

.custom-select.opened { -webkit-box-shadow: 0 0 20px 2px rgba(0, 0, 0, 0.1); box-shadow: 0 0 20px 2px rgba(0, 0, 0, 0.1); }

.custom-select.opened .custom-options { opacity: 1; visibility: visible; pointer-events: all; -webkit-transform: translateY(0); -ms-transform: translateY(0); transform: translateY(0); }

.option-hover:before { background: #f9f9f9; }

.custom-option { position: relative; border: 1px solid #9b9a9a; border-top: none; border-bottom: none; display: block; font-size: 16px; color: #2D2D2D; font-weight: 500; padding: 10px 15px; display: block; cursor: pointer; -webkit-transition: all .4s ease-in-out; transition: all .4s ease-in-out; }

.custom-option:last-child { border-bottom: 1px solid #9b9a9a; }

@media all and (max-width: 999px) { .custom-option { font-size: 16px; } }

.custom-option:hover, .custom-option.selection { background: #F2F2F2; }

.site-button { cursor: pointer; -webkit-box-sizing: border-box; box-sizing: border-box; outline: none; font-weight: bold; display: inline-block; font-family: 'Exo 2', sans-serif; background-color: transparent; -webkit-transition: all .2s; transition: all .2s; font-size: 18px; border: none; }

@media all and (max-width: 1365px) { .site-button { font-size: 16px; } }

@media all and (max-width: 1199px) { .site-button { font-size: 14px; } }

@media all and (max-width: 639px) { .site-button { font-size: 16px; } }

.site-button--normal { text-transform: uppercase; border: none; color: #FF151F; text-decoration: underline; }

.site-button--normal:hover { text-decoration: none; color: #cf131c; }

.site-button--red { color: #fff; background-color: #FF151F; padding: 12px 24px; border: none; cursor: pointer; }

@media all and (max-width: 767px) { .site-button--red { padding: 10px 20px; } }

.site-button--red:hover { background-color: #cf131c; }

* { line-height: 1; font-weight: 400; font-family: 'Exo 2', sans-serif; }

h1, h2, h3, h4, h5, h6, p, span, li { color: #373737; }

h1, h2, h3, h4, h5, h6 { font-weight: bold; margin: 0; line-height: 1.1; }

h1 { font-size: 72px; }

@media all and (max-width: 1365px) { h1 { font-size: 48px; } }

@media all and (max-width: 1199px) { h1 { font-size: 40px; } }

@media all and (max-width: 639px) { h1 { font-size: 36px; } }

@media all and (max-width: 479px) { h1 { font-size: 30px; } }

h2 { font-size: 48px; }

@media all and (max-width: 1365px) { h2 { font-size: 40px; } }

@media all and (max-width: 1199px) { h2 { font-size: 30px; } }

@media all and (max-width: 999px) { h2 { font-size: 28px; } }

@media all and (max-width: 479px) { h2 { font-size: 24px; } }

h3 { font-size: 28px; }

@media all and (max-width: 1365px) { h3 { font-size: 26px; } }

@media all and (max-width: 1199px) { h3 { font-size: 22px; } }

@media all and (max-width: 479px) { h3 { font-size: 20px; } }

h4 { font-size: 20px; }

@media all and (max-width: 1365px) { h4 { font-size: 16px; } }

@media all and (max-width: 1199px) { h4 { font-size: 12px; } }

h5 { font-size: 16px; }

@media all and (max-width: 1365px) { h5 { font-size: 14px; } }

@media all and (max-width: 479px) { h5 { font-size: 12px; } }

h5 { font-size: 14px; }

@media all and (max-width: 479px) { h5 { font-size: 12px; } }

p, span, li { margin: 0; font-size: 14px; font-weight: 500; line-height: 1.5em; }

@media all and (max-width: 479px) { p, span, li { font-size: 12px; } }

span, a { font-family: inherit; font-size: inherit; font-weight: inherit; line-height: inherit; }

a { color: #373737; text-decoration: none; }

.typography h3, .typography h4, .typography h5 { margin-bottom: 40px; }

@media all and (max-width: 999px) { .typography h3, .typography h4, .typography h5 { margin-bottom: 25px; } }

.typography p { margin-bottom: 2em; }

.typography p:last-child { margin-bottom: 0; }

.typography .alignleft { float: left; }

.typography .alignright { float: right; }

.typography img { max-width: 100%; height: auto; display: block; }

.inputs { position: relative; display: inline-block; width: 100%; }

.inputs input, .inputs select { width: 100%; border: none; border: 1px solid #9b9a9a; outline: none; height: 100%; min-width: 10px; min-height: 10px; padding: 13px 14px; -webkit-transition: all .2s; transition: all .2s; }

.inputs input::-webkit-input-placeholder, .inputs select::-webkit-input-placeholder { color: #373737; }

.inputs input:-ms-input-placeholder, .inputs select:-ms-input-placeholder { color: #373737; }

.inputs input::placeholder, .inputs select::placeholder { color: #373737; }

.inputs .input--error { border-color: #FF151F; }

.inputs .error { position: absolute; bottom: -15px; }

.s_box { width: 100%; margin: -10px; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-align: stretch; -ms-flex-align: stretch; align-items: stretch; }

.s_box__block { padding: 10px; }

.s_box__block--100 { max-width: 100%; }

.s_box__block--50 { max-width: 50%; }

.s_box__block--30 { max-width: 33.3333%; }

.s_popup { display: none; position: fixed; top: 0; left: 0; right: 0; bottom: 0; z-index: 70; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.7); overflow-y: auto; }

.s_popup__layer { position: fixed; top: 0; left: 0; right: 0; bottom: 0; width: 100%; height: 100%; z-index: 1; }

.s_popup__close { width: 30px; height: 30px; position: absolute; top: 25px; right: 25px; cursor: pointer; }

@media all and (max-width: 639px) { .s_popup__close { width: 25px; height: 25px; top: 15px; right: 15px; } }

.s_popup__close::before, .s_popup__close::after { content: ""; position: absolute; width: 100%; height: 4px; background: #FF151F; top: 40%; left: 0; -webkit-transform: rotate(45deg); -ms-transform: rotate(45deg); transform: rotate(45deg); border-radius: 20px; }

.s_popup__close::after { -webkit-transform: rotate(-45deg); -ms-transform: rotate(-45deg); transform: rotate(-45deg); }

.s_popup__content { width: 100%; max-width: 995px; position: absolute; z-index: 2; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%); background-color: #fff; padding: 20px 45px; margin: 40px 0; }

.s_popup__content--project { padding: 45px; margin-top: 90px; }

.s_popup--project__content { max-width: 750px; width: 100%; margin: auto; text-align: center; }

.s_popup--project__slider { margin-bottom: 32px; }

.s_popup--project__img { width: 100%; display: -webkit-box; display: -ms-flexbox; display: flex; height: 450px; -webkit-box-align: center; -ms-flex-align: center; align-items: center; }

.s_popup--project__img img { width: 100%; height: auto; -o-object-fit: cover; object-fit: cover; max-height: 100%; }

.s_popup--project .slick-arrow { position: absolute; cursor: pointer; top: 50%; z-index: 1; font-size: 0; border: none; border-left: 2px solid #FF151F; border-bottom: 2px solid #FF151F; width: 20px; height: 20px; background-color: transparent; }

@media all and (max-width: 999px) { .s_popup--project .slick-arrow { display: none; } }

.s_popup--project .slick-prev { left: -40px; -webkit-transform: translateY(-50%) rotate(45deg); -ms-transform: translateY(-50%) rotate(45deg); transform: translateY(-50%) rotate(45deg); }

.s_popup--project .slick-next { right: -40px; -webkit-transform: translateY(-50%) rotate(-135deg); -ms-transform: translateY(-50%) rotate(-135deg); transform: translateY(-50%) rotate(-135deg); }

.s_popup__thanks { height: 100%; }

.s_popup__thanks--wrap { position: relative; z-index: 2; height: 100%; padding: 0; width: 100%; max-width: 600px; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; margin: auto; }

@media all and (max-width: 999px) { .s_popup__thanks--wrap { max-width: 90%; } }

.s_popup__thanks--box { background-color: white; height: auto; padding: 84px; position: relative; width: 100%; -webkit-box-shadow: 6px 6px 18px rgba(0, 0, 0, 0.2); box-shadow: 6px 6px 18px rgba(0, 0, 0, 0.2); text-align: center; }

@media all and (max-width: 1365px) { .s_popup__thanks--box { padding: 85px 100px; } }

@media all and (max-width: 999px) { .s_popup__thanks--box { padding: 55px 70px; } }

@media all and (max-width: 639px) { .s_popup__thanks--box { -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; padding: 30px; } }

.absolute_img { max-width: 80px; position: absolute; z-index: -1; right: 30px; bottom: 0; }

@media all and (max-width: 999px) { .absolute_img { max-width: 65px; max-height: 70px; } }

@media all and (max-width: 767px) { .absolute_img { max-width: 55px; } }

.absolute_img--center { left: 65%; }

.absolute_img--right { right: 20px; top: 30px; }

.absolute_img--right2 { top: 80px; right: 20%; }

.s_header { padding: 30px 0 30px; position: relative; z-index: 5; }

@media all and (max-width: 1365px) { .s_header { padding: 19px 0 23px; } }

@media all and (max-width: 1199px) { .s_header { padding: 24px 0 23px; } }

@media all and (max-width: 999px) { .s_header { padding: 18px 0 18px; } }

@media all and (max-width: 639px) { .s_header { padding: 18px 0 23px; } }

@media all and (max-width: 999px) { .s_header::after { display: block; content: ''; position: absolute; left: 0; top: 0; width: 100%; height: 100%; background: #fff; z-index: 14; } }

.s_header_wrap { -webkit-box-align: center; -ms-flex-align: center; align-items: center; }

.s_header_logo { max-width: 163px; display: block; width: 100%; margin-right: 70px; position: relative; z-index: 15; }

@media all and (max-width: 1365px) { .s_header_logo { max-width: 130px; margin-right: 50px; } }

@media all and (max-width: 1199px) { .s_header_logo { max-width: 96px; margin-right: 45px; } }

@media all and (max-width: 999px) { .s_header_logo { max-width: 103px; } }

.s_header_logo img { max-width: 100%; display: block; height: auto; }

.s_header_menu_wrap { max-width: 100%; width: 100%; -webkit-box-align: center; -ms-flex-align: center; align-items: center; }

@media all and (max-width: 999px) { .s_header_menu_wrap { position: fixed; left: -100000px; top: 0; width: 100%; height: 100%; max-width: 100%; display: block; overflow-y: auto; overflow-x: hidden; padding-bottom: 30px; background: #fff; z-index: 10; -webkit-transition: all 0.2s ease-in-out; transition: all 0.2s ease-in-out; }
  .s_header_menu_wrap--open { left: 0; } }

.s_header_menu_wrap ul { max-width: 760px; width: 100%; margin-right: 83px; }

@media all and (max-width: 1365px) { .s_header_menu_wrap ul { max-width: 628px; margin-right: 43px; } }

@media all and (max-width: 1199px) { .s_header_menu_wrap ul { max-width: 516px; margin-right: 10px; } }

@media all and (max-width: 999px) { .s_header_menu_wrap ul { display: block; max-width: 100%; margin: 0; text-align: center; padding-top: 57px; padding-bottom: 45px; border-bottom: 1px solid #e5e5e5; margin-bottom: 25px; } }

@media all and (max-width: 999px) and (max-width: 639px) { .s_header_menu_wrap ul { padding-bottom: 28px; margin-bottom: 32px; } }

.s_header_menu_wrap ul li { font-size: 16px; font-weight: 400; color: #000000; font-family: 'Exo 2', sans-serif; -webkit-transition: all 0.2s ease-in-out; transition: all 0.2s ease-in-out; }

@media all and (max-width: 1365px) { .s_header_menu_wrap ul li { font-size: 14px; } }

@media all and (max-width: 1199px) { .s_header_menu_wrap ul li { font-size: 12px; } }

@media all and (max-width: 999px) { .s_header_menu_wrap ul li { font-size: 18px; } }

@media all and (max-width: 639px) { .s_header_menu_wrap ul li { font-size: 16px; } }

.s_header_menu_wrap ul li:hover { color: #FF151F; }

.s_header_menu_wrap ul li a { font-style: inherit; font-size: inherit; color: inherit; font-weight: inherit; display: block; }

@media all and (max-width: 999px) { .s_header_menu_wrap ul li a { padding: 11px 0 11px; } }

@media all and (max-width: 639px) { .s_header_menu_wrap ul li a { padding: 9px 0 9px; } }

.s_header_menu_wrap ul li.current-menu-item { color: #FF151F; }

.s_header_phones { position: relative; cursor: pointer; max-width: 127px; width: 100%; padding-right: 13px; padding-left: 7px; }

@media all and (max-width: 1365px) { .s_header_phones { max-width: 113px; } }

@media all and (max-width: 999px) { .s_header_phones { max-width: 100%; text-align: center; padding: 0; display: inline-block; } }

.s_header_phones::after { position: absolute; right: 0; top: 4px; content: ''; border: solid #FF151F; border-width: 0 1px 1px 0; padding: 2px; -webkit-transform: rotate(45deg); -ms-transform: rotate(45deg); transform: rotate(45deg); -webkit-transition: all 0.2s ease-in-out; transition: all 0.2s ease-in-out; }

@media all and (max-width: 999px) { .s_header_phones::after { display: none; } }

.s_header_phones a { color: #eb1d25; font-size: 16px; font-weight: 500; font-family: 'Exo 2', sans-serif; display: block; -webkit-transition: all 0.2s ease-in-out; transition: all 0.2s ease-in-out; }

.s_header_phones a:hover { color: #cf131c; }

@media all and (max-width: 1365px) { .s_header_phones a { font-size: 14px; } }

@media all and (max-width: 1199px) { .s_header_phones a { font-size: 12px; } }

@media all and (max-width: 999px) { .s_header_phones a { font-size: 16px; max-width: 110px; width: 100%; display: inline; margin-right: 35px; } }

@media all and (max-width: 479px) { .s_header_phones a { max-width: 100%; display: block; margin: 0; text-align: center; margin-bottom: 16px; } }

.s_header_phones_lang { position: absolute; width: 100%; position: absolute; opacity: 0; left: -100000px; top: 100%; padding-top: 5px; -webkit-transition: opacity 0.25s linear, left 0s linear 0.25s; transition: opacity 0.25s linear, left 0s linear 0.25s; background: #fff; padding-left: 7px; z-index: 2; padding-right: 13px; padding-bottom: 10px; }

@media all and (max-width: 1199px) { .s_header_phones_lang { padding-top: 0; } }

@media all and (max-width: 999px) { .s_header_phones_lang { position: static; display: inline-block; left: unset; top: unset; padding: 0; opacity: 1; max-width: unset; width: auto; } }

.s_header_phones_lang a { padding-top: 10px; }

.s_header_phones_lang a:last-of-type { padding-bottom: 0; }

@media all and (max-width: 999px) { .s_header_phones_lang a { padding: 0; }
  .s_header_phones_lang a:last-of-type { margin-right: 0; } }

@media all and (max-width: 479px) { .s_header_phones_lang a:last-of-type { margin-bottom: 0; } }

.s_header_phones--open .s_header_phones_lang { opacity: 1; left: 0; }

.s_header_phones--open::after { -webkit-transform: rotate(-135deg); -ms-transform: rotate(-135deg); transform: rotate(-135deg); top: 6px; }

@media all and (max-width: 999px) { .s_header_burger { position: relative; z-index: 15; cursor: pointer; width: 26px; height: 16px; }
  .s_header_burger_line { position: absolute; left: 0; width: 100%; height: 2px; background: #FF151F; -webkit-transition: all 0.2s ease-in-out; transition: all 0.2s ease-in-out; }
  .s_header_burger_line--one { top: 0; }
  .s_header_burger_line--two { top: 7px; }
  .s_header_burger_line--three { top: 14px; }
  .s_header_burger--open .s_header_burger_line--one { -webkit-transform: rotate(45deg); -ms-transform: rotate(45deg); transform: rotate(45deg); top: 50%; }
  .s_header_burger--open .s_header_burger_line--two { opacity: 0; }
  .s_header_burger--open .s_header_burger_line--three { top: 50%; -webkit-transform: rotate(-45deg); -ms-transform: rotate(-45deg); transform: rotate(-45deg); } }

.s_hero { width: 100%; }

.s_hero__content { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; padding: 0 205px; min-height: 710px; position: relative; }

@media all and (max-width: 1365px) { .s_hero__content { padding: 0 85px; min-height: 440px; } }

@media all and (max-width: 1199px) { .s_hero__content { min-height: 375px; } }

@media all and (max-width: 999px) { .s_hero__content { padding: 0 35px; } }

@media all and (max-width: 765px) { .s_hero__content { padding: 0; } }

@media all and (max-width: 639px) { .s_hero__content { min-height: 520px; } }

@media all and (max-width: 479px) { .s_hero__content { min-height: 375px; } }

.s_hero__slide { position: relative; }

.s_hero__image--bg img { height: 100%; width: 100%; position: absolute; top: 0; left: 0; -o-object-fit: cover; object-fit: cover; }

.s_hero__wrap { color: white; max-width: 540px; }

.s_hero__title { margin-bottom: 30px; }

@media all and (max-width: 1365px) { .s_hero__title { margin-bottom: 40px; max-width: 365px; } }

@media all and (max-width: 1200px) { .s_hero__title { margin-bottom: 35px; max-width: 310px; } }

@media all and (max-width: 999px) { .s_hero__title { margin-bottom: 25px; } }

@media all and (max-width: 767px) { .s_hero__title { margin-bottom: 30px; } }

@media all and (max-width: 639px) { .s_hero__title { max-width: 270px; } }

@media all and (max-width: 419px) { .s_hero__title { max-width: 225px; } }

.s_hero__title h1 { color: #fff; }

.s_hero__title h2 { color: #fff; font-size: 72px; }

@media all and (max-width: 1365px) { .s_hero__title h2 { font-size: 48px; } }

@media all and (max-width: 1199px) { .s_hero__title h2 { font-size: 40px; } }

@media all and (max-width: 639px) { .s_hero__title h2 { font-size: 36px; } }

@media all and (max-width: 479px) { .s_hero__title h2 { font-size: 30px; } }

.s_hero__text { margin-bottom: 70px; max-width: 510px; }

@media all and (max-width: 1365px) { .s_hero__text { margin-bottom: 50px; max-width: 390px; } }

@media all and (max-width: 1200px) { .s_hero__text { margin-bottom: 35px; max-width: 380px; } }

@media all and (max-width: 999px) { .s_hero__text { margin-bottom: 60px; max-width: 315px; } }

@media all and (max-width: 767px) { .s_hero__text { margin-bottom: 40px; } }

@media all and (max-width: 639px) { .s_hero__text { max-width: 300px; } }

@media all and (max-width: 419px) { .s_hero__text { max-width: 255px; } }

.s_hero__text p { font-size: 24px; max-height: 7em; overflow: hidden; color: #fff; }

@media all and (max-width: 1365px) { .s_hero__text p { font-size: 20px; } }

@media all and (max-width: 1199px) { .s_hero__text p { font-size: 18px; } }

@media all and (max-width: 999px) { .s_hero__text p { font-size: 16px; } }

@media all and (max-width: 639px) { .s_hero__text p { font-size: 14px; } }

@media all and (max-width: 419px) { .s_hero__text p { font-size: 12px; } }

.s_hero__btn { margin-bottom: 25px; }

.s_hero__about { margin: 0 auto; max-width: 100%; text-align: center; }

.s_hero__slider .slick-dots { display: -webkit-box; display: -ms-flexbox; display: flex; position: absolute; bottom: 20px; left: 50%; -webkit-transform: translateX(-50%); -ms-transform: translateX(-50%); transform: translateX(-50%); z-index: 10; }

.s_hero__slider .slick-dots li { display: inline-block; width: 10px; height: 10px; position: relative; margin-right: 10px; }

.s_hero__slider .slick-dots li:last-child { margin-right: 0; }

@media all and (max-width: 999px) { .s_hero__slider .slick-dots li { width: 6px; height: 6px; } }

.s_hero__slider .slick-dots button { cursor: pointer; position: absolute; width: 100%; height: 100%; font-size: 0; background-color: #C0BFBF; border: 1px solid #C0BFBF; -webkit-transition: all .2s; transition: all .2s; }

.s_hero__slider .slick-dots .slick-active button { background-color: #FF151F; border: 1px solid #FF151F; }

.s_hero__slider .slick-arrow { position: absolute; cursor: pointer; top: 50%; z-index: 1; font-size: 0; border: none; border-left: 2px solid #fff; border-bottom: 2px solid #fff; width: 20px; height: 20px; background-color: transparent; }

@media all and (max-width: 999px) { .s_hero__slider .slick-arrow { display: none; } }

.s_hero__slider .slick-prev { left: 10px; -webkit-transform: translateY(-50%) rotate(45deg); -ms-transform: translateY(-50%) rotate(45deg); transform: translateY(-50%) rotate(45deg); }

.s_hero__slider .slick-next { right: 10px; -webkit-transform: translateY(-50%) rotate(-135deg); -ms-transform: translateY(-50%) rotate(-135deg); transform: translateY(-50%) rotate(-135deg); }

.s_services { padding: 140px 0 20px; overflow: hidden; }

@media all and (max-width: 1365px) { .s_services { padding: 90px 0 20px; } }

@media all and (max-width: 999px) { .s_services { padding: 35px 0 25px; } }

.s_services--ext { padding-bottom: 70px; overflow: initial; }

@media all and (max-width: 1365px) { .s_services--ext { padding-bottom: 30px; } }

@media all and (max-width: 639px) { .s_services--ext { padding-bottom: 10px; } }

@media all and (max-width: 999px) { .s_services .container { padding: 0; } }

.s_services__header { margin-bottom: 105px; }

@media all and (max-width: 1365px) { .s_services__header { margin-bottom: 75px; } }

@media all and (max-width: 1199px) { .s_services__header { margin-bottom: 70px; } }

@media all and (max-width: 999px) { .s_services__header { margin-bottom: 30px; } }

@media all and (max-width: 767px) { .s_services__header { padding: 0 20px; } }

.s_services__content { padding-left: 180px; }

@media all and (max-width: 1365px) { .s_services__content { padding-left: 145px; } }

@media all and (max-width: 1199px) { .s_services__content { padding-left: 110px; } }

@media all and (max-width: 999px) { .s_services__content { padding-left: 0; } }

.s_services__block { margin-bottom: 100px; -webkit-box-align: stretch; -ms-flex-align: stretch; align-items: stretch; }

@media all and (max-width: 1365px) { .s_services__block { margin-bottom: 80px; } }

@media all and (max-width: 999px) { .s_services__block { -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; margin-bottom: 50px; } }

.s_services__block:last-child { margin-bottom: 35px; }

@media all and (max-width: 1199px) { .s_services__block:last-child { margin-bottom: 60px; } }

@media all and (max-width: 999px) { .s_services__block:last-child { margin-bottom: 50px; } }

@media all and (max-width: 639px) { .s_services__block:last-child { margin-bottom: 35px; } }

.s_services__block:nth-child(even) { -webkit-box-orient: horizontal; -webkit-box-direction: reverse; -ms-flex-direction: row-reverse; flex-direction: row-reverse; }

@media all and (max-width: 999px) { .s_services__block:nth-child(even) { -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; } }

.s_services__block:nth-child(4n-3) .s_services__box--text { padding-right: 60px; }

.s_services__block:nth-child(4n-3) .s_services__box--text::after { height: 110px; width: 3px; right: 0; top: 7px; }

@media all and (max-width: 1199px) { .s_services__block:nth-child(4n-3) .s_services__box--text::after { height: 65px; } }

@media all and (max-width: 999px) { .s_services__block:nth-child(4n-3) .s_services__box--text { padding: 0 25px; }
  .s_services__block:nth-child(4n-3) .s_services__box--text::after { display: none; } }

@media all and (max-width: 767px) { .s_services__block:nth-child(4n-3) .s_services__box--text { padding: 0 20px; } }

.s_services__block:nth-child(4n-2) .s_services__box--text { max-width: 320px; }

.s_services__block:nth-child(4n-2) .s_services__box--text img { left: 0; }

@media all and (max-width: 1365px) { .s_services__block:nth-child(4n-2) .s_services__box--text { padding-right: 40px; max-width: initial; } }

@media all and (max-width: 1199px) { .s_services__block:nth-child(4n-2) .s_services__box--text { max-width: 280px; }
  .s_services__block:nth-child(4n-2) .s_services__box--text img { left: -120px; } }

@media all and (max-width: 999px) { .s_services__block:nth-child(4n-2) .s_services__box--text { max-width: 100%; padding: 0; }
  .s_services__block:nth-child(4n-2) .s_services__box--text img { left: initial; } }

.s_services__block:nth-child(4n-2) .s_services__box--text::after { width: 110px; height: 3px; top: 10px; right: -webkit-calc( 100% + 70px); right: calc( 100% + 70px); }

@media all and (max-width: 1365px) { .s_services__block:nth-child(4n-2) .s_services__box--text::after { right: -webkit-calc( 100% + 35px); right: calc( 100% + 35px); } }

@media all and (max-width: 1199px) { .s_services__block:nth-child(4n-2) .s_services__box--text::after { width: 65px; right: -webkit-calc( 100% + 40px); right: calc( 100% + 40px); } }

@media all and (max-width: 999px) { .s_services__block:nth-child(4n-2) .s_services__box--text { padding: 0 25px; }
  .s_services__block:nth-child(4n-2) .s_services__box--text::after { display: none; } }

@media all and (max-width: 767px) { .s_services__block:nth-child(4n-2) .s_services__box--text { padding: 0 20px; } }

@media all and (max-width: 999px) { .s_services__block:nth-child(4n-2) .s_services__box--img { max-width: 100%; } }

.s_services__block:nth-child(4n - 1) .s_services__box--text::after { height: 110px; width: 3px; top: 7px; right: -webkit-calc( 100% + 75px); right: calc( 100% + 75px); }

@media all and (max-width: 1365px) { .s_services__block:nth-child(4n - 1) .s_services__box--text::after { right: -webkit-calc( 100% + 80px); right: calc( 100% + 80px); } }

@media all and (max-width: 1199px) { .s_services__block:nth-child(4n - 1) .s_services__box--text { padding-left: 65px; }
  .s_services__block:nth-child(4n - 1) .s_services__box--text::after { height: 65px; right: -webkit-calc( 100% - 5px); right: calc( 100% - 5px); } }

@media all and (max-width: 999px) { .s_services__block:nth-child(4n - 1) .s_services__box--text { padding: 0 25px; max-width: 100%; }
  .s_services__block:nth-child(4n - 1) .s_services__box--text::after { display: none; } }

@media all and (max-width: 767px) { .s_services__block:nth-child(4n - 1) .s_services__box--text { padding: 0 20px; } }

@media all and (max-width: 999px) { .s_services__block:nth-child(4n - 1) .s_services__box--img { max-width: 100%; padding: 0; } }

.s_services__block:nth-child(4n) .s_services__box--text::after { width: 110px; height: 3px; top: -10px; left: -webkit-calc( 100% - 75px); left: calc( 100% - 75px); }

@media all and (max-width: 1365px) { .s_services__block:nth-child(4n) .s_services__box--text::after { right: -webkit-calc( 100% + 80px); right: calc( 100% + 80px); } }

@media all and (max-width: 1199px) { .s_services__block:nth-child(4n) .s_services__box--text::after { width: 65px; right: -webkit-calc( 100% - 5px); right: calc( 100% - 5px); top: 7px; } }

@media all and (max-width: 999px) { .s_services__block:nth-child(4n) .s_services__box--text { padding: 0 25px; max-width: 100%; }
  .s_services__block:nth-child(4n) .s_services__box--text::after { display: none; } }

@media all and (max-width: 767px) { .s_services__block:nth-child(4n) .s_services__box--text { padding: 0 20px; } }

@media all and (max-width: 999px) { .s_services__block:nth-child(4n) .s_services__box--img { max-width: 100%; padding: 0; } }

.s_services__box { width: 100%; }

.s_services__box--img { max-width: 510px; }

@media all and (max-width: 1365px) { .s_services__box--img { max-width: 410px; } }

@media all and (max-width: 1199px) { .s_services__box--img { max-width: 280px; } }

.s_services__box--img img { max-width: 100%; display: block; }

@media all and (max-width: 999px) { .s_services__box--img img { width: 100%; height: 100%; -o-object-fit: cover; object-fit: cover; } }

@media all and (max-width: 999px) { .s_services__box--img:nth-child(n) { max-width: 100%; height: 320px; margin-bottom: 20px; } }

.s_services__box--text { position: relative; max-width: 410px; }

@media all and (max-width: 1365px) { .s_services__box--text { max-width: 320px; } }

@media all and (max-width: 999px) { .s_services__box--text { padding: 0 25px; } }

@media all and (max-width: 999px) { .s_services__box--text:nth-child(n) { max-width: 100%; } }

.s_services__box--text::after { content: ""; position: absolute; display: block; background-color: #FF151F; border-radius: 50px; }

.s_services__box--text h3 { margin-bottom: 25px; }

.s_services__box--text p { line-height: 1.5; margin-bottom: 25px; }

.s_services__box--text span { color: #FF151F; font-size: 24px; }

@media all and (max-width: 999px) { .s_services__box--text p, .s_services__box--text h3 { max-width: 470px; } }

@media all and (max-width: 1199px) { .s_services__box--text img { max-width: 80px; } }

@media all and (max-width: 999px) { .s_services__box--text img { right: 30px; } }

@media all and (max-width: 767px) { .s_services__box--text img { max-width: 55px; } }

.s_services__learn { max-width: 320px; margin-left: auto; margin-right: 80px; }

@media all and (max-width: 1365px) { .s_services__learn { max-width: 280px; } }

@media all and (max-width: 999px) { .s_services__learn { max-width: 220px; margin-right: 40px; } }

.s_services__learn a { color: #FF151F; font-size: 36px; text-decoration: underline; font-weight: bold; -webkit-transition: all .2s; transition: all .2s; }

.s_services__learn a:hover { text-decoration: none; color: #cf131c; }

@media all and (max-width: 1365px) { .s_services__learn a { font-size: 30px; } }

@media all and (max-width: 999px) { .s_services__learn a { font-size: 24px; } }

.s_park { padding-bottom: 100px; }

.s_park__header { margin-bottom: 80px; }

@media all and (max-width: 999px) { .s_park__header { margin-bottom: 25px; padding: 0 20px; } }

.s_park__descr { -webkit-column-count: 2; column-count: 2; margin: 0 -20px 90px; }

@media all and (max-width: 999px) { .s_park__descr { -webkit-column-count: 1; column-count: 1; padding: 0 25px; margin: 0 0 50px; } }

.s_park__descr--min { margin-bottom: 40px; }

@media all and (max-width: 999px) { .s_park__descr--min { padding: 0; } }

.s_park__descr p { margin-bottom: 20px; padding: 0 20px; }

.s_park__descr p:last-child { margin-bottom: 0; }

.s_park__wrap { margin-bottom: 150px; }

.s_park__wrap:last-child { margin-bottom: 100px; }

@media all and (max-width: 1199px) { .s_park__wrap:last-child { margin-bottom: 50px; } }

@media all and (max-width: 999px) { .s_park__wrap { margin-bottom: 80px; } }

@media all and (max-width: 639px) { .s_park__wrap { margin-bottom: 60px; } }

.s_park__contact { font-weight: bold; max-width: 610px; font-size: 24px; }

@media all and (max-width: 999px) { .s_park__contact { padding: 0 25px; max-width: 100%; font-size: 20px; font-size: 20px; } }

@media all and (max-width: 639px) { .s_park__contact { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; } }

.s_park__contact p { font-weight: inherit; font-size: inherit; margin-bottom: 25px; }

.s_park__contact a { color: #FF151F; display: inline-block; margin-right: 20px; font-size: 24px; margin-bottom: 10px; }

.s_footer { background-color: #3c3a3a; padding: 35px 0; }

@media all and (max-width: 1199px) { .s_footer { padding: 30px 0; } }

@media all and (max-width: 999px) { .s_footer { padding: 20px 0; } }

.s_footer__content { -webkit-box-align: center; -ms-flex-align: center; align-items: center; }

@media all and (max-width: 999px) { .s_footer__content { -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; } }

@media all and (max-width: 999px) { .s_footer__list { margin-bottom: 10px; }
  .s_footer__list:nth-child(1) { -webkit-box-ordinal-group: 2; -ms-flex-order: 1; order: 1; }
  .s_footer__list:nth-child(3) { text-align: right; padding-left: 30px; -webkit-box-ordinal-group: 3; -ms-flex-order: 2; order: 2; }
  .s_footer__list:nth-child(2) { -webkit-box-ordinal-group: 4; -ms-flex-order: 3; order: 3; margin-bottom: 0; max-width: 100%; width: 100%; text-align: center; } }

.s_footer__list li { color: #fff; margin-right: 30px; }

@media all and (max-width: 1199px) { .s_footer__list li { font-size: 12px; } }

@media all and (max-width: 999px) { .s_footer__list li { margin-right: 15px; } }

.s_footer__list li:last-child { margin-right: 0; }

.s_footer__list--contacts { max-width: 410px; }

.s_footer__list a { color: inherit; }

@media all and (max-width: 639px) { .s_footer__list { -ms-flex-wrap: wrap; flex-wrap: wrap; }
  .s_footer__list:nth-child(n) { max-width: initial; }
  .s_footer__list:nth-child(1) { max-width: 300px; }
  .s_footer__list li { margin-bottom: 10px; } }

@media all and (max-width: 480px) { .s_footer__list:nth-child(3) { padding-left: 0; } }

.s_footer .zorelit__section { width: auto; background-color: transparent; }

@media all and (max-width: 999px) { .s_footer .zorelit__section { -webkit-box-ordinal-group: 5; -ms-flex-order: 4; order: 4; } }

.holder { position: fixed; left: 0%; top: 0%; right: 0%; bottom: 0%; width: 100%; height: 100%; background-color: #fff; z-index: 999; }

.preloader { position: absolute; width: 3%; height: 0%; padding-bottom: 3%; left: 50%; top: 50%; -webkit-transform: translateX(-50%) translateY(-50%); -ms-transform: translateX(-50%) translateY(-50%); transform: translateX(-50%) translateY(-50%); }

.preloader div { position: absolute; width: 100%; height: 100%; left: 50%; -webkit-transform: translateX(-50%) translateY(-50%); -ms-transform: translateX(-50%) translateY(-50%); transform: translateX(-50%) translateY(-50%); overflow: hidden; -webkit-animation: animatePreloader 1s infinite linear; animation: animatePreloader 1s infinite linear; -webkit-transform-origin: 50% 100%; -ms-transform-origin: 50% 100%; transform-origin: 50% 100%; }

.preloader div:before { content: ""; position: absolute; width: 100%; height: 100%; left: 50%; top: 50%; -webkit-transform: translateX(-50%); -ms-transform: translateX(-50%); transform: translateX(-50%); border: 3px solid #FF151F; border-radius: 50%; -webkit-box-sizing: border-box; box-sizing: border-box; }

.preloader div:nth-child(2) { width: 60%; height: 60%; top: 20%; -webkit-animation: animatePreloader 0.5s infinite linear; animation: animatePreloader 0.5s infinite linear; }

@-webkit-keyframes animatePreloader { 0% { -webkit-transform: translateX(-50%) translateY(-50%) rotateZ(0deg); transform: translateX(-50%) translateY(-50%) rotateZ(0deg); }
  100% { -webkit-transform: translateX(-50%) translateY(-50%) rotateZ(360deg); transform: translateX(-50%) translateY(-50%) rotateZ(360deg); } }

@keyframes animatePreloader { 0% { -webkit-transform: translateX(-50%) translateY(-50%) rotateZ(0deg); transform: translateX(-50%) translateY(-50%) rotateZ(0deg); }
  100% { -webkit-transform: translateX(-50%) translateY(-50%) rotateZ(360deg); transform: translateX(-50%) translateY(-50%) rotateZ(360deg); } }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImdlbmVyYWwvX25vcm1hbGl6ZS5zYXNzIiwiYXV0b3BhcmsuY3NzIiwiY29uZmlnL19zZXR0aW5ncy5zYXNzIiwiY29uZmlnL19taXhpbnMuc2FzcyIsImNvbmZpZy9fdmFycy5zYXNzIiwiY29uZmlnL19idXR0b25zLnNhc3MiLCJjb25maWcvX3R5cG9ncmFwaHkuc2FzcyIsImNvbXBvbmVudHMvX2lucHV0cy5zYXNzIiwiY29tcG9uZW50cy9fYm94LnNhc3MiLCJjb21wb25lbnRzL19wb3B1cC5zYXNzIiwiY29tcG9uZW50cy9fYWJzb2x1dGVfaW1nLnNhc3MiLCJjb21wb25lbnRzL19oZWFkZXIuc2FzcyIsImNvbXBvbmVudHMvX2hlcm8uc2FzcyIsImNvbXBvbmVudHMvX3NlcnZpY2VzLnNhc3MiLCJjb21wb25lbnRzL19wYXJrLnNhc3MiLCJjb21wb25lbnRzL19mb290ZXIuc2FzcyIsImNvbXBvbmVudHMvX3ByZWxvYWRlci13cmFwLnNhc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsNEVBQTRFO0FBRTVFLCtGQUNzRjtBQUV0RixtSkFJRztBQUVILE9BQ0Usa0JBQWlCLENBQUUsT0FBTyxDQUMxQiwyQkFBMEIsQ0FBRSxPQUFPLENBQ25DLCtCQUE4QixDQUFFLE9BQU8sRUFBRzs7QUFHNUMsK0ZBQ3NGO0FBRXRGLHVEQUVHO0FBRUgsT0FDRSxVQUFTLEVBQUc7O0FBR2Qsd0NBRUc7QUFFSCwrQ0FNRSxlQUFjLEVBQUc7O0FBR25CLGdJQUdHO0FBRUgsS0FDRSxlQUFjLENBQ2QsaUJBQWdCLEVBQUc7O0FBR3JCLHVHQUNzRjtBQUV0RiwwRUFHRztBQUVILDJCQUdFLGVBQWMsRUFBRzs7QUFHbkIsc0NBRUc7QUFFSCxTQUNFLGlCQUFnQixFQUFHOztBQUdyQixxRkFHRztBQUVILEtBQ0UsZ0NBQXVCLENBQXZCLHdCQUF1QixDQUFFLE9BQU8sQ0FDaEMsVUFBUyxDQUFFLE9BQU8sQ0FDbEIsa0JBQWlCLENBQUUsT0FBTyxFQUFHOztBQUcv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VCxxREFBNEMsQ0FBNUMsaURBQTRDLENBQTVDLDZDQUE0QyxDQUM1QyxpQkFBZ0IsQ0FDaEIsdURBQThDLENBQTlDLCtDQUE4QyxDQUM5QyxtQ0FBMEIsQ0FBMUIsK0JBQTBCLENBQTFCLDJCQUEwQixFQUFHOztBQUUvQix3QkFDRSxZQUFXLENBQ1gsbUJBQWtCLENBQ2xCLFlBQVcsQ0FDWCxhQUFZLENBQ1osVUFBUyxDQUNULFNBQVEsQ0FDUixvQ0FBMkIsQ0FBM0IsZ0NBQTJCLENBQTNCLDRCQUEyQixDQUMzQiwwQlp0Q1csQ1l1Q1gsbUJBQWtCLENBQ2xCLCtCQUFzQixDQUF0Qix1QkFBc0IsRUFBRzs7QUFFM0IsOEJBQ0UsV0FBVSxDQUNWLFlBQVcsQ0FDWCxTQUFRLENBQ1IseURBQWdELENBQWhELGlEQUFnRCxFQUFHOztBQUVyRCxzQ0FDRSxLQUNFLG1FQUEwRCxDQUExRCwyREFBMEQsRUFBQTtFQUU1RCxPQUNFLHFFQUE0RCxDQUE1RCw2REFBNEQsRUFBQSxFQUFBOztBQUxoRSw4QkFDRSxLQUNFLG1FQUEwRCxDQUExRCwyREFBMEQsRUFBQTtFQUU1RCxPQUNFLHFFQUE0RCxDQUE1RCw2REFBNEQsRUFBQSxFQUFBIiwiZmlsZSI6ImF1dG9wYXJrLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi8qISBub3JtYWxpemUuY3NzIHY3LjAuMCB8IE1JVCBMaWNlbnNlIHwgZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MgKi9cblxuLyogRG9jdW1lbnRcbiAgIEBtaXhpbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgbGluZSBoZWlnaHQgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpblxuICogICAgSUUgb24gV2luZG93cyBQaG9uZSBhbmQgaW4gaU9TLlxuICovXG5cbmh0bWwge1xuICBsaW5lLWhlaWdodDogMS4xNTsgLyogMSAqLztcbiAgLW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIDIgKi87XG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLyogMiAqLzsgfVxuXG5cbi8qIFNlY3Rpb25zXG4gICBAbWl4aW4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICovXG5cbmJvZHkge1xuICBtYXJnaW46IDA7IH1cblxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICovXG5cbmFydGljbGUsXG5hc2lkZSxcbmZvb3RlcixcbmhlYWRlcixcbm5hdixcbnNlY3Rpb24ge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG5cbi8qKlxuICogQ29ycmVjdCB0aGUgZm9udCBzaXplIGFuZCBtYXJnaW4gb24gYGgxYCBlbGVtZW50cyB3aXRoaW4gYHNlY3Rpb25gIGFuZFxuICogYGFydGljbGVgIGNvbnRleHRzIGluIENocm9tZSwgRmlyZWZveCwgYW5kIFNhZmFyaS5cbiAqL1xuXG5oMSB7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBtYXJnaW46IDAuNjdlbSAwOyB9XG5cblxuLyogR3JvdXBpbmcgY29udGVudFxuICAgQG1peGluID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFLlxuICovXG5cbmZpZ2NhcHRpb24sXG5maWd1cmUsXG5tYWluICAvKiAxICovIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBtYXJnaW4gaW4gSUUgOC5cbiAqL1xuXG5maWd1cmUge1xuICBtYXJnaW46IDFlbSA0MHB4OyB9XG5cblxuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBGaXJlZm94LlxuICogMi4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZSBhbmQgSUUuXG4gKi9cblxuaHIge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLyogMSAqLztcbiAgaGVpZ2h0OiAwOyAvKiAxICovO1xuICBvdmVyZmxvdzogdmlzaWJsZTsgLyogMiAqLzsgfVxuXG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5wcmUge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8qIDEgKi87XG4gIGZvbnQtc2l6ZTogMWVtOyAvKiAyICovOyB9XG5cblxuLyogVGV4dC1sZXZlbCBzZW1hbnRpY3NcbiAgIEBtaXhpbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogMS4gUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgb24gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuICogMi4gUmVtb3ZlIGdhcHMgaW4gbGlua3MgdW5kZXJsaW5lIGluIGlPUyA4KyBhbmQgU2FmYXJpIDgrLlxuICovXG5cbmEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgLyogMSAqLztcbiAgLXdlYmtpdC10ZXh0LWRlY29yYXRpb24tc2tpcDogb2JqZWN0czsgLyogMiAqLzsgfVxuXG5cbi8qKlxuICogMS4gUmVtb3ZlIHRoZSBib3R0b20gYm9yZGVyIGluIENocm9tZSA1Ny0gYW5kIEZpcmVmb3ggMzktLlxuICogMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cbiAqL1xuXG5hYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7IC8qIDEgKi87XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyAvKiAyICovO1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IC8qIDIgKi87IH1cblxuXG4vKipcbiAqIFByZXZlbnQgdGhlIGR1cGxpY2F0ZSBhcHBsaWNhdGlvbiBvZiBgYm9sZGVyYCBieSB0aGUgbmV4dCBydWxlIGluIFNhZmFyaSA2LlxuICovXG5cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogaW5oZXJpdDsgfVxuXG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgd2VpZ2h0IGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaS5cbiAqL1xuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGRlcjsgfVxuXG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5jb2RlLFxua2JkLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLyogMSAqLztcbiAgZm9udC1zaXplOiAxZW07IC8qIDIgKi87IH1cblxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHN0eWxlIGluIEFuZHJvaWQgNC4zLS5cbiAqL1xuXG5kZm4ge1xuICBmb250LXN0eWxlOiBpdGFsaWM7IH1cblxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBiYWNrZ3JvdW5kIGFuZCBjb2xvciBpbiBJRSA5LS5cbiAqL1xuXG5tYXJrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmMDtcbiAgY29sb3I6ICMwMDA7IH1cblxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnNtYWxsIHtcbiAgZm9udC1zaXplOiA4MCU7IH1cblxuXG4vKipcbiAqIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuICogYWxsIGJyb3dzZXJzLlxuICovXG5cbnN1YixcbnN1cCB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IH1cblxuXG5zdWIge1xuICBib3R0b206IC0wLjI1ZW07IH1cblxuXG5zdXAge1xuICB0b3A6IC0wLjVlbTsgfVxuXG5cbi8qIEVtYmVkZGVkIGNvbnRlbnRcbiAgIEBtaXhpbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gKi9cblxuYXVkaW8sXG52aWRlbyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gaU9TIDQtNy5cbiAqL1xuXG5hdWRpbzpub3QoW2NvbnRyb2xzXSkge1xuICBkaXNwbGF5OiBub25lO1xuICBoZWlnaHQ6IDA7IH1cblxuXG4vKipcbiAqIFJlbW92ZSB0aGUgYm9yZGVyIG9uIGltYWdlcyBpbnNpZGUgbGlua3MgaW4gSUUgMTAtLlxuICovXG5cbmltZyB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTsgfVxuXG5cbi8qKlxuICogSGlkZSB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gKi9cblxuc3ZnOm5vdCg6cm9vdCkge1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cblxuLyogRm9ybXNcbiAgIEBtaXhpbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogMS4gQ2hhbmdlIHRoZSBmb250IHN0eWxlcyBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqIDIuIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaS5cbiAqL1xuXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBmb250LWZhbWlseTogc2Fucy1zZXJpZjsgLyogMSAqLztcbiAgZm9udC1zaXplOiAxMDAlOyAvKiAxICovO1xuICBsaW5lLWhlaWdodDogMS4xNTsgLyogMSAqLztcbiAgbWFyZ2luOiAwOyAvKiAyICovOyB9XG5cblxuLyoqXG4gKiBTaG93IHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAqIDEuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UuXG4gKi9cblxuYnV0dG9uLFxuaW5wdXQgIC8qIDEgKi8ge1xuICBvdmVyZmxvdzogdmlzaWJsZTsgfVxuXG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBFZGdlLCBGaXJlZm94LCBhbmQgSUUuXG4gKiAxLiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3guXG4gKi9cblxuYnV0dG9uLFxuc2VsZWN0ICAvKiAxICovIHtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7IH1cblxuXG4vKipcbiAqIDEuIFByZXZlbnQgYSBXZWJLaXQgYnVnIHdoZXJlICgyKSBkZXN0cm95cyBuYXRpdmUgYGF1ZGlvYCBhbmQgYHZpZGVvYFxuICogICAgY29udHJvbHMgaW4gQW5kcm9pZCA0LlxuICogMi4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAqL1xuXG5idXR0b24sXG5odG1sIFt0eXBlPVwiYnV0dG9uXCJdLCAvKiAxICovIHt9XG5bdHlwZT1cInJlc2V0XCJdLFxuW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLyogMiAqLzsgfVxuXG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAqL1xuXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cImJ1dHRvblwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwicmVzZXRcIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInN1Ym1pdFwiXTo6LW1vei1mb2N1cy1pbm5lciB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMDsgfVxuXG5cbi8qKlxuICogUmVzdG9yZSB0aGUgZm9jdXMgc3R5bGVzIHVuc2V0IGJ5IHRoZSBwcmV2aW91cyBydWxlLlxuICovXG5cbmJ1dHRvbjotbW96LWZvY3VzcmluZyxcblt0eXBlPVwiYnV0dG9uXCJdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJyZXNldFwiXTotbW96LWZvY3VzcmluZyxcblt0eXBlPVwic3VibWl0XCJdOi1tb3otZm9jdXNyaW5nIHtcbiAgb3V0bGluZTogMXB4IGRvdHRlZCBCdXR0b25UZXh0OyB9XG5cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBwYWRkaW5nIGluIEZpcmVmb3guXG4gKi9cblxuZmllbGRzZXQge1xuICBwYWRkaW5nOiAwLjM1ZW0gMC43NWVtIDAuNjI1ZW07IH1cblxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXG4gKiAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG4gKiAzLiBSZW1vdmUgdGhlIHBhZGRpbmcgc28gZGV2ZWxvcGVycyBhcmUgbm90IGNhdWdodCBvdXQgd2hlbiB0aGV5IHplcm8gb3V0XG4gKiAgICBgZmllbGRzZXRgIGVsZW1lbnRzIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5sZWdlbmQge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovO1xuICBjb2xvcjogaW5oZXJpdDsgLyogMiAqLztcbiAgZGlzcGxheTogdGFibGU7IC8qIDEgKi87XG4gIG1heC13aWR0aDogMTAwJTsgLyogMSAqLztcbiAgcGFkZGluZzogMDsgLyogMyAqLztcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDsgLyogMSAqLzsgfVxuXG5cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gKiAyLiBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuICovXG5cbnByb2dyZXNzIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyAvKiAxICovO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IC8qIDIgKi87IH1cblxuXG4vKipcbiAqIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUuXG4gKi9cblxudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bzsgfVxuXG5cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gSUUgMTAtLlxuICogMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLS5cbiAqL1xuXG5bdHlwZT1cImNoZWNrYm94XCJdLFxuW3R5cGU9XCJyYWRpb1wiXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi87XG4gIHBhZGRpbmc6IDA7IC8qIDIgKi87IH1cblxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cbiAqL1xuXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvOyB9XG5cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBvZGQgYXBwZWFyYW5jZSBpbiBDaHJvbWUgYW5kIFNhZmFyaS5cbiAqIDIuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxuICovXG5cblt0eXBlPVwic2VhcmNoXCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8qIDEgKi87XG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4OyAvKiAyICovOyB9XG5cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgYW5kIGNhbmNlbCBidXR0b25zIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLlxuICovXG5cblt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLFxuW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7IH1cblxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gKiAyLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBTYWZhcmkuXG4gKi9cblxuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvKiAxICovO1xuICBmb250OiBpbmhlcml0OyAvKiAyICovOyB9XG5cblxuLyogSW50ZXJhY3RpdmVcbiAgIEBtaXhpbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIEVkZ2UsIElFLCBhbmQgRmlyZWZveC5cbiAqL1xuXG5kZXRhaWxzLCAvKiAxICovIHt9XG5tZW51IHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuXG4vKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnN1bW1hcnkge1xuICBkaXNwbGF5OiBsaXN0LWl0ZW07IH1cblxuXG4vKiBTY3JpcHRpbmdcbiAgIEBtaXhpbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gKi9cblxuY2FudmFzIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRS5cbiAqL1xuXG50ZW1wbGF0ZSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuXG4vKiBIaWRkZW5cbiAgIEBtaXhpbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTAtLlxuICovXG5cbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuIiwiLyohIG5vcm1hbGl6ZS5jc3MgdjcuMC4wIHwgTUlUIExpY2Vuc2UgfCBnaXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcyAqL1xuLyogRG9jdW1lbnQgQG1peGluID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKiAxLiBDb3JyZWN0IHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMuIDIuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW4gSUUgb24gV2luZG93cyBQaG9uZSBhbmQgaW4gaU9TLiAqL1xuaHRtbCB7IGxpbmUtaGVpZ2h0OiAxLjE1OyAvKiAxICovIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAyICovIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLyogMiAqLyB9XG5cbi8qIFNlY3Rpb25zIEBtaXhpbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiogUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuICovXG5ib2R5IHsgbWFyZ2luOiAwOyB9XG5cbi8qKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS4gKi9cbmFydGljbGUsIGFzaWRlLCBmb290ZXIsIGhlYWRlciwgbmF2LCBzZWN0aW9uIHsgZGlzcGxheTogYmxvY2s7IH1cblxuLyoqIENvcnJlY3QgdGhlIGZvbnQgc2l6ZSBhbmQgbWFyZ2luIG9uIGBoMWAgZWxlbWVudHMgd2l0aGluIGBzZWN0aW9uYCBhbmQgYGFydGljbGVgIGNvbnRleHRzIGluIENocm9tZSwgRmlyZWZveCwgYW5kIFNhZmFyaS4gKi9cbmgxIHsgZm9udC1zaXplOiAyZW07IG1hcmdpbjogMC42N2VtIDA7IH1cblxuLyogR3JvdXBpbmcgY29udGVudCBAbWl4aW4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLiAxLiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRS4gKi9cbmZpZ2NhcHRpb24sIGZpZ3VyZSwgbWFpbiB7IGRpc3BsYXk6IGJsb2NrOyB9XG5cbi8qKiBBZGQgdGhlIGNvcnJlY3QgbWFyZ2luIGluIElFIDguICovXG5maWd1cmUgeyBtYXJnaW46IDFlbSA0MHB4OyB9XG5cbi8qKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBGaXJlZm94LiAyLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS4gKi9cbmhyIHsgYm94LXNpemluZzogY29udGVudC1ib3g7IC8qIDEgKi8gaGVpZ2h0OiAwOyAvKiAxICovIG92ZXJmbG93OiB2aXNpYmxlOyAvKiAyICovIH1cblxuLyoqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy4gKi9cbnByZSB7IGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLyogMSAqLyBmb250LXNpemU6IDFlbTsgLyogMiAqLyB9XG5cbi8qIFRleHQtbGV2ZWwgc2VtYW50aWNzIEBtaXhpbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiogMS4gUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgb24gYWN0aXZlIGxpbmtzIGluIElFIDEwLiAyLiBSZW1vdmUgZ2FwcyBpbiBsaW5rcyB1bmRlcmxpbmUgaW4gaU9TIDgrIGFuZCBTYWZhcmkgOCsuICovXG5hIHsgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IC8qIDEgKi8gLXdlYmtpdC10ZXh0LWRlY29yYXRpb24tc2tpcDogb2JqZWN0czsgLyogMiAqLyB9XG5cbi8qKiAxLiBSZW1vdmUgdGhlIGJvdHRvbSBib3JkZXIgaW4gQ2hyb21lIDU3LSBhbmQgRmlyZWZveCAzOS0uIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuICovXG5hYmJyW3RpdGxlXSB7IGJvcmRlci1ib3R0b206IG5vbmU7IC8qIDEgKi8gdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IC8qIDIgKi8gdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOyAvKiAyICovIH1cblxuLyoqIFByZXZlbnQgdGhlIGR1cGxpY2F0ZSBhcHBsaWNhdGlvbiBvZiBgYm9sZGVyYCBieSB0aGUgbmV4dCBydWxlIGluIFNhZmFyaSA2LiAqL1xuYiwgc3Ryb25nIHsgZm9udC13ZWlnaHQ6IGluaGVyaXQ7IH1cblxuLyoqIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkuICovXG5iLCBzdHJvbmcgeyBmb250LXdlaWdodDogYm9sZGVyOyB9XG5cbi8qKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuICovXG5jb2RlLCBrYmQsIHNhbXAgeyBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8qIDEgKi8gZm9udC1zaXplOiAxZW07IC8qIDIgKi8gfVxuXG4vKiogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc3R5bGUgaW4gQW5kcm9pZCA0LjMtLiAqL1xuZGZuIHsgZm9udC1zdHlsZTogaXRhbGljOyB9XG5cbi8qKiBBZGQgdGhlIGNvcnJlY3QgYmFja2dyb3VuZCBhbmQgY29sb3IgaW4gSUUgOS0uICovXG5tYXJrIHsgYmFja2dyb3VuZC1jb2xvcjogI2ZmMDsgY29sb3I6ICMwMDA7IH1cblxuLyoqIEFkZCB0aGUgY29ycmVjdCBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLiAqL1xuc21hbGwgeyBmb250LXNpemU6IDgwJTsgfVxuXG4vKiogUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy4gKi9cbnN1Yiwgc3VwIHsgZm9udC1zaXplOiA3NSU7IGxpbmUtaGVpZ2h0OiAwOyBwb3NpdGlvbjogcmVsYXRpdmU7IHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgfVxuXG5zdWIgeyBib3R0b206IC0wLjI1ZW07IH1cblxuc3VwIHsgdG9wOiAtMC41ZW07IH1cblxuLyogRW1iZWRkZWQgY29udGVudCBAbWl4aW4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLiAqL1xuYXVkaW8sIHZpZGVvIHsgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cbi8qKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBpT1MgNC03LiAqL1xuYXVkaW86bm90KFtjb250cm9sc10pIHsgZGlzcGxheTogbm9uZTsgaGVpZ2h0OiAwOyB9XG5cbi8qKiBSZW1vdmUgdGhlIGJvcmRlciBvbiBpbWFnZXMgaW5zaWRlIGxpbmtzIGluIElFIDEwLS4gKi9cbmltZyB7IGJvcmRlci1zdHlsZTogbm9uZTsgfVxuXG4vKiogSGlkZSB0aGUgb3ZlcmZsb3cgaW4gSUUuICovXG5zdmc6bm90KDpyb290KSB7IG92ZXJmbG93OiBoaWRkZW47IH1cblxuLyogRm9ybXMgQG1peGluID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKiAxLiBDaGFuZ2UgdGhlIGZvbnQgc3R5bGVzIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLiAyLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmkuICovXG5idXR0b24sIGlucHV0LCBvcHRncm91cCwgc2VsZWN0LCB0ZXh0YXJlYSB7IGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmOyAvKiAxICovIGZvbnQtc2l6ZTogMTAwJTsgLyogMSAqLyBsaW5lLWhlaWdodDogMS4xNTsgLyogMSAqLyBtYXJnaW46IDA7IC8qIDIgKi8gfVxuXG4vKiogU2hvdyB0aGUgb3ZlcmZsb3cgaW4gSUUuIDEuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UuICovXG5idXR0b24sIGlucHV0IHsgb3ZlcmZsb3c6IHZpc2libGU7IH1cblxuLyoqIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRWRnZSwgRmlyZWZveCwgYW5kIElFLiAxLiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3guICovXG5idXR0b24sIHNlbGVjdCB7IHRleHQtdHJhbnNmb3JtOiBub25lOyB9XG5cbi8qKiAxLiBQcmV2ZW50IGEgV2ViS2l0IGJ1ZyB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2AgYW5kIGB2aWRlb2AgY29udHJvbHMgaW4gQW5kcm9pZCA0LiAyLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLiAqL1xuW3R5cGU9XCJyZXNldFwiXSwgW3R5cGU9XCJzdWJtaXRcIl0geyAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLyogMiAqLyB9XG5cbi8qKiBSZW1vdmUgdGhlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBpbiBGaXJlZm94LiAqL1xuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLCBbdHlwZT1cImJ1dHRvblwiXTo6LW1vei1mb2N1cy1pbm5lciwgW3R5cGU9XCJyZXNldFwiXTo6LW1vei1mb2N1cy1pbm5lciwgW3R5cGU9XCJzdWJtaXRcIl06Oi1tb3otZm9jdXMtaW5uZXIgeyBib3JkZXItc3R5bGU6IG5vbmU7IHBhZGRpbmc6IDA7IH1cblxuLyoqIFJlc3RvcmUgdGhlIGZvY3VzIHN0eWxlcyB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZS4gKi9cbmJ1dHRvbjotbW96LWZvY3VzcmluZywgW3R5cGU9XCJidXR0b25cIl06LW1vei1mb2N1c3JpbmcsIFt0eXBlPVwicmVzZXRcIl06LW1vei1mb2N1c3JpbmcsIFt0eXBlPVwic3VibWl0XCJdOi1tb3otZm9jdXNyaW5nIHsgb3V0bGluZTogMXB4IGRvdHRlZCBCdXR0b25UZXh0OyB9XG5cbi8qKiBDb3JyZWN0IHRoZSBwYWRkaW5nIGluIEZpcmVmb3guICovXG5maWVsZHNldCB7IHBhZGRpbmc6IDAuMzVlbSAwLjc1ZW0gMC42MjVlbTsgfVxuXG4vKiogMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS4gMi4gQ29ycmVjdCB0aGUgY29sb3IgaW5oZXJpdGFuY2UgZnJvbSBgZmllbGRzZXRgIGVsZW1lbnRzIGluIElFLiAzLiBSZW1vdmUgdGhlIHBhZGRpbmcgc28gZGV2ZWxvcGVycyBhcmUgbm90IGNhdWdodCBvdXQgd2hlbiB0aGV5IHplcm8gb3V0IGBmaWVsZHNldGAgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzLiAqL1xubGVnZW5kIHsgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqLyBjb2xvcjogaW5oZXJpdDsgLyogMiAqLyBkaXNwbGF5OiB0YWJsZTsgLyogMSAqLyBtYXgtd2lkdGg6IDEwMCU7IC8qIDEgKi8gcGFkZGluZzogMDsgLyogMyAqLyB3aGl0ZS1zcGFjZTogbm9ybWFsOyAvKiAxICovIH1cblxuLyoqIDEuIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLiAyLiBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLiAqL1xucHJvZ3Jlc3MgeyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IC8qIDEgKi8gdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyAvKiAyICovIH1cblxuLyoqIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUuICovXG50ZXh0YXJlYSB7IG92ZXJmbG93OiBhdXRvOyB9XG5cbi8qKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC0uIDIuIFJlbW92ZSB0aGUgcGFkZGluZyBpbiBJRSAxMC0uICovXG5bdHlwZT1cImNoZWNrYm94XCJdLCBbdHlwZT1cInJhZGlvXCJdIHsgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqLyBwYWRkaW5nOiAwOyAvKiAyICovIH1cblxuLyoqIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS4gKi9cblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLCBbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7IGhlaWdodDogYXV0bzsgfVxuXG4vKiogMS4gQ29ycmVjdCB0aGUgb2RkIGFwcGVhcmFuY2UgaW4gQ2hyb21lIGFuZCBTYWZhcmkuIDIuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLiAqL1xuW3R5cGU9XCJzZWFyY2hcIl0geyAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLyogMSAqLyBvdXRsaW5lLW9mZnNldDogLTJweDsgLyogMiAqLyB9XG5cbi8qKiBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgYW5kIGNhbmNlbCBidXR0b25zIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLiAqL1xuW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sIFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHsgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyB9XG5cbi8qKiAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLiAyLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBTYWZhcmkuICovXG46Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHsgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8qIDEgKi8gZm9udDogaW5oZXJpdDsgLyogMiAqLyB9XG5cbi8qIEludGVyYWN0aXZlIEBtaXhpbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS4gMS4gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gRWRnZSwgSUUsIGFuZCBGaXJlZm94LiAqL1xubWVudSB7IGRpc3BsYXk6IGJsb2NrOyB9XG5cbi8qIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGFsbCBicm93c2Vycy4gKi9cbnN1bW1hcnkgeyBkaXNwbGF5OiBsaXN0LWl0ZW07IH1cblxuLyogU2NyaXB0aW5nIEBtaXhpbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uICovXG5jYW52YXMgeyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cblxuLyoqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFLiAqL1xudGVtcGxhdGUgeyBkaXNwbGF5OiBub25lOyB9XG5cbi8qIEhpZGRlbiBAbWl4aW4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwLS4gKi9cbltoaWRkZW5dIHsgZGlzcGxheTogbm9uZTsgfVxuXG4uYm9keS1vdmVyZmxvdyB7IG92ZXJmbG93OiBoaWRkZW47IH1cblxubWFpbiB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgei1pbmRleDogMjsgfVxuXG5mb290ZXIgeyB6LWluZGV4OiAzOyBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLmNvbnRhaW5lciB7IG1heC13aWR0aDogMTIzMHB4OyB3aWR0aDogMTAwJTsgcG9zaXRpb246IHJlbGF0aXZlOyBtYXJnaW46IDAgYXV0bzsgcGFkZGluZzogMCAxNXB4OyB9XG5cbkBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDEzNjVweCkgeyAuY29udGFpbmVyIHsgcGFkZGluZzogMCAyNXB4OyBtYXgtd2lkdGg6IDEwMTBweDsgfSB9XG5cbkBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDExOTlweCkgeyAuY29udGFpbmVyIHsgbWF4LXdpZHRoOiA4MDBweDsgcGFkZGluZzogMCAxNnB4OyB9IH1cblxuQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogNzY3cHgpIHsgLmNvbnRhaW5lciB7IHBhZGRpbmc6IDAgMThweDsgfSB9XG5cbiogeyBib3gtc2l6aW5nOiBib3JkZXItYm94OyBtYXJnaW46IDA7IHBhZGRpbmc6IDA7IH1cblxuYnV0dG9uLCBhIHsgb3V0bGluZTogbm9uZTsgfVxuXG5iLCBzdHJvbmcgeyBmb250LXdlaWdodDogaW5oZXJpdDsgfVxuXG5iLCBzdHJvbmcgeyBmb250LXdlaWdodDogYm9sZGVyOyB9XG5cbnVsLCBvbCB7IGxpc3Qtc3R5bGU6IG5vbmU7IH1cblxuLmZ3IHsgZGlzcGxheTogLXdlYmtpdC1mbGV4OyBkaXNwbGF5OiAtbXMtZmxleDsgZGlzcGxheTogZmxleDsganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyBhbGlnbi1pdGVtczogZmxleC1zdGFydDsgfVxuXG5sYWJlbC5lcnJvciB7IGRpc3BsYXk6IG5vbmU7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgYm90dG9tOiAwcHg7IHJpZ2h0OiAwOyBjb2xvcjogI0ZGMTUxRjsgZm9udC1zaXplOiAxNHB4OyBmb250LXdlaWdodDogNDAwOyB0ZXh0LWFsaWduOiByaWdodDsgZm9udC1zaXplOiAxMnB4OyB6LWluZGV4OiA1OyB9XG5cbi5jdXN0b20tc2VsZWN0LXdyYXBwZXIgeyBwb3NpdGlvbjogcmVsYXRpdmU7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgdXNlci1zZWxlY3Q6IG5vbmU7IHdpZHRoOiAxMDAlOyB9XG5cbi5jdXN0b20tc2VsZWN0LXdyYXBwZXIgc2VsZWN0IHsgZGlzcGxheTogbm9uZTsgfVxuXG4uY3VzdG9tLXNlbGVjdCB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgZGlzcGxheTogaW5saW5lLWJsb2NrOyB6LWluZGV4OiA1OyB0ZXh0LWFsaWduOiBsZWZ0OyB3aWR0aDogMTAwJTsgfVxuXG4uY3VzdG9tLXNlbGVjdC10cmlnZ2VyIHsgcG9zaXRpb246IHJlbGF0aXZlOyBkaXNwbGF5OiBibG9jazsgd2lkdGg6IDEwMCU7IHBhZGRpbmc6IDAgMTVweDsgZm9udC1zaXplOiAxNnB4OyBmb250LXdlaWdodDogMzAwOyBjb2xvcjogIzM3MzczNzsgZm9udC13ZWlnaHQ6IDUwMDsgaGVpZ2h0OiA0NHB4OyBsaW5lLWhlaWdodDogNDRweDsgYmFja2dyb3VuZDogI2ZmZjsgYm9yZGVyOiAxcHggc29saWQgIzliOWE5YTsgY3Vyc29yOiBwb2ludGVyOyBmb250LWZhbWlseTogJ0V4byAyJywgc2Fucy1zZXJpZjsgfVxuXG4uY3VzdG9tLXNlbGVjdC10cmlnZ2VyOmFmdGVyIHsgcG9zaXRpb246IGFic29sdXRlOyBjb250ZW50OiAnJzsgZGlzcGxheTogYmxvY2s7IHJpZ2h0OiAxNXB4OyB0b3A6IDQ5JTsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHJvdGF0ZSg0NWRlZyk7IGJvcmRlcjogc29saWQgI0ZGMTUxRjsgYm9yZGVyLXdpZHRoOiAwIDJweCAycHggMDsgcGFkZGluZzogM3B4OyB6LWluZGV4OiAxOyB0cmFuc2l0aW9uOiBhbGwgLjJzOyB9XG5cbi5jdXN0b20tc2VsZWN0Lm9wZW5lZCAuY3VzdG9tLXNlbGVjdC10cmlnZ2VyOmFmdGVyIHsgdHJhbnNmb3JtOiByb3RhdGUoLTEzNWRlZykgdHJhbnNsYXRlWSgwJSk7IH1cblxuLmN1c3RvbS1vcHRpb25zIHsgcG9zaXRpb246IGFic29sdXRlOyBkaXNwbGF5OiBibG9jazsgdG9wOiAxMDAlOyBsZWZ0OiAwOyByaWdodDogMDsgbWluLXdpZHRoOiAxMDAlOyBiYWNrZ3JvdW5kOiAjZmZmOyB0cmFuc2l0aW9uOiBhbGwgLjRzIGVhc2UtaW4tb3V0OyBvcGFjaXR5OiAwOyB2aXNpYmlsaXR5OiBoaWRkZW47IHBvaW50ZXItZXZlbnRzOiBub25lOyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTE1cHgpOyBib3gtc2hhZG93OiAwIDAgMjBweCAxcHggcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG5cbi5jdXN0b20tc2VsZWN0Lm9wZW5lZCB7IGJveC1zaGFkb3c6IDAgMCAyMHB4IDJweCByZ2JhKDAsIDAsIDAsIDAuMSk7IH1cblxuLmN1c3RvbS1zZWxlY3Qub3BlbmVkIC5jdXN0b20tb3B0aW9ucyB7IG9wYWNpdHk6IDE7IHZpc2liaWxpdHk6IHZpc2libGU7IHBvaW50ZXItZXZlbnRzOiBhbGw7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsgfVxuXG4ub3B0aW9uLWhvdmVyOmJlZm9yZSB7IGJhY2tncm91bmQ6ICNmOWY5Zjk7IH1cblxuLmN1c3RvbS1vcHRpb24geyBwb3NpdGlvbjogcmVsYXRpdmU7IGJvcmRlcjogMXB4IHNvbGlkICM5YjlhOWE7IGJvcmRlci10b3A6IG5vbmU7IGJvcmRlci1ib3R0b206IG5vbmU7IGRpc3BsYXk6IGJsb2NrOyBmb250LXNpemU6IDE2cHg7IGNvbG9yOiAjMkQyRDJEOyBmb250LXdlaWdodDogNTAwOyBwYWRkaW5nOiAxMHB4IDE1cHg7IGRpc3BsYXk6IGJsb2NrOyBjdXJzb3I6IHBvaW50ZXI7IHRyYW5zaXRpb246IGFsbCAuNHMgZWFzZS1pbi1vdXQ7IH1cblxuLmN1c3RvbS1vcHRpb246bGFzdC1jaGlsZCB7IGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjOWI5YTlhOyB9XG5cbkBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDk5OXB4KSB7IC5jdXN0b20tb3B0aW9uIHsgZm9udC1zaXplOiAxNnB4OyB9IH1cblxuLmN1c3RvbS1vcHRpb246aG92ZXIsIC5jdXN0b20tb3B0aW9uLnNlbGVjdGlvbiB7IGJhY2tncm91bmQ6ICNGMkYyRjI7IH1cblxuLnNpdGUtYnV0dG9uIHsgY3Vyc29yOiBwb2ludGVyOyBib3gtc2l6aW5nOiBib3JkZXItYm94OyBvdXRsaW5lOiBub25lOyBmb250LXdlaWdodDogYm9sZDsgZGlzcGxheTogaW5saW5lLWJsb2NrOyBmb250LWZhbWlseTogJ0V4byAyJywgc2Fucy1zZXJpZjsgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IHRyYW5zaXRpb246IGFsbCAuMnM7IGZvbnQtc2l6ZTogMThweDsgYm9yZGVyOiBub25lOyB9XG5cbkBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDEzNjVweCkgeyAuc2l0ZS1idXR0b24geyBmb250LXNpemU6IDE2cHg7IH0gfVxuXG5AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiAxMTk5cHgpIHsgLnNpdGUtYnV0dG9uIHsgZm9udC1zaXplOiAxNHB4OyB9IH1cblxuQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogNjM5cHgpIHsgLnNpdGUtYnV0dG9uIHsgZm9udC1zaXplOiAxNnB4OyB9IH1cblxuLnNpdGUtYnV0dG9uLS1ub3JtYWwgeyB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyBib3JkZXI6IG5vbmU7IGNvbG9yOiAjRkYxNTFGOyB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuXG4uc2l0ZS1idXR0b24tLW5vcm1hbDpob3ZlciB7IHRleHQtZGVjb3JhdGlvbjogbm9uZTsgY29sb3I6ICNjZjEzMWM7IH1cblxuLnNpdGUtYnV0dG9uLS1yZWQgeyBjb2xvcjogI2ZmZjsgYmFja2dyb3VuZC1jb2xvcjogI0ZGMTUxRjsgcGFkZGluZzogMTJweCAyNHB4OyBib3JkZXI6IG5vbmU7IGN1cnNvcjogcG9pbnRlcjsgfVxuXG5AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA3NjdweCkgeyAuc2l0ZS1idXR0b24tLXJlZCB7IHBhZGRpbmc6IDEwcHggMjBweDsgfSB9XG5cbi5zaXRlLWJ1dHRvbi0tcmVkOmhvdmVyIHsgYmFja2dyb3VuZC1jb2xvcjogI2NmMTMxYzsgfVxuXG4qIHsgbGluZS1oZWlnaHQ6IDE7IGZvbnQtd2VpZ2h0OiA0MDA7IGZvbnQtZmFtaWx5OiAnRXhvIDInLCBzYW5zLXNlcmlmOyB9XG5cbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsIHAsIHNwYW4sIGxpIHsgY29sb3I6ICMzNzM3Mzc7IH1cblxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7IGZvbnQtd2VpZ2h0OiBib2xkOyBtYXJnaW46IDA7IGxpbmUtaGVpZ2h0OiAxLjE7IH1cblxuaDEgeyBmb250LXNpemU6IDcycHg7IH1cblxuQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogMTM2NXB4KSB7IGgxIHsgZm9udC1zaXplOiA0OHB4OyB9IH1cblxuQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogMTE5OXB4KSB7IGgxIHsgZm9udC1zaXplOiA0MHB4OyB9IH1cblxuQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogNjM5cHgpIHsgaDEgeyBmb250LXNpemU6IDM2cHg7IH0gfVxuXG5AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA0NzlweCkgeyBoMSB7IGZvbnQtc2l6ZTogMzBweDsgfSB9XG5cbmgyIHsgZm9udC1zaXplOiA0OHB4OyB9XG5cbkBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDEzNjVweCkgeyBoMiB7IGZvbnQtc2l6ZTogNDBweDsgfSB9XG5cbkBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDExOTlweCkgeyBoMiB7IGZvbnQtc2l6ZTogMzBweDsgfSB9XG5cbkBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDk5OXB4KSB7IGgyIHsgZm9udC1zaXplOiAyOHB4OyB9IH1cblxuQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogNDc5cHgpIHsgaDIgeyBmb250LXNpemU6IDI0cHg7IH0gfVxuXG5oMyB7IGZvbnQtc2l6ZTogMjhweDsgfVxuXG5AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiAxMzY1cHgpIHsgaDMgeyBmb250LXNpemU6IDI2cHg7IH0gfVxuXG5AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiAxMTk5cHgpIHsgaDMgeyBmb250LXNpemU6IDIycHg7IH0gfVxuXG5AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA0NzlweCkgeyBoMyB7IGZvbnQtc2l6ZTogMjBweDsgfSB9XG5cbmg0IHsgZm9udC1zaXplOiAyMHB4OyB9XG5cbkBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDEzNjVweCkgeyBoNCB7IGZvbnQtc2l6ZTogMTZweDsgfSB9XG5cbkBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDExOTlweCkgeyBoNCB7IGZvbnQtc2l6ZTogMTJweDsgfSB9XG5cbmg1IHsgZm9udC1zaXplOiAxNnB4OyB9XG5cbkBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDEzNjVweCkgeyBoNSB7IGZvbnQtc2l6ZTogMTRweDsgfSB9XG5cbkBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDQ3OXB4KSB7IGg1IHsgZm9udC1zaXplOiAxMnB4OyB9IH1cblxuaDUgeyBmb250LXNpemU6IDE0cHg7IH1cblxuQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogNDc5cHgpIHsgaDUgeyBmb250LXNpemU6IDEycHg7IH0gfVxuXG5wLCBzcGFuLCBsaSB7IG1hcmdpbjogMDsgZm9udC1zaXplOiAxNHB4OyBmb250LXdlaWdodDogNTAwOyBsaW5lLWhlaWdodDogMS41ZW07IH1cblxuQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogNDc5cHgpIHsgcCwgc3BhbiwgbGkgeyBmb250LXNpemU6IDEycHg7IH0gfVxuXG5zcGFuLCBhIHsgZm9udC1mYW1pbHk6IGluaGVyaXQ7IGZvbnQtc2l6ZTogaW5oZXJpdDsgZm9udC13ZWlnaHQ6IGluaGVyaXQ7IGxpbmUtaGVpZ2h0OiBpbmhlcml0OyB9XG5cbmEgeyBjb2xvcjogIzM3MzczNzsgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbi50eXBvZ3JhcGh5IGgzLCAudHlwb2dyYXBoeSBoNCwgLnR5cG9ncmFwaHkgaDUgeyBtYXJnaW4tYm90dG9tOiA0MHB4OyB9XG5cbkBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDk5OXB4KSB7IC50eXBvZ3JhcGh5IGgzLCAudHlwb2dyYXBoeSBoNCwgLnR5cG9ncmFwaHkgaDUgeyBtYXJnaW4tYm90dG9tOiAyNXB4OyB9IH1cblxuLnR5cG9ncmFwaHkgcCB7IG1hcmdpbi1ib3R0b206IDJlbTsgfVxuXG4udHlwb2dyYXBoeSBwOmxhc3QtY2hpbGQgeyBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi50eXBvZ3JhcGh5IC5hbGlnbmxlZnQgeyBmbG9hdDogbGVmdDsgfVxuXG4udHlwb2dyYXBoeSAuYWxpZ25yaWdodCB7IGZsb2F0OiByaWdodDsgfVxuXG4udHlwb2dyYXBoeSBpbWcgeyBtYXgtd2lkdGg6IDEwMCU7IGhlaWdodDogYXV0bzsgZGlzcGxheTogYmxvY2s7IH1cblxuLmlucHV0cyB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgZGlzcGxheTogaW5saW5lLWJsb2NrOyB3aWR0aDogMTAwJTsgfVxuXG4uaW5wdXRzIGlucHV0LCAuaW5wdXRzIHNlbGVjdCB7IHdpZHRoOiAxMDAlOyBib3JkZXI6IG5vbmU7IGJvcmRlcjogMXB4IHNvbGlkICM5YjlhOWE7IG91dGxpbmU6IG5vbmU7IGhlaWdodDogMTAwJTsgbWluLXdpZHRoOiAxMHB4OyBtaW4taGVpZ2h0OiAxMHB4OyBwYWRkaW5nOiAxM3B4IDE0cHg7IHRyYW5zaXRpb246IGFsbCAuMnM7IH1cblxuLmlucHV0cyBpbnB1dDo6cGxhY2Vob2xkZXIsIC5pbnB1dHMgc2VsZWN0OjpwbGFjZWhvbGRlciB7IGNvbG9yOiAjMzczNzM3OyB9XG5cbi5pbnB1dHMgLmlucHV0LS1lcnJvciB7IGJvcmRlci1jb2xvcjogI0ZGMTUxRjsgfVxuXG4uaW5wdXRzIC5lcnJvciB7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgYm90dG9tOiAtMTVweDsgfVxuXG4uc19ib3ggeyB3aWR0aDogMTAwJTsgbWFyZ2luOiAtMTBweDsgZmxleC13cmFwOiB3cmFwOyBhbGlnbi1pdGVtczogc3RyZXRjaDsgfVxuXG4uc19ib3hfX2Jsb2NrIHsgcGFkZGluZzogMTBweDsgfVxuXG4uc19ib3hfX2Jsb2NrLS0xMDAgeyBtYXgtd2lkdGg6IDEwMCU7IH1cblxuLnNfYm94X19ibG9jay0tNTAgeyBtYXgtd2lkdGg6IDUwJTsgfVxuXG4uc19ib3hfX2Jsb2NrLS0zMCB7IG1heC13aWR0aDogMzMuMzMzMyU7IH1cblxuLnNfcG9wdXAgeyBkaXNwbGF5OiBub25lOyBwb3NpdGlvbjogZml4ZWQ7IHRvcDogMDsgbGVmdDogMDsgcmlnaHQ6IDA7IGJvdHRvbTogMDsgei1pbmRleDogNzA7IHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDEwMCU7IGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43KTsgb3ZlcmZsb3cteTogYXV0bzsgfVxuXG4uc19wb3B1cF9fbGF5ZXIgeyBwb3NpdGlvbjogZml4ZWQ7IHRvcDogMDsgbGVmdDogMDsgcmlnaHQ6IDA7IGJvdHRvbTogMDsgd2lkdGg6IDEwMCU7IGhlaWdodDogMTAwJTsgei1pbmRleDogMTsgfVxuXG4uc19wb3B1cF9fY2xvc2UgeyB3aWR0aDogMzBweDsgaGVpZ2h0OiAzMHB4OyBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogMjVweDsgcmlnaHQ6IDI1cHg7IGN1cnNvcjogcG9pbnRlcjsgfVxuXG5AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA2MzlweCkgeyAuc19wb3B1cF9fY2xvc2UgeyB3aWR0aDogMjVweDsgaGVpZ2h0OiAyNXB4OyB0b3A6IDE1cHg7IHJpZ2h0OiAxNXB4OyB9IH1cblxuLnNfcG9wdXBfX2Nsb3NlOjpiZWZvcmUsIC5zX3BvcHVwX19jbG9zZTo6YWZ0ZXIgeyBjb250ZW50OiBcIlwiOyBwb3NpdGlvbjogYWJzb2x1dGU7IHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDRweDsgYmFja2dyb3VuZDogI0ZGMTUxRjsgdG9wOiA0MCU7IGxlZnQ6IDA7IHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTsgYm9yZGVyLXJhZGl1czogMjBweDsgfVxuXG4uc19wb3B1cF9fY2xvc2U6OmFmdGVyIHsgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTsgfVxuXG4uc19wb3B1cF9fY29udGVudCB7IHdpZHRoOiAxMDAlOyBtYXgtd2lkdGg6IDk5NXB4OyBwb3NpdGlvbjogYWJzb2x1dGU7IHotaW5kZXg6IDI7IHRvcDogNTAlOyBsZWZ0OiA1MCU7IHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpOyBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyBwYWRkaW5nOiAyMHB4IDQ1cHg7IG1hcmdpbjogNDBweCAwOyB9XG5cbi5zX3BvcHVwX19jb250ZW50LS1wcm9qZWN0IHsgcGFkZGluZzogNDVweDsgbWFyZ2luLXRvcDogOTBweDsgfVxuXG4uc19wb3B1cC0tcHJvamVjdF9fY29udGVudCB7IG1heC13aWR0aDogNzUwcHg7IHdpZHRoOiAxMDAlOyBtYXJnaW46IGF1dG87IHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4uc19wb3B1cC0tcHJvamVjdF9fc2xpZGVyIHsgbWFyZ2luLWJvdHRvbTogMzJweDsgfVxuXG4uc19wb3B1cC0tcHJvamVjdF9faW1nIHsgd2lkdGg6IDEwMCU7IGRpc3BsYXk6IGZsZXg7IGhlaWdodDogNDUwcHg7IGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cblxuLnNfcG9wdXAtLXByb2plY3RfX2ltZyBpbWcgeyB3aWR0aDogMTAwJTsgaGVpZ2h0OiBhdXRvOyBvYmplY3QtZml0OiBjb3ZlcjsgbWF4LWhlaWdodDogMTAwJTsgfVxuXG4uc19wb3B1cC0tcHJvamVjdCAuc2xpY2stYXJyb3cgeyBwb3NpdGlvbjogYWJzb2x1dGU7IGN1cnNvcjogcG9pbnRlcjsgdG9wOiA1MCU7IHotaW5kZXg6IDE7IGZvbnQtc2l6ZTogMDsgYm9yZGVyOiBub25lOyBib3JkZXItbGVmdDogMnB4IHNvbGlkICNGRjE1MUY7IGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjRkYxNTFGOyB3aWR0aDogMjBweDsgaGVpZ2h0OiAyMHB4OyBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG5AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA5OTlweCkgeyAuc19wb3B1cC0tcHJvamVjdCAuc2xpY2stYXJyb3cgeyBkaXNwbGF5OiBub25lOyB9IH1cblxuLnNfcG9wdXAtLXByb2plY3QgLnNsaWNrLXByZXYgeyBsZWZ0OiAtNDBweDsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHJvdGF0ZSg0NWRlZyk7IH1cblxuLnNfcG9wdXAtLXByb2plY3QgLnNsaWNrLW5leHQgeyByaWdodDogLTQwcHg7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSByb3RhdGUoLTEzNWRlZyk7IH1cblxuLnNfcG9wdXBfX3RoYW5rcyB7IGhlaWdodDogMTAwJTsgfVxuXG4uc19wb3B1cF9fdGhhbmtzLS13cmFwIHsgcG9zaXRpb246IHJlbGF0aXZlOyB6LWluZGV4OiAyOyBoZWlnaHQ6IDEwMCU7IHBhZGRpbmc6IDA7IHdpZHRoOiAxMDAlOyBtYXgtd2lkdGg6IDYwMHB4OyBkaXNwbGF5OiBmbGV4OyBhbGlnbi1pdGVtczogY2VudGVyOyBtYXJnaW46IGF1dG87IH1cblxuQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogOTk5cHgpIHsgLnNfcG9wdXBfX3RoYW5rcy0td3JhcCB7IG1heC13aWR0aDogOTAlOyB9IH1cblxuLnNfcG9wdXBfX3RoYW5rcy0tYm94IHsgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7IGhlaWdodDogYXV0bzsgcGFkZGluZzogODRweDsgcG9zaXRpb246IHJlbGF0aXZlOyB3aWR0aDogMTAwJTsgYm94LXNoYWRvdzogNnB4IDZweCAxOHB4IHJnYmEoMCwgMCwgMCwgMC4yKTsgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbkBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDEzNjVweCkgeyAuc19wb3B1cF9fdGhhbmtzLS1ib3ggeyBwYWRkaW5nOiA4NXB4IDEwMHB4OyB9IH1cblxuQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogOTk5cHgpIHsgLnNfcG9wdXBfX3RoYW5rcy0tYm94IHsgcGFkZGluZzogNTVweCA3MHB4OyB9IH1cblxuQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogNjM5cHgpIHsgLnNfcG9wdXBfX3RoYW5rcy0tYm94IHsgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgYWxpZ24taXRlbXM6IGNlbnRlcjsganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IHBhZGRpbmc6IDMwcHg7IH0gfVxuXG4uYWJzb2x1dGVfaW1nIHsgbWF4LXdpZHRoOiA4MHB4OyBwb3NpdGlvbjogYWJzb2x1dGU7IHotaW5kZXg6IC0xOyByaWdodDogMzBweDsgYm90dG9tOiAwOyB9XG5cbkBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDk5OXB4KSB7IC5hYnNvbHV0ZV9pbWcgeyBtYXgtd2lkdGg6IDY1cHg7IG1heC1oZWlnaHQ6IDcwcHg7IH0gfVxuXG5AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA3NjdweCkgeyAuYWJzb2x1dGVfaW1nIHsgbWF4LXdpZHRoOiA1NXB4OyB9IH1cblxuLmFic29sdXRlX2ltZy0tY2VudGVyIHsgbGVmdDogNjUlOyB9XG5cbi5hYnNvbHV0ZV9pbWctLXJpZ2h0IHsgcmlnaHQ6IDIwcHg7IHRvcDogMzBweDsgfVxuXG4uYWJzb2x1dGVfaW1nLS1yaWdodDIgeyB0b3A6IDgwcHg7IHJpZ2h0OiAyMCU7IH1cblxuLnNfaGVhZGVyIHsgcGFkZGluZzogMzBweCAwIDMwcHg7IHBvc2l0aW9uOiByZWxhdGl2ZTsgei1pbmRleDogNTsgfVxuXG5AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiAxMzY1cHgpIHsgLnNfaGVhZGVyIHsgcGFkZGluZzogMTlweCAwIDIzcHg7IH0gfVxuXG5AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiAxMTk5cHgpIHsgLnNfaGVhZGVyIHsgcGFkZGluZzogMjRweCAwIDIzcHg7IH0gfVxuXG5AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA5OTlweCkgeyAuc19oZWFkZXIgeyBwYWRkaW5nOiAxOHB4IDAgMThweDsgfSB9XG5cbkBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDYzOXB4KSB7IC5zX2hlYWRlciB7IHBhZGRpbmc6IDE4cHggMCAyM3B4OyB9IH1cblxuQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogOTk5cHgpIHsgLnNfaGVhZGVyOjphZnRlciB7IGRpc3BsYXk6IGJsb2NrOyBjb250ZW50OiAnJzsgcG9zaXRpb246IGFic29sdXRlOyBsZWZ0OiAwOyB0b3A6IDA7IHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDEwMCU7IGJhY2tncm91bmQ6ICNmZmY7IHotaW5kZXg6IDE0OyB9IH1cblxuLnNfaGVhZGVyX3dyYXAgeyBhbGlnbi1pdGVtczogY2VudGVyOyB9XG5cbi5zX2hlYWRlcl9sb2dvIHsgbWF4LXdpZHRoOiAxNjNweDsgZGlzcGxheTogYmxvY2s7IHdpZHRoOiAxMDAlOyBtYXJnaW4tcmlnaHQ6IDcwcHg7IHBvc2l0aW9uOiByZWxhdGl2ZTsgei1pbmRleDogMTU7IH1cblxuQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogMTM2NXB4KSB7IC5zX2hlYWRlcl9sb2dvIHsgbWF4LXdpZHRoOiAxMzBweDsgbWFyZ2luLXJpZ2h0OiA1MHB4OyB9IH1cblxuQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogMTE5OXB4KSB7IC5zX2hlYWRlcl9sb2dvIHsgbWF4LXdpZHRoOiA5NnB4OyBtYXJnaW4tcmlnaHQ6IDQ1cHg7IH0gfVxuXG5AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA5OTlweCkgeyAuc19oZWFkZXJfbG9nbyB7IG1heC13aWR0aDogMTAzcHg7IH0gfVxuXG4uc19oZWFkZXJfbG9nbyBpbWcgeyBtYXgtd2lkdGg6IDEwMCU7IGRpc3BsYXk6IGJsb2NrOyBoZWlnaHQ6IGF1dG87IH1cblxuLnNfaGVhZGVyX21lbnVfd3JhcCB7IG1heC13aWR0aDogMTAwJTsgd2lkdGg6IDEwMCU7IGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cblxuQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogOTk5cHgpIHsgLnNfaGVhZGVyX21lbnVfd3JhcCB7IHBvc2l0aW9uOiBmaXhlZDsgbGVmdDogLTEwMDAwMHB4OyB0b3A6IDA7IHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDEwMCU7IG1heC13aWR0aDogMTAwJTsgZGlzcGxheTogYmxvY2s7IG92ZXJmbG93LXk6IGF1dG87IG92ZXJmbG93LXg6IGhpZGRlbjsgcGFkZGluZy1ib3R0b206IDMwcHg7IGJhY2tncm91bmQ6ICNmZmY7IHotaW5kZXg6IDEwOyB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDsgfVxuICAuc19oZWFkZXJfbWVudV93cmFwLS1vcGVuIHsgbGVmdDogMDsgfSB9XG5cbi5zX2hlYWRlcl9tZW51X3dyYXAgdWwgeyBtYXgtd2lkdGg6IDc2MHB4OyB3aWR0aDogMTAwJTsgbWFyZ2luLXJpZ2h0OiA4M3B4OyB9XG5cbkBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDEzNjVweCkgeyAuc19oZWFkZXJfbWVudV93cmFwIHVsIHsgbWF4LXdpZHRoOiA2MjhweDsgbWFyZ2luLXJpZ2h0OiA0M3B4OyB9IH1cblxuQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogMTE5OXB4KSB7IC5zX2hlYWRlcl9tZW51X3dyYXAgdWwgeyBtYXgtd2lkdGg6IDUxNnB4OyBtYXJnaW4tcmlnaHQ6IDEwcHg7IH0gfVxuXG5AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA5OTlweCkgeyAuc19oZWFkZXJfbWVudV93cmFwIHVsIHsgZGlzcGxheTogYmxvY2s7IG1heC13aWR0aDogMTAwJTsgbWFyZ2luOiAwOyB0ZXh0LWFsaWduOiBjZW50ZXI7IHBhZGRpbmctdG9wOiA1N3B4OyBwYWRkaW5nLWJvdHRvbTogNDVweDsgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlNWU1ZTU7IG1hcmdpbi1ib3R0b206IDI1cHg7IH0gfVxuXG5AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA5OTlweCkgYW5kIChtYXgtd2lkdGg6IDYzOXB4KSB7IC5zX2hlYWRlcl9tZW51X3dyYXAgdWwgeyBwYWRkaW5nLWJvdHRvbTogMjhweDsgbWFyZ2luLWJvdHRvbTogMzJweDsgfSB9XG5cbi5zX2hlYWRlcl9tZW51X3dyYXAgdWwgbGkgeyBmb250LXNpemU6IDE2cHg7IGZvbnQtd2VpZ2h0OiA0MDA7IGNvbG9yOiAjMDAwMDAwOyBmb250LWZhbWlseTogJ0V4byAyJywgc2Fucy1zZXJpZjsgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7IH1cblxuQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogMTM2NXB4KSB7IC5zX2hlYWRlcl9tZW51X3dyYXAgdWwgbGkgeyBmb250LXNpemU6IDE0cHg7IH0gfVxuXG5AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiAxMTk5cHgpIHsgLnNfaGVhZGVyX21lbnVfd3JhcCB1bCBsaSB7IGZvbnQtc2l6ZTogMTJweDsgfSB9XG5cbkBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDk5OXB4KSB7IC5zX2hlYWRlcl9tZW51X3dyYXAgdWwgbGkgeyBmb250LXNpemU6IDE4cHg7IH0gfVxuXG5AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA2MzlweCkgeyAuc19oZWFkZXJfbWVudV93cmFwIHVsIGxpIHsgZm9udC1zaXplOiAxNnB4OyB9IH1cblxuLnNfaGVhZGVyX21lbnVfd3JhcCB1bCBsaTpob3ZlciB7IGNvbG9yOiAjRkYxNTFGOyB9XG5cbi5zX2hlYWRlcl9tZW51X3dyYXAgdWwgbGkgYSB7IGZvbnQtc3R5bGU6IGluaGVyaXQ7IGZvbnQtc2l6ZTogaW5oZXJpdDsgY29sb3I6IGluaGVyaXQ7IGZvbnQtd2VpZ2h0OiBpbmhlcml0OyBkaXNwbGF5OiBibG9jazsgfVxuXG5AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA5OTlweCkgeyAuc19oZWFkZXJfbWVudV93cmFwIHVsIGxpIGEgeyBwYWRkaW5nOiAxMXB4IDAgMTFweDsgfSB9XG5cbkBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDYzOXB4KSB7IC5zX2hlYWRlcl9tZW51X3dyYXAgdWwgbGkgYSB7IHBhZGRpbmc6IDlweCAwIDlweDsgfSB9XG5cbi5zX2hlYWRlcl9tZW51X3dyYXAgdWwgbGkuY3VycmVudC1tZW51LWl0ZW0geyBjb2xvcjogI0ZGMTUxRjsgfVxuXG4uc19oZWFkZXJfcGhvbmVzIHsgcG9zaXRpb246IHJlbGF0aXZlOyBjdXJzb3I6IHBvaW50ZXI7IG1heC13aWR0aDogMTI3cHg7IHdpZHRoOiAxMDAlOyBwYWRkaW5nLXJpZ2h0OiAxM3B4OyBwYWRkaW5nLWxlZnQ6IDdweDsgfVxuXG5AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiAxMzY1cHgpIHsgLnNfaGVhZGVyX3Bob25lcyB7IG1heC13aWR0aDogMTEzcHg7IH0gfVxuXG5AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA5OTlweCkgeyAuc19oZWFkZXJfcGhvbmVzIHsgbWF4LXdpZHRoOiAxMDAlOyB0ZXh0LWFsaWduOiBjZW50ZXI7IHBhZGRpbmc6IDA7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgfSB9XG5cbi5zX2hlYWRlcl9waG9uZXM6OmFmdGVyIHsgcG9zaXRpb246IGFic29sdXRlOyByaWdodDogMDsgdG9wOiA0cHg7IGNvbnRlbnQ6ICcnOyBib3JkZXI6IHNvbGlkICNGRjE1MUY7IGJvcmRlci13aWR0aDogMCAxcHggMXB4IDA7IHBhZGRpbmc6IDJweDsgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpOyB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDsgfVxuXG5AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA5OTlweCkgeyAuc19oZWFkZXJfcGhvbmVzOjphZnRlciB7IGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4uc19oZWFkZXJfcGhvbmVzIGEgeyBjb2xvcjogI2ViMWQyNTsgZm9udC1zaXplOiAxNnB4OyBmb250LXdlaWdodDogNTAwOyBmb250LWZhbWlseTogJ0V4byAyJywgc2Fucy1zZXJpZjsgZGlzcGxheTogYmxvY2s7IHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0OyB9XG5cbi5zX2hlYWRlcl9waG9uZXMgYTpob3ZlciB7IGNvbG9yOiAjY2YxMzFjOyB9XG5cbkBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDEzNjVweCkgeyAuc19oZWFkZXJfcGhvbmVzIGEgeyBmb250LXNpemU6IDE0cHg7IH0gfVxuXG5AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiAxMTk5cHgpIHsgLnNfaGVhZGVyX3Bob25lcyBhIHsgZm9udC1zaXplOiAxMnB4OyB9IH1cblxuQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogOTk5cHgpIHsgLnNfaGVhZGVyX3Bob25lcyBhIHsgZm9udC1zaXplOiAxNnB4OyBtYXgtd2lkdGg6IDExMHB4OyB3aWR0aDogMTAwJTsgZGlzcGxheTogaW5saW5lOyBtYXJnaW4tcmlnaHQ6IDM1cHg7IH0gfVxuXG5AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA0NzlweCkgeyAuc19oZWFkZXJfcGhvbmVzIGEgeyBtYXgtd2lkdGg6IDEwMCU7IGRpc3BsYXk6IGJsb2NrOyBtYXJnaW46IDA7IHRleHQtYWxpZ246IGNlbnRlcjsgbWFyZ2luLWJvdHRvbTogMTZweDsgfSB9XG5cbi5zX2hlYWRlcl9waG9uZXNfbGFuZyB7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgd2lkdGg6IDEwMCU7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgb3BhY2l0eTogMDsgbGVmdDogLTEwMDAwMHB4OyB0b3A6IDEwMCU7IHBhZGRpbmctdG9wOiA1cHg7IHRyYW5zaXRpb246IG9wYWNpdHkgMC4yNXMgbGluZWFyLCBsZWZ0IDBzIGxpbmVhciAwLjI1czsgYmFja2dyb3VuZDogI2ZmZjsgcGFkZGluZy1sZWZ0OiA3cHg7IHotaW5kZXg6IDI7IHBhZGRpbmctcmlnaHQ6IDEzcHg7IHBhZGRpbmctYm90dG9tOiAxMHB4OyB9XG5cbkBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDExOTlweCkgeyAuc19oZWFkZXJfcGhvbmVzX2xhbmcgeyBwYWRkaW5nLXRvcDogMDsgfSB9XG5cbkBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDk5OXB4KSB7IC5zX2hlYWRlcl9waG9uZXNfbGFuZyB7IHBvc2l0aW9uOiBzdGF0aWM7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgbGVmdDogdW5zZXQ7IHRvcDogdW5zZXQ7IHBhZGRpbmc6IDA7IG9wYWNpdHk6IDE7IG1heC13aWR0aDogdW5zZXQ7IHdpZHRoOiBhdXRvOyB9IH1cblxuLnNfaGVhZGVyX3Bob25lc19sYW5nIGEgeyBwYWRkaW5nLXRvcDogMTBweDsgfVxuXG4uc19oZWFkZXJfcGhvbmVzX2xhbmcgYTpsYXN0LW9mLXR5cGUgeyBwYWRkaW5nLWJvdHRvbTogMDsgfVxuXG5AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA5OTlweCkgeyAuc19oZWFkZXJfcGhvbmVzX2xhbmcgYSB7IHBhZGRpbmc6IDA7IH1cbiAgLnNfaGVhZGVyX3Bob25lc19sYW5nIGE6bGFzdC1vZi10eXBlIHsgbWFyZ2luLXJpZ2h0OiAwOyB9IH1cblxuQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogNDc5cHgpIHsgLnNfaGVhZGVyX3Bob25lc19sYW5nIGE6bGFzdC1vZi10eXBlIHsgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG5cbi5zX2hlYWRlcl9waG9uZXMtLW9wZW4gLnNfaGVhZGVyX3Bob25lc19sYW5nIHsgb3BhY2l0eTogMTsgbGVmdDogMDsgfVxuXG4uc19oZWFkZXJfcGhvbmVzLS1vcGVuOjphZnRlciB7IHRyYW5zZm9ybTogcm90YXRlKC0xMzVkZWcpOyB0b3A6IDZweDsgfVxuXG5AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA5OTlweCkgeyAuc19oZWFkZXJfYnVyZ2VyIHsgcG9zaXRpb246IHJlbGF0aXZlOyB6LWluZGV4OiAxNTsgY3Vyc29yOiBwb2ludGVyOyB3aWR0aDogMjZweDsgaGVpZ2h0OiAxNnB4OyB9XG4gIC5zX2hlYWRlcl9idXJnZXJfbGluZSB7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgbGVmdDogMDsgd2lkdGg6IDEwMCU7IGhlaWdodDogMnB4OyBiYWNrZ3JvdW5kOiAjRkYxNTFGOyB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDsgfVxuICAuc19oZWFkZXJfYnVyZ2VyX2xpbmUtLW9uZSB7IHRvcDogMDsgfVxuICAuc19oZWFkZXJfYnVyZ2VyX2xpbmUtLXR3byB7IHRvcDogN3B4OyB9XG4gIC5zX2hlYWRlcl9idXJnZXJfbGluZS0tdGhyZWUgeyB0b3A6IDE0cHg7IH1cbiAgLnNfaGVhZGVyX2J1cmdlci0tb3BlbiAuc19oZWFkZXJfYnVyZ2VyX2xpbmUtLW9uZSB7IHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTsgdG9wOiA1MCU7IH1cbiAgLnNfaGVhZGVyX2J1cmdlci0tb3BlbiAuc19oZWFkZXJfYnVyZ2VyX2xpbmUtLXR3byB7IG9wYWNpdHk6IDA7IH1cbiAgLnNfaGVhZGVyX2J1cmdlci0tb3BlbiAuc19oZWFkZXJfYnVyZ2VyX2xpbmUtLXRocmVlIHsgdG9wOiA1MCU7IHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7IH0gfVxuXG4uc19oZXJvIHsgd2lkdGg6IDEwMCU7IH1cblxuLnNfaGVyb19fY29udGVudCB7IGRpc3BsYXk6IGZsZXg7IGFsaWduLWl0ZW1zOiBjZW50ZXI7IHBhZGRpbmc6IDAgMjA1cHg7IG1pbi1oZWlnaHQ6IDcxMHB4OyBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogMTM2NXB4KSB7IC5zX2hlcm9fX2NvbnRlbnQgeyBwYWRkaW5nOiAwIDg1cHg7IG1pbi1oZWlnaHQ6IDQ0MHB4OyB9IH1cblxuQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogMTE5OXB4KSB7IC5zX2hlcm9fX2NvbnRlbnQgeyBtaW4taGVpZ2h0OiAzNzVweDsgfSB9XG5cbkBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDk5OXB4KSB7IC5zX2hlcm9fX2NvbnRlbnQgeyBwYWRkaW5nOiAwIDM1cHg7IH0gfVxuXG5AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA3NjVweCkgeyAuc19oZXJvX19jb250ZW50IHsgcGFkZGluZzogMDsgfSB9XG5cbkBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDYzOXB4KSB7IC5zX2hlcm9fX2NvbnRlbnQgeyBtaW4taGVpZ2h0OiA1MjBweDsgfSB9XG5cbkBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDQ3OXB4KSB7IC5zX2hlcm9fX2NvbnRlbnQgeyBtaW4taGVpZ2h0OiAzNzVweDsgfSB9XG5cbi5zX2hlcm9fX3NsaWRlIHsgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi5zX2hlcm9fX2ltYWdlLS1iZyBpbWcgeyBoZWlnaHQ6IDEwMCU7IHdpZHRoOiAxMDAlOyBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogMDsgbGVmdDogMDsgb2JqZWN0LWZpdDogY292ZXI7IH1cblxuLnNfaGVyb19fd3JhcCB7IGNvbG9yOiB3aGl0ZTsgbWF4LXdpZHRoOiA1NDBweDsgfVxuXG4uc19oZXJvX190aXRsZSB7IG1hcmdpbi1ib3R0b206IDMwcHg7IH1cblxuQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogMTM2NXB4KSB7IC5zX2hlcm9fX3RpdGxlIHsgbWFyZ2luLWJvdHRvbTogNDBweDsgbWF4LXdpZHRoOiAzNjVweDsgfSB9XG5cbkBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDEyMDBweCkgeyAuc19oZXJvX190aXRsZSB7IG1hcmdpbi1ib3R0b206IDM1cHg7IG1heC13aWR0aDogMzEwcHg7IH0gfVxuXG5AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA5OTlweCkgeyAuc19oZXJvX190aXRsZSB7IG1hcmdpbi1ib3R0b206IDI1cHg7IH0gfVxuXG5AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA3NjdweCkgeyAuc19oZXJvX190aXRsZSB7IG1hcmdpbi1ib3R0b206IDMwcHg7IH0gfVxuXG5AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA2MzlweCkgeyAuc19oZXJvX190aXRsZSB7IG1heC13aWR0aDogMjcwcHg7IH0gfVxuXG5AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA0MTlweCkgeyAuc19oZXJvX190aXRsZSB7IG1heC13aWR0aDogMjI1cHg7IH0gfVxuXG4uc19oZXJvX190aXRsZSBoMSB7IGNvbG9yOiAjZmZmOyB9XG5cbi5zX2hlcm9fX3RpdGxlIGgyIHsgY29sb3I6ICNmZmY7IGZvbnQtc2l6ZTogNzJweDsgfVxuXG5AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiAxMzY1cHgpIHsgLnNfaGVyb19fdGl0bGUgaDIgeyBmb250LXNpemU6IDQ4cHg7IH0gfVxuXG5AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiAxMTk5cHgpIHsgLnNfaGVyb19fdGl0bGUgaDIgeyBmb250LXNpemU6IDQwcHg7IH0gfVxuXG5AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA2MzlweCkgeyAuc19oZXJvX190aXRsZSBoMiB7IGZvbnQtc2l6ZTogMzZweDsgfSB9XG5cbkBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDQ3OXB4KSB7IC5zX2hlcm9fX3RpdGxlIGgyIHsgZm9udC1zaXplOiAzMHB4OyB9IH1cblxuLnNfaGVyb19fdGV4dCB7IG1hcmdpbi1ib3R0b206IDcwcHg7IG1heC13aWR0aDogNTEwcHg7IH1cblxuQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogMTM2NXB4KSB7IC5zX2hlcm9fX3RleHQgeyBtYXJnaW4tYm90dG9tOiA1MHB4OyBtYXgtd2lkdGg6IDM5MHB4OyB9IH1cblxuQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogMTIwMHB4KSB7IC5zX2hlcm9fX3RleHQgeyBtYXJnaW4tYm90dG9tOiAzNXB4OyBtYXgtd2lkdGg6IDM4MHB4OyB9IH1cblxuQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogOTk5cHgpIHsgLnNfaGVyb19fdGV4dCB7IG1hcmdpbi1ib3R0b206IDYwcHg7IG1heC13aWR0aDogMzE1cHg7IH0gfVxuXG5AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA3NjdweCkgeyAuc19oZXJvX190ZXh0IHsgbWFyZ2luLWJvdHRvbTogNDBweDsgfSB9XG5cbkBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDYzOXB4KSB7IC5zX2hlcm9fX3RleHQgeyBtYXgtd2lkdGg6IDMwMHB4OyB9IH1cblxuQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogNDE5cHgpIHsgLnNfaGVyb19fdGV4dCB7IG1heC13aWR0aDogMjU1cHg7IH0gfVxuXG4uc19oZXJvX190ZXh0IHAgeyBmb250LXNpemU6IDI0cHg7IG1heC1oZWlnaHQ6IDdlbTsgb3ZlcmZsb3c6IGhpZGRlbjsgY29sb3I6ICNmZmY7IH1cblxuQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogMTM2NXB4KSB7IC5zX2hlcm9fX3RleHQgcCB7IGZvbnQtc2l6ZTogMjBweDsgfSB9XG5cbkBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDExOTlweCkgeyAuc19oZXJvX190ZXh0IHAgeyBmb250LXNpemU6IDE4cHg7IH0gfVxuXG5AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA5OTlweCkgeyAuc19oZXJvX190ZXh0IHAgeyBmb250LXNpemU6IDE2cHg7IH0gfVxuXG5AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA2MzlweCkgeyAuc19oZXJvX190ZXh0IHAgeyBmb250LXNpemU6IDE0cHg7IH0gfVxuXG5AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA0MTlweCkgeyAuc19oZXJvX190ZXh0IHAgeyBmb250LXNpemU6IDEycHg7IH0gfVxuXG4uc19oZXJvX19idG4geyBtYXJnaW4tYm90dG9tOiAyNXB4OyB9XG5cbi5zX2hlcm9fX2Fib3V0IHsgbWFyZ2luOiAwIGF1dG87IG1heC13aWR0aDogMTAwJTsgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi5zX2hlcm9fX3NsaWRlciAuc2xpY2stZG90cyB7IGRpc3BsYXk6IGZsZXg7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgYm90dG9tOiAyMHB4OyBsZWZ0OiA1MCU7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTsgei1pbmRleDogMTA7IH1cblxuLnNfaGVyb19fc2xpZGVyIC5zbGljay1kb3RzIGxpIHsgZGlzcGxheTogaW5saW5lLWJsb2NrOyB3aWR0aDogMTBweDsgaGVpZ2h0OiAxMHB4OyBwb3NpdGlvbjogcmVsYXRpdmU7IG1hcmdpbi1yaWdodDogMTBweDsgfVxuXG4uc19oZXJvX19zbGlkZXIgLnNsaWNrLWRvdHMgbGk6bGFzdC1jaGlsZCB7IG1hcmdpbi1yaWdodDogMDsgfVxuXG5AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA5OTlweCkgeyAuc19oZXJvX19zbGlkZXIgLnNsaWNrLWRvdHMgbGkgeyB3aWR0aDogNnB4OyBoZWlnaHQ6IDZweDsgfSB9XG5cbi5zX2hlcm9fX3NsaWRlciAuc2xpY2stZG90cyBidXR0b24geyBjdXJzb3I6IHBvaW50ZXI7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgd2lkdGg6IDEwMCU7IGhlaWdodDogMTAwJTsgZm9udC1zaXplOiAwOyBiYWNrZ3JvdW5kLWNvbG9yOiAjQzBCRkJGOyBib3JkZXI6IDFweCBzb2xpZCAjQzBCRkJGOyB0cmFuc2l0aW9uOiBhbGwgLjJzOyB9XG5cbi5zX2hlcm9fX3NsaWRlciAuc2xpY2stZG90cyAuc2xpY2stYWN0aXZlIGJ1dHRvbiB7IGJhY2tncm91bmQtY29sb3I6ICNGRjE1MUY7IGJvcmRlcjogMXB4IHNvbGlkICNGRjE1MUY7IH1cblxuLnNfaGVyb19fc2xpZGVyIC5zbGljay1hcnJvdyB7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgY3Vyc29yOiBwb2ludGVyOyB0b3A6IDUwJTsgei1pbmRleDogMTsgZm9udC1zaXplOiAwOyBib3JkZXI6IG5vbmU7IGJvcmRlci1sZWZ0OiAycHggc29saWQgI2ZmZjsgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNmZmY7IHdpZHRoOiAyMHB4OyBoZWlnaHQ6IDIwcHg7IGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbkBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDk5OXB4KSB7IC5zX2hlcm9fX3NsaWRlciAuc2xpY2stYXJyb3cgeyBkaXNwbGF5OiBub25lOyB9IH1cblxuLnNfaGVyb19fc2xpZGVyIC5zbGljay1wcmV2IHsgbGVmdDogMTBweDsgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKDQ1ZGVnKTsgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKDQ1ZGVnKTsgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSByb3RhdGUoNDVkZWcpOyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKDQ1ZGVnKTsgfVxuXG4uc19oZXJvX19zbGlkZXIgLnNsaWNrLW5leHQgeyByaWdodDogMTBweDsgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKC0xMzVkZWcpOyAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSByb3RhdGUoLTEzNWRlZyk7IC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKC0xMzVkZWcpOyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKC0xMzVkZWcpOyB9XG5cbi5zX3NlcnZpY2VzIHsgcGFkZGluZzogMTQwcHggMCAyMHB4OyBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbkBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDEzNjVweCkgeyAuc19zZXJ2aWNlcyB7IHBhZGRpbmc6IDkwcHggMCAyMHB4OyB9IH1cblxuQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogOTk5cHgpIHsgLnNfc2VydmljZXMgeyBwYWRkaW5nOiAzNXB4IDAgMjVweDsgfSB9XG5cbi5zX3NlcnZpY2VzLS1leHQgeyBwYWRkaW5nLWJvdHRvbTogNzBweDsgb3ZlcmZsb3c6IGluaXRpYWw7IH1cblxuQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogMTM2NXB4KSB7IC5zX3NlcnZpY2VzLS1leHQgeyBwYWRkaW5nLWJvdHRvbTogMzBweDsgfSB9XG5cbkBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDYzOXB4KSB7IC5zX3NlcnZpY2VzLS1leHQgeyBwYWRkaW5nLWJvdHRvbTogMTBweDsgfSB9XG5cbkBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDk5OXB4KSB7IC5zX3NlcnZpY2VzIC5jb250YWluZXIgeyBwYWRkaW5nOiAwOyB9IH1cblxuLnNfc2VydmljZXNfX2hlYWRlciB7IG1hcmdpbi1ib3R0b206IDEwNXB4OyB9XG5cbkBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDEzNjVweCkgeyAuc19zZXJ2aWNlc19faGVhZGVyIHsgbWFyZ2luLWJvdHRvbTogNzVweDsgfSB9XG5cbkBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDExOTlweCkgeyAuc19zZXJ2aWNlc19faGVhZGVyIHsgbWFyZ2luLWJvdHRvbTogNzBweDsgfSB9XG5cbkBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDk5OXB4KSB7IC5zX3NlcnZpY2VzX19oZWFkZXIgeyBtYXJnaW4tYm90dG9tOiAzMHB4OyB9IH1cblxuQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogNzY3cHgpIHsgLnNfc2VydmljZXNfX2hlYWRlciB7IHBhZGRpbmc6IDAgMjBweDsgfSB9XG5cbi5zX3NlcnZpY2VzX19jb250ZW50IHsgcGFkZGluZy1sZWZ0OiAxODBweDsgfVxuXG5AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiAxMzY1cHgpIHsgLnNfc2VydmljZXNfX2NvbnRlbnQgeyBwYWRkaW5nLWxlZnQ6IDE0NXB4OyB9IH1cblxuQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogMTE5OXB4KSB7IC5zX3NlcnZpY2VzX19jb250ZW50IHsgcGFkZGluZy1sZWZ0OiAxMTBweDsgfSB9XG5cbkBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDk5OXB4KSB7IC5zX3NlcnZpY2VzX19jb250ZW50IHsgcGFkZGluZy1sZWZ0OiAwOyB9IH1cblxuLnNfc2VydmljZXNfX2Jsb2NrIHsgbWFyZ2luLWJvdHRvbTogMTAwcHg7IGFsaWduLWl0ZW1zOiBzdHJldGNoOyB9XG5cbkBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDEzNjVweCkgeyAuc19zZXJ2aWNlc19fYmxvY2sgeyBtYXJnaW4tYm90dG9tOiA4MHB4OyB9IH1cblxuQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogOTk5cHgpIHsgLnNfc2VydmljZXNfX2Jsb2NrIHsgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgbWFyZ2luLWJvdHRvbTogNTBweDsgfSB9XG5cbi5zX3NlcnZpY2VzX19ibG9jazpsYXN0LWNoaWxkIHsgbWFyZ2luLWJvdHRvbTogMzVweDsgfVxuXG5AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiAxMTk5cHgpIHsgLnNfc2VydmljZXNfX2Jsb2NrOmxhc3QtY2hpbGQgeyBtYXJnaW4tYm90dG9tOiA2MHB4OyB9IH1cblxuQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogOTk5cHgpIHsgLnNfc2VydmljZXNfX2Jsb2NrOmxhc3QtY2hpbGQgeyBtYXJnaW4tYm90dG9tOiA1MHB4OyB9IH1cblxuQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogNjM5cHgpIHsgLnNfc2VydmljZXNfX2Jsb2NrOmxhc3QtY2hpbGQgeyBtYXJnaW4tYm90dG9tOiAzNXB4OyB9IH1cblxuLnNfc2VydmljZXNfX2Jsb2NrOm50aC1jaGlsZChldmVuKSB7IGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTsgfVxuXG5AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA5OTlweCkgeyAuc19zZXJ2aWNlc19fYmxvY2s6bnRoLWNoaWxkKGV2ZW4pIHsgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfSB9XG5cbi5zX3NlcnZpY2VzX19ibG9jazpudGgtY2hpbGQoNG4tMykgLnNfc2VydmljZXNfX2JveC0tdGV4dCB7IHBhZGRpbmctcmlnaHQ6IDYwcHg7IH1cblxuLnNfc2VydmljZXNfX2Jsb2NrOm50aC1jaGlsZCg0bi0zKSAuc19zZXJ2aWNlc19fYm94LS10ZXh0OjphZnRlciB7IGhlaWdodDogMTEwcHg7IHdpZHRoOiAzcHg7IHJpZ2h0OiAwOyB0b3A6IDdweDsgfVxuXG5AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiAxMTk5cHgpIHsgLnNfc2VydmljZXNfX2Jsb2NrOm50aC1jaGlsZCg0bi0zKSAuc19zZXJ2aWNlc19fYm94LS10ZXh0OjphZnRlciB7IGhlaWdodDogNjVweDsgfSB9XG5cbkBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDk5OXB4KSB7IC5zX3NlcnZpY2VzX19ibG9jazpudGgtY2hpbGQoNG4tMykgLnNfc2VydmljZXNfX2JveC0tdGV4dCB7IHBhZGRpbmc6IDAgMjVweDsgfVxuICAuc19zZXJ2aWNlc19fYmxvY2s6bnRoLWNoaWxkKDRuLTMpIC5zX3NlcnZpY2VzX19ib3gtLXRleHQ6OmFmdGVyIHsgZGlzcGxheTogbm9uZTsgfSB9XG5cbkBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7IC5zX3NlcnZpY2VzX19ibG9jazpudGgtY2hpbGQoNG4tMykgLnNfc2VydmljZXNfX2JveC0tdGV4dCB7IHBhZGRpbmc6IDAgMjBweDsgfSB9XG5cbi5zX3NlcnZpY2VzX19ibG9jazpudGgtY2hpbGQoNG4tMikgLnNfc2VydmljZXNfX2JveC0tdGV4dCB7IG1heC13aWR0aDogMzIwcHg7IH1cblxuLnNfc2VydmljZXNfX2Jsb2NrOm50aC1jaGlsZCg0bi0yKSAuc19zZXJ2aWNlc19fYm94LS10ZXh0IGltZyB7IGxlZnQ6IDA7IH1cblxuQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogMTM2NXB4KSB7IC5zX3NlcnZpY2VzX19ibG9jazpudGgtY2hpbGQoNG4tMikgLnNfc2VydmljZXNfX2JveC0tdGV4dCB7IHBhZGRpbmctcmlnaHQ6IDQwcHg7IG1heC13aWR0aDogaW5pdGlhbDsgfSB9XG5cbkBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDExOTlweCkgeyAuc19zZXJ2aWNlc19fYmxvY2s6bnRoLWNoaWxkKDRuLTIpIC5zX3NlcnZpY2VzX19ib3gtLXRleHQgeyBtYXgtd2lkdGg6IDI4MHB4OyB9XG4gIC5zX3NlcnZpY2VzX19ibG9jazpudGgtY2hpbGQoNG4tMikgLnNfc2VydmljZXNfX2JveC0tdGV4dCBpbWcgeyBsZWZ0OiAtMTIwcHg7IH0gfVxuXG5AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA5OTlweCkgeyAuc19zZXJ2aWNlc19fYmxvY2s6bnRoLWNoaWxkKDRuLTIpIC5zX3NlcnZpY2VzX19ib3gtLXRleHQgeyBtYXgtd2lkdGg6IDEwMCU7IHBhZGRpbmc6IDA7IH1cbiAgLnNfc2VydmljZXNfX2Jsb2NrOm50aC1jaGlsZCg0bi0yKSAuc19zZXJ2aWNlc19fYm94LS10ZXh0IGltZyB7IGxlZnQ6IGluaXRpYWw7IH0gfVxuXG4uc19zZXJ2aWNlc19fYmxvY2s6bnRoLWNoaWxkKDRuLTIpIC5zX3NlcnZpY2VzX19ib3gtLXRleHQ6OmFmdGVyIHsgd2lkdGg6IDExMHB4OyBoZWlnaHQ6IDNweDsgdG9wOiAxMHB4OyByaWdodDogY2FsYyggMTAwJSArIDcwcHgpOyB9XG5cbkBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDEzNjVweCkgeyAuc19zZXJ2aWNlc19fYmxvY2s6bnRoLWNoaWxkKDRuLTIpIC5zX3NlcnZpY2VzX19ib3gtLXRleHQ6OmFmdGVyIHsgcmlnaHQ6IGNhbGMoIDEwMCUgKyAzNXB4KTsgfSB9XG5cbkBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDExOTlweCkgeyAuc19zZXJ2aWNlc19fYmxvY2s6bnRoLWNoaWxkKDRuLTIpIC5zX3NlcnZpY2VzX19ib3gtLXRleHQ6OmFmdGVyIHsgd2lkdGg6IDY1cHg7IHJpZ2h0OiBjYWxjKCAxMDAlICsgNDBweCk7IH0gfVxuXG5AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA5OTlweCkgeyAuc19zZXJ2aWNlc19fYmxvY2s6bnRoLWNoaWxkKDRuLTIpIC5zX3NlcnZpY2VzX19ib3gtLXRleHQgeyBwYWRkaW5nOiAwIDI1cHg7IH1cbiAgLnNfc2VydmljZXNfX2Jsb2NrOm50aC1jaGlsZCg0bi0yKSAuc19zZXJ2aWNlc19fYm94LS10ZXh0OjphZnRlciB7IGRpc3BsYXk6IG5vbmU7IH0gfVxuXG5AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA3NjdweCkgeyAuc19zZXJ2aWNlc19fYmxvY2s6bnRoLWNoaWxkKDRuLTIpIC5zX3NlcnZpY2VzX19ib3gtLXRleHQgeyBwYWRkaW5nOiAwIDIwcHg7IH0gfVxuXG5AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA5OTlweCkgeyAuc19zZXJ2aWNlc19fYmxvY2s6bnRoLWNoaWxkKDRuLTIpIC5zX3NlcnZpY2VzX19ib3gtLWltZyB7IG1heC13aWR0aDogMTAwJTsgfSB9XG5cbi5zX3NlcnZpY2VzX19ibG9jazpudGgtY2hpbGQoNG4gLSAxKSAuc19zZXJ2aWNlc19fYm94LS10ZXh0OjphZnRlciB7IGhlaWdodDogMTEwcHg7IHdpZHRoOiAzcHg7IHRvcDogN3B4OyByaWdodDogY2FsYyggMTAwJSArIDc1cHgpOyB9XG5cbkBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDEzNjVweCkgeyAuc19zZXJ2aWNlc19fYmxvY2s6bnRoLWNoaWxkKDRuIC0gMSkgLnNfc2VydmljZXNfX2JveC0tdGV4dDo6YWZ0ZXIgeyByaWdodDogY2FsYyggMTAwJSArIDgwcHgpOyB9IH1cblxuQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogMTE5OXB4KSB7IC5zX3NlcnZpY2VzX19ibG9jazpudGgtY2hpbGQoNG4gLSAxKSAuc19zZXJ2aWNlc19fYm94LS10ZXh0IHsgcGFkZGluZy1sZWZ0OiA2NXB4OyB9XG4gIC5zX3NlcnZpY2VzX19ibG9jazpudGgtY2hpbGQoNG4gLSAxKSAuc19zZXJ2aWNlc19fYm94LS10ZXh0OjphZnRlciB7IGhlaWdodDogNjVweDsgcmlnaHQ6IGNhbGMoIDEwMCUgLSA1cHgpOyB9IH1cblxuQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogOTk5cHgpIHsgLnNfc2VydmljZXNfX2Jsb2NrOm50aC1jaGlsZCg0biAtIDEpIC5zX3NlcnZpY2VzX19ib3gtLXRleHQgeyBwYWRkaW5nOiAwIDI1cHg7IG1heC13aWR0aDogMTAwJTsgfVxuICAuc19zZXJ2aWNlc19fYmxvY2s6bnRoLWNoaWxkKDRuIC0gMSkgLnNfc2VydmljZXNfX2JveC0tdGV4dDo6YWZ0ZXIgeyBkaXNwbGF5OiBub25lOyB9IH1cblxuQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogNzY3cHgpIHsgLnNfc2VydmljZXNfX2Jsb2NrOm50aC1jaGlsZCg0biAtIDEpIC5zX3NlcnZpY2VzX19ib3gtLXRleHQgeyBwYWRkaW5nOiAwIDIwcHg7IH0gfVxuXG5AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA5OTlweCkgeyAuc19zZXJ2aWNlc19fYmxvY2s6bnRoLWNoaWxkKDRuIC0gMSkgLnNfc2VydmljZXNfX2JveC0taW1nIHsgbWF4LXdpZHRoOiAxMDAlOyBwYWRkaW5nOiAwOyB9IH1cblxuLnNfc2VydmljZXNfX2Jsb2NrOm50aC1jaGlsZCg0bikgLnNfc2VydmljZXNfX2JveC0tdGV4dDo6YWZ0ZXIgeyB3aWR0aDogMTEwcHg7IGhlaWdodDogM3B4OyB0b3A6IC0xMHB4OyBsZWZ0OiBjYWxjKCAxMDAlIC0gNzVweCk7IH1cblxuQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogMTM2NXB4KSB7IC5zX3NlcnZpY2VzX19ibG9jazpudGgtY2hpbGQoNG4pIC5zX3NlcnZpY2VzX19ib3gtLXRleHQ6OmFmdGVyIHsgcmlnaHQ6IGNhbGMoIDEwMCUgKyA4MHB4KTsgfSB9XG5cbkBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDExOTlweCkgeyAuc19zZXJ2aWNlc19fYmxvY2s6bnRoLWNoaWxkKDRuKSAuc19zZXJ2aWNlc19fYm94LS10ZXh0OjphZnRlciB7IHdpZHRoOiA2NXB4OyByaWdodDogY2FsYyggMTAwJSAtIDVweCk7IHRvcDogN3B4OyB9IH1cblxuQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogOTk5cHgpIHsgLnNfc2VydmljZXNfX2Jsb2NrOm50aC1jaGlsZCg0bikgLnNfc2VydmljZXNfX2JveC0tdGV4dCB7IHBhZGRpbmc6IDAgMjVweDsgbWF4LXdpZHRoOiAxMDAlOyB9XG4gIC5zX3NlcnZpY2VzX19ibG9jazpudGgtY2hpbGQoNG4pIC5zX3NlcnZpY2VzX19ib3gtLXRleHQ6OmFmdGVyIHsgZGlzcGxheTogbm9uZTsgfSB9XG5cbkBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7IC5zX3NlcnZpY2VzX19ibG9jazpudGgtY2hpbGQoNG4pIC5zX3NlcnZpY2VzX19ib3gtLXRleHQgeyBwYWRkaW5nOiAwIDIwcHg7IH0gfVxuXG5AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA5OTlweCkgeyAuc19zZXJ2aWNlc19fYmxvY2s6bnRoLWNoaWxkKDRuKSAuc19zZXJ2aWNlc19fYm94LS1pbWcgeyBtYXgtd2lkdGg6IDEwMCU7IHBhZGRpbmc6IDA7IH0gfVxuXG4uc19zZXJ2aWNlc19fYm94IHsgd2lkdGg6IDEwMCU7IH1cblxuLnNfc2VydmljZXNfX2JveC0taW1nIHsgbWF4LXdpZHRoOiA1MTBweDsgfVxuXG5AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiAxMzY1cHgpIHsgLnNfc2VydmljZXNfX2JveC0taW1nIHsgbWF4LXdpZHRoOiA0MTBweDsgfSB9XG5cbkBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDExOTlweCkgeyAuc19zZXJ2aWNlc19fYm94LS1pbWcgeyBtYXgtd2lkdGg6IDI4MHB4OyB9IH1cblxuLnNfc2VydmljZXNfX2JveC0taW1nIGltZyB7IG1heC13aWR0aDogMTAwJTsgZGlzcGxheTogYmxvY2s7IH1cblxuQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogOTk5cHgpIHsgLnNfc2VydmljZXNfX2JveC0taW1nIGltZyB7IHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDEwMCU7IG9iamVjdC1maXQ6IGNvdmVyOyB9IH1cblxuQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogOTk5cHgpIHsgLnNfc2VydmljZXNfX2JveC0taW1nOm50aC1jaGlsZChuKSB7IG1heC13aWR0aDogMTAwJTsgaGVpZ2h0OiAzMjBweDsgbWFyZ2luLWJvdHRvbTogMjBweDsgfSB9XG5cbi5zX3NlcnZpY2VzX19ib3gtLXRleHQgeyBwb3NpdGlvbjogcmVsYXRpdmU7IG1heC13aWR0aDogNDEwcHg7IH1cblxuQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogMTM2NXB4KSB7IC5zX3NlcnZpY2VzX19ib3gtLXRleHQgeyBtYXgtd2lkdGg6IDMyMHB4OyB9IH1cblxuQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogOTk5cHgpIHsgLnNfc2VydmljZXNfX2JveC0tdGV4dCB7IHBhZGRpbmc6IDAgMjVweDsgfSB9XG5cbkBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDk5OXB4KSB7IC5zX3NlcnZpY2VzX19ib3gtLXRleHQ6bnRoLWNoaWxkKG4pIHsgbWF4LXdpZHRoOiAxMDAlOyB9IH1cblxuLnNfc2VydmljZXNfX2JveC0tdGV4dDo6YWZ0ZXIgeyBjb250ZW50OiBcIlwiOyBwb3NpdGlvbjogYWJzb2x1dGU7IGRpc3BsYXk6IGJsb2NrOyBiYWNrZ3JvdW5kLWNvbG9yOiAjRkYxNTFGOyBib3JkZXItcmFkaXVzOiA1MHB4OyB9XG5cbi5zX3NlcnZpY2VzX19ib3gtLXRleHQgaDMgeyBtYXJnaW4tYm90dG9tOiAyNXB4OyB9XG5cbi5zX3NlcnZpY2VzX19ib3gtLXRleHQgcCB7IGxpbmUtaGVpZ2h0OiAxLjU7IG1hcmdpbi1ib3R0b206IDI1cHg7IH1cblxuLnNfc2VydmljZXNfX2JveC0tdGV4dCBzcGFuIHsgY29sb3I6ICNGRjE1MUY7IGZvbnQtc2l6ZTogMjRweDsgfVxuXG5AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA5OTlweCkgeyAuc19zZXJ2aWNlc19fYm94LS10ZXh0IHAsIC5zX3NlcnZpY2VzX19ib3gtLXRleHQgaDMgeyBtYXgtd2lkdGg6IDQ3MHB4OyB9IH1cblxuQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogMTE5OXB4KSB7IC5zX3NlcnZpY2VzX19ib3gtLXRleHQgaW1nIHsgbWF4LXdpZHRoOiA4MHB4OyB9IH1cblxuQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogOTk5cHgpIHsgLnNfc2VydmljZXNfX2JveC0tdGV4dCBpbWcgeyByaWdodDogMzBweDsgfSB9XG5cbkBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7IC5zX3NlcnZpY2VzX19ib3gtLXRleHQgaW1nIHsgbWF4LXdpZHRoOiA1NXB4OyB9IH1cblxuLnNfc2VydmljZXNfX2xlYXJuIHsgbWF4LXdpZHRoOiAzMjBweDsgbWFyZ2luLWxlZnQ6IGF1dG87IG1hcmdpbi1yaWdodDogODBweDsgfVxuXG5AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiAxMzY1cHgpIHsgLnNfc2VydmljZXNfX2xlYXJuIHsgbWF4LXdpZHRoOiAyODBweDsgfSB9XG5cbkBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDk5OXB4KSB7IC5zX3NlcnZpY2VzX19sZWFybiB7IG1heC13aWR0aDogMjIwcHg7IG1hcmdpbi1yaWdodDogNDBweDsgfSB9XG5cbi5zX3NlcnZpY2VzX19sZWFybiBhIHsgY29sb3I6ICNGRjE1MUY7IGZvbnQtc2l6ZTogMzZweDsgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IGZvbnQtd2VpZ2h0OiBib2xkOyB0cmFuc2l0aW9uOiBhbGwgLjJzOyB9XG5cbi5zX3NlcnZpY2VzX19sZWFybiBhOmhvdmVyIHsgdGV4dC1kZWNvcmF0aW9uOiBub25lOyBjb2xvcjogI2NmMTMxYzsgfVxuXG5AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiAxMzY1cHgpIHsgLnNfc2VydmljZXNfX2xlYXJuIGEgeyBmb250LXNpemU6IDMwcHg7IH0gfVxuXG5AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA5OTlweCkgeyAuc19zZXJ2aWNlc19fbGVhcm4gYSB7IGZvbnQtc2l6ZTogMjRweDsgfSB9XG5cbi5zX3BhcmsgeyBwYWRkaW5nLWJvdHRvbTogMTAwcHg7IH1cblxuLnNfcGFya19faGVhZGVyIHsgbWFyZ2luLWJvdHRvbTogODBweDsgfVxuXG5AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA5OTlweCkgeyAuc19wYXJrX19oZWFkZXIgeyBtYXJnaW4tYm90dG9tOiAyNXB4OyBwYWRkaW5nOiAwIDIwcHg7IH0gfVxuXG4uc19wYXJrX19kZXNjciB7IGNvbHVtbi1jb3VudDogMjsgbWFyZ2luOiAwIC0yMHB4IDkwcHg7IH1cblxuQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogOTk5cHgpIHsgLnNfcGFya19fZGVzY3IgeyBjb2x1bW4tY291bnQ6IDE7IHBhZGRpbmc6IDAgMjVweDsgbWFyZ2luOiAwIDAgNTBweDsgfSB9XG5cbi5zX3BhcmtfX2Rlc2NyLS1taW4geyBtYXJnaW4tYm90dG9tOiA0MHB4OyB9XG5cbkBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDk5OXB4KSB7IC5zX3BhcmtfX2Rlc2NyLS1taW4geyBwYWRkaW5nOiAwOyB9IH1cblxuLnNfcGFya19fZGVzY3IgcCB7IG1hcmdpbi1ib3R0b206IDIwcHg7IHBhZGRpbmc6IDAgMjBweDsgfVxuXG4uc19wYXJrX19kZXNjciBwOmxhc3QtY2hpbGQgeyBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5zX3BhcmtfX3dyYXAgeyBtYXJnaW4tYm90dG9tOiAxNTBweDsgfVxuXG4uc19wYXJrX193cmFwOmxhc3QtY2hpbGQgeyBtYXJnaW4tYm90dG9tOiAxMDBweDsgfVxuXG5AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiAxMTk5cHgpIHsgLnNfcGFya19fd3JhcDpsYXN0LWNoaWxkIHsgbWFyZ2luLWJvdHRvbTogNTBweDsgfSB9XG5cbkBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDk5OXB4KSB7IC5zX3BhcmtfX3dyYXAgeyBtYXJnaW4tYm90dG9tOiA4MHB4OyB9IH1cblxuQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogNjM5cHgpIHsgLnNfcGFya19fd3JhcCB7IG1hcmdpbi1ib3R0b206IDYwcHg7IH0gfVxuXG4uc19wYXJrX19jb250YWN0IHsgZm9udC13ZWlnaHQ6IGJvbGQ7IG1heC13aWR0aDogNjEwcHg7IGZvbnQtc2l6ZTogMjRweDsgfVxuXG5AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA5OTlweCkgeyAuc19wYXJrX19jb250YWN0IHsgcGFkZGluZzogMCAyNXB4OyBtYXgtd2lkdGg6IDEwMCU7IGZvbnQtc2l6ZTogMjBweDsgZm9udC1zaXplOiAyMHB4OyB9IH1cblxuQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogNjM5cHgpIHsgLnNfcGFya19fY29udGFjdCB7IGRpc3BsYXk6IGZsZXg7IGZsZXgtd3JhcDogd3JhcDsgfSB9XG5cbi5zX3BhcmtfX2NvbnRhY3QgcCB7IGZvbnQtd2VpZ2h0OiBpbmhlcml0OyBmb250LXNpemU6IGluaGVyaXQ7IG1hcmdpbi1ib3R0b206IDI1cHg7IH1cblxuLnNfcGFya19fY29udGFjdCBhIHsgY29sb3I6ICNGRjE1MUY7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgbWFyZ2luLXJpZ2h0OiAyMHB4OyBmb250LXNpemU6IDI0cHg7IG1hcmdpbi1ib3R0b206IDEwcHg7IH1cblxuLnNfZm9vdGVyIHsgYmFja2dyb3VuZC1jb2xvcjogIzNjM2EzYTsgcGFkZGluZzogMzVweCAwOyB9XG5cbkBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDExOTlweCkgeyAuc19mb290ZXIgeyBwYWRkaW5nOiAzMHB4IDA7IH0gfVxuXG5AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA5OTlweCkgeyAuc19mb290ZXIgeyBwYWRkaW5nOiAyMHB4IDA7IH0gfVxuXG4uc19mb290ZXJfX2NvbnRlbnQgeyBhbGlnbi1pdGVtczogY2VudGVyOyB9XG5cbkBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDk5OXB4KSB7IC5zX2Zvb3Rlcl9fY29udGVudCB7IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IGZsZXgtd3JhcDogd3JhcDsganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9IH1cblxuQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogOTk5cHgpIHsgLnNfZm9vdGVyX19saXN0IHsgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuICAuc19mb290ZXJfX2xpc3Q6bnRoLWNoaWxkKDEpIHsgb3JkZXI6IDE7IH1cbiAgLnNfZm9vdGVyX19saXN0Om50aC1jaGlsZCgzKSB7IHRleHQtYWxpZ246IHJpZ2h0OyBwYWRkaW5nLWxlZnQ6IDMwcHg7IG9yZGVyOiAyOyB9XG4gIC5zX2Zvb3Rlcl9fbGlzdDpudGgtY2hpbGQoMikgeyBvcmRlcjogMzsgbWFyZ2luLWJvdHRvbTogMDsgbWF4LXdpZHRoOiAxMDAlOyB3aWR0aDogMTAwJTsgdGV4dC1hbGlnbjogY2VudGVyOyB9IH1cblxuLnNfZm9vdGVyX19saXN0IGxpIHsgY29sb3I6ICNmZmY7IG1hcmdpbi1yaWdodDogMzBweDsgfVxuXG5AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiAxMTk5cHgpIHsgLnNfZm9vdGVyX19saXN0IGxpIHsgZm9udC1zaXplOiAxMnB4OyB9IH1cblxuQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogOTk5cHgpIHsgLnNfZm9vdGVyX19saXN0IGxpIHsgbWFyZ2luLXJpZ2h0OiAxNXB4OyB9IH1cblxuLnNfZm9vdGVyX19saXN0IGxpOmxhc3QtY2hpbGQgeyBtYXJnaW4tcmlnaHQ6IDA7IH1cblxuLnNfZm9vdGVyX19saXN0LS1jb250YWN0cyB7IG1heC13aWR0aDogNDEwcHg7IH1cblxuLnNfZm9vdGVyX19saXN0IGEgeyBjb2xvcjogaW5oZXJpdDsgfVxuXG5AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA2MzlweCkgeyAuc19mb290ZXJfX2xpc3QgeyBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgLnNfZm9vdGVyX19saXN0Om50aC1jaGlsZChuKSB7IG1heC13aWR0aDogaW5pdGlhbDsgfVxuICAuc19mb290ZXJfX2xpc3Q6bnRoLWNoaWxkKDEpIHsgbWF4LXdpZHRoOiAzMDBweDsgfVxuICAuc19mb290ZXJfX2xpc3QgbGkgeyBtYXJnaW4tYm90dG9tOiAxMHB4OyB9IH1cblxuQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogNDgwcHgpIHsgLnNfZm9vdGVyX19saXN0Om50aC1jaGlsZCgzKSB7IHBhZGRpbmctbGVmdDogMDsgfSB9XG5cbi5zX2Zvb3RlciAuem9yZWxpdF9fc2VjdGlvbiB7IHdpZHRoOiBhdXRvOyBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG5AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA5OTlweCkgeyAuc19mb290ZXIgLnpvcmVsaXRfX3NlY3Rpb24geyBvcmRlcjogNDsgfSB9XG5cbi5ob2xkZXIgeyBwb3NpdGlvbjogZml4ZWQ7IGxlZnQ6IDAlOyB0b3A6IDAlOyByaWdodDogMCU7IGJvdHRvbTogMCU7IHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDEwMCU7IGJhY2tncm91bmQtY29sb3I6ICNmZmY7IHotaW5kZXg6IDk5OTsgfVxuXG4ucHJlbG9hZGVyIHsgcG9zaXRpb246IGFic29sdXRlOyB3aWR0aDogMyU7IGhlaWdodDogMCU7IHBhZGRpbmctYm90dG9tOiAzJTsgbGVmdDogNTAlOyB0b3A6IDUwJTsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTUwJSk7IH1cblxuLnByZWxvYWRlciBkaXYgeyBwb3NpdGlvbjogYWJzb2x1dGU7IHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDEwMCU7IGxlZnQ6IDUwJTsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTUwJSk7IG92ZXJmbG93OiBoaWRkZW47IGFuaW1hdGlvbjogYW5pbWF0ZVByZWxvYWRlciAxcyBpbmZpbml0ZSBsaW5lYXI7IHRyYW5zZm9ybS1vcmlnaW46IDUwJSAxMDAlOyB9XG5cbi5wcmVsb2FkZXIgZGl2OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXCI7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgd2lkdGg6IDEwMCU7IGhlaWdodDogMTAwJTsgbGVmdDogNTAlOyB0b3A6IDUwJTsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpOyBib3JkZXI6IDNweCBzb2xpZCAjRkYxNTFGOyBib3JkZXItcmFkaXVzOiA1MCU7IGJveC1zaXppbmc6IGJvcmRlci1ib3g7IH1cblxuLnByZWxvYWRlciBkaXY6bnRoLWNoaWxkKDIpIHsgd2lkdGg6IDYwJTsgaGVpZ2h0OiA2MCU7IHRvcDogMjAlOyBhbmltYXRpb246IGFuaW1hdGVQcmVsb2FkZXIgMC41cyBpbmZpbml0ZSBsaW5lYXI7IH1cblxuQGtleWZyYW1lcyBhbmltYXRlUHJlbG9hZGVyIHsgMCUgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSgtNTAlKSByb3RhdGVaKDBkZWcpOyB9XG4gIDEwMCUgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSgtNTAlKSByb3RhdGVaKDM2MGRlZyk7IH0gfVxuIiwiLy8gQWRkIHlvdXIgc2V0dGluZ3MgaGVyZVxuQGltcG9ydCAnY29uZmlnL3ZhcnMnO1xuXG5cbi5ib2R5LW92ZXJmbG93IHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4vLyAuY29sb3ItbGluZVxuLy8gICBtYWluXG4vLyAgICAgcGFkZGluZy1ib3R0b206IDkwcHhcbi8vICAgZm9vdGVyXG4vLyAgICAgYmFja2dyb3VuZDogI2ZmZlxuLy8gICAgIHBhZGRpbmctdG9wOiAzMHB4XG5tYWluIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAyOyB9XG5mb290ZXIge1xuICB6LWluZGV4OiAzO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbnNlY3Rpb24uc19zZWN0aW9uIHt9XG5cblxuXG5cblxuXG4uY29udGFpbmVyIHtcbiAgbWF4LXdpZHRoOiAxMjMwcHg7XG4gIHdpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwYWRkaW5nOiAwIDE1cHg7XG4gIEBpbmNsdWRlIHIoMTM2NSkge1xuICAgIHBhZGRpbmc6IDAgMjVweDtcbiAgICBtYXgtd2lkdGg6IDEwMTBweDsgfVxuICBAaW5jbHVkZSByKDExOTkpIHtcbiAgICBtYXgtd2lkdGg6IDgwMHB4O1xuICAgIHBhZGRpbmc6IDAgMTZweDsgfVxuICBAaW5jbHVkZSByKDc2Nykge1xuICAgIHBhZGRpbmc6IDAgMThweDsgfSB9XG5cblxuXG4qIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwOyB9XG5cbmJ1dHRvbiwgYSB7XG4gIG91dGxpbmU6IG5vbmU7IH1cblxuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7IH1cblxuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkZXI7IH1cblxudWwsb2wge1xuICBsaXN0LXN0eWxlOiBub25lOyB9XG5cblxuLmZ3IHtcbiAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICBkaXNwbGF5OiAtbXMtZmxleDtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDsgfVxuXG5sYWJlbC5lcnJvciB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAwcHg7XG4gIHJpZ2h0OiAwO1xuICBjb2xvcjogJHJlZDtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBmb250LXdlaWdodDogNDAwO1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgZm9udC1zaXplOiAxMnB4O1xuICB6LWluZGV4OiA1OyB9XG5cblxuLmN1c3RvbS1zZWxlY3Qtd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHNlbGVjdCB7XG4gICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbi5jdXN0b20tc2VsZWN0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHotaW5kZXg6IDU7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5jdXN0b20tc2VsZWN0LXRyaWdnZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMCAxNXB4O1xuICBmb250LXNpemU6IDE2cHg7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGNvbG9yOiAkZGFyaztcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgaGVpZ2h0OiA0NHB4O1xuICBsaW5lLWhlaWdodDogNDRweDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgLy8gb3BhY2l0eTogMC45XG4gIGJvcmRlcjogMXB4IHNvbGlkICM5YjlhOWE7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZm9udC1mYW1pbHk6ICdFeG8gMicsIHNhbnMtc2VyaWY7XG5cbiAgJjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHJpZ2h0OiAxNXB4O1xuICAgIHRvcDogNDklO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSByb3RhdGUoNDVkZWcpO1xuICAgIGJvcmRlcjogc29saWQgJHJlZDtcbiAgICBib3JkZXItd2lkdGg6IDAgMnB4IDJweCAwO1xuICAgIHBhZGRpbmc6IDNweDtcbiAgICB6LWluZGV4OiAxO1xuICAgIHRyYW5zaXRpb246IGFsbCAuMnM7IH0gfVxuXG4uY3VzdG9tLXNlbGVjdC5vcGVuZWQgLmN1c3RvbS1zZWxlY3QtdHJpZ2dlcjphZnRlciB7XG4gIHRyYW5zZm9ybTogcm90YXRlKC0xMzVkZWcpIHRyYW5zbGF0ZVkoMCUpOyB9XG5cblxuLmN1c3RvbS1vcHRpb25zIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgdG9wOiAxMDAlO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgbWluLXdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICB0cmFuc2l0aW9uOiBhbGwgLjRzIGVhc2UtaW4tb3V0O1xuICBvcGFjaXR5OiAwO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTE1cHgpO1xuICBib3gtc2hhZG93OiAwIDAgMjBweCAxcHggcmdiYSgwLCAwLCAwLCAwLjEpO1xuIH0gIC8vIGJveC1zaGFkb3c6IDAgMCAyMHB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMSlcbi5jdXN0b20tc2VsZWN0Lm9wZW5lZCB7XG4gIGJveC1zaGFkb3c6IDAgMCAyMHB4IDJweCByZ2JhKDAsIDAsIDAsIDAuMSk7IH1cbi5jdXN0b20tc2VsZWN0Lm9wZW5lZCAuY3VzdG9tLW9wdGlvbnMge1xuICBvcGFjaXR5OiAxO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICBwb2ludGVyLWV2ZW50czogYWxsO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7IH1cblxuLm9wdGlvbi1ob3ZlcjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiAjZjlmOWY5OyB9XG5cbi5jdXN0b20tb3B0aW9uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3JkZXI6IDFweCBzb2xpZCAjOWI5YTlhO1xuICBib3JkZXItdG9wOiBub25lO1xuICBib3JkZXItYm90dG9tOiBub25lO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAxNnB4O1xuICBjb2xvcjogIzJEMkQyRDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgcGFkZGluZzogMTBweCAxNXB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0cmFuc2l0aW9uOiBhbGwgLjRzIGVhc2UtaW4tb3V0O1xuICAmOmxhc3QtY2hpbGQge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjOWI5YTlhOyB9XG4gIEBpbmNsdWRlIHIoOTk5KSB7XG4gICAgZm9udC1zaXplOiAxNnB4OyB9XG4gICY6aG92ZXIsICYuc2VsZWN0aW9uIHtcbiAgICBiYWNrZ3JvdW5kOiAjRjJGMkYyOyB9IH1cbiIsIkBtaXhpbiByKCRzY3JlZW4pIHtcbiAgQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogJHNjcmVlbisncHgnKSB7XG4gICAgQGNvbnRlbnQ7IH0gfVxuXG5AbWl4aW4gYigkc2NyZWVuKSB7XG4gIEBtZWRpYSBhbGwgYW5kIChtYXgtaGVpZ2h0OiAkc2NyZWVuKydweCcpIHtcbiAgICBAY29udGVudDsgfSB9XG5cbkBtaXhpbiBmb250LWZhY2UoJGZvbnQtZmFtaWx5LCAkZmlsZS1wYXRoLCAkd2VpZ2h0OiBub3JtYWwsICRzdHlsZTogbm9ybWFsLCAkYXNzZXQtcGlwZWxpbmU6IGZhbHNlICkge1xuICBAZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5O1xuICAgIGZvbnQtd2VpZ2h0OiAkd2VpZ2h0O1xuICAgIGZvbnQtc3R5bGU6ICRzdHlsZTtcblxuICAgIEBpZiAkYXNzZXQtcGlwZWxpbmUgPT0gdHJ1ZSB7XG4gICAgICBzcmM6IGZvbnQtdXJsKCcjeyRmaWxlLXBhdGh9LmVvdCcpO1xuICAgICAgc3JjOiBmb250LXVybCgnI3skZmlsZS1wYXRofS5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLCBmb250LXVybCgnI3skZmlsZS1wYXRofS50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyk7IH1cbiAgICBAZWxzZSB7XG4gICAgICBzcmM6IHVybCgnI3skZmlsZS1wYXRofS5lb3QnKTtcbiAgICAgIHNyYzogdXJsKCcjeyRmaWxlLXBhdGh9LmVvdD8jaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksIHVybCgnI3skZmlsZS1wYXRofS50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyk7IH0gfSB9XG4iLCIkd2hpdGU6ICNmZmY7XG4kYmxhY2s6ICMwMDA7XG4kcmVkOiAjRkYxNTFGO1xuXG4kaG92ZXI6ICNjZjEzMWM7XG5cbiRkYXJrOiAjMzczNzM3O1xuXG4kZ3JheTogIzg4ODc4NztcbiIsIkBpbXBvcnQgJ2NvbmZpZy92YXJzJztcblxuXG4uc2l0ZS1idXR0b24ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiAnRXhvIDInLCBzYW5zLXNlcmlmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgdHJhbnNpdGlvbjogYWxsIC4ycztcbiAgZm9udC1zaXplOiAxOHB4O1xuICBib3JkZXI6IG5vbmU7XG4gIEBpbmNsdWRlIHIoMTM2NSkge1xuICAgIGZvbnQtc2l6ZTogMTZweDsgfVxuICBAaW5jbHVkZSByKDExOTkpIHtcbiAgICBmb250LXNpemU6IDE0cHg7IH1cbiAgQGluY2x1ZGUgcig2MzkpIHtcbiAgICBmb250LXNpemU6IDE2cHg7IH1cbiAgJi0tbm9ybWFsIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBjb2xvcjogJHJlZDtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAmOmhvdmVyIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIGNvbG9yOiAkaG92ZXI7IH0gfVxuICAmLS1yZWQge1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHJlZDtcbiAgICBwYWRkaW5nOiAxMnB4IDI0cHg7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBAaW5jbHVkZSByKDc2Nykge1xuICAgICAgcGFkZGluZzogMTBweCAyMHB4OyB9XG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaG92ZXI7IH0gfSB9XG5cblxuIiwiKiB7XG4gICBsaW5lLWhlaWdodDogMTtcbiAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICBmb250LWZhbWlseTogJ0V4byAyJywgc2Fucy1zZXJpZjsgfVxuXG5cblxuaDEsaDIsaDMsaDQsaDUsaDYscCxzcGFuLGxpIHtcbiAgY29sb3I6ICRkYXJrOyB9XG5cbmgxLGgyLGgzLGg0LGg1LGg2IHtcbiAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgbWFyZ2luOiAwO1xuICAgbGluZS1oZWlnaHQ6IDEuMTsgfVxuXG5oMSB7XG4gIGZvbnQtc2l6ZTogNzJweDtcbiAgQGluY2x1ZGUgcigxMzY1KSB7XG4gICAgZm9udC1zaXplOiA0OHB4OyB9XG4gIEBpbmNsdWRlIHIoMTE5OSkge1xuICAgIGZvbnQtc2l6ZTogNDBweDsgfVxuICBAaW5jbHVkZSByKDYzOSkge1xuICAgIGZvbnQtc2l6ZTogMzZweDsgfVxuICBAaW5jbHVkZSByKDQ3OSkge1xuICAgIGZvbnQtc2l6ZTogMzBweDsgfSB9XG5cbmgyIHtcbiAgZm9udC1zaXplOiA0OHB4O1xuICBAaW5jbHVkZSByKDEzNjUpIHtcbiAgICBmb250LXNpemU6IDQwcHg7IH1cbiAgQGluY2x1ZGUgcigxMTk5KSB7XG4gICAgZm9udC1zaXplOiAzMHB4OyB9XG4gIEBpbmNsdWRlIHIoOTk5KSB7XG4gICAgZm9udC1zaXplOiAyOHB4OyB9XG4gIEBpbmNsdWRlIHIoNDc5KSB7XG4gICAgZm9udC1zaXplOiAyNHB4OyB9IH1cblxuaDMge1xuICBmb250LXNpemU6IDI4cHg7XG4gIEBpbmNsdWRlIHIoMTM2NSkge1xuICAgIGZvbnQtc2l6ZTogMjZweDsgfVxuICBAaW5jbHVkZSByKDExOTkpIHtcbiAgICBmb250LXNpemU6IDIycHg7IH1cbiAgQGluY2x1ZGUgcig0NzkpIHtcbiAgICBmb250LXNpemU6IDIwcHg7IH0gfVxuXG5oNCB7XG4gIGZvbnQtc2l6ZTogMjBweDtcbiAgQGluY2x1ZGUgcigxMzY1KSB7XG4gICAgZm9udC1zaXplOiAxNnB4OyB9XG4gIEBpbmNsdWRlIHIoMTE5OSkge1xuICAgIGZvbnQtc2l6ZTogMTJweDsgfSB9XG5cblxuaDUge1xuICBmb250LXNpemU6IDE2cHg7XG4gIEBpbmNsdWRlIHIoMTM2NSkge1xuICAgIGZvbnQtc2l6ZTogMTRweDsgfVxuICBAaW5jbHVkZSByKDQ3OSkge1xuICAgIGZvbnQtc2l6ZTogMTJweDsgfSB9XG5cbmg1IHtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBAaW5jbHVkZSByKDQ3OSkge1xuICAgIGZvbnQtc2l6ZTogMTJweDsgfSB9XG5cblxucCxcbnNwYW4sXG5saSB7XG4gICBtYXJnaW46IDA7XG4gICBmb250LXNpemU6IDE0cHg7XG4gICBmb250LXdlaWdodDogNTAwO1xuICAgbGluZS1oZWlnaHQ6IDEuNWVtO1xuICAgQGluY2x1ZGUgcig0NzkpIHtcbiAgICBmb250LXNpemU6IDEycHg7IH0gfVxuXG5zcGFuLFxuYSB7XG4gICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7IH1cblxuYSB7XG4gIGNvbG9yOiAkZGFyaztcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbi50eXBvZ3JhcGh5IHtcbiAgaDMsXG4gIGg0LFxuICBoNSwge1xuICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gICAgQGluY2x1ZGUgcig5OTkpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7IH0gfVxuICBwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyZW07XG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH0gfVxuICAuYWxpZ25sZWZ0IHtcbiAgICBmbG9hdDogbGVmdDsgfVxuICAuYWxpZ25yaWdodCB7XG4gICAgZmxvYXQ6IHJpZ2h0OyB9XG4gIGltZyB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4iLCIuaW5wdXRzIHtcbiAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgIHdpZHRoOiAxMDAlO1xuICAgaW5wdXQsXG4gICBzZWxlY3Qge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjOWI5YTlhO1xuICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIG1pbi13aWR0aDogMTBweDtcbiAgICAgIG1pbi1oZWlnaHQ6IDEwcHg7XG4gICAgICBwYWRkaW5nOiAxM3B4IDE0cHg7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgLjJzO1xuICAgICAgJjo6cGxhY2Vob2xkZXIge1xuICAgICAgICAgY29sb3I6ICRkYXJrOyB9XG4gICAgICAvLyAmOmZvY3VzXG4gfSAgICAgIC8vICAgIGJvcmRlci1jb2xvcjogJHJlZFxuICAgLmlucHV0LS1lcnJvciB7XG4gICAgICAgICBib3JkZXItY29sb3I6ICRyZWQ7IH1cbiAgIC5lcnJvciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IC0xNXB4OyB9IH1cbiIsIi5zX2JveCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1hcmdpbjogLTEwcHg7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICAgICZfX2Jsb2NrIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICAgICAgICAmLS0xMDAge1xuICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gICAgICAgICAgICAmLS01MCB7XG4gICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDUwJTsgfVxuICAgICAgICAgICAgJi0tMzAge1xuICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAzMy4zMzMzJTsgfSB9IH1cblxuXG4iLCIuc19wb3B1cCB7XG4gICBkaXNwbGF5OiBub25lO1xuICAgcG9zaXRpb246IGZpeGVkO1xuICAgdG9wOiAwO1xuICAgbGVmdDogMDtcbiAgIHJpZ2h0OiAwO1xuICAgYm90dG9tOiAwO1xuICAgei1pbmRleDogNzA7XG4gICB3aWR0aDogMTAwJTtcbiAgIGhlaWdodDogMTAwJTtcbiAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsLjcpO1xuICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICZfX2xheWVyIHtcbiAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgei1pbmRleDogMTsgfVxuICAgJl9fY2xvc2Uge1xuICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDI1cHg7XG4gICAgICByaWdodDogMjVweDtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIEBpbmNsdWRlIHIoNjM5KSB7XG4gICAgICAgICAgICB3aWR0aDogMjVweDtcbiAgICAgICAgICAgIGhlaWdodDogMjVweDtcbiAgICAgICAgICAgIHRvcDogMTVweDtcbiAgICAgICAgICAgIHJpZ2h0OiAxNXB4OyB9XG4gICAgICAmOjpiZWZvcmUsXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICBoZWlnaHQ6IDRweDtcbiAgICAgICAgIGJhY2tncm91bmQ6ICRyZWQ7XG4gICAgICAgICB0b3A6IDQwJTtcbiAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgICBib3JkZXItcmFkaXVzOiAyMHB4OyB9XG4gICAgICAmOjphZnRlciB7XG4gICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpOyB9IH1cbiAgICZfX2NvbnRlbnQge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IDk5NXB4O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgei1pbmRleDogMjtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgcGFkZGluZzogMjBweCA0NXB4O1xuICAgICAgbWFyZ2luOiA0MHB4IDA7XG4gICAgICAmLS1wcm9qZWN0IHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDQ1cHg7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA5MHB4OyB9IH1cbiAgICYtLXByb2plY3Qge1xuICAgICAgJl9fY29udGVudCB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDc1MHB4O1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAgICZfX3NsaWRlciB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMnB4OyB9XG5cbiAgICAgICZfX2ltZyB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBoZWlnaHQ6IDQ1MHB4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgICAgICAgICAgbWF4LWhlaWdodDogMTAwJTsgfSB9XG5cbiAgICAgIC5zbGljay1hcnJvdyB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICBmb250LXNpemU6IDA7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICBib3JkZXItbGVmdDogMnB4IHNvbGlkICRyZWQ7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgJHJlZDtcbiAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBAaW5jbHVkZSByKDk5OSkge1xuICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbiAgICAgIC5zbGljay1wcmV2IHtcbiAgICAgICAgICAgIGxlZnQ6IC00MHB4O1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHJvdGF0ZSg0NWRlZyk7IH1cbiAgICAgIC5zbGljay1uZXh0IHtcbiAgICAgICAgICAgIHJpZ2h0OiAtNDBweDtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSByb3RhdGUoLTEzNWRlZyk7IH0gfSB9XG5cblxuLnNfcG9wdXBfX3RoYW5rcyB7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAmLS13cmFwIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDYwMHB4O1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgICAgICBAaW5jbHVkZSByKDk5OSkge1xuICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA5MCU7IH0gfVxuXG4gICAgICAmLS1ib3gge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICBwYWRkaW5nOiAgODRweDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgYm94LXNoYWRvdzogNnB4IDZweCAxOHB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIEBpbmNsdWRlIHIoMTM2NSkge1xuICAgICAgICAgICAgICAgICAgcGFkZGluZzogIDg1cHggMTAwcHg7IH1cbiAgICAgICAgICAgIEBpbmNsdWRlIHIoOTk5KSB7XG4gICAgICAgICAgICAgICAgICBwYWRkaW5nOiAgNTVweCA3MHB4OyB9XG4gICAgICAgICAgICBAaW5jbHVkZSByKDYzOSkge1xuICAgICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgIHBhZGRpbmc6ICAzMHB4OyB9IH0gfVxuXG5cbiIsIi5hYnNvbHV0ZV9pbWcge1xuICBtYXgtd2lkdGg6IDgwcHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogLTE7XG4gIHJpZ2h0OiAzMHB4O1xuICBib3R0b206IDA7XG4gIEBpbmNsdWRlIHIoOTk5KSB7XG4gICAgbWF4LXdpZHRoOiA2NXB4O1xuICAgIG1heC1oZWlnaHQ6IDcwcHg7IH1cbiAgQGluY2x1ZGUgcig3NjcpIHtcbiAgICBtYXgtd2lkdGg6IDU1cHg7IH1cbiAgJi0tY2VudGVyIHtcbiAgICBsZWZ0OiA2NSU7IH1cbiAgJi0tcmlnaHQge1xuICAgIHJpZ2h0OiAyMHB4O1xuICAgIHRvcDogMzBweDsgfVxuICAmLS1yaWdodDIge1xuICAgIHRvcDogODBweDtcbiAgICByaWdodDogMjAlOyB9IH1cblxuIiwiLnNfaGVhZGVyIHtcbiAgcGFkZGluZzogMzBweCAwIDMwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogNTtcbiAgQGluY2x1ZGUgcigxMzY1KSB7XG4gICAgcGFkZGluZzogMTlweCAwIDIzcHg7IH1cbiAgQGluY2x1ZGUgcigxMTk5KSB7XG4gICAgcGFkZGluZzogMjRweCAwIDIzcHg7IH1cbiAgQGluY2x1ZGUgcig5OTkpIHtcbiAgICBwYWRkaW5nOiAxOHB4IDAgMThweDsgfVxuICBAaW5jbHVkZSByKDYzOSkge1xuICAgIHBhZGRpbmc6IDE4cHggMCAyM3B4OyB9XG4gICY6OmFmdGVyIHtcbiAgICBAaW5jbHVkZSByKDk5OSkge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB0b3A6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICB6LWluZGV4OiAxNDsgfSB9XG4gICZfd3JhcCB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAmX2xvZ28ge1xuICAgIG1heC13aWR0aDogMTYzcHg7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLXJpZ2h0OiA3MHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxNTtcbiAgICBAaW5jbHVkZSByKDEzNjUpIHtcbiAgICAgIG1heC13aWR0aDogMTMwcHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDUwcHg7IH1cbiAgICBAaW5jbHVkZSByKDExOTkpIHtcbiAgICAgIG1heC13aWR0aDogOTZweDtcbiAgICAgIG1hcmdpbi1yaWdodDogNDVweDsgfVxuICAgIEBpbmNsdWRlIHIoOTk5KSB7XG4gICAgICBtYXgtd2lkdGg6IDEwM3B4OyB9XG4gICAgaW1nIHtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9IH1cbiAgJl9tZW51X3dyYXAge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIEBpbmNsdWRlIHIoOTk5KSB7XG4gICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICBsZWZ0OiAtMTAwMDAwcHg7XG4gICAgICB0b3A6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xuICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgIHotaW5kZXg6IDEwO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG4gICAgICAmLS1vcGVuIHtcbiAgICAgICAgbGVmdDogMDsgfSB9XG4gICAgdWwge1xuICAgICAgbWF4LXdpZHRoOiA3NjBweDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWFyZ2luLXJpZ2h0OiA4M3B4O1xuICAgICAgQGluY2x1ZGUgcigxMzY1KSB7XG4gICAgICAgIG1heC13aWR0aDogNjI4cHg7XG4gICAgICAgIG1hcmdpbi1yaWdodDogNDNweDsgfVxuICAgICAgQGluY2x1ZGUgcigxMTk5KSB7XG4gICAgICAgIG1heC13aWR0aDogNTE2cHg7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMTBweDsgfVxuICAgICAgQGluY2x1ZGUgcig5OTkpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHBhZGRpbmctdG9wOiA1N3B4O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNDVweDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlNWU1ZTU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gICAgICAgIEBpbmNsdWRlIHIoNjM5KSB7XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IDI4cHg7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzJweDsgfSB9XG4gICAgICBsaSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgY29sb3I6ICMwMDAwMDA7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAnRXhvIDInLCBzYW5zLXNlcmlmO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcbiAgICAgICAgQGluY2x1ZGUgcigxMzY1KSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxNHB4OyB9XG4gICAgICAgIEBpbmNsdWRlIHIoMTE5OSkge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDsgfVxuICAgICAgICBAaW5jbHVkZSByKDk5OSkge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMThweDsgfVxuICAgICAgICBAaW5jbHVkZSByKDYzOSkge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDsgfVxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBjb2xvcjogJHJlZDsgfVxuICAgICAgICBhIHtcbiAgICAgICAgICBmb250LXN0eWxlOiBpbmhlcml0O1xuICAgICAgICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgICBmb250LXdlaWdodDogaW5oZXJpdDtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBAaW5jbHVkZSByKDk5OSkge1xuICAgICAgICAgICAgcGFkZGluZzogMTFweCAwIDExcHg7IH1cbiAgICAgICAgICBAaW5jbHVkZSByKDYzOSkge1xuICAgICAgICAgICAgcGFkZGluZzogOXB4IDAgOXB4OyB9IH0gfVxuICAgICAgbGkuY3VycmVudC1tZW51LWl0ZW0ge1xuICAgICAgICBjb2xvcjogJHJlZDsgfSB9IH1cbiAgJl9waG9uZXMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgbWF4LXdpZHRoOiAxMjdweDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxM3B4O1xuICAgIHBhZGRpbmctbGVmdDogN3B4O1xuICAgIEBpbmNsdWRlIHIoMTM2NSkge1xuICAgICAgbWF4LXdpZHRoOiAxMTNweDsgfVxuICAgIEBpbmNsdWRlIHIoOTk5KSB7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgdG9wOiA0cHg7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGJvcmRlcjogc29saWQgJHJlZDtcbiAgICAgIGJvcmRlci13aWR0aDogMCAxcHggMXB4IDA7XG4gICAgICBwYWRkaW5nOiAycHg7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcbiAgICAgIEBpbmNsdWRlIHIoOTk5KSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAgIGEge1xuICAgICAgY29sb3I6ICNlYjFkMjU7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgZm9udC1mYW1pbHk6ICdFeG8gMicsIHNhbnMtc2VyaWY7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAjY2YxMzFjOyB9XG4gICAgICBAaW5jbHVkZSByKDEzNjUpIHtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4OyB9XG4gICAgICBAaW5jbHVkZSByKDExOTkpIHtcbiAgICAgICAgZm9udC1zaXplOiAxMnB4OyB9XG4gICAgICBAaW5jbHVkZSByKDk5OSkge1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIG1heC13aWR0aDogMTEwcHg7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMzVweDsgfVxuICAgICAgQGluY2x1ZGUgcig0NzkpIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE2cHg7IH0gfVxuICAgICZfbGFuZyB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICBsZWZ0OiAtMTAwMDAwcHg7XG4gICAgICB0b3A6IDEwMCU7XG4gICAgICBwYWRkaW5nLXRvcDogNXB4O1xuICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjI1cyBsaW5lYXIsIGxlZnQgMHMgbGluZWFyIDAuMjVzO1xuICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgIHBhZGRpbmctbGVmdDogN3B4O1xuICAgICAgei1pbmRleDogMjtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDEzcHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgICAgIEBpbmNsdWRlIHIoMTE5OSkge1xuICAgICAgICBwYWRkaW5nLXRvcDogMDsgfVxuICAgICAgQGluY2x1ZGUgcig5OTkpIHtcbiAgICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICAgICAgdG9wOiB1bnNldDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgbWF4LXdpZHRoOiB1bnNldDtcbiAgICAgICAgd2lkdGg6IGF1dG87IH1cbiAgICAgIGEge1xuICAgICAgICBwYWRkaW5nLXRvcDogMTBweDtcbiAgICAgICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwOyB9XG4gICAgICAgIEBpbmNsdWRlIHIoOTk5KSB7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH0gfVxuICAgICAgICBAaW5jbHVkZSByKDQ3OSkge1xuICAgICAgICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7IH0gfSB9IH1cbiAgICAmLS1vcGVuIHtcbiAgICAgIC5zX2hlYWRlcl9waG9uZXNfbGFuZyB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIGxlZnQ6IDA7IH1cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTEzNWRlZyk7XG4gICAgICAgIHRvcDogNnB4OyB9IH0gfVxuICAmX2J1cmdlciB7XG4gICAgQGluY2x1ZGUgcig5OTkpIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHotaW5kZXg6IDE1O1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgd2lkdGg6IDI2cHg7XG4gICAgICBoZWlnaHQ6IDE2cHg7XG4gICAgICAmX2xpbmUge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDJweDtcbiAgICAgICAgYmFja2dyb3VuZDogJHJlZDtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG4gICAgICAgICYtLW9uZSB7XG4gICAgICAgICAgdG9wOiAwOyB9XG4gICAgICAgICYtLXR3byB7XG4gICAgICAgICAgdG9wOiA3cHg7IH1cbiAgICAgICAgJi0tdGhyZWUge1xuICAgICAgICAgIHRvcDogMTRweDsgfSB9XG4gICAgICAmLS1vcGVuIHtcbiAgICAgICAgLnNfaGVhZGVyX2J1cmdlcl9saW5lLS1vbmUge1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgICB0b3A6IDUwJTsgfVxuICAgICAgICAuc19oZWFkZXJfYnVyZ2VyX2xpbmUtLXR3byB7XG4gICAgICAgICAgb3BhY2l0eTogMDsgfVxuICAgICAgICAuc19oZWFkZXJfYnVyZ2VyX2xpbmUtLXRocmVlIHtcbiAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpOyB9IH0gfSB9IH1cbiIsIi5zX2hlcm8ge1xuICAgIHdpZHRoOiAxMDAlO1xuXG5cbiAgICAmX19jb250ZW50IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgcGFkZGluZzogMCAyMDVweDtcbiAgICAgICAgbWluLWhlaWdodDogNzEwcHg7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICBAaW5jbHVkZSByKDEzNjUpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgODVweDtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDQ0MHB4OyB9XG4gICAgICAgIEBpbmNsdWRlIHIoMTE5OSkge1xuICAgICAgICAgICAgbWluLWhlaWdodDogMzc1cHg7IH1cbiAgICAgICAgQGluY2x1ZGUgcig5OTkpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMzVweDsgfVxuICAgICAgICBAaW5jbHVkZSByKDc2NSkge1xuICAgICAgICAgICAgcGFkZGluZzogMDsgfVxuICAgICAgICBAaW5jbHVkZSByKDYzOSkge1xuICAgICAgICAgICAgbWluLWhlaWdodDogNTIwcHg7IH1cbiAgICAgICAgQGluY2x1ZGUgcig0NzkpIHtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDM3NXB4OyB9IH1cblxuXG5cbiAgICAmX19zbGlkZSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG5cbiAgICAmX19pbWFnZS0tYmcge1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjsgfSB9XG4gICAgJl9fd3JhcCB7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgbWF4LXdpZHRoOiA1NDBweDsgfVxuXG4gICAgJl9fdGl0bGUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICBAaW5jbHVkZSByKDEzNjUpIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDM2NXB4OyB9XG4gICAgICAgIEBpbmNsdWRlIHIoMTIwMCkge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzVweDtcbiAgICAgICAgICAgIG1heC13aWR0aDogMzEwcHg7IH1cbiAgICAgICAgQGluY2x1ZGUgcig5OTkpIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7IH1cbiAgICAgICAgQGluY2x1ZGUgcig3NjcpIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7IH1cbiAgICAgICAgQGluY2x1ZGUgcig2MzkpIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogMjcwcHg7IH1cbiAgICAgICAgQGluY2x1ZGUgcig0MTkpIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogMjI1cHg7IH1cbiAgICAgICAgaDEge1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTsgfVxuICAgICAgICBoMiB7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgZm9udC1zaXplOiA3MnB4O1xuICAgICAgICAgICAgQGluY2x1ZGUgcigxMzY1KSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiA0OHB4OyB9XG4gICAgICAgICAgICBAaW5jbHVkZSByKDExOTkpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDQwcHg7IH1cbiAgICAgICAgICAgIEBpbmNsdWRlIHIoNjM5KSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAzNnB4OyB9XG4gICAgICAgICAgICBAaW5jbHVkZSByKDQ3OSkge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMzBweDsgfSB9IH1cbiAgICAmX190ZXh0IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNzBweDtcbiAgICAgICAgbWF4LXdpZHRoOiA1MTBweDtcbiAgICAgICAgQGluY2x1ZGUgcigxMzY1KSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAzOTBweDsgfVxuICAgICAgICBAaW5jbHVkZSByKDEyMDApIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDM1cHg7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDM4MHB4OyB9XG4gICAgICAgIEBpbmNsdWRlIHIoOTk5KSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAzMTVweDsgfVxuICAgICAgICBAaW5jbHVkZSByKDc2Nykge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDsgfVxuICAgICAgICBAaW5jbHVkZSByKDYzOSkge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAzMDBweDsgfVxuICAgICAgICBAaW5jbHVkZSByKDQxOSkge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAyNTVweDsgfVxuXG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICAgICAgICBAaW5jbHVkZSByKDEzNjUpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDIwcHg7IH1cbiAgICAgICAgICAgIEBpbmNsdWRlIHIoMTE5OSkge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDsgfVxuICAgICAgICAgICAgQGluY2x1ZGUgcig5OTkpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7IH1cbiAgICAgICAgICAgIEBpbmNsdWRlIHIoNjM5KSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4OyB9XG4gICAgICAgICAgICBAaW5jbHVkZSByKDQxOSkge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDsgfVxuICAgICAgICAgICAgbWF4LWhlaWdodDogN2VtO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7IH0gfVxuICAgICZfX2J0biB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7IH1cblxuICAgICZfX2Fib3V0IHtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cblxuICAgICZfX3NsaWRlciB7XG4gICAgICAgIC5zbGljay1kb3RzIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBib3R0b206IDIwcHg7XG4gICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgICAgICAgICB6LWluZGV4OiAxMDtcbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcig5OTkpIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDZweDtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA2cHg7IH0gfVxuICAgICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDA7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0MwQkZCRjtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjQzBCRkJGO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAuMnM7IH0gfVxuXG5cbiAgICAgICAgLnNsaWNrLWRvdHMgLnNsaWNrLWFjdGl2ZSB7XG4gICAgICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRyZWQ7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHJlZDsgfSB9XG5cblxuICAgICAgICAuc2xpY2stYXJyb3cge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgZm9udC1zaXplOiAwO1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDJweCBzb2xpZCAkd2hpdGU7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgJHdoaXRlO1xuICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIEBpbmNsdWRlIHIoOTk5KSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbiAgICAgICAgLnNsaWNrLXByZXYge1xuICAgICAgICAgICAgbGVmdDogMTBweDtcbiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgICAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSByb3RhdGUoNDVkZWcpO1xuICAgICAgICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSByb3RhdGUoNDVkZWcpO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHJvdGF0ZSg0NWRlZyk7IH1cbiAgICAgICAgLnNsaWNrLW5leHQge1xuICAgICAgICAgICAgcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSByb3RhdGUoLTEzNWRlZyk7XG4gICAgICAgICAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSByb3RhdGUoLTEzNWRlZyk7XG4gICAgICAgICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHJvdGF0ZSgtMTM1ZGVnKTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSByb3RhdGUoLTEzNWRlZyk7IH0gfSB9XG5cblxuXG5cblxuXG5cbiIsIi5zX3NlcnZpY2VzIHtcbiAgcGFkZGluZzogMTQwcHggMCAyMHB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBAaW5jbHVkZSByKDEzNjUpIHtcbiAgICBwYWRkaW5nOiA5MHB4IDAgMjBweDsgfVxuICBAaW5jbHVkZSByKDk5OSkge1xuICAgIHBhZGRpbmc6IDM1cHggMCAyNXB4OyB9XG4gICYtLWV4dCB7XG4gICAgcGFkZGluZy1ib3R0b206IDcwcHg7XG4gICAgb3ZlcmZsb3c6IGluaXRpYWw7XG4gICAgQGluY2x1ZGUgcigxMzY1KSB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMzBweDsgfVxuICAgIEBpbmNsdWRlIHIoNjM5KSB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDsgfSB9XG4gIC5jb250YWluZXIge1xuICAgIEBpbmNsdWRlIHIoOTk5KSB7XG4gICAgICBwYWRkaW5nOiAwOyB9IH1cbiAgJl9faGVhZGVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMDVweDtcbiAgICBAaW5jbHVkZSByKDEzNjUpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDc1cHg7IH1cbiAgICBAaW5jbHVkZSByKDExOTkpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDcwcHg7IH1cbiAgICBAaW5jbHVkZSByKDk5OSkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDsgfVxuICAgIEBpbmNsdWRlIHIoNzY3KSB7XG4gICAgICBwYWRkaW5nOiAwIDIwcHg7IH0gfVxuICAmX19jb250ZW50IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDE4MHB4O1xuICAgIEBpbmNsdWRlIHIoMTM2NSkge1xuICAgICAgcGFkZGluZy1sZWZ0OiAxNDVweDsgfVxuICAgIEBpbmNsdWRlIHIoMTE5OSkge1xuICAgICAgcGFkZGluZy1sZWZ0OiAxMTBweDsgfVxuICAgIEBpbmNsdWRlIHIoOTk5KSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7IH0gfVxuICAmX19ibG9jayB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTAwcHg7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgQGluY2x1ZGUgcigxMzY1KSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA4MHB4OyB9XG5cbiAgICBAaW5jbHVkZSByKDk5OSkge1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDUwcHg7IH1cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzVweDtcbiAgICAgIEBpbmNsdWRlIHIoMTE5OSkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA2MHB4OyB9XG4gICAgICBAaW5jbHVkZSByKDk5OSkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA1MHB4OyB9XG4gICAgICBAaW5jbHVkZSByKDYzOSkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzNXB4OyB9IH1cbiAgICAmOm50aC1jaGlsZChldmVuKSB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbiAgICAgICAgQGluY2x1ZGUgcig5OTkpIHtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9IH1cbiAgICAmOm50aC1jaGlsZCg0bi0zKSB7XG4gICAgICAuc19zZXJ2aWNlc19fYm94LS10ZXh0IHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogNjBweDtcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGhlaWdodDogMTEwcHg7XG4gICAgICAgICAgd2lkdGg6IDNweDtcbiAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICB0b3A6IDdweDsgfVxuICAgICAgICBAaW5jbHVkZSByKDExOTkpIHtcbiAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICBoZWlnaHQ6IDY1cHg7IH0gfVxuICAgICAgICBAaW5jbHVkZSByKDk5OSkge1xuICAgICAgICAgIHBhZGRpbmc6IDAgMjVweDtcbiAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgICAgICAgQGluY2x1ZGUgcig3NjcpIHtcbiAgICAgICAgICBwYWRkaW5nOiAwIDIwcHg7IH0gfSB9XG4gICAgJjpudGgtY2hpbGQoNG4tMikge1xuICAgICAgLnNfc2VydmljZXNfX2JveC0tdGV4dCB7XG4gICAgICAgIG1heC13aWR0aDogMzIwcHg7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgbGVmdDogMDsgfVxuICAgICAgICBAaW5jbHVkZSByKDEzNjUpIHtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA0MHB4O1xuICAgICAgICAgIG1heC13aWR0aDogaW5pdGlhbDsgfVxuICAgICAgICBAaW5jbHVkZSByKDExOTkpIHtcbiAgICAgICAgICBtYXgtd2lkdGg6IDI4MHB4O1xuICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICBsZWZ0OiAtMTIwcHg7IH0gfVxuICAgICAgICBAaW5jbHVkZSByKDk5OSkge1xuICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICBsZWZ0OiBpbml0aWFsOyB9IH1cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIHdpZHRoOiAxMTBweDtcbiAgICAgICAgICBoZWlnaHQ6IDNweDtcbiAgICAgICAgICB0b3A6IDEwcHg7XG4gICAgICAgICAgcmlnaHQ6IGNhbGMoIDEwMCUgKyA3MHB4KTsgfVxuICAgICAgICBAaW5jbHVkZSByKDEzNjUpIHtcbiAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICByaWdodDogY2FsYyggMTAwJSArIDM1cHgpOyB9IH1cbiAgICAgICAgQGluY2x1ZGUgcigxMTk5KSB7XG4gICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgd2lkdGg6IDY1cHg7XG4gICAgICAgICAgICByaWdodDogY2FsYyggMTAwJSArIDQwcHgpOyB9IH1cbiAgICAgICAgQGluY2x1ZGUgcig5OTkpIHtcbiAgICAgICAgICBwYWRkaW5nOiAwIDI1cHg7XG4gICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gICAgICAgIEBpbmNsdWRlIHIoNzY3KSB7XG4gICAgICAgICAgcGFkZGluZzogMCAyMHB4OyB9IH1cbiAgICAgIC5zX3NlcnZpY2VzX19ib3gtLWltZyB7XG4gICAgICAgIEBpbmNsdWRlIHIoOTk5KSB7XG4gICAgICAgICAgbWF4LXdpZHRoOiAxMDAlOyB9IH0gfVxuICAgICY6bnRoLWNoaWxkKDRuIC0gMSkge1xuICAgICAgLnNfc2VydmljZXNfX2JveC0tdGV4dCB7XG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBoZWlnaHQ6IDExMHB4O1xuICAgICAgICAgIHdpZHRoOiAzcHg7XG4gICAgICAgICAgdG9wOiA3cHg7XG4gICAgICAgICAgcmlnaHQ6IGNhbGMoIDEwMCUgKyA3NXB4ICk7IH1cbiAgICAgICAgQGluY2x1ZGUgcigxMzY1KSB7XG4gICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgcmlnaHQ6IGNhbGMoIDEwMCUgKyA4MHB4ICk7IH0gfVxuICAgICAgICBAaW5jbHVkZSByKDExOTkpIHtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDY1cHg7XG4gICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgaGVpZ2h0OiA2NXB4O1xuICAgICAgICAgICAgcmlnaHQ6IGNhbGMoIDEwMCUgLSA1cHggKTsgfSB9XG4gICAgICAgIEBpbmNsdWRlIHIoOTk5KSB7XG4gICAgICAgICAgcGFkZGluZzogMCAyNXB4O1xuICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgICAgICAgQGluY2x1ZGUgcig3NjcpIHtcbiAgICAgICAgICBwYWRkaW5nOiAwIDIwcHg7IH0gfVxuICAgICAgLnNfc2VydmljZXNfX2JveC0taW1nIHtcbiAgICAgICAgLy8gcGFkZGluZy1yaWdodDogNTBweFxuICAgICAgICBAaW5jbHVkZSByKDk5OSkge1xuICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgICBwYWRkaW5nOiAwOyB9IH0gfVxuICAgICY6bnRoLWNoaWxkKDRuKSB7XG4gICAgICAuc19zZXJ2aWNlc19fYm94LS10ZXh0IHtcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIHdpZHRoOiAxMTBweDtcbiAgICAgICAgICBoZWlnaHQ6IDNweDtcbiAgICAgICAgICB0b3A6IC0xMHB4O1xuICAgICAgICAgIGxlZnQ6IGNhbGMoIDEwMCUgLSA3NXB4ICk7IH1cbiAgICAgICAgQGluY2x1ZGUgcigxMzY1KSB7XG4gICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgcmlnaHQ6IGNhbGMoIDEwMCUgKyA4MHB4ICk7IH0gfVxuICAgICAgICBAaW5jbHVkZSByKDExOTkpIHtcbiAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICB3aWR0aDogNjVweDtcbiAgICAgICAgICAgIHJpZ2h0OiBjYWxjKCAxMDAlIC0gNXB4ICk7XG4gICAgICAgICAgICB0b3A6IDdweDsgfSB9XG4gICAgICAgIEBpbmNsdWRlIHIoOTk5KSB7XG4gICAgICAgICAgcGFkZGluZzogMCAyNXB4O1xuICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgICAgICAgQGluY2x1ZGUgcig3NjcpIHtcbiAgICAgICAgICBwYWRkaW5nOiAwIDIwcHg7IH0gfVxuICAgICAgLnNfc2VydmljZXNfX2JveC0taW1nIHtcbiAgICAgICAgQGluY2x1ZGUgcig5OTkpIHtcbiAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgcGFkZGluZzogMDsgfSB9IH0gfVxuICAmX19ib3gge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgICYtLWltZyB7XG4gICAgICBtYXgtd2lkdGg6IDUxMHB4O1xuICAgICAgQGluY2x1ZGUgcigxMzY1KSB7XG4gICAgICAgIG1heC13aWR0aDogNDEwcHg7IH1cbiAgICAgIEBpbmNsdWRlIHIoMTE5OSkge1xuICAgICAgICBtYXgtd2lkdGg6IDI4MHB4OyB9XG4gICAgICBpbWcge1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBAaW5jbHVkZSByKDk5OSkge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjsgfSB9XG4gICAgICAmOm50aC1jaGlsZChuKSB7XG4gICAgICAgIEBpbmNsdWRlIHIoOTk5KSB7XG4gICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICAgIGhlaWdodDogMzIwcHg7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDsgfSB9IH1cbiAgICAmLS10ZXh0IHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIG1heC13aWR0aDogNDEwcHg7XG4gICAgICBAaW5jbHVkZSByKDEzNjUpIHtcbiAgICAgICAgbWF4LXdpZHRoOiAzMjBweDsgfVxuICAgICAgQGluY2x1ZGUgcig5OTkpIHtcbiAgICAgICAgcGFkZGluZzogMCAyNXB4OyB9XG4gICAgICAmOm50aC1jaGlsZChuKSB7XG4gICAgICAgIEBpbmNsdWRlIHIoOTk5KSB7XG4gICAgICAgICAgbWF4LXdpZHRoOiAxMDAlOyB9IH1cblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcmVkO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MHB4OyB9XG4gICAgICBoMyB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7IH1cbiAgICAgIHAge1xuICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyNXB4OyB9XG4gICAgICBzcGFuIHtcbiAgICAgICAgY29sb3I6ICRyZWQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMjRweDsgfVxuICAgICAgQGluY2x1ZGUgcig5OTkpIHtcbiAgICAgICAgcCxcbiAgICAgICAgaDMge1xuICAgICAgICAgIG1heC13aWR0aDogNDcwcHg7IH0gfVxuICAgICAgLy8gK3IoNzY3KVxuICAgICAgLy8gICBwLFxuICAgICAgLy8gICBoM1xuICAgICAgLy8gICAgIG1heC13aWR0aDogNDcwcHhcbiAgICAgIGltZyB7XG4gICAgICAgIEBpbmNsdWRlIHIoMTE5OSkge1xuICAgICAgICAgIG1heC13aWR0aDogODBweDsgfVxuICAgICAgICBAaW5jbHVkZSByKDk5OSkge1xuICAgICAgICAgIHJpZ2h0OiAzMHB4OyB9XG4gICAgICAgIEBpbmNsdWRlIHIoNzY3KSB7XG4gICAgICAgICAgbWF4LXdpZHRoOiA1NXB4OyB9IH0gfSB9XG4gICZfX2xlYXJuIHtcbiAgICBtYXgtd2lkdGg6IDMyMHB4O1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogODBweDtcbiAgICBAaW5jbHVkZSByKDEzNjUpIHtcbiAgICAgIG1heC13aWR0aDogMjgwcHg7IH1cbiAgICBAaW5jbHVkZSByKDk5OSkge1xuICAgICAgbWF4LXdpZHRoOiAyMjBweDtcbiAgICAgIG1hcmdpbi1yaWdodDogNDBweDsgfVxuICAgIGEge1xuICAgICAgY29sb3I6ICRyZWQ7XG4gICAgICBmb250LXNpemU6IDM2cHg7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIC4ycztcbiAgICAgICY6aG92ZXIge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIGNvbG9yOiAkaG92ZXI7IH1cbiAgICAgIEBpbmNsdWRlIHIoMTM2NSkge1xuICAgICAgICBmb250LXNpemU6IDMwcHg7IH1cbiAgICAgIEBpbmNsdWRlIHIoOTk5KSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjRweDsgfSB9IH0gfVxuXG4iLCIuc19wYXJrIHtcbiAgcGFkZGluZy1ib3R0b206IDEwMHB4O1xuICAmX19oZWFkZXIge1xuICAgIG1hcmdpbi1ib3R0b206IDgwcHg7XG4gICAgQGluY2x1ZGUgcig5OTkpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gICAgICBwYWRkaW5nOiAwIDIwcHg7IH0gfVxuICAmX19kZXNjciB7XG4gICAgY29sdW1uLWNvdW50OiAyO1xuICAgIG1hcmdpbjogMCAtMjBweCA5MHB4O1xuICAgIEBpbmNsdWRlIHIoOTk5KSB7XG4gICAgICBjb2x1bW4tY291bnQ6IDE7XG4gICAgICBwYWRkaW5nOiAwIDI1cHg7XG4gICAgICBtYXJnaW46IDAgMCA1MHB4OyB9XG4gICAgJi0tbWluIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gICAgICBAaW5jbHVkZSByKDk5OSkge1xuICAgICAgICBwYWRkaW5nOiAwOyB9IH1cbiAgICBwIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9IH0gfVxuICAmX193cmFwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxNTBweDtcbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTAwcHg7XG4gICAgICBAaW5jbHVkZSByKDExOTkpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNTBweDsgfSB9XG4gICAgQGluY2x1ZGUgcig5OTkpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDgwcHg7IH1cbiAgICBAaW5jbHVkZSByKDYzOSkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNjBweDsgfSB9XG4gICZfX2NvbnRhY3Qge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIG1heC13aWR0aDogNjEwcHg7XG4gICAgZm9udC1zaXplOiAyNHB4O1xuICAgIEBpbmNsdWRlIHIoOTk5KSB7XG4gICAgICBwYWRkaW5nOiAwIDI1cHg7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICBmb250LXNpemU6IDIwcHg7IH1cbiAgICBAaW5jbHVkZSByKDYzOSkge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgIHAge1xuICAgICAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7XG4gICAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyNXB4OyB9XG4gICAgYSB7XG4gICAgICBjb2xvcjogJHJlZDtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7IH0gfSB9XG4iLCIuc19mb290ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2MzYTNhO1xuICBwYWRkaW5nOiAzNXB4IDA7XG4gIEBpbmNsdWRlIHIoMTE5OSkge1xuICAgIHBhZGRpbmc6IDMwcHggMDsgfVxuICBAaW5jbHVkZSByKDk5OSkge1xuICAgIHBhZGRpbmc6IDIwcHggMDsgfVxuICAmX19jb250ZW50IHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIEBpbmNsdWRlIHIoOTk5KSB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9IH1cbiAgJl9fbGlzdCB7XG5cbiAgICBAaW5jbHVkZSByKDk5OSkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICY6bnRoLWNoaWxkKDEpIHtcbiAgICAgICAgb3JkZXI6IDE7IH1cbiAgICAgICY6bnRoLWNoaWxkKDMpIHtcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMzBweDtcbiAgICAgICAgb3JkZXI6IDI7IH1cbiAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgb3JkZXI6IDM7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfSB9XG4gICAgbGkge1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIG1hcmdpbi1yaWdodDogMzBweDtcbiAgICAgIEBpbmNsdWRlIHIoMTE5OSkge1xuICAgICAgICBmb250LXNpemU6IDEycHg7IH1cbiAgICAgIEBpbmNsdWRlIHIoOTk5KSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMTVweDsgfVxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH1cbiAgICAmLS1jb250YWN0cyB7XG4gICAgICBtYXgtd2lkdGg6IDQxMHB4OyB9XG4gICAgYSB7XG4gICAgICBjb2xvcjogaW5oZXJpdDsgfVxuICAgIEBpbmNsdWRlIHIoNjM5KSB7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAmOm50aC1jaGlsZChuKSB7XG4gICAgICAgIG1heC13aWR0aDogaW5pdGlhbDsgfVxuICAgICAgJjpudGgtY2hpbGQoMSkge1xuICAgICAgICBtYXgtd2lkdGg6IDMwMHB4OyB9XG4gICAgICBsaSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7IH0gfVxuICAgIEBpbmNsdWRlIHIoNDgwKSB7XG4gICAgICAmOm50aC1jaGlsZCgzKSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDsgfSB9IH1cblxuXG4gIC56b3JlbGl0X19zZWN0aW9uIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBAaW5jbHVkZSByKDk5OSkge1xuICAgICAgb3JkZXI6IDQ7IH0gfSB9XG4iLCJcbi5ob2xkZXIge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGxlZnQ6IDAlO1xuICB0b3A6IDAlO1xuICByaWdodDogMCU7XG4gIGJvdHRvbTogMCU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgei1pbmRleDogOTk5OyB9XG5cblxuLnByZWxvYWRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDMlO1xuICBoZWlnaHQ6IDAlO1xuICBwYWRkaW5nLWJvdHRvbTogMyU7XG4gIGxlZnQ6IDUwJTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSB0cmFuc2xhdGVZKC01MCUpOyB9XG5cbi5wcmVsb2FkZXIgZGl2IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSB0cmFuc2xhdGVZKC01MCUpO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBhbmltYXRpb246IGFuaW1hdGVQcmVsb2FkZXIgMXMgaW5maW5pdGUgbGluZWFyO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgMTAwJTsgfVxuXG4ucHJlbG9hZGVyIGRpdjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGxlZnQ6IDUwJTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgYm9yZGVyOiAzcHggc29saWQgJHJlZDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XG5cbi5wcmVsb2FkZXIgZGl2Om50aC1jaGlsZCgyKSB7XG4gIHdpZHRoOiA2MCU7XG4gIGhlaWdodDogNjAlO1xuICB0b3A6IDIwJTtcbiAgYW5pbWF0aW9uOiBhbmltYXRlUHJlbG9hZGVyIDAuNXMgaW5maW5pdGUgbGluZWFyOyB9XG5cbkBrZXlmcmFtZXMgYW5pbWF0ZVByZWxvYWRlciB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSgtNTAlKSByb3RhdGVaKDBkZWcpOyB9XG5cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlWigzNjBkZWcpOyB9IH1cblxuIl19 */
