/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */ /* stylelint-disable declaration-property-unit-allowed-list, a11y/line-height-is-vertical-rhythmed, a11y/no-display-none */ /* Document ========================================================================== */ /** * 1. Correct the line height in all browsers. * 2. Prevent adjustments of font size after orientation changes in iOS. */ html { line-height: 1.15; } /* Sections ========================================================================== */ /** * Remove the margin in all browsers. */ body { margin: 0; } /** * Render the `main` element consistently in IE. */ main { 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: .67em 0; } /* Grouping content ========================================================================== */ /** * 1. Add the correct box sizing in Firefox. * 2. Show the overflow in Edge and IE. */ hr { box-sizing: content-box; height: 0; overflow: visible; } /** * 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; font-size: 1em; } /* Text-level semantics ========================================================================== */ /** * Remove the gray background on active links in IE 10. */ a { background-color: transparent; } /** * 1. Remove the bottom border in Chrome 57- * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari. */ abbr[title] { border-bottom: 0; -webkit-text-decoration: underline dotted; text-decoration: underline dotted; } /** * 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; font-size: 1em; } /** * Add the correct font size in all browsers. */ small { font-size: 80%; } /* Embedded content ========================================================================== */ /** * Remove the border on images inside links in IE 10. */ img { border-style: none; } /* Forms ========================================================================== */ /** * 1. Change the font styles in all browsers. * 2. Remove the margin in Firefox and Safari. */ button, input, optgroup, select, textarea { font-family: inherit; font-size: 100%; line-height: 1.15; margin: 0; } /** * 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; } /** * Correct the inability to style clickable types in iOS and Safari. */ button, [type="button"], [type="reset"], [type="submit"] { -webkit-appearance: button; -moz-appearance: button; appearance: button; } /** * 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: .35em .75em .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 { box-sizing: border-box; color: inherit; display: table; max-width: 100%; padding: 0; white-space: normal; } /** * Add the correct vertical alignment in Chrome, Firefox, and Opera. */ progress { vertical-align: baseline; } /** * Remove the default vertical scrollbar in IE 10+. */ textarea { overflow: auto; } /** * 1. Add the correct box sizing in IE 10. * 2. Remove the padding in IE 10. */ [type="checkbox"], [type="radio"] { box-sizing: border-box; padding: 0; } /** * 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; outline-offset: -2px; } /** * Remove the inner padding in Chrome and Safari on macOS. */ [type="search"]::-webkit-search-decoration { -webkit-appearance: none; } /* Interactive ========================================================================== */ /* * Add the correct display in Edge, IE 10+, and Firefox. */ details { display: block; } /* * Add the correct display in all browsers. */ summary { display: list-item; } /* Misc ========================================================================== */ /** * Add the correct display in IE 10+. */ template { display: none; } /** * Add the correct display in IE 10. */ [hidden] { display: none; } /* stylelint-enable declaration-property-unit-allowed-list */ /** * Convert hex color to RGB color format */ /* stylelint-disable declaration-property-unit-allowed-list */ /* stylelint-enable declaration-property-unit-allowed-list */ :root { --color-black: #222; --color-black-rock: #2b303c; --color-blue-chalk: #ece6f2; --color-east-bay: #545773; --color-pattens-blue: #eaf1f8; --color-science-blue: #0049d1; --color-scropion: #5f5f5f; --color-valhalla: #2a2d3e; --color-white: #fff; --color-heading: var(--color-main); --color-main: var(--color-valhalla); --color-paragraph: var(--color-east-bay); --color-link-border-bottom: var(--color-science-blue); --color-link-border-focus: var(--color-black); --color-link-comment: var(--color-scropion); --color-link-comment-time-anchor: var(--color-east-bay); --color-link-edit-background-hover: var(--color-pattens-blue); --color-link-edit-border: var(--color-pattens-blue); --color-link-edit-text: darken(#eaf1f8, 20%); --color-link-edit-text-hover: var(--color-east-bay); --color-link-text: var(--color-science-blue); --color-link-text-focus: var(--color-black); --color-link-text-hover: var(--color-white); --color-link-background-hover: var(--color-link-text); --color-background-code-block: var(--color-black-rock); --color-background-code-inline: #f9f2f4; --color-background-default: #f0f0f0; --color-background-shade: #03061b; --color-background-table-cell-odd: var(--color-white); --color-background-table-cell-even: #f3f3f3; --color-background-tag: var(--color-pattens-blue); --color-blockquote: var(--color-science-blue); --color-comment-text: var(--color-east-bay); --color-comment-author-text: var(--color-east-bay); --color-tag-border: rgba(6, 22, 41, .1); --color-tag-border-hover: rgba(6, 22, 41, .4); --color-tag-text: var(--color-black); --color-category-border: #cdcfd4; --color-category-text: var(--color-black); --color-caption: #5c5c6a; --color-code-block: #c7254e; --color-code-text: #f5f5f5; --color-error: #e1b3b2; --color-kbd-border: #ccc; --color-kbd-background: var(--color-pattens-blue); --color-outline-overlay-items: #ff848a; --color-pagination-text: var(--color-valhalla); --color-pagination-background-hover: var(--color-valhalla); --color-pagination-border-hover: var(--color-valhalla); --color-pagination-text-hover: var(--color-white); --color-pagination-background-current: var(--color-valhalla); --color-pagination-border-current: var(--color-valhalla); --color-pagination-text-current: var(--color-white); --color-success: #8ed185; --color-top-arrow-dark: var(--color-black); --color-top-arrow-light: var(--color-white); --color-warning: #f4aa71; } :root { --padding-container-horizontal: 2rem; --padding-container-vertical: 6.4rem; --padding-site-header-vertical: 2rem; --padding-block: 8rem; --margin-between-text-elements: 4rem; --margin-wp-block-image: 4rem; --margin-between-paragraphs: 2.7rem; } @media (max-width: 1350px) { :root { --padding-container-horizontal: 2rem; } } @media (max-width: 960px) { :root { --padding-site-header-vertical: 2rem; } } @media (max-width: 770px) { :root { --padding-container-vertical: 5rem; } } @media (max-width: 600px) { :root { --padding-block: 6rem; } } @media (max-width: 480px) { :root { --padding-container-vertical: 4rem; } } @font-face { font-display: auto; font-family: "Inter"; font-style: normal; font-weight: 400; src: url("../../fonts/Inter-Regular.woff") format("woff"), url("../../fonts/Inter-Regular.woff2") format("woff2"), url("../../fonts/Inter-Regular.ttf") format("truetype"); } @font-face { font-display: auto; font-family: "Inter"; font-style: italic; font-weight: 400; src: url("../../fonts/Inter-Italic.woff") format("woff"), url("../../fonts/Inter-Italic.woff2") format("woff2"), url("../../fonts/Inter-Italic.ttf") format("truetype"); } @font-face { font-display: auto; font-family: "Inter"; font-style: normal; font-weight: 700; src: url("../../fonts/Inter-Bold.woff") format("woff"), url("../../fonts/Inter-Bold.woff2") format("woff2"), url("../../fonts/Inter-Bold.ttf") format("truetype"); } :root { --font-serif: sans-serif; --font-sans: 'Inter', -apple-system, 'BlinkMacSystemFont', 'Segoe UI', 'Roboto', 'Oxygen-Sans', 'Ubuntu', 'Cantarell', 'Helvetica Neue', sans-serif; --font-monospace: 'Inconsolata', 'Menlo', 'Monaco', 'Consolas', 'Andale Mono', 'Bitstream Vera Sans Mono', 'Courier New', monospace; --font-paragraph: var(--font-sans); --font-heading: var(--font-sans); } :root { --font-size-hero: 52px; --font-size-h1: 40px; --font-size-h2: 30px; --font-size-h3: 24px; --font-size-h4: 20px; --font-size-h5: 16px; --font-size-h6: 14px; --font-size-14: 14px; --font-size-15: 15px; --font-size-16: 16px; --font-size-17: 17px; --font-size-18: 18px; --font-size-20: 20px; --font-size-22: 22px; --font-size-default: var(--font-size-17); --font-size-paragraphs: var(--font-size-18); --font-size-nav-toggle-label: 15px; --font-size-captions: 15px; --line-height-headings: 1.5; --line-height-core-heading: 1.23; --line-height-paragraphs: 1.7; --line-height-paragraphs-blog: 1.77; --font-weight-regular: 400; --font-weight-medium: 500; --font-weight-semibold: 600; --font-weight-bold: 700; --font-weight-paragraphs: var(--font-weight-regular); --font-weight-headings: var(--font-weight-bold); } @media (max-width: 480px) { :root { --font-size-hero: 38px; --font-size-h1: 32px; --font-size-h2: 24px; --font-size-h3: 21px; --font-size-h4: 18px; --font-size-h5: 14px; --font-size-h6: 12px; } } @media (max-width: 420px) { :root { --font-size-16: 14px; } } @media (max-width: 480px) { :root { --font-size-paragraphs: 16px; --font-size-default: 16px; } } @media (max-width: 420px) { :root { --font-size-nav-toggle-label: 13px; } } /* stylelint-disable number-max-precision */ /* stylelint-disable number-max-precision */ /* stylelint-disable number-max-precision */ .heading-hero { font-size: var(--font-size-hero); } .screen-reader-text, .gform_body .gform_validation_container { border: 0; clip: rect(1px, 1px, 1px, 1px); -webkit-clip-path: inset(50%); clip-path: inset(50%); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; /* stylelint-disable declaration-no-important */ word-wrap: normal !important; /* stylelint-enable declaration-no-important */ } .screen-reader-text.skip-link, .gform_body .skip-link.gform_validation_container { margin: 5px; } .screen-reader-text.skip-link:focus, .gform_body .skip-link.gform_validation_container:focus { color: var(--color-black); } .screen-reader-text:focus, .gform_body .gform_validation_container:focus { background-color: var(--color-white); border-radius: 0; box-shadow: 0 0 2px 2px rgba(22, 22, 22, 0.6); clip: auto; -webkit-clip-path: none; clip-path: none; display: block; font-size: 1.7rem; font-weight: var(--font-weight-bold); height: auto; left: 5px; line-height: normal; padding: 15px 23px 14px; text-decoration: none; top: 5px; width: auto; z-index: 100000; } /* stylelint-disable a11y/no-outline-none */ [data-whatinput="mouse"] *:focus, [data-whatinput="touch"] *:focus { outline: none; } /* stylelint-enable a11y/no-outline-none */ [data-whatinput="keyboard"] a:focus, [data-whatinput="keyboard"] input:focus, [data-whatinput="keyboard"] button:focus, [data-whatinput="keyboard"] select:focus, [data-whatinput="keyboard"] textarea:focus, [data-whatinput="keyboard"] div[tabindex]:focus { opacity: 1; } [data-whatinput="keyboard"] .global-link { transition: none; } [data-whatinput="keyboard"] a.global-link:focus { outline-color: var(--color-outline-overlay-items); outline-offset: -1px; outline-style: solid; outline-width: 4px; } a.is-external-link { align-items: center; display: inline-flex; justify-content: space-between; } a.is-external-link::after { background-image: url("../../svg/external-link.svg"); background-position: right center; background-repeat: no-repeat; background-size: 14px 14px; content: ''; display: inline-flex; height: 14px; margin-left: 5px; margin-right: 2px; position: relative; right: 0; top: 0; transition: all .18s ease-in-out; width: 14px; } /* stylelint-disable a11y/no-display-none */ a.is-external-link.global-link::after, a.is-external-link.no-external-link-indicator::after { display: none; } /* stylelint-enable a11y/no-display-none */ @media (prefers-reduced-motion: no-preference) { :focus, *:focus, [data-whatinput="keyboard"] :focus, [data-whatinput="keyboard"] a:focus { outline-offset: 5px; transition: outline-offset .25s ease; } } :root { --border-radius-sub-menu: 0; --box-shadow-navigation-static: 0 0 10px rgba(84, 87, 115, .1); --dropdown-toggle-size: 12px; --gap-dropdown: 1rem; --gap-between-dropdown-toggle: 1.5rem; --padding-main-level-vertical: .6rem; --padding-main-level-horizontal: 2rem; --padding-sub-menu-vertical: .6rem; --padding-sub-menu-horizontal: 1.5rem; --width-sub-menu: 22rem; --color-background-nav-desktop: var(--color-white); --color-background-sub-menu: var(--color-white); --color-border-sub-menu: rgba(41, 44, 61, .05); --color-dropdown-toggle: var(--color-valhalla); --color-sub-menu: var(--color-valhalla); --color-hover-main-level: var(--color-white); --color-hover-sub-menu: var(--color-valhalla); --color-main-level: var(--color-white); --color-current: var(--color-main); --font-size-main-level: 17px; --font-size-sub-menu: 16px; --font-weight-main-level: var(--font-weight-bold); --font-weight-sub-menu: var(--font-weight-regular); } .site-header ul { list-style: none; } @media only screen and (min-width: 960px) { .nav-container { background-color: transparent; position: absolute; width: 100%; } } @media only screen and (min-width: 960px) and (max-width: 960px) { ul li:focus > ul, ul li:hover > ul { display: block; } } @media only screen and (min-width: 960px) and (-ms-high-contrast: active), only screen and (min-width: 960px) and (-ms-high-contrast: none) { ul li:focus > ul, ul li:hover > ul { display: block; } } @media only screen and (min-width: 960px) { /* stylelint-disable a11y/no-display-none */ .nav-toggle { display: none; } /* stylelint-enable */ .nav-primary { padding-bottom: 0; padding-top: 0; } .menu-items { align-items: center; background-color: transparent; display: flex; margin: 0; padding: 0; position: relative; } .menu-item { margin: 0; position: relative; } .menu-item > a { align-items: center; color: var(--color-main-level); display: inline-flex; font-size: var(--font-size-main-level); font-weight: var(--font-weight-main-level); padding-bottom: var(--padding-main-level-vertical); padding-left: var(--padding-main-level-horizontal); padding-right: var(--padding-main-level-horizontal); padding-top: var(--padding-main-level-vertical); } .menu-item .sub-menu a { align-items: center; color: var(--color-sub-menu); display: flex; font-size: var(--font-size-sub-menu); font-weight: var(--font-weight-sub-menu); line-height: 1.5; padding-bottom: var(--padding-sub-menu-vertical); padding-left: var(--padding-sub-menu-horizontal); padding-right: var(--padding-sub-menu-horizontal); padding-top: var(--padding-sub-menu-vertical); } .menu-item.current-menu-parent > a, .menu-item.current-menu-item > a { color: var(--color-current); } .menu-item.menu-item-has-children a { padding-bottom: 0; padding-right: var(--gap-between-dropdown-toggle); padding-top: 0; transition: padding 0.2s cubic-bezier(0.19, 1, 0.22, 1), background-color 0.2s cubic-bezier(0.19, 1, 0.22, 1); } .menu-item > a:hover, .menu-item > a:focus { color: var(--color-hover-main-level); } .menu-item .sub-menu a:hover, .menu-item .sub-menu a:focus { color: var(--color-hover-sub-menu); } /* stylelint-disable no-descending-specificity */ .sub-menu.toggled-on a, .sub-menu.toggled-on .sub-menu a, .menu-item.menu-item-has-children:hover .sub-menu a, .menu-item.menu-item-has-children:focus .sub-menu a { padding-bottom: var(--padding-sub-menu-vertical); padding-top: var(--padding-sub-menu-vertical); } /* stylelint-enable */ .nav-primary > ul:first-of-type > .menu-item-has-children:focus::before, .nav-primary > ul:first-of-type > .menu-item-has-children:hover::before { transform: scale(1); transition: all 0.2s cubic-bezier(0.19, 1, 0.22, 1); } .sub-menu { background-color: var(--color-background-sub-menu); border-bottom: 1px solid var(--color-border-sub-menu); border-bottom-left-radius: var(--border-radius-sub-menu); border-bottom-right-radius: var(--border-radius-sub-menu); border-left: 1px solid var(--color-border-sub-menu); border-right: 1px solid var(--color-border-sub-menu); border-top-left-radius: var(--border-radius-sub-menu); border-top-right-radius: var(--border-radius-sub-menu); box-shadow: 0 25px 20px -10px rgba(5, 4, 25, 0.05); left: 5%; margin-left: 0; margin-top: var(--gap-dropdown); opacity: 0; padding-bottom: .5rem; padding-left: 0; padding-top: .5rem; position: absolute; top: -9999px; transition: padding 0.2s cubic-bezier(0.19, 1, 0.22, 1); visibility: hidden; width: var(--width-sub-menu); z-index: 9; } .sub-menu .sub-menu { left: 100%; margin-left: 0; margin-top: -5px; top: 0; } .sub-menu li { float: none; padding: 0; width: var(--width-sub-menu); } .menu-item-has-children > .sub-menu.toggled-on, .menu-item-has-children:focus > .sub-menu, .menu-item-has-children:hover > .sub-menu { opacity: 1; top: 100%; transform: translateY(0%); visibility: visible; z-index: 1; } .menu-item-has-children .sub-menu.toggled-on .sub-menu, .menu-item-has-children .sub-menu .sub-menu.toggled-on, .menu-item-has-children:focus .sub-menu .sub-menu, .menu-item-has-children:hover .sub-menu .sub-menu { margin-top: -5px; top: 0; z-index: 10; } .menu-item.menu-item-has-children { align-items: center; display: flex; justify-content: space-between; margin-right: .8rem; position: relative; } .menu-item.menu-item-has-children::after { content: ''; display: block; height: var(--gap-dropdown); position: absolute; top: 100%; width: 100%; } .dropdown-toggle svg { height: var(--dropdown-toggle-size); width: var(--dropdown-toggle-size); transition: all 0.35s cubic-bezier(0.19, 1, 0.22, 1); } .dropdown-toggle.toggled-on svg { transform: rotateX(180deg); } .dropdown-toggle { align-items: center; background-color: transparent; border: 0; color: var(--color-dropdown-toggle); display: inline-flex; justify-content: center; padding: 0; } .sub-menu .dropdown-toggle { width: 3rem; } .sub-menu .dropdown-toggle svg { transform: rotate(-90deg) rotateX(0deg); } .sub-menu .dropdown-toggle.toggled-on svg { transform: rotate(-90deg) rotateX(180deg); } .menu-item.menu-item-has-children > .dropdown-toggle.toggled-on svg, .menu-item.menu-item-has-children:hover > .dropdown-toggle svg, .menu-item.menu-item-has-children:focus > .dropdown-toggle svg { transform: translateY(0%) rotate(180deg); } /* stylelint-disable selector-max-specificity, selector-max-class */ .menu-item.menu-item-has-children .menu-item.menu-item-has-children > .dropdown-toggle.toggled-on svg, .menu-item.menu-item-has-children .menu-item.menu-item-has-children:hover > .dropdown-toggle svg, .menu-item.menu-item-has-children .menu-item.menu-item-has-children:focus > .dropdown-toggle svg { transform: translateY(0%) rotate(90deg); } /* stylelint-enable */ /* stylelint-disable a11y/no-display-none */ .sub-menu .menu-item-has-children::after { display: none; } /* stylelint-enable */ .menu-item-has-children::before { /* stylelint-disable sh-waqar/declaration-use-variable */ border-color: transparent transparent var(--color-white); border-style: solid; border-width: 0 5px 5px; /* stylelint-enable */ bottom: -10px; content: ''; display: block; height: 0; left: 50%; margin-left: -20px; position: absolute; transform: scale(0); transform-origin: center bottom; transition: none; width: 0; } } :root { --font-size-main-level-mobile: 17px; --font-size-sub-menu-mobile: 17px; --font-weight-main-level-mobile: 600; --font-weight-sub-menu-mobile: 600; --dropdown-toggle-size-mobile: 12px; --height-navigation-mobile: 72px; --margin-left-sub-menu: 2rem; --padding-sub-menu-vertical-mobile: 1.2rem; --padding-sub-menu-horizontal-mobile: 2.5rem; --color-active-main-level-mobile: var(--color-white); --color-background-nav-mobile-header: var(--color-main); --color-background-nav-mobile-layer: var(--color-main); --color-current-mobile: var(--color-white); --color-dropdown-toggle-mobile: var(--color-white); --color-hamburger-active: var(--color-white); --color-hamburger: var(--color-white); --color-main-level-mobile: var(--color-white); --color-separator-nav-mobile: rgba(255, 255, 255, .1); --color-sub-menu-mobile: rgba(255, 255, 255, .8); } /*! * Hamburgers * @description Tasty CSS-animated hamburgers * @author Jonathan Suh @jonsuh * @site https://jonsuh.com/hamburgers * @link https://github.com/jonsuh/hamburgers */ .hamburger { padding: 4rem 1.5rem; display: inline-block; cursor: pointer; transition-property: opacity, filter; transition-duration: 0.15s; transition-timing-function: linear; font: inherit; color: inherit; text-transform: none; background-color: transparent; border: 0; margin: 0; overflow: visible; } .hamburger:hover { opacity: 0.8; } .hamburger.is-active:hover { opacity: 0.8; } .hamburger.is-active .hamburger-inner, .hamburger.is-active .hamburger-inner::before, .hamburger.is-active .hamburger-inner::after { background-color: var(--color-hamburger); } .hamburger-box { width: 3rem; height: 1.6rem; display: inline-block; position: relative; } .hamburger-inner { display: block; top: 50%; margin-top: -0.1rem; } .hamburger-inner, .hamburger-inner::before, .hamburger-inner::after { width: 3rem; height: 0.2rem; background-color: var(--color-hamburger); border-radius: 0; position: absolute; transition-property: transform; transition-duration: 0.15s; transition-timing-function: ease; } .hamburger-inner::before, .hamburger-inner::after { content: ""; display: block; } .hamburger-inner::before { top: -0.7rem; } .hamburger-inner::after { bottom: -0.7rem; } /* * 3DX */ .hamburger--3dx .hamburger-box { perspective: 6rem; } .hamburger--3dx .hamburger-inner { transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); } .hamburger--3dx .hamburger-inner::before, .hamburger--3dx .hamburger-inner::after { transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); } .hamburger--3dx.is-active .hamburger-inner { background-color: transparent !important; transform: rotateY(180deg); } .hamburger--3dx.is-active .hamburger-inner::before { transform: translate3d(0, 0.7rem, 0) rotate(45deg); } .hamburger--3dx.is-active .hamburger-inner::after { transform: translate3d(0, -0.7rem, 0) rotate(-45deg); } /* * 3DX Reverse */ .hamburger--3dx-r .hamburger-box { perspective: 6rem; } .hamburger--3dx-r .hamburger-inner { transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); } .hamburger--3dx-r .hamburger-inner::before, .hamburger--3dx-r .hamburger-inner::after { transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); } .hamburger--3dx-r.is-active .hamburger-inner { background-color: transparent !important; transform: rotateY(-180deg); } .hamburger--3dx-r.is-active .hamburger-inner::before { transform: translate3d(0, 0.7rem, 0) rotate(45deg); } .hamburger--3dx-r.is-active .hamburger-inner::after { transform: translate3d(0, -0.7rem, 0) rotate(-45deg); } /* * 3DY */ .hamburger--3dy .hamburger-box { perspective: 6rem; } .hamburger--3dy .hamburger-inner { transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); } .hamburger--3dy .hamburger-inner::before, .hamburger--3dy .hamburger-inner::after { transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); } .hamburger--3dy.is-active .hamburger-inner { background-color: transparent !important; transform: rotateX(-180deg); } .hamburger--3dy.is-active .hamburger-inner::before { transform: translate3d(0, 0.7rem, 0) rotate(45deg); } .hamburger--3dy.is-active .hamburger-inner::after { transform: translate3d(0, -0.7rem, 0) rotate(-45deg); } /* * 3DY Reverse */ .hamburger--3dy-r .hamburger-box { perspective: 6rem; } .hamburger--3dy-r .hamburger-inner { transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); } .hamburger--3dy-r .hamburger-inner::before, .hamburger--3dy-r .hamburger-inner::after { transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); } .hamburger--3dy-r.is-active .hamburger-inner { background-color: transparent !important; transform: rotateX(180deg); } .hamburger--3dy-r.is-active .hamburger-inner::before { transform: translate3d(0, 0.7rem, 0) rotate(45deg); } .hamburger--3dy-r.is-active .hamburger-inner::after { transform: translate3d(0, -0.7rem, 0) rotate(-45deg); } /* * 3DXY */ .hamburger--3dxy .hamburger-box { perspective: 6rem; } .hamburger--3dxy .hamburger-inner { transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); } .hamburger--3dxy .hamburger-inner::before, .hamburger--3dxy .hamburger-inner::after { transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); } .hamburger--3dxy.is-active .hamburger-inner { background-color: transparent !important; transform: rotateX(180deg) rotateY(180deg); } .hamburger--3dxy.is-active .hamburger-inner::before { transform: translate3d(0, 0.7rem, 0) rotate(45deg); } .hamburger--3dxy.is-active .hamburger-inner::after { transform: translate3d(0, -0.7rem, 0) rotate(-45deg); } /* * 3DXY Reverse */ .hamburger--3dxy-r .hamburger-box { perspective: 6rem; } .hamburger--3dxy-r .hamburger-inner { transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); } .hamburger--3dxy-r .hamburger-inner::before, .hamburger--3dxy-r .hamburger-inner::after { transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); } .hamburger--3dxy-r.is-active .hamburger-inner { background-color: transparent !important; transform: rotateX(180deg) rotateY(180deg) rotateZ(-180deg); } .hamburger--3dxy-r.is-active .hamburger-inner::before { transform: translate3d(0, 0.7rem, 0) rotate(45deg); } .hamburger--3dxy-r.is-active .hamburger-inner::after { transform: translate3d(0, -0.7rem, 0) rotate(-45deg); } /* * Arrow */ .hamburger--arrow.is-active .hamburger-inner::before { transform: translate3d(-0.6rem, 0, 0) rotate(-45deg) scale(0.7, 1); } .hamburger--arrow.is-active .hamburger-inner::after { transform: translate3d(-0.6rem, 0, 0) rotate(45deg) scale(0.7, 1); } /* * Arrow Right */ .hamburger--arrow-r.is-active .hamburger-inner::before { transform: translate3d(0.6rem, 0, 0) rotate(45deg) scale(0.7, 1); } .hamburger--arrow-r.is-active .hamburger-inner::after { transform: translate3d(0.6rem, 0, 0) rotate(-45deg) scale(0.7, 1); } /* * Arrow Alt */ .hamburger--arrowalt .hamburger-inner::before { transition: top 0.1s 0.1s ease, transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1); } .hamburger--arrowalt .hamburger-inner::after { transition: bottom 0.1s 0.1s ease, transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1); } .hamburger--arrowalt.is-active .hamburger-inner::before { top: 0; transform: translate3d(-0.6rem, -0.75rem, 0) rotate(-45deg) scale(0.7, 1); transition: top 0.1s ease, transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22); } .hamburger--arrowalt.is-active .hamburger-inner::after { bottom: 0; transform: translate3d(-0.6rem, 0.75rem, 0) rotate(45deg) scale(0.7, 1); transition: bottom 0.1s ease, transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22); } /* * Arrow Alt Right */ .hamburger--arrowalt-r .hamburger-inner::before { transition: top 0.1s 0.1s ease, transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1); } .hamburger--arrowalt-r .hamburger-inner::after { transition: bottom 0.1s 0.1s ease, transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1); } .hamburger--arrowalt-r.is-active .hamburger-inner::before { top: 0; transform: translate3d(0.6rem, -0.75rem, 0) rotate(45deg) scale(0.7, 1); transition: top 0.1s ease, transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22); } .hamburger--arrowalt-r.is-active .hamburger-inner::after { bottom: 0; transform: translate3d(0.6rem, 0.75rem, 0) rotate(-45deg) scale(0.7, 1); transition: bottom 0.1s ease, transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22); } /* * Arrow Turn */ .hamburger--arrowturn.is-active .hamburger-inner { transform: rotate(-180deg); } .hamburger--arrowturn.is-active .hamburger-inner::before { transform: translate3d(8px, 0, 0) rotate(45deg) scale(0.7, 1); } .hamburger--arrowturn.is-active .hamburger-inner::after { transform: translate3d(8px, 0, 0) rotate(-45deg) scale(0.7, 1); } /* * Arrow Turn Right */ .hamburger--arrowturn-r.is-active .hamburger-inner { transform: rotate(-180deg); } .hamburger--arrowturn-r.is-active .hamburger-inner::before { transform: translate3d(-8px, 0, 0) rotate(-45deg) scale(0.7, 1); } .hamburger--arrowturn-r.is-active .hamburger-inner::after { transform: translate3d(-8px, 0, 0) rotate(45deg) scale(0.7, 1); } /* * Boring */ .hamburger--boring .hamburger-inner, .hamburger--boring .hamburger-inner::before, .hamburger--boring .hamburger-inner::after { transition-property: none; } .hamburger--boring.is-active .hamburger-inner { transform: rotate(45deg); } .hamburger--boring.is-active .hamburger-inner::before { top: 0; opacity: 0; } .hamburger--boring.is-active .hamburger-inner::after { bottom: 0; transform: rotate(-90deg); } /* * Collapse */ .hamburger--collapse .hamburger-inner, .hamburger .hamburger-inner { top: auto; bottom: 0; transition-duration: 0.13s; transition-delay: 0.13s; transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); } .hamburger--collapse .hamburger-inner::after, .hamburger .hamburger-inner::after { top: -1.4rem; transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), opacity 0.1s linear; } .hamburger--collapse .hamburger-inner::before, .hamburger .hamburger-inner::before { transition: top 0.12s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19); } .hamburger--collapse.is-active .hamburger-inner, .is-active.hamburger .hamburger-inner { transform: translate3d(0, -0.7rem, 0) rotate(-45deg); transition-delay: 0.22s; transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); } .hamburger--collapse.is-active .hamburger-inner::after, .is-active.hamburger .hamburger-inner::after { top: 0; opacity: 0; transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), opacity 0.1s 0.22s linear; } .hamburger--collapse.is-active .hamburger-inner::before, .is-active.hamburger .hamburger-inner::before { top: 0; transform: rotate(-90deg); transition: top 0.1s 0.16s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.25s cubic-bezier(0.215, 0.61, 0.355, 1); } /* * Collapse Reverse */ .hamburger--collapse-r .hamburger-inner { top: auto; bottom: 0; transition-duration: 0.13s; transition-delay: 0.13s; transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); } .hamburger--collapse-r .hamburger-inner::after { top: -1.4rem; transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), opacity 0.1s linear; } .hamburger--collapse-r .hamburger-inner::before { transition: top 0.12s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19); } .hamburger--collapse-r.is-active .hamburger-inner { transform: translate3d(0, -0.7rem, 0) rotate(45deg); transition-delay: 0.22s; transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); } .hamburger--collapse-r.is-active .hamburger-inner::after { top: 0; opacity: 0; transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), opacity 0.1s 0.22s linear; } .hamburger--collapse-r.is-active .hamburger-inner::before { top: 0; transform: rotate(90deg); transition: top 0.1s 0.16s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.25s cubic-bezier(0.215, 0.61, 0.355, 1); } /* * Elastic */ .hamburger--elastic .hamburger-inner { top: 0.1rem; transition-duration: 0.275s; transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55); } .hamburger--elastic .hamburger-inner::before { top: 0.7rem; transition: opacity 0.125s 0.275s ease; } .hamburger--elastic .hamburger-inner::after { top: 1.4rem; transition: transform 0.275s cubic-bezier(0.68, -0.55, 0.265, 1.55); } .hamburger--elastic.is-active .hamburger-inner { transform: translate3d(0, 0.7rem, 0) rotate(135deg); transition-delay: 0.075s; } .hamburger--elastic.is-active .hamburger-inner::before { transition-delay: 0s; opacity: 0; } .hamburger--elastic.is-active .hamburger-inner::after { transform: translate3d(0, -1.4rem, 0) rotate(-270deg); transition-delay: 0.075s; } /* * Elastic Reverse */ .hamburger--elastic-r .hamburger-inner { top: 0.1rem; transition-duration: 0.275s; transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55); } .hamburger--elastic-r .hamburger-inner::before { top: 0.7rem; transition: opacity 0.125s 0.275s ease; } .hamburger--elastic-r .hamburger-inner::after { top: 1.4rem; transition: transform 0.275s cubic-bezier(0.68, -0.55, 0.265, 1.55); } .hamburger--elastic-r.is-active .hamburger-inner { transform: translate3d(0, 0.7rem, 0) rotate(-135deg); transition-delay: 0.075s; } .hamburger--elastic-r.is-active .hamburger-inner::before { transition-delay: 0s; opacity: 0; } .hamburger--elastic-r.is-active .hamburger-inner::after { transform: translate3d(0, -1.4rem, 0) rotate(270deg); transition-delay: 0.075s; } /* * Emphatic */ .hamburger--emphatic { overflow: hidden; } .hamburger--emphatic .hamburger-inner { transition: background-color 0.125s 0.175s ease-in; } .hamburger--emphatic .hamburger-inner::before { left: 0; transition: transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335), top 0.05s 0.125s linear, left 0.125s 0.175s ease-in; } .hamburger--emphatic .hamburger-inner::after { top: 0.7rem; right: 0; transition: transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335), top 0.05s 0.125s linear, right 0.125s 0.175s ease-in; } .hamburger--emphatic.is-active .hamburger-inner { transition-delay: 0s; transition-timing-function: ease-out; background-color: transparent !important; } .hamburger--emphatic.is-active .hamburger-inner::before { left: -6rem; top: -6rem; transform: translate3d(6rem, 6rem, 0) rotate(45deg); transition: left 0.125s ease-out, top 0.05s 0.125s linear, transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1); } .hamburger--emphatic.is-active .hamburger-inner::after { right: -6rem; top: -6rem; transform: translate3d(-6rem, 6rem, 0) rotate(-45deg); transition: right 0.125s ease-out, top 0.05s 0.125s linear, transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1); } /* * Emphatic Reverse */ .hamburger--emphatic-r { overflow: hidden; } .hamburger--emphatic-r .hamburger-inner { transition: background-color 0.125s 0.175s ease-in; } .hamburger--emphatic-r .hamburger-inner::before { left: 0; transition: transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335), top 0.05s 0.125s linear, left 0.125s 0.175s ease-in; } .hamburger--emphatic-r .hamburger-inner::after { top: 0.7rem; right: 0; transition: transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335), top 0.05s 0.125s linear, right 0.125s 0.175s ease-in; } .hamburger--emphatic-r.is-active .hamburger-inner { transition-delay: 0s; transition-timing-function: ease-out; background-color: transparent !important; } .hamburger--emphatic-r.is-active .hamburger-inner::before { left: -6rem; top: 6rem; transform: translate3d(6rem, -6rem, 0) rotate(-45deg); transition: left 0.125s ease-out, top 0.05s 0.125s linear, transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1); } .hamburger--emphatic-r.is-active .hamburger-inner::after { right: -6rem; top: 6rem; transform: translate3d(-6rem, -6rem, 0) rotate(45deg); transition: right 0.125s ease-out, top 0.05s 0.125s linear, transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1); } /* * Minus */ .hamburger--minus .hamburger-inner::before, .hamburger--minus .hamburger-inner::after { transition: bottom 0.08s 0s ease-out, top 0.08s 0s ease-out, opacity 0s linear; } .hamburger--minus.is-active .hamburger-inner::before, .hamburger--minus.is-active .hamburger-inner::after { opacity: 0; transition: bottom 0.08s ease-out, top 0.08s ease-out, opacity 0s 0.08s linear; } .hamburger--minus.is-active .hamburger-inner::before { top: 0; } .hamburger--minus.is-active .hamburger-inner::after { bottom: 0; } /* * Slider */ .hamburger--slider .hamburger-inner { top: 0.1rem; } .hamburger--slider .hamburger-inner::before { top: 0.7rem; transition-property: transform, opacity; transition-timing-function: ease; transition-duration: 0.15s; } .hamburger--slider .hamburger-inner::after { top: 1.4rem; } .hamburger--slider.is-active .hamburger-inner { transform: translate3d(0, 0.7rem, 0) rotate(45deg); } .hamburger--slider.is-active .hamburger-inner::before { transform: rotate(-45deg) translate3d(-0.42857rem, -0.5rem, 0); opacity: 0; } .hamburger--slider.is-active .hamburger-inner::after { transform: translate3d(0, -1.4rem, 0) rotate(-90deg); } /* * Slider Reverse */ .hamburger--slider-r .hamburger-inner { top: 0.1rem; } .hamburger--slider-r .hamburger-inner::before { top: 0.7rem; transition-property: transform, opacity; transition-timing-function: ease; transition-duration: 0.15s; } .hamburger--slider-r .hamburger-inner::after { top: 1.4rem; } .hamburger--slider-r.is-active .hamburger-inner { transform: translate3d(0, 0.7rem, 0) rotate(-45deg); } .hamburger--slider-r.is-active .hamburger-inner::before { transform: rotate(45deg) translate3d(0.42857rem, -0.5rem, 0); opacity: 0; } .hamburger--slider-r.is-active .hamburger-inner::after { transform: translate3d(0, -1.4rem, 0) rotate(90deg); } /* * Spin */ .hamburger--spin .hamburger-inner { transition-duration: 0.22s; transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); } .hamburger--spin .hamburger-inner::before { transition: top 0.1s 0.25s ease-in, opacity 0.1s ease-in; } .hamburger--spin .hamburger-inner::after { transition: bottom 0.1s 0.25s ease-in, transform 0.22s cubic-bezier(0.55, 0.055, 0.675, 0.19); } .hamburger--spin.is-active .hamburger-inner { transform: rotate(225deg); transition-delay: 0.12s; transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); } .hamburger--spin.is-active .hamburger-inner::before { top: 0; opacity: 0; transition: top 0.1s ease-out, opacity 0.1s 0.12s ease-out; } .hamburger--spin.is-active .hamburger-inner::after { bottom: 0; transform: rotate(-90deg); transition: bottom 0.1s ease-out, transform 0.22s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1); } /* * Spin Reverse */ .hamburger--spin-r .hamburger-inner { transition-duration: 0.22s; transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); } .hamburger--spin-r .hamburger-inner::before { transition: top 0.1s 0.25s ease-in, opacity 0.1s ease-in; } .hamburger--spin-r .hamburger-inner::after { transition: bottom 0.1s 0.25s ease-in, transform 0.22s cubic-bezier(0.55, 0.055, 0.675, 0.19); } .hamburger--spin-r.is-active .hamburger-inner { transform: rotate(-225deg); transition-delay: 0.12s; transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); } .hamburger--spin-r.is-active .hamburger-inner::before { top: 0; opacity: 0; transition: top 0.1s ease-out, opacity 0.1s 0.12s ease-out; } .hamburger--spin-r.is-active .hamburger-inner::after { bottom: 0; transform: rotate(90deg); transition: bottom 0.1s ease-out, transform 0.22s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1); } /* * Spring */ .hamburger--spring .hamburger-inner { top: 0.1rem; transition: background-color 0s 0.13s linear; } .hamburger--spring .hamburger-inner::before { top: 0.7rem; transition: top 0.1s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19); } .hamburger--spring .hamburger-inner::after { top: 1.4rem; transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19); } .hamburger--spring.is-active .hamburger-inner { transition-delay: 0.22s; background-color: transparent !important; } .hamburger--spring.is-active .hamburger-inner::before { top: 0; transition: top 0.1s 0.15s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1); transform: translate3d(0, 0.7rem, 0) rotate(45deg); } .hamburger--spring.is-active .hamburger-inner::after { top: 0; transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1); transform: translate3d(0, 0.7rem, 0) rotate(-45deg); } /* * Spring Reverse */ .hamburger--spring-r .hamburger-inner { top: auto; bottom: 0; transition-duration: 0.13s; transition-delay: 0s; transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); } .hamburger--spring-r .hamburger-inner::after { top: -1.4rem; transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), opacity 0s linear; } .hamburger--spring-r .hamburger-inner::before { transition: top 0.1s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19); } .hamburger--spring-r.is-active .hamburger-inner { transform: translate3d(0, -0.7rem, 0) rotate(-45deg); transition-delay: 0.22s; transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); } .hamburger--spring-r.is-active .hamburger-inner::after { top: 0; opacity: 0; transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), opacity 0s 0.22s linear; } .hamburger--spring-r.is-active .hamburger-inner::before { top: 0; transform: rotate(90deg); transition: top 0.1s 0.15s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1); } /* * Stand */ .hamburger--stand .hamburger-inner { transition: transform 0.075s 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19), background-color 0s 0.075s linear; } .hamburger--stand .hamburger-inner::before { transition: top 0.075s 0.075s ease-in, transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19); } .hamburger--stand .hamburger-inner::after { transition: bottom 0.075s 0.075s ease-in, transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19); } .hamburger--stand.is-active .hamburger-inner { transform: rotate(90deg); background-color: transparent !important; transition: transform 0.075s 0s cubic-bezier(0.215, 0.61, 0.355, 1), background-color 0s 0.15s linear; } .hamburger--stand.is-active .hamburger-inner::before { top: 0; transform: rotate(-45deg); transition: top 0.075s 0.1s ease-out, transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1); } .hamburger--stand.is-active .hamburger-inner::after { bottom: 0; transform: rotate(45deg); transition: bottom 0.075s 0.1s ease-out, transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1); } /* * Stand Reverse */ .hamburger--stand-r .hamburger-inner { transition: transform 0.075s 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19), background-color 0s 0.075s linear; } .hamburger--stand-r .hamburger-inner::before { transition: top 0.075s 0.075s ease-in, transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19); } .hamburger--stand-r .hamburger-inner::after { transition: bottom 0.075s 0.075s ease-in, transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19); } .hamburger--stand-r.is-active .hamburger-inner { transform: rotate(-90deg); background-color: transparent !important; transition: transform 0.075s 0s cubic-bezier(0.215, 0.61, 0.355, 1), background-color 0s 0.15s linear; } .hamburger--stand-r.is-active .hamburger-inner::before { top: 0; transform: rotate(-45deg); transition: top 0.075s 0.1s ease-out, transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1); } .hamburger--stand-r.is-active .hamburger-inner::after { bottom: 0; transform: rotate(45deg); transition: bottom 0.075s 0.1s ease-out, transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1); } /* * Squeeze */ .hamburger--squeeze .hamburger-inner { transition-duration: 0.075s; transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); } .hamburger--squeeze .hamburger-inner::before { transition: top 0.075s 0.12s ease, opacity 0.075s ease; } .hamburger--squeeze .hamburger-inner::after { transition: bottom 0.075s 0.12s ease, transform 0.075s cubic-bezier(0.55, 0.055, 0.675, 0.19); } .hamburger--squeeze.is-active .hamburger-inner { transform: rotate(45deg); transition-delay: 0.12s; transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); } .hamburger--squeeze.is-active .hamburger-inner::before { top: 0; opacity: 0; transition: top 0.075s ease, opacity 0.075s 0.12s ease; } .hamburger--squeeze.is-active .hamburger-inner::after { bottom: 0; transform: rotate(-90deg); transition: bottom 0.075s ease, transform 0.075s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1); } /* * Vortex */ .hamburger--vortex .hamburger-inner { transition-duration: 0.2s; transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1); } .hamburger--vortex .hamburger-inner::before, .hamburger--vortex .hamburger-inner::after { transition-duration: 0s; transition-delay: 0.1s; transition-timing-function: linear; } .hamburger--vortex .hamburger-inner::before { transition-property: top, opacity; } .hamburger--vortex .hamburger-inner::after { transition-property: bottom, transform; } .hamburger--vortex.is-active .hamburger-inner { transform: rotate(765deg); transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1); } .hamburger--vortex.is-active .hamburger-inner::before, .hamburger--vortex.is-active .hamburger-inner::after { transition-delay: 0s; } .hamburger--vortex.is-active .hamburger-inner::before { top: 0; opacity: 0; } .hamburger--vortex.is-active .hamburger-inner::after { bottom: 0; transform: rotate(90deg); } /* * Vortex Reverse */ .hamburger--vortex-r .hamburger-inner { transition-duration: 0.2s; transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1); } .hamburger--vortex-r .hamburger-inner::before, .hamburger--vortex-r .hamburger-inner::after { transition-duration: 0s; transition-delay: 0.1s; transition-timing-function: linear; } .hamburger--vortex-r .hamburger-inner::before { transition-property: top, opacity; } .hamburger--vortex-r .hamburger-inner::after { transition-property: bottom, transform; } .hamburger--vortex-r.is-active .hamburger-inner { transform: rotate(-765deg); transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1); } .hamburger--vortex-r.is-active .hamburger-inner::before, .hamburger--vortex-r.is-active .hamburger-inner::after { transition-delay: 0s; } .hamburger--vortex-r.is-active .hamburger-inner::before { top: 0; opacity: 0; } .hamburger--vortex-r.is-active .hamburger-inner::after { bottom: 0; transform: rotate(-90deg); } @media only screen and (max-width: 960px) { /* stylelint-disable a11y/no-display-none */ .js .menu-items ul { display: none; } /* stylelint-enable */ } @media only screen and (max-width: 960px) { .js ul .sub-menu.toggled-on { display: block; } } @media (max-width: 960px) { .nav-container { background-color: var(--color-background-nav-mobile-header); left: 0; position: absolute; top: 0; width: 100%; } .site { padding-top: var(--height-navigation-mobile); } } @media screen and (max-width: 959px) { .site-header ul, .site-header li, .site-header a { position: relative; } .main-navigation-wrapper { order: 6; z-index: 999; } .no-js .site-header { background-color: var(--color-background-nav-mobile-header); position: static; } .disable-scroll { overflow: hidden; } .nav-primary { background-color: var(--color-background-nav-mobile-layer); display: block; height: calc(100vh - var(--height-navigation-mobile)); margin: 0; opacity: 0; overflow: auto; pointer-events: none; transition: all 0.22s ease-in-out; visibility: hidden; width: 100vw; } .menu-items { margin: 0; opacity: 0; padding: 2rem 0; width: 100%; } .menu-item a { border-top: 1px solid var(--color-separator-nav-mobile); color: var(--color-main-level-mobile); display: block; font-size: var(--font-size-main-level-mobile); font-weight: var(--font-weight-main-level-mobile); margin-left: 0; margin-right: 0; padding-bottom: var(--padding-sub-menu-vertical-mobile); padding-left: var(--padding-sub-menu-horizontal-mobile); padding-right: var(--padding-sub-menu-horizontal-mobile); padding-top: var(--padding-sub-menu-vertical-mobile); position: relative; text-decoration: none; z-index: 0; } .sub-menu a { color: var(--color-sub-menu-mobile); font-size: var(--font-size-sub-menu-mobile); font-weight: var(--font-weight-sub-menu-mobile); padding-left: calc(var(--padding-sub-menu-horizontal-mobile) + var(--margin-left-sub-menu)); } .sub-menu { margin-left: 0; padding-left: 0; } .sub-menu .sub-menu a { padding-left: calc(var(--padding-sub-menu-horizontal-mobile) + var(--margin-left-sub-menu) + var(--margin-left-sub-menu)); } .menu-item a:hover, .menu-item a:focus { color: var(--color-active-main-level-mobile); } .menu-item.current-menu-parent > a, .menu-item.current-menu-item > a { color: var(--color-current-mobile); } .dropdown-toggle { align-items: center; background-color: transparent; border: 0; color: var(--color-dropdown-toggle-mobile); display: inline-flex; height: 100%; left: auto; margin-top: 0; max-height: 52px; overflow: hidden; padding-bottom: var(--padding-sub-menu-vertical-mobile); padding-left: var(--padding-sub-menu-horizontal-mobile); padding-right: var(--padding-sub-menu-horizontal-mobile); padding-top: var(--padding-sub-menu-vertical-mobile); position: absolute; right: 0; top: 2px; transform: rotate(0); transition: all 0.22s; z-index: 9999; } .dropdown-toggle:focus { z-index: 10000; } .sub-menu .dropdown-toggle { color: var(--color-sub-menu-mobile); } .dropdown-toggle svg { height: var(--dropdown-toggle-size-mobile); width: var(--dropdown-toggle-size-mobile); /* stylelint-disable a11y/no-display-none */ /* stylelint-enable */ } .dropdown-toggle.toggled-on { background-color: transparent; cursor: pointer; transform: rotate(-180deg); } .js .nav-primary { left: 0; position: fixed; top: var(--height-navigation-mobile); z-index: 5; } .js .nav-primary .menu-items { background-color: var(--color-background-nav-mobile-layer); padding: 0; } .js.js-nav-active { overflow: hidden; } .js.js-nav-active .nav-primary { opacity: 1; pointer-events: all; visibility: visible; } .js.js-nav-active .menu-items { opacity: 1; } } .hamburger.is-active .hamburger-inner, .hamburger.is-active .hamburger-inner::before, .hamburger.is-active .hamburger-inner::after { background-color: var(--color-hamburger-active); color: var(--color-hamburger-active); } .nav-toggle { background-color: transparent; border: 0; color: var(--color-hamburger); cursor: pointer; font-weight: var(--font-weight-bold); margin: 0; overflow: visible; padding: 0; position: relative; text-decoration: none; top: 0; -webkit-user-select: none; -moz-user-select: none; user-select: none; z-index: 100000; /* stylelint-disable a11y/no-display-none */ /* stylelint-enable */ } @media (min-width: 960px) { .nav-toggle { display: none; } } .nav-toggle:not(.toggled-on) .hamburger-inner { transition: width 0.22s; width: 18px; } .nav-toggle.is-active .hamburger-inner, .nav-toggle:hover .hamburger-inner, .nav-toggle:focus .hamburger-inner { width: 3rem; } .nav-toggle span { color: var(--color-hamburger); font-size: 1.2em; } .nav-toggle.is-active span { color: var(--color-hamburger-active); } .nav-toggle:hover, .nav-toggle:active { color: var(--color-hamburger); } .nav-toggle:hover span, .nav-toggle:active span { color: var(--color-hamburger); } .nav-toggle:focus span span { background-color: var(--color-hamburger); } .nav-toggle:focus span span::before, .nav-toggle:focus span span::after { background-color: var(--color-hamburger); } .nav-toggle:not(.has-visible-label) .nav-toggle-label { display: none; } @media (max-width: 959px) { .nav-toggle { display: block; } .nav-toggle.has-visible-label { align-items: center; display: flex; } .nav-toggle.has-visible-label .nav-toggle-label { font-size: var(--font-size-nav-toggle-label); } } @media (max-width: 959px) and (max-width: 410px) { .nav-toggle.has-visible-label .nav-toggle-label { display: none; } } @media (max-width: 959px) and (min-width: 411px) { .nav-toggle.has-visible-label .hamburger-box { margin-right: 2rem; } } .nav-toggle.is-active { color: var(--color-hamburger-active); } .nav-toggle.is-active .hamburger-box .hamburger-inner { background-color: var(--color-hamburger-active); } .nav-toggle.is-active .hamburger-box .hamburger-inner::after { background-color: var(--color-hamburger-active); } .nav-toggle.is-active .focus .hamburger-inner, .nav-toggle.is-active span:focus .hamburger-inner { background-color: var(--color-hamburger-active); } .nav-toggle.is-active .focus .hamburger-inner::after, .nav-toggle.is-active span:focus .hamburger-inner::after { background-color: var(--color-hamburger-active); } .nav-toggle.is-active span:focus, .nav-toggle.is-active span:hover, .nav-toggle.is-active span:active { color: var(--color-hamburger-active); } .nav-toggle.is-active span:focus span, .nav-toggle.is-active span:hover span, .nav-toggle.is-active span:active span { color: var(--color-hamburger-active); } /* stylelint-disable */ :root { --color-baby-blue: #60f4ea; --color-heliotrope: #866cff; --color-wild-blue-yonder: #737fbf; --color-wild-blue-yonder-rgb: 115, 127, 191; --color-border-demo-header: rgba(var(--color-wild-blue-yonder-rgb), .5); } @media (min-width: 960px) { body .nav-container { background-color: var(--color-main); } } .site-header { padding-top: 4rem; padding-bottom: 4rem; } @media (max-width: 960px) { .site-header { padding-top: 2rem; padding-bottom: 2rem; } } .site-header .site-title { margin: 0; } .site-header .site-title svg { transition: transform 1s ease-in; } @media screen and (prefers-reduced-motion: reduce), (update: slow) { .site-header .site-title svg { transition: none; } } .site-header .site-title .clr-i-solid-path-2 { fill: var(--color-white); } .site-header .site-title a { color: var(--color-baby-blue); display: flex; align-items: center; } .site-header .site-title a:hover svg { transition: transform 0.4s cubic-bezier(0.6, -0.68, 0.73, 0.04); transform: translate(260%, -220%); } @media screen and (prefers-reduced-motion: reduce), (update: slow) { .site-header .site-title a:hover svg { transition: none; transform: none; } } .site-header .site-title a:hover svg .clr-i-solid-path-2 { display: block !important; fill: var(--color-baby-blue); } .site-header .site-title .logo-name { content: 'Air'; display: block; text-transform: lowercase; letter-spacing: .1em; font-weight: var(--font-weight-paragraphs); color: var(--color-white); margin-left: .75rem; font-size: 2.2rem; } .block.block-entry-header-demo { background-color: var(--color-valhalla); display: flex; align-items: center; justify-content: center; position: relative; max-height: 80rem; height: 60vh; max-width: 100%; margin: 0 auto; } @media (min-width: 480px) { .block.block-entry-header-demo { min-height: 60rem; } } @media (max-width: 480px) { .block.block-entry-header-demo { padding-top: 6rem; padding-bottom: 6rem; } } .block.block-entry-header-demo .shade { opacity: .4; } .block.block-entry-header-demo .inner { display: grid; grid-template-rows: 1fr 1fr; /* autoprefixer: off */ align-items: center; max-height: 100%; justify-items: center; padding: 2rem; max-width: 1200px; margin-top: 140px; margin-bottom: 80px; } @media (min-width: 770px) { .block.block-entry-header-demo .inner { padding: 0; display: grid; grid-template-rows: none; grid-template-columns: 3fr 5fr; max-width: 800px; } } @-webkit-keyframes plane-container { 0% { overflow: visible; } 80% { overflow: hidden; } 100% { overflow: hidden; } } @keyframes plane-container { 0% { overflow: visible; } 80% { overflow: hidden; } 100% { overflow: hidden; } } .block.block-entry-header-demo .logo { color: var(--color-baby-blue); border-top: 2px solid var(--color-border-demo-header); border-right: 0; width: 100%; text-align: center; order: 2; overflow: visible; -webkit-animation: plane-container 10s linear 1s infinite; animation: plane-container 10s linear 1s infinite; } .block.block-entry-header-demo .logo .logo-name { display: none; } @-webkit-keyframes plane { 0% { transform: translate(-200%, 140%); } 10% { transform: translate(0, 0); opacity: 1; } 85% { transform: translate(0, 0); opacity: 1; } 95% { transform: translate(140%, -100%); } 97% { opacity: 0; } 100% { transform: translate(0, 0); } } @keyframes plane { 0% { transform: translate(-200%, 140%); } 10% { transform: translate(0, 0); opacity: 1; } 85% { transform: translate(0, 0); opacity: 1; } 95% { transform: translate(140%, -100%); } 97% { opacity: 0; } 100% { transform: translate(0, 0); } } .block.block-entry-header-demo .logo svg { padding: 2rem; height: auto; width: 100%; max-width: 20rem; opacity: 0; transform: translate(-100%, 100%); -webkit-animation: plane 5s cubic-bezier(0.86, 0, 0.07, 1) 1s infinite; animation: plane 5s cubic-bezier(0.86, 0, 0.07, 1) 1s infinite; -webkit-animation-delay: -5s; animation-delay: -5s; position: relative; z-index: 6; } @media screen and (prefers-reduced-motion: reduce), (update: slow) { .block.block-entry-header-demo .logo svg { -webkit-animation: none; animation: none; transform: none; opacity: 1; } } @media (max-width: 480px) { .block.block-entry-header-demo .logo svg { max-width: 15rem; } } @media (min-width: 770px) { .block.block-entry-header-demo .logo { border-top: 0; border-right: 2px solid var(--color-border-demo-header); order: 0; text-align: right; } .block.block-entry-header-demo .logo svg { padding: 2rem 4rem; } } .block.block-entry-header-demo .heading-hero { color: var(--color-white); margin: 0; padding: 2rem; position: relative; z-index: 2; text-align: center; line-height: 1.23; } @media (min-width: 770px) { .block.block-entry-header-demo .heading-hero { padding: 2rem 4rem; text-align: left; } } .accent { font-size: var(--font-size-h3); font-style: normal; letter-spacing: .05em; text-transform: lowercase; font-weight: var(--font-weight-medium); margin: 0; margin-bottom: 1rem; color: var(--color-wild-blue-yonder); display: block; position: relative; z-index: 2; } @media (min-width: 960px) { .dropdown-toggle, .menu-item.current-menu-item > a, .menu-item.current-menu-parent > a, .site-header .site-branding .site-title a, .site-header .nav-primary .menu-items.nav-menu .menu-item > .dropdown-toggle, .site-header .nav-primary .menu-items .current-menu-parent > a, .site-header .nav-primary .menu-items .current-menu-item > a { color: var(--color-baby-blue); } .site-header .nav-primary .menu-items .sub-menu .current-menu-parent > a, .site-header .nav-primary .menu-items .sub-menu .current-menu-item > a, .site-header .nav-primary .menu-items .sub-menu .dropdown-toggle { color: var(--color-current); } .site-header .nav-primary .menu-items.nav-menu .sub-menu .menu-item > .dropdown-toggle { color: var(--color-valhalla); } } .block.block-entry-header-demo + .block .container { max-width: 800px; } .block.block-entry-header-demo + .block .container.gutenberg-content { max-width: 100%; } .block.block-blog article, .block.block-blog nav { max-width: 800px; margin-left: auto; margin-right: auto; } .block-blog article { margin-bottom: var(--padding-block); } .block-blog article:last-child { margin-bottom: 0; } .block-blog ul.tags { padding-left: 0; } @media (min-width: 960px) { .block { min-height: 78px; } } .site-footer { background-color: var(--color-valhalla); } .components { display: flex; flex-wrap: wrap; margin-top: 6rem; margin-bottom: -4rem; align-items: flex-start; } .heading-demo { margin-top: 6rem; } .link-demo { border-bottom: 1px solid var(--color-link-border-bottom); box-shadow: inset 0 0 0 var(--color-link-background-hover); color: var(--color-link-text); display: inline; text-decoration: none; transition: box-shadow 0.1s cubic-bezier(0.19, 1, 0.22, 1), color 0.1s cubic-bezier(0.19, 1, 0.22, 1); } .link-demo::after { background-image: url("../../svg/external-link-styled-links.svg"); } .link-demo:hover { border-color: transparent; box-shadow: inset 0 -3.3rem 0 var(--color-link-background-hover); color: var(--color-link-text-hover); } .link-demo:hover::after { background-image: url("../../svg/external-link-white.svg"); } .link-demo:focus { background-color: transparent; border-color: var(--color-link-border-focus); box-shadow: none; color: var(--color-link-text-focus); text-decoration: none; } @media (prefers-reduced-motion: no-preference) { .link-demo:focus { outline-offset: 5px; transition: outline-offset .25s ease; } } .link-demo:focus::after { background-image: url("../../svg/external-link-black.svg"); } .site-main .component { border: 1px dashed var(--color-heliotrope); padding: 19px; margin-right: 4rem; margin-bottom: 4rem; } .site-main .component .component-label { color: var(--color-heliotrope); font-size: 12px; position: absolute; margin-top: -42px; margin-left: -20px; } .site-main .component .component-label::before { background-image: url("https://airwptheme.com/demo/figma-component.svg"); background-repeat: no-repeat; content: ''; display: inline-block; width: 11px; height: 11px; margin-right: 5px; } .site-main .component p { display: flex; align-items: center; margin: 0 0 2rem; } .site-main .component p:last-child { margin-bottom: 0; } .block { background-color: var(--color-white); background-position: center; background-repeat: no-repeat; background-size: cover; margin: 0 auto; max-width: 100%; position: relative; } .shade { background-color: var(--color-background-shade); height: 100%; left: 0; opacity: .35; position: absolute; top: 0; width: 100%; z-index: 0; } .global-link { height: 100%; left: 0; position: absolute; top: 0; width: 100%; z-index: 3; } .site { margin-left: auto; margin-right: auto; max-width: 100%; overflow: hidden; position: relative; } .container { margin: 0 auto; margin-left: auto; margin-right: auto; max-width: 1200px; padding-bottom: var(--padding-container-vertical); padding-left: var(--padding-container-horizontal); padding-right: var(--padding-container-horizontal); padding-top: var(--padding-container-vertical); } .site-main .container { clear: both; overflow: hidden; } .entry-footer { clear: both; display: flex; justify-content: space-between; margin-top: var(--padding-container-vertical); overflow: hidden; } .edit-link { clear: both; display: block; margin-bottom: 0; margin-top: 2rem; max-width: 100%; min-width: 0; overflow: hidden; text-align: left; transition: all 0.22s; width: 100%; } .edit-link a { background-color: var(--color-white); border: 2px dashed var(--color-link-edit-border); clear: both; color: var(--color-link-edit-text); display: block; margin: 0; padding: 2rem; text-align: center; text-decoration: none; transition: all 0.22s; } .edit-link:focus, .edit-link a:hover { background-color: var(--color-link-edit-background-hover); color: var(--color-link-edit-text-hover); } @media (min-width: 480px) { .hide-on-desktop { /* stylelint-disable declaration-no-important */ display: none !important; /* stylelint-enable */ } } /* stylelint-disable declaration-no-important, a11y/no-display-none */ @media (max-width: 480px) { .hide-on-mobile { display: none !important; } } /* stylelint-enable */ /* stylelint-disable declaration-no-important, a11y/no-display-none */ @media (max-width: 960px) { .hide-on-mobile-nav-view { display: none !important; } } /* stylelint-enable */ /* stylelint-disable declaration-no-important, a11y/no-display-none */ @media (min-width: 960px) { .hide-on-desktop-nav-view { display: none !important; } } /* stylelint-enable */ /* stylelint-disable declaration-no-important, a11y/no-display-none */ .hide-completely { display: none !important; } /* stylelint-enable */ /* stylelint-disable a11y/no-display-none */ @media print { .nav-container, .site-footer, .side-nav { display: none; } } /* stylelint-disable declaration-property-unit-allowed-list */ :root { font-size: 62.5%; } /* stylelint-enable declaration-property-unit-allowed-list */ body { color: var(--color-paragraph); font-family: var(--font-paragraph); font-size: var(--font-size-default); -moz-osx-font-smoothing: grayscale; -webkit-font-smoothing: antialiased; font-weight: var(--font-weight-paragraphs); text-rendering: geometricPrecision; } p, dd, dt, figcaption, hr, small, ol, ul, li, blockquote, kbd, pre, samp, code, th, td, table, tr, textarea, select, input[type="text"], input[type="tel"], input[type="url"], input[type="password"], input[type="number"], input[type="month"], input[type="week"], input[type="email"], input[type="search"] { font-size: var(--font-size-paragraphs); line-height: var(--line-height-paragraphs); } h1, h2, h3, h4, h5, h6 { color: var(--color-heading); font-family: var(--font-heading); font-weight: var(--font-weight-headings); margin-bottom: var(--margin-between-paragraphs); margin-top: var(--margin-between-paragraphs); } h2, h3, h4, h5, h6 { line-height: var(--line-height-headings); } h1 { font-size: var(--font-size-h1); } h2 { font-size: var(--font-size-h2); } h3 { font-size: var(--font-size-h3); } h4 { font-size: var(--font-size-h4); } h5 { font-size: var(--font-size-h5); } h6 { font-size: var(--font-size-h6); } h1:first-child, h2:first-child, h3:first-child, h4:first-child, h5:first-child, h6:first-child { margin-top: 0; } ul { list-style: disc outside; padding-left: 1.9rem; } ul li { padding-left: 0; } ol { padding-left: 1.9rem; } b, strong { font-weight: var(--font-weight-bold); } em, i { font-style: italic; } small { font-size: .87em; } p { margin-bottom: 2.9rem; margin-top: 2.9rem; } blockquote { border: 0 none; clear: both; margin: 0; padding-bottom: 3rem; position: relative; } blockquote p { color: var(--color-blockquote); font-style: italic; margin-bottom: 0; overflow: visible; position: relative; } @media (min-width: 770px) { blockquote { margin-top: 4rem; padding-bottom: 4rem; } } blockquote::before { content: ''; display: block; height: 4px; left: 0; max-width: 147px; position: absolute; top: 0; } @media (min-width: 480px) { blockquote::before { width: 30%; } } cite { display: block; font-style: italic; } p:first-child { margin-top: 0; } p:last-child { margin-bottom: 0; } img { height: auto; -ms-interpolation-mode: bicubic; max-width: 100%; vertical-align: middle; } figure { margin-bottom: 1rem; margin-left: 0; margin-right: 0; margin-top: 0; position: relative; } figcaption { font-style: normal; font-weight: var(--font-weight-paragraphs); margin-top: 0; } kbd, pre, samp { font-family: var(--font-monospace); } code { background-color: var(--color-background-code-inline); border-radius: .3rem; color: var(--color-code-block); font-family: var(--font-monospace); font-size: inherit; padding: .37rem .5rem; } pre code { display: inline-block; padding: 1.15rem 1rem .85rem; } pre { border-radius: .3rem; display: block; margin-bottom: 2rem; white-space: pre-wrap; word-break: break-all; word-wrap: break-word; } .site-header { align-items: center; display: flex; justify-content: space-between; margin-left: auto; margin-right: auto; max-width: 1200px; padding-bottom: var(--padding-site-header-vertical); padding-left: var(--padding-container-horizontal); padding-right: var(--padding-container-horizontal); padding-top: var(--padding-site-header-vertical); position: relative; z-index: 15; } .site-title { line-height: 0; margin: 0; } .site-title a { align-items: center; display: flex; } .nav-container { z-index: 10; } .site-footer { clear: both; color: var(--color-white); overflow: hidden; padding: 6rem 2rem; text-align: center; /* stylelint-disable a11y/no-display-none */ /* stylelint-enable */ } .site-footer p, .site-footer span { color: var(--color-white); } .site-footer .wordpress-logo { display: block; margin-bottom: 2rem; margin-left: auto; margin-right: auto; } .site-footer span { display: block; text-align: center; } .site-footer svg { margin-right: 5px; position: relative; } .site-footer .is-external-link::after { display: none; } .site-footer .powered-by-wordpress { display: inline-block; font-weight: var(--font-weight-semibold); margin-bottom: 1rem; text-align: center; } .site-footer .github-link { margin-left: 8px; margin-top: 4px; overflow: hidden; padding-bottom: 4px; position: relative; } .site-footer .github-link.is-external-link::after { background-color: var(--color-white); bottom: 0; content: ''; display: block; height: 1px; opacity: .4; position: absolute; top: auto; transition: opacity 0.22s; width: 100%; } .site-footer a { color: var(--color-white); transition: opacity 0.22s; } .site-footer a:hover, .site-footer a:focus { color: var(--color-white); opacity: .5; } .site-footer a:hover::after, .site-footer a:focus::after { opacity: .2; } .site-footer .theme-info { align-items: center; display: flex; flex-wrap: wrap; justify-content: center; line-height: 1.5; margin: 0 auto; text-align: center; } .site-footer .theme-info i { margin: 0 5px; } :root { --color-background-input-field: var(--color-white); --color-border-forms: #d9d9d9; --color-border-forms-focus: rgba(42, 45, 62, .3); --color-button: var(--color-white); --color-button-hover: var(--color-white); --color-button-background: var(--color-east-bay); --color-button-background-hover: var(--color-valhalla); --color-checkbox: var(--color-east-bay); --color-checkbox-outline: 0 0 0 3px rgba(84, 87, 115, .2); --color-checkbox-border-hover: lighten(#545773, 15%); --color-placeholder: var(--color-paragraph); --color-placeholder-focus: var(--color-black); --opacity-placeholder: .4; --opacity-placeholder-focus: .8; --border-radius-checkbox: 4px; --border-radius-input-field: 4px; --border-radius-select: 0; --border-width-checkbox: 2px; --border-width-input-field: 2px; --gap-checkbox: 10px; --line-height-checkbox: var(--line-height-paragraphs); --size-checkbox-marker: 12px; --size-radio-button: 16px; --size-radio-button-marker: 8px; } .button-wrapper { margin-bottom: 0; } .site-main button, .site-main .button, .site-main input[type="reset"], .site-main input[type="submit"], .site-main input[type="button"], .site-footer button, .site-footer .button, .site-footer input[type="reset"], .site-footer input[type="submit"], .site-footer input[type="button"] { -webkit-appearance: none; -moz-appearance: none; appearance: none; background-color: var(--color-button-background); border: var(--border-width-input-field) solid var(--color-button-background); border-radius: var(--border-radius-input-field); color: var(--color-button); cursor: pointer; display: inline-block; font-family: var(--font-paragraph); font-size: var(--font-size-16); font-weight: var(--font-weight-semibold); line-height: 19.6364px; margin-bottom: 0; max-width: 230px; overflow: hidden; padding-bottom: calc(14px - calc(var(--border-width-input-field) * 2)); padding-left: calc(21px - calc(var(--border-width-input-field) * 2)); padding-right: calc(21px - calc(var(--border-width-input-field) * 2)); padding-top: calc(14px - calc(var(--border-width-input-field) * 2)); position: relative; text-decoration: none; text-overflow: ellipsis; transition: all 0.08s cubic-bezier(0.25, 0.46, 0.45, 0.94); white-space: nowrap; width: auto; /* stylelint-disable a11y/no-display-none */ /* stylelint-enable */ } .site-main button.is-external-link::after, .site-main .button.is-external-link::after, .site-main input[type="reset"].is-external-link::after, .site-main input[type="submit"].is-external-link::after, .site-main input[type="button"].is-external-link::after, .site-footer button.is-external-link::after, .site-footer .button.is-external-link::after, .site-footer input[type="reset"].is-external-link::after, .site-footer input[type="submit"].is-external-link::after, .site-footer input[type="button"].is-external-link::after { display: none; } .site-main button.focus, .site-main button:hover, .site-main button:focus, .site-main .button.focus, .site-main .button:hover, .site-main .button:focus, .site-main input[type="reset"].focus, .site-main input[type="reset"]:hover, .site-main input[type="reset"]:focus, .site-main input[type="submit"].focus, .site-main input[type="submit"]:hover, .site-main input[type="submit"]:focus, .site-main input[type="button"].focus, .site-main input[type="button"]:hover, .site-main input[type="button"]:focus, .site-footer button.focus, .site-footer button:hover, .site-footer button:focus, .site-footer .button.focus, .site-footer .button:hover, .site-footer .button:focus, .site-footer input[type="reset"].focus, .site-footer input[type="reset"]:hover, .site-footer input[type="reset"]:focus, .site-footer input[type="submit"].focus, .site-footer input[type="submit"]:hover, .site-footer input[type="submit"]:focus, .site-footer input[type="button"].focus, .site-footer input[type="button"]:hover, .site-footer input[type="button"]:focus { background-color: var(--color-button-background-hover); border: var(--border-width-input-field) solid var(--color-button-background-hover); color: var(--color-button-hover); } .site-main button.button-small, .site-main .button.button-small, .site-main input[type="reset"].button-small, .site-main input[type="submit"].button-small, .site-main input[type="button"].button-small, .site-footer button.button-small, .site-footer .button.button-small, .site-footer input[type="reset"].button-small, .site-footer input[type="submit"].button-small, .site-footer input[type="button"].button-small { font-size: var(--font-size-16); line-height: 20.9091px; padding-bottom: calc(10px - calc(var(--border-width-input-field) * 2)); padding-left: calc(21px - calc(var(--border-width-input-field) * 2)); padding-right: calc(21px - calc(var(--border-width-input-field) * 2)); padding-top: calc(10px - calc(var(--border-width-input-field) * 2)); } .site-main button.button-large, .site-main .button.button-large, .site-main input[type="reset"].button-large, .site-main input[type="submit"].button-large, .site-main input[type="button"].button-large, .site-footer button.button-large, .site-footer .button.button-large, .site-footer input[type="reset"].button-large, .site-footer input[type="submit"].button-large, .site-footer input[type="button"].button-large { font-size: var(--font-size-18); line-height: 23.0909px; padding-bottom: calc(17px - calc(var(--border-width-input-field) * 2)); padding-left: calc(21px - calc(var(--border-width-input-field) * 2)); padding-right: calc(21px - calc(var(--border-width-input-field) * 2)); padding-top: calc(17px - calc(var(--border-width-input-field) * 2)); } .site-main button.button-ghost, .site-main .button.button-ghost, .site-main input[type="reset"].button-ghost, .site-main input[type="submit"].button-ghost, .site-main input[type="button"].button-ghost, .site-footer button.button-ghost, .site-footer .button.button-ghost, .site-footer input[type="reset"].button-ghost, .site-footer input[type="submit"].button-ghost, .site-footer input[type="button"].button-ghost { background-color: transparent; border: var(--border-width-input-field) solid var(--color-button-background); border-radius: var(--border-radius-input-field); color: var(--color-button-background); transition: all 0.08s cubic-bezier(0.25, 0.46, 0.45, 0.94); } .site-main button.button-ghost.focus, .site-main button.button-ghost:focus, .site-main button.button-ghost:hover, .site-main .button.button-ghost.focus, .site-main .button.button-ghost:focus, .site-main .button.button-ghost:hover, .site-main input[type="reset"].button-ghost.focus, .site-main input[type="reset"].button-ghost:focus, .site-main input[type="reset"].button-ghost:hover, .site-main input[type="submit"].button-ghost.focus, .site-main input[type="submit"].button-ghost:focus, .site-main input[type="submit"].button-ghost:hover, .site-main input[type="button"].button-ghost.focus, .site-main input[type="button"].button-ghost:focus, .site-main input[type="button"].button-ghost:hover, .site-footer button.button-ghost.focus, .site-footer button.button-ghost:focus, .site-footer button.button-ghost:hover, .site-footer .button.button-ghost.focus, .site-footer .button.button-ghost:focus, .site-footer .button.button-ghost:hover, .site-footer input[type="reset"].button-ghost.focus, .site-footer input[type="reset"].button-ghost:focus, .site-footer input[type="reset"].button-ghost:hover, .site-footer input[type="submit"].button-ghost.focus, .site-footer input[type="submit"].button-ghost:focus, .site-footer input[type="submit"].button-ghost:hover, .site-footer input[type="button"].button-ghost.focus, .site-footer input[type="button"].button-ghost:focus, .site-footer input[type="button"].button-ghost:hover { background-color: var(--color-button-background); border-color: var(--color-button-background); color: var(--color-white); } select { -webkit-appearance: none; -moz-appearance: none; appearance: none; background-image: url("../../svg/select.svg"); background-position: right 0 center; background-repeat: no-repeat; background-size: 40px auto; border-color: var(--color-border-forms); border-radius: var(--border-radius-select); border-style: solid; border-width: var(--border-width-input-field); color: var(--color-paragraph); font-size: var(--font-size-17); line-height: 24px; max-width: 100%; min-width: 0; padding: 15px; text-indent: 1px; transition: none; width: 100%; } textarea, select, input[type="text"], input[type="tel"], input[type="url"], input[type="password"], input[type="number"], input[type="month"], input[type="week"], input[type="email"], input[type="search"] { background-color: var(--color-background-input-field); border-color: var(--color-border-forms); border-radius: var(--border-radius-input-field); border-style: solid; border-width: var(--border-width-input-field); box-sizing: border-box; font-family: var(--font-paragraph); font-size: var(--font-size-17); line-height: 24px; margin-bottom: 0; padding: 15px; position: relative; text-decoration: none; transition: background .55s; } textarea::-moz-placeholder, select::-moz-placeholder, input[type="text"]::-moz-placeholder, input[type="tel"]::-moz-placeholder, input[type="url"]::-moz-placeholder, input[type="password"]::-moz-placeholder, input[type="number"]::-moz-placeholder, input[type="month"]::-moz-placeholder, input[type="week"]::-moz-placeholder, input[type="email"]::-moz-placeholder, input[type="search"]::-moz-placeholder { color: var(--color-placeholder); opacity: var(--opacity-placeholder); } textarea::placeholder, select::placeholder, input[type="text"]::placeholder, input[type="tel"]::placeholder, input[type="url"]::placeholder, input[type="password"]::placeholder, input[type="number"]::placeholder, input[type="month"]::placeholder, input[type="week"]::placeholder, input[type="email"]::placeholder, input[type="search"]::placeholder { color: var(--color-placeholder); opacity: var(--opacity-placeholder); } textarea:focus, select:focus, input[type="text"]:focus, input[type="tel"]:focus, input[type="url"]:focus, input[type="password"]:focus, input[type="number"]:focus, input[type="month"]:focus, input[type="week"]:focus, input[type="email"]:focus, input[type="search"]:focus { background-color: var(--color-background-input-field); border-color: var(--color-border-forms-focus); } textarea:focus::-moz-placeholder, select:focus::-moz-placeholder, input[type="text"]:focus::-moz-placeholder, input[type="tel"]:focus::-moz-placeholder, input[type="url"]:focus::-moz-placeholder, input[type="password"]:focus::-moz-placeholder, input[type="number"]:focus::-moz-placeholder, input[type="month"]:focus::-moz-placeholder, input[type="week"]:focus::-moz-placeholder, input[type="email"]:focus::-moz-placeholder, input[type="search"]:focus::-moz-placeholder { color: var(--color-placeholder-focus); opacity: var(--opacity-placeholder-focus); } textarea:focus::placeholder, select:focus::placeholder, input[type="text"]:focus::placeholder, input[type="tel"]:focus::placeholder, input[type="url"]:focus::placeholder, input[type="password"]:focus::placeholder, input[type="number"]:focus::placeholder, input[type="month"]:focus::placeholder, input[type="week"]:focus::placeholder, input[type="email"]:focus::placeholder, input[type="search"]:focus::placeholder { color: var(--color-placeholder-focus); opacity: var(--opacity-placeholder-focus); } input[type="radio"], input[type="checkbox"] { height: var(--size-radio-button); margin: 0; margin-top: calc((1em * var(--line-height-checkbox) - var(--size-radio-button)) / 2); opacity: 0; padding: 0; pointer-events: none; position: absolute; width: var(--size-radio-button); } input[type="radio"] + label, input[type="checkbox"] + label { align-items: flex-start; cursor: pointer; display: inline-flex; line-height: var(--line-height-checkbox); } input[type="radio"] + label::before, input[type="checkbox"] + label::before { align-self: center; background-color: var(--color-white); background-position: center; background-repeat: no-repeat; border-color: var(--color-checkbox); border-style: solid; border-width: var(--border-width-checkbox); content: ''; display: inline-flex; flex-shrink: 0; height: var(--size-radio-button); margin-right: var(--gap-checkbox); position: relative; top: calc(var(--border-width-checkbox) / 2); transition: transform .2s, border .2s; width: var(--size-radio-button); } input[type="radio"] + label::before { border-radius: 50%; } input[type="checkbox"] + label::before { border-radius: var(--border-radius-checkbox); } input[type="radio"]:checked + label::before, input[type="checkbox"]:checked + label::before { background-color: var(--color-checkbox); border-color: var(--color-checkbox); box-shadow: none; transition: transform .2s; } input[type="radio"]:active + label::before, input[type="checkbox"]:active + label::before { transform: scale(0.8); transition: transform .2s; } input[type="radio"]:checked + label::before { background-image: url("data:image/svg+xml;charset=utf8, %3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cg class='nc-icon-wrapper' fill='%23ffffff'%3E%3Ccircle cx='8' cy='8' r='8' fill='%23ffffff'%3E%3C/circle%3E%3C/g%3E%3C/svg%3E"); background-size: var(--size-radio-button-marker); } input[type="checkbox"]:checked + label::before { background-image: url("data:image/svg+xml, %3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpolyline points='1 6.5 4 9.5 11 2.5' fill='none' stroke='%23FFFFFF' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'/%3E%3C/svg%3E"); background-size: var(--size-checkbox-marker); } input[type="radio"]:focus + label::before, input[type="checkbox"]:focus + label::before, input[type="radio"]:checked:active + label::before, input[type="checkbox"]:checked:active + label::before { border-color: var(--color-checkbox); box-shadow: var(--color-checkbox-outline); } input[type="radio"]:checked:active + label::before, input[type="checkbox"]:checked:active + label::before { transform: none; transition: none; } /* stylelint-disable selector-max-pseudo-class */ input[type="radio"]:not(:checked):not(:focus) + label:hover::before, input[type="checkbox"]:not(:checked):not(:focus) + label:hover::before { border-color: var(--color-checkbox-border-hover); } /* stylelint-enable selector-max-pseudo-class */ /* stylelint-disable no-descending-specificity */ .cat { margin-bottom: .5rem; margin-top: 4rem; } .cat a { background-color: transparent; border-color: var(--color-category-border); border-radius: 5px; border-style: solid; border-width: 1px 1px 2px; box-shadow: none; color: var(--color-category-text); display: inline-block; font-size: var(--font-size-16); margin-bottom: .5rem; margin-right: .5em; padding: .2em .6em; transition: all 0.22s; } .cat a:hover, .cat a:focus { border-color: var(--color-tag-border-hover); } .tags { list-style: none; margin-bottom: var(--margin-between-text-elements); margin-top: 0; overflow: hidden; } .tags li { float: left; margin-bottom: 10px; margin-left: 0; margin-right: 10px; margin-top: 0; padding-left: 0; } .tags a { background-color: transparent; border-color: var(--color-tag-border); border-radius: 5px; border-style: solid; border-width: 1px 1px 2px; box-shadow: none; color: var(--color-tag-text); display: inline-block; font-size: var(--font-size-14); margin-right: .4em; padding: .2em .6em; transition: all 0.22s; } .tags a:hover, .tags a:focus { border-color: var(--color-tag-border-hover); } .post-navigation .nav-links { display: flex; flex-wrap: wrap; justify-content: space-between; } :root { --color-border-sticky: #d7e4f2; --color-bypostauthor: rgba(42, 45, 62, .5); } .sticky { border: 1px dashed var(--color-border-sticky); margin-bottom: 2rem; padding: 2rem; } .comment-list li.bypostauthor, .bypostauthor { border: 1px dashed var(--color-bypostauthor); padding: 2rem; } .wp-caption { max-width: 100%; } .wp-caption img[class*="wp-image-"] { display: block; margin: 0 auto; } .wp-caption .wp-caption-text { font-style: italic; margin-bottom: 20px; padding: 1rem 0; text-align: left; } .site-footer .top { background-color: transparent; padding: 16px; } .site-footer .top svg { align-items: center; display: flex; fill: var(--color-top-arrow-dark); height: 18px; justify-content: center; margin: 0; opacity: .8; transition: all .3s ease; width: 18px; } @media (max-width: 480px) { .site-footer .top svg { height: 15px; width: 15px; } } .site-footer .top:hover, .site-footer .top:focus, .site-footer .top:active { opacity: 1; } .site-footer .top:hover svg, .site-footer .top:focus svg, .site-footer .top:active svg { transform: translateY(-0.5rem); } .site-footer .back-to-top { align-items: center; bottom: 1rem; display: flex; justify-content: center; margin: 0; opacity: 0; position: fixed; right: 1rem; text-decoration: none; transition: opacity 0.22s 0s, visibility 0s 0.22s; z-index: 9999; } .site-footer .back-to-top.has-light-bg svg { fill: var(--color-top-arrow-dark); } .site-footer .back-to-top.has-dark-bg svg { fill: var(--color-top-arrow-light); } .site-footer .back-to-top.is-visible, .site-footer .back-to-top.fade-out { transition: opacity 0.22s 0s, visibility 0s 0s; } .site-footer .back-to-top.is-visible { opacity: 1; } .site-footer .back-to-top.fade-out { opacity: 1; } .site-footer .back-to-top.fade-out:focus, .site-footer .back-to-top.fade-out:hover { opacity: 1; } .gallery { display: grid; grid-gap: 1.5em; margin-bottom: 1.5em; } .gallery-item { display: inline-block; text-align: center; width: 100%; } .gallery-columns-2 { grid-template-columns: repeat(2, 1fr); } .gallery-columns-3 { grid-template-columns: repeat(3, 1fr); } .gallery-columns-4 { grid-template-columns: repeat(4, 1fr); } .gallery-columns-5 { grid-template-columns: repeat(5, 1fr); } .gallery-columns-6 { grid-template-columns: repeat(6, 1fr); } .gallery-columns-7 { grid-template-columns: repeat(7, 1fr); } .gallery-columns-8 { grid-template-columns: repeat(8, 1fr); } .gallery-columns-9 { grid-template-columns: repeat(9, 1fr); } .gallery-caption { display: block; } div.lazy { background-position: center; background-size: cover; height: 100%; left: 0; position: absolute; top: 0; width: 100%; z-index: 0; } .has-lazyload { overflow: hidden; position: relative; } /* stylelint-disable a11y/font-size-is-readable */ .navigation:not(.post-navigation) .nav-links { align-items: flex-start; display: flex; font-family: var(--font-heading); font-size: 14px; justify-content: flex-start; margin-top: 4rem; overflow: hidden; text-align: left; width: 100%; } .navigation:not(.post-navigation) .nav-links a { text-decoration: none; } /* stylelint-enable */ .page-numbers { align-items: center; background-color: var(--color-white); border-bottom: 2px solid var(--color-blue-chalk); border-left: 1px solid var(--color-blue-chalk); border-right: 1px solid var(--color-blue-chalk); border-top: 2px solid var(--color-blue-chalk); color: var(--color-pagination-text); display: flex; font-weight: var(--font-weight-medium); height: 35px; justify-content: center; margin-left: 0; margin-right: 0; transition: all 0.22s; width: 35px; } @media (max-width: 600px) { .page-numbers { height: 26px; width: 26px; } } .page-numbers:last-child { border-bottom-left-radius: 0; border-bottom-right-radius: 4px; border-top-left-radius: 0; border-top-right-radius: 4px; } .page-numbers:first-child { border-bottom-left-radius: 4px; border-bottom-right-radius: 0; border-top-left-radius: 4px; border-top-right-radius: 0; } a.page-numbers:hover, a.page-numbers:focus { background-color: var(--color-pagination-background-hover); border-color: var(--color-pagination-border-hover); color: var(--color-pagination-text-hover); } .page-numbers.current { background-color: var(--color-pagination-background-current); border-color: var(--color-pagination-border-current); color: var(--color-pagination-text-current); } .page-numbers.next, .page-numbers.prev { padding-left: 20px; padding-right: 20px; width: auto; } @media (max-width: 600px) { .page-numbers.next, .page-numbers.prev { padding-left: 10px; padding-right: 10px; } } /* stylelint-disable selector-class-pattern */ div.validation_error { background-color: var(--color-error); color: var(--color-white); font-size: var(--font-size-17); font-weight: var(--font-weight-bold); margin-bottom: 2rem; padding: 2rem; } div.validation_error:focus { color: var(--color-white); } body *[aria-invalid="true"] { border-color: var(--color-error); } .validation_message { color: var(--color-error); font-size: var(--font-size-16); font-weight: var(--font-weight-regular); } .validation_list { list-style: none; margin-bottom: 2rem; margin-left: 0; padding: 0; } .validation_list a { color: var(--color-error); text-decoration: none; } .validation_list li { color: var(--color-error); font-weight: var(--font-weight-bold); } .gform_body .gfield_required { color: var(--color-main); font-size: var(--font-size-22); position: relative; top: 3px; } .gform_body ul { list-style: none; margin: 0; padding: 0; } .gform_body .gform_fields li { margin-bottom: 1rem; margin-top: 1rem; } .gform_body .gfield_radio li, .gform_body .gfield_checkbox li { margin-bottom: 0; margin-top: 0; } .gform_body .gfieldset li { align-items: center; display: inline-flex; flex-wrap: wrap; justify-content: flex-start; margin: 0; width: 100%; } .gform_body .gform_fields li:last-child { margin-bottom: 0; } .gform_body .gfield_label, .gform_body .ginput_container label { display: inline-block; font-weight: var(--font-weight-bold); margin-bottom: 1rem; margin-top: 1rem; } .gform_body input[type="radio"], .gform_body input[type="checkbox"] { margin-right: 1rem; } .gform_body .gfield_radio li label, .gform_body .gfield_checkbox li label { margin-bottom: 0; margin-top: 0; } .gform_body input:not([type="radio"]):not([type="checkbox"]), .gform_body textarea { width: 100%; } @media (min-width: 480px) { .gform_body .ginput_full { display: block; width: 100%; } .gform_body .ginput_complex { display: flex; flex-wrap: wrap; margin-left: -.5rem; margin-right: -.5rem; } .gform_body .ginput_complex span { margin-left: .5rem; margin-right: .5rem; } .gform_body .ginput_left, .gform_body .ginput_right { display: inline-flex; flex-wrap: wrap; width: calc(50% - 1rem); } .gform_body .ginput_left > label, .gform_body .ginput_left input, .gform_body .ginput_right > label, .gform_body .ginput_right input { font-size: var(--font-size-16); width: 100%; } } /* stylelint-enable selector-class-pattern */ .block-search, .block-search-results { background-color: var(--color-white); } .block-search form { display: grid; /* autoprefixer: off */ grid-gap: 1rem; grid-template-columns: 9fr 1fr; } .block-search form input, .block-search form label { width: 100%; } .block-search-results > .container { padding-top: 0; } @media (min-width: 1024px) { .block-search-results > .container { display: grid; grid-auto-rows: minmax(0, auto); grid-gap: 16px; grid-row-gap: 16px; grid-template-columns: repeat(1, minmax(0, 1fr)); } @supports not (display: grid) { .block-search-results > .container { display: flex; flex-wrap: wrap; overflow: hidden; } .block-search-results > .container > div { margin-bottom: 16px; margin-right: 16px; width: calc(100% - 16px); } .block-search-results > .container > div:nth-child(1n+1) { margin-right: 0; } } } @media all and (min-width: 1024px) and (-ms-high-contrast: none), (min-width: 1024px) and (-ms-high-contrast: active) { .block-search-results > .container { display: flex; flex-wrap: wrap; overflow: hidden; } .block-search-results > .container > div { margin-bottom: 16px; margin-right: 16px; width: calc(100% - 16px); } .block-search-results > .container > div:nth-child(1n+1) { margin-right: 0; } } @media (min-width: 1024px) { @supports (-ms-ime-align: auto) { .block-search-results > .container { display: flex; flex-wrap: wrap; overflow: hidden; } .block-search-results > .container > div { margin-bottom: 16px; margin-right: 16px; width: calc(100% - 16px); } .block-search-results > .container > div:nth-child(1n+1) { margin-right: 0; } } } .block-search-results .row-result { border-top: 2px solid var(--color-border-forms); padding: 2rem 0; } .block-search-results .row-result:last-of-type { border-bottom: 2px solid var(--color-border-forms); } .block-search-results h3 { font-size: var(--font-size-h4); margin-bottom: 1rem; } .block-search-results p { margin-top: 1rem; } .block-search-results .tags a { background-color: var(--color-background-tag); color: var(--color-main); } .block-search-results .tags a:hover, .block-search-results .tags a:focus { background-color: var(--color-main); color: var(--color-background-tag); } @media (min-width: 480px) { .block-error-404 .container { padding-bottom: 10%; padding-top: 10%; } } .block-error-404 h1 { font-size: 42px; margin-bottom: 2rem; } @media screen and (min-width: 320px) { .block-error-404 h1 { font-size: calc(42px + 158 * ((100vw - 320px) / 1600)); } } @media screen and (min-width: 1920px) { .block-error-404 h1 { font-size: 200px; } } /* stylelint-disable no-descending-specificity */ .comments-area { margin-bottom: 0; margin-top: 50px; overflow: visible; } .comment-list { list-style: none; margin: 0; padding: 0; } .comment-list .children { list-style: none; } .comment-list li { font-size: var(--font-size-14); margin-bottom: 70px; margin-top: 0; padding: 0; } .comment-list p { color: var(--color-comment-text); font-size: var(--font-size-14); } .comment-list .avatar { border-radius: 50%; float: right; } .comment-list .comment-author { color: var(--color-comment-author-text); font-size: var(--font-size-h4); margin-bottom: 10px; margin-top: 0; padding: 0; } .comment-list a, .comment-list .comments-link a { box-shadow: none; color: var(--color-link-comment); } .comment-list .comment-author a { color: var(--color-paragraph); } .comment-list .comment-time { font-size: var(--font-size-14); margin: 0; padding: 0; } .comment-list .comment-time a { color: var(--color-link-comment-time-anchor); } .comment-list .comment-time:focus, .comment-list .comment-time:hover { opacity: 1; } .comment-list .comment-time svg { fill: var(--color-link-comment-time-anchor); margin-right: 5px; position: relative; top: 2px; } .comments-link { align-items: center; display: inline-flex; font-size: var(--font-size-14); text-align: right; } .comments-link a { color: var(--color-link-comment); } .comments-link:hover, .comments-link:focus, .comments-link a:hover, .comments-link a:focus { color: var(--color-black); } .comments-link svg { margin-right: 7px; position: relative; top: -1px; } @media (min-width: 480px) { .comment-form { display: grid; grid-gap: 1em; grid-template-columns: 1fr 1fr; /* autoprefixer: off */ justify-content: center; } .comment-form .comment-notes, .comment-form .comment-form-comment, .comment-form .form-submit { grid-column: 1 / span 2; } } .comment-respond { margin-bottom: 0; overflow: visible; } @media (max-width: 480px) { .comment-respond input { width: 100%; } } .comment-respond .comment-form-author { margin-bottom: 20px; margin-top: 0; } .comment-respond .comment-form-author input { border-width: 1px; padding: 15px; width: 100%; } .comment-respond .comment-form-email { clear: right; margin-bottom: 20px; margin-right: 0; margin-top: 0; } .comment-respond .comment-form-email input { border-width: 1px; padding: 15px; width: 100%; } .comment-respond .comment-form-url { margin-bottom: 30px; margin-top: 0; position: relative; } .comment-respond .comment-form-url input { border-width: 1px; padding: 15px; width: 100%; } .comment-respond .form-submit { clear: both; display: block; margin-bottom: 0; margin-top: 0; } .comment-respond .comment-form-comment { margin-bottom: 20px; } .comment-respond textarea { width: 100%; } /* stylelint-enable no-descending-specificity */ .editor-styles-wrapper, .gutenberg-content { max-width: 100%; padding-bottom: var(--padding-block); padding-left: 0; padding-right: 0; padding-top: var(--padding-block); } .gutenberg-content > * { line-height: var(--line-height-paragraphs-blog); margin-left: auto; margin-right: auto; max-width: 800px; padding-left: 0; padding-right: 0; width: 100%; } @media (max-width: 840px) { .gutenberg-content > * { padding-left: var(--padding-container-horizontal); padding-right: var(--padding-container-horizontal); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } .gutenberg-content > *.alignfull { padding-left: var(--padding-container-horizontal); padding-right: var(--padding-container-horizontal); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } } .editor-styles-wrapper blockquote + cite, .editor-styles-wrapper blockquote + p > cite, .gutenberg-content blockquote + cite, .gutenberg-content blockquote + p > cite { margin-bottom: 4rem; } .editor-styles-wrapper > blockquote, .editor-styles-wrapper > blockquote.wp-block-quote, .gutenberg-content > blockquote, .gutenberg-content > blockquote.wp-block-quote { border-left: 2px solid var(--color-blockquote); line-height: var(--line-height-paragraphs-blog); margin-bottom: 4rem; margin-left: auto; margin-right: auto; margin-top: 4rem; padding: 3.5rem 6rem; width: calc(100% - 12rem); } @media (max-width: 840px) { .editor-styles-wrapper > blockquote, .editor-styles-wrapper > blockquote.wp-block-quote, .gutenberg-content > blockquote, .gutenberg-content > blockquote.wp-block-quote { padding: 3.5rem 2rem; width: calc(100% - 4rem); } } @media (max-width: 480px) { .editor-styles-wrapper > blockquote, .editor-styles-wrapper > blockquote.wp-block-quote, .gutenberg-content > blockquote, .gutenberg-content > blockquote.wp-block-quote { padding: 4rem 4rem 4rem 2rem; } } .editor-styles-wrapper > blockquote > p, .editor-styles-wrapper > blockquote.wp-block-quote > p, .gutenberg-content > blockquote > p, .gutenberg-content > blockquote.wp-block-quote > p { color: var(--color-blockquote); line-height: var(--line-height-paragraphs-blog); } .editor-styles-wrapper .wp-block-blockquote.alignwide, .editor-styles-wrapper .wp-block-blockquote.alignfull, .gutenberg-content .wp-block-blockquote.alignwide, .gutenberg-content .wp-block-blockquote.alignfull { padding-left: var(--padding-container-horizontal); padding-right: var(--padding-container-horizontal); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } .editor-styles-wrapper .wp-block-blockquote blockquote, .gutenberg-content .wp-block-blockquote blockquote { padding-bottom: 0; } pre { background-color: var(--color-background-code-block); border: 1px solid var(--color-background-code-block); border-radius: 4px; color: var(--color-code-text); display: block; font-family: var(--font-monospace); font-size: var(--font-size-16); line-height: var(--line-height-paragraphs-blog); margin: 3rem 0; overflow: auto; padding: 15px 16px 14px; position: relative; white-space: pre; word-wrap: break-word; } pre code { background-color: transparent; border-radius: 4px; color: var(--color-code-text); } @media (max-width: 1240px) { .editor-styles-wrapper .wp-block-code, .gutenberg-content .wp-block-code { margin-left: var(--padding-container-horizontal); margin-right: var(--padding-container-horizontal); width: calc(100% - calc(var(--padding-container-horizontal) * 4)); } } .editor-styles-wrapper pre, .gutenberg-content pre { padding-left: var(--padding-container-horizontal); padding-right: var(--padding-container-horizontal); } .editor-styles-wrapper .wp-block-columns.alignfull, .gutenberg-content .wp-block-columns.alignfull { padding-left: var(--padding-container-horizontal); padding-right: var(--padding-container-horizontal); } .editor-styles-wrapper .wp-block-columns.columns-1.alignfull, .gutenberg-content .wp-block-columns.columns-1.alignfull { padding-left: var(--padding-container-horizontal); padding-right: var(--padding-container-horizontal); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } @media (max-width: 900px) { .editor-styles-wrapper .wp-block-columns.columns-1, .gutenberg-content .wp-block-columns.columns-1 { display: grid; grid-gap: 1em; grid-template-columns: repeat(2, 1fr); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } .editor-styles-wrapper .wp-block-columns.columns-1 .wp-block-column, .gutenberg-content .wp-block-columns.columns-1 .wp-block-column { margin: 0; width: 100%; } } @media (max-width: 480px) { .editor-styles-wrapper .wp-block-columns.columns-1, .gutenberg-content .wp-block-columns.columns-1 { grid-template-columns: repeat(1, 1fr); } } .editor-styles-wrapper .wp-block-columns.columns-2.alignfull, .gutenberg-content .wp-block-columns.columns-2.alignfull { padding-left: var(--padding-container-horizontal); padding-right: var(--padding-container-horizontal); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } @media (max-width: 900px) { .editor-styles-wrapper .wp-block-columns.columns-2, .gutenberg-content .wp-block-columns.columns-2 { display: grid; grid-gap: 1em; grid-template-columns: repeat(2, 1fr); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } .editor-styles-wrapper .wp-block-columns.columns-2 .wp-block-column, .gutenberg-content .wp-block-columns.columns-2 .wp-block-column { margin: 0; width: 100%; } } @media (max-width: 480px) { .editor-styles-wrapper .wp-block-columns.columns-2, .gutenberg-content .wp-block-columns.columns-2 { grid-template-columns: repeat(1, 1fr); } } .editor-styles-wrapper .wp-block-columns.columns-3.alignfull, .gutenberg-content .wp-block-columns.columns-3.alignfull { padding-left: var(--padding-container-horizontal); padding-right: var(--padding-container-horizontal); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } @media (max-width: 900px) { .editor-styles-wrapper .wp-block-columns.columns-3, .gutenberg-content .wp-block-columns.columns-3 { display: grid; grid-gap: 1em; grid-template-columns: repeat(2, 1fr); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } .editor-styles-wrapper .wp-block-columns.columns-3 .wp-block-column, .gutenberg-content .wp-block-columns.columns-3 .wp-block-column { margin: 0; width: 100%; } } @media (max-width: 480px) { .editor-styles-wrapper .wp-block-columns.columns-3, .gutenberg-content .wp-block-columns.columns-3 { grid-template-columns: repeat(1, 1fr); } } .editor-styles-wrapper .wp-block-columns.columns-4.alignfull, .gutenberg-content .wp-block-columns.columns-4.alignfull { padding-left: var(--padding-container-horizontal); padding-right: var(--padding-container-horizontal); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } @media (max-width: 900px) { .editor-styles-wrapper .wp-block-columns.columns-4, .gutenberg-content .wp-block-columns.columns-4 { display: grid; grid-gap: 1em; grid-template-columns: repeat(2, 1fr); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } .editor-styles-wrapper .wp-block-columns.columns-4 .wp-block-column, .gutenberg-content .wp-block-columns.columns-4 .wp-block-column { margin: 0; width: 100%; } } @media (max-width: 480px) { .editor-styles-wrapper .wp-block-columns.columns-4, .gutenberg-content .wp-block-columns.columns-4 { grid-template-columns: repeat(1, 1fr); } } .editor-styles-wrapper .wp-block-columns.columns-5.alignfull, .gutenberg-content .wp-block-columns.columns-5.alignfull { padding-left: var(--padding-container-horizontal); padding-right: var(--padding-container-horizontal); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } @media (max-width: 900px) { .editor-styles-wrapper .wp-block-columns.columns-5, .gutenberg-content .wp-block-columns.columns-5 { display: grid; grid-gap: 1em; grid-template-columns: repeat(2, 1fr); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } .editor-styles-wrapper .wp-block-columns.columns-5 .wp-block-column, .gutenberg-content .wp-block-columns.columns-5 .wp-block-column { margin: 0; width: 100%; } } @media (max-width: 480px) { .editor-styles-wrapper .wp-block-columns.columns-5, .gutenberg-content .wp-block-columns.columns-5 { grid-template-columns: repeat(1, 1fr); } } .editor-styles-wrapper .wp-block-columns.columns-6.alignfull, .gutenberg-content .wp-block-columns.columns-6.alignfull { padding-left: var(--padding-container-horizontal); padding-right: var(--padding-container-horizontal); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } @media (max-width: 900px) { .editor-styles-wrapper .wp-block-columns.columns-6, .gutenberg-content .wp-block-columns.columns-6 { display: grid; grid-gap: 1em; grid-template-columns: repeat(2, 1fr); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } .editor-styles-wrapper .wp-block-columns.columns-6 .wp-block-column, .gutenberg-content .wp-block-columns.columns-6 .wp-block-column { margin: 0; width: 100%; } } @media (max-width: 480px) { .editor-styles-wrapper .wp-block-columns.columns-6, .gutenberg-content .wp-block-columns.columns-6 { grid-template-columns: repeat(1, 1fr); } } .editor-styles-wrapper .wp-block-columns.columns-7.alignfull, .gutenberg-content .wp-block-columns.columns-7.alignfull { padding-left: var(--padding-container-horizontal); padding-right: var(--padding-container-horizontal); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } @media (max-width: 900px) { .editor-styles-wrapper .wp-block-columns.columns-7, .gutenberg-content .wp-block-columns.columns-7 { display: grid; grid-gap: 1em; grid-template-columns: repeat(2, 1fr); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } .editor-styles-wrapper .wp-block-columns.columns-7 .wp-block-column, .gutenberg-content .wp-block-columns.columns-7 .wp-block-column { margin: 0; width: 100%; } } @media (max-width: 480px) { .editor-styles-wrapper .wp-block-columns.columns-7, .gutenberg-content .wp-block-columns.columns-7 { grid-template-columns: repeat(1, 1fr); } } .editor-styles-wrapper .wp-block-columns.columns-8.alignfull, .gutenberg-content .wp-block-columns.columns-8.alignfull { padding-left: var(--padding-container-horizontal); padding-right: var(--padding-container-horizontal); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } @media (max-width: 900px) { .editor-styles-wrapper .wp-block-columns.columns-8, .gutenberg-content .wp-block-columns.columns-8 { display: grid; grid-gap: 1em; grid-template-columns: repeat(2, 1fr); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } .editor-styles-wrapper .wp-block-columns.columns-8 .wp-block-column, .gutenberg-content .wp-block-columns.columns-8 .wp-block-column { margin: 0; width: 100%; } } @media (max-width: 480px) { .editor-styles-wrapper .wp-block-columns.columns-8, .gutenberg-content .wp-block-columns.columns-8 { grid-template-columns: repeat(1, 1fr); } } .editor-styles-wrapper .wp-block-columns.columns-9.alignfull, .gutenberg-content .wp-block-columns.columns-9.alignfull { padding-left: var(--padding-container-horizontal); padding-right: var(--padding-container-horizontal); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } @media (max-width: 900px) { .editor-styles-wrapper .wp-block-columns.columns-9, .gutenberg-content .wp-block-columns.columns-9 { display: grid; grid-gap: 1em; grid-template-columns: repeat(2, 1fr); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } .editor-styles-wrapper .wp-block-columns.columns-9 .wp-block-column, .gutenberg-content .wp-block-columns.columns-9 .wp-block-column { margin: 0; width: 100%; } } @media (max-width: 480px) { .editor-styles-wrapper .wp-block-columns.columns-9, .gutenberg-content .wp-block-columns.columns-9 { grid-template-columns: repeat(1, 1fr); } } .editor-styles-wrapper .wp-block-cover__inner-container, .gutenberg-content .wp-block-cover__inner-container { padding-left: var(--padding-container-horizontal); padding-right: var(--padding-container-horizontal); } .editor-styles-wrapper .wp-block-cover__inner-container p, .gutenberg-content .wp-block-cover__inner-container p { line-height: var(--line-height-core-heading); } .editor-styles-wrapper .wp-block-embed iframe, .editor-styles-wrapper .wp-block-embed video, .gutenberg-content .wp-block-embed iframe, .gutenberg-content .wp-block-embed video { max-width: 100%; width: 100%; } @media (max-width: 1240px) { .editor-styles-wrapper .wp-block-embed.alignwide, .editor-styles-wrapper .wp-block-embed.alignfull, .gutenberg-content .wp-block-embed.alignwide, .gutenberg-content .wp-block-embed.alignfull { width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } } .editor-styles-wrapper .wp-block-embed.alignfull, .gutenberg-content .wp-block-embed.alignfull { margin-left: 0; margin-right: 0; max-width: 100%; padding-left: 0; padding-right: 0; width: 100%; } .editor-styles-wrapper .is-grid, .editor-styles-wrapper .wp-block-gallery, .gutenberg-content .is-grid, .gutenberg-content .wp-block-gallery { overflow: hidden; } .editor-styles-wrapper .is-grid figcaption, .editor-styles-wrapper .wp-block-gallery figcaption, .gutenberg-content .is-grid figcaption, .gutenberg-content .wp-block-gallery figcaption { color: var(--color-white); font-size: var(--font-size-16); line-height: 1.55; margin-bottom: var(--margin-between-text-elements); width: 100%; } .editor-styles-wrapper .is-grid img, .editor-styles-wrapper .wp-block-gallery img, .gutenberg-content .is-grid img, .gutenberg-content .wp-block-gallery img { margin-bottom: 0; } .editor-styles-wrapper .is-grid.alignwide, .editor-styles-wrapper .wp-block-gallery.alignwide, .gutenberg-content .is-grid.alignwide, .gutenberg-content .wp-block-gallery.alignwide { padding-left: var(--padding-container-horizontal); padding-right: var(--padding-container-horizontal); } .editor-styles-wrapper .is-grid.alignfull, .editor-styles-wrapper .wp-block-gallery.alignfull, .gutenberg-content .is-grid.alignfull, .gutenberg-content .wp-block-gallery.alignfull { padding-left: var(--padding-container-horizontal); padding-right: var(--padding-container-horizontal); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } .editor-styles-wrapper .is-grid, .editor-styles-wrapper .blocks-gallery-grid, .gutenberg-content .is-grid, .gutenberg-content .blocks-gallery-grid { display: grid; padding-left: 0; } .editor-styles-wrapper .is-grid .blocks-gallery-item, .editor-styles-wrapper .blocks-gallery-grid .blocks-gallery-item, .gutenberg-content .is-grid .blocks-gallery-item, .gutenberg-content .blocks-gallery-grid .blocks-gallery-item { margin: 0; width: 100%; } .editor-styles-wrapper .is-grid.columns-2, .editor-styles-wrapper .columns-2 .blocks-gallery-grid, .gutenberg-content .is-grid.columns-2, .gutenberg-content .columns-2 .blocks-gallery-grid { grid-gap: 3rem; grid-template-columns: repeat(2, 1fr); } @media (max-width: 1000px) { .editor-styles-wrapper .is-grid.columns-2, .editor-styles-wrapper .columns-2 .blocks-gallery-grid, .gutenberg-content .is-grid.columns-2, .gutenberg-content .columns-2 .blocks-gallery-grid { grid-template-columns: repeat(3, 1fr); } } @media (max-width: 670px) { .editor-styles-wrapper .is-grid.columns-2, .editor-styles-wrapper .columns-2 .blocks-gallery-grid, .gutenberg-content .is-grid.columns-2, .gutenberg-content .columns-2 .blocks-gallery-grid { grid-gap: 2rem; grid-template-columns: repeat(2, 1fr); } } .editor-styles-wrapper .is-grid.columns-3, .editor-styles-wrapper .columns-3 .blocks-gallery-grid, .gutenberg-content .is-grid.columns-3, .gutenberg-content .columns-3 .blocks-gallery-grid { grid-gap: 3rem; grid-template-columns: repeat(3, 1fr); } @media (max-width: 1000px) { .editor-styles-wrapper .is-grid.columns-3, .editor-styles-wrapper .columns-3 .blocks-gallery-grid, .gutenberg-content .is-grid.columns-3, .gutenberg-content .columns-3 .blocks-gallery-grid { grid-template-columns: repeat(3, 1fr); } } @media (max-width: 670px) { .editor-styles-wrapper .is-grid.columns-3, .editor-styles-wrapper .columns-3 .blocks-gallery-grid, .gutenberg-content .is-grid.columns-3, .gutenberg-content .columns-3 .blocks-gallery-grid { grid-gap: 2rem; grid-template-columns: repeat(2, 1fr); } } .editor-styles-wrapper .is-grid.columns-4, .editor-styles-wrapper .columns-4 .blocks-gallery-grid, .gutenberg-content .is-grid.columns-4, .gutenberg-content .columns-4 .blocks-gallery-grid { grid-gap: 3rem; grid-template-columns: repeat(4, 1fr); } @media (max-width: 1000px) { .editor-styles-wrapper .is-grid.columns-4, .editor-styles-wrapper .columns-4 .blocks-gallery-grid, .gutenberg-content .is-grid.columns-4, .gutenberg-content .columns-4 .blocks-gallery-grid { grid-template-columns: repeat(3, 1fr); } } @media (max-width: 670px) { .editor-styles-wrapper .is-grid.columns-4, .editor-styles-wrapper .columns-4 .blocks-gallery-grid, .gutenberg-content .is-grid.columns-4, .gutenberg-content .columns-4 .blocks-gallery-grid { grid-gap: 2rem; grid-template-columns: repeat(2, 1fr); } } .editor-styles-wrapper .is-grid.columns-5, .editor-styles-wrapper .columns-5 .blocks-gallery-grid, .gutenberg-content .is-grid.columns-5, .gutenberg-content .columns-5 .blocks-gallery-grid { grid-gap: 3rem; grid-template-columns: repeat(5, 1fr); } @media (max-width: 1000px) { .editor-styles-wrapper .is-grid.columns-5, .editor-styles-wrapper .columns-5 .blocks-gallery-grid, .gutenberg-content .is-grid.columns-5, .gutenberg-content .columns-5 .blocks-gallery-grid { grid-template-columns: repeat(3, 1fr); } } @media (max-width: 670px) { .editor-styles-wrapper .is-grid.columns-5, .editor-styles-wrapper .columns-5 .blocks-gallery-grid, .gutenberg-content .is-grid.columns-5, .gutenberg-content .columns-5 .blocks-gallery-grid { grid-gap: 2rem; grid-template-columns: repeat(2, 1fr); } } .editor-styles-wrapper .is-grid.columns-6, .editor-styles-wrapper .columns-6 .blocks-gallery-grid, .gutenberg-content .is-grid.columns-6, .gutenberg-content .columns-6 .blocks-gallery-grid { grid-gap: 3rem; grid-template-columns: repeat(6, 1fr); } @media (max-width: 1000px) { .editor-styles-wrapper .is-grid.columns-6, .editor-styles-wrapper .columns-6 .blocks-gallery-grid, .gutenberg-content .is-grid.columns-6, .gutenberg-content .columns-6 .blocks-gallery-grid { grid-template-columns: repeat(3, 1fr); } } @media (max-width: 670px) { .editor-styles-wrapper .is-grid.columns-6, .editor-styles-wrapper .columns-6 .blocks-gallery-grid, .gutenberg-content .is-grid.columns-6, .gutenberg-content .columns-6 .blocks-gallery-grid { grid-gap: 2rem; grid-template-columns: repeat(2, 1fr); } } .editor-styles-wrapper .is-grid.columns-7, .editor-styles-wrapper .columns-7 .blocks-gallery-grid, .gutenberg-content .is-grid.columns-7, .gutenberg-content .columns-7 .blocks-gallery-grid { grid-gap: 3rem; grid-template-columns: repeat(7, 1fr); } @media (max-width: 1000px) { .editor-styles-wrapper .is-grid.columns-7, .editor-styles-wrapper .columns-7 .blocks-gallery-grid, .gutenberg-content .is-grid.columns-7, .gutenberg-content .columns-7 .blocks-gallery-grid { grid-template-columns: repeat(3, 1fr); } } @media (max-width: 670px) { .editor-styles-wrapper .is-grid.columns-7, .editor-styles-wrapper .columns-7 .blocks-gallery-grid, .gutenberg-content .is-grid.columns-7, .gutenberg-content .columns-7 .blocks-gallery-grid { grid-gap: 2rem; grid-template-columns: repeat(2, 1fr); } } .editor-styles-wrapper .is-grid.columns-8, .editor-styles-wrapper .columns-8 .blocks-gallery-grid, .gutenberg-content .is-grid.columns-8, .gutenberg-content .columns-8 .blocks-gallery-grid { grid-gap: 3rem; grid-template-columns: repeat(8, 1fr); } @media (max-width: 1000px) { .editor-styles-wrapper .is-grid.columns-8, .editor-styles-wrapper .columns-8 .blocks-gallery-grid, .gutenberg-content .is-grid.columns-8, .gutenberg-content .columns-8 .blocks-gallery-grid { grid-template-columns: repeat(3, 1fr); } } @media (max-width: 670px) { .editor-styles-wrapper .is-grid.columns-8, .editor-styles-wrapper .columns-8 .blocks-gallery-grid, .gutenberg-content .is-grid.columns-8, .gutenberg-content .columns-8 .blocks-gallery-grid { grid-gap: 2rem; grid-template-columns: repeat(2, 1fr); } } .editor-styles-wrapper .is-grid.columns-9, .editor-styles-wrapper .columns-9 .blocks-gallery-grid, .gutenberg-content .is-grid.columns-9, .gutenberg-content .columns-9 .blocks-gallery-grid { grid-gap: 3rem; grid-template-columns: repeat(9, 1fr); } @media (max-width: 1000px) { .editor-styles-wrapper .is-grid.columns-9, .editor-styles-wrapper .columns-9 .blocks-gallery-grid, .gutenberg-content .is-grid.columns-9, .gutenberg-content .columns-9 .blocks-gallery-grid { grid-template-columns: repeat(3, 1fr); } } @media (max-width: 670px) { .editor-styles-wrapper .is-grid.columns-9, .editor-styles-wrapper .columns-9 .blocks-gallery-grid, .gutenberg-content .is-grid.columns-9, .gutenberg-content .columns-9 .blocks-gallery-grid { grid-gap: 2rem; grid-template-columns: repeat(2, 1fr); } } .editor-styles-wrapper .blocks-gallery-item > figure figcaption, .gutenberg-content .blocks-gallery-item > figure figcaption { margin-bottom: 0; } .editor-styles-wrapper hr, .editor-styles-wrapper .wp-block-separator, .gutenberg-content hr, .gutenberg-content .wp-block-separator { margin-bottom: calc(var(--margin-between-paragraphs) * 2); margin-top: calc(var(--margin-between-paragraphs) * 2); } .editor-styles-wrapper .wp-block-separator.is-style-default, .gutenberg-content .wp-block-separator.is-style-default { max-width: 800px; } .editor-styles-wrapper h1, .editor-styles-wrapper h2, .editor-styles-wrapper h3, .editor-styles-wrapper h4, .editor-styles-wrapper h5, .gutenberg-content h1, .gutenberg-content h2, .gutenberg-content h3, .gutenberg-content h4, .gutenberg-content h5 { line-height: var(--line-height-core-heading); } .editor-styles-wrapper h1:first-child, .editor-styles-wrapper h2:first-child, .editor-styles-wrapper h3:first-child, .editor-styles-wrapper h4:first-child, .editor-styles-wrapper h5:first-child, .editor-styles-wrapper h6:first-child, .gutenberg-content h1:first-child, .gutenberg-content h2:first-child, .gutenberg-content h3:first-child, .gutenberg-content h4:first-child, .gutenberg-content h5:first-child, .gutenberg-content h6:first-child { margin-top: 0; } .editor-styles-wrapper .wp-block-image, .gutenberg-content .wp-block-image { display: block; margin-bottom: var(--margin-wp-block-image); margin-top: var(--margin-wp-block-image); } .editor-styles-wrapper .wp-block-image.alignfull, .gutenberg-content .wp-block-image.alignfull { padding-left: 0; padding-right: 0; } @media (min-width: 1240px) { .editor-styles-wrapper .wp-block-image.alignwide, .gutenberg-content .wp-block-image.alignwide { padding-left: 0; padding-right: 0; } } @media (max-width: 1240px) { .editor-styles-wrapper .wp-block-image.alignwide, .gutenberg-content .wp-block-image.alignwide { width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } } .editor-styles-wrapper .wp-block-image .alignwide img, .editor-styles-wrapper .wp-block-image .alignfull img, .gutenberg-content .wp-block-image .alignwide img, .gutenberg-content .wp-block-image .alignfull img { width: 100%; } .editor-styles-wrapper .wp-block-image .alignfull img, .gutenberg-content .wp-block-image .alignfull img { border-radius: 0; } .editor-styles-wrapper .wp-block-image > figure, .gutenberg-content .wp-block-image > figure { display: block; width: auto; } .editor-styles-wrapper .wp-block-image > figure.alignleft, .editor-styles-wrapper .wp-block-image > figure.alignright, .gutenberg-content .wp-block-image > figure.alignleft, .gutenberg-content .wp-block-image > figure.alignright { /* stylelint-disable csstools/value-no-unknown-custom-properties */ max-width: var(--width-child-img); /* stylelint-enable */ } .editor-styles-wrapper .wp-block-image figcaption, .gutenberg-content .wp-block-image figcaption { margin-bottom: 2rem; } @media (max-width: 480px) { .editor-styles-wrapper .wp-block-image.alignleft img, .editor-styles-wrapper .wp-block-image.alignright img, .editor-styles-wrapper .wp-block-image.aligncenter img, .gutenberg-content .wp-block-image.alignleft img, .gutenberg-content .wp-block-image.alignright img, .gutenberg-content .wp-block-image.aligncenter img { float: none; height: auto; width: 100%; } } .editor-styles-wrapper .wp-block-image .aligncenter, .gutenberg-content .wp-block-image .aligncenter { text-align: center; } .editor-styles-wrapper .wp-block-image .aligncenter img, .gutenberg-content .wp-block-image .aligncenter img { margin-left: auto; margin-right: auto; } .editor-styles-wrapper .wp-block-categories-list, .editor-styles-wrapper ol:not([class]), .editor-styles-wrapper ul:not([class]), .gutenberg-content .wp-block-categories-list, .gutenberg-content ol:not([class]), .gutenberg-content ul:not([class]) { padding-left: calc(2rem + var(--margin-between-paragraphs)); } .editor-styles-wrapper p, .gutenberg-content p { color: var(--color-paragraph); line-height: var(--line-height-paragraphs-blog); } .editor-styles-wrapper .has-larger-font-size, .editor-styles-wrapper .has-large-font-size, .gutenberg-content .has-larger-font-size, .gutenberg-content .has-large-font-size { line-height: var(--line-height-headings); } @media (max-width: 480px) { .editor-styles-wrapper .has-large-font-size, .gutenberg-content .has-large-font-size { font-size: var(--font-size-18); } } @media (max-width: 480px) { .editor-styles-wrapper .has-larger-font-size, .gutenberg-content .has-larger-font-size { font-size: var(--font-size-22); } } @media (max-width: 1240px) { .editor-styles-wrapper .has-background, .gutenberg-content .has-background { width: calc(100% - calc(2.375em * 2)); } } @media (max-width: 1240px) { .editor-styles-wrapper .wp-block-preformatted, .gutenberg-content .wp-block-preformatted { margin-left: var(--padding-container-horizontal); margin-right: var(--padding-container-horizontal); width: calc(100% - calc(var(--padding-container-horizontal) * 4)); } } .editor-styles-wrapper .wp-block-pullquote.alignwide, .editor-styles-wrapper .wp-block-pullquote.alignfull, .gutenberg-content .wp-block-pullquote.alignwide, .gutenberg-content .wp-block-pullquote.alignfull { padding-left: 0; padding-right: 0; } @media (max-width: 1240px) { .editor-styles-wrapper .wp-block-pullquote.alignwide, .editor-styles-wrapper .wp-block-pullquote.alignfull, .gutenberg-content .wp-block-pullquote.alignwide, .gutenberg-content .wp-block-pullquote.alignfull { margin-left: var(--padding-container-horizontal); margin-right: var(--padding-container-horizontal); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } } .editor-styles-wrapper .wp-block-pullquote.alignfull, .gutenberg-content .wp-block-pullquote.alignfull { margin-left: var(--padding-container-horizontal); margin-right: var(--padding-container-horizontal); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } /* stylelint-disable no-descending-specificity */ th { -webkit-backface-visibility: hidden; backface-visibility: hidden; background-color: var(--color-scropion); color: var(--color-white); font-weight: var(--font-weight-bold); overflow: hidden; text-align: left; } td { color: var(--color-black); } td, th, .wp-block-table td, .wp-block-table th { border: 0; font-family: var(--font-paragraph); font-size: var(--font-size-14); height: 2rem; padding: .6rem 1.5rem; } tr:nth-child(even) { background-color: var(--color-background-table-cell-even); } tr:nth-child(odd) { background-color: var(--color-background-table-cell-odd); } thead, .wp-block-table thead { border: 0; } thead th:first-child, .wp-block-table thead th:first-child { border-top-left-radius: 8px; } thead th:last-child, .wp-block-table thead th:last-child { border-top-right-radius: 8px; } table { border-collapse: collapse; border-spacing: 0; } .editor-styles-wrapper .wp-block-table.alignfull, .gutenberg-content .wp-block-table.alignfull { margin-left: var(--padding-container-horizontal); margin-right: var(--padding-container-horizontal); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } @media (max-width: 1240px) { .editor-styles-wrapper .wp-block-table.alignwide, .gutenberg-content .wp-block-table.alignwide { margin-left: var(--padding-container-horizontal); margin-right: var(--padding-container-horizontal); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } } .editor-styles-wrapper .wp-block-text-columns.alignfull, .gutenberg-content .wp-block-text-columns.alignfull { padding-left: var(--padding-container-horizontal); padding-right: var(--padding-container-horizontal); } .editor-styles-wrapper .wp-block-text-columns.columns-1.alignfull, .gutenberg-content .wp-block-text-columns.columns-1.alignfull { padding-left: var(--padding-container-horizontal); padding-right: var(--padding-container-horizontal); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } @media (max-width: 900px) { .editor-styles-wrapper .wp-block-text-columns.columns-1, .gutenberg-content .wp-block-text-columns.columns-1 { display: grid; grid-gap: 1em; grid-template-columns: repeat(2, 1fr); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } .editor-styles-wrapper .wp-block-text-columns.columns-1 .wp-block-column, .gutenberg-content .wp-block-text-columns.columns-1 .wp-block-column { margin: 0; width: 100%; } } @media (max-width: 480px) { .editor-styles-wrapper .wp-block-text-columns.columns-1, .gutenberg-content .wp-block-text-columns.columns-1 { grid-template-columns: repeat(1, 1fr); } } .editor-styles-wrapper .wp-block-text-columns.columns-2.alignfull, .gutenberg-content .wp-block-text-columns.columns-2.alignfull { padding-left: var(--padding-container-horizontal); padding-right: var(--padding-container-horizontal); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } @media (max-width: 900px) { .editor-styles-wrapper .wp-block-text-columns.columns-2, .gutenberg-content .wp-block-text-columns.columns-2 { display: grid; grid-gap: 1em; grid-template-columns: repeat(2, 1fr); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } .editor-styles-wrapper .wp-block-text-columns.columns-2 .wp-block-column, .gutenberg-content .wp-block-text-columns.columns-2 .wp-block-column { margin: 0; width: 100%; } } @media (max-width: 480px) { .editor-styles-wrapper .wp-block-text-columns.columns-2, .gutenberg-content .wp-block-text-columns.columns-2 { grid-template-columns: repeat(1, 1fr); } } .editor-styles-wrapper .wp-block-text-columns.columns-3.alignfull, .gutenberg-content .wp-block-text-columns.columns-3.alignfull { padding-left: var(--padding-container-horizontal); padding-right: var(--padding-container-horizontal); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } @media (max-width: 900px) { .editor-styles-wrapper .wp-block-text-columns.columns-3, .gutenberg-content .wp-block-text-columns.columns-3 { display: grid; grid-gap: 1em; grid-template-columns: repeat(2, 1fr); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } .editor-styles-wrapper .wp-block-text-columns.columns-3 .wp-block-column, .gutenberg-content .wp-block-text-columns.columns-3 .wp-block-column { margin: 0; width: 100%; } } @media (max-width: 480px) { .editor-styles-wrapper .wp-block-text-columns.columns-3, .gutenberg-content .wp-block-text-columns.columns-3 { grid-template-columns: repeat(1, 1fr); } } .editor-styles-wrapper .wp-block-text-columns.columns-4.alignfull, .gutenberg-content .wp-block-text-columns.columns-4.alignfull { padding-left: var(--padding-container-horizontal); padding-right: var(--padding-container-horizontal); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } @media (max-width: 900px) { .editor-styles-wrapper .wp-block-text-columns.columns-4, .gutenberg-content .wp-block-text-columns.columns-4 { display: grid; grid-gap: 1em; grid-template-columns: repeat(2, 1fr); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } .editor-styles-wrapper .wp-block-text-columns.columns-4 .wp-block-column, .gutenberg-content .wp-block-text-columns.columns-4 .wp-block-column { margin: 0; width: 100%; } } @media (max-width: 480px) { .editor-styles-wrapper .wp-block-text-columns.columns-4, .gutenberg-content .wp-block-text-columns.columns-4 { grid-template-columns: repeat(1, 1fr); } } .editor-styles-wrapper .wp-block-text-columns.columns-5.alignfull, .gutenberg-content .wp-block-text-columns.columns-5.alignfull { padding-left: var(--padding-container-horizontal); padding-right: var(--padding-container-horizontal); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } @media (max-width: 900px) { .editor-styles-wrapper .wp-block-text-columns.columns-5, .gutenberg-content .wp-block-text-columns.columns-5 { display: grid; grid-gap: 1em; grid-template-columns: repeat(2, 1fr); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } .editor-styles-wrapper .wp-block-text-columns.columns-5 .wp-block-column, .gutenberg-content .wp-block-text-columns.columns-5 .wp-block-column { margin: 0; width: 100%; } } @media (max-width: 480px) { .editor-styles-wrapper .wp-block-text-columns.columns-5, .gutenberg-content .wp-block-text-columns.columns-5 { grid-template-columns: repeat(1, 1fr); } } .editor-styles-wrapper .wp-block-text-columns.columns-6.alignfull, .gutenberg-content .wp-block-text-columns.columns-6.alignfull { padding-left: var(--padding-container-horizontal); padding-right: var(--padding-container-horizontal); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } @media (max-width: 900px) { .editor-styles-wrapper .wp-block-text-columns.columns-6, .gutenberg-content .wp-block-text-columns.columns-6 { display: grid; grid-gap: 1em; grid-template-columns: repeat(2, 1fr); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } .editor-styles-wrapper .wp-block-text-columns.columns-6 .wp-block-column, .gutenberg-content .wp-block-text-columns.columns-6 .wp-block-column { margin: 0; width: 100%; } } @media (max-width: 480px) { .editor-styles-wrapper .wp-block-text-columns.columns-6, .gutenberg-content .wp-block-text-columns.columns-6 { grid-template-columns: repeat(1, 1fr); } } .editor-styles-wrapper .wp-block-text-columns.columns-7.alignfull, .gutenberg-content .wp-block-text-columns.columns-7.alignfull { padding-left: var(--padding-container-horizontal); padding-right: var(--padding-container-horizontal); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } @media (max-width: 900px) { .editor-styles-wrapper .wp-block-text-columns.columns-7, .gutenberg-content .wp-block-text-columns.columns-7 { display: grid; grid-gap: 1em; grid-template-columns: repeat(2, 1fr); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } .editor-styles-wrapper .wp-block-text-columns.columns-7 .wp-block-column, .gutenberg-content .wp-block-text-columns.columns-7 .wp-block-column { margin: 0; width: 100%; } } @media (max-width: 480px) { .editor-styles-wrapper .wp-block-text-columns.columns-7, .gutenberg-content .wp-block-text-columns.columns-7 { grid-template-columns: repeat(1, 1fr); } } .editor-styles-wrapper .wp-block-text-columns.columns-8.alignfull, .gutenberg-content .wp-block-text-columns.columns-8.alignfull { padding-left: var(--padding-container-horizontal); padding-right: var(--padding-container-horizontal); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } @media (max-width: 900px) { .editor-styles-wrapper .wp-block-text-columns.columns-8, .gutenberg-content .wp-block-text-columns.columns-8 { display: grid; grid-gap: 1em; grid-template-columns: repeat(2, 1fr); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } .editor-styles-wrapper .wp-block-text-columns.columns-8 .wp-block-column, .gutenberg-content .wp-block-text-columns.columns-8 .wp-block-column { margin: 0; width: 100%; } } @media (max-width: 480px) { .editor-styles-wrapper .wp-block-text-columns.columns-8, .gutenberg-content .wp-block-text-columns.columns-8 { grid-template-columns: repeat(1, 1fr); } } .editor-styles-wrapper .wp-block-text-columns.columns-9.alignfull, .gutenberg-content .wp-block-text-columns.columns-9.alignfull { padding-left: var(--padding-container-horizontal); padding-right: var(--padding-container-horizontal); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } @media (max-width: 900px) { .editor-styles-wrapper .wp-block-text-columns.columns-9, .gutenberg-content .wp-block-text-columns.columns-9 { display: grid; grid-gap: 1em; grid-template-columns: repeat(2, 1fr); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } .editor-styles-wrapper .wp-block-text-columns.columns-9 .wp-block-column, .gutenberg-content .wp-block-text-columns.columns-9 .wp-block-column { margin: 0; width: 100%; } } @media (max-width: 480px) { .editor-styles-wrapper .wp-block-text-columns.columns-9, .gutenberg-content .wp-block-text-columns.columns-9 { grid-template-columns: repeat(1, 1fr); } } @media (max-width: 1240px) { .editor-styles-wrapper .wp-block-verse, .gutenberg-content .wp-block-verse { margin-left: var(--padding-container-horizontal); margin-right: var(--padding-container-horizontal); width: calc(100% - calc(var(--padding-container-horizontal) * 4)); } } .editor-styles-wrapper .wp-block-video video, .gutenberg-content .wp-block-video video { max-width: 100%; width: 100%; } @media (max-width: 1240px) { .editor-styles-wrapper .wp-block-video.alignwide, .editor-styles-wrapper .wp-block-video.alignfull, .gutenberg-content .wp-block-video.alignwide, .gutenberg-content .wp-block-video.alignfull { width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } } .editor-styles-wrapper .wp-block-video.alignfull, .gutenberg-content .wp-block-video.alignfull { margin-left: 0; margin-right: 0; max-width: 100%; padding-left: 0; padding-right: 0; width: 100%; } .wp-block.is-style-boxed, .is-style-boxed { border: 2px solid var(--color-paragraph); color: var(--color-paragraph); font-size: 17px; font-style: normal; font-weight: var(--font-weight-medium); line-height: var(--line-height-paragraphs-blog); padding: 2rem; width: calc(100% - 4rem); } @media (min-width: 840px) { .gutenberg-content .is-style-boxed { transform: translate(2rem, 0); } } .wp-block-button__link { -webkit-appearance: none; -moz-appearance: none; appearance: none; background-color: var(--color-button-background); border: var(--border-width-input-field) solid var(--color-button-background); border-radius: var(--border-radius-input-field); color: var(--color-button); cursor: pointer; display: inline-block; font-family: var(--font-paragraph); font-size: var(--font-size-16); font-weight: var(--font-weight-semibold); line-height: 19.6364px; margin-bottom: 0; max-width: 230px; overflow: hidden; padding-bottom: calc(14px - calc(var(--border-width-input-field) * 2)); padding-left: calc(21px - calc(var(--border-width-input-field) * 2)); padding-right: calc(21px - calc(var(--border-width-input-field) * 2)); padding-top: calc(14px - calc(var(--border-width-input-field) * 2)); position: relative; text-decoration: none; text-overflow: ellipsis; transition: all 0.08s cubic-bezier(0.25, 0.46, 0.45, 0.94); white-space: nowrap; width: auto; /* stylelint-disable a11y/no-display-none */ /* stylelint-enable */ } .wp-block-button__link.is-external-link::after { display: none; } .wp-block-button__link.focus, .wp-block-button__link:hover, .wp-block-button__link:focus { background-color: var(--color-button-background-hover); border: var(--border-width-input-field) solid var(--color-button-background-hover); color: var(--color-button-hover); } .wp-block-file .wp-block-file__button { font-size: var(--font-size-16); line-height: 20.9091px; padding-bottom: calc(10px - calc(var(--border-width-input-field) * 2)); padding-left: calc(21px - calc(var(--border-width-input-field) * 2)); padding-right: calc(21px - calc(var(--border-width-input-field) * 2)); padding-top: calc(10px - calc(var(--border-width-input-field) * 2)); font-size: .8em; padding: .3em .8em; } .editor-styles-wrapper .alignleft > *, .gutenberg-content .alignleft > * { float: left; } .editor-styles-wrapper .alignright > *, .gutenberg-content .alignright > * { float: right; } .editor-styles-wrapper .alignleft > img, .gutenberg-content .alignleft > img { margin-bottom: var(--margin-between-paragraphs); margin-right: var(--padding-container-horizontal); margin-top: var(--margin-between-paragraphs); } .editor-styles-wrapper .alignleft > img + figcaption, .gutenberg-content .alignleft > img + figcaption { margin-top: 0; } .editor-styles-wrapper .alignright > img, .gutenberg-content .alignright > img { margin-bottom: var(--margin-between-paragraphs); margin-left: var(--padding-container-horizontal); margin-top: var(--margin-between-paragraphs); } .editor-styles-wrapper .alignright > img + figcaption, .gutenberg-content .alignright > img + figcaption { margin-top: 0; } @media (min-width: 1240px) { .editor-styles-wrapper .alignwide, .gutenberg-content .alignwide { max-width: 1200px; width: 100%; } } @media (min-width: 1240px) { .editor-styles-wrapper .alignfull, .gutenberg-content .alignfull { margin-bottom: var(--padding-block); margin-top: var(--padding-block); max-width: 100%; width: 100%; } } .editor-styles-wrapper .alignfull.wp-block-image img, .gutenberg-content .alignfull.wp-block-image img { border-radius: 0; } /* stylelint-disable selector-max-combinators, selector-max-compound-selectors */ .editor-styles-wrapper figcaption, .editor-styles-wrapper cite, .editor-styles-wrapper small, .gutenberg-content figcaption, .gutenberg-content cite, .gutenberg-content small { border: 0; color: var(--color-caption); font-size: var(--font-size-captions); font-style: normal; margin-bottom: 6rem; margin-left: auto; margin-right: auto; margin-top: 3rem; max-width: 800px; padding-bottom: 0; text-align: center; width: 100%; } @media (max-width: 480px) { .editor-styles-wrapper figcaption, .editor-styles-wrapper cite, .editor-styles-wrapper small, .gutenberg-content figcaption, .gutenberg-content cite, .gutenberg-content small { margin-top: 2rem; } } .editor-styles-wrapper .wp-block-image figcaption, .editor-styles-wrapper .wp-block-image .alignright > figcaption, .editor-styles-wrapper .wp-block-image .aligncenter > figcaption, .editor-styles-wrapper .wp-block-image.is-resized > figcaption, .gutenberg-content .wp-block-image figcaption, .gutenberg-content .wp-block-image .alignright > figcaption, .gutenberg-content .wp-block-image .aligncenter > figcaption, .gutenberg-content .wp-block-image.is-resized > figcaption { display: block; width: 100%; } .editor-styles-wrapper cite, .gutenberg-content cite { margin-bottom: 0; } .editor-styles-wrapper img, .gutenberg-content img { border-radius: 4px; } kbd { background-color: var(--color-kbd-background); border: 1px solid var(--color-kbd-border); border-radius: 4px; box-shadow: 0 1px 0 rgba(22, 22, 22, 0.2), 0 0 0 2px var(--color-white) inset; color: var(--color-paragraph); display: inline-block; line-height: 1.4; padding: 0 .5rem; text-shadow: 0 1px 0 var(--color-white); white-space: nowrap; } /* stylelint-disable a11y/no-display-none, no-descending-specificity, selector-max-pseudo-class */ a { color: var(--color-link-text); text-decoration: none; } a:hover, a:focus { color: var(--color-link-text); } .editor-styles-wrapper li > a::after, .gutenberg-content li > a::after { display: none; } .editor-styles-wrapper [data-type="core/paragraph"] > a, .editor-styles-wrapper li > a, .editor-styles-wrapper p > strong > a, .editor-styles-wrapper p > em > a, .editor-styles-wrapper p:not([class]) > a:not([class]), .editor-styles-wrapper p.has-text-align-left > a, .editor-styles-wrapper p.has-text-align-center > a, .editor-styles-wrapper p.has-text-align-right > a, .editor-styles-wrapper p.has-small-font-size > a, .editor-styles-wrapper figcaption > a, .editor-styles-wrapper p:not([class]) > a.is-external-link, .gutenberg-content [data-type="core/paragraph"] > a, .gutenberg-content li > a, .gutenberg-content p > strong > a, .gutenberg-content p > em > a, .gutenberg-content p:not([class]) > a:not([class]), .gutenberg-content p.has-text-align-left > a, .gutenberg-content p.has-text-align-center > a, .gutenberg-content p.has-text-align-right > a, .gutenberg-content p.has-small-font-size > a, .gutenberg-content figcaption > a, .gutenberg-content p:not([class]) > a.is-external-link { border-bottom: 1px solid var(--color-link-border-bottom); box-shadow: inset 0 0 0 var(--color-link-background-hover); color: var(--color-link-text); display: inline; text-decoration: none; transition: box-shadow 0.1s cubic-bezier(0.19, 1, 0.22, 1), color 0.1s cubic-bezier(0.19, 1, 0.22, 1); } .editor-styles-wrapper [data-type="core/paragraph"] > a::after, .editor-styles-wrapper li > a::after, .editor-styles-wrapper p > strong > a::after, .editor-styles-wrapper p > em > a::after, .editor-styles-wrapper p:not([class]) > a:not([class])::after, .editor-styles-wrapper p.has-text-align-left > a::after, .editor-styles-wrapper p.has-text-align-center > a::after, .editor-styles-wrapper p.has-text-align-right > a::after, .editor-styles-wrapper p.has-small-font-size > a::after, .editor-styles-wrapper figcaption > a::after, .editor-styles-wrapper p:not([class]) > a.is-external-link::after, .gutenberg-content [data-type="core/paragraph"] > a::after, .gutenberg-content li > a::after, .gutenberg-content p > strong > a::after, .gutenberg-content p > em > a::after, .gutenberg-content p:not([class]) > a:not([class])::after, .gutenberg-content p.has-text-align-left > a::after, .gutenberg-content p.has-text-align-center > a::after, .gutenberg-content p.has-text-align-right > a::after, .gutenberg-content p.has-small-font-size > a::after, .gutenberg-content figcaption > a::after, .gutenberg-content p:not([class]) > a.is-external-link::after { background-image: url("../../svg/external-link-styled-links.svg"); } .editor-styles-wrapper [data-type="core/paragraph"] > a:hover, .editor-styles-wrapper li > a:hover, .editor-styles-wrapper p > strong > a:hover, .editor-styles-wrapper p > em > a:hover, .editor-styles-wrapper p:not([class]) > a:not([class]):hover, .editor-styles-wrapper p.has-text-align-left > a:hover, .editor-styles-wrapper p.has-text-align-center > a:hover, .editor-styles-wrapper p.has-text-align-right > a:hover, .editor-styles-wrapper p.has-small-font-size > a:hover, .editor-styles-wrapper figcaption > a:hover, .editor-styles-wrapper p:not([class]) > a.is-external-link:hover, .gutenberg-content [data-type="core/paragraph"] > a:hover, .gutenberg-content li > a:hover, .gutenberg-content p > strong > a:hover, .gutenberg-content p > em > a:hover, .gutenberg-content p:not([class]) > a:not([class]):hover, .gutenberg-content p.has-text-align-left > a:hover, .gutenberg-content p.has-text-align-center > a:hover, .gutenberg-content p.has-text-align-right > a:hover, .gutenberg-content p.has-small-font-size > a:hover, .gutenberg-content figcaption > a:hover, .gutenberg-content p:not([class]) > a.is-external-link:hover { border-color: transparent; box-shadow: inset 0 -3.3rem 0 var(--color-link-background-hover); color: var(--color-link-text-hover); } .editor-styles-wrapper [data-type="core/paragraph"] > a:hover::after, .editor-styles-wrapper li > a:hover::after, .editor-styles-wrapper p > strong > a:hover::after, .editor-styles-wrapper p > em > a:hover::after, .editor-styles-wrapper p:not([class]) > a:not([class]):hover::after, .editor-styles-wrapper p.has-text-align-left > a:hover::after, .editor-styles-wrapper p.has-text-align-center > a:hover::after, .editor-styles-wrapper p.has-text-align-right > a:hover::after, .editor-styles-wrapper p.has-small-font-size > a:hover::after, .editor-styles-wrapper figcaption > a:hover::after, .editor-styles-wrapper p:not([class]) > a.is-external-link:hover::after, .gutenberg-content [data-type="core/paragraph"] > a:hover::after, .gutenberg-content li > a:hover::after, .gutenberg-content p > strong > a:hover::after, .gutenberg-content p > em > a:hover::after, .gutenberg-content p:not([class]) > a:not([class]):hover::after, .gutenberg-content p.has-text-align-left > a:hover::after, .gutenberg-content p.has-text-align-center > a:hover::after, .gutenberg-content p.has-text-align-right > a:hover::after, .gutenberg-content p.has-small-font-size > a:hover::after, .gutenberg-content figcaption > a:hover::after, .gutenberg-content p:not([class]) > a.is-external-link:hover::after { background-image: url("../../svg/external-link-white.svg"); } .editor-styles-wrapper [data-type="core/paragraph"] > a:focus, .editor-styles-wrapper li > a:focus, .editor-styles-wrapper p > strong > a:focus, .editor-styles-wrapper p > em > a:focus, .editor-styles-wrapper p:not([class]) > a:not([class]):focus, .editor-styles-wrapper p.has-text-align-left > a:focus, .editor-styles-wrapper p.has-text-align-center > a:focus, .editor-styles-wrapper p.has-text-align-right > a:focus, .editor-styles-wrapper p.has-small-font-size > a:focus, .editor-styles-wrapper figcaption > a:focus, .editor-styles-wrapper p:not([class]) > a.is-external-link:focus, .gutenberg-content [data-type="core/paragraph"] > a:focus, .gutenberg-content li > a:focus, .gutenberg-content p > strong > a:focus, .gutenberg-content p > em > a:focus, .gutenberg-content p:not([class]) > a:not([class]):focus, .gutenberg-content p.has-text-align-left > a:focus, .gutenberg-content p.has-text-align-center > a:focus, .gutenberg-content p.has-text-align-right > a:focus, .gutenberg-content p.has-small-font-size > a:focus, .gutenberg-content figcaption > a:focus, .gutenberg-content p:not([class]) > a.is-external-link:focus { background-color: transparent; border-color: var(--color-link-border-focus); box-shadow: none; color: var(--color-link-text-focus); text-decoration: none; } @media (prefers-reduced-motion: no-preference) { .editor-styles-wrapper [data-type="core/paragraph"] > a:focus, .editor-styles-wrapper li > a:focus, .editor-styles-wrapper p > strong > a:focus, .editor-styles-wrapper p > em > a:focus, .editor-styles-wrapper p:not([class]) > a:not([class]):focus, .editor-styles-wrapper p.has-text-align-left > a:focus, .editor-styles-wrapper p.has-text-align-center > a:focus, .editor-styles-wrapper p.has-text-align-right > a:focus, .editor-styles-wrapper p.has-small-font-size > a:focus, .editor-styles-wrapper figcaption > a:focus, .editor-styles-wrapper p:not([class]) > a.is-external-link:focus, .gutenberg-content [data-type="core/paragraph"] > a:focus, .gutenberg-content li > a:focus, .gutenberg-content p > strong > a:focus, .gutenberg-content p > em > a:focus, .gutenberg-content p:not([class]) > a:not([class]):focus, .gutenberg-content p.has-text-align-left > a:focus, .gutenberg-content p.has-text-align-center > a:focus, .gutenberg-content p.has-text-align-right > a:focus, .gutenberg-content p.has-small-font-size > a:focus, .gutenberg-content figcaption > a:focus, .gutenberg-content p:not([class]) > a.is-external-link:focus { outline-offset: 5px; transition: outline-offset .25s ease; } } .editor-styles-wrapper [data-type="core/paragraph"] > a:focus::after, .editor-styles-wrapper li > a:focus::after, .editor-styles-wrapper p > strong > a:focus::after, .editor-styles-wrapper p > em > a:focus::after, .editor-styles-wrapper p:not([class]) > a:not([class]):focus::after, .editor-styles-wrapper p.has-text-align-left > a:focus::after, .editor-styles-wrapper p.has-text-align-center > a:focus::after, .editor-styles-wrapper p.has-text-align-right > a:focus::after, .editor-styles-wrapper p.has-small-font-size > a:focus::after, .editor-styles-wrapper figcaption > a:focus::after, .editor-styles-wrapper p:not([class]) > a.is-external-link:focus::after, .gutenberg-content [data-type="core/paragraph"] > a:focus::after, .gutenberg-content li > a:focus::after, .gutenberg-content p > strong > a:focus::after, .gutenberg-content p > em > a:focus::after, .gutenberg-content p:not([class]) > a:not([class]):focus::after, .gutenberg-content p.has-text-align-left > a:focus::after, .gutenberg-content p.has-text-align-center > a:focus::after, .gutenberg-content p.has-text-align-right > a:focus::after, .gutenberg-content p.has-small-font-size > a:focus::after, .gutenberg-content figcaption > a:focus::after, .gutenberg-content p:not([class]) > a.is-external-link:focus::after { background-image: url("../../svg/external-link-black.svg"); } /*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImJhc2UvX25vcm1hbGl6ZS5zY3NzIiwiZ2xvYmFsLmNzcyIsImhlbHBlcnMvX2hleC10by1yZ2Iuc2NzcyIsImhlbHBlcnMvX3R5cG9ncmFwaHkuc2NzcyIsInZhcmlhYmxlcy9fY29sb3JzLnNjc3MiLCJ2YXJpYWJsZXMvX3NwYWNpbmdzLnNjc3MiLCJ2YXJpYWJsZXMvX2ZvbnQtZmFjZS5zY3NzIiwidmFyaWFibGVzL19mb250LWZhbWlseS5zY3NzIiwidmFyaWFibGVzL19mb250LXNpemVzLnNjc3MiLCJjb21wb25lbnRzL19idXR0b24uc2NzcyIsImNvbXBvbmVudHMvX2J1dHRvbi1zaXplLXNtYWxsLnNjc3MiLCJjb21wb25lbnRzL19idXR0b24tc2l6ZS1sYXJnZS5zY3NzIiwiY29tcG9uZW50cy9faGVhZGluZy1oZXJvLnNjc3MiLCJiYXNlL19hY2Nlc3NpYmlsaXR5LnNjc3MiLCJuYXZpZ2F0aW9uL19uYXYtZGVza3RvcC5zY3NzIiwibmF2aWdhdGlvbi9fbmF2LW1vYmlsZS5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2hhbWJ1cmdlcnMvX3Nhc3MvaGFtYnVyZ2Vycy9oYW1idXJnZXJzLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvaGFtYnVyZ2Vycy9fc2Fzcy9oYW1idXJnZXJzL19iYXNlLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvaGFtYnVyZ2Vycy9fc2Fzcy9oYW1idXJnZXJzL3R5cGVzL18zZHguc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9oYW1idXJnZXJzL19zYXNzL2hhbWJ1cmdlcnMvdHlwZXMvXzNkeC1yLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvaGFtYnVyZ2Vycy9fc2Fzcy9oYW1idXJnZXJzL3R5cGVzL18zZHkuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9oYW1idXJnZXJzL19zYXNzL2hhbWJ1cmdlcnMvdHlwZXMvXzNkeS1yLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvaGFtYnVyZ2Vycy9fc2Fzcy9oYW1idXJnZXJzL3R5cGVzL18zZHh5LnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvaGFtYnVyZ2Vycy9fc2Fzcy9oYW1idXJnZXJzL3R5cGVzL18zZHh5LXIuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9oYW1idXJnZXJzL19zYXNzL2hhbWJ1cmdlcnMvdHlwZXMvX2Fycm93LnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvaGFtYnVyZ2Vycy9fc2Fzcy9oYW1idXJnZXJzL3R5cGVzL19hcnJvdy1yLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvaGFtYnVyZ2Vycy9fc2Fzcy9oYW1idXJnZXJzL3R5cGVzL19hcnJvd2FsdC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2hhbWJ1cmdlcnMvX3Nhc3MvaGFtYnVyZ2Vycy90eXBlcy9fYXJyb3dhbHQtci5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2hhbWJ1cmdlcnMvX3Nhc3MvaGFtYnVyZ2Vycy90eXBlcy9fYXJyb3d0dXJuLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvaGFtYnVyZ2Vycy9fc2Fzcy9oYW1idXJnZXJzL3R5cGVzL19hcnJvd3R1cm4tci5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2hhbWJ1cmdlcnMvX3Nhc3MvaGFtYnVyZ2Vycy90eXBlcy9fYm9yaW5nLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvaGFtYnVyZ2Vycy9fc2Fzcy9oYW1idXJnZXJzL3R5cGVzL19jb2xsYXBzZS5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2hhbWJ1cmdlcnMvX3Nhc3MvaGFtYnVyZ2Vycy90eXBlcy9fY29sbGFwc2Utci5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2hhbWJ1cmdlcnMvX3Nhc3MvaGFtYnVyZ2Vycy90eXBlcy9fZWxhc3RpYy5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2hhbWJ1cmdlcnMvX3Nhc3MvaGFtYnVyZ2Vycy90eXBlcy9fZWxhc3RpYy1yLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvaGFtYnVyZ2Vycy9fc2Fzcy9oYW1idXJnZXJzL3R5cGVzL19lbXBoYXRpYy5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2hhbWJ1cmdlcnMvX3Nhc3MvaGFtYnVyZ2Vycy90eXBlcy9fZW1waGF0aWMtci5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2hhbWJ1cmdlcnMvX3Nhc3MvaGFtYnVyZ2Vycy90eXBlcy9fbWludXMuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9oYW1idXJnZXJzL19zYXNzL2hhbWJ1cmdlcnMvdHlwZXMvX3NsaWRlci5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2hhbWJ1cmdlcnMvX3Nhc3MvaGFtYnVyZ2Vycy90eXBlcy9fc2xpZGVyLXIuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9oYW1idXJnZXJzL19zYXNzL2hhbWJ1cmdlcnMvdHlwZXMvX3NwaW4uc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9oYW1idXJnZXJzL19zYXNzL2hhbWJ1cmdlcnMvdHlwZXMvX3NwaW4tci5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2hhbWJ1cmdlcnMvX3Nhc3MvaGFtYnVyZ2Vycy90eXBlcy9fc3ByaW5nLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvaGFtYnVyZ2Vycy9fc2Fzcy9oYW1idXJnZXJzL3R5cGVzL19zcHJpbmctci5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2hhbWJ1cmdlcnMvX3Nhc3MvaGFtYnVyZ2Vycy90eXBlcy9fc3RhbmQuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9oYW1idXJnZXJzL19zYXNzL2hhbWJ1cmdlcnMvdHlwZXMvX3N0YW5kLXIuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9oYW1idXJnZXJzL19zYXNzL2hhbWJ1cmdlcnMvdHlwZXMvX3NxdWVlemUuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9oYW1idXJnZXJzL19zYXNzL2hhbWJ1cmdlcnMvdHlwZXMvX3ZvcnRleC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2hhbWJ1cmdlcnMvX3Nhc3MvaGFtYnVyZ2Vycy90eXBlcy9fdm9ydGV4LXIuc2NzcyIsImhlbHBlcnMvX2FuaW1hdGlvbnMuc2NzcyIsImxheW91dC9fZGVtby1jb250ZW50LnNjc3MiLCJ2YXJpYWJsZXMvX2JyZWFrcG9pbnRzLnNjc3MiLCJjb21wb25lbnRzL19saW5rLnNjc3MiLCJsYXlvdXQvX2dlbmVyYWwuc2NzcyIsImxheW91dC9fcHJpbnQuc2NzcyIsImxheW91dC9fdHlwb2dyYXBoeS5zY3NzIiwibGF5b3V0L19zaXRlLWhlYWRlci5zY3NzIiwibGF5b3V0L19zaXRlLWZvb3Rlci5zY3NzIiwibGF5b3V0L19mb3Jtcy5zY3NzIiwiY29tcG9uZW50cy9fYnV0dG9uLXN0eWxlLWdob3N0LnNjc3MiLCJsYXlvdXQvX2Jsb2cuc2NzcyIsImxheW91dC9fd29yZHByZXNzLnNjc3MiLCJmZWF0dXJlcy9fdG9wLnNjc3MiLCJmZWF0dXJlcy9fZ2FsbGVyeS5zY3NzIiwiZmVhdHVyZXMvX2xhenlsb2FkLnNjc3MiLCJmZWF0dXJlcy9fcGFnaW5hdGlvbi5zY3NzIiwiZmVhdHVyZXMvX2dyYXZpdHktZm9ybXMuc2NzcyIsInZpZXdzL19zZWFyY2guc2NzcyIsImhlbHBlcnMvX2dyaWQuc2NzcyIsInZpZXdzL180MDQuc2NzcyIsInZpZXdzL19jb21tZW50cy5zY3NzIiwiZ3V0ZW5iZXJnL2xheW91dC9fY29udGVudC5zY3NzIiwiZ3V0ZW5iZXJnL2Jsb2Nrcy9fY29yZS1ibG9ja3F1b3RlLnNjc3MiLCJndXRlbmJlcmcvYmxvY2tzL19jb3JlLWNvZGUuc2NzcyIsImd1dGVuYmVyZy9ibG9ja3MvX2NvcmUtY29sdW1ucy5zY3NzIiwiZ3V0ZW5iZXJnL2Jsb2Nrcy9fY29yZS1jb3Zlci5zY3NzIiwiZ3V0ZW5iZXJnL2Jsb2Nrcy9fY29yZS1lbWJlZC5zY3NzIiwiZ3V0ZW5iZXJnL2Jsb2Nrcy9fY29yZS1nYWxsZXJ5LnNjc3MiLCJndXRlbmJlcmcvYmxvY2tzL19jb3JlLXNlcGFyYXRvci5zY3NzIiwiZ3V0ZW5iZXJnL2Jsb2Nrcy9fY29yZS1oZWFkaW5nLnNjc3MiLCJndXRlbmJlcmcvYmxvY2tzL19jb3JlLWltYWdlLnNjc3MiLCJndXRlbmJlcmcvYmxvY2tzL19jb3JlLWxpc3Quc2NzcyIsImd1dGVuYmVyZy9ibG9ja3MvX2NvcmUtcGFyYWdyYXBoLnNjc3MiLCJndXRlbmJlcmcvYmxvY2tzL19jb3JlLXByZWZvcm1hdHRlZC5zY3NzIiwiZ3V0ZW5iZXJnL2Jsb2Nrcy9fY29yZS1wdWxscXVvdGUuc2NzcyIsImd1dGVuYmVyZy9ibG9ja3MvX2NvcmUtdGFibGUuc2NzcyIsImd1dGVuYmVyZy9ibG9ja3MvX2NvcmUtdGV4dC1jb2x1bW5zLnNjc3MiLCJndXRlbmJlcmcvYmxvY2tzL19jb3JlLXZlcnNlLnNjc3MiLCJndXRlbmJlcmcvYmxvY2tzL19jb3JlLXZpZGVvLnNjc3MiLCJndXRlbmJlcmcvYmxvY2tzL19ib3hlZC5zY3NzIiwiZ3V0ZW5iZXJnL2Jsb2Nrcy9fYnV0dG9uLnNjc3MiLCJndXRlbmJlcmcvYmxvY2tzL19idXR0b24tZmlsZS5zY3NzIiwiZ3V0ZW5iZXJnL2Zvcm1hdHRpbmcvX2FsaWduLnNjc3MiLCJndXRlbmJlcmcvZm9ybWF0dGluZy9fY2FwdGlvbi5zY3NzIiwiZ3V0ZW5iZXJnL2Zvcm1hdHRpbmcvX2ltZy5zY3NzIiwiZ3V0ZW5iZXJnL2Zvcm1hdHRpbmcvX2tiZC5zY3NzIiwiZ3V0ZW5iZXJnL2Zvcm1hdHRpbmcvX2xpbmsuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSwyRUFBQTtBQUNBLDBIQUFBO0FBRUE7OEVDQThFO0FERzlFOzs7RUNDRTtBRElGO0VBQ0UsaUJBQWlCLEVBQUE7O0FBR25COzhFQ0g4RTtBRE05RTs7RUNIRTtBRE9GO0VBQ0UsU0FBUyxFQUFBOztBQUdYOztFQ0xFO0FEU0Y7RUFDRSxjQUFjLEVBQUE7O0FBR2hCOzs7RUNORTtBRFdGO0VBQ0UsY0FBYztFQUNkLGVBQWUsRUFBQTs7QUFHakI7OEVDVjhFO0FEYTlFOzs7RUNURTtBRGNGO0VBQ0UsdUJBQXVCO0VBQ3ZCLFNBQVM7RUFDVCxpQkFBaUIsRUFBQTs7QUFHbkI7OztFQ1hFO0FEZ0JGO0VBQ0Usc0JBQXNCO0VBQ3RCLGNBQWMsRUFBQTs7QUFHaEI7OEVDZjhFO0FEa0I5RTs7RUNmRTtBRG1C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RUFDdkMsbUJBQW1CLEVBQUE7O0FDVnJCLGlHQUFBO0FoRzJFQTtFZ0d4RUUsNkJBQTZCO0VBQzdCLHFCQUFxQixFQUFBO0VBRnZCO0lBTUksNkJBQTZCLEVBQUE7O0FBTWpDOztFQUlJLGFBQWEsRUFBQTs7QUFKakI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7RTVDVEUsd0RBQXdEO0VBQ3hELDBEQUEwRDtFQUMxRCw2QkFBNkI7RUFDN0IsZUFBZTtFQUNmLHFCQUFxQjtFQUNyQixxR0FBK0YsRUFBQTtFQUUvRjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztJQUNFLGlFQUFpRSxFQUFBO0VBR25FOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0lBQ0UseUJBQXlCO0lBQ3pCLGdFQUFnRTtJQUNoRSxtQ0FBbUMsRUFBQTtJQUVuQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztNQUNFLDBEQUEwRCxFQUFBO0VBSTlEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0lBQ0UsNkJBQTZCO0lBQzdCLDRDQUE0QztJQUM1QyxnQkFBZ0I7SUFDaEIsbUNBQW1DO0lBQ25DLHFCQUFxQixFQUFBO0lBS3JCO01BVkY7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7UUFXSSxtQkFBbUI7UUFDbkIsb0NBQW9DLEVBQUEsRUFNdkM7SUFIQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztNQUNFLDBEQUEwRCxFQUFBIiwiZmlsZSI6Imdsb2JhbC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvKiEgbm9ybWFsaXplLmNzcyB2OC4wLjEgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzICovXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1wcm9wZXJ0eS11bml0LWFsbG93ZWQtbGlzdCwgYTExeS9saW5lLWhlaWdodC1pcy12ZXJ0aWNhbC1yaHl0aG1lZCwgYTExeS9uby1kaXNwbGF5LW5vbmUgKi9cblxuLyogRG9jdW1lbnRcblx0ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgbGluZSBoZWlnaHQgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpbiBpT1MuXG4gKi9cblxuaHRtbCB7XG4gIGxpbmUtaGVpZ2h0OiAxLjE1O1xufVxuXG4vKiBTZWN0aW9uc1xuXHQgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuYm9keSB7XG4gIG1hcmdpbjogMDtcbn1cblxuLyoqXG4gKiBSZW5kZXIgdGhlIGBtYWluYCBlbGVtZW50IGNvbnNpc3RlbnRseSBpbiBJRS5cbiAqL1xuXG5tYWluIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgZm9udCBzaXplIGFuZCBtYXJnaW4gb24gYGgxYCBlbGVtZW50cyB3aXRoaW4gYHNlY3Rpb25gIGFuZFxuICogYGFydGljbGVgIGNvbnRleHRzIGluIENocm9tZSwgRmlyZWZveCwgYW5kIFNhZmFyaS5cbiAqL1xuXG5oMSB7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBtYXJnaW46IC42N2VtIDA7XG59XG5cbi8qIEdyb3VwaW5nIGNvbnRlbnRcblx0ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAqIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuICovXG5cbmhyIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIGhlaWdodDogMDtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5wcmUge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlO1xuICBmb250LXNpemU6IDFlbTtcbn1cblxuLyogVGV4dC1sZXZlbCBzZW1hbnRpY3Ncblx0ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgb24gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuICovXG5cbmEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLyoqXG4gKiAxLiBSZW1vdmUgdGhlIGJvdHRvbSBib3JkZXIgaW4gQ2hyb21lIDU3LVxuICogMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cbiAqL1xuXG5hYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmNvZGUsXG5rYmQsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZTtcbiAgZm9udC1zaXplOiAxZW07XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc21hbGwge1xuICBmb250LXNpemU6IDgwJTtcbn1cblxuLyogRW1iZWRkZWQgY29udGVudFxuXHQgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGJvcmRlciBvbiBpbWFnZXMgaW5zaWRlIGxpbmtzIGluIElFIDEwLlxuICovXG5cbmltZyB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbn1cblxuLyogRm9ybXNcblx0ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogMS4gQ2hhbmdlIHRoZSBmb250IHN0eWxlcyBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmkuXG4gKi9cblxuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogMTAwJTtcbiAgbGluZS1oZWlnaHQ6IDEuMTU7XG4gIG1hcmdpbjogMDtcbn1cblxuLyoqXG4gKiBTaG93IHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAqIDEuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UuXG4gKi9cblxuYnV0dG9uLFxuaW5wdXQge1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEVkZ2UsIEZpcmVmb3gsIGFuZCBJRS5cbiAqIDEuIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveC5cbiAqL1xuXG5idXR0b24sXG5zZWxlY3Qge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICovXG5cbmJ1dHRvbixcblt0eXBlPVwiYnV0dG9uXCJdLFxuW3R5cGU9XCJyZXNldFwiXSxcblt0eXBlPVwic3VibWl0XCJdIHtcbiAgYXBwZWFyYW5jZTogYnV0dG9uO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGluIEZpcmVmb3guXG4gKi9cblxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJidXR0b25cIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInJlc2V0XCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJzdWJtaXRcIl06Oi1tb3otZm9jdXMtaW5uZXIge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi8qKlxuICogUmVzdG9yZSB0aGUgZm9jdXMgc3R5bGVzIHVuc2V0IGJ5IHRoZSBwcmV2aW91cyBydWxlLlxuICovXG5cbmJ1dHRvbjotbW96LWZvY3VzcmluZyxcblt0eXBlPVwiYnV0dG9uXCJdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJyZXNldFwiXTotbW96LWZvY3VzcmluZyxcblt0eXBlPVwic3VibWl0XCJdOi1tb3otZm9jdXNyaW5nIHtcbiAgb3V0bGluZTogMXB4IGRvdHRlZCBCdXR0b25UZXh0O1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAqL1xuXG5maWVsZHNldCB7XG4gIHBhZGRpbmc6IC4zNWVtIC43NWVtIC42MjVlbTtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSB0ZXh0IHdyYXBwaW5nIGluIEVkZ2UgYW5kIElFLlxuICogMi4gQ29ycmVjdCB0aGUgY29sb3IgaW5oZXJpdGFuY2UgZnJvbSBgZmllbGRzZXRgIGVsZW1lbnRzIGluIElFLlxuICogMy4gUmVtb3ZlIHRoZSBwYWRkaW5nIHNvIGRldmVsb3BlcnMgYXJlIG5vdCBjYXVnaHQgb3V0IHdoZW4gdGhleSB6ZXJvIG91dFxuICpcdFx0YGZpZWxkc2V0YCBlbGVtZW50cyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxubGVnZW5kIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDA7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cbiAqL1xuXG5wcm9ncmVzcyB7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFIDEwKy5cbiAqL1xuXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG4vKipcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLlxuICogMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLlxuICovXG5cblt0eXBlPVwiY2hlY2tib3hcIl0sXG5bdHlwZT1cInJhZGlvXCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgcGFkZGluZzogMDtcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG4gKi9cblxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBvZGQgYXBwZWFyYW5jZSBpbiBDaHJvbWUgYW5kIFNhZmFyaS5cbiAqIDIuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxuICovXG5cblt0eXBlPVwic2VhcmNoXCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7XG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4O1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cbiAqL1xuXG5bdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLyogSW50ZXJhY3RpdmVcblx0ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBFZGdlLCBJRSAxMCssIGFuZCBGaXJlZm94LlxuICovXG5cbmRldGFpbHMge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLypcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogbGlzdC1pdGVtO1xufVxuXG4vKiBNaXNjXG5cdCA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwKy5cbiAqL1xuXG50ZW1wbGF0ZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTAuXG4gKi9cblxuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKiBzdHlsZWxpbnQtZW5hYmxlIGRlY2xhcmF0aW9uLXByb3BlcnR5LXVuaXQtYWxsb3dlZC1saXN0ICovXG4iLCIvKiEgbm9ybWFsaXplLmNzcyB2OC4wLjEgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzICovXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1wcm9wZXJ0eS11bml0LWFsbG93ZWQtbGlzdCwgYTExeS9saW5lLWhlaWdodC1pcy12ZXJ0aWNhbC1yaHl0aG1lZCwgYTExeS9uby1kaXNwbGF5LW5vbmUgKi9cbi8qIERvY3VtZW50XG5cdCA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluIGlPUy5cbiAqL1xuaHRtbCB7XG4gIGxpbmUtaGVpZ2h0OiAxLjE1OyB9XG5cbi8qIFNlY3Rpb25zXG5cdCA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbmJvZHkge1xuICBtYXJnaW46IDA7IH1cblxuLyoqXG4gKiBSZW5kZXIgdGhlIGBtYWluYCBlbGVtZW50IGNvbnNpc3RlbnRseSBpbiBJRS5cbiAqL1xubWFpbiB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgZm9udCBzaXplIGFuZCBtYXJnaW4gb24gYGgxYCBlbGVtZW50cyB3aXRoaW4gYHNlY3Rpb25gIGFuZFxuICogYGFydGljbGVgIGNvbnRleHRzIGluIENocm9tZSwgRmlyZWZveCwgYW5kIFNhZmFyaS5cbiAqL1xuaDEge1xuICBmb250LXNpemU6IDJlbTtcbiAgbWFyZ2luOiAuNjdlbSAwOyB9XG5cbi8qIEdyb3VwaW5nIGNvbnRlbnRcblx0ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIEZpcmVmb3guXG4gKiAyLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS5cbiAqL1xuaHIge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgaGVpZ2h0OiAwO1xuICBvdmVyZmxvdzogdmlzaWJsZTsgfVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbnByZSB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2U7XG4gIGZvbnQtc2l6ZTogMWVtOyB9XG5cbi8qIFRleHQtbGV2ZWwgc2VtYW50aWNzXG5cdCA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBvbiBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG4gKi9cbmEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG4vKipcbiAqIDEuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBDaHJvbWUgNTctXG4gKiAyLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgSUUsIE9wZXJhLCBhbmQgU2FmYXJpLlxuICovXG5hYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDsgfVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbmNvZGUsXG5rYmQsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZTtcbiAgZm9udC1zaXplOiAxZW07IH1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqL1xuc21hbGwge1xuICBmb250LXNpemU6IDgwJTsgfVxuXG4vKiBFbWJlZGRlZCBjb250ZW50XG5cdCA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBSZW1vdmUgdGhlIGJvcmRlciBvbiBpbWFnZXMgaW5zaWRlIGxpbmtzIGluIElFIDEwLlxuICovXG5pbWcge1xuICBib3JkZXItc3R5bGU6IG5vbmU7IH1cblxuLyogRm9ybXNcblx0ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIDEuIENoYW5nZSB0aGUgZm9udCBzdHlsZXMgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpLlxuICovXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiAxMDAlO1xuICBsaW5lLWhlaWdodDogMS4xNTtcbiAgbWFyZ2luOiAwOyB9XG5cbi8qKlxuICogU2hvdyB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gKiAxLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlLlxuICovXG5idXR0b24sXG5pbnB1dCB7XG4gIG92ZXJmbG93OiB2aXNpYmxlOyB9XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBFZGdlLCBGaXJlZm94LCBhbmQgSUUuXG4gKiAxLiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3guXG4gKi9cbmJ1dHRvbixcbnNlbGVjdCB7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lOyB9XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAqL1xuYnV0dG9uLFxuW3R5cGU9XCJidXR0b25cIl0sXG5bdHlwZT1cInJlc2V0XCJdLFxuW3R5cGU9XCJzdWJtaXRcIl0ge1xuICBhcHBlYXJhbmNlOiBidXR0b247IH1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBpbiBGaXJlZm94LlxuICovXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cImJ1dHRvblwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwicmVzZXRcIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInN1Ym1pdFwiXTo6LW1vei1mb2N1cy1pbm5lciB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMDsgfVxuXG4vKipcbiAqIFJlc3RvcmUgdGhlIGZvY3VzIHN0eWxlcyB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZS5cbiAqL1xuYnV0dG9uOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJidXR0b25cIl06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cInJlc2V0XCJdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJzdWJtaXRcIl06LW1vei1mb2N1c3Jpbmcge1xuICBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7IH1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBwYWRkaW5nIGluIEZpcmVmb3guXG4gKi9cbmZpZWxkc2V0IHtcbiAgcGFkZGluZzogLjM1ZW0gLjc1ZW0gLjYyNWVtOyB9XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cbiAqIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cbiAqIDMuIFJlbW92ZSB0aGUgcGFkZGluZyBzbyBkZXZlbG9wZXJzIGFyZSBub3QgY2F1Z2h0IG91dCB3aGVuIHRoZXkgemVybyBvdXRcbiAqXHRcdGBmaWVsZHNldGAgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5sZWdlbmQge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBjb2xvcjogaW5oZXJpdDtcbiAgZGlzcGxheTogdGFibGU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMDtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDsgfVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4gKi9cbnByb2dyZXNzIHtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyB9XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRSAxMCsuXG4gKi9cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87IH1cblxuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC5cbiAqIDIuIFJlbW92ZSB0aGUgcGFkZGluZyBpbiBJRSAxMC5cbiAqL1xuW3R5cGU9XCJjaGVja2JveFwiXSxcblt0eXBlPVwicmFkaW9cIl0ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBwYWRkaW5nOiAwOyB9XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgY3Vyc29yIHN0eWxlIG9mIGluY3JlbWVudCBhbmQgZGVjcmVtZW50IGJ1dHRvbnMgaW4gQ2hyb21lLlxuICovXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvOyB9XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgb2RkIGFwcGVhcmFuY2UgaW4gQ2hyb21lIGFuZCBTYWZhcmkuXG4gKiAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cbiAqL1xuW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7IH1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG4gKi9cblt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyB9XG5cbi8qIEludGVyYWN0aXZlXG5cdCA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIEVkZ2UsIElFIDEwKywgYW5kIEZpcmVmb3guXG4gKi9cbmRldGFpbHMge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4vKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogbGlzdC1pdGVtOyB9XG5cbi8qIE1pc2Ncblx0ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwKy5cbiAqL1xudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTAuXG4gKi9cbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4vKiBzdHlsZWxpbnQtZW5hYmxlIGRlY2xhcmF0aW9uLXByb3BlcnR5LXVuaXQtYWxsb3dlZC1saXN0ICovXG4vKipcbiAqIENvbnZlcnQgaGV4IGNvbG9yIHRvIFJHQiBjb2xvciBmb3JtYXRcbiAqL1xuLyogc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tcHJvcGVydHktdW5pdC1hbGxvd2VkLWxpc3QgKi9cbi8qIHN0eWxlbGludC1lbmFibGUgZGVjbGFyYXRpb24tcHJvcGVydHktdW5pdC1hbGxvd2VkLWxpc3QgKi9cbjpyb290IHtcbiAgLS1jb2xvci1ibGFjazogIzIyMjtcbiAgLS1jb2xvci1ibGFjay1yb2NrOiAjMmIzMDNjO1xuICAtLWNvbG9yLWJsdWUtY2hhbGs6ICNlY2U2ZjI7XG4gIC0tY29sb3ItZWFzdC1iYXk6ICM1NDU3NzM7XG4gIC0tY29sb3ItcGF0dGVucy1ibHVlOiAjZWFmMWY4O1xuICAtLWNvbG9yLXNjaWVuY2UtYmx1ZTogIzAwNDlkMTtcbiAgLS1jb2xvci1zY3JvcGlvbjogIzVmNWY1ZjtcbiAgLS1jb2xvci12YWxoYWxsYTogIzJhMmQzZTtcbiAgLS1jb2xvci13aGl0ZTogI2ZmZjtcbiAgLS1jb2xvci1oZWFkaW5nOiB2YXIoLS1jb2xvci1tYWluKTtcbiAgLS1jb2xvci1tYWluOiB2YXIoLS1jb2xvci12YWxoYWxsYSk7XG4gIC0tY29sb3ItcGFyYWdyYXBoOiB2YXIoLS1jb2xvci1lYXN0LWJheSk7XG4gIC0tY29sb3ItbGluay1ib3JkZXItYm90dG9tOiB2YXIoLS1jb2xvci1zY2llbmNlLWJsdWUpO1xuICAtLWNvbG9yLWxpbmstYm9yZGVyLWZvY3VzOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gIC0tY29sb3ItbGluay1jb21tZW50OiB2YXIoLS1jb2xvci1zY3JvcGlvbik7XG4gIC0tY29sb3ItbGluay1jb21tZW50LXRpbWUtYW5jaG9yOiB2YXIoLS1jb2xvci1lYXN0LWJheSk7XG4gIC0tY29sb3ItbGluay1lZGl0LWJhY2tncm91bmQtaG92ZXI6IHZhcigtLWNvbG9yLXBhdHRlbnMtYmx1ZSk7XG4gIC0tY29sb3ItbGluay1lZGl0LWJvcmRlcjogdmFyKC0tY29sb3ItcGF0dGVucy1ibHVlKTtcbiAgLS1jb2xvci1saW5rLWVkaXQtdGV4dDogZGFya2VuKCNlYWYxZjgsIDIwJSk7XG4gIC0tY29sb3ItbGluay1lZGl0LXRleHQtaG92ZXI6IHZhcigtLWNvbG9yLWVhc3QtYmF5KTtcbiAgLS1jb2xvci1saW5rLXRleHQ6IHZhcigtLWNvbG9yLXNjaWVuY2UtYmx1ZSk7XG4gIC0tY29sb3ItbGluay10ZXh0LWZvY3VzOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gIC0tY29sb3ItbGluay10ZXh0LWhvdmVyOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIC0tY29sb3ItbGluay1iYWNrZ3JvdW5kLWhvdmVyOiB2YXIoLS1jb2xvci1saW5rLXRleHQpO1xuICAtLWNvbG9yLWJhY2tncm91bmQtY29kZS1ibG9jazogdmFyKC0tY29sb3ItYmxhY2stcm9jayk7XG4gIC0tY29sb3ItYmFja2dyb3VuZC1jb2RlLWlubGluZTogI2Y5ZjJmNDtcbiAgLS1jb2xvci1iYWNrZ3JvdW5kLWRlZmF1bHQ6ICNmMGYwZjA7XG4gIC0tY29sb3ItYmFja2dyb3VuZC1zaGFkZTogIzAzMDYxYjtcbiAgLS1jb2xvci1iYWNrZ3JvdW5kLXRhYmxlLWNlbGwtb2RkOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIC0tY29sb3ItYmFja2dyb3VuZC10YWJsZS1jZWxsLWV2ZW46ICNmM2YzZjM7XG4gIC0tY29sb3ItYmFja2dyb3VuZC10YWc6IHZhcigtLWNvbG9yLXBhdHRlbnMtYmx1ZSk7XG4gIC0tY29sb3ItYmxvY2txdW90ZTogdmFyKC0tY29sb3Itc2NpZW5jZS1ibHVlKTtcbiAgLS1jb2xvci1jb21tZW50LXRleHQ6IHZhcigtLWNvbG9yLWVhc3QtYmF5KTtcbiAgLS1jb2xvci1jb21tZW50LWF1dGhvci10ZXh0OiB2YXIoLS1jb2xvci1lYXN0LWJheSk7XG4gIC0tY29sb3ItdGFnLWJvcmRlcjogcmdiYSg2LCAyMiwgNDEsIC4xKTtcbiAgLS1jb2xvci10YWctYm9yZGVyLWhvdmVyOiByZ2JhKDYsIDIyLCA0MSwgLjQpO1xuICAtLWNvbG9yLXRhZy10ZXh0OiB2YXIoLS1jb2xvci1ibGFjayk7XG4gIC0tY29sb3ItY2F0ZWdvcnktYm9yZGVyOiAjY2RjZmQ0O1xuICAtLWNvbG9yLWNhdGVnb3J5LXRleHQ6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgLS1jb2xvci1jYXB0aW9uOiAjNWM1YzZhO1xuICAtLWNvbG9yLWNvZGUtYmxvY2s6ICNjNzI1NGU7XG4gIC0tY29sb3ItY29kZS10ZXh0OiAjZjVmNWY1O1xuICAtLWNvbG9yLWVycm9yOiAjZTFiM2IyO1xuICAtLWNvbG9yLWtiZC1ib3JkZXI6ICNjY2M7XG4gIC0tY29sb3Ita2JkLWJhY2tncm91bmQ6IHZhcigtLWNvbG9yLXBhdHRlbnMtYmx1ZSk7XG4gIC0tY29sb3Itb3V0bGluZS1vdmVybGF5LWl0ZW1zOiAjZmY4NDhhO1xuICAtLWNvbG9yLXBhZ2luYXRpb24tdGV4dDogdmFyKC0tY29sb3ItdmFsaGFsbGEpO1xuICAtLWNvbG9yLXBhZ2luYXRpb24tYmFja2dyb3VuZC1ob3ZlcjogdmFyKC0tY29sb3ItdmFsaGFsbGEpO1xuICAtLWNvbG9yLXBhZ2luYXRpb24tYm9yZGVyLWhvdmVyOiB2YXIoLS1jb2xvci12YWxoYWxsYSk7XG4gIC0tY29sb3ItcGFnaW5hdGlvbi10ZXh0LWhvdmVyOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIC0tY29sb3ItcGFnaW5hdGlvbi1iYWNrZ3JvdW5kLWN1cnJlbnQ6IHZhcigtLWNvbG9yLXZhbGhhbGxhKTtcbiAgLS1jb2xvci1wYWdpbmF0aW9uLWJvcmRlci1jdXJyZW50OiB2YXIoLS1jb2xvci12YWxoYWxsYSk7XG4gIC0tY29sb3ItcGFnaW5hdGlvbi10ZXh0LWN1cnJlbnQ6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgLS1jb2xvci1zdWNjZXNzOiAjOGVkMTg1O1xuICAtLWNvbG9yLXRvcC1hcnJvdy1kYXJrOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gIC0tY29sb3ItdG9wLWFycm93LWxpZ2h0OiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIC0tY29sb3Itd2FybmluZzogI2Y0YWE3MTsgfVxuXG46cm9vdCB7XG4gIC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbDogMnJlbTtcbiAgLS1wYWRkaW5nLWNvbnRhaW5lci12ZXJ0aWNhbDogNi40cmVtO1xuICAtLXBhZGRpbmctc2l0ZS1oZWFkZXItdmVydGljYWw6IDJyZW07XG4gIC0tcGFkZGluZy1ibG9jazogOHJlbTtcbiAgLS1tYXJnaW4tYmV0d2Vlbi10ZXh0LWVsZW1lbnRzOiA0cmVtO1xuICAtLW1hcmdpbi13cC1ibG9jay1pbWFnZTogNHJlbTtcbiAgLS1tYXJnaW4tYmV0d2Vlbi1wYXJhZ3JhcGhzOiAyLjdyZW07IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEzNTBweCkge1xuICAgIDpyb290IHtcbiAgICAgIC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbDogMnJlbTsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5NjBweCkge1xuICAgIDpyb290IHtcbiAgICAgIC0tcGFkZGluZy1zaXRlLWhlYWRlci12ZXJ0aWNhbDogMnJlbTsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NzBweCkge1xuICAgIDpyb290IHtcbiAgICAgIC0tcGFkZGluZy1jb250YWluZXItdmVydGljYWw6IDVyZW07IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNjAwcHgpIHtcbiAgICA6cm9vdCB7XG4gICAgICAtLXBhZGRpbmctYmxvY2s6IDZyZW07IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgICA6cm9vdCB7XG4gICAgICAtLXBhZGRpbmctY29udGFpbmVyLXZlcnRpY2FsOiA0cmVtOyB9IH1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZGlzcGxheTogYXV0bztcbiAgZm9udC1mYW1pbHk6IFwiSW50ZXJcIjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNDAwO1xuICBzcmM6IHVybChcIi4uLy4uL2ZvbnRzL0ludGVyLVJlZ3VsYXIud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCIuLi8uLi9mb250cy9JbnRlci1SZWd1bGFyLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi8uLi9mb250cy9JbnRlci1SZWd1bGFyLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTsgfVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1kaXNwbGF5OiBhdXRvO1xuICBmb250LWZhbWlseTogXCJJbnRlclwiO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHNyYzogdXJsKFwiLi4vLi4vZm9udHMvSW50ZXItSXRhbGljLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiLi4vLi4vZm9udHMvSW50ZXItSXRhbGljLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi8uLi9mb250cy9JbnRlci1JdGFsaWMudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpOyB9XG5cbkBmb250LWZhY2Uge1xuICBmb250LWRpc3BsYXk6IGF1dG87XG4gIGZvbnQtZmFtaWx5OiBcIkludGVyXCI7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgc3JjOiB1cmwoXCIuLi8uLi9mb250cy9JbnRlci1Cb2xkLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiLi4vLi4vZm9udHMvSW50ZXItQm9sZC53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiLi4vLi4vZm9udHMvSW50ZXItQm9sZC50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIik7IH1cblxuOnJvb3Qge1xuICAtLWZvbnQtc2VyaWY6IHNhbnMtc2VyaWY7XG4gIC0tZm9udC1zYW5zOiAnSW50ZXInLCAtYXBwbGUtc3lzdGVtLCAnQmxpbmtNYWNTeXN0ZW1Gb250JywgJ1NlZ29lIFVJJywgJ1JvYm90bycsICdPeHlnZW4tU2FucycsICdVYnVudHUnLCAnQ2FudGFyZWxsJywgJ0hlbHZldGljYSBOZXVlJywgc2Fucy1zZXJpZjtcbiAgLS1mb250LW1vbm9zcGFjZTogJ0luY29uc29sYXRhJywgJ01lbmxvJywgJ01vbmFjbycsICdDb25zb2xhcycsICdBbmRhbGUgTW9ubycsICdCaXRzdHJlYW0gVmVyYSBTYW5zIE1vbm8nLCAnQ291cmllciBOZXcnLCBtb25vc3BhY2U7XG4gIC0tZm9udC1wYXJhZ3JhcGg6IHZhcigtLWZvbnQtc2Fucyk7XG4gIC0tZm9udC1oZWFkaW5nOiB2YXIoLS1mb250LXNhbnMpOyB9XG5cbjpyb290IHtcbiAgLS1mb250LXNpemUtaGVybzogNTJweDtcbiAgLS1mb250LXNpemUtaDE6IDQwcHg7XG4gIC0tZm9udC1zaXplLWgyOiAzMHB4O1xuICAtLWZvbnQtc2l6ZS1oMzogMjRweDtcbiAgLS1mb250LXNpemUtaDQ6IDIwcHg7XG4gIC0tZm9udC1zaXplLWg1OiAxNnB4O1xuICAtLWZvbnQtc2l6ZS1oNjogMTRweDtcbiAgLS1mb250LXNpemUtMTQ6IDE0cHg7XG4gIC0tZm9udC1zaXplLTE1OiAxNXB4O1xuICAtLWZvbnQtc2l6ZS0xNjogMTZweDtcbiAgLS1mb250LXNpemUtMTc6IDE3cHg7XG4gIC0tZm9udC1zaXplLTE4OiAxOHB4O1xuICAtLWZvbnQtc2l6ZS0yMDogMjBweDtcbiAgLS1mb250LXNpemUtMjI6IDIycHg7XG4gIC0tZm9udC1zaXplLWRlZmF1bHQ6IHZhcigtLWZvbnQtc2l6ZS0xNyk7XG4gIC0tZm9udC1zaXplLXBhcmFncmFwaHM6IHZhcigtLWZvbnQtc2l6ZS0xOCk7XG4gIC0tZm9udC1zaXplLW5hdi10b2dnbGUtbGFiZWw6IDE1cHg7XG4gIC0tZm9udC1zaXplLWNhcHRpb25zOiAxNXB4O1xuICAtLWxpbmUtaGVpZ2h0LWhlYWRpbmdzOiAxLjU7XG4gIC0tbGluZS1oZWlnaHQtY29yZS1oZWFkaW5nOiAxLjIzO1xuICAtLWxpbmUtaGVpZ2h0LXBhcmFncmFwaHM6IDEuNztcbiAgLS1saW5lLWhlaWdodC1wYXJhZ3JhcGhzLWJsb2c6IDEuNzc7XG4gIC0tZm9udC13ZWlnaHQtcmVndWxhcjogNDAwO1xuICAtLWZvbnQtd2VpZ2h0LW1lZGl1bTogNTAwO1xuICAtLWZvbnQtd2VpZ2h0LXNlbWlib2xkOiA2MDA7XG4gIC0tZm9udC13ZWlnaHQtYm9sZDogNzAwO1xuICAtLWZvbnQtd2VpZ2h0LXBhcmFncmFwaHM6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICAtLWZvbnQtd2VpZ2h0LWhlYWRpbmdzOiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgICA6cm9vdCB7XG4gICAgICAtLWZvbnQtc2l6ZS1oZXJvOiAzOHB4O1xuICAgICAgLS1mb250LXNpemUtaDE6IDMycHg7XG4gICAgICAtLWZvbnQtc2l6ZS1oMjogMjRweDtcbiAgICAgIC0tZm9udC1zaXplLWgzOiAyMXB4O1xuICAgICAgLS1mb250LXNpemUtaDQ6IDE4cHg7XG4gICAgICAtLWZvbnQtc2l6ZS1oNTogMTRweDtcbiAgICAgIC0tZm9udC1zaXplLWg2OiAxMnB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQyMHB4KSB7XG4gICAgOnJvb3Qge1xuICAgICAgLS1mb250LXNpemUtMTY6IDE0cHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgICA6cm9vdCB7XG4gICAgICAtLWZvbnQtc2l6ZS1wYXJhZ3JhcGhzOiAxNnB4O1xuICAgICAgLS1mb250LXNpemUtZGVmYXVsdDogMTZweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0MjBweCkge1xuICAgIDpyb290IHtcbiAgICAgIC0tZm9udC1zaXplLW5hdi10b2dnbGUtbGFiZWw6IDEzcHg7IH0gfVxuXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBudW1iZXItbWF4LXByZWNpc2lvbiAqL1xuLyogc3R5bGVsaW50LWRpc2FibGUgbnVtYmVyLW1heC1wcmVjaXNpb24gKi9cbi8qIHN0eWxlbGludC1kaXNhYmxlIG51bWJlci1tYXgtcHJlY2lzaW9uICovXG4uaGVhZGluZy1oZXJvIHtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaGVybyk7IH1cblxuLnNjcmVlbi1yZWFkZXItdGV4dCwgLmdmb3JtX2JvZHkgLmdmb3JtX3ZhbGlkYXRpb25fY29udGFpbmVyIHtcbiAgYm9yZGVyOiAwO1xuICBjbGlwOiByZWN0KDFweCwgMXB4LCAxcHgsIDFweCk7XG4gIGNsaXAtcGF0aDogaW5zZXQoNTAlKTtcbiAgaGVpZ2h0OiAxcHg7XG4gIG1hcmdpbjogLTFweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZzogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xuICAvKiBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnQgKi9cbiAgd29yZC13cmFwOiBub3JtYWwgIWltcG9ydGFudDtcbiAgLyogc3R5bGVsaW50LWVuYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnQgKi8gfVxuICAuc2NyZWVuLXJlYWRlci10ZXh0LnNraXAtbGluaywgLmdmb3JtX2JvZHkgLnNraXAtbGluay5nZm9ybV92YWxpZGF0aW9uX2NvbnRhaW5lciB7XG4gICAgbWFyZ2luOiA1cHg7IH1cbiAgICAuc2NyZWVuLXJlYWRlci10ZXh0LnNraXAtbGluazpmb2N1cywgLmdmb3JtX2JvZHkgLnNraXAtbGluay5nZm9ybV92YWxpZGF0aW9uX2NvbnRhaW5lcjpmb2N1cyB7XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItYmxhY2spOyB9XG4gIC5zY3JlZW4tcmVhZGVyLXRleHQ6Zm9jdXMsIC5nZm9ybV9ib2R5IC5nZm9ybV92YWxpZGF0aW9uX2NvbnRhaW5lcjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgYm94LXNoYWRvdzogMCAwIDJweCAycHggcmdiYSgyMiwgMjIsIDIyLCAwLjYpO1xuICAgIGNsaXA6IGF1dG87XG4gICAgY2xpcC1wYXRoOiBub25lO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogMS43cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbGVmdDogNXB4O1xuICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgcGFkZGluZzogMTVweCAyM3B4IDE0cHg7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIHRvcDogNXB4O1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIHotaW5kZXg6IDEwMDAwMDsgfVxuXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBhMTF5L25vLW91dGxpbmUtbm9uZSAqL1xuW2RhdGEtd2hhdGlucHV0PVwibW91c2VcIl0gKjpmb2N1cyxcbltkYXRhLXdoYXRpbnB1dD1cInRvdWNoXCJdICo6Zm9jdXMge1xuICBvdXRsaW5lOiBub25lOyB9XG5cbi8qIHN0eWxlbGludC1lbmFibGUgYTExeS9uby1vdXRsaW5lLW5vbmUgKi9cbltkYXRhLXdoYXRpbnB1dD1cImtleWJvYXJkXCJdIGE6Zm9jdXMsXG5bZGF0YS13aGF0aW5wdXQ9XCJrZXlib2FyZFwiXSBpbnB1dDpmb2N1cyxcbltkYXRhLXdoYXRpbnB1dD1cImtleWJvYXJkXCJdIGJ1dHRvbjpmb2N1cyxcbltkYXRhLXdoYXRpbnB1dD1cImtleWJvYXJkXCJdIHNlbGVjdDpmb2N1cyxcbltkYXRhLXdoYXRpbnB1dD1cImtleWJvYXJkXCJdIHRleHRhcmVhOmZvY3VzLFxuW2RhdGEtd2hhdGlucHV0PVwia2V5Ym9hcmRcIl0gZGl2W3RhYmluZGV4XTpmb2N1cyB7XG4gIG9wYWNpdHk6IDE7IH1cblxuW2RhdGEtd2hhdGlucHV0PVwia2V5Ym9hcmRcIl0gLmdsb2JhbC1saW5rIHtcbiAgdHJhbnNpdGlvbjogbm9uZTsgfVxuXG5bZGF0YS13aGF0aW5wdXQ9XCJrZXlib2FyZFwiXSBhLmdsb2JhbC1saW5rOmZvY3VzIHtcbiAgb3V0bGluZS1jb2xvcjogdmFyKC0tY29sb3Itb3V0bGluZS1vdmVybGF5LWl0ZW1zKTtcbiAgb3V0bGluZS1vZmZzZXQ6IC0xcHg7XG4gIG91dGxpbmUtc3R5bGU6IHNvbGlkO1xuICBvdXRsaW5lLXdpZHRoOiA0cHg7IH1cblxuYS5pcy1leHRlcm5hbC1saW5rIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfVxuICBhLmlzLWV4dGVybmFsLWxpbms6OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi8uLi9zdmcvZXh0ZXJuYWwtbGluay5zdmdcIik7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgY2VudGVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxNHB4IDE0cHg7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAycHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogMDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjE4cyBlYXNlLWluLW91dDtcbiAgICB3aWR0aDogMTRweDsgfVxuXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBhMTF5L25vLWRpc3BsYXktbm9uZSAqL1xuYS5pcy1leHRlcm5hbC1saW5rLmdsb2JhbC1saW5rOjphZnRlcixcbmEuaXMtZXh0ZXJuYWwtbGluay5uby1leHRlcm5hbC1saW5rLWluZGljYXRvcjo6YWZ0ZXIge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi8qIHN0eWxlbGludC1lbmFibGUgYTExeS9uby1kaXNwbGF5LW5vbmUgKi9cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogbm8tcHJlZmVyZW5jZSkge1xuICA6Zm9jdXMsXG4gICo6Zm9jdXMsXG4gIFtkYXRhLXdoYXRpbnB1dD1cImtleWJvYXJkXCJdIDpmb2N1cyxcbiAgW2RhdGEtd2hhdGlucHV0PVwia2V5Ym9hcmRcIl0gYTpmb2N1cyB7XG4gICAgb3V0bGluZS1vZmZzZXQ6IDVweDtcbiAgICB0cmFuc2l0aW9uOiBvdXRsaW5lLW9mZnNldCAuMjVzIGVhc2U7IH0gfVxuXG46cm9vdCB7XG4gIC0tYm9yZGVyLXJhZGl1cy1zdWItbWVudTogMDtcbiAgLS1ib3gtc2hhZG93LW5hdmlnYXRpb24tc3RhdGljOiAwIDAgMTBweCByZ2JhKDg0LCA4NywgMTE1LCAuMSk7XG4gIC0tZHJvcGRvd24tdG9nZ2xlLXNpemU6IDEycHg7XG4gIC0tZ2FwLWRyb3Bkb3duOiAxcmVtO1xuICAtLWdhcC1iZXR3ZWVuLWRyb3Bkb3duLXRvZ2dsZTogMS41cmVtO1xuICAtLXBhZGRpbmctbWFpbi1sZXZlbC12ZXJ0aWNhbDogLjZyZW07XG4gIC0tcGFkZGluZy1tYWluLWxldmVsLWhvcml6b250YWw6IDJyZW07XG4gIC0tcGFkZGluZy1zdWItbWVudS12ZXJ0aWNhbDogLjZyZW07XG4gIC0tcGFkZGluZy1zdWItbWVudS1ob3Jpem9udGFsOiAxLjVyZW07XG4gIC0td2lkdGgtc3ViLW1lbnU6IDIycmVtO1xuICAtLWNvbG9yLWJhY2tncm91bmQtbmF2LWRlc2t0b3A6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgLS1jb2xvci1iYWNrZ3JvdW5kLXN1Yi1tZW51OiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIC0tY29sb3ItYm9yZGVyLXN1Yi1tZW51OiByZ2JhKDQxLCA0NCwgNjEsIC4wNSk7XG4gIC0tY29sb3ItZHJvcGRvd24tdG9nZ2xlOiB2YXIoLS1jb2xvci12YWxoYWxsYSk7XG4gIC0tY29sb3Itc3ViLW1lbnU6IHZhcigtLWNvbG9yLXZhbGhhbGxhKTtcbiAgLS1jb2xvci1ob3Zlci1tYWluLWxldmVsOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIC0tY29sb3ItaG92ZXItc3ViLW1lbnU6IHZhcigtLWNvbG9yLXZhbGhhbGxhKTtcbiAgLS1jb2xvci1tYWluLWxldmVsOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIC0tY29sb3ItY3VycmVudDogdmFyKC0tY29sb3ItbWFpbik7XG4gIC0tZm9udC1zaXplLW1haW4tbGV2ZWw6IDE3cHg7XG4gIC0tZm9udC1zaXplLXN1Yi1tZW51OiAxNnB4O1xuICAtLWZvbnQtd2VpZ2h0LW1haW4tbGV2ZWw6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xuICAtLWZvbnQtd2VpZ2h0LXN1Yi1tZW51OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTsgfVxuXG4uc2l0ZS1oZWFkZXIgdWwge1xuICBsaXN0LXN0eWxlOiBub25lOyB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTYwcHgpIHtcbiAgLm5hdi1jb250YWluZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTYwcHgpIGFuZCAobWF4LXdpZHRoOiA5NjBweCkge1xuICB1bCBsaTpmb2N1cyA+IHVsLFxuICB1bCBsaTpob3ZlciA+IHVsIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTYwcHgpIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSksIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5NjBweCkgYW5kICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSkge1xuICB1bCBsaTpmb2N1cyA+IHVsLFxuICB1bCBsaTpob3ZlciA+IHVsIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTYwcHgpIHtcbiAgLyogc3R5bGVsaW50LWRpc2FibGUgYTExeS9uby1kaXNwbGF5LW5vbmUgKi9cbiAgLm5hdi10b2dnbGUge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLyogc3R5bGVsaW50LWVuYWJsZSAqL1xuICAubmF2LXByaW1hcnkge1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIHBhZGRpbmctdG9wOiAwOyB9XG4gIC5tZW51LWl0ZW1zIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5tZW51LWl0ZW0ge1xuICAgIG1hcmdpbjogMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLm1lbnUtaXRlbSA+IGEge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLW1haW4tbGV2ZWwpO1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLW1haW4tbGV2ZWwpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1tYWluLWxldmVsKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tcGFkZGluZy1tYWluLWxldmVsLXZlcnRpY2FsKTtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXBhZGRpbmctbWFpbi1sZXZlbC1ob3Jpem9udGFsKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1wYWRkaW5nLW1haW4tbGV2ZWwtaG9yaXpvbnRhbCk7XG4gICAgcGFkZGluZy10b3A6IHZhcigtLXBhZGRpbmctbWFpbi1sZXZlbC12ZXJ0aWNhbCk7IH1cbiAgLm1lbnUtaXRlbSAuc3ViLW1lbnUgYSB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBjb2xvcjogdmFyKC0tY29sb3Itc3ViLW1lbnUpO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtc3ViLW1lbnUpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1zdWItbWVudSk7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tcGFkZGluZy1zdWItbWVudS12ZXJ0aWNhbCk7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1wYWRkaW5nLXN1Yi1tZW51LWhvcml6b250YWwpO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXBhZGRpbmctc3ViLW1lbnUtaG9yaXpvbnRhbCk7XG4gICAgcGFkZGluZy10b3A6IHZhcigtLXBhZGRpbmctc3ViLW1lbnUtdmVydGljYWwpOyB9XG4gIC5tZW51LWl0ZW0uY3VycmVudC1tZW51LXBhcmVudCA+IGEsXG4gIC5tZW51LWl0ZW0uY3VycmVudC1tZW51LWl0ZW0gPiBhIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItY3VycmVudCk7IH1cbiAgLm1lbnUtaXRlbS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuIGEge1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLWdhcC1iZXR3ZWVuLWRyb3Bkb3duLXRvZ2dsZSk7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgdHJhbnNpdGlvbjogcGFkZGluZyAwLjJzIGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKSwgYmFja2dyb3VuZC1jb2xvciAwLjJzIGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKTsgfVxuICAubWVudS1pdGVtID4gYTpob3ZlcixcbiAgLm1lbnUtaXRlbSA+IGE6Zm9jdXMge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1ob3Zlci1tYWluLWxldmVsKTsgfVxuICAubWVudS1pdGVtIC5zdWItbWVudSBhOmhvdmVyLFxuICAubWVudS1pdGVtIC5zdWItbWVudSBhOmZvY3VzIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItaG92ZXItc3ViLW1lbnUpOyB9XG4gIC8qIHN0eWxlbGludC1kaXNhYmxlIG5vLWRlc2NlbmRpbmctc3BlY2lmaWNpdHkgKi9cbiAgLnN1Yi1tZW51LnRvZ2dsZWQtb24gYSxcbiAgLnN1Yi1tZW51LnRvZ2dsZWQtb24gLnN1Yi1tZW51IGEsXG4gIC5tZW51LWl0ZW0ubWVudS1pdGVtLWhhcy1jaGlsZHJlbjpob3ZlciAuc3ViLW1lbnUgYSxcbiAgLm1lbnUtaXRlbS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuOmZvY3VzIC5zdWItbWVudSBhIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tcGFkZGluZy1zdWItbWVudS12ZXJ0aWNhbCk7XG4gICAgcGFkZGluZy10b3A6IHZhcigtLXBhZGRpbmctc3ViLW1lbnUtdmVydGljYWwpOyB9XG4gIC8qIHN0eWxlbGludC1lbmFibGUgKi9cbiAgLm5hdi1wcmltYXJ5ID4gdWw6Zmlyc3Qtb2YtdHlwZSA+IC5tZW51LWl0ZW0taGFzLWNoaWxkcmVuOmZvY3VzOjpiZWZvcmUsXG4gIC5uYXYtcHJpbWFyeSA+IHVsOmZpcnN0LW9mLXR5cGUgPiAubWVudS1pdGVtLWhhcy1jaGlsZHJlbjpob3Zlcjo6YmVmb3JlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKTsgfVxuICAuc3ViLW1lbnUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJhY2tncm91bmQtc3ViLW1lbnUpO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ib3JkZXItc3ViLW1lbnUpO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc3ViLW1lbnUpO1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXN1Yi1tZW51KTtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJvcmRlci1zdWItbWVudSk7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgdmFyKC0tY29sb3ItYm9yZGVyLXN1Yi1tZW51KTtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXN1Yi1tZW51KTtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zdWItbWVudSk7XG4gICAgYm94LXNoYWRvdzogMCAyNXB4IDIwcHggLTEwcHggcmdiYSg1LCA0LCAyNSwgMC4wNSk7XG4gICAgbGVmdDogNSU7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXRvcDogdmFyKC0tZ2FwLWRyb3Bkb3duKTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAuNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy10b3A6IC41cmVtO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IC05OTk5cHg7XG4gICAgdHJhbnNpdGlvbjogcGFkZGluZyAwLjJzIGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKTtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgd2lkdGg6IHZhcigtLXdpZHRoLXN1Yi1tZW51KTtcbiAgICB6LWluZGV4OiA5OyB9XG4gICAgLnN1Yi1tZW51IC5zdWItbWVudSB7XG4gICAgICBsZWZ0OiAxMDAlO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBtYXJnaW4tdG9wOiAtNXB4O1xuICAgICAgdG9wOiAwOyB9XG4gICAgLnN1Yi1tZW51IGxpIHtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIHdpZHRoOiB2YXIoLS13aWR0aC1zdWItbWVudSk7IH1cbiAgLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gPiAuc3ViLW1lbnUudG9nZ2xlZC1vbixcbiAgLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW46Zm9jdXMgPiAuc3ViLW1lbnUsXG4gIC5tZW51LWl0ZW0taGFzLWNoaWxkcmVuOmhvdmVyID4gLnN1Yi1tZW51IHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRvcDogMTAwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgei1pbmRleDogMTsgfVxuICAubWVudS1pdGVtLWhhcy1jaGlsZHJlbiAuc3ViLW1lbnUudG9nZ2xlZC1vbiAuc3ViLW1lbnUsXG4gIC5tZW51LWl0ZW0taGFzLWNoaWxkcmVuIC5zdWItbWVudSAuc3ViLW1lbnUudG9nZ2xlZC1vbixcbiAgLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW46Zm9jdXMgLnN1Yi1tZW51IC5zdWItbWVudSxcbiAgLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW46aG92ZXIgLnN1Yi1tZW51IC5zdWItbWVudSB7XG4gICAgbWFyZ2luLXRvcDogLTVweDtcbiAgICB0b3A6IDA7XG4gICAgei1pbmRleDogMTA7IH1cbiAgLm1lbnUtaXRlbS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIG1hcmdpbi1yaWdodDogLjhyZW07XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLm1lbnUtaXRlbS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuOjphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgaGVpZ2h0OiB2YXIoLS1nYXAtZHJvcGRvd24pO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAxMDAlO1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgLmRyb3Bkb3duLXRvZ2dsZSBzdmcge1xuICAgIGhlaWdodDogdmFyKC0tZHJvcGRvd24tdG9nZ2xlLXNpemUpO1xuICAgIHdpZHRoOiB2YXIoLS1kcm9wZG93bi10b2dnbGUtc2l6ZSk7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMzVzIGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKTsgfVxuICAuZHJvcGRvd24tdG9nZ2xlLnRvZ2dsZWQtb24gc3ZnIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZVgoMTgwZGVnKTsgfVxuICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogMDtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItZHJvcGRvd24tdG9nZ2xlKTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAwOyB9XG4gIC5zdWItbWVudSAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICB3aWR0aDogM3JlbTsgfVxuICAuc3ViLW1lbnUgLmRyb3Bkb3duLXRvZ2dsZSBzdmcge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZykgcm90YXRlWCgwZGVnKTsgfVxuICAuc3ViLW1lbnUgLmRyb3Bkb3duLXRvZ2dsZS50b2dnbGVkLW9uIHN2ZyB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKSByb3RhdGVYKDE4MGRlZyk7IH1cbiAgLm1lbnUtaXRlbS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuID4gLmRyb3Bkb3duLXRvZ2dsZS50b2dnbGVkLW9uIHN2ZyxcbiAgLm1lbnUtaXRlbS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuOmhvdmVyID4gLmRyb3Bkb3duLXRvZ2dsZSBzdmcsXG4gIC5tZW51LWl0ZW0ubWVudS1pdGVtLWhhcy1jaGlsZHJlbjpmb2N1cyA+IC5kcm9wZG93bi10b2dnbGUgc3ZnIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpIHJvdGF0ZSgxODBkZWcpOyB9XG4gIC8qIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW1heC1zcGVjaWZpY2l0eSwgc2VsZWN0b3ItbWF4LWNsYXNzICovXG4gIC5tZW51LWl0ZW0ubWVudS1pdGVtLWhhcy1jaGlsZHJlbiAubWVudS1pdGVtLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gPiAuZHJvcGRvd24tdG9nZ2xlLnRvZ2dsZWQtb24gc3ZnLFxuICAubWVudS1pdGVtLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gLm1lbnUtaXRlbS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuOmhvdmVyID4gLmRyb3Bkb3duLXRvZ2dsZSBzdmcsXG4gIC5tZW51LWl0ZW0ubWVudS1pdGVtLWhhcy1jaGlsZHJlbiAubWVudS1pdGVtLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW46Zm9jdXMgPiAuZHJvcGRvd24tdG9nZ2xlIHN2ZyB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAlKSByb3RhdGUoOTBkZWcpOyB9XG4gIC8qIHN0eWxlbGludC1lbmFibGUgKi9cbiAgLyogc3R5bGVsaW50LWRpc2FibGUgYTExeS9uby1kaXNwbGF5LW5vbmUgKi9cbiAgLnN1Yi1tZW51IC5tZW51LWl0ZW0taGFzLWNoaWxkcmVuOjphZnRlciB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAvKiBzdHlsZWxpbnQtZW5hYmxlICovXG4gIC5tZW51LWl0ZW0taGFzLWNoaWxkcmVuOjpiZWZvcmUge1xuICAgIC8qIHN0eWxlbGludC1kaXNhYmxlIHNoLXdhcWFyL2RlY2xhcmF0aW9uLXVzZS12YXJpYWJsZSAqL1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdmFyKC0tY29sb3Itd2hpdGUpO1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXdpZHRoOiAwIDVweCA1cHg7XG4gICAgLyogc3R5bGVsaW50LWVuYWJsZSAqL1xuICAgIGJvdHRvbTogLTEwcHg7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGxlZnQ6IDUwJTtcbiAgICBtYXJnaW4tbGVmdDogLTIwcHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGJvdHRvbTtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHdpZHRoOiAwOyB9IH1cblxuOnJvb3Qge1xuICAtLWZvbnQtc2l6ZS1tYWluLWxldmVsLW1vYmlsZTogMTdweDtcbiAgLS1mb250LXNpemUtc3ViLW1lbnUtbW9iaWxlOiAxN3B4O1xuICAtLWZvbnQtd2VpZ2h0LW1haW4tbGV2ZWwtbW9iaWxlOiA2MDA7XG4gIC0tZm9udC13ZWlnaHQtc3ViLW1lbnUtbW9iaWxlOiA2MDA7XG4gIC0tZHJvcGRvd24tdG9nZ2xlLXNpemUtbW9iaWxlOiAxMnB4O1xuICAtLWhlaWdodC1uYXZpZ2F0aW9uLW1vYmlsZTogNzJweDtcbiAgLS1tYXJnaW4tbGVmdC1zdWItbWVudTogMnJlbTtcbiAgLS1wYWRkaW5nLXN1Yi1tZW51LXZlcnRpY2FsLW1vYmlsZTogMS4ycmVtO1xuICAtLXBhZGRpbmctc3ViLW1lbnUtaG9yaXpvbnRhbC1tb2JpbGU6IDIuNXJlbTtcbiAgLS1jb2xvci1hY3RpdmUtbWFpbi1sZXZlbC1tb2JpbGU6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgLS1jb2xvci1iYWNrZ3JvdW5kLW5hdi1tb2JpbGUtaGVhZGVyOiB2YXIoLS1jb2xvci1tYWluKTtcbiAgLS1jb2xvci1iYWNrZ3JvdW5kLW5hdi1tb2JpbGUtbGF5ZXI6IHZhcigtLWNvbG9yLW1haW4pO1xuICAtLWNvbG9yLWN1cnJlbnQtbW9iaWxlOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIC0tY29sb3ItZHJvcGRvd24tdG9nZ2xlLW1vYmlsZTogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAtLWNvbG9yLWhhbWJ1cmdlci1hY3RpdmU6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgLS1jb2xvci1oYW1idXJnZXI6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgLS1jb2xvci1tYWluLWxldmVsLW1vYmlsZTogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAtLWNvbG9yLXNlcGFyYXRvci1uYXYtbW9iaWxlOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC4xKTtcbiAgLS1jb2xvci1zdWItbWVudS1tb2JpbGU6IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjgpOyB9XG5cbi8qIVxuICogSGFtYnVyZ2Vyc1xuICogQGRlc2NyaXB0aW9uIFRhc3R5IENTUy1hbmltYXRlZCBoYW1idXJnZXJzXG4gKiBAYXV0aG9yIEpvbmF0aGFuIFN1aCBAam9uc3VoXG4gKiBAc2l0ZSBodHRwczovL2pvbnN1aC5jb20vaGFtYnVyZ2Vyc1xuICogQGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL2pvbnN1aC9oYW1idXJnZXJzXG4gKi9cbi5oYW1idXJnZXIge1xuICBwYWRkaW5nOiA0cmVtIDEuNXJlbTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHksIGZpbHRlcjtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4xNXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIGZvbnQ6IGluaGVyaXQ7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbiAgbWFyZ2luOiAwO1xuICBvdmVyZmxvdzogdmlzaWJsZTsgfVxuICAuaGFtYnVyZ2VyOmhvdmVyIHtcbiAgICBvcGFjaXR5OiAwLjg7IH1cbiAgLmhhbWJ1cmdlci5pcy1hY3RpdmU6aG92ZXIge1xuICAgIG9wYWNpdHk6IDAuODsgfVxuICAuaGFtYnVyZ2VyLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyLFxuICAuaGFtYnVyZ2VyLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUsXG4gIC5oYW1idXJnZXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1oYW1idXJnZXIpOyB9XG5cbi5oYW1idXJnZXItYm94IHtcbiAgd2lkdGg6IDNyZW07XG4gIGhlaWdodDogMS42cmVtO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4uaGFtYnVyZ2VyLWlubmVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRvcDogNTAlO1xuICBtYXJnaW4tdG9wOiAtMC4xcmVtOyB9XG4gIC5oYW1idXJnZXItaW5uZXIsIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSwgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgIHdpZHRoOiAzcmVtO1xuICAgIGhlaWdodDogMC4ycmVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWhhbWJ1cmdlcik7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMTVzO1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlOyB9XG4gIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSwgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgICB0b3A6IC0wLjdyZW07IH1cbiAgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgIGJvdHRvbTogLTAuN3JlbTsgfVxuXG4vKlxuICAgKiAzRFhcbiAgICovXG4uaGFtYnVyZ2VyLS0zZHggLmhhbWJ1cmdlci1ib3gge1xuICBwZXJzcGVjdGl2ZTogNnJlbTsgfVxuXG4uaGFtYnVyZ2VyLS0zZHggLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSksIGJhY2tncm91bmQtY29sb3IgMHMgMC4xcyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSk7IH1cbiAgLmhhbWJ1cmdlci0tM2R4IC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSwgLmhhbWJ1cmdlci0tM2R4IC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMHMgMC4xcyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSk7IH1cblxuLmhhbWJ1cmdlci0tM2R4LmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgdHJhbnNmb3JtOiByb3RhdGVZKDE4MGRlZyk7IH1cbiAgLmhhbWJ1cmdlci0tM2R4LmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMC43cmVtLCAwKSByb3RhdGUoNDVkZWcpOyB9XG4gIC5oYW1idXJnZXItLTNkeC5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTAuN3JlbSwgMCkgcm90YXRlKC00NWRlZyk7IH1cblxuLypcbiAgICogM0RYIFJldmVyc2VcbiAgICovXG4uaGFtYnVyZ2VyLS0zZHgtciAuaGFtYnVyZ2VyLWJveCB7XG4gIHBlcnNwZWN0aXZlOiA2cmVtOyB9XG5cbi5oYW1idXJnZXItLTNkeC1yIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpLCBiYWNrZ3JvdW5kLWNvbG9yIDBzIDAuMXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpOyB9XG4gIC5oYW1idXJnZXItLTNkeC1yIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSwgLmhhbWJ1cmdlci0tM2R4LXIgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwcyAwLjFzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKTsgfVxuXG4uaGFtYnVyZ2VyLS0zZHgtci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIHRyYW5zZm9ybTogcm90YXRlWSgtMTgwZGVnKTsgfVxuICAuaGFtYnVyZ2VyLS0zZHgtci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAuN3JlbSwgMCkgcm90YXRlKDQ1ZGVnKTsgfVxuICAuaGFtYnVyZ2VyLS0zZHgtci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTAuN3JlbSwgMCkgcm90YXRlKC00NWRlZyk7IH1cblxuLypcbiAgICogM0RZXG4gICAqL1xuLmhhbWJ1cmdlci0tM2R5IC5oYW1idXJnZXItYm94IHtcbiAgcGVyc3BlY3RpdmU6IDZyZW07IH1cblxuLmhhbWJ1cmdlci0tM2R5IC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpLCBiYWNrZ3JvdW5kLWNvbG9yIDBzIDAuMXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpOyB9XG4gIC5oYW1idXJnZXItLTNkeSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUsIC5oYW1idXJnZXItLTNkeSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDBzIDAuMXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpOyB9XG5cbi5oYW1idXJnZXItLTNkeS5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIHRyYW5zZm9ybTogcm90YXRlWCgtMTgwZGVnKTsgfVxuICAuaGFtYnVyZ2VyLS0zZHkuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLjdyZW0sIDApIHJvdGF0ZSg0NWRlZyk7IH1cbiAgLmhhbWJ1cmdlci0tM2R5LmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMC43cmVtLCAwKSByb3RhdGUoLTQ1ZGVnKTsgfVxuXG4vKlxuICAgKiAzRFkgUmV2ZXJzZVxuICAgKi9cbi5oYW1idXJnZXItLTNkeS1yIC5oYW1idXJnZXItYm94IHtcbiAgcGVyc3BlY3RpdmU6IDZyZW07IH1cblxuLmhhbWJ1cmdlci0tM2R5LXIgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSksIGJhY2tncm91bmQtY29sb3IgMHMgMC4xcyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSk7IH1cbiAgLmhhbWJ1cmdlci0tM2R5LXIgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlLCAuaGFtYnVyZ2VyLS0zZHktciAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDBzIDAuMXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpOyB9XG5cbi5oYW1idXJnZXItLTNkeS1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgdHJhbnNmb3JtOiByb3RhdGVYKDE4MGRlZyk7IH1cbiAgLmhhbWJ1cmdlci0tM2R5LXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLjdyZW0sIDApIHJvdGF0ZSg0NWRlZyk7IH1cbiAgLmhhbWJ1cmdlci0tM2R5LXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0wLjdyZW0sIDApIHJvdGF0ZSgtNDVkZWcpOyB9XG5cbi8qXG4gICAqIDNEWFlcbiAgICovXG4uaGFtYnVyZ2VyLS0zZHh5IC5oYW1idXJnZXItYm94IHtcbiAgcGVyc3BlY3RpdmU6IDZyZW07IH1cblxuLmhhbWJ1cmdlci0tM2R4eSAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKSwgYmFja2dyb3VuZC1jb2xvciAwcyAwLjFzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKTsgfVxuICAuaGFtYnVyZ2VyLS0zZHh5IC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSwgLmhhbWJ1cmdlci0tM2R4eSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDBzIDAuMXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpOyB9XG5cbi5oYW1idXJnZXItLTNkeHkuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICB0cmFuc2Zvcm06IHJvdGF0ZVgoMTgwZGVnKSByb3RhdGVZKDE4MGRlZyk7IH1cbiAgLmhhbWJ1cmdlci0tM2R4eS5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAuN3JlbSwgMCkgcm90YXRlKDQ1ZGVnKTsgfVxuICAuaGFtYnVyZ2VyLS0zZHh5LmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMC43cmVtLCAwKSByb3RhdGUoLTQ1ZGVnKTsgfVxuXG4vKlxuICAgKiAzRFhZIFJldmVyc2VcbiAgICovXG4uaGFtYnVyZ2VyLS0zZHh5LXIgLmhhbWJ1cmdlci1ib3gge1xuICBwZXJzcGVjdGl2ZTogNnJlbTsgfVxuXG4uaGFtYnVyZ2VyLS0zZHh5LXIgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSksIGJhY2tncm91bmQtY29sb3IgMHMgMC4xcyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSk7IH1cbiAgLmhhbWJ1cmdlci0tM2R4eS1yIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSwgLmhhbWJ1cmdlci0tM2R4eS1yIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMHMgMC4xcyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSk7IH1cblxuLmhhbWJ1cmdlci0tM2R4eS1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgdHJhbnNmb3JtOiByb3RhdGVYKDE4MGRlZykgcm90YXRlWSgxODBkZWcpIHJvdGF0ZVooLTE4MGRlZyk7IH1cbiAgLmhhbWJ1cmdlci0tM2R4eS1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMC43cmVtLCAwKSByb3RhdGUoNDVkZWcpOyB9XG4gIC5oYW1idXJnZXItLTNkeHktci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTAuN3JlbSwgMCkgcm90YXRlKC00NWRlZyk7IH1cblxuLypcbiAgICogQXJyb3dcbiAgICovXG4uaGFtYnVyZ2VyLS1hcnJvdy5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMC42cmVtLCAwLCAwKSByb3RhdGUoLTQ1ZGVnKSBzY2FsZSgwLjcsIDEpOyB9XG5cbi5oYW1idXJnZXItLWFycm93LmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTAuNnJlbSwgMCwgMCkgcm90YXRlKDQ1ZGVnKSBzY2FsZSgwLjcsIDEpOyB9XG5cbi8qXG4gICAqIEFycm93IFJpZ2h0XG4gICAqL1xuLmhhbWJ1cmdlci0tYXJyb3ctci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLjZyZW0sIDAsIDApIHJvdGF0ZSg0NWRlZykgc2NhbGUoMC43LCAxKTsgfVxuXG4uaGFtYnVyZ2VyLS1hcnJvdy1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMC42cmVtLCAwLCAwKSByb3RhdGUoLTQ1ZGVnKSBzY2FsZSgwLjcsIDEpOyB9XG5cbi8qXG4gICAqIEFycm93IEFsdFxuICAgKi9cbi5oYW1idXJnZXItLWFycm93YWx0IC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gIHRyYW5zaXRpb246IHRvcCAwLjFzIDAuMXMgZWFzZSwgdHJhbnNmb3JtIDAuMXMgY3ViaWMtYmV6aWVyKDAuMTY1LCAwLjg0LCAwLjQ0LCAxKTsgfVxuXG4uaGFtYnVyZ2VyLS1hcnJvd2FsdCAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gIHRyYW5zaXRpb246IGJvdHRvbSAwLjFzIDAuMXMgZWFzZSwgdHJhbnNmb3JtIDAuMXMgY3ViaWMtYmV6aWVyKDAuMTY1LCAwLjg0LCAwLjQ0LCAxKTsgfVxuXG4uaGFtYnVyZ2VyLS1hcnJvd2FsdC5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgdG9wOiAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0wLjZyZW0sIC0wLjc1cmVtLCAwKSByb3RhdGUoLTQ1ZGVnKSBzY2FsZSgwLjcsIDEpO1xuICB0cmFuc2l0aW9uOiB0b3AgMC4xcyBlYXNlLCB0cmFuc2Zvcm0gMC4xcyAwLjFzIGN1YmljLWJlemllcigwLjg5NSwgMC4wMywgMC42ODUsIDAuMjIpOyB9XG5cbi5oYW1idXJnZXItLWFycm93YWx0LmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gIGJvdHRvbTogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMC42cmVtLCAwLjc1cmVtLCAwKSByb3RhdGUoNDVkZWcpIHNjYWxlKDAuNywgMSk7XG4gIHRyYW5zaXRpb246IGJvdHRvbSAwLjFzIGVhc2UsIHRyYW5zZm9ybSAwLjFzIDAuMXMgY3ViaWMtYmV6aWVyKDAuODk1LCAwLjAzLCAwLjY4NSwgMC4yMik7IH1cblxuLypcbiAgICogQXJyb3cgQWx0IFJpZ2h0XG4gICAqL1xuLmhhbWJ1cmdlci0tYXJyb3dhbHQtciAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICB0cmFuc2l0aW9uOiB0b3AgMC4xcyAwLjFzIGVhc2UsIHRyYW5zZm9ybSAwLjFzIGN1YmljLWJlemllcigwLjE2NSwgMC44NCwgMC40NCwgMSk7IH1cblxuLmhhbWJ1cmdlci0tYXJyb3dhbHQtciAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gIHRyYW5zaXRpb246IGJvdHRvbSAwLjFzIDAuMXMgZWFzZSwgdHJhbnNmb3JtIDAuMXMgY3ViaWMtYmV6aWVyKDAuMTY1LCAwLjg0LCAwLjQ0LCAxKTsgfVxuXG4uaGFtYnVyZ2VyLS1hcnJvd2FsdC1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICB0b3A6IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMC42cmVtLCAtMC43NXJlbSwgMCkgcm90YXRlKDQ1ZGVnKSBzY2FsZSgwLjcsIDEpO1xuICB0cmFuc2l0aW9uOiB0b3AgMC4xcyBlYXNlLCB0cmFuc2Zvcm0gMC4xcyAwLjFzIGN1YmljLWJlemllcigwLjg5NSwgMC4wMywgMC42ODUsIDAuMjIpOyB9XG5cbi5oYW1idXJnZXItLWFycm93YWx0LXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgYm90dG9tOiAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAuNnJlbSwgMC43NXJlbSwgMCkgcm90YXRlKC00NWRlZykgc2NhbGUoMC43LCAxKTtcbiAgdHJhbnNpdGlvbjogYm90dG9tIDAuMXMgZWFzZSwgdHJhbnNmb3JtIDAuMXMgMC4xcyBjdWJpYy1iZXppZXIoMC44OTUsIDAuMDMsIDAuNjg1LCAwLjIyKTsgfVxuXG4vKlxuICAgKiBBcnJvdyBUdXJuXG4gICAqL1xuLmhhbWJ1cmdlci0tYXJyb3d0dXJuLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTE4MGRlZyk7IH1cbiAgLmhhbWJ1cmdlci0tYXJyb3d0dXJuLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoOHB4LCAwLCAwKSByb3RhdGUoNDVkZWcpIHNjYWxlKDAuNywgMSk7IH1cbiAgLmhhbWJ1cmdlci0tYXJyb3d0dXJuLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCg4cHgsIDAsIDApIHJvdGF0ZSgtNDVkZWcpIHNjYWxlKDAuNywgMSk7IH1cblxuLypcbiAgICogQXJyb3cgVHVybiBSaWdodFxuICAgKi9cbi5oYW1idXJnZXItLWFycm93dHVybi1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTE4MGRlZyk7IH1cbiAgLmhhbWJ1cmdlci0tYXJyb3d0dXJuLXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtOHB4LCAwLCAwKSByb3RhdGUoLTQ1ZGVnKSBzY2FsZSgwLjcsIDEpOyB9XG4gIC5oYW1idXJnZXItLWFycm93dHVybi1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtOHB4LCAwLCAwKSByb3RhdGUoNDVkZWcpIHNjYWxlKDAuNywgMSk7IH1cblxuLypcbiAgICogQm9yaW5nXG4gICAqL1xuLmhhbWJ1cmdlci0tYm9yaW5nIC5oYW1idXJnZXItaW5uZXIsIC5oYW1idXJnZXItLWJvcmluZyAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUsIC5oYW1idXJnZXItLWJvcmluZyAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IG5vbmU7IH1cblxuLmhhbWJ1cmdlci0tYm9yaW5nLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpOyB9XG4gIC5oYW1idXJnZXItLWJvcmluZy5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgICB0b3A6IDA7XG4gICAgb3BhY2l0eTogMDsgfVxuICAuaGFtYnVyZ2VyLS1ib3JpbmcuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICBib3R0b206IDA7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTsgfVxuXG4vKlxuICAgKiBDb2xsYXBzZVxuICAgKi9cbi5oYW1idXJnZXItLWNvbGxhcHNlIC5oYW1idXJnZXItaW5uZXIsIC5oYW1idXJnZXIgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRvcDogYXV0bztcbiAgYm90dG9tOiAwO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjEzcztcbiAgdHJhbnNpdGlvbi1kZWxheTogMC4xM3M7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTsgfVxuICAuaGFtYnVyZ2VyLS1jb2xsYXBzZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciwgLmhhbWJ1cmdlciAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgdG9wOiAtMS40cmVtO1xuICAgIHRyYW5zaXRpb246IHRvcCAwLjJzIDAuMnMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAuNjY2NjcsIDAuNjY2NjcsIDEpLCBvcGFjaXR5IDAuMXMgbGluZWFyOyB9XG4gIC5oYW1idXJnZXItLWNvbGxhcHNlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSwgLmhhbWJ1cmdlciAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICAgIHRyYW5zaXRpb246IHRvcCAwLjEycyAwLjJzIGN1YmljLWJlemllcigwLjMzMzMzLCAwLjY2NjY3LCAwLjY2NjY3LCAxKSwgdHJhbnNmb3JtIDAuMTNzIGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpOyB9XG5cbi5oYW1idXJnZXItLWNvbGxhcHNlLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyLCAuaXMtYWN0aXZlLmhhbWJ1cmdlciAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMC43cmVtLCAwKSByb3RhdGUoLTQ1ZGVnKTtcbiAgdHJhbnNpdGlvbi1kZWxheTogMC4yMnM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTsgfVxuICAuaGFtYnVyZ2VyLS1jb2xsYXBzZS5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIsIC5pcy1hY3RpdmUuaGFtYnVyZ2VyIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICB0b3A6IDA7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uOiB0b3AgMC4ycyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMCwgMC42NjY2NywgMC4zMzMzMyksIG9wYWNpdHkgMC4xcyAwLjIycyBsaW5lYXI7IH1cbiAgLmhhbWJ1cmdlci0tY29sbGFwc2UuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSwgLmlzLWFjdGl2ZS5oYW1idXJnZXIgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgICB0b3A6IDA7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICB0cmFuc2l0aW9uOiB0b3AgMC4xcyAwLjE2cyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMCwgMC42NjY2NywgMC4zMzMzMyksIHRyYW5zZm9ybSAwLjEzcyAwLjI1cyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTsgfVxuXG4vKlxuICAgKiBDb2xsYXBzZSBSZXZlcnNlXG4gICAqL1xuLmhhbWJ1cmdlci0tY29sbGFwc2UtciAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdG9wOiBhdXRvO1xuICBib3R0b206IDA7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMTNzO1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwLjEzcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpOyB9XG4gIC5oYW1idXJnZXItLWNvbGxhcHNlLXIgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgIHRvcDogLTEuNHJlbTtcbiAgICB0cmFuc2l0aW9uOiB0b3AgMC4ycyAwLjJzIGN1YmljLWJlemllcigwLjMzMzMzLCAwLjY2NjY3LCAwLjY2NjY3LCAxKSwgb3BhY2l0eSAwLjFzIGxpbmVhcjsgfVxuICAuaGFtYnVyZ2VyLS1jb2xsYXBzZS1yIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gICAgdHJhbnNpdGlvbjogdG9wIDAuMTJzIDAuMnMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAuNjY2NjcsIDAuNjY2NjcsIDEpLCB0cmFuc2Zvcm0gMC4xM3MgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7IH1cblxuLmhhbWJ1cmdlci0tY29sbGFwc2Utci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTAuN3JlbSwgMCkgcm90YXRlKDQ1ZGVnKTtcbiAgdHJhbnNpdGlvbi1kZWxheTogMC4yMnM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTsgfVxuICAuaGFtYnVyZ2VyLS1jb2xsYXBzZS1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgdG9wOiAwO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbjogdG9wIDAuMnMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAsIDAuNjY2NjcsIDAuMzMzMzMpLCBvcGFjaXR5IDAuMXMgMC4yMnMgbGluZWFyOyB9XG4gIC5oYW1idXJnZXItLWNvbGxhcHNlLXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gICAgdG9wOiAwO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgICB0cmFuc2l0aW9uOiB0b3AgMC4xcyAwLjE2cyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMCwgMC42NjY2NywgMC4zMzMzMyksIHRyYW5zZm9ybSAwLjEzcyAwLjI1cyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTsgfVxuXG4vKlxuICAgKiBFbGFzdGljXG4gICAqL1xuLmhhbWJ1cmdlci0tZWxhc3RpYyAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdG9wOiAwLjFyZW07XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMjc1cztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjY4LCAtMC41NSwgMC4yNjUsIDEuNTUpOyB9XG4gIC5oYW1idXJnZXItLWVsYXN0aWMgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgICB0b3A6IDAuN3JlbTtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTI1cyAwLjI3NXMgZWFzZTsgfVxuICAuaGFtYnVyZ2VyLS1lbGFzdGljIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICB0b3A6IDEuNHJlbTtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4yNzVzIGN1YmljLWJlemllcigwLjY4LCAtMC41NSwgMC4yNjUsIDEuNTUpOyB9XG5cbi5oYW1idXJnZXItLWVsYXN0aWMuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAuN3JlbSwgMCkgcm90YXRlKDEzNWRlZyk7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDAuMDc1czsgfVxuICAuaGFtYnVyZ2VyLS1lbGFzdGljLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzO1xuICAgIG9wYWNpdHk6IDA7IH1cbiAgLmhhbWJ1cmdlci0tZWxhc3RpYy5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEuNHJlbSwgMCkgcm90YXRlKC0yNzBkZWcpO1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMDc1czsgfVxuXG4vKlxuICAgKiBFbGFzdGljIFJldmVyc2VcbiAgICovXG4uaGFtYnVyZ2VyLS1lbGFzdGljLXIgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRvcDogMC4xcmVtO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjI3NXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC42OCwgLTAuNTUsIDAuMjY1LCAxLjU1KTsgfVxuICAuaGFtYnVyZ2VyLS1lbGFzdGljLXIgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgICB0b3A6IDAuN3JlbTtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTI1cyAwLjI3NXMgZWFzZTsgfVxuICAuaGFtYnVyZ2VyLS1lbGFzdGljLXIgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgIHRvcDogMS40cmVtO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjI3NXMgY3ViaWMtYmV6aWVyKDAuNjgsIC0wLjU1LCAwLjI2NSwgMS41NSk7IH1cblxuLmhhbWJ1cmdlci0tZWxhc3RpYy1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLjdyZW0sIDApIHJvdGF0ZSgtMTM1ZGVnKTtcbiAgdHJhbnNpdGlvbi1kZWxheTogMC4wNzVzOyB9XG4gIC5oYW1idXJnZXItLWVsYXN0aWMtci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwcztcbiAgICBvcGFjaXR5OiAwOyB9XG4gIC5oYW1idXJnZXItLWVsYXN0aWMtci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEuNHJlbSwgMCkgcm90YXRlKDI3MGRlZyk7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMC4wNzVzOyB9XG5cbi8qXG4gICAqIEVtcGhhdGljXG4gICAqL1xuLmhhbWJ1cmdlci0tZW1waGF0aWMge1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC5oYW1idXJnZXItLWVtcGhhdGljIC5oYW1idXJnZXItaW5uZXIge1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xMjVzIDAuMTc1cyBlYXNlLWluOyB9XG4gICAgLmhhbWJ1cmdlci0tZW1waGF0aWMgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xMjVzIGN1YmljLWJlemllcigwLjYsIDAuMDQsIDAuOTgsIDAuMzM1KSwgdG9wIDAuMDVzIDAuMTI1cyBsaW5lYXIsIGxlZnQgMC4xMjVzIDAuMTc1cyBlYXNlLWluOyB9XG4gICAgLmhhbWJ1cmdlci0tZW1waGF0aWMgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgICAgdG9wOiAwLjdyZW07XG4gICAgICByaWdodDogMDtcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjEyNXMgY3ViaWMtYmV6aWVyKDAuNiwgMC4wNCwgMC45OCwgMC4zMzUpLCB0b3AgMC4wNXMgMC4xMjVzIGxpbmVhciwgcmlnaHQgMC4xMjVzIDAuMTc1cyBlYXNlLWluOyB9XG4gIC5oYW1idXJnZXItLWVtcGhhdGljLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwcztcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDsgfVxuICAgIC5oYW1idXJnZXItLWVtcGhhdGljLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICAgICAgbGVmdDogLTZyZW07XG4gICAgICB0b3A6IC02cmVtO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCg2cmVtLCA2cmVtLCAwKSByb3RhdGUoNDVkZWcpO1xuICAgICAgdHJhbnNpdGlvbjogbGVmdCAwLjEyNXMgZWFzZS1vdXQsIHRvcCAwLjA1cyAwLjEyNXMgbGluZWFyLCB0cmFuc2Zvcm0gMC4xMjVzIDAuMTc1cyBjdWJpYy1iZXppZXIoMC4wNzUsIDAuODIsIDAuMTY1LCAxKTsgfVxuICAgIC5oYW1idXJnZXItLWVtcGhhdGljLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgICByaWdodDogLTZyZW07XG4gICAgICB0b3A6IC02cmVtO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNnJlbSwgNnJlbSwgMCkgcm90YXRlKC00NWRlZyk7XG4gICAgICB0cmFuc2l0aW9uOiByaWdodCAwLjEyNXMgZWFzZS1vdXQsIHRvcCAwLjA1cyAwLjEyNXMgbGluZWFyLCB0cmFuc2Zvcm0gMC4xMjVzIDAuMTc1cyBjdWJpYy1iZXppZXIoMC4wNzUsIDAuODIsIDAuMTY1LCAxKTsgfVxuXG4vKlxuICAgKiBFbXBoYXRpYyBSZXZlcnNlXG4gICAqL1xuLmhhbWJ1cmdlci0tZW1waGF0aWMtciB7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgLmhhbWJ1cmdlci0tZW1waGF0aWMtciAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMTI1cyAwLjE3NXMgZWFzZS1pbjsgfVxuICAgIC5oYW1idXJnZXItLWVtcGhhdGljLXIgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xMjVzIGN1YmljLWJlemllcigwLjYsIDAuMDQsIDAuOTgsIDAuMzM1KSwgdG9wIDAuMDVzIDAuMTI1cyBsaW5lYXIsIGxlZnQgMC4xMjVzIDAuMTc1cyBlYXNlLWluOyB9XG4gICAgLmhhbWJ1cmdlci0tZW1waGF0aWMtciAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgICB0b3A6IDAuN3JlbTtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTI1cyBjdWJpYy1iZXppZXIoMC42LCAwLjA0LCAwLjk4LCAwLjMzNSksIHRvcCAwLjA1cyAwLjEyNXMgbGluZWFyLCByaWdodCAwLjEyNXMgMC4xNzVzIGVhc2UtaW47IH1cbiAgLmhhbWJ1cmdlci0tZW1waGF0aWMtci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7IH1cbiAgICAuaGFtYnVyZ2VyLS1lbXBoYXRpYy1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICAgICAgbGVmdDogLTZyZW07XG4gICAgICB0b3A6IDZyZW07XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDZyZW0sIC02cmVtLCAwKSByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgIHRyYW5zaXRpb246IGxlZnQgMC4xMjVzIGVhc2Utb3V0LCB0b3AgMC4wNXMgMC4xMjVzIGxpbmVhciwgdHJhbnNmb3JtIDAuMTI1cyAwLjE3NXMgY3ViaWMtYmV6aWVyKDAuMDc1LCAwLjgyLCAwLjE2NSwgMSk7IH1cbiAgICAuaGFtYnVyZ2VyLS1lbXBoYXRpYy1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgICByaWdodDogLTZyZW07XG4gICAgICB0b3A6IDZyZW07XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC02cmVtLCAtNnJlbSwgMCkgcm90YXRlKDQ1ZGVnKTtcbiAgICAgIHRyYW5zaXRpb246IHJpZ2h0IDAuMTI1cyBlYXNlLW91dCwgdG9wIDAuMDVzIDAuMTI1cyBsaW5lYXIsIHRyYW5zZm9ybSAwLjEyNXMgMC4xNzVzIGN1YmljLWJlemllcigwLjA3NSwgMC44MiwgMC4xNjUsIDEpOyB9XG5cbi8qXG4gICAqIE1pbnVzXG4gICAqL1xuLmhhbWJ1cmdlci0tbWludXMgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlLCAuaGFtYnVyZ2VyLS1taW51cyAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gIHRyYW5zaXRpb246IGJvdHRvbSAwLjA4cyAwcyBlYXNlLW91dCwgdG9wIDAuMDhzIDBzIGVhc2Utb3V0LCBvcGFjaXR5IDBzIGxpbmVhcjsgfVxuXG4uaGFtYnVyZ2VyLS1taW51cy5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlLCAuaGFtYnVyZ2VyLS1taW51cy5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uOiBib3R0b20gMC4wOHMgZWFzZS1vdXQsIHRvcCAwLjA4cyBlYXNlLW91dCwgb3BhY2l0eSAwcyAwLjA4cyBsaW5lYXI7IH1cblxuLmhhbWJ1cmdlci0tbWludXMuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gIHRvcDogMDsgfVxuXG4uaGFtYnVyZ2VyLS1taW51cy5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICBib3R0b206IDA7IH1cblxuLypcbiAgICogU2xpZGVyXG4gICAqL1xuLmhhbWJ1cmdlci0tc2xpZGVyIC5oYW1idXJnZXItaW5uZXIge1xuICB0b3A6IDAuMXJlbTsgfVxuICAuaGFtYnVyZ2VyLS1zbGlkZXIgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgICB0b3A6IDAuN3JlbTtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2U7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4xNXM7IH1cbiAgLmhhbWJ1cmdlci0tc2xpZGVyIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICB0b3A6IDEuNHJlbTsgfVxuXG4uaGFtYnVyZ2VyLS1zbGlkZXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAuN3JlbSwgMCkgcm90YXRlKDQ1ZGVnKTsgfVxuICAuaGFtYnVyZ2VyLS1zbGlkZXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKSB0cmFuc2xhdGUzZCgtMC40Mjg1N3JlbSwgLTAuNXJlbSwgMCk7XG4gICAgb3BhY2l0eTogMDsgfVxuICAuaGFtYnVyZ2VyLS1zbGlkZXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xLjRyZW0sIDApIHJvdGF0ZSgtOTBkZWcpOyB9XG5cbi8qXG4gICAqIFNsaWRlciBSZXZlcnNlXG4gICAqL1xuLmhhbWJ1cmdlci0tc2xpZGVyLXIgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRvcDogMC4xcmVtOyB9XG4gIC5oYW1idXJnZXItLXNsaWRlci1yIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gICAgdG9wOiAwLjdyZW07XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlO1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMTVzOyB9XG4gIC5oYW1idXJnZXItLXNsaWRlci1yIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICB0b3A6IDEuNHJlbTsgfVxuXG4uaGFtYnVyZ2VyLS1zbGlkZXItci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMC43cmVtLCAwKSByb3RhdGUoLTQ1ZGVnKTsgfVxuICAuaGFtYnVyZ2VyLS1zbGlkZXItci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZykgdHJhbnNsYXRlM2QoMC40Mjg1N3JlbSwgLTAuNXJlbSwgMCk7XG4gICAgb3BhY2l0eTogMDsgfVxuICAuaGFtYnVyZ2VyLS1zbGlkZXItci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEuNHJlbSwgMCkgcm90YXRlKDkwZGVnKTsgfVxuXG4vKlxuICAgKiBTcGluXG4gICAqL1xuLmhhbWJ1cmdlci0tc3BpbiAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4yMnM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTsgfVxuICAuaGFtYnVyZ2VyLS1zcGluIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gICAgdHJhbnNpdGlvbjogdG9wIDAuMXMgMC4yNXMgZWFzZS1pbiwgb3BhY2l0eSAwLjFzIGVhc2UtaW47IH1cbiAgLmhhbWJ1cmdlci0tc3BpbiAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgdHJhbnNpdGlvbjogYm90dG9tIDAuMXMgMC4yNXMgZWFzZS1pbiwgdHJhbnNmb3JtIDAuMjJzIGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpOyB9XG5cbi5oYW1idXJnZXItLXNwaW4uaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgyMjVkZWcpO1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwLjEycztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpOyB9XG4gIC5oYW1idXJnZXItLXNwaW4uaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gICAgdG9wOiAwO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbjogdG9wIDAuMXMgZWFzZS1vdXQsIG9wYWNpdHkgMC4xcyAwLjEycyBlYXNlLW91dDsgfVxuICAuaGFtYnVyZ2VyLS1zcGluLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgYm90dG9tOiAwO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgdHJhbnNpdGlvbjogYm90dG9tIDAuMXMgZWFzZS1vdXQsIHRyYW5zZm9ybSAwLjIycyAwLjEycyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTsgfVxuXG4vKlxuICAgKiBTcGluIFJldmVyc2VcbiAgICovXG4uaGFtYnVyZ2VyLS1zcGluLXIgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMjJzO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7IH1cbiAgLmhhbWJ1cmdlci0tc3Bpbi1yIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gICAgdHJhbnNpdGlvbjogdG9wIDAuMXMgMC4yNXMgZWFzZS1pbiwgb3BhY2l0eSAwLjFzIGVhc2UtaW47IH1cbiAgLmhhbWJ1cmdlci0tc3Bpbi1yIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICB0cmFuc2l0aW9uOiBib3R0b20gMC4xcyAwLjI1cyBlYXNlLWluLCB0cmFuc2Zvcm0gMC4yMnMgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7IH1cblxuLmhhbWJ1cmdlci0tc3Bpbi1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTIyNWRlZyk7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDAuMTJzO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7IH1cbiAgLmhhbWJ1cmdlci0tc3Bpbi1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICAgIHRvcDogMDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zaXRpb246IHRvcCAwLjFzIGVhc2Utb3V0LCBvcGFjaXR5IDAuMXMgMC4xMnMgZWFzZS1vdXQ7IH1cbiAgLmhhbWJ1cmdlci0tc3Bpbi1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgYm90dG9tOiAwO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgICB0cmFuc2l0aW9uOiBib3R0b20gMC4xcyBlYXNlLW91dCwgdHJhbnNmb3JtIDAuMjJzIDAuMTJzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpOyB9XG5cbi8qXG4gICAqIFNwcmluZ1xuICAgKi9cbi5oYW1idXJnZXItLXNwcmluZyAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdG9wOiAwLjFyZW07XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMHMgMC4xM3MgbGluZWFyOyB9XG4gIC5oYW1idXJnZXItLXNwcmluZyAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICAgIHRvcDogMC43cmVtO1xuICAgIHRyYW5zaXRpb246IHRvcCAwLjFzIDAuMnMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAuNjY2NjcsIDAuNjY2NjcsIDEpLCB0cmFuc2Zvcm0gMC4xM3MgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7IH1cbiAgLmhhbWJ1cmdlci0tc3ByaW5nIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICB0b3A6IDEuNHJlbTtcbiAgICB0cmFuc2l0aW9uOiB0b3AgMC4ycyAwLjJzIGN1YmljLWJlemllcigwLjMzMzMzLCAwLjY2NjY3LCAwLjY2NjY3LCAxKSwgdHJhbnNmb3JtIDAuMTNzIGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpOyB9XG5cbi5oYW1idXJnZXItLXNwcmluZy5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDAuMjJzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50OyB9XG4gIC5oYW1idXJnZXItLXNwcmluZy5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgICB0b3A6IDA7XG4gICAgdHJhbnNpdGlvbjogdG9wIDAuMXMgMC4xNXMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAsIDAuNjY2NjcsIDAuMzMzMzMpLCB0cmFuc2Zvcm0gMC4xM3MgMC4yMnMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLjdyZW0sIDApIHJvdGF0ZSg0NWRlZyk7IH1cbiAgLmhhbWJ1cmdlci0tc3ByaW5nLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgdG9wOiAwO1xuICAgIHRyYW5zaXRpb246IHRvcCAwLjJzIGN1YmljLWJlemllcigwLjMzMzMzLCAwLCAwLjY2NjY3LCAwLjMzMzMzKSwgdHJhbnNmb3JtIDAuMTNzIDAuMjJzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMC43cmVtLCAwKSByb3RhdGUoLTQ1ZGVnKTsgfVxuXG4vKlxuICAgKiBTcHJpbmcgUmV2ZXJzZVxuICAgKi9cbi5oYW1idXJnZXItLXNwcmluZy1yIC5oYW1idXJnZXItaW5uZXIge1xuICB0b3A6IGF1dG87XG4gIGJvdHRvbTogMDtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4xM3M7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDBzO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7IH1cbiAgLmhhbWJ1cmdlci0tc3ByaW5nLXIgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgIHRvcDogLTEuNHJlbTtcbiAgICB0cmFuc2l0aW9uOiB0b3AgMC4ycyAwLjJzIGN1YmljLWJlemllcigwLjMzMzMzLCAwLjY2NjY3LCAwLjY2NjY3LCAxKSwgb3BhY2l0eSAwcyBsaW5lYXI7IH1cbiAgLmhhbWJ1cmdlci0tc3ByaW5nLXIgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgICB0cmFuc2l0aW9uOiB0b3AgMC4xcyAwLjJzIGN1YmljLWJlemllcigwLjMzMzMzLCAwLjY2NjY3LCAwLjY2NjY3LCAxKSwgdHJhbnNmb3JtIDAuMTNzIGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpOyB9XG5cbi5oYW1idXJnZXItLXNwcmluZy1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMC43cmVtLCAwKSByb3RhdGUoLTQ1ZGVnKTtcbiAgdHJhbnNpdGlvbi1kZWxheTogMC4yMnM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTsgfVxuICAuaGFtYnVyZ2VyLS1zcHJpbmctci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgIHRvcDogMDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zaXRpb246IHRvcCAwLjJzIGN1YmljLWJlemllcigwLjMzMzMzLCAwLCAwLjY2NjY3LCAwLjMzMzMzKSwgb3BhY2l0eSAwcyAwLjIycyBsaW5lYXI7IH1cbiAgLmhhbWJ1cmdlci0tc3ByaW5nLXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gICAgdG9wOiAwO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgICB0cmFuc2l0aW9uOiB0b3AgMC4xcyAwLjE1cyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMCwgMC42NjY2NywgMC4zMzMzMyksIHRyYW5zZm9ybSAwLjEzcyAwLjIycyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTsgfVxuXG4vKlxuICAgKiBTdGFuZFxuICAgKi9cbi5oYW1idXJnZXItLXN0YW5kIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4wNzVzIDAuMTVzIGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpLCBiYWNrZ3JvdW5kLWNvbG9yIDBzIDAuMDc1cyBsaW5lYXI7IH1cbiAgLmhhbWJ1cmdlci0tc3RhbmQgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgICB0cmFuc2l0aW9uOiB0b3AgMC4wNzVzIDAuMDc1cyBlYXNlLWluLCB0cmFuc2Zvcm0gMC4wNzVzIDBzIGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpOyB9XG4gIC5oYW1idXJnZXItLXN0YW5kIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICB0cmFuc2l0aW9uOiBib3R0b20gMC4wNzVzIDAuMDc1cyBlYXNlLWluLCB0cmFuc2Zvcm0gMC4wNzVzIDBzIGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpOyB9XG5cbi5oYW1idXJnZXItLXN0YW5kLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4wNzVzIDBzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpLCBiYWNrZ3JvdW5kLWNvbG9yIDBzIDAuMTVzIGxpbmVhcjsgfVxuICAuaGFtYnVyZ2VyLS1zdGFuZC5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgICB0b3A6IDA7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgICB0cmFuc2l0aW9uOiB0b3AgMC4wNzVzIDAuMXMgZWFzZS1vdXQsIHRyYW5zZm9ybSAwLjA3NXMgMC4xNXMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7IH1cbiAgLmhhbWJ1cmdlci0tc3RhbmQuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICBib3R0b206IDA7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgIHRyYW5zaXRpb246IGJvdHRvbSAwLjA3NXMgMC4xcyBlYXNlLW91dCwgdHJhbnNmb3JtIDAuMDc1cyAwLjE1cyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTsgfVxuXG4vKlxuICAgKiBTdGFuZCBSZXZlcnNlXG4gICAqL1xuLmhhbWJ1cmdlci0tc3RhbmQtciAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMDc1cyAwLjE1cyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KSwgYmFja2dyb3VuZC1jb2xvciAwcyAwLjA3NXMgbGluZWFyOyB9XG4gIC5oYW1idXJnZXItLXN0YW5kLXIgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgICB0cmFuc2l0aW9uOiB0b3AgMC4wNzVzIDAuMDc1cyBlYXNlLWluLCB0cmFuc2Zvcm0gMC4wNzVzIDBzIGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpOyB9XG4gIC5oYW1idXJnZXItLXN0YW5kLXIgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgIHRyYW5zaXRpb246IGJvdHRvbSAwLjA3NXMgMC4wNzVzIGVhc2UtaW4sIHRyYW5zZm9ybSAwLjA3NXMgMHMgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7IH1cblxuLmhhbWJ1cmdlci0tc3RhbmQtci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjA3NXMgMHMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSksIGJhY2tncm91bmQtY29sb3IgMHMgMC4xNXMgbGluZWFyOyB9XG4gIC5oYW1idXJnZXItLXN0YW5kLXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gICAgdG9wOiAwO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gICAgdHJhbnNpdGlvbjogdG9wIDAuMDc1cyAwLjFzIGVhc2Utb3V0LCB0cmFuc2Zvcm0gMC4wNzVzIDAuMTVzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpOyB9XG4gIC5oYW1idXJnZXItLXN0YW5kLXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICBib3R0b206IDA7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgIHRyYW5zaXRpb246IGJvdHRvbSAwLjA3NXMgMC4xcyBlYXNlLW91dCwgdHJhbnNmb3JtIDAuMDc1cyAwLjE1cyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTsgfVxuXG4vKlxuICAgKiBTcXVlZXplXG4gICAqL1xuLmhhbWJ1cmdlci0tc3F1ZWV6ZSAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4wNzVzO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7IH1cbiAgLmhhbWJ1cmdlci0tc3F1ZWV6ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICAgIHRyYW5zaXRpb246IHRvcCAwLjA3NXMgMC4xMnMgZWFzZSwgb3BhY2l0eSAwLjA3NXMgZWFzZTsgfVxuICAuaGFtYnVyZ2VyLS1zcXVlZXplIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICB0cmFuc2l0aW9uOiBib3R0b20gMC4wNzVzIDAuMTJzIGVhc2UsIHRyYW5zZm9ybSAwLjA3NXMgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7IH1cblxuLmhhbWJ1cmdlci0tc3F1ZWV6ZS5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgdHJhbnNpdGlvbi1kZWxheTogMC4xMnM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTsgfVxuICAuaGFtYnVyZ2VyLS1zcXVlZXplLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICAgIHRvcDogMDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zaXRpb246IHRvcCAwLjA3NXMgZWFzZSwgb3BhY2l0eSAwLjA3NXMgMC4xMnMgZWFzZTsgfVxuICAuaGFtYnVyZ2VyLS1zcXVlZXplLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgYm90dG9tOiAwO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgdHJhbnNpdGlvbjogYm90dG9tIDAuMDc1cyBlYXNlLCB0cmFuc2Zvcm0gMC4wNzVzIDAuMTJzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpOyB9XG5cbi8qXG4gICAqIFZvcnRleFxuICAgKi9cbi5oYW1idXJnZXItLXZvcnRleCAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4ycztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKTsgfVxuICAuaGFtYnVyZ2VyLS12b3J0ZXggLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlLCAuaGFtYnVyZ2VyLS12b3J0ZXggLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMXM7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjsgfVxuICAuaGFtYnVyZ2VyLS12b3J0ZXggLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0b3AsIG9wYWNpdHk7IH1cbiAgLmhhbWJ1cmdlci0tdm9ydGV4IC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBib3R0b20sIHRyYW5zZm9ybTsgfVxuXG4uaGFtYnVyZ2VyLS12b3J0ZXguaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg3NjVkZWcpO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTksIDEsIDAuMjIsIDEpOyB9XG4gIC5oYW1idXJnZXItLXZvcnRleC5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlLCAuaGFtYnVyZ2VyLS12b3J0ZXguaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwczsgfVxuICAuaGFtYnVyZ2VyLS12b3J0ZXguaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gICAgdG9wOiAwO1xuICAgIG9wYWNpdHk6IDA7IH1cbiAgLmhhbWJ1cmdlci0tdm9ydGV4LmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgYm90dG9tOiAwO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTsgfVxuXG4vKlxuICAgKiBWb3J0ZXggUmV2ZXJzZVxuICAgKi9cbi5oYW1idXJnZXItLXZvcnRleC1yIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjJzO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTksIDEsIDAuMjIsIDEpOyB9XG4gIC5oYW1idXJnZXItLXZvcnRleC1yIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSwgLmhhbWJ1cmdlci0tdm9ydGV4LXIgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMXM7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjsgfVxuICAuaGFtYnVyZ2VyLS12b3J0ZXgtciAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRvcCwgb3BhY2l0eTsgfVxuICAuaGFtYnVyZ2VyLS12b3J0ZXgtciAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogYm90dG9tLCB0cmFuc2Zvcm07IH1cblxuLmhhbWJ1cmdlci0tdm9ydGV4LXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtNzY1ZGVnKTtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKTsgfVxuICAuaGFtYnVyZ2VyLS12b3J0ZXgtci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlLCAuaGFtYnVyZ2VyLS12b3J0ZXgtci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzOyB9XG4gIC5oYW1idXJnZXItLXZvcnRleC1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICAgIHRvcDogMDtcbiAgICBvcGFjaXR5OiAwOyB9XG4gIC5oYW1idXJnZXItLXZvcnRleC1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgYm90dG9tOiAwO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NjBweCkge1xuICAvKiBzdHlsZWxpbnQtZGlzYWJsZSBhMTF5L25vLWRpc3BsYXktbm9uZSAqL1xuICAuanMgLm1lbnUtaXRlbXMgdWwge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLyogc3R5bGVsaW50LWVuYWJsZSAqLyB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTYwcHgpIHtcbiAgLmpzIHVsIC5zdWItbWVudS50b2dnbGVkLW9uIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5NjBweCkge1xuICAubmF2LWNvbnRhaW5lciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmFja2dyb3VuZC1uYXYtbW9iaWxlLWhlYWRlcik7XG4gICAgbGVmdDogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5zaXRlIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKC0taGVpZ2h0LW5hdmlnYXRpb24tbW9iaWxlKTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1OXB4KSB7XG4gIC5zaXRlLWhlYWRlciB1bCxcbiAgLnNpdGUtaGVhZGVyIGxpLFxuICAuc2l0ZS1oZWFkZXIgYSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5tYWluLW5hdmlnYXRpb24td3JhcHBlciB7XG4gICAgb3JkZXI6IDY7XG4gICAgei1pbmRleDogOTk5OyB9XG4gIC5uby1qcyAuc2l0ZS1oZWFkZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJhY2tncm91bmQtbmF2LW1vYmlsZS1oZWFkZXIpO1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7IH1cbiAgLmRpc2FibGUtc2Nyb2xsIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC5uYXYtcHJpbWFyeSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmFja2dyb3VuZC1uYXYtbW9iaWxlLWxheWVyKTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSB2YXIoLS1oZWlnaHQtbmF2aWdhdGlvbi1tb2JpbGUpKTtcbiAgICBtYXJnaW46IDA7XG4gICAgb3BhY2l0eTogMDtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4yMnMgZWFzZS1pbi1vdXQ7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIHdpZHRoOiAxMDB2dzsgfVxuICAubWVudS1pdGVtcyB7XG4gICAgbWFyZ2luOiAwO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgcGFkZGluZzogMnJlbSAwO1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5tZW51LWl0ZW0gYSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWNvbG9yLXNlcGFyYXRvci1uYXYtbW9iaWxlKTtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbi1sZXZlbC1tb2JpbGUpO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLW1haW4tbGV2ZWwtbW9iaWxlKTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWFpbi1sZXZlbC1tb2JpbGUpO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tcGFkZGluZy1zdWItbWVudS12ZXJ0aWNhbC1tb2JpbGUpO1xuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tcGFkZGluZy1zdWItbWVudS1ob3Jpem9udGFsLW1vYmlsZSk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKC0tcGFkZGluZy1zdWItbWVudS1ob3Jpem9udGFsLW1vYmlsZSk7XG4gICAgcGFkZGluZy10b3A6IHZhcigtLXBhZGRpbmctc3ViLW1lbnUtdmVydGljYWwtbW9iaWxlKTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIHotaW5kZXg6IDA7IH1cbiAgLnN1Yi1tZW51IGEge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1zdWItbWVudS1tb2JpbGUpO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXN1Yi1tZW51LW1vYmlsZSk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXN1Yi1tZW51LW1vYmlsZSk7XG4gICAgcGFkZGluZy1sZWZ0OiBjYWxjKHZhcigtLXBhZGRpbmctc3ViLW1lbnUtaG9yaXpvbnRhbC1tb2JpbGUpICsgdmFyKC0tbWFyZ2luLWxlZnQtc3ViLW1lbnUpKTsgfVxuICAuc3ViLW1lbnUge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDsgfVxuICAuc3ViLW1lbnUgLnN1Yi1tZW51IGEge1xuICAgIHBhZGRpbmctbGVmdDogY2FsYyh2YXIoLS1wYWRkaW5nLXN1Yi1tZW51LWhvcml6b250YWwtbW9iaWxlKSArIHZhcigtLW1hcmdpbi1sZWZ0LXN1Yi1tZW51KSArIHZhcigtLW1hcmdpbi1sZWZ0LXN1Yi1tZW51KSk7IH1cbiAgLm1lbnUtaXRlbSBhOmhvdmVyLFxuICAubWVudS1pdGVtIGE6Zm9jdXMge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1hY3RpdmUtbWFpbi1sZXZlbC1tb2JpbGUpOyB9XG4gIC5tZW51LWl0ZW0uY3VycmVudC1tZW51LXBhcmVudCA+IGEsXG4gIC5tZW51LWl0ZW0uY3VycmVudC1tZW51LWl0ZW0gPiBhIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItY3VycmVudC1tb2JpbGUpOyB9XG4gIC5kcm9wZG93bi10b2dnbGUge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiAwO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1kcm9wZG93bi10b2dnbGUtbW9iaWxlKTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbGVmdDogYXV0bztcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1heC1oZWlnaHQ6IDUycHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tcGFkZGluZy1zdWItbWVudS12ZXJ0aWNhbC1tb2JpbGUpO1xuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tcGFkZGluZy1zdWItbWVudS1ob3Jpem9udGFsLW1vYmlsZSk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKC0tcGFkZGluZy1zdWItbWVudS1ob3Jpem9udGFsLW1vYmlsZSk7XG4gICAgcGFkZGluZy10b3A6IHZhcigtLXBhZGRpbmctc3ViLW1lbnUtdmVydGljYWwtbW9iaWxlKTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiAycHg7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMjJzO1xuICAgIHotaW5kZXg6IDk5OTk7IH1cbiAgLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7XG4gICAgei1pbmRleDogMTAwMDA7IH1cbiAgLnN1Yi1tZW51IC5kcm9wZG93bi10b2dnbGUge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1zdWItbWVudS1tb2JpbGUpOyB9XG4gIC5kcm9wZG93bi10b2dnbGUgc3ZnIHtcbiAgICBoZWlnaHQ6IHZhcigtLWRyb3Bkb3duLXRvZ2dsZS1zaXplLW1vYmlsZSk7XG4gICAgd2lkdGg6IHZhcigtLWRyb3Bkb3duLXRvZ2dsZS1zaXplLW1vYmlsZSk7XG4gICAgLyogc3R5bGVsaW50LWRpc2FibGUgYTExeS9uby1kaXNwbGF5LW5vbmUgKi9cbiAgICAvKiBzdHlsZWxpbnQtZW5hYmxlICovIH1cbiAgLmRyb3Bkb3duLXRvZ2dsZS50b2dnbGVkLW9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTE4MGRlZyk7IH1cbiAgLmpzIC5uYXYtcHJpbWFyeSB7XG4gICAgbGVmdDogMDtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiB2YXIoLS1oZWlnaHQtbmF2aWdhdGlvbi1tb2JpbGUpO1xuICAgIHotaW5kZXg6IDU7IH1cbiAgICAuanMgLm5hdi1wcmltYXJ5IC5tZW51LWl0ZW1zIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJhY2tncm91bmQtbmF2LW1vYmlsZS1sYXllcik7XG4gICAgICBwYWRkaW5nOiAwOyB9XG4gIC5qcy5qcy1uYXYtYWN0aXZlIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gICAgLmpzLmpzLW5hdi1hY3RpdmUgLm5hdi1wcmltYXJ5IHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICBwb2ludGVyLWV2ZW50czogYWxsO1xuICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuICAgIC5qcy5qcy1uYXYtYWN0aXZlIC5tZW51LWl0ZW1zIHtcbiAgICAgIG9wYWNpdHk6IDE7IH0gfVxuXG4uaGFtYnVyZ2VyLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyLFxuLmhhbWJ1cmdlci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlLFxuLmhhbWJ1cmdlci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1oYW1idXJnZXItYWN0aXZlKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWhhbWJ1cmdlci1hY3RpdmUpOyB9XG5cbi5uYXYtdG9nZ2xlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWhhbWJ1cmdlcik7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xuICBtYXJnaW46IDA7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBwYWRkaW5nOiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdG9wOiAwO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgei1pbmRleDogMTAwMDAwO1xuICAvKiBzdHlsZWxpbnQtZGlzYWJsZSBhMTF5L25vLWRpc3BsYXktbm9uZSAqL1xuICAvKiBzdHlsZWxpbnQtZW5hYmxlICovIH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDk2MHB4KSB7XG4gICAgLm5hdi10b2dnbGUge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gIC5uYXYtdG9nZ2xlOm5vdCgudG9nZ2xlZC1vbikgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgdHJhbnNpdGlvbjogd2lkdGggMC4yMnM7XG4gICAgd2lkdGg6IDE4cHg7IH1cbiAgLm5hdi10b2dnbGUuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIsXG4gIC5uYXYtdG9nZ2xlOmhvdmVyIC5oYW1idXJnZXItaW5uZXIsXG4gIC5uYXYtdG9nZ2xlOmZvY3VzIC5oYW1idXJnZXItaW5uZXIge1xuICAgIHdpZHRoOiAzcmVtOyB9XG4gIC5uYXYtdG9nZ2xlIHNwYW4ge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1oYW1idXJnZXIpO1xuICAgIGZvbnQtc2l6ZTogMS4yZW07IH1cbiAgLm5hdi10b2dnbGUuaXMtYWN0aXZlIHNwYW4ge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1oYW1idXJnZXItYWN0aXZlKTsgfVxuICAubmF2LXRvZ2dsZTpob3ZlciwgLm5hdi10b2dnbGU6YWN0aXZlIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItaGFtYnVyZ2VyKTsgfVxuICAgIC5uYXYtdG9nZ2xlOmhvdmVyIHNwYW4sIC5uYXYtdG9nZ2xlOmFjdGl2ZSBzcGFuIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1oYW1idXJnZXIpOyB9XG4gIC5uYXYtdG9nZ2xlOmZvY3VzIHNwYW4gc3BhbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItaGFtYnVyZ2VyKTsgfVxuICAubmF2LXRvZ2dsZTpmb2N1cyBzcGFuIHNwYW46OmJlZm9yZSxcbiAgLm5hdi10b2dnbGU6Zm9jdXMgc3BhbiBzcGFuOjphZnRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItaGFtYnVyZ2VyKTsgfVxuICAubmF2LXRvZ2dsZTpub3QoLmhhcy12aXNpYmxlLWxhYmVsKSAubmF2LXRvZ2dsZS1sYWJlbCB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogOTU5cHgpIHtcbiAgICAubmF2LXRvZ2dsZSB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgICAgLm5hdi10b2dnbGUuaGFzLXZpc2libGUtbGFiZWwge1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBkaXNwbGF5OiBmbGV4OyB9XG4gICAgICAubmF2LXRvZ2dsZS5oYXMtdmlzaWJsZS1sYWJlbCAubmF2LXRvZ2dsZS1sYWJlbCB7XG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLW5hdi10b2dnbGUtbGFiZWwpOyB9IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogOTU5cHgpIGFuZCAobWF4LXdpZHRoOiA0MTBweCkge1xuICAgICAgLm5hdi10b2dnbGUuaGFzLXZpc2libGUtbGFiZWwgLm5hdi10b2dnbGUtbGFiZWwge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDk1OXB4KSBhbmQgKG1pbi13aWR0aDogNDExcHgpIHtcbiAgICAubmF2LXRvZ2dsZS5oYXMtdmlzaWJsZS1sYWJlbCAuaGFtYnVyZ2VyLWJveCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDJyZW07IH0gfVxuICAubmF2LXRvZ2dsZS5pcy1hY3RpdmUge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1oYW1idXJnZXItYWN0aXZlKTsgfVxuICAubmF2LXRvZ2dsZS5pcy1hY3RpdmUgLmhhbWJ1cmdlci1ib3ggLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItaGFtYnVyZ2VyLWFjdGl2ZSk7IH1cbiAgLm5hdi10b2dnbGUuaXMtYWN0aXZlIC5oYW1idXJnZXItYm94IC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1oYW1idXJnZXItYWN0aXZlKTsgfVxuICAubmF2LXRvZ2dsZS5pcy1hY3RpdmUgLmZvY3VzIC5oYW1idXJnZXItaW5uZXIsXG4gIC5uYXYtdG9nZ2xlLmlzLWFjdGl2ZSBzcGFuOmZvY3VzIC5oYW1idXJnZXItaW5uZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWhhbWJ1cmdlci1hY3RpdmUpOyB9XG4gIC5uYXYtdG9nZ2xlLmlzLWFjdGl2ZSAuZm9jdXMgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIsXG4gIC5uYXYtdG9nZ2xlLmlzLWFjdGl2ZSBzcGFuOmZvY3VzIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1oYW1idXJnZXItYWN0aXZlKTsgfVxuICAubmF2LXRvZ2dsZS5pcy1hY3RpdmUgc3Bhbjpmb2N1cyxcbiAgLm5hdi10b2dnbGUuaXMtYWN0aXZlIHNwYW46aG92ZXIsXG4gIC5uYXYtdG9nZ2xlLmlzLWFjdGl2ZSBzcGFuOmFjdGl2ZSB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWhhbWJ1cmdlci1hY3RpdmUpOyB9XG4gICAgLm5hdi10b2dnbGUuaXMtYWN0aXZlIHNwYW46Zm9jdXMgc3BhbixcbiAgICAubmF2LXRvZ2dsZS5pcy1hY3RpdmUgc3Bhbjpob3ZlciBzcGFuLFxuICAgIC5uYXYtdG9nZ2xlLmlzLWFjdGl2ZSBzcGFuOmFjdGl2ZSBzcGFuIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1oYW1idXJnZXItYWN0aXZlKTsgfVxuXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSAqL1xuOnJvb3Qge1xuICAtLWNvbG9yLWJhYnktYmx1ZTogIzYwZjRlYTtcbiAgLS1jb2xvci1oZWxpb3Ryb3BlOiAjODY2Y2ZmO1xuICAtLWNvbG9yLXdpbGQtYmx1ZS15b25kZXI6ICM3MzdmYmY7XG4gIC0tY29sb3Itd2lsZC1ibHVlLXlvbmRlci1yZ2I6IDExNSwgMTI3LCAxOTE7XG4gIC0tY29sb3ItYm9yZGVyLWRlbW8taGVhZGVyOiByZ2JhKHZhcigtLWNvbG9yLXdpbGQtYmx1ZS15b25kZXItcmdiKSwgLjUpOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA5NjBweCkge1xuICBib2R5IC5uYXYtY29udGFpbmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1tYWluKTsgfSB9XG5cbi5zaXRlLWhlYWRlciB7XG4gIHBhZGRpbmctdG9wOiA0cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogNHJlbTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogOTYwcHgpIHtcbiAgICAuc2l0ZS1oZWFkZXIge1xuICAgICAgcGFkZGluZy10b3A6IDJyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMnJlbTsgfSB9XG4gIC5zaXRlLWhlYWRlciAuc2l0ZS10aXRsZSB7XG4gICAgbWFyZ2luOiAwOyB9XG4gICAgLnNpdGUtaGVhZGVyIC5zaXRlLXRpdGxlIHN2ZyB7XG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMXMgZWFzZS1pbjsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSksICh1cGRhdGU6IHNsb3cpIHtcbiAgICAgICAgLnNpdGUtaGVhZGVyIC5zaXRlLXRpdGxlIHN2ZyB7XG4gICAgICAgICAgdHJhbnNpdGlvbjogbm9uZTsgfSB9XG4gICAgLnNpdGUtaGVhZGVyIC5zaXRlLXRpdGxlIC5jbHItaS1zb2xpZC1wYXRoLTIge1xuICAgICAgZmlsbDogdmFyKC0tY29sb3Itd2hpdGUpOyB9XG4gICAgLnNpdGUtaGVhZGVyIC5zaXRlLXRpdGxlIGEge1xuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJhYnktYmx1ZSk7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgIC5zaXRlLWhlYWRlciAuc2l0ZS10aXRsZSBhOmhvdmVyIHN2ZyB7XG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC40cyBjdWJpYy1iZXppZXIoMC42LCAtMC42OCwgMC43MywgMC4wNCk7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgyNjAlLCAtMjIwJSk7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpLCAodXBkYXRlOiBzbG93KSB7XG4gICAgICAgIC5zaXRlLWhlYWRlciAuc2l0ZS10aXRsZSBhOmhvdmVyIHN2ZyB7XG4gICAgICAgICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7IH0gfVxuICAgICAgLnNpdGUtaGVhZGVyIC5zaXRlLXRpdGxlIGE6aG92ZXIgc3ZnIC5jbHItaS1zb2xpZC1wYXRoLTIge1xuICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgICBmaWxsOiB2YXIoLS1jb2xvci1iYWJ5LWJsdWUpOyB9XG4gICAgLnNpdGUtaGVhZGVyIC5zaXRlLXRpdGxlIC5sb2dvLW5hbWUge1xuICAgICAgY29udGVudDogJ0Fpcic7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2U7XG4gICAgICBsZXR0ZXItc3BhY2luZzogLjFlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1wYXJhZ3JhcGhzKTtcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gICAgICBtYXJnaW4tbGVmdDogLjc1cmVtO1xuICAgICAgZm9udC1zaXplOiAyLjJyZW07IH1cblxuLmJsb2NrLmJsb2NrLWVudHJ5LWhlYWRlci1kZW1vIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItdmFsaGFsbGEpO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXgtaGVpZ2h0OiA4MHJlbTtcbiAgaGVpZ2h0OiA2MHZoO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMCBhdXRvOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAgIC5ibG9jay5ibG9jay1lbnRyeS1oZWFkZXItZGVtbyB7XG4gICAgICBtaW4taGVpZ2h0OiA2MHJlbTsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAgIC5ibG9jay5ibG9jay1lbnRyeS1oZWFkZXItZGVtbyB7XG4gICAgICBwYWRkaW5nLXRvcDogNnJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA2cmVtOyB9IH1cbiAgLmJsb2NrLmJsb2NrLWVudHJ5LWhlYWRlci1kZW1vIC5zaGFkZSB7XG4gICAgb3BhY2l0eTogLjQ7IH1cbiAgLmJsb2NrLmJsb2NrLWVudHJ5LWhlYWRlci1kZW1vIC5pbm5lciB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6IDFmciAxZnI7XG4gICAgLyogYXV0b3ByZWZpeGVyOiBvZmYgKi9cbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAganVzdGlmeS1pdGVtczogY2VudGVyO1xuICAgIHBhZGRpbmc6IDJyZW07XG4gICAgbWF4LXdpZHRoOiAxMjAwcHg7XG4gICAgbWFyZ2luLXRvcDogMTQwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogODBweDsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NzBweCkge1xuICAgICAgLmJsb2NrLmJsb2NrLWVudHJ5LWhlYWRlci1kZW1vIC5pbm5lciB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogbm9uZTtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAzZnIgNWZyO1xuICAgICAgICBtYXgtd2lkdGg6IDgwMHB4OyB9IH1cblxuQGtleWZyYW1lcyBwbGFuZS1jb250YWluZXIge1xuICAwJSB7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7IH1cbiAgODAlIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIDEwMCUge1xuICAgIG92ZXJmbG93OiBoaWRkZW47IH0gfVxuICAuYmxvY2suYmxvY2stZW50cnktaGVhZGVyLWRlbW8gLmxvZ28ge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1iYWJ5LWJsdWUpO1xuICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCB2YXIoLS1jb2xvci1ib3JkZXItZGVtby1oZWFkZXIpO1xuICAgIGJvcmRlci1yaWdodDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgb3JkZXI6IDI7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgYW5pbWF0aW9uOiBwbGFuZS1jb250YWluZXIgMTBzIGxpbmVhciAxcyBpbmZpbml0ZTsgfVxuICAgIC5ibG9jay5ibG9jay1lbnRyeS1oZWFkZXItZGVtbyAubG9nbyAubG9nby1uYW1lIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cblxuQGtleWZyYW1lcyBwbGFuZSB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtMjAwJSwgMTQwJSk7IH1cbiAgMTAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgICBvcGFjaXR5OiAxOyB9XG4gIDg1JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gICAgb3BhY2l0eTogMTsgfVxuICA5NSUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDE0MCUsIC0xMDAlKTsgfVxuICA5NyUge1xuICAgIG9wYWNpdHk6IDA7IH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7IH0gfVxuICAgIC5ibG9jay5ibG9jay1lbnRyeS1oZWFkZXItZGVtbyAubG9nbyBzdmcge1xuICAgICAgcGFkZGluZzogMnJlbTtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiAyMHJlbTtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtMTAwJSwgMTAwJSk7XG4gICAgICBhbmltYXRpb246IHBsYW5lIDVzIGN1YmljLWJlemllcigwLjg2LCAwLCAwLjA3LCAxKSAxcyBpbmZpbml0ZTtcbiAgICAgIGFuaW1hdGlvbi1kZWxheTogLTVzO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgei1pbmRleDogNjsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSksICh1cGRhdGU6IHNsb3cpIHtcbiAgICAgICAgLmJsb2NrLmJsb2NrLWVudHJ5LWhlYWRlci1kZW1vIC5sb2dvIHN2ZyB7XG4gICAgICAgICAgYW5pbWF0aW9uOiBub25lO1xuICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgICBvcGFjaXR5OiAxOyB9IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAgICAgICAuYmxvY2suYmxvY2stZW50cnktaGVhZGVyLWRlbW8gLmxvZ28gc3ZnIHtcbiAgICAgICAgICBtYXgtd2lkdGg6IDE1cmVtOyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzcwcHgpIHtcbiAgICAgIC5ibG9jay5ibG9jay1lbnRyeS1oZWFkZXItZGVtbyAubG9nbyB7XG4gICAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgICAgIGJvcmRlci1yaWdodDogMnB4IHNvbGlkIHZhcigtLWNvbG9yLWJvcmRlci1kZW1vLWhlYWRlcik7XG4gICAgICAgIG9yZGVyOiAwO1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAgICAgICAuYmxvY2suYmxvY2stZW50cnktaGVhZGVyLWRlbW8gLmxvZ28gc3ZnIHtcbiAgICAgICAgICBwYWRkaW5nOiAycmVtIDRyZW07IH0gfVxuICAuYmxvY2suYmxvY2stZW50cnktaGVhZGVyLWRlbW8gLmhlYWRpbmctaGVybyB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMnJlbTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjM7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzcwcHgpIHtcbiAgICAgIC5ibG9jay5ibG9jay1lbnRyeS1oZWFkZXItZGVtbyAuaGVhZGluZy1oZXJvIHtcbiAgICAgICAgcGFkZGluZzogMnJlbSA0cmVtO1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9IH1cblxuLmFjY2VudCB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWgzKTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBsZXR0ZXItc3BhY2luZzogLjA1ZW07XG4gIHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2U7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1tZWRpdW0pO1xuICBtYXJnaW46IDA7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGNvbG9yOiB2YXIoLS1jb2xvci13aWxkLWJsdWUteW9uZGVyKTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTYwcHgpIHtcbiAgLmRyb3Bkb3duLXRvZ2dsZSxcbiAgLm1lbnUtaXRlbS5jdXJyZW50LW1lbnUtaXRlbSA+IGEsXG4gIC5tZW51LWl0ZW0uY3VycmVudC1tZW51LXBhcmVudCA+IGEsXG4gIC5zaXRlLWhlYWRlciAuc2l0ZS1icmFuZGluZyAuc2l0ZS10aXRsZSBhLFxuICAuc2l0ZS1oZWFkZXIgLm5hdi1wcmltYXJ5IC5tZW51LWl0ZW1zLm5hdi1tZW51IC5tZW51LWl0ZW0gPiAuZHJvcGRvd24tdG9nZ2xlLFxuICAuc2l0ZS1oZWFkZXIgLm5hdi1wcmltYXJ5IC5tZW51LWl0ZW1zIC5jdXJyZW50LW1lbnUtcGFyZW50ID4gYSxcbiAgLnNpdGUtaGVhZGVyIC5uYXYtcHJpbWFyeSAubWVudS1pdGVtcyAuY3VycmVudC1tZW51LWl0ZW0gPiBhIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItYmFieS1ibHVlKTsgfVxuICAuc2l0ZS1oZWFkZXIgLm5hdi1wcmltYXJ5IC5tZW51LWl0ZW1zIC5zdWItbWVudSAuY3VycmVudC1tZW51LXBhcmVudCA+IGEsXG4gIC5zaXRlLWhlYWRlciAubmF2LXByaW1hcnkgLm1lbnUtaXRlbXMgLnN1Yi1tZW51IC5jdXJyZW50LW1lbnUtaXRlbSA+IGEsXG4gIC5zaXRlLWhlYWRlciAubmF2LXByaW1hcnkgLm1lbnUtaXRlbXMgLnN1Yi1tZW51IC5kcm9wZG93bi10b2dnbGUge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1jdXJyZW50KTsgfVxuICAuc2l0ZS1oZWFkZXIgLm5hdi1wcmltYXJ5IC5tZW51LWl0ZW1zLm5hdi1tZW51IC5zdWItbWVudSAubWVudS1pdGVtID4gLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLXZhbGhhbGxhKTsgfSB9XG5cbi5ibG9jay5ibG9jay1lbnRyeS1oZWFkZXItZGVtbyArIC5ibG9jayAuY29udGFpbmVyIHtcbiAgbWF4LXdpZHRoOiA4MDBweDsgfVxuICAuYmxvY2suYmxvY2stZW50cnktaGVhZGVyLWRlbW8gKyAuYmxvY2sgLmNvbnRhaW5lci5ndXRlbmJlcmctY29udGVudCB7XG4gICAgbWF4LXdpZHRoOiAxMDAlOyB9XG5cbi5ibG9jay5ibG9jay1ibG9nIGFydGljbGUsXG4uYmxvY2suYmxvY2stYmxvZyBuYXYge1xuICBtYXgtd2lkdGg6IDgwMHB4O1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG5cbi5ibG9jay1ibG9nIGFydGljbGUge1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1wYWRkaW5nLWJsb2NrKTsgfVxuICAuYmxvY2stYmxvZyBhcnRpY2xlOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLmJsb2NrLWJsb2cgdWwudGFncyB7XG4gIHBhZGRpbmctbGVmdDogMDsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTYwcHgpIHtcbiAgLmJsb2NrIHtcbiAgICBtaW4taGVpZ2h0OiA3OHB4OyB9IH1cblxuLnNpdGUtZm9vdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItdmFsaGFsbGEpOyB9XG5cbi5jb21wb25lbnRzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXJnaW4tdG9wOiA2cmVtO1xuICBtYXJnaW4tYm90dG9tOiAtNHJlbTtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7IH1cblxuLmhlYWRpbmctZGVtbyB7XG4gIG1hcmdpbi10b3A6IDZyZW07IH1cblxuLmxpbmstZGVtbyB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1jb2xvci1saW5rLWJvcmRlci1ib3R0b20pO1xuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCB2YXIoLS1jb2xvci1saW5rLWJhY2tncm91bmQtaG92ZXIpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItbGluay10ZXh0KTtcbiAgZGlzcGxheTogaW5saW5lO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC4xcyBjdWJpYy1iZXppZXIoMC4xOSwgMSwgMC4yMiwgMSksIGNvbG9yIDAuMXMgY3ViaWMtYmV6aWVyKDAuMTksIDEsIDAuMjIsIDEpOyB9XG4gIC5saW5rLWRlbW86OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi8uLi9zdmcvZXh0ZXJuYWwtbGluay1zdHlsZWQtbGlua3Muc3ZnXCIpOyB9XG4gIC5saW5rLWRlbW86aG92ZXIge1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAtMy4zcmVtIDAgdmFyKC0tY29sb3ItbGluay1iYWNrZ3JvdW5kLWhvdmVyKTtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItbGluay10ZXh0LWhvdmVyKTsgfVxuICAgIC5saW5rLWRlbW86aG92ZXI6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uLy4uL3N2Zy9leHRlcm5hbC1saW5rLXdoaXRlLnN2Z1wiKTsgfVxuICAubGluay1kZW1vOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWxpbmstYm9yZGVyLWZvY3VzKTtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1saW5rLXRleHQtZm9jdXMpO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICAgIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogbm8tcHJlZmVyZW5jZSkge1xuICAgICAgLmxpbmstZGVtbzpmb2N1cyB7XG4gICAgICAgIG91dGxpbmUtb2Zmc2V0OiA1cHg7XG4gICAgICAgIHRyYW5zaXRpb246IG91dGxpbmUtb2Zmc2V0IC4yNXMgZWFzZTsgfSB9XG4gICAgLmxpbmstZGVtbzpmb2N1czo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vLi4vc3ZnL2V4dGVybmFsLWxpbmstYmxhY2suc3ZnXCIpOyB9XG5cbi5zaXRlLW1haW4gLmNvbXBvbmVudCB7XG4gIGJvcmRlcjogMXB4IGRhc2hlZCB2YXIoLS1jb2xvci1oZWxpb3Ryb3BlKTtcbiAgcGFkZGluZzogMTlweDtcbiAgbWFyZ2luLXJpZ2h0OiA0cmVtO1xuICBtYXJnaW4tYm90dG9tOiA0cmVtOyB9XG4gIC5zaXRlLW1haW4gLmNvbXBvbmVudCAuY29tcG9uZW50LWxhYmVsIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItaGVsaW90cm9wZSk7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBtYXJnaW4tdG9wOiAtNDJweDtcbiAgICBtYXJnaW4tbGVmdDogLTIwcHg7IH1cbiAgICAuc2l0ZS1tYWluIC5jb21wb25lbnQgLmNvbXBvbmVudC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImh0dHBzOi8vYWlyd3B0aGVtZS5jb20vZGVtby9maWdtYS1jb21wb25lbnQuc3ZnXCIpO1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2lkdGg6IDExcHg7XG4gICAgICBoZWlnaHQ6IDExcHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDVweDsgfVxuICAuc2l0ZS1tYWluIC5jb21wb25lbnQgcCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIG1hcmdpbjogMCAwIDJyZW07IH1cbiAgICAuc2l0ZS1tYWluIC5jb21wb25lbnQgcDpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLmJsb2NrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4uc2hhZGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1iYWNrZ3JvdW5kLXNoYWRlKTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBsZWZ0OiAwO1xuICBvcGFjaXR5OiAuMzU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgei1pbmRleDogMDsgfVxuXG4uZ2xvYmFsLWxpbmsge1xuICBoZWlnaHQ6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgei1pbmRleDogMzsgfVxuXG4uc2l0ZSB7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1heC13aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi5jb250YWluZXIge1xuICBtYXJnaW46IDAgYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWF4LXdpZHRoOiAxMjAwcHg7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci12ZXJ0aWNhbCk7XG4gIHBhZGRpbmctbGVmdDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICBwYWRkaW5nLXRvcDogdmFyKC0tcGFkZGluZy1jb250YWluZXItdmVydGljYWwpOyB9XG5cbi5zaXRlLW1haW4gLmNvbnRhaW5lciB7XG4gIGNsZWFyOiBib3RoO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbi5lbnRyeS1mb290ZXIge1xuICBjbGVhcjogYm90aDtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBtYXJnaW4tdG9wOiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci12ZXJ0aWNhbCk7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLmVkaXQtbGluayB7XG4gIGNsZWFyOiBib3RoO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbWFyZ2luLXRvcDogMnJlbTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtaW4td2lkdGg6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHRyYW5zaXRpb246IGFsbCAwLjIycztcbiAgd2lkdGg6IDEwMCU7IH1cbiAgLmVkaXQtbGluayBhIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gICAgYm9yZGVyOiAycHggZGFzaGVkIHZhcigtLWNvbG9yLWxpbmstZWRpdC1ib3JkZXIpO1xuICAgIGNsZWFyOiBib3RoO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1saW5rLWVkaXQtdGV4dCk7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDJyZW07XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4yMnM7IH1cbiAgLmVkaXQtbGluazpmb2N1cyxcbiAgLmVkaXQtbGluayBhOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1saW5rLWVkaXQtYmFja2dyb3VuZC1ob3Zlcik7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWxpbmstZWRpdC10ZXh0LWhvdmVyKTsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLmhpZGUtb24tZGVza3RvcCB7XG4gICAgLyogc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50ICovXG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIC8qIHN0eWxlbGludC1lbmFibGUgKi8gfSB9XG5cbi8qIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudCwgYTExeS9uby1kaXNwbGF5LW5vbmUgKi9cbkBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAuaGlkZS1vbi1tb2JpbGUge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbi8qIHN0eWxlbGludC1lbmFibGUgKi9cbi8qIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudCwgYTExeS9uby1kaXNwbGF5LW5vbmUgKi9cbkBtZWRpYSAobWF4LXdpZHRoOiA5NjBweCkge1xuICAuaGlkZS1vbi1tb2JpbGUtbmF2LXZpZXcge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbi8qIHN0eWxlbGludC1lbmFibGUgKi9cbi8qIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudCwgYTExeS9uby1kaXNwbGF5LW5vbmUgKi9cbkBtZWRpYSAobWluLXdpZHRoOiA5NjBweCkge1xuICAuaGlkZS1vbi1kZXNrdG9wLW5hdi12aWV3IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG4vKiBzdHlsZWxpbnQtZW5hYmxlICovXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnQsIGExMXkvbm8tZGlzcGxheS1ub25lICovXG4uaGlkZS1jb21wbGV0ZWx5IHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi8qIHN0eWxlbGludC1lbmFibGUgKi9cbi8qIHN0eWxlbGludC1kaXNhYmxlIGExMXkvbm8tZGlzcGxheS1ub25lICovXG5AbWVkaWEgcHJpbnQge1xuICAubmF2LWNvbnRhaW5lcixcbiAgLnNpdGUtZm9vdGVyLFxuICAuc2lkZS1uYXYge1xuICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1wcm9wZXJ0eS11bml0LWFsbG93ZWQtbGlzdCAqL1xuOnJvb3Qge1xuICBmb250LXNpemU6IDYyLjUlOyB9XG5cbi8qIHN0eWxlbGludC1lbmFibGUgZGVjbGFyYXRpb24tcHJvcGVydHktdW5pdC1hbGxvd2VkLWxpc3QgKi9cbmJvZHkge1xuICBjb2xvcjogdmFyKC0tY29sb3ItcGFyYWdyYXBoKTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtcGFyYWdyYXBoKTtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtZGVmYXVsdCk7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcGFyYWdyYXBocyk7XG4gIHRleHQtcmVuZGVyaW5nOiBnZW9tZXRyaWNQcmVjaXNpb247IH1cblxucCxcbmRkLFxuZHQsXG5maWdjYXB0aW9uLFxuaHIsXG5zbWFsbCxcbm9sLFxudWwsXG5saSxcbmJsb2NrcXVvdGUsXG5rYmQsXG5wcmUsXG5zYW1wLFxuY29kZSxcbnRoLFxudGQsXG50YWJsZSxcbnRyLFxudGV4dGFyZWEsXG5zZWxlY3QsXG5pbnB1dFt0eXBlPVwidGV4dFwiXSxcbmlucHV0W3R5cGU9XCJ0ZWxcIl0sXG5pbnB1dFt0eXBlPVwidXJsXCJdLFxuaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLFxuaW5wdXRbdHlwZT1cIm51bWJlclwiXSxcbmlucHV0W3R5cGU9XCJtb250aFwiXSxcbmlucHV0W3R5cGU9XCJ3ZWVrXCJdLFxuaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXSB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXBhcmFncmFwaHMpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtcGFyYWdyYXBocyk7IH1cblxuaDEsXG5oMixcbmgzLFxuaDQsXG5oNSxcbmg2IHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWhlYWRpbmcpO1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1oZWFkaW5nKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWhlYWRpbmdzKTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tbWFyZ2luLWJldHdlZW4tcGFyYWdyYXBocyk7XG4gIG1hcmdpbi10b3A6IHZhcigtLW1hcmdpbi1iZXR3ZWVuLXBhcmFncmFwaHMpOyB9XG5cbmgyLFxuaDMsXG5oNCxcbmg1LFxuaDYge1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtaGVhZGluZ3MpOyB9XG5cbmgxIHtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaDEpOyB9XG5cbmgyIHtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaDIpOyB9XG5cbmgzIHtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaDMpOyB9XG5cbmg0IHtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaDQpOyB9XG5cbmg1IHtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaDUpOyB9XG5cbmg2IHtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaDYpOyB9XG5cbmgxOmZpcnN0LWNoaWxkLFxuaDI6Zmlyc3QtY2hpbGQsXG5oMzpmaXJzdC1jaGlsZCxcbmg0OmZpcnN0LWNoaWxkLFxuaDU6Zmlyc3QtY2hpbGQsXG5oNjpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDA7IH1cblxudWwge1xuICBsaXN0LXN0eWxlOiBkaXNjIG91dHNpZGU7XG4gIHBhZGRpbmctbGVmdDogMS45cmVtOyB9XG4gIHVsIGxpIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cblxub2wge1xuICBwYWRkaW5nLWxlZnQ6IDEuOXJlbTsgfVxuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpOyB9XG5cbmVtLFxuaSB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYzsgfVxuXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogLjg3ZW07IH1cblxucCB7XG4gIG1hcmdpbi1ib3R0b206IDIuOXJlbTtcbiAgbWFyZ2luLXRvcDogMi45cmVtOyB9XG5cbmJsb2NrcXVvdGUge1xuICBib3JkZXI6IDAgbm9uZTtcbiAgY2xlYXI6IGJvdGg7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZy1ib3R0b206IDNyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICBibG9ja3F1b3RlIHAge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1ibG9ja3F1b3RlKTtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc3MHB4KSB7XG4gICAgYmxvY2txdW90ZSB7XG4gICAgICBtYXJnaW4tdG9wOiA0cmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDRyZW07IH0gfVxuICBibG9ja3F1b3RlOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogNHB4O1xuICAgIGxlZnQ6IDA7XG4gICAgbWF4LXdpZHRoOiAxNDdweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gICAgICBibG9ja3F1b3RlOjpiZWZvcmUge1xuICAgICAgICB3aWR0aDogMzAlOyB9IH1cblxuY2l0ZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXN0eWxlOiBpdGFsaWM7IH1cblxucDpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDA7IH1cblxucDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG5pbWcge1xuICBoZWlnaHQ6IGF1dG87XG4gIC1tcy1pbnRlcnBvbGF0aW9uLW1vZGU6IGJpY3ViaWM7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuXG5maWd1cmUge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tdG9wOiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuZmlnY2FwdGlvbiB7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXBhcmFncmFwaHMpO1xuICBtYXJnaW4tdG9wOiAwOyB9XG5cbmtiZCxcbnByZSxcbnNhbXAge1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1tb25vc3BhY2UpOyB9XG5cbmNvZGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1iYWNrZ3JvdW5kLWNvZGUtaW5saW5lKTtcbiAgYm9yZGVyLXJhZGl1czogLjNyZW07XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1jb2RlLWJsb2NrKTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtbW9ub3NwYWNlKTtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xuICBwYWRkaW5nOiAuMzdyZW0gLjVyZW07IH1cbiAgcHJlIGNvZGUge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwYWRkaW5nOiAxLjE1cmVtIDFyZW0gLjg1cmVtOyB9XG5cbnByZSB7XG4gIGJvcmRlci1yYWRpdXM6IC4zcmVtO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgd2hpdGUtc3BhY2U6IHByZS13cmFwO1xuICB3b3JkLWJyZWFrOiBicmVhay1hbGw7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDsgfVxuXG4uc2l0ZS1oZWFkZXIge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1heC13aWR0aDogMTIwMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tcGFkZGluZy1zaXRlLWhlYWRlci12ZXJ0aWNhbCk7XG4gIHBhZGRpbmctbGVmdDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICBwYWRkaW5nLXRvcDogdmFyKC0tcGFkZGluZy1zaXRlLWhlYWRlci12ZXJ0aWNhbCk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTU7IH1cblxuLnNpdGUtdGl0bGUge1xuICBsaW5lLWhlaWdodDogMDtcbiAgbWFyZ2luOiAwOyB9XG4gIC5zaXRlLXRpdGxlIGEge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZGlzcGxheTogZmxleDsgfVxuXG4ubmF2LWNvbnRhaW5lciB7XG4gIHotaW5kZXg6IDEwOyB9XG5cbi5zaXRlLWZvb3RlciB7XG4gIGNsZWFyOiBib3RoO1xuICBjb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nOiA2cmVtIDJyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgLyogc3R5bGVsaW50LWRpc2FibGUgYTExeS9uby1kaXNwbGF5LW5vbmUgKi9cbiAgLyogc3R5bGVsaW50LWVuYWJsZSAqLyB9XG4gIC5zaXRlLWZvb3RlciBwLFxuICAuc2l0ZS1mb290ZXIgc3BhbiB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTsgfVxuICAuc2l0ZS1mb290ZXIgLndvcmRwcmVzcy1sb2dvIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAuc2l0ZS1mb290ZXIgc3BhbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5zaXRlLWZvb3RlciBzdmcge1xuICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuc2l0ZS1mb290ZXIgLmlzLWV4dGVybmFsLWxpbms6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5zaXRlLWZvb3RlciAucG93ZXJlZC1ieS13b3JkcHJlc3Mge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtc2VtaWJvbGQpO1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5zaXRlLWZvb3RlciAuZ2l0aHViLWxpbmsge1xuICAgIG1hcmdpbi1sZWZ0OiA4cHg7XG4gICAgbWFyZ2luLXRvcDogNHB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcGFkZGluZy1ib3R0b206IDRweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAuc2l0ZS1mb290ZXIgLmdpdGh1Yi1saW5rLmlzLWV4dGVybmFsLWxpbms6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBoZWlnaHQ6IDFweDtcbiAgICAgIG9wYWNpdHk6IC40O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiBhdXRvO1xuICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjIycztcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5zaXRlLWZvb3RlciBhIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4yMnM7IH1cbiAgICAuc2l0ZS1mb290ZXIgYTpob3ZlciwgLnNpdGUtZm9vdGVyIGE6Zm9jdXMge1xuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgICAgIG9wYWNpdHk6IC41OyB9XG4gICAgICAuc2l0ZS1mb290ZXIgYTpob3Zlcjo6YWZ0ZXIsIC5zaXRlLWZvb3RlciBhOmZvY3VzOjphZnRlciB7XG4gICAgICAgIG9wYWNpdHk6IC4yOyB9XG4gIC5zaXRlLWZvb3RlciAudGhlbWUtaW5mbyB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBsaW5lLWhlaWdodDogMS41O1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgIC5zaXRlLWZvb3RlciAudGhlbWUtaW5mbyBpIHtcbiAgICAgIG1hcmdpbjogMCA1cHg7IH1cblxuOnJvb3Qge1xuICAtLWNvbG9yLWJhY2tncm91bmQtaW5wdXQtZmllbGQ6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgLS1jb2xvci1ib3JkZXItZm9ybXM6ICNkOWQ5ZDk7XG4gIC0tY29sb3ItYm9yZGVyLWZvcm1zLWZvY3VzOiByZ2JhKDQyLCA0NSwgNjIsIC4zKTtcbiAgLS1jb2xvci1idXR0b246IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgLS1jb2xvci1idXR0b24taG92ZXI6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgLS1jb2xvci1idXR0b24tYmFja2dyb3VuZDogdmFyKC0tY29sb3ItZWFzdC1iYXkpO1xuICAtLWNvbG9yLWJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyOiB2YXIoLS1jb2xvci12YWxoYWxsYSk7XG4gIC0tY29sb3ItY2hlY2tib3g6IHZhcigtLWNvbG9yLWVhc3QtYmF5KTtcbiAgLS1jb2xvci1jaGVja2JveC1vdXRsaW5lOiAwIDAgMCAzcHggcmdiYSg4NCwgODcsIDExNSwgLjIpO1xuICAtLWNvbG9yLWNoZWNrYm94LWJvcmRlci1ob3ZlcjogbGlnaHRlbigjNTQ1NzczLCAxNSUpO1xuICAtLWNvbG9yLXBsYWNlaG9sZGVyOiB2YXIoLS1jb2xvci1wYXJhZ3JhcGgpO1xuICAtLWNvbG9yLXBsYWNlaG9sZGVyLWZvY3VzOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gIC0tb3BhY2l0eS1wbGFjZWhvbGRlcjogLjQ7XG4gIC0tb3BhY2l0eS1wbGFjZWhvbGRlci1mb2N1czogLjg7XG4gIC0tYm9yZGVyLXJhZGl1cy1jaGVja2JveDogNHB4O1xuICAtLWJvcmRlci1yYWRpdXMtaW5wdXQtZmllbGQ6IDRweDtcbiAgLS1ib3JkZXItcmFkaXVzLXNlbGVjdDogMDtcbiAgLS1ib3JkZXItd2lkdGgtY2hlY2tib3g6IDJweDtcbiAgLS1ib3JkZXItd2lkdGgtaW5wdXQtZmllbGQ6IDJweDtcbiAgLS1nYXAtY2hlY2tib3g6IDEwcHg7XG4gIC0tbGluZS1oZWlnaHQtY2hlY2tib3g6IHZhcigtLWxpbmUtaGVpZ2h0LXBhcmFncmFwaHMpO1xuICAtLXNpemUtY2hlY2tib3gtbWFya2VyOiAxMnB4O1xuICAtLXNpemUtcmFkaW8tYnV0dG9uOiAxNnB4O1xuICAtLXNpemUtcmFkaW8tYnV0dG9uLW1hcmtlcjogOHB4OyB9XG5cbi5idXR0b24td3JhcHBlciB7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLnNpdGUtbWFpbiBidXR0b24sXG4uc2l0ZS1tYWluIC5idXR0b24sXG4uc2l0ZS1tYWluIGlucHV0W3R5cGU9XCJyZXNldFwiXSxcbi5zaXRlLW1haW4gaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSxcbi5zaXRlLW1haW4gaW5wdXRbdHlwZT1cImJ1dHRvblwiXSxcbi5zaXRlLWZvb3RlciBidXR0b24sXG4uc2l0ZS1mb290ZXIgLmJ1dHRvbixcbi5zaXRlLWZvb3RlciBpbnB1dFt0eXBlPVwicmVzZXRcIl0sXG4uc2l0ZS1mb290ZXIgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSxcbi5zaXRlLWZvb3RlciBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdIHtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnV0dG9uLWJhY2tncm91bmQpO1xuICBib3JkZXI6IHZhcigtLWJvcmRlci13aWR0aC1pbnB1dC1maWVsZCkgc29saWQgdmFyKC0tY29sb3ItYnV0dG9uLWJhY2tncm91bmQpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWlucHV0LWZpZWxkKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJ1dHRvbik7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1wYXJhZ3JhcGgpO1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0xNik7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1zZW1pYm9sZCk7XG4gIGxpbmUtaGVpZ2h0OiAxOS42MzY0cHg7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIG1heC13aWR0aDogMjMwcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmctYm90dG9tOiBjYWxjKDE0cHggLSBjYWxjKHZhcigtLWJvcmRlci13aWR0aC1pbnB1dC1maWVsZCkgKiAyKSk7XG4gIHBhZGRpbmctbGVmdDogY2FsYygyMXB4IC0gY2FsYyh2YXIoLS1ib3JkZXItd2lkdGgtaW5wdXQtZmllbGQpICogMikpO1xuICBwYWRkaW5nLXJpZ2h0OiBjYWxjKDIxcHggLSBjYWxjKHZhcigtLWJvcmRlci13aWR0aC1pbnB1dC1maWVsZCkgKiAyKSk7XG4gIHBhZGRpbmctdG9wOiBjYWxjKDE0cHggLSBjYWxjKHZhcigtLWJvcmRlci13aWR0aC1pbnB1dC1maWVsZCkgKiAyKSk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgdHJhbnNpdGlvbjogYWxsIDAuMDhzIGN1YmljLWJlemllcigwLjI1LCAwLjQ2LCAwLjQ1LCAwLjk0KTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgd2lkdGg6IGF1dG87XG4gIC8qIHN0eWxlbGludC1kaXNhYmxlIGExMXkvbm8tZGlzcGxheS1ub25lICovXG4gIC8qIHN0eWxlbGludC1lbmFibGUgKi8gfVxuICAuc2l0ZS1tYWluIGJ1dHRvbi5pcy1leHRlcm5hbC1saW5rOjphZnRlcixcbiAgLnNpdGUtbWFpbiAuYnV0dG9uLmlzLWV4dGVybmFsLWxpbms6OmFmdGVyLFxuICAuc2l0ZS1tYWluIGlucHV0W3R5cGU9XCJyZXNldFwiXS5pcy1leHRlcm5hbC1saW5rOjphZnRlcixcbiAgLnNpdGUtbWFpbiBpbnB1dFt0eXBlPVwic3VibWl0XCJdLmlzLWV4dGVybmFsLWxpbms6OmFmdGVyLFxuICAuc2l0ZS1tYWluIGlucHV0W3R5cGU9XCJidXR0b25cIl0uaXMtZXh0ZXJuYWwtbGluazo6YWZ0ZXIsXG4gIC5zaXRlLWZvb3RlciBidXR0b24uaXMtZXh0ZXJuYWwtbGluazo6YWZ0ZXIsXG4gIC5zaXRlLWZvb3RlciAuYnV0dG9uLmlzLWV4dGVybmFsLWxpbms6OmFmdGVyLFxuICAuc2l0ZS1mb290ZXIgaW5wdXRbdHlwZT1cInJlc2V0XCJdLmlzLWV4dGVybmFsLWxpbms6OmFmdGVyLFxuICAuc2l0ZS1mb290ZXIgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXS5pcy1leHRlcm5hbC1saW5rOjphZnRlcixcbiAgLnNpdGUtZm9vdGVyIGlucHV0W3R5cGU9XCJidXR0b25cIl0uaXMtZXh0ZXJuYWwtbGluazo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLnNpdGUtbWFpbiBidXR0b24uZm9jdXMsIC5zaXRlLW1haW4gYnV0dG9uOmhvdmVyLCAuc2l0ZS1tYWluIGJ1dHRvbjpmb2N1cyxcbiAgLnNpdGUtbWFpbiAuYnV0dG9uLmZvY3VzLFxuICAuc2l0ZS1tYWluIC5idXR0b246aG92ZXIsXG4gIC5zaXRlLW1haW4gLmJ1dHRvbjpmb2N1cyxcbiAgLnNpdGUtbWFpbiBpbnB1dFt0eXBlPVwicmVzZXRcIl0uZm9jdXMsXG4gIC5zaXRlLW1haW4gaW5wdXRbdHlwZT1cInJlc2V0XCJdOmhvdmVyLFxuICAuc2l0ZS1tYWluIGlucHV0W3R5cGU9XCJyZXNldFwiXTpmb2N1cyxcbiAgLnNpdGUtbWFpbiBpbnB1dFt0eXBlPVwic3VibWl0XCJdLmZvY3VzLFxuICAuc2l0ZS1tYWluIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06aG92ZXIsXG4gIC5zaXRlLW1haW4gaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpmb2N1cyxcbiAgLnNpdGUtbWFpbiBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdLmZvY3VzLFxuICAuc2l0ZS1tYWluIGlucHV0W3R5cGU9XCJidXR0b25cIl06aG92ZXIsXG4gIC5zaXRlLW1haW4gaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpmb2N1cyxcbiAgLnNpdGUtZm9vdGVyIGJ1dHRvbi5mb2N1cyxcbiAgLnNpdGUtZm9vdGVyIGJ1dHRvbjpob3ZlcixcbiAgLnNpdGUtZm9vdGVyIGJ1dHRvbjpmb2N1cyxcbiAgLnNpdGUtZm9vdGVyIC5idXR0b24uZm9jdXMsXG4gIC5zaXRlLWZvb3RlciAuYnV0dG9uOmhvdmVyLFxuICAuc2l0ZS1mb290ZXIgLmJ1dHRvbjpmb2N1cyxcbiAgLnNpdGUtZm9vdGVyIGlucHV0W3R5cGU9XCJyZXNldFwiXS5mb2N1cyxcbiAgLnNpdGUtZm9vdGVyIGlucHV0W3R5cGU9XCJyZXNldFwiXTpob3ZlcixcbiAgLnNpdGUtZm9vdGVyIGlucHV0W3R5cGU9XCJyZXNldFwiXTpmb2N1cyxcbiAgLnNpdGUtZm9vdGVyIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0uZm9jdXMsXG4gIC5zaXRlLWZvb3RlciBpbnB1dFt0eXBlPVwic3VibWl0XCJdOmhvdmVyLFxuICAuc2l0ZS1mb290ZXIgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpmb2N1cyxcbiAgLnNpdGUtZm9vdGVyIGlucHV0W3R5cGU9XCJidXR0b25cIl0uZm9jdXMsXG4gIC5zaXRlLWZvb3RlciBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOmhvdmVyLFxuICAuc2l0ZS1mb290ZXIgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnV0dG9uLWJhY2tncm91bmQtaG92ZXIpO1xuICAgIGJvcmRlcjogdmFyKC0tYm9yZGVyLXdpZHRoLWlucHV0LWZpZWxkKSBzb2xpZCB2YXIoLS1jb2xvci1idXR0b24tYmFja2dyb3VuZC1ob3Zlcik7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWJ1dHRvbi1ob3Zlcik7IH1cbiAgLnNpdGUtbWFpbiBidXR0b24uYnV0dG9uLXNtYWxsLFxuICAuc2l0ZS1tYWluIC5idXR0b24uYnV0dG9uLXNtYWxsLFxuICAuc2l0ZS1tYWluIGlucHV0W3R5cGU9XCJyZXNldFwiXS5idXR0b24tc21hbGwsXG4gIC5zaXRlLW1haW4gaW5wdXRbdHlwZT1cInN1Ym1pdFwiXS5idXR0b24tc21hbGwsXG4gIC5zaXRlLW1haW4gaW5wdXRbdHlwZT1cImJ1dHRvblwiXS5idXR0b24tc21hbGwsXG4gIC5zaXRlLWZvb3RlciBidXR0b24uYnV0dG9uLXNtYWxsLFxuICAuc2l0ZS1mb290ZXIgLmJ1dHRvbi5idXR0b24tc21hbGwsXG4gIC5zaXRlLWZvb3RlciBpbnB1dFt0eXBlPVwicmVzZXRcIl0uYnV0dG9uLXNtYWxsLFxuICAuc2l0ZS1mb290ZXIgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXS5idXR0b24tc21hbGwsXG4gIC5zaXRlLWZvb3RlciBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdLmJ1dHRvbi1zbWFsbCB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtMTYpO1xuICAgIGxpbmUtaGVpZ2h0OiAyMC45MDkxcHg7XG4gICAgcGFkZGluZy1ib3R0b206IGNhbGMoMTBweCAtIGNhbGModmFyKC0tYm9yZGVyLXdpZHRoLWlucHV0LWZpZWxkKSAqIDIpKTtcbiAgICBwYWRkaW5nLWxlZnQ6IGNhbGMoMjFweCAtIGNhbGModmFyKC0tYm9yZGVyLXdpZHRoLWlucHV0LWZpZWxkKSAqIDIpKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiBjYWxjKDIxcHggLSBjYWxjKHZhcigtLWJvcmRlci13aWR0aC1pbnB1dC1maWVsZCkgKiAyKSk7XG4gICAgcGFkZGluZy10b3A6IGNhbGMoMTBweCAtIGNhbGModmFyKC0tYm9yZGVyLXdpZHRoLWlucHV0LWZpZWxkKSAqIDIpKTsgfVxuICAuc2l0ZS1tYWluIGJ1dHRvbi5idXR0b24tbGFyZ2UsXG4gIC5zaXRlLW1haW4gLmJ1dHRvbi5idXR0b24tbGFyZ2UsXG4gIC5zaXRlLW1haW4gaW5wdXRbdHlwZT1cInJlc2V0XCJdLmJ1dHRvbi1sYXJnZSxcbiAgLnNpdGUtbWFpbiBpbnB1dFt0eXBlPVwic3VibWl0XCJdLmJ1dHRvbi1sYXJnZSxcbiAgLnNpdGUtbWFpbiBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdLmJ1dHRvbi1sYXJnZSxcbiAgLnNpdGUtZm9vdGVyIGJ1dHRvbi5idXR0b24tbGFyZ2UsXG4gIC5zaXRlLWZvb3RlciAuYnV0dG9uLmJ1dHRvbi1sYXJnZSxcbiAgLnNpdGUtZm9vdGVyIGlucHV0W3R5cGU9XCJyZXNldFwiXS5idXR0b24tbGFyZ2UsXG4gIC5zaXRlLWZvb3RlciBpbnB1dFt0eXBlPVwic3VibWl0XCJdLmJ1dHRvbi1sYXJnZSxcbiAgLnNpdGUtZm9vdGVyIGlucHV0W3R5cGU9XCJidXR0b25cIl0uYnV0dG9uLWxhcmdlIHtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0xOCk7XG4gICAgbGluZS1oZWlnaHQ6IDIzLjA5MDlweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogY2FsYygxN3B4IC0gY2FsYyh2YXIoLS1ib3JkZXItd2lkdGgtaW5wdXQtZmllbGQpICogMikpO1xuICAgIHBhZGRpbmctbGVmdDogY2FsYygyMXB4IC0gY2FsYyh2YXIoLS1ib3JkZXItd2lkdGgtaW5wdXQtZmllbGQpICogMikpO1xuICAgIHBhZGRpbmctcmlnaHQ6IGNhbGMoMjFweCAtIGNhbGModmFyKC0tYm9yZGVyLXdpZHRoLWlucHV0LWZpZWxkKSAqIDIpKTtcbiAgICBwYWRkaW5nLXRvcDogY2FsYygxN3B4IC0gY2FsYyh2YXIoLS1ib3JkZXItd2lkdGgtaW5wdXQtZmllbGQpICogMikpOyB9XG4gIC5zaXRlLW1haW4gYnV0dG9uLmJ1dHRvbi1naG9zdCxcbiAgLnNpdGUtbWFpbiAuYnV0dG9uLmJ1dHRvbi1naG9zdCxcbiAgLnNpdGUtbWFpbiBpbnB1dFt0eXBlPVwicmVzZXRcIl0uYnV0dG9uLWdob3N0LFxuICAuc2l0ZS1tYWluIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0uYnV0dG9uLWdob3N0LFxuICAuc2l0ZS1tYWluIGlucHV0W3R5cGU9XCJidXR0b25cIl0uYnV0dG9uLWdob3N0LFxuICAuc2l0ZS1mb290ZXIgYnV0dG9uLmJ1dHRvbi1naG9zdCxcbiAgLnNpdGUtZm9vdGVyIC5idXR0b24uYnV0dG9uLWdob3N0LFxuICAuc2l0ZS1mb290ZXIgaW5wdXRbdHlwZT1cInJlc2V0XCJdLmJ1dHRvbi1naG9zdCxcbiAgLnNpdGUtZm9vdGVyIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0uYnV0dG9uLWdob3N0LFxuICAuc2l0ZS1mb290ZXIgaW5wdXRbdHlwZT1cImJ1dHRvblwiXS5idXR0b24tZ2hvc3Qge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogdmFyKC0tYm9yZGVyLXdpZHRoLWlucHV0LWZpZWxkKSBzb2xpZCB2YXIoLS1jb2xvci1idXR0b24tYmFja2dyb3VuZCk7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1pbnB1dC1maWVsZCk7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWJ1dHRvbi1iYWNrZ3JvdW5kKTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4wOHMgY3ViaWMtYmV6aWVyKDAuMjUsIDAuNDYsIDAuNDUsIDAuOTQpOyB9XG4gICAgLnNpdGUtbWFpbiBidXR0b24uYnV0dG9uLWdob3N0LmZvY3VzLCAuc2l0ZS1tYWluIGJ1dHRvbi5idXR0b24tZ2hvc3Q6Zm9jdXMsIC5zaXRlLW1haW4gYnV0dG9uLmJ1dHRvbi1naG9zdDpob3ZlcixcbiAgICAuc2l0ZS1tYWluIC5idXR0b24uYnV0dG9uLWdob3N0LmZvY3VzLFxuICAgIC5zaXRlLW1haW4gLmJ1dHRvbi5idXR0b24tZ2hvc3Q6Zm9jdXMsXG4gICAgLnNpdGUtbWFpbiAuYnV0dG9uLmJ1dHRvbi1naG9zdDpob3ZlcixcbiAgICAuc2l0ZS1tYWluIGlucHV0W3R5cGU9XCJyZXNldFwiXS5idXR0b24tZ2hvc3QuZm9jdXMsXG4gICAgLnNpdGUtbWFpbiBpbnB1dFt0eXBlPVwicmVzZXRcIl0uYnV0dG9uLWdob3N0OmZvY3VzLFxuICAgIC5zaXRlLW1haW4gaW5wdXRbdHlwZT1cInJlc2V0XCJdLmJ1dHRvbi1naG9zdDpob3ZlcixcbiAgICAuc2l0ZS1tYWluIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0uYnV0dG9uLWdob3N0LmZvY3VzLFxuICAgIC5zaXRlLW1haW4gaW5wdXRbdHlwZT1cInN1Ym1pdFwiXS5idXR0b24tZ2hvc3Q6Zm9jdXMsXG4gICAgLnNpdGUtbWFpbiBpbnB1dFt0eXBlPVwic3VibWl0XCJdLmJ1dHRvbi1naG9zdDpob3ZlcixcbiAgICAuc2l0ZS1tYWluIGlucHV0W3R5cGU9XCJidXR0b25cIl0uYnV0dG9uLWdob3N0LmZvY3VzLFxuICAgIC5zaXRlLW1haW4gaW5wdXRbdHlwZT1cImJ1dHRvblwiXS5idXR0b24tZ2hvc3Q6Zm9jdXMsXG4gICAgLnNpdGUtbWFpbiBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdLmJ1dHRvbi1naG9zdDpob3ZlcixcbiAgICAuc2l0ZS1mb290ZXIgYnV0dG9uLmJ1dHRvbi1naG9zdC5mb2N1cyxcbiAgICAuc2l0ZS1mb290ZXIgYnV0dG9uLmJ1dHRvbi1naG9zdDpmb2N1cyxcbiAgICAuc2l0ZS1mb290ZXIgYnV0dG9uLmJ1dHRvbi1naG9zdDpob3ZlcixcbiAgICAuc2l0ZS1mb290ZXIgLmJ1dHRvbi5idXR0b24tZ2hvc3QuZm9jdXMsXG4gICAgLnNpdGUtZm9vdGVyIC5idXR0b24uYnV0dG9uLWdob3N0OmZvY3VzLFxuICAgIC5zaXRlLWZvb3RlciAuYnV0dG9uLmJ1dHRvbi1naG9zdDpob3ZlcixcbiAgICAuc2l0ZS1mb290ZXIgaW5wdXRbdHlwZT1cInJlc2V0XCJdLmJ1dHRvbi1naG9zdC5mb2N1cyxcbiAgICAuc2l0ZS1mb290ZXIgaW5wdXRbdHlwZT1cInJlc2V0XCJdLmJ1dHRvbi1naG9zdDpmb2N1cyxcbiAgICAuc2l0ZS1mb290ZXIgaW5wdXRbdHlwZT1cInJlc2V0XCJdLmJ1dHRvbi1naG9zdDpob3ZlcixcbiAgICAuc2l0ZS1mb290ZXIgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXS5idXR0b24tZ2hvc3QuZm9jdXMsXG4gICAgLnNpdGUtZm9vdGVyIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0uYnV0dG9uLWdob3N0OmZvY3VzLFxuICAgIC5zaXRlLWZvb3RlciBpbnB1dFt0eXBlPVwic3VibWl0XCJdLmJ1dHRvbi1naG9zdDpob3ZlcixcbiAgICAuc2l0ZS1mb290ZXIgaW5wdXRbdHlwZT1cImJ1dHRvblwiXS5idXR0b24tZ2hvc3QuZm9jdXMsXG4gICAgLnNpdGUtZm9vdGVyIGlucHV0W3R5cGU9XCJidXR0b25cIl0uYnV0dG9uLWdob3N0OmZvY3VzLFxuICAgIC5zaXRlLWZvb3RlciBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdLmJ1dHRvbi1naG9zdDpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1idXR0b24tYmFja2dyb3VuZCk7XG4gICAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWJ1dHRvbi1iYWNrZ3JvdW5kKTtcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7IH1cblxuc2VsZWN0IHtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vLi4vc3ZnL3NlbGVjdC5zdmdcIik7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IDAgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IDQwcHggYXV0bztcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1ib3JkZXItZm9ybXMpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNlbGVjdCk7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogdmFyKC0tYm9yZGVyLXdpZHRoLWlucHV0LWZpZWxkKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXBhcmFncmFwaCk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTE3KTtcbiAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWluLXdpZHRoOiAwO1xuICBwYWRkaW5nOiAxNXB4O1xuICB0ZXh0LWluZGVudDogMXB4O1xuICB0cmFuc2l0aW9uOiBub25lO1xuICB3aWR0aDogMTAwJTsgfVxuXG50ZXh0YXJlYSxcbnNlbGVjdCxcbmlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuaW5wdXRbdHlwZT1cInRlbFwiXSxcbmlucHV0W3R5cGU9XCJ1cmxcIl0sXG5pbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0sXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdLFxuaW5wdXRbdHlwZT1cIm1vbnRoXCJdLFxuaW5wdXRbdHlwZT1cIndlZWtcIl0sXG5pbnB1dFt0eXBlPVwiZW1haWxcIl0sXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmFja2dyb3VuZC1pbnB1dC1maWVsZCk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItYm9yZGVyLWZvcm1zKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1pbnB1dC1maWVsZCk7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogdmFyKC0tYm9yZGVyLXdpZHRoLWlucHV0LWZpZWxkKTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtcGFyYWdyYXBoKTtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtMTcpO1xuICBsaW5lLWhlaWdodDogMjRweDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZzogMTVweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgLjU1czsgfVxuICB0ZXh0YXJlYTo6cGxhY2Vob2xkZXIsXG4gIHNlbGVjdDo6cGxhY2Vob2xkZXIsXG4gIGlucHV0W3R5cGU9XCJ0ZXh0XCJdOjpwbGFjZWhvbGRlcixcbiAgaW5wdXRbdHlwZT1cInRlbFwiXTo6cGxhY2Vob2xkZXIsXG4gIGlucHV0W3R5cGU9XCJ1cmxcIl06OnBsYWNlaG9sZGVyLFxuICBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl06OnBsYWNlaG9sZGVyLFxuICBpbnB1dFt0eXBlPVwibnVtYmVyXCJdOjpwbGFjZWhvbGRlcixcbiAgaW5wdXRbdHlwZT1cIm1vbnRoXCJdOjpwbGFjZWhvbGRlcixcbiAgaW5wdXRbdHlwZT1cIndlZWtcIl06OnBsYWNlaG9sZGVyLFxuICBpbnB1dFt0eXBlPVwiZW1haWxcIl06OnBsYWNlaG9sZGVyLFxuICBpbnB1dFt0eXBlPVwic2VhcmNoXCJdOjpwbGFjZWhvbGRlciB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLXBsYWNlaG9sZGVyKTtcbiAgICBvcGFjaXR5OiB2YXIoLS1vcGFjaXR5LXBsYWNlaG9sZGVyKTsgfVxuICB0ZXh0YXJlYTpmb2N1cyxcbiAgc2VsZWN0OmZvY3VzLFxuICBpbnB1dFt0eXBlPVwidGV4dFwiXTpmb2N1cyxcbiAgaW5wdXRbdHlwZT1cInRlbFwiXTpmb2N1cyxcbiAgaW5wdXRbdHlwZT1cInVybFwiXTpmb2N1cyxcbiAgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdOmZvY3VzLFxuICBpbnB1dFt0eXBlPVwibnVtYmVyXCJdOmZvY3VzLFxuICBpbnB1dFt0eXBlPVwibW9udGhcIl06Zm9jdXMsXG4gIGlucHV0W3R5cGU9XCJ3ZWVrXCJdOmZvY3VzLFxuICBpbnB1dFt0eXBlPVwiZW1haWxcIl06Zm9jdXMsXG4gIGlucHV0W3R5cGU9XCJzZWFyY2hcIl06Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJhY2tncm91bmQtaW5wdXQtZmllbGQpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItYm9yZGVyLWZvcm1zLWZvY3VzKTsgfVxuICAgIHRleHRhcmVhOmZvY3VzOjpwbGFjZWhvbGRlcixcbiAgICBzZWxlY3Q6Zm9jdXM6OnBsYWNlaG9sZGVyLFxuICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdOmZvY3VzOjpwbGFjZWhvbGRlcixcbiAgICBpbnB1dFt0eXBlPVwidGVsXCJdOmZvY3VzOjpwbGFjZWhvbGRlcixcbiAgICBpbnB1dFt0eXBlPVwidXJsXCJdOmZvY3VzOjpwbGFjZWhvbGRlcixcbiAgICBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl06Zm9jdXM6OnBsYWNlaG9sZGVyLFxuICAgIGlucHV0W3R5cGU9XCJudW1iZXJcIl06Zm9jdXM6OnBsYWNlaG9sZGVyLFxuICAgIGlucHV0W3R5cGU9XCJtb250aFwiXTpmb2N1czo6cGxhY2Vob2xkZXIsXG4gICAgaW5wdXRbdHlwZT1cIndlZWtcIl06Zm9jdXM6OnBsYWNlaG9sZGVyLFxuICAgIGlucHV0W3R5cGU9XCJlbWFpbFwiXTpmb2N1czo6cGxhY2Vob2xkZXIsXG4gICAgaW5wdXRbdHlwZT1cInNlYXJjaFwiXTpmb2N1czo6cGxhY2Vob2xkZXIge1xuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXBsYWNlaG9sZGVyLWZvY3VzKTtcbiAgICAgIG9wYWNpdHk6IHZhcigtLW9wYWNpdHktcGxhY2Vob2xkZXItZm9jdXMpOyB9XG5cbmlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gIGhlaWdodDogdmFyKC0tc2l6ZS1yYWRpby1idXR0b24pO1xuICBtYXJnaW46IDA7XG4gIG1hcmdpbi10b3A6IGNhbGMoKDFlbSAqIHZhcigtLWxpbmUtaGVpZ2h0LWNoZWNrYm94KSAtIHZhcigtLXNpemUtcmFkaW8tYnV0dG9uKSkgLyAyKTtcbiAgb3BhY2l0eTogMDtcbiAgcGFkZGluZzogMDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IHZhcigtLXNpemUtcmFkaW8tYnV0dG9uKTsgfVxuXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0gKyBsYWJlbCxcbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSArIGxhYmVsIHtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1jaGVja2JveCk7IH1cblxuaW5wdXRbdHlwZT1cInJhZGlvXCJdICsgbGFiZWw6OmJlZm9yZSxcbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSArIGxhYmVsOjpiZWZvcmUge1xuICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWNoZWNrYm94KTtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXdpZHRoOiB2YXIoLS1ib3JkZXItd2lkdGgtY2hlY2tib3gpO1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICBoZWlnaHQ6IHZhcigtLXNpemUtcmFkaW8tYnV0dG9uKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1nYXAtY2hlY2tib3gpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogY2FsYyh2YXIoLS1ib3JkZXItd2lkdGgtY2hlY2tib3gpIC8gMik7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuMnMsIGJvcmRlciAuMnM7XG4gIHdpZHRoOiB2YXIoLS1zaXplLXJhZGlvLWJ1dHRvbik7IH1cblxuaW5wdXRbdHlwZT1cInJhZGlvXCJdICsgbGFiZWw6OmJlZm9yZSB7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTsgfVxuXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0gKyBsYWJlbDo6YmVmb3JlIHtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1jaGVja2JveCk7IH1cblxuaW5wdXRbdHlwZT1cInJhZGlvXCJdOmNoZWNrZWQgKyBsYWJlbDo6YmVmb3JlLFxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQgKyBsYWJlbDo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItY2hlY2tib3gpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWNoZWNrYm94KTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4yczsgfVxuXG5pbnB1dFt0eXBlPVwicmFkaW9cIl06YWN0aXZlICsgbGFiZWw6OmJlZm9yZSxcbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXTphY3RpdmUgKyBsYWJlbDo6YmVmb3JlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjgpO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjJzOyB9XG5cbmlucHV0W3R5cGU9XCJyYWRpb1wiXTpjaGVja2VkICsgbGFiZWw6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsICUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNiclM0UlM0NnIGNsYXNzPSduYy1pY29uLXdyYXBwZXInIGZpbGw9JyUyM2ZmZmZmZiclM0UlM0NjaXJjbGUgY3g9JzgnIGN5PSc4JyByPSc4JyBmaWxsPSclMjNmZmZmZmYnJTNFJTNDL2NpcmNsZSUzRSUzQy9nJTNFJTNDL3N2ZyUzRVwiKTtcbiAgYmFja2dyb3VuZC1zaXplOiB2YXIoLS1zaXplLXJhZGlvLWJ1dHRvbi1tYXJrZXIpOyB9XG5cbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkICsgbGFiZWw6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwgJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzEyJyBoZWlnaHQ9JzEyJyB2aWV3Qm94PScwIDAgMTIgMTInJTNFJTNDcG9seWxpbmUgcG9pbnRzPScxIDYuNSA0IDkuNSAxMSAyLjUnIGZpbGw9J25vbmUnIHN0cm9rZT0nJTIzRkZGRkZGJyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIHN0cm9rZS13aWR0aD0nMicvJTNFJTNDL3N2ZyUzRVwiKTtcbiAgYmFja2dyb3VuZC1zaXplOiB2YXIoLS1zaXplLWNoZWNrYm94LW1hcmtlcik7IH1cblxuaW5wdXRbdHlwZT1cInJhZGlvXCJdOmZvY3VzICsgbGFiZWw6OmJlZm9yZSxcbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpmb2N1cyArIGxhYmVsOjpiZWZvcmUsXG5pbnB1dFt0eXBlPVwicmFkaW9cIl06Y2hlY2tlZDphY3RpdmUgKyBsYWJlbDo6YmVmb3JlLFxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQ6YWN0aXZlICsgbGFiZWw6OmJlZm9yZSB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItY2hlY2tib3gpO1xuICBib3gtc2hhZG93OiB2YXIoLS1jb2xvci1jaGVja2JveC1vdXRsaW5lKTsgfVxuXG5pbnB1dFt0eXBlPVwicmFkaW9cIl06Y2hlY2tlZDphY3RpdmUgKyBsYWJlbDo6YmVmb3JlLFxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQ6YWN0aXZlICsgbGFiZWw6OmJlZm9yZSB7XG4gIHRyYW5zZm9ybTogbm9uZTtcbiAgdHJhbnNpdGlvbjogbm9uZTsgfVxuXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1tYXgtcHNldWRvLWNsYXNzICovXG5pbnB1dFt0eXBlPVwicmFkaW9cIl06bm90KDpjaGVja2VkKTpub3QoOmZvY3VzKSArIGxhYmVsOmhvdmVyOjpiZWZvcmUsXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06bm90KDpjaGVja2VkKTpub3QoOmZvY3VzKSArIGxhYmVsOmhvdmVyOjpiZWZvcmUge1xuICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWNoZWNrYm94LWJvcmRlci1ob3Zlcik7IH1cblxuLyogc3R5bGVsaW50LWVuYWJsZSBzZWxlY3Rvci1tYXgtcHNldWRvLWNsYXNzICovXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBuby1kZXNjZW5kaW5nLXNwZWNpZmljaXR5ICovXG4uY2F0IHtcbiAgbWFyZ2luLWJvdHRvbTogLjVyZW07XG4gIG1hcmdpbi10b3A6IDRyZW07IH1cbiAgLmNhdCBhIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWNhdGVnb3J5LWJvcmRlcik7XG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXdpZHRoOiAxcHggMXB4IDJweDtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1jYXRlZ29yeS10ZXh0KTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtMTYpO1xuICAgIG1hcmdpbi1ib3R0b206IC41cmVtO1xuICAgIG1hcmdpbi1yaWdodDogLjVlbTtcbiAgICBwYWRkaW5nOiAuMmVtIC42ZW07XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMjJzOyB9XG4gIC5jYXQgYTpob3ZlcixcbiAgLmNhdCBhOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLXRhZy1ib3JkZXItaG92ZXIpOyB9XG5cbi50YWdzIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tbWFyZ2luLWJldHdlZW4tdGV4dC1lbGVtZW50cyk7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgLnRhZ3MgbGkge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gIC50YWdzIGEge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItdGFnLWJvcmRlcik7XG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXdpZHRoOiAxcHggMXB4IDJweDtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci10YWctdGV4dCk7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTE0KTtcbiAgICBtYXJnaW4tcmlnaHQ6IC40ZW07XG4gICAgcGFkZGluZzogLjJlbSAuNmVtO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjIyczsgfVxuICAudGFncyBhOmhvdmVyLFxuICAudGFncyBhOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLXRhZy1ib3JkZXItaG92ZXIpOyB9XG5cbi5wb3N0LW5hdmlnYXRpb24gLm5hdi1saW5rcyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG5cbjpyb290IHtcbiAgLS1jb2xvci1ib3JkZXItc3RpY2t5OiAjZDdlNGYyO1xuICAtLWNvbG9yLWJ5cG9zdGF1dGhvcjogcmdiYSg0MiwgNDUsIDYyLCAuNSk7IH1cblxuLnN0aWNreSB7XG4gIGJvcmRlcjogMXB4IGRhc2hlZCB2YXIoLS1jb2xvci1ib3JkZXItc3RpY2t5KTtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgcGFkZGluZzogMnJlbTsgfVxuXG4uY29tbWVudC1saXN0IGxpLmJ5cG9zdGF1dGhvcixcbi5ieXBvc3RhdXRob3Ige1xuICBib3JkZXI6IDFweCBkYXNoZWQgdmFyKC0tY29sb3ItYnlwb3N0YXV0aG9yKTtcbiAgcGFkZGluZzogMnJlbTsgfVxuXG4ud3AtY2FwdGlvbiB7XG4gIG1heC13aWR0aDogMTAwJTsgfVxuICAud3AtY2FwdGlvbiBpbWdbY2xhc3MqPVwid3AtaW1hZ2UtXCJdIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDAgYXV0bzsgfVxuICAud3AtY2FwdGlvbiAud3AtY2FwdGlvbi10ZXh0IHtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICBwYWRkaW5nOiAxcmVtIDA7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuXG4uc2l0ZS1mb290ZXIgLnRvcCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBwYWRkaW5nOiAxNnB4OyB9XG4gIC5zaXRlLWZvb3RlciAudG9wIHN2ZyB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZpbGw6IHZhcigtLWNvbG9yLXRvcC1hcnJvdy1kYXJrKTtcbiAgICBoZWlnaHQ6IDE4cHg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgbWFyZ2luOiAwO1xuICAgIG9wYWNpdHk6IC44O1xuICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTtcbiAgICB3aWR0aDogMThweDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAgICAgLnNpdGUtZm9vdGVyIC50b3Agc3ZnIHtcbiAgICAgICAgaGVpZ2h0OiAxNXB4O1xuICAgICAgICB3aWR0aDogMTVweDsgfSB9XG4gIC5zaXRlLWZvb3RlciAudG9wOmhvdmVyLCAuc2l0ZS1mb290ZXIgLnRvcDpmb2N1cywgLnNpdGUtZm9vdGVyIC50b3A6YWN0aXZlIHtcbiAgICBvcGFjaXR5OiAxOyB9XG4gICAgLnNpdGUtZm9vdGVyIC50b3A6aG92ZXIgc3ZnLCAuc2l0ZS1mb290ZXIgLnRvcDpmb2N1cyBzdmcsIC5zaXRlLWZvb3RlciAudG9wOmFjdGl2ZSBzdmcge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0wLjVyZW0pOyB9XG5cbi5zaXRlLWZvb3RlciAuYmFjay10by10b3Age1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBib3R0b206IDFyZW07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBtYXJnaW46IDA7XG4gIG9wYWNpdHk6IDA7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgcmlnaHQ6IDFyZW07XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjIycyAwcywgdmlzaWJpbGl0eSAwcyAwLjIycztcbiAgei1pbmRleDogOTk5OTsgfVxuICAuc2l0ZS1mb290ZXIgLmJhY2stdG8tdG9wLmhhcy1saWdodC1iZyBzdmcge1xuICAgIGZpbGw6IHZhcigtLWNvbG9yLXRvcC1hcnJvdy1kYXJrKTsgfVxuICAuc2l0ZS1mb290ZXIgLmJhY2stdG8tdG9wLmhhcy1kYXJrLWJnIHN2ZyB7XG4gICAgZmlsbDogdmFyKC0tY29sb3ItdG9wLWFycm93LWxpZ2h0KTsgfVxuICAuc2l0ZS1mb290ZXIgLmJhY2stdG8tdG9wLmlzLXZpc2libGUsIC5zaXRlLWZvb3RlciAuYmFjay10by10b3AuZmFkZS1vdXQge1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4yMnMgMHMsIHZpc2liaWxpdHkgMHMgMHM7IH1cbiAgLnNpdGUtZm9vdGVyIC5iYWNrLXRvLXRvcC5pcy12aXNpYmxlIHtcbiAgICBvcGFjaXR5OiAxOyB9XG4gIC5zaXRlLWZvb3RlciAuYmFjay10by10b3AuZmFkZS1vdXQge1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgICAuc2l0ZS1mb290ZXIgLmJhY2stdG8tdG9wLmZhZGUtb3V0OmZvY3VzLCAuc2l0ZS1mb290ZXIgLmJhY2stdG8tdG9wLmZhZGUtb3V0OmhvdmVyIHtcbiAgICAgIG9wYWNpdHk6IDE7IH1cblxuLmdhbGxlcnkge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLWdhcDogMS41ZW07XG4gIG1hcmdpbi1ib3R0b206IDEuNWVtOyB9XG5cbi5nYWxsZXJ5LWl0ZW0ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLmdhbGxlcnktY29sdW1ucy0yIHtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTsgfVxuXG4uZ2FsbGVyeS1jb2x1bW5zLTMge1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCAxZnIpOyB9XG5cbi5nYWxsZXJ5LWNvbHVtbnMtNCB7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDQsIDFmcik7IH1cblxuLmdhbGxlcnktY29sdW1ucy01IHtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNSwgMWZyKTsgfVxuXG4uZ2FsbGVyeS1jb2x1bW5zLTYge1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg2LCAxZnIpOyB9XG5cbi5nYWxsZXJ5LWNvbHVtbnMtNyB7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDcsIDFmcik7IH1cblxuLmdhbGxlcnktY29sdW1ucy04IHtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoOCwgMWZyKTsgfVxuXG4uZ2FsbGVyeS1jb2x1bW5zLTkge1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg5LCAxZnIpOyB9XG5cbi5nYWxsZXJ5LWNhcHRpb24ge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG5kaXYubGF6eSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgaGVpZ2h0OiAxMDAlO1xuICBsZWZ0OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDA7IH1cblxuLmhhcy1sYXp5bG9hZCB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBhMTF5L2ZvbnQtc2l6ZS1pcy1yZWFkYWJsZSAqL1xuLm5hdmlnYXRpb246bm90KC5wb3N0LW5hdmlnYXRpb24pIC5uYXYtbGlua3Mge1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgZGlzcGxheTogZmxleDtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtaGVhZGluZyk7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICBtYXJnaW4tdG9wOiA0cmVtO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB3aWR0aDogMTAwJTsgfVxuICAubmF2aWdhdGlvbjpub3QoLnBvc3QtbmF2aWdhdGlvbikgLm5hdi1saW5rcyBhIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuLyogc3R5bGVsaW50LWVuYWJsZSAqL1xuLnBhZ2UtbnVtYmVycyB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIHZhcigtLWNvbG9yLWJsdWUtY2hhbGspO1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJsdWUtY2hhbGspO1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ibHVlLWNoYWxrKTtcbiAgYm9yZGVyLXRvcDogMnB4IHNvbGlkIHZhcigtLWNvbG9yLWJsdWUtY2hhbGspO1xuICBjb2xvcjogdmFyKC0tY29sb3ItcGFnaW5hdGlvbi10ZXh0KTtcbiAgZGlzcGxheTogZmxleDtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW1lZGl1bSk7XG4gIGhlaWdodDogMzVweDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIHRyYW5zaXRpb246IGFsbCAwLjIycztcbiAgd2lkdGg6IDM1cHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDYwMHB4KSB7XG4gICAgLnBhZ2UtbnVtYmVycyB7XG4gICAgICBoZWlnaHQ6IDI2cHg7XG4gICAgICB3aWR0aDogMjZweDsgfSB9XG4gIC5wYWdlLW51bWJlcnM6bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogNHB4O1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDRweDsgfVxuICAucGFnZS1udW1iZXJzOmZpcnN0LWNoaWxkIHtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiA0cHg7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogNHB4O1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwOyB9XG5cbmEucGFnZS1udW1iZXJzOmhvdmVyLFxuYS5wYWdlLW51bWJlcnM6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1wYWdpbmF0aW9uLWJhY2tncm91bmQtaG92ZXIpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLXBhZ2luYXRpb24tYm9yZGVyLWhvdmVyKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXBhZ2luYXRpb24tdGV4dC1ob3Zlcik7IH1cblxuLnBhZ2UtbnVtYmVycy5jdXJyZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItcGFnaW5hdGlvbi1iYWNrZ3JvdW5kLWN1cnJlbnQpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLXBhZ2luYXRpb24tYm9yZGVyLWN1cnJlbnQpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItcGFnaW5hdGlvbi10ZXh0LWN1cnJlbnQpOyB9XG5cbi5wYWdlLW51bWJlcnMubmV4dCxcbi5wYWdlLW51bWJlcnMucHJldiB7XG4gIHBhZGRpbmctbGVmdDogMjBweDtcbiAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgd2lkdGg6IGF1dG87IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDYwMHB4KSB7XG4gICAgLnBhZ2UtbnVtYmVycy5uZXh0LFxuICAgIC5wYWdlLW51bWJlcnMucHJldiB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4OyB9IH1cblxuLyogc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3ItY2xhc3MtcGF0dGVybiAqL1xuZGl2LnZhbGlkYXRpb25fZXJyb3Ige1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1lcnJvcik7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTE3KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICBwYWRkaW5nOiAycmVtOyB9XG4gIGRpdi52YWxpZGF0aW9uX2Vycm9yOmZvY3VzIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpOyB9XG5cbmJvZHkgKlthcmlhLWludmFsaWQ9XCJ0cnVlXCJdIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1lcnJvcik7IH1cblxuLnZhbGlkYXRpb25fbWVzc2FnZSB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1lcnJvcik7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTE2KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpOyB9XG5cbi52YWxpZGF0aW9uX2xpc3Qge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICBtYXJnaW4tbGVmdDogMDtcbiAgcGFkZGluZzogMDsgfVxuICAudmFsaWRhdGlvbl9saXN0IGEge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1lcnJvcik7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gIC52YWxpZGF0aW9uX2xpc3QgbGkge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1lcnJvcik7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpOyB9XG5cbi5nZm9ybV9ib2R5IC5nZmllbGRfcmVxdWlyZWQge1xuICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbik7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTIyKTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IDNweDsgfVxuXG4uZ2Zvcm1fYm9keSB1bCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDsgfVxuXG4uZ2Zvcm1fYm9keSAuZ2Zvcm1fZmllbGRzIGxpIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgbWFyZ2luLXRvcDogMXJlbTsgfVxuXG4uZ2Zvcm1fYm9keSAuZ2ZpZWxkX3JhZGlvIGxpLFxuLmdmb3JtX2JvZHkgLmdmaWVsZF9jaGVja2JveCBsaSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIG1hcmdpbi10b3A6IDA7IH1cblxuLmdmb3JtX2JvZHkgLmdmaWVsZHNldCBsaSB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgbWFyZ2luOiAwO1xuICB3aWR0aDogMTAwJTsgfVxuXG4uZ2Zvcm1fYm9keSAuZ2Zvcm1fZmllbGRzIGxpOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5nZm9ybV9ib2R5IC5nZmllbGRfbGFiZWwsXG4uZ2Zvcm1fYm9keSAuZ2lucHV0X2NvbnRhaW5lciBsYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBtYXJnaW4tdG9wOiAxcmVtOyB9XG5cbi5nZm9ybV9ib2R5IGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbi5nZm9ybV9ib2R5IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gIG1hcmdpbi1yaWdodDogMXJlbTsgfVxuXG4uZ2Zvcm1fYm9keSAuZ2ZpZWxkX3JhZGlvIGxpIGxhYmVsLFxuLmdmb3JtX2JvZHkgLmdmaWVsZF9jaGVja2JveCBsaSBsYWJlbCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIG1hcmdpbi10b3A6IDA7IH1cblxuLmdmb3JtX2JvZHkgaW5wdXQ6bm90KFt0eXBlPVwicmFkaW9cIl0pOm5vdChbdHlwZT1cImNoZWNrYm94XCJdKSxcbi5nZm9ybV9ib2R5IHRleHRhcmVhIHtcbiAgd2lkdGg6IDEwMCU7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5nZm9ybV9ib2R5IC5naW5wdXRfZnVsbCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLmdmb3JtX2JvZHkgLmdpbnB1dF9jb21wbGV4IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBtYXJnaW4tbGVmdDogLS41cmVtO1xuICAgIG1hcmdpbi1yaWdodDogLS41cmVtOyB9XG4gICAgLmdmb3JtX2JvZHkgLmdpbnB1dF9jb21wbGV4IHNwYW4ge1xuICAgICAgbWFyZ2luLWxlZnQ6IC41cmVtO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAuNXJlbTsgfVxuICAuZ2Zvcm1fYm9keSAuZ2lucHV0X2xlZnQsXG4gIC5nZm9ybV9ib2R5IC5naW5wdXRfcmlnaHQge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICB3aWR0aDogY2FsYyg1MCUgLSAxcmVtKTsgfVxuICAgIC5nZm9ybV9ib2R5IC5naW5wdXRfbGVmdCA+IGxhYmVsLFxuICAgIC5nZm9ybV9ib2R5IC5naW5wdXRfbGVmdCBpbnB1dCxcbiAgICAuZ2Zvcm1fYm9keSAuZ2lucHV0X3JpZ2h0ID4gbGFiZWwsXG4gICAgLmdmb3JtX2JvZHkgLmdpbnB1dF9yaWdodCBpbnB1dCB7XG4gICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0xNik7XG4gICAgICB3aWR0aDogMTAwJTsgfSB9XG5cbi8qIHN0eWxlbGludC1lbmFibGUgc2VsZWN0b3ItY2xhc3MtcGF0dGVybiAqL1xuLmJsb2NrLXNlYXJjaCxcbi5ibG9jay1zZWFyY2gtcmVzdWx0cyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTsgfVxuXG4uYmxvY2stc2VhcmNoIGZvcm0ge1xuICBkaXNwbGF5OiBncmlkO1xuICAvKiBhdXRvcHJlZml4ZXI6IG9mZiAqL1xuICBncmlkLWdhcDogMXJlbTtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiA5ZnIgMWZyOyB9XG4gIC5ibG9jay1zZWFyY2ggZm9ybSBpbnB1dCxcbiAgLmJsb2NrLXNlYXJjaCBmb3JtIGxhYmVsIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuXG4uYmxvY2stc2VhcmNoLXJlc3VsdHMgPiAuY29udGFpbmVyIHtcbiAgcGFkZGluZy10b3A6IDA7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgIC5ibG9jay1zZWFyY2gtcmVzdWx0cyA+IC5jb250YWluZXIge1xuICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgIGdyaWQtYXV0by1yb3dzOiBtaW5tYXgoMCwgYXV0byk7XG4gICAgICBncmlkLWdhcDogMTZweDtcbiAgICAgIGdyaWQtcm93LWdhcDogMTZweDtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDEsIG1pbm1heCgwLCAxZnIpKTsgfVxuICAgICAgQHN1cHBvcnRzIG5vdCAoZGlzcGxheTogZ3JpZCkge1xuICAgICAgICAuYmxvY2stc2VhcmNoLXJlc3VsdHMgPiAuY29udGFpbmVyIHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gICAgICAgICAgLmJsb2NrLXNlYXJjaC1yZXN1bHRzID4gLmNvbnRhaW5lciA+IGRpdiB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNnB4O1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNnB4O1xuICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDE2cHgpOyB9XG4gICAgICAgICAgICAuYmxvY2stc2VhcmNoLXJlc3VsdHMgPiAuY29udGFpbmVyID4gZGl2Om50aC1jaGlsZCgxbisxKSB7XG4gICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDsgfSB9IH1cbiAgQG1lZGlhIGFsbCBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSwgKG1pbi13aWR0aDogMTAyNHB4KSBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpIHtcbiAgICAuYmxvY2stc2VhcmNoLXJlc3VsdHMgPiAuY29udGFpbmVyIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gICAgICAuYmxvY2stc2VhcmNoLXJlc3VsdHMgPiAuY29udGFpbmVyID4gZGl2IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTZweDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNnB4O1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMTZweCk7IH1cbiAgICAgICAgLmJsb2NrLXNlYXJjaC1yZXN1bHRzID4gLmNvbnRhaW5lciA+IGRpdjpudGgtY2hpbGQoMW4rMSkge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgIEBzdXBwb3J0cyAoLW1zLWltZS1hbGlnbjogYXV0bykge1xuICAgICAgICAuYmxvY2stc2VhcmNoLXJlc3VsdHMgPiAuY29udGFpbmVyIHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gICAgICAgICAgLmJsb2NrLXNlYXJjaC1yZXN1bHRzID4gLmNvbnRhaW5lciA+IGRpdiB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNnB4O1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNnB4O1xuICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDE2cHgpOyB9XG4gICAgICAgICAgICAuYmxvY2stc2VhcmNoLXJlc3VsdHMgPiAuY29udGFpbmVyID4gZGl2Om50aC1jaGlsZCgxbisxKSB7XG4gICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDsgfSB9IH1cblxuLmJsb2NrLXNlYXJjaC1yZXN1bHRzIC5yb3ctcmVzdWx0IHtcbiAgYm9yZGVyLXRvcDogMnB4IHNvbGlkIHZhcigtLWNvbG9yLWJvcmRlci1mb3Jtcyk7XG4gIHBhZGRpbmc6IDJyZW0gMDsgfVxuICAuYmxvY2stc2VhcmNoLXJlc3VsdHMgLnJvdy1yZXN1bHQ6bGFzdC1vZi10eXBlIHtcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgdmFyKC0tY29sb3ItYm9yZGVyLWZvcm1zKTsgfVxuXG4uYmxvY2stc2VhcmNoLXJlc3VsdHMgaDMge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oNCk7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07IH1cblxuLmJsb2NrLXNlYXJjaC1yZXN1bHRzIHAge1xuICBtYXJnaW4tdG9wOiAxcmVtOyB9XG5cbi5ibG9jay1zZWFyY2gtcmVzdWx0cyAudGFncyBhIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmFja2dyb3VuZC10YWcpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbik7IH1cbiAgLmJsb2NrLXNlYXJjaC1yZXN1bHRzIC50YWdzIGE6aG92ZXIsIC5ibG9jay1zZWFyY2gtcmVzdWx0cyAudGFncyBhOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1tYWluKTtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItYmFja2dyb3VuZC10YWcpOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAuYmxvY2stZXJyb3ItNDA0IC5jb250YWluZXIge1xuICAgIHBhZGRpbmctYm90dG9tOiAxMCU7XG4gICAgcGFkZGluZy10b3A6IDEwJTsgfSB9XG5cbi5ibG9jay1lcnJvci00MDQgaDEge1xuICBmb250LXNpemU6IDQycHg7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzIwcHgpIHtcbiAgICAuYmxvY2stZXJyb3ItNDA0IGgxIHtcbiAgICAgIGZvbnQtc2l6ZTogY2FsYyg0MnB4ICsgMTU4ICogKCgxMDB2dyAtIDMyMHB4KSAvIDE2MDApKTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDE5MjBweCkge1xuICAgIC5ibG9jay1lcnJvci00MDQgaDEge1xuICAgICAgZm9udC1zaXplOiAyMDBweDsgfSB9XG5cbi8qIHN0eWxlbGludC1kaXNhYmxlIG5vLWRlc2NlbmRpbmctc3BlY2lmaWNpdHkgKi9cbi5jb21tZW50cy1hcmVhIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbWFyZ2luLXRvcDogNTBweDtcbiAgb3ZlcmZsb3c6IHZpc2libGU7IH1cblxuLmNvbW1lbnQtbGlzdCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDsgfVxuICAuY29tbWVudC1saXN0IC5jaGlsZHJlbiB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICAuY29tbWVudC1saXN0IGxpIHtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0xNCk7XG4gICAgbWFyZ2luLWJvdHRvbTogNzBweDtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgLmNvbW1lbnQtbGlzdCBwIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItY29tbWVudC10ZXh0KTtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0xNCk7IH1cbiAgLmNvbW1lbnQtbGlzdCAuYXZhdGFyIHtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgZmxvYXQ6IHJpZ2h0OyB9XG4gIC5jb21tZW50LWxpc3QgLmNvbW1lbnQtYXV0aG9yIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItY29tbWVudC1hdXRob3ItdGV4dCk7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaDQpO1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBwYWRkaW5nOiAwOyB9XG4gIC5jb21tZW50LWxpc3QgYSxcbiAgLmNvbW1lbnQtbGlzdCAuY29tbWVudHMtbGluayBhIHtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1saW5rLWNvbW1lbnQpOyB9XG4gIC5jb21tZW50LWxpc3QgLmNvbW1lbnQtYXV0aG9yIGEge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1wYXJhZ3JhcGgpOyB9XG4gIC5jb21tZW50LWxpc3QgLmNvbW1lbnQtdGltZSB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtMTQpO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwOyB9XG4gICAgLmNvbW1lbnQtbGlzdCAuY29tbWVudC10aW1lIGEge1xuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWxpbmstY29tbWVudC10aW1lLWFuY2hvcik7IH1cbiAgICAuY29tbWVudC1saXN0IC5jb21tZW50LXRpbWU6Zm9jdXMsIC5jb21tZW50LWxpc3QgLmNvbW1lbnQtdGltZTpob3ZlciB7XG4gICAgICBvcGFjaXR5OiAxOyB9XG4gIC5jb21tZW50LWxpc3QgLmNvbW1lbnQtdGltZSBzdmcge1xuICAgIGZpbGw6IHZhcigtLWNvbG9yLWxpbmstY29tbWVudC10aW1lLWFuY2hvcik7XG4gICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMnB4OyB9XG5cbi5jb21tZW50cy1saW5rIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTE0KTtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgLmNvbW1lbnRzLWxpbmsgYSB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWxpbmstY29tbWVudCk7IH1cbiAgLmNvbW1lbnRzLWxpbms6aG92ZXIsIC5jb21tZW50cy1saW5rOmZvY3VzLFxuICAuY29tbWVudHMtbGluayBhOmhvdmVyLFxuICAuY29tbWVudHMtbGluayBhOmZvY3VzIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItYmxhY2spOyB9XG4gIC5jb21tZW50cy1saW5rIHN2ZyB7XG4gICAgbWFyZ2luLXJpZ2h0OiA3cHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogLTFweDsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLmNvbW1lbnQtZm9ybSB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLWdhcDogMWVtO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcbiAgICAvKiBhdXRvcHJlZml4ZXI6IG9mZiAqL1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gICAgLmNvbW1lbnQtZm9ybSAuY29tbWVudC1ub3RlcyxcbiAgICAuY29tbWVudC1mb3JtIC5jb21tZW50LWZvcm0tY29tbWVudCxcbiAgICAuY29tbWVudC1mb3JtIC5mb3JtLXN1Ym1pdCB7XG4gICAgICBncmlkLWNvbHVtbjogMSAvIHNwYW4gMjsgfSB9XG5cbi5jb21tZW50LXJlc3BvbmQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBvdmVyZmxvdzogdmlzaWJsZTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgICAuY29tbWVudC1yZXNwb25kIGlucHV0IHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9IH1cbiAgLmNvbW1lbnQtcmVzcG9uZCAuY29tbWVudC1mb3JtLWF1dGhvciB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICBtYXJnaW4tdG9wOiAwOyB9XG4gICAgLmNvbW1lbnQtcmVzcG9uZCAuY29tbWVudC1mb3JtLWF1dGhvciBpbnB1dCB7XG4gICAgICBib3JkZXItd2lkdGg6IDFweDtcbiAgICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgICB3aWR0aDogMTAwJTsgfVxuICAuY29tbWVudC1yZXNwb25kIC5jb21tZW50LWZvcm0tZW1haWwge1xuICAgIGNsZWFyOiByaWdodDtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tdG9wOiAwOyB9XG4gICAgLmNvbW1lbnQtcmVzcG9uZCAuY29tbWVudC1mb3JtLWVtYWlsIGlucHV0IHtcbiAgICAgIGJvcmRlci13aWR0aDogMXB4O1xuICAgICAgcGFkZGluZzogMTVweDtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5jb21tZW50LXJlc3BvbmQgLmNvbW1lbnQtZm9ybS11cmwge1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAuY29tbWVudC1yZXNwb25kIC5jb21tZW50LWZvcm0tdXJsIGlucHV0IHtcbiAgICAgIGJvcmRlci13aWR0aDogMXB4O1xuICAgICAgcGFkZGluZzogMTVweDtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5jb21tZW50LXJlc3BvbmQgLmZvcm0tc3VibWl0IHtcbiAgICBjbGVhcjogYm90aDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgLmNvbW1lbnQtcmVzcG9uZCAuY29tbWVudC1mb3JtLWNvbW1lbnQge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH1cbiAgLmNvbW1lbnQtcmVzcG9uZCB0ZXh0YXJlYSB7XG4gICAgd2lkdGg6IDEwMCU7IH1cblxuLyogc3R5bGVsaW50LWVuYWJsZSBuby1kZXNjZW5kaW5nLXNwZWNpZmljaXR5ICovXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyLFxuLmd1dGVuYmVyZy1jb250ZW50IHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tcGFkZGluZy1ibG9jayk7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgcGFkZGluZy10b3A6IHZhcigtLXBhZGRpbmctYmxvY2spOyB9XG5cbi5ndXRlbmJlcmctY29udGVudCA+ICoge1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtcGFyYWdyYXBocy1ibG9nKTtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWF4LXdpZHRoOiA4MDBweDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICB3aWR0aDogMTAwJTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogODQwcHgpIHtcbiAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgPiAqIHtcbiAgICAgIHBhZGRpbmctbGVmdDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSBjYWxjKHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpICogMikpOyB9XG4gICAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgPiAqLmFsaWduZnVsbCB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gY2FsYyh2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKSAqIDIpKTsgfSB9XG5cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgYmxvY2txdW90ZSArIGNpdGUsXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIGJsb2NrcXVvdGUgKyBwID4gY2l0ZSxcbi5ndXRlbmJlcmctY29udGVudCBibG9ja3F1b3RlICsgY2l0ZSxcbi5ndXRlbmJlcmctY29udGVudCBibG9ja3F1b3RlICsgcCA+IGNpdGUge1xuICBtYXJnaW4tYm90dG9tOiA0cmVtOyB9XG5cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgPiBibG9ja3F1b3RlLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciA+IGJsb2NrcXVvdGUud3AtYmxvY2stcXVvdGUsXG4uZ3V0ZW5iZXJnLWNvbnRlbnQgPiBibG9ja3F1b3RlLFxuLmd1dGVuYmVyZy1jb250ZW50ID4gYmxvY2txdW90ZS53cC1ibG9jay1xdW90ZSB7XG4gIGJvcmRlci1sZWZ0OiAycHggc29saWQgdmFyKC0tY29sb3ItYmxvY2txdW90ZSk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1wYXJhZ3JhcGhzLWJsb2cpO1xuICBtYXJnaW4tYm90dG9tOiA0cmVtO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tdG9wOiA0cmVtO1xuICBwYWRkaW5nOiAzLjVyZW0gNnJlbTtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDEycmVtKTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogODQwcHgpIHtcbiAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyID4gYmxvY2txdW90ZSxcbiAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyID4gYmxvY2txdW90ZS53cC1ibG9jay1xdW90ZSxcbiAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgPiBibG9ja3F1b3RlLFxuICAgIC5ndXRlbmJlcmctY29udGVudCA+IGJsb2NrcXVvdGUud3AtYmxvY2stcXVvdGUge1xuICAgICAgcGFkZGluZzogMy41cmVtIDJyZW07XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gNHJlbSk7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyID4gYmxvY2txdW90ZSxcbiAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyID4gYmxvY2txdW90ZS53cC1ibG9jay1xdW90ZSxcbiAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgPiBibG9ja3F1b3RlLFxuICAgIC5ndXRlbmJlcmctY29udGVudCA+IGJsb2NrcXVvdGUud3AtYmxvY2stcXVvdGUge1xuICAgICAgcGFkZGluZzogNHJlbSA0cmVtIDRyZW0gMnJlbTsgfSB9XG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgPiBibG9ja3F1b3RlID4gcCxcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciA+IGJsb2NrcXVvdGUud3AtYmxvY2stcXVvdGUgPiBwLFxuICAuZ3V0ZW5iZXJnLWNvbnRlbnQgPiBibG9ja3F1b3RlID4gcCxcbiAgLmd1dGVuYmVyZy1jb250ZW50ID4gYmxvY2txdW90ZS53cC1ibG9jay1xdW90ZSA+IHAge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1ibG9ja3F1b3RlKTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtcGFyYWdyYXBocy1ibG9nKTsgfVxuXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1ibG9ja3F1b3RlLmFsaWdud2lkZSxcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWJsb2NrcXVvdGUuYWxpZ25mdWxsLFxuLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay1ibG9ja3F1b3RlLmFsaWdud2lkZSxcbi5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stYmxvY2txdW90ZS5hbGlnbmZ1bGwge1xuICBwYWRkaW5nLWxlZnQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIGNhbGModmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCkgKiAyKSk7IH1cblxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stYmxvY2txdW90ZSBibG9ja3F1b3RlLFxuLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay1ibG9ja3F1b3RlIGJsb2NrcXVvdGUge1xuICBwYWRkaW5nLWJvdHRvbTogMDsgfVxuXG5wcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1iYWNrZ3JvdW5kLWNvZGUtYmxvY2spO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1iYWNrZ3JvdW5kLWNvZGUtYmxvY2spO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1jb2RlLXRleHQpO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtbW9ub3NwYWNlKTtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtMTYpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtcGFyYWdyYXBocy1ibG9nKTtcbiAgbWFyZ2luOiAzcmVtIDA7XG4gIG92ZXJmbG93OiBhdXRvO1xuICBwYWRkaW5nOiAxNXB4IDE2cHggMTRweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aGl0ZS1zcGFjZTogcHJlO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7IH1cbiAgcHJlIGNvZGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItY29kZS10ZXh0KTsgfVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTI0MHB4KSB7XG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWNvZGUsXG4gIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stY29kZSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIGNhbGModmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCkgKiA0KSk7IH0gfVxuXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIHByZSxcbi5ndXRlbmJlcmctY29udGVudCBwcmUge1xuICBwYWRkaW5nLWxlZnQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTsgfVxuXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1jb2x1bW5zLmFsaWduZnVsbCxcbi5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stY29sdW1ucy5hbGlnbmZ1bGwge1xuICBwYWRkaW5nLWxlZnQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTsgfVxuXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1jb2x1bW5zLmNvbHVtbnMtMS5hbGlnbmZ1bGwsXG4uZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLWNvbHVtbnMuY29sdW1ucy0xLmFsaWduZnVsbCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICB3aWR0aDogY2FsYygxMDAlIC0gY2FsYyh2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKSAqIDIpKTsgfVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTAwcHgpIHtcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTEsXG4gIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTEge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC1nYXA6IDFlbTtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSBjYWxjKHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpICogMikpOyB9XG4gICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTEgLndwLWJsb2NrLWNvbHVtbixcbiAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLWNvbHVtbnMuY29sdW1ucy0xIC53cC1ibG9jay1jb2x1bW4ge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTEsXG4gIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTEge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDEsIDFmcik7IH0gfVxuXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1jb2x1bW5zLmNvbHVtbnMtMi5hbGlnbmZ1bGwsXG4uZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLWNvbHVtbnMuY29sdW1ucy0yLmFsaWduZnVsbCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICB3aWR0aDogY2FsYygxMDAlIC0gY2FsYyh2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKSAqIDIpKTsgfVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTAwcHgpIHtcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTIsXG4gIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTIge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC1nYXA6IDFlbTtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSBjYWxjKHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpICogMikpOyB9XG4gICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTIgLndwLWJsb2NrLWNvbHVtbixcbiAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLWNvbHVtbnMuY29sdW1ucy0yIC53cC1ibG9jay1jb2x1bW4ge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTIsXG4gIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTIge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDEsIDFmcik7IH0gfVxuXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1jb2x1bW5zLmNvbHVtbnMtMy5hbGlnbmZ1bGwsXG4uZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLWNvbHVtbnMuY29sdW1ucy0zLmFsaWduZnVsbCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICB3aWR0aDogY2FsYygxMDAlIC0gY2FsYyh2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKSAqIDIpKTsgfVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTAwcHgpIHtcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTMsXG4gIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTMge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC1nYXA6IDFlbTtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSBjYWxjKHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpICogMikpOyB9XG4gICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTMgLndwLWJsb2NrLWNvbHVtbixcbiAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLWNvbHVtbnMuY29sdW1ucy0zIC53cC1ibG9jay1jb2x1bW4ge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTMsXG4gIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTMge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDEsIDFmcik7IH0gfVxuXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1jb2x1bW5zLmNvbHVtbnMtNC5hbGlnbmZ1bGwsXG4uZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLWNvbHVtbnMuY29sdW1ucy00LmFsaWduZnVsbCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICB3aWR0aDogY2FsYygxMDAlIC0gY2FsYyh2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKSAqIDIpKTsgfVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTAwcHgpIHtcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTQsXG4gIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTQge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC1nYXA6IDFlbTtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSBjYWxjKHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpICogMikpOyB9XG4gICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTQgLndwLWJsb2NrLWNvbHVtbixcbiAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLWNvbHVtbnMuY29sdW1ucy00IC53cC1ibG9jay1jb2x1bW4ge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTQsXG4gIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTQge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDEsIDFmcik7IH0gfVxuXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1jb2x1bW5zLmNvbHVtbnMtNS5hbGlnbmZ1bGwsXG4uZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLWNvbHVtbnMuY29sdW1ucy01LmFsaWduZnVsbCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICB3aWR0aDogY2FsYygxMDAlIC0gY2FsYyh2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKSAqIDIpKTsgfVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTAwcHgpIHtcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTUsXG4gIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTUge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC1nYXA6IDFlbTtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSBjYWxjKHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpICogMikpOyB9XG4gICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTUgLndwLWJsb2NrLWNvbHVtbixcbiAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLWNvbHVtbnMuY29sdW1ucy01IC53cC1ibG9jay1jb2x1bW4ge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTUsXG4gIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTUge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDEsIDFmcik7IH0gfVxuXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1jb2x1bW5zLmNvbHVtbnMtNi5hbGlnbmZ1bGwsXG4uZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLWNvbHVtbnMuY29sdW1ucy02LmFsaWduZnVsbCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICB3aWR0aDogY2FsYygxMDAlIC0gY2FsYyh2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKSAqIDIpKTsgfVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTAwcHgpIHtcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTYsXG4gIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTYge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC1nYXA6IDFlbTtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSBjYWxjKHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpICogMikpOyB9XG4gICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTYgLndwLWJsb2NrLWNvbHVtbixcbiAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLWNvbHVtbnMuY29sdW1ucy02IC53cC1ibG9jay1jb2x1bW4ge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTYsXG4gIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTYge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDEsIDFmcik7IH0gfVxuXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1jb2x1bW5zLmNvbHVtbnMtNy5hbGlnbmZ1bGwsXG4uZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLWNvbHVtbnMuY29sdW1ucy03LmFsaWduZnVsbCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICB3aWR0aDogY2FsYygxMDAlIC0gY2FsYyh2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKSAqIDIpKTsgfVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTAwcHgpIHtcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTcsXG4gIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTcge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC1nYXA6IDFlbTtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSBjYWxjKHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpICogMikpOyB9XG4gICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTcgLndwLWJsb2NrLWNvbHVtbixcbiAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLWNvbHVtbnMuY29sdW1ucy03IC53cC1ibG9jay1jb2x1bW4ge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTcsXG4gIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTcge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDEsIDFmcik7IH0gfVxuXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1jb2x1bW5zLmNvbHVtbnMtOC5hbGlnbmZ1bGwsXG4uZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLWNvbHVtbnMuY29sdW1ucy04LmFsaWduZnVsbCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICB3aWR0aDogY2FsYygxMDAlIC0gY2FsYyh2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKSAqIDIpKTsgfVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTAwcHgpIHtcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTgsXG4gIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTgge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC1nYXA6IDFlbTtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSBjYWxjKHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpICogMikpOyB9XG4gICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTggLndwLWJsb2NrLWNvbHVtbixcbiAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLWNvbHVtbnMuY29sdW1ucy04IC53cC1ibG9jay1jb2x1bW4ge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTgsXG4gIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTgge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDEsIDFmcik7IH0gfVxuXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1jb2x1bW5zLmNvbHVtbnMtOS5hbGlnbmZ1bGwsXG4uZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLWNvbHVtbnMuY29sdW1ucy05LmFsaWduZnVsbCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICB3aWR0aDogY2FsYygxMDAlIC0gY2FsYyh2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKSAqIDIpKTsgfVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTAwcHgpIHtcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTksXG4gIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTkge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC1nYXA6IDFlbTtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSBjYWxjKHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpICogMikpOyB9XG4gICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTkgLndwLWJsb2NrLWNvbHVtbixcbiAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLWNvbHVtbnMuY29sdW1ucy05IC53cC1ibG9jay1jb2x1bW4ge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTksXG4gIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTkge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDEsIDFmcik7IH0gfVxuXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1jb3Zlcl9faW5uZXItY29udGFpbmVyLFxuLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay1jb3Zlcl9faW5uZXItY29udGFpbmVyIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7IH1cbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stY292ZXJfX2lubmVyLWNvbnRhaW5lciBwLFxuICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLWNvdmVyX19pbm5lci1jb250YWluZXIgcCB7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWNvcmUtaGVhZGluZyk7IH1cblxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stZW1iZWQgaWZyYW1lLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stZW1iZWQgdmlkZW8sXG4uZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLWVtYmVkIGlmcmFtZSxcbi5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stZW1iZWQgdmlkZW8ge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMjQwcHgpIHtcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stZW1iZWQuYWxpZ253aWRlLFxuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1lbWJlZC5hbGlnbmZ1bGwsXG4gIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stZW1iZWQuYWxpZ253aWRlLFxuICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLWVtYmVkLmFsaWduZnVsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIGNhbGModmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCkgKiAyKSk7IH0gfVxuXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1lbWJlZC5hbGlnbmZ1bGwsXG4uZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLWVtYmVkLmFsaWduZnVsbCB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICB3aWR0aDogMTAwJTsgfVxuXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5pcy1ncmlkLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stZ2FsbGVyeSxcbi5ndXRlbmJlcmctY29udGVudCAuaXMtZ3JpZCxcbi5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stZ2FsbGVyeSB7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuaXMtZ3JpZCBmaWdjYXB0aW9uLFxuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1nYWxsZXJ5IGZpZ2NhcHRpb24sXG4gIC5ndXRlbmJlcmctY29udGVudCAuaXMtZ3JpZCBmaWdjYXB0aW9uLFxuICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLWdhbGxlcnkgZmlnY2FwdGlvbiB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0xNik7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTU7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tbWFyZ2luLWJldHdlZW4tdGV4dC1lbGVtZW50cyk7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuaXMtZ3JpZCBpbWcsXG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWdhbGxlcnkgaW1nLFxuICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLmlzLWdyaWQgaW1nLFxuICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLWdhbGxlcnkgaW1nIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmlzLWdyaWQuYWxpZ253aWRlLFxuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1nYWxsZXJ5LmFsaWdud2lkZSxcbiAgLmd1dGVuYmVyZy1jb250ZW50IC5pcy1ncmlkLmFsaWdud2lkZSxcbiAgLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay1nYWxsZXJ5LmFsaWdud2lkZSB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTsgfVxuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5pcy1ncmlkLmFsaWduZnVsbCxcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stZ2FsbGVyeS5hbGlnbmZ1bGwsXG4gIC5ndXRlbmJlcmctY29udGVudCAuaXMtZ3JpZC5hbGlnbmZ1bGwsXG4gIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stZ2FsbGVyeS5hbGlnbmZ1bGwge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIGNhbGModmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCkgKiAyKSk7IH1cblxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuaXMtZ3JpZCxcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmJsb2Nrcy1nYWxsZXJ5LWdyaWQsXG4uZ3V0ZW5iZXJnLWNvbnRlbnQgLmlzLWdyaWQsXG4uZ3V0ZW5iZXJnLWNvbnRlbnQgLmJsb2Nrcy1nYWxsZXJ5LWdyaWQge1xuICBkaXNwbGF5OiBncmlkO1xuICBwYWRkaW5nLWxlZnQ6IDA7IH1cbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuaXMtZ3JpZCAuYmxvY2tzLWdhbGxlcnktaXRlbSxcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuYmxvY2tzLWdhbGxlcnktZ3JpZCAuYmxvY2tzLWdhbGxlcnktaXRlbSxcbiAgLmd1dGVuYmVyZy1jb250ZW50IC5pcy1ncmlkIC5ibG9ja3MtZ2FsbGVyeS1pdGVtLFxuICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLmJsb2Nrcy1nYWxsZXJ5LWdyaWQgLmJsb2Nrcy1nYWxsZXJ5LWl0ZW0ge1xuICAgIG1hcmdpbjogMDtcbiAgICB3aWR0aDogMTAwJTsgfVxuXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5pcy1ncmlkLmNvbHVtbnMtMixcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmNvbHVtbnMtMiAuYmxvY2tzLWdhbGxlcnktZ3JpZCxcbi5ndXRlbmJlcmctY29udGVudCAuaXMtZ3JpZC5jb2x1bW5zLTIsXG4uZ3V0ZW5iZXJnLWNvbnRlbnQgLmNvbHVtbnMtMiAuYmxvY2tzLWdhbGxlcnktZ3JpZCB7XG4gIGdyaWQtZ2FwOiAzcmVtO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAxMDAwcHgpIHtcbiAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5pcy1ncmlkLmNvbHVtbnMtMixcbiAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5jb2x1bW5zLTIgLmJsb2Nrcy1nYWxsZXJ5LWdyaWQsXG4gICAgLmd1dGVuYmVyZy1jb250ZW50IC5pcy1ncmlkLmNvbHVtbnMtMixcbiAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLmNvbHVtbnMtMiAuYmxvY2tzLWdhbGxlcnktZ3JpZCB7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCAxZnIpOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDY3MHB4KSB7XG4gICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuaXMtZ3JpZC5jb2x1bW5zLTIsXG4gICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuY29sdW1ucy0yIC5ibG9ja3MtZ2FsbGVyeS1ncmlkLFxuICAgIC5ndXRlbmJlcmctY29udGVudCAuaXMtZ3JpZC5jb2x1bW5zLTIsXG4gICAgLmd1dGVuYmVyZy1jb250ZW50IC5jb2x1bW5zLTIgLmJsb2Nrcy1nYWxsZXJ5LWdyaWQge1xuICAgICAgZ3JpZC1nYXA6IDJyZW07XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpOyB9IH1cblxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuaXMtZ3JpZC5jb2x1bW5zLTMsXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5jb2x1bW5zLTMgLmJsb2Nrcy1nYWxsZXJ5LWdyaWQsXG4uZ3V0ZW5iZXJnLWNvbnRlbnQgLmlzLWdyaWQuY29sdW1ucy0zLFxuLmd1dGVuYmVyZy1jb250ZW50IC5jb2x1bW5zLTMgLmJsb2Nrcy1nYWxsZXJ5LWdyaWQge1xuICBncmlkLWdhcDogM3JlbTtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTAwMHB4KSB7XG4gICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuaXMtZ3JpZC5jb2x1bW5zLTMsXG4gICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuY29sdW1ucy0zIC5ibG9ja3MtZ2FsbGVyeS1ncmlkLFxuICAgIC5ndXRlbmJlcmctY29udGVudCAuaXMtZ3JpZC5jb2x1bW5zLTMsXG4gICAgLmd1dGVuYmVyZy1jb250ZW50IC5jb2x1bW5zLTMgLmJsb2Nrcy1nYWxsZXJ5LWdyaWQge1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA2NzBweCkge1xuICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmlzLWdyaWQuY29sdW1ucy0zLFxuICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmNvbHVtbnMtMyAuYmxvY2tzLWdhbGxlcnktZ3JpZCxcbiAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLmlzLWdyaWQuY29sdW1ucy0zLFxuICAgIC5ndXRlbmJlcmctY29udGVudCAuY29sdW1ucy0zIC5ibG9ja3MtZ2FsbGVyeS1ncmlkIHtcbiAgICAgIGdyaWQtZ2FwOiAycmVtO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTsgfSB9XG5cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmlzLWdyaWQuY29sdW1ucy00LFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuY29sdW1ucy00IC5ibG9ja3MtZ2FsbGVyeS1ncmlkLFxuLmd1dGVuYmVyZy1jb250ZW50IC5pcy1ncmlkLmNvbHVtbnMtNCxcbi5ndXRlbmJlcmctY29udGVudCAuY29sdW1ucy00IC5ibG9ja3MtZ2FsbGVyeS1ncmlkIHtcbiAgZ3JpZC1nYXA6IDNyZW07XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDQsIDFmcik7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEwMDBweCkge1xuICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmlzLWdyaWQuY29sdW1ucy00LFxuICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmNvbHVtbnMtNCAuYmxvY2tzLWdhbGxlcnktZ3JpZCxcbiAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLmlzLWdyaWQuY29sdW1ucy00LFxuICAgIC5ndXRlbmJlcmctY29udGVudCAuY29sdW1ucy00IC5ibG9ja3MtZ2FsbGVyeS1ncmlkIHtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNjcwcHgpIHtcbiAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5pcy1ncmlkLmNvbHVtbnMtNCxcbiAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5jb2x1bW5zLTQgLmJsb2Nrcy1nYWxsZXJ5LWdyaWQsXG4gICAgLmd1dGVuYmVyZy1jb250ZW50IC5pcy1ncmlkLmNvbHVtbnMtNCxcbiAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLmNvbHVtbnMtNCAuYmxvY2tzLWdhbGxlcnktZ3JpZCB7XG4gICAgICBncmlkLWdhcDogMnJlbTtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7IH0gfVxuXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5pcy1ncmlkLmNvbHVtbnMtNSxcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmNvbHVtbnMtNSAuYmxvY2tzLWdhbGxlcnktZ3JpZCxcbi5ndXRlbmJlcmctY29udGVudCAuaXMtZ3JpZC5jb2x1bW5zLTUsXG4uZ3V0ZW5iZXJnLWNvbnRlbnQgLmNvbHVtbnMtNSAuYmxvY2tzLWdhbGxlcnktZ3JpZCB7XG4gIGdyaWQtZ2FwOiAzcmVtO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg1LCAxZnIpOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAxMDAwcHgpIHtcbiAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5pcy1ncmlkLmNvbHVtbnMtNSxcbiAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5jb2x1bW5zLTUgLmJsb2Nrcy1nYWxsZXJ5LWdyaWQsXG4gICAgLmd1dGVuYmVyZy1jb250ZW50IC5pcy1ncmlkLmNvbHVtbnMtNSxcbiAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLmNvbHVtbnMtNSAuYmxvY2tzLWdhbGxlcnktZ3JpZCB7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCAxZnIpOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDY3MHB4KSB7XG4gICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuaXMtZ3JpZC5jb2x1bW5zLTUsXG4gICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuY29sdW1ucy01IC5ibG9ja3MtZ2FsbGVyeS1ncmlkLFxuICAgIC5ndXRlbmJlcmctY29udGVudCAuaXMtZ3JpZC5jb2x1bW5zLTUsXG4gICAgLmd1dGVuYmVyZy1jb250ZW50IC5jb2x1bW5zLTUgLmJsb2Nrcy1nYWxsZXJ5LWdyaWQge1xuICAgICAgZ3JpZC1nYXA6IDJyZW07XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpOyB9IH1cblxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuaXMtZ3JpZC5jb2x1bW5zLTYsXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5jb2x1bW5zLTYgLmJsb2Nrcy1nYWxsZXJ5LWdyaWQsXG4uZ3V0ZW5iZXJnLWNvbnRlbnQgLmlzLWdyaWQuY29sdW1ucy02LFxuLmd1dGVuYmVyZy1jb250ZW50IC5jb2x1bW5zLTYgLmJsb2Nrcy1nYWxsZXJ5LWdyaWQge1xuICBncmlkLWdhcDogM3JlbTtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNiwgMWZyKTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTAwMHB4KSB7XG4gICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuaXMtZ3JpZC5jb2x1bW5zLTYsXG4gICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuY29sdW1ucy02IC5ibG9ja3MtZ2FsbGVyeS1ncmlkLFxuICAgIC5ndXRlbmJlcmctY29udGVudCAuaXMtZ3JpZC5jb2x1bW5zLTYsXG4gICAgLmd1dGVuYmVyZy1jb250ZW50IC5jb2x1bW5zLTYgLmJsb2Nrcy1nYWxsZXJ5LWdyaWQge1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA2NzBweCkge1xuICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmlzLWdyaWQuY29sdW1ucy02LFxuICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmNvbHVtbnMtNiAuYmxvY2tzLWdhbGxlcnktZ3JpZCxcbiAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLmlzLWdyaWQuY29sdW1ucy02LFxuICAgIC5ndXRlbmJlcmctY29udGVudCAuY29sdW1ucy02IC5ibG9ja3MtZ2FsbGVyeS1ncmlkIHtcbiAgICAgIGdyaWQtZ2FwOiAycmVtO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTsgfSB9XG5cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmlzLWdyaWQuY29sdW1ucy03LFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuY29sdW1ucy03IC5ibG9ja3MtZ2FsbGVyeS1ncmlkLFxuLmd1dGVuYmVyZy1jb250ZW50IC5pcy1ncmlkLmNvbHVtbnMtNyxcbi5ndXRlbmJlcmctY29udGVudCAuY29sdW1ucy03IC5ibG9ja3MtZ2FsbGVyeS1ncmlkIHtcbiAgZ3JpZC1nYXA6IDNyZW07XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDcsIDFmcik7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEwMDBweCkge1xuICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmlzLWdyaWQuY29sdW1ucy03LFxuICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmNvbHVtbnMtNyAuYmxvY2tzLWdhbGxlcnktZ3JpZCxcbiAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLmlzLWdyaWQuY29sdW1ucy03LFxuICAgIC5ndXRlbmJlcmctY29udGVudCAuY29sdW1ucy03IC5ibG9ja3MtZ2FsbGVyeS1ncmlkIHtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNjcwcHgpIHtcbiAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5pcy1ncmlkLmNvbHVtbnMtNyxcbiAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5jb2x1bW5zLTcgLmJsb2Nrcy1nYWxsZXJ5LWdyaWQsXG4gICAgLmd1dGVuYmVyZy1jb250ZW50IC5pcy1ncmlkLmNvbHVtbnMtNyxcbiAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLmNvbHVtbnMtNyAuYmxvY2tzLWdhbGxlcnktZ3JpZCB7XG4gICAgICBncmlkLWdhcDogMnJlbTtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7IH0gfVxuXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5pcy1ncmlkLmNvbHVtbnMtOCxcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmNvbHVtbnMtOCAuYmxvY2tzLWdhbGxlcnktZ3JpZCxcbi5ndXRlbmJlcmctY29udGVudCAuaXMtZ3JpZC5jb2x1bW5zLTgsXG4uZ3V0ZW5iZXJnLWNvbnRlbnQgLmNvbHVtbnMtOCAuYmxvY2tzLWdhbGxlcnktZ3JpZCB7XG4gIGdyaWQtZ2FwOiAzcmVtO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg4LCAxZnIpOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAxMDAwcHgpIHtcbiAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5pcy1ncmlkLmNvbHVtbnMtOCxcbiAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5jb2x1bW5zLTggLmJsb2Nrcy1nYWxsZXJ5LWdyaWQsXG4gICAgLmd1dGVuYmVyZy1jb250ZW50IC5pcy1ncmlkLmNvbHVtbnMtOCxcbiAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLmNvbHVtbnMtOCAuYmxvY2tzLWdhbGxlcnktZ3JpZCB7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCAxZnIpOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDY3MHB4KSB7XG4gICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuaXMtZ3JpZC5jb2x1bW5zLTgsXG4gICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuY29sdW1ucy04IC5ibG9ja3MtZ2FsbGVyeS1ncmlkLFxuICAgIC5ndXRlbmJlcmctY29udGVudCAuaXMtZ3JpZC5jb2x1bW5zLTgsXG4gICAgLmd1dGVuYmVyZy1jb250ZW50IC5jb2x1bW5zLTggLmJsb2Nrcy1nYWxsZXJ5LWdyaWQge1xuICAgICAgZ3JpZC1nYXA6IDJyZW07XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpOyB9IH1cblxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuaXMtZ3JpZC5jb2x1bW5zLTksXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5jb2x1bW5zLTkgLmJsb2Nrcy1nYWxsZXJ5LWdyaWQsXG4uZ3V0ZW5iZXJnLWNvbnRlbnQgLmlzLWdyaWQuY29sdW1ucy05LFxuLmd1dGVuYmVyZy1jb250ZW50IC5jb2x1bW5zLTkgLmJsb2Nrcy1nYWxsZXJ5LWdyaWQge1xuICBncmlkLWdhcDogM3JlbTtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoOSwgMWZyKTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTAwMHB4KSB7XG4gICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuaXMtZ3JpZC5jb2x1bW5zLTksXG4gICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuY29sdW1ucy05IC5ibG9ja3MtZ2FsbGVyeS1ncmlkLFxuICAgIC5ndXRlbmJlcmctY29udGVudCAuaXMtZ3JpZC5jb2x1bW5zLTksXG4gICAgLmd1dGVuYmVyZy1jb250ZW50IC5jb2x1bW5zLTkgLmJsb2Nrcy1nYWxsZXJ5LWdyaWQge1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA2NzBweCkge1xuICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmlzLWdyaWQuY29sdW1ucy05LFxuICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmNvbHVtbnMtOSAuYmxvY2tzLWdhbGxlcnktZ3JpZCxcbiAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLmlzLWdyaWQuY29sdW1ucy05LFxuICAgIC5ndXRlbmJlcmctY29udGVudCAuY29sdW1ucy05IC5ibG9ja3MtZ2FsbGVyeS1ncmlkIHtcbiAgICAgIGdyaWQtZ2FwOiAycmVtO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTsgfSB9XG5cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmJsb2Nrcy1nYWxsZXJ5LWl0ZW0gPiBmaWd1cmUgZmlnY2FwdGlvbixcbi5ndXRlbmJlcmctY29udGVudCAuYmxvY2tzLWdhbGxlcnktaXRlbSA+IGZpZ3VyZSBmaWdjYXB0aW9uIHtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIGhyLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stc2VwYXJhdG9yLFxuLmd1dGVuYmVyZy1jb250ZW50IGhyLFxuLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay1zZXBhcmF0b3Ige1xuICBtYXJnaW4tYm90dG9tOiBjYWxjKHZhcigtLW1hcmdpbi1iZXR3ZWVuLXBhcmFncmFwaHMpICogMik7XG4gIG1hcmdpbi10b3A6IGNhbGModmFyKC0tbWFyZ2luLWJldHdlZW4tcGFyYWdyYXBocykgKiAyKTsgfVxuXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1zZXBhcmF0b3IuaXMtc3R5bGUtZGVmYXVsdCxcbi5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stc2VwYXJhdG9yLmlzLXN0eWxlLWRlZmF1bHQge1xuICBtYXgtd2lkdGg6IDgwMHB4OyB9XG5cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgaDEsXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIGgyLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciBoMyxcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgaDQsXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIGg1LFxuLmd1dGVuYmVyZy1jb250ZW50IGgxLFxuLmd1dGVuYmVyZy1jb250ZW50IGgyLFxuLmd1dGVuYmVyZy1jb250ZW50IGgzLFxuLmd1dGVuYmVyZy1jb250ZW50IGg0LFxuLmd1dGVuYmVyZy1jb250ZW50IGg1IHtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWNvcmUtaGVhZGluZyk7IH1cblxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciBoMTpmaXJzdC1jaGlsZCxcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgaDI6Zmlyc3QtY2hpbGQsXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIGgzOmZpcnN0LWNoaWxkLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciBoNDpmaXJzdC1jaGlsZCxcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgaDU6Zmlyc3QtY2hpbGQsXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIGg2OmZpcnN0LWNoaWxkLFxuLmd1dGVuYmVyZy1jb250ZW50IGgxOmZpcnN0LWNoaWxkLFxuLmd1dGVuYmVyZy1jb250ZW50IGgyOmZpcnN0LWNoaWxkLFxuLmd1dGVuYmVyZy1jb250ZW50IGgzOmZpcnN0LWNoaWxkLFxuLmd1dGVuYmVyZy1jb250ZW50IGg0OmZpcnN0LWNoaWxkLFxuLmd1dGVuYmVyZy1jb250ZW50IGg1OmZpcnN0LWNoaWxkLFxuLmd1dGVuYmVyZy1jb250ZW50IGg2OmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMDsgfVxuXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1pbWFnZSxcbi5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2staW1hZ2Uge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tbWFyZ2luLXdwLWJsb2NrLWltYWdlKTtcbiAgbWFyZ2luLXRvcDogdmFyKC0tbWFyZ2luLXdwLWJsb2NrLWltYWdlKTsgfVxuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1pbWFnZS5hbGlnbmZ1bGwsXG4gIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2staW1hZ2UuYWxpZ25mdWxsIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTI0MHB4KSB7XG4gICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2staW1hZ2UuYWxpZ253aWRlLFxuICAgIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2staW1hZ2UuYWxpZ253aWRlIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTI0MHB4KSB7XG4gICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2staW1hZ2UuYWxpZ253aWRlLFxuICAgIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2staW1hZ2UuYWxpZ253aWRlIHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSBjYWxjKHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpICogMikpOyB9IH1cbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2staW1hZ2UgLmFsaWdud2lkZSBpbWcsXG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWltYWdlIC5hbGlnbmZ1bGwgaW1nLFxuICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLWltYWdlIC5hbGlnbndpZGUgaW1nLFxuICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLWltYWdlIC5hbGlnbmZ1bGwgaW1nIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1pbWFnZSAuYWxpZ25mdWxsIGltZyxcbiAgLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay1pbWFnZSAuYWxpZ25mdWxsIGltZyB7XG4gICAgYm9yZGVyLXJhZGl1czogMDsgfVxuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1pbWFnZSA+IGZpZ3VyZSxcbiAgLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay1pbWFnZSA+IGZpZ3VyZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IGF1dG87IH1cbiAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1pbWFnZSA+IGZpZ3VyZS5hbGlnbmxlZnQsIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWltYWdlID4gZmlndXJlLmFsaWducmlnaHQsXG4gICAgLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay1pbWFnZSA+IGZpZ3VyZS5hbGlnbmxlZnQsXG4gICAgLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay1pbWFnZSA+IGZpZ3VyZS5hbGlnbnJpZ2h0IHtcbiAgICAgIC8qIHN0eWxlbGludC1kaXNhYmxlIGNzc3Rvb2xzL3ZhbHVlLW5vLXVua25vd24tY3VzdG9tLXByb3BlcnRpZXMgKi9cbiAgICAgIG1heC13aWR0aDogdmFyKC0td2lkdGgtY2hpbGQtaW1nKTtcbiAgICAgIC8qIHN0eWxlbGludC1lbmFibGUgKi8gfVxuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1pbWFnZSBmaWdjYXB0aW9uLFxuICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLWltYWdlIGZpZ2NhcHRpb24ge1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2staW1hZ2UuYWxpZ25sZWZ0IGltZyxcbiAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1pbWFnZS5hbGlnbnJpZ2h0IGltZyxcbiAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1pbWFnZS5hbGlnbmNlbnRlciBpbWcsXG4gICAgLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay1pbWFnZS5hbGlnbmxlZnQgaW1nLFxuICAgIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2staW1hZ2UuYWxpZ25yaWdodCBpbWcsXG4gICAgLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay1pbWFnZS5hbGlnbmNlbnRlciBpbWcge1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICB3aWR0aDogMTAwJTsgfSB9XG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWltYWdlIC5hbGlnbmNlbnRlcixcbiAgLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay1pbWFnZSAuYWxpZ25jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1pbWFnZSAuYWxpZ25jZW50ZXIgaW1nLFxuICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLWltYWdlIC5hbGlnbmNlbnRlciBpbWcge1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1jYXRlZ29yaWVzLWxpc3QsXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIG9sOm5vdChbY2xhc3NdKSxcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgdWw6bm90KFtjbGFzc10pLFxuLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay1jYXRlZ29yaWVzLWxpc3QsXG4uZ3V0ZW5iZXJnLWNvbnRlbnQgb2w6bm90KFtjbGFzc10pLFxuLmd1dGVuYmVyZy1jb250ZW50IHVsOm5vdChbY2xhc3NdKSB7XG4gIHBhZGRpbmctbGVmdDogY2FsYygycmVtICsgdmFyKC0tbWFyZ2luLWJldHdlZW4tcGFyYWdyYXBocykpOyB9XG5cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgcCxcbi5ndXRlbmJlcmctY29udGVudCBwIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXBhcmFncmFwaCk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1wYXJhZ3JhcGhzLWJsb2cpOyB9XG5cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmhhcy1sYXJnZXItZm9udC1zaXplLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuaGFzLWxhcmdlLWZvbnQtc2l6ZSxcbi5ndXRlbmJlcmctY29udGVudCAuaGFzLWxhcmdlci1mb250LXNpemUsXG4uZ3V0ZW5iZXJnLWNvbnRlbnQgLmhhcy1sYXJnZS1mb250LXNpemUge1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtaGVhZGluZ3MpOyB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5oYXMtbGFyZ2UtZm9udC1zaXplLFxuICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLmhhcy1sYXJnZS1mb250LXNpemUge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTE4KTsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5oYXMtbGFyZ2VyLWZvbnQtc2l6ZSxcbiAgLmd1dGVuYmVyZy1jb250ZW50IC5oYXMtbGFyZ2VyLWZvbnQtc2l6ZSB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtMjIpOyB9IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDEyNDBweCkge1xuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5oYXMtYmFja2dyb3VuZCxcbiAgLmd1dGVuYmVyZy1jb250ZW50IC5oYXMtYmFja2dyb3VuZCB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIGNhbGMoMi4zNzVlbSAqIDIpKTsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMjQwcHgpIHtcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stcHJlZm9ybWF0dGVkLFxuICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLXByZWZvcm1hdHRlZCB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIGNhbGModmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCkgKiA0KSk7IH0gfVxuXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1wdWxscXVvdGUuYWxpZ253aWRlLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stcHVsbHF1b3RlLmFsaWduZnVsbCxcbi5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stcHVsbHF1b3RlLmFsaWdud2lkZSxcbi5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stcHVsbHF1b3RlLmFsaWduZnVsbCB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgcGFkZGluZy1yaWdodDogMDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTI0MHB4KSB7XG4gICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stcHVsbHF1b3RlLmFsaWdud2lkZSxcbiAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1wdWxscXVvdGUuYWxpZ25mdWxsLFxuICAgIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stcHVsbHF1b3RlLmFsaWdud2lkZSxcbiAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLXB1bGxxdW90ZS5hbGlnbmZ1bGwge1xuICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSBjYWxjKHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpICogMikpOyB9IH1cblxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stcHVsbHF1b3RlLmFsaWduZnVsbCxcbi5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stcHVsbHF1b3RlLmFsaWduZnVsbCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIGNhbGModmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCkgKiAyKSk7IH1cblxuLyogc3R5bGVsaW50LWRpc2FibGUgbm8tZGVzY2VuZGluZy1zcGVjaWZpY2l0eSAqL1xudGgge1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXNjcm9waW9uKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG5cbnRkIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTsgfVxuXG50ZCxcbnRoLFxuLndwLWJsb2NrLXRhYmxlIHRkLFxuLndwLWJsb2NrLXRhYmxlIHRoIHtcbiAgYm9yZGVyOiAwO1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1wYXJhZ3JhcGgpO1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0xNCk7XG4gIGhlaWdodDogMnJlbTtcbiAgcGFkZGluZzogLjZyZW0gMS41cmVtOyB9XG5cbnRyOm50aC1jaGlsZChldmVuKSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJhY2tncm91bmQtdGFibGUtY2VsbC1ldmVuKTsgfVxuXG50cjpudGgtY2hpbGQob2RkKSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJhY2tncm91bmQtdGFibGUtY2VsbC1vZGQpOyB9XG5cbnRoZWFkLFxuLndwLWJsb2NrLXRhYmxlIHRoZWFkIHtcbiAgYm9yZGVyOiAwOyB9XG4gIHRoZWFkIHRoOmZpcnN0LWNoaWxkLFxuICAud3AtYmxvY2stdGFibGUgdGhlYWQgdGg6Zmlyc3QtY2hpbGQge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDhweDsgfVxuICB0aGVhZCB0aDpsYXN0LWNoaWxkLFxuICAud3AtYmxvY2stdGFibGUgdGhlYWQgdGg6bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDhweDsgfVxuXG50YWJsZSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIGJvcmRlci1zcGFjaW5nOiAwOyB9XG5cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLXRhYmxlLmFsaWduZnVsbCxcbi5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stdGFibGUuYWxpZ25mdWxsIHtcbiAgbWFyZ2luLWxlZnQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICBtYXJnaW4tcmlnaHQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICB3aWR0aDogY2FsYygxMDAlIC0gY2FsYyh2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKSAqIDIpKTsgfVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTI0MHB4KSB7XG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLXRhYmxlLmFsaWdud2lkZSxcbiAgLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay10YWJsZS5hbGlnbndpZGUge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSBjYWxjKHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpICogMikpOyB9IH1cblxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stdGV4dC1jb2x1bW5zLmFsaWduZnVsbCxcbi5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stdGV4dC1jb2x1bW5zLmFsaWduZnVsbCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpOyB9XG5cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLXRleHQtY29sdW1ucy5jb2x1bW5zLTEuYWxpZ25mdWxsLFxuLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay10ZXh0LWNvbHVtbnMuY29sdW1ucy0xLmFsaWduZnVsbCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICB3aWR0aDogY2FsYygxMDAlIC0gY2FsYyh2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKSAqIDIpKTsgfVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTAwcHgpIHtcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stdGV4dC1jb2x1bW5zLmNvbHVtbnMtMSxcbiAgLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay10ZXh0LWNvbHVtbnMuY29sdW1ucy0xIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtZ2FwOiAxZW07XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gY2FsYyh2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKSAqIDIpKTsgfVxuICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLXRleHQtY29sdW1ucy5jb2x1bW5zLTEgLndwLWJsb2NrLWNvbHVtbixcbiAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLXRleHQtY29sdW1ucy5jb2x1bW5zLTEgLndwLWJsb2NrLWNvbHVtbiB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay10ZXh0LWNvbHVtbnMuY29sdW1ucy0xLFxuICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLXRleHQtY29sdW1ucy5jb2x1bW5zLTEge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDEsIDFmcik7IH0gfVxuXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay10ZXh0LWNvbHVtbnMuY29sdW1ucy0yLmFsaWduZnVsbCxcbi5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stdGV4dC1jb2x1bW5zLmNvbHVtbnMtMi5hbGlnbmZ1bGwge1xuICBwYWRkaW5nLWxlZnQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIGNhbGModmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCkgKiAyKSk7IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDkwMHB4KSB7XG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLXRleHQtY29sdW1ucy5jb2x1bW5zLTIsXG4gIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stdGV4dC1jb2x1bW5zLmNvbHVtbnMtMiB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLWdhcDogMWVtO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIGNhbGModmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCkgKiAyKSk7IH1cbiAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay10ZXh0LWNvbHVtbnMuY29sdW1ucy0yIC53cC1ibG9jay1jb2x1bW4sXG4gICAgLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay10ZXh0LWNvbHVtbnMuY29sdW1ucy0yIC53cC1ibG9jay1jb2x1bW4ge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stdGV4dC1jb2x1bW5zLmNvbHVtbnMtMixcbiAgLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay10ZXh0LWNvbHVtbnMuY29sdW1ucy0yIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgxLCAxZnIpOyB9IH1cblxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stdGV4dC1jb2x1bW5zLmNvbHVtbnMtMy5hbGlnbmZ1bGwsXG4uZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLXRleHQtY29sdW1ucy5jb2x1bW5zLTMuYWxpZ25mdWxsIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSBjYWxjKHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpICogMikpOyB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5MDBweCkge1xuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay10ZXh0LWNvbHVtbnMuY29sdW1ucy0zLFxuICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLXRleHQtY29sdW1ucy5jb2x1bW5zLTMge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC1nYXA6IDFlbTtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSBjYWxjKHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpICogMikpOyB9XG4gICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stdGV4dC1jb2x1bW5zLmNvbHVtbnMtMyAud3AtYmxvY2stY29sdW1uLFxuICAgIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stdGV4dC1jb2x1bW5zLmNvbHVtbnMtMyAud3AtYmxvY2stY29sdW1uIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLXRleHQtY29sdW1ucy5jb2x1bW5zLTMsXG4gIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stdGV4dC1jb2x1bW5zLmNvbHVtbnMtMyB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMSwgMWZyKTsgfSB9XG5cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLXRleHQtY29sdW1ucy5jb2x1bW5zLTQuYWxpZ25mdWxsLFxuLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay10ZXh0LWNvbHVtbnMuY29sdW1ucy00LmFsaWduZnVsbCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICB3aWR0aDogY2FsYygxMDAlIC0gY2FsYyh2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKSAqIDIpKTsgfVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTAwcHgpIHtcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stdGV4dC1jb2x1bW5zLmNvbHVtbnMtNCxcbiAgLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay10ZXh0LWNvbHVtbnMuY29sdW1ucy00IHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtZ2FwOiAxZW07XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gY2FsYyh2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKSAqIDIpKTsgfVxuICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLXRleHQtY29sdW1ucy5jb2x1bW5zLTQgLndwLWJsb2NrLWNvbHVtbixcbiAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLXRleHQtY29sdW1ucy5jb2x1bW5zLTQgLndwLWJsb2NrLWNvbHVtbiB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay10ZXh0LWNvbHVtbnMuY29sdW1ucy00LFxuICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLXRleHQtY29sdW1ucy5jb2x1bW5zLTQge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDEsIDFmcik7IH0gfVxuXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay10ZXh0LWNvbHVtbnMuY29sdW1ucy01LmFsaWduZnVsbCxcbi5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stdGV4dC1jb2x1bW5zLmNvbHVtbnMtNS5hbGlnbmZ1bGwge1xuICBwYWRkaW5nLWxlZnQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIGNhbGModmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCkgKiAyKSk7IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDkwMHB4KSB7XG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLXRleHQtY29sdW1ucy5jb2x1bW5zLTUsXG4gIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stdGV4dC1jb2x1bW5zLmNvbHVtbnMtNSB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLWdhcDogMWVtO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIGNhbGModmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCkgKiAyKSk7IH1cbiAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay10ZXh0LWNvbHVtbnMuY29sdW1ucy01IC53cC1ibG9jay1jb2x1bW4sXG4gICAgLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay10ZXh0LWNvbHVtbnMuY29sdW1ucy01IC53cC1ibG9jay1jb2x1bW4ge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stdGV4dC1jb2x1bW5zLmNvbHVtbnMtNSxcbiAgLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay10ZXh0LWNvbHVtbnMuY29sdW1ucy01IHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgxLCAxZnIpOyB9IH1cblxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stdGV4dC1jb2x1bW5zLmNvbHVtbnMtNi5hbGlnbmZ1bGwsXG4uZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLXRleHQtY29sdW1ucy5jb2x1bW5zLTYuYWxpZ25mdWxsIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSBjYWxjKHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpICogMikpOyB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5MDBweCkge1xuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay10ZXh0LWNvbHVtbnMuY29sdW1ucy02LFxuICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLXRleHQtY29sdW1ucy5jb2x1bW5zLTYge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC1nYXA6IDFlbTtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSBjYWxjKHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpICogMikpOyB9XG4gICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stdGV4dC1jb2x1bW5zLmNvbHVtbnMtNiAud3AtYmxvY2stY29sdW1uLFxuICAgIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stdGV4dC1jb2x1bW5zLmNvbHVtbnMtNiAud3AtYmxvY2stY29sdW1uIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLXRleHQtY29sdW1ucy5jb2x1bW5zLTYsXG4gIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stdGV4dC1jb2x1bW5zLmNvbHVtbnMtNiB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMSwgMWZyKTsgfSB9XG5cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLXRleHQtY29sdW1ucy5jb2x1bW5zLTcuYWxpZ25mdWxsLFxuLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay10ZXh0LWNvbHVtbnMuY29sdW1ucy03LmFsaWduZnVsbCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICB3aWR0aDogY2FsYygxMDAlIC0gY2FsYyh2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKSAqIDIpKTsgfVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTAwcHgpIHtcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stdGV4dC1jb2x1bW5zLmNvbHVtbnMtNyxcbiAgLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay10ZXh0LWNvbHVtbnMuY29sdW1ucy03IHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtZ2FwOiAxZW07XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gY2FsYyh2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKSAqIDIpKTsgfVxuICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLXRleHQtY29sdW1ucy5jb2x1bW5zLTcgLndwLWJsb2NrLWNvbHVtbixcbiAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLXRleHQtY29sdW1ucy5jb2x1bW5zLTcgLndwLWJsb2NrLWNvbHVtbiB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay10ZXh0LWNvbHVtbnMuY29sdW1ucy03LFxuICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLXRleHQtY29sdW1ucy5jb2x1bW5zLTcge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDEsIDFmcik7IH0gfVxuXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay10ZXh0LWNvbHVtbnMuY29sdW1ucy04LmFsaWduZnVsbCxcbi5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stdGV4dC1jb2x1bW5zLmNvbHVtbnMtOC5hbGlnbmZ1bGwge1xuICBwYWRkaW5nLWxlZnQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIGNhbGModmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCkgKiAyKSk7IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDkwMHB4KSB7XG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLXRleHQtY29sdW1ucy5jb2x1bW5zLTgsXG4gIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stdGV4dC1jb2x1bW5zLmNvbHVtbnMtOCB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLWdhcDogMWVtO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIGNhbGModmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCkgKiAyKSk7IH1cbiAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay10ZXh0LWNvbHVtbnMuY29sdW1ucy04IC53cC1ibG9jay1jb2x1bW4sXG4gICAgLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay10ZXh0LWNvbHVtbnMuY29sdW1ucy04IC53cC1ibG9jay1jb2x1bW4ge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stdGV4dC1jb2x1bW5zLmNvbHVtbnMtOCxcbiAgLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay10ZXh0LWNvbHVtbnMuY29sdW1ucy04IHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgxLCAxZnIpOyB9IH1cblxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stdGV4dC1jb2x1bW5zLmNvbHVtbnMtOS5hbGlnbmZ1bGwsXG4uZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLXRleHQtY29sdW1ucy5jb2x1bW5zLTkuYWxpZ25mdWxsIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSBjYWxjKHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpICogMikpOyB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5MDBweCkge1xuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay10ZXh0LWNvbHVtbnMuY29sdW1ucy05LFxuICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLXRleHQtY29sdW1ucy5jb2x1bW5zLTkge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC1nYXA6IDFlbTtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSBjYWxjKHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpICogMikpOyB9XG4gICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stdGV4dC1jb2x1bW5zLmNvbHVtbnMtOSAud3AtYmxvY2stY29sdW1uLFxuICAgIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stdGV4dC1jb2x1bW5zLmNvbHVtbnMtOSAud3AtYmxvY2stY29sdW1uIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLXRleHQtY29sdW1ucy5jb2x1bW5zLTksXG4gIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stdGV4dC1jb2x1bW5zLmNvbHVtbnMtOSB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMSwgMWZyKTsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMjQwcHgpIHtcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stdmVyc2UsXG4gIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stdmVyc2Uge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSBjYWxjKHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpICogNCkpOyB9IH1cblxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stdmlkZW8gdmlkZW8sXG4uZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLXZpZGVvIHZpZGVvIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICB3aWR0aDogMTAwJTsgfVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTI0MHB4KSB7XG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLXZpZGVvLmFsaWdud2lkZSxcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stdmlkZW8uYWxpZ25mdWxsLFxuICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLXZpZGVvLmFsaWdud2lkZSxcbiAgLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay12aWRlby5hbGlnbmZ1bGwge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSBjYWxjKHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpICogMikpOyB9IH1cblxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stdmlkZW8uYWxpZ25mdWxsLFxuLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay12aWRlby5hbGlnbmZ1bGwge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLndwLWJsb2NrLmlzLXN0eWxlLWJveGVkLFxuLmlzLXN0eWxlLWJveGVkIHtcbiAgYm9yZGVyOiAycHggc29saWQgdmFyKC0tY29sb3ItcGFyYWdyYXBoKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXBhcmFncmFwaCk7XG4gIGZvbnQtc2l6ZTogMTdweDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXBhcmFncmFwaHMtYmxvZyk7XG4gIHBhZGRpbmc6IDJyZW07XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSA0cmVtKTsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogODQwcHgpIHtcbiAgLmd1dGVuYmVyZy1jb250ZW50IC5pcy1zdHlsZS1ib3hlZCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMnJlbSwgMCk7IH0gfVxuXG4ud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnV0dG9uLWJhY2tncm91bmQpO1xuICBib3JkZXI6IHZhcigtLWJvcmRlci13aWR0aC1pbnB1dC1maWVsZCkgc29saWQgdmFyKC0tY29sb3ItYnV0dG9uLWJhY2tncm91bmQpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWlucHV0LWZpZWxkKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJ1dHRvbik7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1wYXJhZ3JhcGgpO1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0xNik7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1zZW1pYm9sZCk7XG4gIGxpbmUtaGVpZ2h0OiAxOS42MzY0cHg7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIG1heC13aWR0aDogMjMwcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmctYm90dG9tOiBjYWxjKDE0cHggLSBjYWxjKHZhcigtLWJvcmRlci13aWR0aC1pbnB1dC1maWVsZCkgKiAyKSk7XG4gIHBhZGRpbmctbGVmdDogY2FsYygyMXB4IC0gY2FsYyh2YXIoLS1ib3JkZXItd2lkdGgtaW5wdXQtZmllbGQpICogMikpO1xuICBwYWRkaW5nLXJpZ2h0OiBjYWxjKDIxcHggLSBjYWxjKHZhcigtLWJvcmRlci13aWR0aC1pbnB1dC1maWVsZCkgKiAyKSk7XG4gIHBhZGRpbmctdG9wOiBjYWxjKDE0cHggLSBjYWxjKHZhcigtLWJvcmRlci13aWR0aC1pbnB1dC1maWVsZCkgKiAyKSk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgdHJhbnNpdGlvbjogYWxsIDAuMDhzIGN1YmljLWJlemllcigwLjI1LCAwLjQ2LCAwLjQ1LCAwLjk0KTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgd2lkdGg6IGF1dG87XG4gIC8qIHN0eWxlbGludC1kaXNhYmxlIGExMXkvbm8tZGlzcGxheS1ub25lICovXG4gIC8qIHN0eWxlbGludC1lbmFibGUgKi8gfVxuICAud3AtYmxvY2stYnV0dG9uX19saW5rLmlzLWV4dGVybmFsLWxpbms6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC53cC1ibG9jay1idXR0b25fX2xpbmsuZm9jdXMsIC53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyKTtcbiAgICBib3JkZXI6IHZhcigtLWJvcmRlci13aWR0aC1pbnB1dC1maWVsZCkgc29saWQgdmFyKC0tY29sb3ItYnV0dG9uLWJhY2tncm91bmQtaG92ZXIpO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1idXR0b24taG92ZXIpOyB9XG5cbi53cC1ibG9jay1maWxlIC53cC1ibG9jay1maWxlX19idXR0b24ge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0xNik7XG4gIGxpbmUtaGVpZ2h0OiAyMC45MDkxcHg7XG4gIHBhZGRpbmctYm90dG9tOiBjYWxjKDEwcHggLSBjYWxjKHZhcigtLWJvcmRlci13aWR0aC1pbnB1dC1maWVsZCkgKiAyKSk7XG4gIHBhZGRpbmctbGVmdDogY2FsYygyMXB4IC0gY2FsYyh2YXIoLS1ib3JkZXItd2lkdGgtaW5wdXQtZmllbGQpICogMikpO1xuICBwYWRkaW5nLXJpZ2h0OiBjYWxjKDIxcHggLSBjYWxjKHZhcigtLWJvcmRlci13aWR0aC1pbnB1dC1maWVsZCkgKiAyKSk7XG4gIHBhZGRpbmctdG9wOiBjYWxjKDEwcHggLSBjYWxjKHZhcigtLWJvcmRlci13aWR0aC1pbnB1dC1maWVsZCkgKiAyKSk7XG4gIGZvbnQtc2l6ZTogLjhlbTtcbiAgcGFkZGluZzogLjNlbSAuOGVtOyB9XG5cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmFsaWdubGVmdCA+ICosXG4uZ3V0ZW5iZXJnLWNvbnRlbnQgLmFsaWdubGVmdCA+ICoge1xuICBmbG9hdDogbGVmdDsgfVxuXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5hbGlnbnJpZ2h0ID4gKixcbi5ndXRlbmJlcmctY29udGVudCAuYWxpZ25yaWdodCA+ICoge1xuICBmbG9hdDogcmlnaHQ7IH1cblxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuYWxpZ25sZWZ0ID4gaW1nLFxuLmd1dGVuYmVyZy1jb250ZW50IC5hbGlnbmxlZnQgPiBpbWcge1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1tYXJnaW4tYmV0d2Vlbi1wYXJhZ3JhcGhzKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgbWFyZ2luLXRvcDogdmFyKC0tbWFyZ2luLWJldHdlZW4tcGFyYWdyYXBocyk7IH1cbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuYWxpZ25sZWZ0ID4gaW1nICsgZmlnY2FwdGlvbixcbiAgLmd1dGVuYmVyZy1jb250ZW50IC5hbGlnbmxlZnQgPiBpbWcgKyBmaWdjYXB0aW9uIHtcbiAgICBtYXJnaW4tdG9wOiAwOyB9XG5cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmFsaWducmlnaHQgPiBpbWcsXG4uZ3V0ZW5iZXJnLWNvbnRlbnQgLmFsaWducmlnaHQgPiBpbWcge1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1tYXJnaW4tYmV0d2Vlbi1wYXJhZ3JhcGhzKTtcbiAgbWFyZ2luLWxlZnQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICBtYXJnaW4tdG9wOiB2YXIoLS1tYXJnaW4tYmV0d2Vlbi1wYXJhZ3JhcGhzKTsgfVxuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5hbGlnbnJpZ2h0ID4gaW1nICsgZmlnY2FwdGlvbixcbiAgLmd1dGVuYmVyZy1jb250ZW50IC5hbGlnbnJpZ2h0ID4gaW1nICsgZmlnY2FwdGlvbiB7XG4gICAgbWFyZ2luLXRvcDogMDsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTI0MHB4KSB7XG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmFsaWdud2lkZSxcbiAgLmd1dGVuYmVyZy1jb250ZW50IC5hbGlnbndpZGUge1xuICAgIG1heC13aWR0aDogMTIwMHB4O1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEyNDBweCkge1xuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5hbGlnbmZ1bGwsXG4gIC5ndXRlbmJlcmctY29udGVudCAuYWxpZ25mdWxsIHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1wYWRkaW5nLWJsb2NrKTtcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS1wYWRkaW5nLWJsb2NrKTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5hbGlnbmZ1bGwud3AtYmxvY2staW1hZ2UgaW1nLFxuLmd1dGVuYmVyZy1jb250ZW50IC5hbGlnbmZ1bGwud3AtYmxvY2staW1hZ2UgaW1nIHtcbiAgYm9yZGVyLXJhZGl1czogMDsgfVxuXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1tYXgtY29tYmluYXRvcnMsIHNlbGVjdG9yLW1heC1jb21wb3VuZC1zZWxlY3RvcnMgKi9cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgZmlnY2FwdGlvbixcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgY2l0ZSxcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgc21hbGwsXG4uZ3V0ZW5iZXJnLWNvbnRlbnQgZmlnY2FwdGlvbixcbi5ndXRlbmJlcmctY29udGVudCBjaXRlLFxuLmd1dGVuYmVyZy1jb250ZW50IHNtYWxsIHtcbiAgYm9yZGVyOiAwO1xuICBjb2xvcjogdmFyKC0tY29sb3ItY2FwdGlvbik7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWNhcHRpb25zKTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBtYXJnaW4tYm90dG9tOiA2cmVtO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tdG9wOiAzcmVtO1xuICBtYXgtd2lkdGg6IDgwMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aWR0aDogMTAwJTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIGZpZ2NhcHRpb24sXG4gICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciBjaXRlLFxuICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgc21hbGwsXG4gICAgLmd1dGVuYmVyZy1jb250ZW50IGZpZ2NhcHRpb24sXG4gICAgLmd1dGVuYmVyZy1jb250ZW50IGNpdGUsXG4gICAgLmd1dGVuYmVyZy1jb250ZW50IHNtYWxsIHtcbiAgICAgIG1hcmdpbi10b3A6IDJyZW07IH0gfVxuXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1pbWFnZSBmaWdjYXB0aW9uLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2staW1hZ2UgLmFsaWducmlnaHQgPiBmaWdjYXB0aW9uLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2staW1hZ2UgLmFsaWduY2VudGVyID4gZmlnY2FwdGlvbixcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWltYWdlLmlzLXJlc2l6ZWQgPiBmaWdjYXB0aW9uLFxuLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay1pbWFnZSBmaWdjYXB0aW9uLFxuLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay1pbWFnZSAuYWxpZ25yaWdodCA+IGZpZ2NhcHRpb24sXG4uZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLWltYWdlIC5hbGlnbmNlbnRlciA+IGZpZ2NhcHRpb24sXG4uZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLWltYWdlLmlzLXJlc2l6ZWQgPiBmaWdjYXB0aW9uIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgY2l0ZSxcbi5ndXRlbmJlcmctY29udGVudCBjaXRlIHtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIGltZyxcbi5ndXRlbmJlcmctY29udGVudCBpbWcge1xuICBib3JkZXItcmFkaXVzOiA0cHg7IH1cblxua2JkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Ita2JkLWJhY2tncm91bmQpO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1rYmQtYm9yZGVyKTtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBib3gtc2hhZG93OiAwIDFweCAwIHJnYmEoMjIsIDIyLCAyMiwgMC4yKSwgMCAwIDAgMnB4IHZhcigtLWNvbG9yLXdoaXRlKSBpbnNldDtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXBhcmFncmFwaCk7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgcGFkZGluZzogMCAuNXJlbTtcbiAgdGV4dC1zaGFkb3c6IDAgMXB4IDAgdmFyKC0tY29sb3Itd2hpdGUpO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG5cbi8qIHN0eWxlbGludC1kaXNhYmxlIGExMXkvbm8tZGlzcGxheS1ub25lLCBuby1kZXNjZW5kaW5nLXNwZWNpZmljaXR5LCBzZWxlY3Rvci1tYXgtcHNldWRvLWNsYXNzICovXG5hIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWxpbmstdGV4dCk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICBhOmhvdmVyLCBhOmZvY3VzIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItbGluay10ZXh0KTsgfVxuXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIGxpID4gYTo6YWZ0ZXIsXG4uZ3V0ZW5iZXJnLWNvbnRlbnQgbGkgPiBhOjphZnRlciB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciBbZGF0YS10eXBlPVwiY29yZS9wYXJhZ3JhcGhcIl0gPiBhLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciBsaSA+IGEsXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIHAgPiBzdHJvbmcgPiBhLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciBwID4gZW0gPiBhLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciBwOm5vdChbY2xhc3NdKSA+IGE6bm90KFtjbGFzc10pLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciBwLmhhcy10ZXh0LWFsaWduLWxlZnQgPiBhLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciBwLmhhcy10ZXh0LWFsaWduLWNlbnRlciA+IGEsXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIHAuaGFzLXRleHQtYWxpZ24tcmlnaHQgPiBhLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciBwLmhhcy1zbWFsbC1mb250LXNpemUgPiBhLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciBmaWdjYXB0aW9uID4gYSxcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgcDpub3QoW2NsYXNzXSkgPiBhLmlzLWV4dGVybmFsLWxpbmssXG4uZ3V0ZW5iZXJnLWNvbnRlbnQgW2RhdGEtdHlwZT1cImNvcmUvcGFyYWdyYXBoXCJdID4gYSxcbi5ndXRlbmJlcmctY29udGVudCBsaSA+IGEsXG4uZ3V0ZW5iZXJnLWNvbnRlbnQgcCA+IHN0cm9uZyA+IGEsXG4uZ3V0ZW5iZXJnLWNvbnRlbnQgcCA+IGVtID4gYSxcbi5ndXRlbmJlcmctY29udGVudCBwOm5vdChbY2xhc3NdKSA+IGE6bm90KFtjbGFzc10pLFxuLmd1dGVuYmVyZy1jb250ZW50IHAuaGFzLXRleHQtYWxpZ24tbGVmdCA+IGEsXG4uZ3V0ZW5iZXJnLWNvbnRlbnQgcC5oYXMtdGV4dC1hbGlnbi1jZW50ZXIgPiBhLFxuLmd1dGVuYmVyZy1jb250ZW50IHAuaGFzLXRleHQtYWxpZ24tcmlnaHQgPiBhLFxuLmd1dGVuYmVyZy1jb250ZW50IHAuaGFzLXNtYWxsLWZvbnQtc2l6ZSA+IGEsXG4uZ3V0ZW5iZXJnLWNvbnRlbnQgZmlnY2FwdGlvbiA+IGEsXG4uZ3V0ZW5iZXJnLWNvbnRlbnQgcDpub3QoW2NsYXNzXSkgPiBhLmlzLWV4dGVybmFsLWxpbmsge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tY29sb3ItbGluay1ib3JkZXItYm90dG9tKTtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgdmFyKC0tY29sb3ItbGluay1iYWNrZ3JvdW5kLWhvdmVyKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWxpbmstdGV4dCk7XG4gIGRpc3BsYXk6IGlubGluZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuMXMgY3ViaWMtYmV6aWVyKDAuMTksIDEsIDAuMjIsIDEpLCBjb2xvciAwLjFzIGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKTsgfVxuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIFtkYXRhLXR5cGU9XCJjb3JlL3BhcmFncmFwaFwiXSA+IGE6OmFmdGVyLFxuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIGxpID4gYTo6YWZ0ZXIsXG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgcCA+IHN0cm9uZyA+IGE6OmFmdGVyLFxuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIHAgPiBlbSA+IGE6OmFmdGVyLFxuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIHA6bm90KFtjbGFzc10pID4gYTpub3QoW2NsYXNzXSk6OmFmdGVyLFxuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIHAuaGFzLXRleHQtYWxpZ24tbGVmdCA+IGE6OmFmdGVyLFxuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIHAuaGFzLXRleHQtYWxpZ24tY2VudGVyID4gYTo6YWZ0ZXIsXG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgcC5oYXMtdGV4dC1hbGlnbi1yaWdodCA+IGE6OmFmdGVyLFxuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIHAuaGFzLXNtYWxsLWZvbnQtc2l6ZSA+IGE6OmFmdGVyLFxuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIGZpZ2NhcHRpb24gPiBhOjphZnRlcixcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciBwOm5vdChbY2xhc3NdKSA+IGEuaXMtZXh0ZXJuYWwtbGluazo6YWZ0ZXIsXG4gIC5ndXRlbmJlcmctY29udGVudCBbZGF0YS10eXBlPVwiY29yZS9wYXJhZ3JhcGhcIl0gPiBhOjphZnRlcixcbiAgLmd1dGVuYmVyZy1jb250ZW50IGxpID4gYTo6YWZ0ZXIsXG4gIC5ndXRlbmJlcmctY29udGVudCBwID4gc3Ryb25nID4gYTo6YWZ0ZXIsXG4gIC5ndXRlbmJlcmctY29udGVudCBwID4gZW0gPiBhOjphZnRlcixcbiAgLmd1dGVuYmVyZy1jb250ZW50IHA6bm90KFtjbGFzc10pID4gYTpub3QoW2NsYXNzXSk6OmFmdGVyLFxuICAuZ3V0ZW5iZXJnLWNvbnRlbnQgcC5oYXMtdGV4dC1hbGlnbi1sZWZ0ID4gYTo6YWZ0ZXIsXG4gIC5ndXRlbmJlcmctY29udGVudCBwLmhhcy10ZXh0LWFsaWduLWNlbnRlciA+IGE6OmFmdGVyLFxuICAuZ3V0ZW5iZXJnLWNvbnRlbnQgcC5oYXMtdGV4dC1hbGlnbi1yaWdodCA+IGE6OmFmdGVyLFxuICAuZ3V0ZW5iZXJnLWNvbnRlbnQgcC5oYXMtc21hbGwtZm9udC1zaXplID4gYTo6YWZ0ZXIsXG4gIC5ndXRlbmJlcmctY29udGVudCBmaWdjYXB0aW9uID4gYTo6YWZ0ZXIsXG4gIC5ndXRlbmJlcmctY29udGVudCBwOm5vdChbY2xhc3NdKSA+IGEuaXMtZXh0ZXJuYWwtbGluazo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uLy4uL3N2Zy9leHRlcm5hbC1saW5rLXN0eWxlZC1saW5rcy5zdmdcIik7IH1cbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciBbZGF0YS10eXBlPVwiY29yZS9wYXJhZ3JhcGhcIl0gPiBhOmhvdmVyLFxuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIGxpID4gYTpob3ZlcixcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciBwID4gc3Ryb25nID4gYTpob3ZlcixcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciBwID4gZW0gPiBhOmhvdmVyLFxuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIHA6bm90KFtjbGFzc10pID4gYTpub3QoW2NsYXNzXSk6aG92ZXIsXG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgcC5oYXMtdGV4dC1hbGlnbi1sZWZ0ID4gYTpob3ZlcixcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciBwLmhhcy10ZXh0LWFsaWduLWNlbnRlciA+IGE6aG92ZXIsXG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgcC5oYXMtdGV4dC1hbGlnbi1yaWdodCA+IGE6aG92ZXIsXG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgcC5oYXMtc21hbGwtZm9udC1zaXplID4gYTpob3ZlcixcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciBmaWdjYXB0aW9uID4gYTpob3ZlcixcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciBwOm5vdChbY2xhc3NdKSA+IGEuaXMtZXh0ZXJuYWwtbGluazpob3ZlcixcbiAgLmd1dGVuYmVyZy1jb250ZW50IFtkYXRhLXR5cGU9XCJjb3JlL3BhcmFncmFwaFwiXSA+IGE6aG92ZXIsXG4gIC5ndXRlbmJlcmctY29udGVudCBsaSA+IGE6aG92ZXIsXG4gIC5ndXRlbmJlcmctY29udGVudCBwID4gc3Ryb25nID4gYTpob3ZlcixcbiAgLmd1dGVuYmVyZy1jb250ZW50IHAgPiBlbSA+IGE6aG92ZXIsXG4gIC5ndXRlbmJlcmctY29udGVudCBwOm5vdChbY2xhc3NdKSA+IGE6bm90KFtjbGFzc10pOmhvdmVyLFxuICAuZ3V0ZW5iZXJnLWNvbnRlbnQgcC5oYXMtdGV4dC1hbGlnbi1sZWZ0ID4gYTpob3ZlcixcbiAgLmd1dGVuYmVyZy1jb250ZW50IHAuaGFzLXRleHQtYWxpZ24tY2VudGVyID4gYTpob3ZlcixcbiAgLmd1dGVuYmVyZy1jb250ZW50IHAuaGFzLXRleHQtYWxpZ24tcmlnaHQgPiBhOmhvdmVyLFxuICAuZ3V0ZW5iZXJnLWNvbnRlbnQgcC5oYXMtc21hbGwtZm9udC1zaXplID4gYTpob3ZlcixcbiAgLmd1dGVuYmVyZy1jb250ZW50IGZpZ2NhcHRpb24gPiBhOmhvdmVyLFxuICAuZ3V0ZW5iZXJnLWNvbnRlbnQgcDpub3QoW2NsYXNzXSkgPiBhLmlzLWV4dGVybmFsLWxpbms6aG92ZXIge1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAtMy4zcmVtIDAgdmFyKC0tY29sb3ItbGluay1iYWNrZ3JvdW5kLWhvdmVyKTtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItbGluay10ZXh0LWhvdmVyKTsgfVxuICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgW2RhdGEtdHlwZT1cImNvcmUvcGFyYWdyYXBoXCJdID4gYTpob3Zlcjo6YWZ0ZXIsXG4gICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciBsaSA+IGE6aG92ZXI6OmFmdGVyLFxuICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgcCA+IHN0cm9uZyA+IGE6aG92ZXI6OmFmdGVyLFxuICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgcCA+IGVtID4gYTpob3Zlcjo6YWZ0ZXIsXG4gICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciBwOm5vdChbY2xhc3NdKSA+IGE6bm90KFtjbGFzc10pOmhvdmVyOjphZnRlcixcbiAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIHAuaGFzLXRleHQtYWxpZ24tbGVmdCA+IGE6aG92ZXI6OmFmdGVyLFxuICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgcC5oYXMtdGV4dC1hbGlnbi1jZW50ZXIgPiBhOmhvdmVyOjphZnRlcixcbiAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIHAuaGFzLXRleHQtYWxpZ24tcmlnaHQgPiBhOmhvdmVyOjphZnRlcixcbiAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIHAuaGFzLXNtYWxsLWZvbnQtc2l6ZSA+IGE6aG92ZXI6OmFmdGVyLFxuICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgZmlnY2FwdGlvbiA+IGE6aG92ZXI6OmFmdGVyLFxuICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgcDpub3QoW2NsYXNzXSkgPiBhLmlzLWV4dGVybmFsLWxpbms6aG92ZXI6OmFmdGVyLFxuICAgIC5ndXRlbmJlcmctY29udGVudCBbZGF0YS10eXBlPVwiY29yZS9wYXJhZ3JhcGhcIl0gPiBhOmhvdmVyOjphZnRlcixcbiAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgbGkgPiBhOmhvdmVyOjphZnRlcixcbiAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgcCA+IHN0cm9uZyA+IGE6aG92ZXI6OmFmdGVyLFxuICAgIC5ndXRlbmJlcmctY29udGVudCBwID4gZW0gPiBhOmhvdmVyOjphZnRlcixcbiAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgcDpub3QoW2NsYXNzXSkgPiBhOm5vdChbY2xhc3NdKTpob3Zlcjo6YWZ0ZXIsXG4gICAgLmd1dGVuYmVyZy1jb250ZW50IHAuaGFzLXRleHQtYWxpZ24tbGVmdCA+IGE6aG92ZXI6OmFmdGVyLFxuICAgIC5ndXRlbmJlcmctY29udGVudCBwLmhhcy10ZXh0LWFsaWduLWNlbnRlciA+IGE6aG92ZXI6OmFmdGVyLFxuICAgIC5ndXRlbmJlcmctY29udGVudCBwLmhhcy10ZXh0LWFsaWduLXJpZ2h0ID4gYTpob3Zlcjo6YWZ0ZXIsXG4gICAgLmd1dGVuYmVyZy1jb250ZW50IHAuaGFzLXNtYWxsLWZvbnQtc2l6ZSA+IGE6aG92ZXI6OmFmdGVyLFxuICAgIC5ndXRlbmJlcmctY29udGVudCBmaWdjYXB0aW9uID4gYTpob3Zlcjo6YWZ0ZXIsXG4gICAgLmd1dGVuYmVyZy1jb250ZW50IHA6bm90KFtjbGFzc10pID4gYS5pcy1leHRlcm5hbC1saW5rOmhvdmVyOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi8uLi9zdmcvZXh0ZXJuYWwtbGluay13aGl0ZS5zdmdcIik7IH1cbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciBbZGF0YS10eXBlPVwiY29yZS9wYXJhZ3JhcGhcIl0gPiBhOmZvY3VzLFxuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIGxpID4gYTpmb2N1cyxcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciBwID4gc3Ryb25nID4gYTpmb2N1cyxcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciBwID4gZW0gPiBhOmZvY3VzLFxuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIHA6bm90KFtjbGFzc10pID4gYTpub3QoW2NsYXNzXSk6Zm9jdXMsXG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgcC5oYXMtdGV4dC1hbGlnbi1sZWZ0ID4gYTpmb2N1cyxcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciBwLmhhcy10ZXh0LWFsaWduLWNlbnRlciA+IGE6Zm9jdXMsXG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgcC5oYXMtdGV4dC1hbGlnbi1yaWdodCA+IGE6Zm9jdXMsXG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgcC5oYXMtc21hbGwtZm9udC1zaXplID4gYTpmb2N1cyxcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciBmaWdjYXB0aW9uID4gYTpmb2N1cyxcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciBwOm5vdChbY2xhc3NdKSA+IGEuaXMtZXh0ZXJuYWwtbGluazpmb2N1cyxcbiAgLmd1dGVuYmVyZy1jb250ZW50IFtkYXRhLXR5cGU9XCJjb3JlL3BhcmFncmFwaFwiXSA+IGE6Zm9jdXMsXG4gIC5ndXRlbmJlcmctY29udGVudCBsaSA+IGE6Zm9jdXMsXG4gIC5ndXRlbmJlcmctY29udGVudCBwID4gc3Ryb25nID4gYTpmb2N1cyxcbiAgLmd1dGVuYmVyZy1jb250ZW50IHAgPiBlbSA+IGE6Zm9jdXMsXG4gIC5ndXRlbmJlcmctY29udGVudCBwOm5vdChbY2xhc3NdKSA+IGE6bm90KFtjbGFzc10pOmZvY3VzLFxuICAuZ3V0ZW5iZXJnLWNvbnRlbnQgcC5oYXMtdGV4dC1hbGlnbi1sZWZ0ID4gYTpmb2N1cyxcbiAgLmd1dGVuYmVyZy1jb250ZW50IHAuaGFzLXRleHQtYWxpZ24tY2VudGVyID4gYTpmb2N1cyxcbiAgLmd1dGVuYmVyZy1jb250ZW50IHAuaGFzLXRleHQtYWxpZ24tcmlnaHQgPiBhOmZvY3VzLFxuICAuZ3V0ZW5iZXJnLWNvbnRlbnQgcC5oYXMtc21hbGwtZm9udC1zaXplID4gYTpmb2N1cyxcbiAgLmd1dGVuYmVyZy1jb250ZW50IGZpZ2NhcHRpb24gPiBhOmZvY3VzLFxuICAuZ3V0ZW5iZXJnLWNvbnRlbnQgcDpub3QoW2NsYXNzXSkgPiBhLmlzLWV4dGVybmFsLWxpbms6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItbGluay1ib3JkZXItZm9jdXMpO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWxpbmstdGV4dC1mb2N1cyk7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gICAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiBuby1wcmVmZXJlbmNlKSB7XG4gICAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIFtkYXRhLXR5cGU9XCJjb3JlL3BhcmFncmFwaFwiXSA+IGE6Zm9jdXMsXG4gICAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIGxpID4gYTpmb2N1cyxcbiAgICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgcCA+IHN0cm9uZyA+IGE6Zm9jdXMsXG4gICAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIHAgPiBlbSA+IGE6Zm9jdXMsXG4gICAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIHA6bm90KFtjbGFzc10pID4gYTpub3QoW2NsYXNzXSk6Zm9jdXMsXG4gICAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIHAuaGFzLXRleHQtYWxpZ24tbGVmdCA+IGE6Zm9jdXMsXG4gICAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIHAuaGFzLXRleHQtYWxpZ24tY2VudGVyID4gYTpmb2N1cyxcbiAgICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgcC5oYXMtdGV4dC1hbGlnbi1yaWdodCA+IGE6Zm9jdXMsXG4gICAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIHAuaGFzLXNtYWxsLWZvbnQtc2l6ZSA+IGE6Zm9jdXMsXG4gICAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIGZpZ2NhcHRpb24gPiBhOmZvY3VzLFxuICAgICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciBwOm5vdChbY2xhc3NdKSA+IGEuaXMtZXh0ZXJuYWwtbGluazpmb2N1cyxcbiAgICAgIC5ndXRlbmJlcmctY29udGVudCBbZGF0YS10eXBlPVwiY29yZS9wYXJhZ3JhcGhcIl0gPiBhOmZvY3VzLFxuICAgICAgLmd1dGVuYmVyZy1jb250ZW50IGxpID4gYTpmb2N1cyxcbiAgICAgIC5ndXRlbmJlcmctY29udGVudCBwID4gc3Ryb25nID4gYTpmb2N1cyxcbiAgICAgIC5ndXRlbmJlcmctY29udGVudCBwID4gZW0gPiBhOmZvY3VzLFxuICAgICAgLmd1dGVuYmVyZy1jb250ZW50IHA6bm90KFtjbGFzc10pID4gYTpub3QoW2NsYXNzXSk6Zm9jdXMsXG4gICAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgcC5oYXMtdGV4dC1hbGlnbi1sZWZ0ID4gYTpmb2N1cyxcbiAgICAgIC5ndXRlbmJlcmctY29udGVudCBwLmhhcy10ZXh0LWFsaWduLWNlbnRlciA+IGE6Zm9jdXMsXG4gICAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgcC5oYXMtdGV4dC1hbGlnbi1yaWdodCA+IGE6Zm9jdXMsXG4gICAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgcC5oYXMtc21hbGwtZm9udC1zaXplID4gYTpmb2N1cyxcbiAgICAgIC5ndXRlbmJlcmctY29udGVudCBmaWdjYXB0aW9uID4gYTpmb2N1cyxcbiAgICAgIC5ndXRlbmJlcmctY29udGVudCBwOm5vdChbY2xhc3NdKSA+IGEuaXMtZXh0ZXJuYWwtbGluazpmb2N1cyB7XG4gICAgICAgIG91dGxpbmUtb2Zmc2V0OiA1cHg7XG4gICAgICAgIHRyYW5zaXRpb246IG91dGxpbmUtb2Zmc2V0IC4yNXMgZWFzZTsgfSB9XG4gICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciBbZGF0YS10eXBlPVwiY29yZS9wYXJhZ3JhcGhcIl0gPiBhOmZvY3VzOjphZnRlcixcbiAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIGxpID4gYTpmb2N1czo6YWZ0ZXIsXG4gICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciBwID4gc3Ryb25nID4gYTpmb2N1czo6YWZ0ZXIsXG4gICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciBwID4gZW0gPiBhOmZvY3VzOjphZnRlcixcbiAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIHA6bm90KFtjbGFzc10pID4gYTpub3QoW2NsYXNzXSk6Zm9jdXM6OmFmdGVyLFxuICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgcC5oYXMtdGV4dC1hbGlnbi1sZWZ0ID4gYTpmb2N1czo6YWZ0ZXIsXG4gICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciBwLmhhcy10ZXh0LWFsaWduLWNlbnRlciA+IGE6Zm9jdXM6OmFmdGVyLFxuICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgcC5oYXMtdGV4dC1hbGlnbi1yaWdodCA+IGE6Zm9jdXM6OmFmdGVyLFxuICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgcC5oYXMtc21hbGwtZm9udC1zaXplID4gYTpmb2N1czo6YWZ0ZXIsXG4gICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciBmaWdjYXB0aW9uID4gYTpmb2N1czo6YWZ0ZXIsXG4gICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciBwOm5vdChbY2xhc3NdKSA+IGEuaXMtZXh0ZXJuYWwtbGluazpmb2N1czo6YWZ0ZXIsXG4gICAgLmd1dGVuYmVyZy1jb250ZW50IFtkYXRhLXR5cGU9XCJjb3JlL3BhcmFncmFwaFwiXSA+IGE6Zm9jdXM6OmFmdGVyLFxuICAgIC5ndXRlbmJlcmctY29udGVudCBsaSA+IGE6Zm9jdXM6OmFmdGVyLFxuICAgIC5ndXRlbmJlcmctY29udGVudCBwID4gc3Ryb25nID4gYTpmb2N1czo6YWZ0ZXIsXG4gICAgLmd1dGVuYmVyZy1jb250ZW50IHAgPiBlbSA+IGE6Zm9jdXM6OmFmdGVyLFxuICAgIC5ndXRlbmJlcmctY29udGVudCBwOm5vdChbY2xhc3NdKSA+IGE6bm90KFtjbGFzc10pOmZvY3VzOjphZnRlcixcbiAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgcC5oYXMtdGV4dC1hbGlnbi1sZWZ0ID4gYTpmb2N1czo6YWZ0ZXIsXG4gICAgLmd1dGVuYmVyZy1jb250ZW50IHAuaGFzLXRleHQtYWxpZ24tY2VudGVyID4gYTpmb2N1czo6YWZ0ZXIsXG4gICAgLmd1dGVuYmVyZy1jb250ZW50IHAuaGFzLXRleHQtYWxpZ24tcmlnaHQgPiBhOmZvY3VzOjphZnRlcixcbiAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgcC5oYXMtc21hbGwtZm9udC1zaXplID4gYTpmb2N1czo6YWZ0ZXIsXG4gICAgLmd1dGVuYmVyZy1jb250ZW50IGZpZ2NhcHRpb24gPiBhOmZvY3VzOjphZnRlcixcbiAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgcDpub3QoW2NsYXNzXSkgPiBhLmlzLWV4dGVybmFsLWxpbms6Zm9jdXM6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uLy4uL3N2Zy9leHRlcm5hbC1saW5rLWJsYWNrLnN2Z1wiKTsgfVxuIiwiLyoqXG4gKiBDb252ZXJ0IGhleCBjb2xvciB0byBSR0IgY29sb3IgZm9ybWF0XG4gKi9cblxuQGZ1bmN0aW9uIGhleHRvcmdiKCRoZXgpIHtcbiAgQHJldHVybiByZWQoJGhleCksIGdyZWVuKCRoZXgpLCBibHVlKCRoZXgpO1xufVxuIiwiLy8gVHlwb2dyYXBoeSBoZWxwZXJzXG5cbi8qIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLXByb3BlcnR5LXVuaXQtYWxsb3dlZC1saXN0ICovXG4vLyBIZWxwZXIgbWl4aW4gZm9yIHNlbGYtaG9zdGVkIGZvbnRzXG5AbWl4aW4gZm9udEZhY2UoJGZhbWlseSwgJHNyYywgJHdlaWdodDogbm9ybWFsLCAkc3R5bGU6IG5vcm1hbCkge1xuICBAZm9udC1mYWNlIHtcbiAgICAvLyBAbGluayBodHRwczovL2Nzcy10cmlja3MuY29tL2FsbWFuYWMvcHJvcGVydGllcy9mL2ZvbnQtZGlzcGxheS9cbiAgICBmb250LWRpc3BsYXk6IGF1dG87XG4gICAgZm9udC1mYW1pbHk6ICRmYW1pbHk7XG4gICAgZm9udC1zdHlsZTogJHN0eWxlO1xuICAgIGZvbnQtd2VpZ2h0OiAkd2VpZ2h0O1xuXG4gICAgLy8gU2xpZ2h0bHkgRGVlcGVyIEJyb3dzZXIgU3VwcG9ydFxuICAgIC8vIEBzb3VyY2UgaHR0cHM6Ly9jc3MtdHJpY2tzLmNvbS9zbmlwcGV0cy9jc3MvdXNpbmctZm9udC1mYWNlLyNzbGlnaHRseS1kZWVwZXItYnJvd3Nlci1zdXBwb3J0XG4gICAgc3JjOiB1cmwoJyN7JHNyY30ud29mZicpIGZvcm1hdCgnd29mZicpLCB1cmwoJyN7JHNyY30ud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksIHVybCgnI3skc3JjfS50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyk7XG4gIH1cbn1cblxuLy8gUmVzcG9uc2l2ZSBmb250c1xuQG1peGluIHJlc3BvbnNpdmUtZm9udCgkbWluLWZvbnQtc2l6ZSwgJG1heC1mb250LXNpemUsICRtaW4tdnc6IDMyMHB4LCAkbWF4LXZ3OiAxOTIwcHgpIHtcbiAgJHUxOiB1bml0KCRtaW4tdncpO1xuICAkdTI6IHVuaXQoJG1heC12dyk7XG4gICR1MzogdW5pdCgkbWluLWZvbnQtc2l6ZSk7XG4gICR1NDogdW5pdCgkbWF4LWZvbnQtc2l6ZSk7XG5cbiAgQGlmICR1MSA9PSAkdTIgYW5kICR1MSA9PSAkdTMgYW5kICR1MSA9PSAkdTQge1xuICAgIGZvbnQtc2l6ZTogJG1pbi1mb250LXNpemU7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWluLXZ3KSB7XG4gICAgICBmb250LXNpemU6IGNhbGMoI3skbWluLWZvbnQtc2l6ZX0gKyAje3N0cmlwLXVuaXQoJG1heC1mb250LXNpemUgLSAkbWluLWZvbnQtc2l6ZSl9ICogKCgxMDB2dyAtICN7JG1pbi12d30pIC8gI3tzdHJpcC11bml0KCRtYXgtdncgLSAkbWluLXZ3KX0pKTtcbiAgICB9XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWF4LXZ3KSB7XG4gICAgICBmb250LXNpemU6ICRtYXgtZm9udC1zaXplO1xuICAgIH1cbiAgfVxufVxuLyogc3R5bGVsaW50LWVuYWJsZSBkZWNsYXJhdGlvbi1wcm9wZXJ0eS11bml0LWFsbG93ZWQtbGlzdCAqL1xuIiwiLy8gQ1NTIHZhcmlhYmxlc1xuLy8gRGVmaW5lIG5hbWVzOlxuLy8gRm9yIEFBQTogaHR0cHM6Ly93d3cuY29sb3ItYmxpbmRuZXNzLmNvbS9jb2xvci1uYW1lLWh1ZS9cbi8vIEZvciBBQTogaHR0cHM6Ly9jaGlyLmFnL3Byb2plY3RzL25hbWUtdGhhdC1jb2xvci9cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuOnJvb3Qge1xuICAvLyBCcmFuZCBjb2xvciBwb29sXG4gIC0tY29sb3ItYmxhY2s6ICMyMjI7XG4gIC0tY29sb3ItYmxhY2stcm9jazogIzJiMzAzYztcbiAgLS1jb2xvci1ibHVlLWNoYWxrOiAjZWNlNmYyO1xuICAtLWNvbG9yLWVhc3QtYmF5OiAjNTQ1NzczO1xuICAtLWNvbG9yLXBhdHRlbnMtYmx1ZTogI2VhZjFmODtcbiAgLS1jb2xvci1zY2llbmNlLWJsdWU6ICMwMDQ5ZDE7XG4gIC0tY29sb3Itc2Nyb3Bpb246ICM1ZjVmNWY7XG4gIC0tY29sb3ItdmFsaGFsbGE6ICMyYTJkM2U7XG4gIC0tY29sb3Itd2hpdGU6ICNmZmY7XG5cbiAgLy8gTWFpbiBlbGVtZW50IGNvbG9yc1xuICAtLWNvbG9yLWhlYWRpbmc6IHZhcigtLWNvbG9yLW1haW4pO1xuICAtLWNvbG9yLW1haW46IHZhcigtLWNvbG9yLXZhbGhhbGxhKTtcbiAgLS1jb2xvci1wYXJhZ3JhcGg6IHZhcigtLWNvbG9yLWVhc3QtYmF5KTtcblxuICAvLyBNb2Rlcm4gbGluayB0aGF0IGhhcyBiYWNrZ3JvdW5kIGVmZmVjdCBvbiBob3ZlclxuICAtLWNvbG9yLWxpbmstYm9yZGVyLWJvdHRvbTogdmFyKC0tY29sb3Itc2NpZW5jZS1ibHVlKTtcbiAgLS1jb2xvci1saW5rLWJvcmRlci1mb2N1czogdmFyKC0tY29sb3ItYmxhY2spO1xuICAtLWNvbG9yLWxpbmstY29tbWVudDogdmFyKC0tY29sb3Itc2Nyb3Bpb24pO1xuICAtLWNvbG9yLWxpbmstY29tbWVudC10aW1lLWFuY2hvcjogdmFyKC0tY29sb3ItZWFzdC1iYXkpO1xuICAtLWNvbG9yLWxpbmstZWRpdC1iYWNrZ3JvdW5kLWhvdmVyOiB2YXIoLS1jb2xvci1wYXR0ZW5zLWJsdWUpO1xuICAtLWNvbG9yLWxpbmstZWRpdC1ib3JkZXI6IHZhcigtLWNvbG9yLXBhdHRlbnMtYmx1ZSk7XG4gIC0tY29sb3ItbGluay1lZGl0LXRleHQ6IGRhcmtlbigjZWFmMWY4LCAyMCUpO1xuICAtLWNvbG9yLWxpbmstZWRpdC10ZXh0LWhvdmVyOiB2YXIoLS1jb2xvci1lYXN0LWJheSk7XG4gIC0tY29sb3ItbGluay10ZXh0OiB2YXIoLS1jb2xvci1zY2llbmNlLWJsdWUpO1xuICAtLWNvbG9yLWxpbmstdGV4dC1mb2N1czogdmFyKC0tY29sb3ItYmxhY2spO1xuICAtLWNvbG9yLWxpbmstdGV4dC1ob3ZlcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAtLWNvbG9yLWxpbmstYmFja2dyb3VuZC1ob3ZlcjogdmFyKC0tY29sb3ItbGluay10ZXh0KTtcblxuICAvLyBFbGVtZW50IGNvbG9yc1xuICAtLWNvbG9yLWJhY2tncm91bmQtY29kZS1ibG9jazogdmFyKC0tY29sb3ItYmxhY2stcm9jayk7XG4gIC0tY29sb3ItYmFja2dyb3VuZC1jb2RlLWlubGluZTogI2Y5ZjJmNDtcbiAgLS1jb2xvci1iYWNrZ3JvdW5kLWRlZmF1bHQ6ICNmMGYwZjA7XG4gIC0tY29sb3ItYmFja2dyb3VuZC1zaGFkZTogIzAzMDYxYjtcbiAgLS1jb2xvci1iYWNrZ3JvdW5kLXRhYmxlLWNlbGwtb2RkOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIC0tY29sb3ItYmFja2dyb3VuZC10YWJsZS1jZWxsLWV2ZW46ICNmM2YzZjM7XG4gIC0tY29sb3ItYmFja2dyb3VuZC10YWc6IHZhcigtLWNvbG9yLXBhdHRlbnMtYmx1ZSk7XG4gIC0tY29sb3ItYmxvY2txdW90ZTogdmFyKC0tY29sb3Itc2NpZW5jZS1ibHVlKTtcbiAgLS1jb2xvci1jb21tZW50LXRleHQ6IHZhcigtLWNvbG9yLWVhc3QtYmF5KTtcbiAgLS1jb2xvci1jb21tZW50LWF1dGhvci10ZXh0OiB2YXIoLS1jb2xvci1lYXN0LWJheSk7XG4gIC0tY29sb3ItdGFnLWJvcmRlcjogcmdiYSg2LCAyMiwgNDEsIC4xKTtcbiAgLS1jb2xvci10YWctYm9yZGVyLWhvdmVyOiByZ2JhKDYsIDIyLCA0MSwgLjQpO1xuICAtLWNvbG9yLXRhZy10ZXh0OiB2YXIoLS1jb2xvci1ibGFjayk7XG4gIC0tY29sb3ItY2F0ZWdvcnktYm9yZGVyOiAjY2RjZmQ0O1xuICAtLWNvbG9yLWNhdGVnb3J5LXRleHQ6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgLS1jb2xvci1jYXB0aW9uOiAjNWM1YzZhO1xuICAtLWNvbG9yLWNvZGUtYmxvY2s6ICNjNzI1NGU7XG4gIC0tY29sb3ItY29kZS10ZXh0OiAjZjVmNWY1O1xuICAtLWNvbG9yLWVycm9yOiAjZTFiM2IyO1xuICAtLWNvbG9yLWtiZC1ib3JkZXI6ICNjY2M7XG4gIC0tY29sb3Ita2JkLWJhY2tncm91bmQ6IHZhcigtLWNvbG9yLXBhdHRlbnMtYmx1ZSk7XG4gIC0tY29sb3Itb3V0bGluZS1vdmVybGF5LWl0ZW1zOiAjZmY4NDhhO1xuICAtLWNvbG9yLXBhZ2luYXRpb24tdGV4dDogdmFyKC0tY29sb3ItdmFsaGFsbGEpO1xuICAtLWNvbG9yLXBhZ2luYXRpb24tYmFja2dyb3VuZC1ob3ZlcjogdmFyKC0tY29sb3ItdmFsaGFsbGEpO1xuICAtLWNvbG9yLXBhZ2luYXRpb24tYm9yZGVyLWhvdmVyOiB2YXIoLS1jb2xvci12YWxoYWxsYSk7XG4gIC0tY29sb3ItcGFnaW5hdGlvbi10ZXh0LWhvdmVyOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIC0tY29sb3ItcGFnaW5hdGlvbi1iYWNrZ3JvdW5kLWN1cnJlbnQ6IHZhcigtLWNvbG9yLXZhbGhhbGxhKTtcbiAgLS1jb2xvci1wYWdpbmF0aW9uLWJvcmRlci1jdXJyZW50OiB2YXIoLS1jb2xvci12YWxoYWxsYSk7XG4gIC0tY29sb3ItcGFnaW5hdGlvbi10ZXh0LWN1cnJlbnQ6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgLS1jb2xvci1zdWNjZXNzOiAjOGVkMTg1O1xuICAtLWNvbG9yLXRvcC1hcnJvdy1kYXJrOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gIC0tY29sb3ItdG9wLWFycm93LWxpZ2h0OiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIC0tY29sb3Itd2FybmluZzogI2Y0YWE3MTtcbn1cbiIsIi8vIENTUyBWYXJpYWJsZXMgZm9yIHJlc3BvbnNpdmUgcGFkZGluZ3MgYW5kIG1hcmdpbnNcbjpyb290IHtcbiAgLy8gUGFkZGluZ3NcbiAgLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsOiAycmVtO1xuICAtLXBhZGRpbmctY29udGFpbmVyLXZlcnRpY2FsOiA2LjRyZW07XG4gIC0tcGFkZGluZy1zaXRlLWhlYWRlci12ZXJ0aWNhbDogMnJlbTtcbiAgLS1wYWRkaW5nLWJsb2NrOiA4cmVtO1xuXG4gIC8vIE1hcmdpbnNcbiAgLS1tYXJnaW4tYmV0d2Vlbi10ZXh0LWVsZW1lbnRzOiA0cmVtO1xuICAtLW1hcmdpbi13cC1ibG9jay1pbWFnZTogNHJlbTtcbiAgLS1tYXJnaW4tYmV0d2Vlbi1wYXJhZ3JhcGhzOiAyLjdyZW07XG5cbiAgLy8gTWlkLXNpemVkIHNjcmVlbnNcbiAgQG1lZGlhIChtYXgtd2lkdGg6ICR3aWR0aC1ncmlkLWJhc2UgKyAxNTBweCkge1xuICAgIC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbDogMnJlbTtcbiAgfVxuXG4gIC8vIFdoZW4gbmF2aWdhdGlvbiB0cmFuc2Zvcm1zIHRvIGEgcmVzcG9uc2l2ZSBoYW1idXJnZXIgbWVudVxuICBAbWVkaWEgKG1heC13aWR0aDogJHdpZHRoLW1heC1tb2JpbGUpIHtcbiAgICAtLXBhZGRpbmctc2l0ZS1oZWFkZXItdmVydGljYWw6IDJyZW07XG4gIH1cblxuICAvLyBpUGFkXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkY29udGFpbmVyLWlwYWQpIHtcbiAgICAtLXBhZGRpbmctY29udGFpbmVyLXZlcnRpY2FsOiA1cmVtO1xuICB9XG5cbiAgLy8gQmV0d2VlbiBpUGFkIGFuZCBhIG1vYmlsZSBwaG9uZVxuICBAbWVkaWEgKG1heC13aWR0aDogNjAwcHgpIHtcbiAgICAtLXBhZGRpbmctYmxvY2s6IDZyZW07XG4gIH1cblxuICAvLyBWYXJzIGluIG1vYmlsZVxuICBAbWVkaWEgKG1heC13aWR0aDogJGNvbnRhaW5lci1tb2JpbGUpIHtcbiAgICAtLXBhZGRpbmctY29udGFpbmVyLXZlcnRpY2FsOiA0cmVtO1xuICB9XG59XG4iLCIvLyBTZWxmLWhvc3RlZCBmb250c1xuLy8gUmVtZW1iZXIgdG8gYWRkIHRoZXNlIGFsc28gdG8gZ3V0ZW5iZXJnL3ZhcmlhYmxlcy9fZm9udC1mYW1pbHkuc2Nzc1xuLy8gd2l0aCBjb3JyZWN0IHBhdGhzXG5AaW5jbHVkZSBmb250RmFjZSgnSW50ZXInLCAnLi4vLi4vZm9udHMvSW50ZXItUmVndWxhcicsIDQwMCk7XG5AaW5jbHVkZSBmb250RmFjZSgnSW50ZXInLCAnLi4vLi4vZm9udHMvSW50ZXItSXRhbGljJywgNDAwLCBpdGFsaWMpO1xuQGluY2x1ZGUgZm9udEZhY2UoJ0ludGVyJywgJy4uLy4uL2ZvbnRzL0ludGVyLUJvbGQnLCA3MDApO1xuIiwiLy8gRm9udCBmYW1pbHkgc2V0dGluZ3Ncbi8vIFlvdSBjYW4gZGVmaW5lIHlvdXIgb3duIGZvbnQgZmFtaWxpZXMgaGVyZSwgbGlrZSAtLWZvbnQtYmFybG93XG4vLyBhbmQgdGhlbiBhdHRhY2ggdGhlbSB0byBlbGVtZW50czogLS1mb250LXBhcmFncmFwaDogdmFyKC0tZm9udC1iYXJsb3cpXG46cm9vdCB7XG4gIC0tZm9udC1zZXJpZjogc2Fucy1zZXJpZjtcbiAgLS1mb250LXNhbnM6ICdJbnRlcicsIC1hcHBsZS1zeXN0ZW0sICdCbGlua01hY1N5c3RlbUZvbnQnLCAnU2Vnb2UgVUknLCAnUm9ib3RvJywgJ094eWdlbi1TYW5zJywgJ1VidW50dScsICdDYW50YXJlbGwnLCAnSGVsdmV0aWNhIE5ldWUnLCBzYW5zLXNlcmlmO1xuICAtLWZvbnQtbW9ub3NwYWNlOiAnSW5jb25zb2xhdGEnLCAnTWVubG8nLCAnTW9uYWNvJywgJ0NvbnNvbGFzJywgJ0FuZGFsZSBNb25vJywgJ0JpdHN0cmVhbSBWZXJhIFNhbnMgTW9ubycsICdDb3VyaWVyIE5ldycsIG1vbm9zcGFjZTtcblxuICAvLyBGb250cyBpbiB1c2UgZm9yIGNvbnRlbnRcbiAgLS1mb250LXBhcmFncmFwaDogdmFyKC0tZm9udC1zYW5zKTtcbiAgLS1mb250LWhlYWRpbmc6IHZhcigtLWZvbnQtc2Fucyk7XG59XG4iLCIvLyBDU1MgVmFyaWFibGVzIGZvciByZXNwb25zaXZlIGZvbnRzXG46cm9vdCB7XG4gIC8vIEhlYWRpbmcgZm9udCBzaXplc1xuICAtLWZvbnQtc2l6ZS1oZXJvOiA1MnB4O1xuICAtLWZvbnQtc2l6ZS1oMTogNDBweDtcbiAgLS1mb250LXNpemUtaDI6IDMwcHg7XG4gIC0tZm9udC1zaXplLWgzOiAyNHB4O1xuICAtLWZvbnQtc2l6ZS1oNDogMjBweDtcbiAgLS1mb250LXNpemUtaDU6IDE2cHg7XG4gIC0tZm9udC1zaXplLWg2OiAxNHB4O1xuXG4gIC8vIEhlYWRpbmcgZm9udCBzaXplcyBpbiBtb2JpbGVcbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRjb250YWluZXItbW9iaWxlKSB7XG4gICAgLS1mb250LXNpemUtaGVybzogMzhweDtcbiAgICAtLWZvbnQtc2l6ZS1oMTogMzJweDtcbiAgICAtLWZvbnQtc2l6ZS1oMjogMjRweDtcbiAgICAtLWZvbnQtc2l6ZS1oMzogMjFweDtcbiAgICAtLWZvbnQtc2l6ZS1oNDogMThweDtcbiAgICAtLWZvbnQtc2l6ZS1oNTogMTRweDtcbiAgICAtLWZvbnQtc2l6ZS1oNjogMTJweDtcbiAgfVxuXG4gIC8vIFBhcmFncmFwaCBmb250IHNpemVzXG4gIC0tZm9udC1zaXplLTE0OiAxNHB4O1xuICAtLWZvbnQtc2l6ZS0xNTogMTVweDtcbiAgLS1mb250LXNpemUtMTY6IDE2cHg7XG4gIC0tZm9udC1zaXplLTE3OiAxN3B4O1xuICAtLWZvbnQtc2l6ZS0xODogMThweDtcbiAgLS1mb250LXNpemUtMjA6IDIwcHg7XG4gIC0tZm9udC1zaXplLTIyOiAyMnB4O1xuXG4gIC8vIFBhcmFncmFwaCBmb250IHNpemVzIGluIHRpbnkgcGhvbmVzIGxpa2UgaVBob25lIDVTXG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0MjBweCkge1xuICAgIC0tZm9udC1zaXplLTE2OiAxNHB4O1xuICB9XG5cbiAgLy8gRWxlbWVudCBmb250IHNpemVzXG4gIC0tZm9udC1zaXplLWRlZmF1bHQ6IHZhcigtLWZvbnQtc2l6ZS0xNyk7XG4gIC0tZm9udC1zaXplLXBhcmFncmFwaHM6IHZhcigtLWZvbnQtc2l6ZS0xOCk7XG4gIC0tZm9udC1zaXplLW5hdi10b2dnbGUtbGFiZWw6IDE1cHg7XG4gIC0tZm9udC1zaXplLWNhcHRpb25zOiAxNXB4O1xuXG4gIC8vIEVsZW1lbnQgZm9udCBzaXplcyBpbiBtb2JpbGVcbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRjb250YWluZXItbW9iaWxlKSB7XG4gICAgLS1mb250LXNpemUtcGFyYWdyYXBoczogMTZweDtcbiAgICAtLWZvbnQtc2l6ZS1kZWZhdWx0OiAxNnB4O1xuICB9XG5cbiAgLy8gRWxlbWVudCBmb250IHNpemVzIGluIHRpbnkgcGhvbmVzIGxpa2UgaVBob25lIDVTXG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0MjBweCkge1xuICAgIC0tZm9udC1zaXplLW5hdi10b2dnbGUtbGFiZWw6IDEzcHg7XG4gIH1cblxuICAvLyBMaW5lLWhlaWdodHNcbiAgLS1saW5lLWhlaWdodC1oZWFkaW5nczogMS41O1xuICAtLWxpbmUtaGVpZ2h0LWNvcmUtaGVhZGluZzogMS4yMztcbiAgLS1saW5lLWhlaWdodC1wYXJhZ3JhcGhzOiAxLjc7XG4gIC0tbGluZS1oZWlnaHQtcGFyYWdyYXBocy1ibG9nOiAxLjc3O1xuXG4gIC8vIEZvbnQgd2VpZ2h0c1xuICAtLWZvbnQtd2VpZ2h0LXJlZ3VsYXI6IDQwMDtcbiAgLS1mb250LXdlaWdodC1tZWRpdW06IDUwMDtcbiAgLS1mb250LXdlaWdodC1zZW1pYm9sZDogNjAwO1xuICAtLWZvbnQtd2VpZ2h0LWJvbGQ6IDcwMDtcbiAgLS1mb250LXdlaWdodC1wYXJhZ3JhcGhzOiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbiAgLS1mb250LXdlaWdodC1oZWFkaW5nczogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XG59XG4iLCIvKiBzdHlsZWxpbnQtZGlzYWJsZSBudW1iZXItbWF4LXByZWNpc2lvbiAqL1xuQG1peGluIGJ1dHRvbigkbWF4LXdpZHRoOiAyMzBweCwgJGNvbG9yOiB2YXIoLS1jb2xvci1idXR0b24pLCAkaG92ZXI6IHZhcigtLWNvbG9yLWJ1dHRvbi1ob3ZlciksICRiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1idXR0b24tYmFja2dyb3VuZCksICRiYWNrZ3JvdW5kLWhvdmVyOiB2YXIoLS1jb2xvci1idXR0b24tYmFja2dyb3VuZC1ob3ZlciksICRyYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtaW5wdXQtZmllbGQpLCAkYm9yZGVyOiB2YXIoLS1ib3JkZXItd2lkdGgtaW5wdXQtZmllbGQpIHNvbGlkIHZhcigtLWNvbG9yLWJ1dHRvbi1iYWNrZ3JvdW5kKSwgJGJvcmRlci1ob3ZlcjogdmFyKC0tYm9yZGVyLXdpZHRoLWlucHV0LWZpZWxkKSBzb2xpZCAkYmFja2dyb3VuZC1ob3ZlciwgJHdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtc2VtaWJvbGQpLCAkYXJyb3c6IGZhbHNlLCAkdHJhbnNpdGlvbjogYWxsIC4wOHMgY3ViaWMtYmV6aWVyKC4yNSwgLjQ2LCAuNDUsIC45NCkpIHtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gIGJvcmRlcjogJGJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJHJhZGl1cztcbiAgY29sb3I6ICRjb2xvcjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXBhcmFncmFwaCk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTE2KTtcbiAgZm9udC13ZWlnaHQ6ICR3ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAxOS42MzY0cHg7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIG1heC13aWR0aDogJG1heC13aWR0aDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZy1ib3R0b206IGNhbGMoMTRweCAtIGNhbGModmFyKC0tYm9yZGVyLXdpZHRoLWlucHV0LWZpZWxkKSAqIDIpKTtcbiAgcGFkZGluZy1sZWZ0OiBjYWxjKDIxcHggLSBjYWxjKHZhcigtLWJvcmRlci13aWR0aC1pbnB1dC1maWVsZCkgKiAyKSk7XG4gIHBhZGRpbmctcmlnaHQ6IGNhbGMoMjFweCAtIGNhbGModmFyKC0tYm9yZGVyLXdpZHRoLWlucHV0LWZpZWxkKSAqIDIpKTtcbiAgcGFkZGluZy10b3A6IGNhbGMoMTRweCAtIGNhbGModmFyKC0tYm9yZGVyLXdpZHRoLWlucHV0LWZpZWxkKSAqIDIpKTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgd2lkdGg6IGF1dG87XG5cbiAgLy8gQnV0dG9ucyB1c3VhbGx5IGFscmVhZHkgaGF2ZSBhcnJvd3NcbiAgLyogc3R5bGVsaW50LWRpc2FibGUgYTExeS9uby1kaXNwbGF5LW5vbmUgKi9cbiAgJi5pcy1leHRlcm5hbC1saW5rOjphZnRlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAvKiBzdHlsZWxpbnQtZW5hYmxlICovXG5cbiAgLy8gQXJyb3cgaWNvblxuICBAaWYgJGFycm93IHtcbiAgICBzdmcge1xuICAgICAgbWFyZ2luLWxlZnQ6IDJyZW07XG4gICAgfVxuICB9XG5cbiAgJi5mb2N1cyxcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQtaG92ZXI7XG4gICAgYm9yZGVyOiAkYm9yZGVyLWhvdmVyO1xuICAgIGNvbG9yOiAkaG92ZXI7XG4gIH1cbn1cbiIsIi8qIHN0eWxlbGludC1kaXNhYmxlIG51bWJlci1tYXgtcHJlY2lzaW9uICovXG5AbWl4aW4gYnV0dG9uLXNpemUtc21hbGwoKSB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTE2KTtcbiAgbGluZS1oZWlnaHQ6IDIwLjkwOTFweDtcbiAgcGFkZGluZy1ib3R0b206IGNhbGMoMTBweCAtIGNhbGModmFyKC0tYm9yZGVyLXdpZHRoLWlucHV0LWZpZWxkKSAqIDIpKTtcbiAgcGFkZGluZy1sZWZ0OiBjYWxjKDIxcHggLSBjYWxjKHZhcigtLWJvcmRlci13aWR0aC1pbnB1dC1maWVsZCkgKiAyKSk7XG4gIHBhZGRpbmctcmlnaHQ6IGNhbGMoMjFweCAtIGNhbGModmFyKC0tYm9yZGVyLXdpZHRoLWlucHV0LWZpZWxkKSAqIDIpKTtcbiAgcGFkZGluZy10b3A6IGNhbGMoMTBweCAtIGNhbGModmFyKC0tYm9yZGVyLXdpZHRoLWlucHV0LWZpZWxkKSAqIDIpKTtcbn1cbiIsIi8qIHN0eWxlbGludC1kaXNhYmxlIG51bWJlci1tYXgtcHJlY2lzaW9uICovXG5AbWl4aW4gYnV0dG9uLXNpemUtbGFyZ2UoKSB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTE4KTtcbiAgbGluZS1oZWlnaHQ6IDIzLjA5MDlweDtcbiAgcGFkZGluZy1ib3R0b206IGNhbGMoMTdweCAtIGNhbGModmFyKC0tYm9yZGVyLXdpZHRoLWlucHV0LWZpZWxkKSAqIDIpKTtcbiAgcGFkZGluZy1sZWZ0OiBjYWxjKDIxcHggLSBjYWxjKHZhcigtLWJvcmRlci13aWR0aC1pbnB1dC1maWVsZCkgKiAyKSk7XG4gIHBhZGRpbmctcmlnaHQ6IGNhbGMoMjFweCAtIGNhbGModmFyKC0tYm9yZGVyLXdpZHRoLWlucHV0LWZpZWxkKSAqIDIpKTtcbiAgcGFkZGluZy10b3A6IGNhbGMoMTdweCAtIGNhbGModmFyKC0tYm9yZGVyLXdpZHRoLWlucHV0LWZpZWxkKSAqIDIpKTtcbn1cbiIsIkBtaXhpbiBoZWFkaW5nLWhlcm8oKSB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWhlcm8pO1xufVxuXG4uaGVhZGluZy1oZXJvIHtcbiAgQGluY2x1ZGUgaGVhZGluZy1oZXJvKCk7XG59XG4iLCIvLyBBY2Nlc3NpYmlsaXR5XG4vL1xuLy8gQSBoaWRkZW4gc2NyZWVuIHJlYWRlciBmb3IgcmVhZGVycywgZm9jdXMgZWxlbWVudHMgZm9yXG4vLyB2aXNpb24gaW1wYWlyZWQgYW5kIG90aGVyIHVzZWZ1bCBhMTF5IENTUyBoYWNrcy5cblxuLy8gVGV4dCBtZWFudCBvbmx5IGZvciBzY3JlZW4gcmVhZGVycy5cbi5zY3JlZW4tcmVhZGVyLXRleHQge1xuICBib3JkZXI6IDA7XG4gIGNsaXA6IHJlY3QoMXB4LCAxcHgsIDFweCwgMXB4KTtcbiAgY2xpcC1wYXRoOiBpbnNldCg1MCUpO1xuICBoZWlnaHQ6IDFweDtcbiAgbWFyZ2luOiAtMXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nOiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7XG5cbiAgLyogc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50ICovXG4gIHdvcmQtd3JhcDogbm9ybWFsICFpbXBvcnRhbnQ7IC8vIE1hbnkgc2NyZWVuIHJlYWRlciBhbmQgYnJvd3NlciBjb21iaW5hdGlvbnMgYW5ub3VuY2UgYnJva2VuIHdvcmRzIGFzIHRoZXkgd291bGQgYXBwZWFyIHZpc3VhbGx5LlxuICAvKiBzdHlsZWxpbnQtZW5hYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudCAqL1xuXG4gICYuc2tpcC1saW5rIHtcbiAgICBtYXJnaW46IDVweDtcblxuICAgICY6Zm9jdXMge1xuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgICB9XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBib3gtc2hhZG93OiAwIDAgMnB4IDJweCByZ2JhKDIyLCAyMiwgMjIsIC42KTtcbiAgICBjbGlwOiBhdXRvO1xuICAgIGNsaXAtcGF0aDogbm9uZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6IDEuN3JlbTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDVweDtcbiAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgIHBhZGRpbmc6IDE1cHggMjNweCAxNHB4O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB0b3A6IDVweDtcbiAgICB3aWR0aDogYXV0bztcbiAgICB6LWluZGV4OiAxMDAwMDA7IC8vIEFib3ZlIFdQIHRvb2xiYXIuXG4gIH1cbn1cblxuLy8gU3VwcHJlc3MgZm9jdXMgcmluZyBvbiBmb3IgbW91c2UgYW5kIHRvdWNoIHVzZXJzIGZvciB2aXN1YWwgcmVhc29uc1xuLyogc3R5bGVsaW50LWRpc2FibGUgYTExeS9uby1vdXRsaW5lLW5vbmUgKi9cbltkYXRhLXdoYXRpbnB1dD1cIm1vdXNlXCJdICo6Zm9jdXMsXG5bZGF0YS13aGF0aW5wdXQ9XCJ0b3VjaFwiXSAqOmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbn1cbi8qIHN0eWxlbGludC1lbmFibGUgYTExeS9uby1vdXRsaW5lLW5vbmUgKi9cblxuLy8gVmlzdWFsbHkgZGlzdGluY3QgZm9jdXMgY29sb3Igb24ga2V5Ym9hcmRcbltkYXRhLXdoYXRpbnB1dD1cImtleWJvYXJkXCJdIHtcblxuICAvLyBNYWtlIHN1cmUgZXZlcnkgZm9jdXNhYmxlIGVsZW1lbnQgaGFzIG9wYWNpdHkgMTAwJVxuICBhOmZvY3VzLFxuICBpbnB1dDpmb2N1cyxcbiAgYnV0dG9uOmZvY3VzLFxuICBzZWxlY3Q6Zm9jdXMsXG4gIHRleHRhcmVhOmZvY3VzLFxuICBkaXZbdGFiaW5kZXhdOmZvY3VzIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgLmdsb2JhbC1saW5rIHtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG5cbiAgLy8gQSBiaXQgYmV0dGVyIGZvY3VzIGZvciBsYXJnZSBlbGVtZW50c1xuICBhLmdsb2JhbC1saW5rOmZvY3VzIHtcbiAgICBvdXRsaW5lLWNvbG9yOiB2YXIoLS1jb2xvci1vdXRsaW5lLW92ZXJsYXktaXRlbXMpO1xuICAgIG91dGxpbmUtb2Zmc2V0OiAtMXB4O1xuICAgIG91dGxpbmUtc3R5bGU6IHNvbGlkO1xuICAgIG91dGxpbmUtd2lkdGg6IDRweDtcbiAgfVxufVxuXG4vLyBBZGQgaWNvbiB0byBleHRlcm5hbCBsaW5rc1xuYS5pcy1leHRlcm5hbC1saW5rIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcblxuICAmOjphZnRlciB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi8uLi9zdmcvZXh0ZXJuYWwtbGluay5zdmcnKTtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDE0cHggMTRweDtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDJweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIHRyYW5zaXRpb246IGFsbCAuMThzIGVhc2UtaW4tb3V0O1xuICAgIHdpZHRoOiAxNHB4O1xuICB9XG59XG5cbi8vIERvIG5vdCB1c2UgZXh0ZXJuYWwgbGlua3MgaW5kaWNhdG9ycyBpbiBhcmVhcyB0aGF0IHRoZXkgZG9uJ3QgbG9vayBnb29kIG9yIGZpdFxuLyogc3R5bGVsaW50LWRpc2FibGUgYTExeS9uby1kaXNwbGF5LW5vbmUgKi9cbmEuaXMtZXh0ZXJuYWwtbGluay5nbG9iYWwtbGluazo6YWZ0ZXIsXG5hLmlzLWV4dGVybmFsLWxpbmsubm8tZXh0ZXJuYWwtbGluay1pbmRpY2F0b3I6OmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi8qIHN0eWxlbGludC1lbmFibGUgYTExeS9uby1kaXNwbGF5LW5vbmUgKi9cblxuLy8gQWNjZXNzaWJpbGl0eTogRGlzYWJsZSBhbmltYXRpb24gaWYgcmVkdWNlIG1vdGlvbiBpcyBlbmFibGVkXG5AbWVkaWEgc2NyZWVuIGFuZCAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSwgKHVwZGF0ZTogc2xvdykge1xuICAvLyBZb3VyIGFuaW1hdGlvbnMgaGVyZVxufVxuXG4vLyBEZWZpbmUgaGVyZSB0aGUgdXBzZWxsIGJsb2NrcyB0aGF0IGhhdmUgb3ZlcmxheSBsaW5rIGFyZWFzXG4vLyBpbnNpZGUgdGhlbVxuLy8gVGhlc2Ugc2hvdWxkIGFsd2F5cyBoYXZlIG92ZXJmbG93IHZpc2libGUsIGJlY2F1c2Ugb3RoZXJ3aXNlXG4vLyB0aGUgb3V0bGluZSB3aWxsIG5vdCBiZSB2aXNpYmxlIG91dHNpZGUgdGhlIGVsZW1lbnRcbi8vIC5ibG9jay5ibG9jay10aHJlZS11cHNlbGxzIC5jb250YWluZXIsXG4vLyBib2R5IC5ibG9jayAuY29udGFpbmVyIC5jb2wge1xuLy8gICBvdmVyZmxvdzogdmlzaWJsZTtcbi8vIH1cblxuLy8gTWFrZSBmb2N1cyBhIGxpdHRsZSBtb3JlIGVuZ2FnaW5nXG4vLyBAc291cmNlIGh0dHBzOi8vdHdpdHRlci5jb20vYXJneWxlaW5rL3N0YXR1cy8xMzg3MDcyMDk1MTU5NDA2NTk2XG4vLyBAbGluayBodHRwczovL2NvZGVwZW4uaW8vYXJneWxlaW5rL3Blbi9KakV6ZUxwXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IG5vLXByZWZlcmVuY2UpIHtcbiAgOmZvY3VzLFxuICAqOmZvY3VzLFxuICBbZGF0YS13aGF0aW5wdXQ9XCJrZXlib2FyZFwiXSA6Zm9jdXMsXG4gIFtkYXRhLXdoYXRpbnB1dD1cImtleWJvYXJkXCJdIGE6Zm9jdXMge1xuICAgIG91dGxpbmUtb2Zmc2V0OiA1cHg7XG4gICAgdHJhbnNpdGlvbjogb3V0bGluZS1vZmZzZXQgLjI1cyBlYXNlO1xuICB9XG59XG4iLCIvLyBTaXRlIG5hdmlnYXRpb24gZGVza3RvcCBsYXlvdXRcbi8vIFRoZSBtYWluIGxheW91dCBmb3IgdGhlIHdlYnNpdGUgbmF2aWdhdGlvbiwgZm9yIGEgZGVza3RvcCBkZXZpY2VzIG9ubHkuXG5cbi8vIFNldHRpbmdzXG4kYWJzb2x1dGUtbmF2aWdhdGlvbjogdHJ1ZTtcbiR1c2UtZHJvcGRvd24tYnViYmxlOiB0cnVlO1xuJHVzZS1kcm9wZG93bi10b2dnbGUtYW5pbWF0aW9uOiB0cnVlO1xuXG4vLyBDU1MgdmFyaWFibGVzXG4vLyBUaGVzZSBjYW4gYmUgYWRqdXN0ZWQgd2l0aCBtZWRpYSBxdWVyaWVzIGZvciBpbi1iZXR3ZWVuIGJyZWFrcG9pbnRzXG46cm9vdCB7XG4gIC8vIERpbWVuc2lvbnMsIGdhcHMgYW5kIHNwYWNpbmdzXG4gIC0tYm9yZGVyLXJhZGl1cy1zdWItbWVudTogMDtcbiAgLS1ib3gtc2hhZG93LW5hdmlnYXRpb24tc3RhdGljOiAwIDAgMTBweCByZ2JhKDg0LCA4NywgMTE1LCAuMSk7XG4gIC0tZHJvcGRvd24tdG9nZ2xlLXNpemU6IDEycHg7XG4gIC0tZ2FwLWRyb3Bkb3duOiAxcmVtO1xuICAtLWdhcC1iZXR3ZWVuLWRyb3Bkb3duLXRvZ2dsZTogMS41cmVtO1xuICAtLXBhZGRpbmctbWFpbi1sZXZlbC12ZXJ0aWNhbDogLjZyZW07XG4gIC0tcGFkZGluZy1tYWluLWxldmVsLWhvcml6b250YWw6IDJyZW07XG4gIC0tcGFkZGluZy1zdWItbWVudS12ZXJ0aWNhbDogLjZyZW07XG4gIC0tcGFkZGluZy1zdWItbWVudS1ob3Jpem9udGFsOiAxLjVyZW07XG4gIC0td2lkdGgtc3ViLW1lbnU6IDIycmVtO1xuXG4gIC8vIENvbG9yc1xuICAtLWNvbG9yLWJhY2tncm91bmQtbmF2LWRlc2t0b3A6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgLS1jb2xvci1iYWNrZ3JvdW5kLXN1Yi1tZW51OiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIC0tY29sb3ItYm9yZGVyLXN1Yi1tZW51OiByZ2JhKDQxLCA0NCwgNjEsIC4wNSk7XG4gIC0tY29sb3ItZHJvcGRvd24tdG9nZ2xlOiB2YXIoLS1jb2xvci12YWxoYWxsYSk7XG4gIC0tY29sb3Itc3ViLW1lbnU6IHZhcigtLWNvbG9yLXZhbGhhbGxhKTtcbiAgLS1jb2xvci1ob3Zlci1tYWluLWxldmVsOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIC0tY29sb3ItaG92ZXItc3ViLW1lbnU6IHZhcigtLWNvbG9yLXZhbGhhbGxhKTtcbiAgLS1jb2xvci1tYWluLWxldmVsOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIC0tY29sb3ItY3VycmVudDogdmFyKC0tY29sb3ItbWFpbik7XG5cbiAgLy8gRm9udCBzdHlsZXNcbiAgLS1mb250LXNpemUtbWFpbi1sZXZlbDogMTdweDtcbiAgLS1mb250LXNpemUtc3ViLW1lbnU6IDE2cHg7XG4gIC0tZm9udC13ZWlnaHQtbWFpbi1sZXZlbDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XG4gIC0tZm9udC13ZWlnaHQtc3ViLW1lbnU6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xufVxuXG4vLyBHZW5lcmFsIG5hdmlnYXRpb24gcmVzZXRzXG4uc2l0ZS1oZWFkZXIgdWwge1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICR3aWR0aC1tYXgtbW9iaWxlKSB7XG4gIC5uYXYtY29udGFpbmVyIHtcbiAgICBAaWYgJGFic29sdXRlLW5hdmlnYXRpb24gPT0gZmFsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmFja2dyb3VuZC1uYXYtZGVza3RvcCk7XG4gICAgICBib3gtc2hhZG93OiB2YXIoLS1ib3gtc2hhZG93LW5hdmlnYXRpb24tc3RhdGljKTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHotaW5kZXg6IDIyMjtcbiAgICB9XG5cbiAgICBAaWYgJGFic29sdXRlLW5hdmlnYXRpb24gPT0gdHJ1ZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHdpZHRoLW1heC1tb2JpbGUpIHtcbiAgICB1bCBsaTpmb2N1cyA+IHVsLFxuICAgIHVsIGxpOmhvdmVyID4gdWwge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG5cbiAgLy8gRGlzYWJsZSBhbmltYXRpb25zIG9uIElFMTAgKyBJRTExXG4gIEBtZWRpYSBzY3JlZW4gYW5kICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7XG4gICAgLy8gRW5hYmxlIGhvdmVyc1xuICAgIHVsIGxpOmZvY3VzID4gdWwsXG4gICAgdWwgbGk6aG92ZXIgPiB1bCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cblxuICAvLyBOZWVkIHRvIHVzZSBkaXNwbGF5OiBub25lIGhlcmUgdG8gbWFrZSBzdXJlIG1vYmlsZSBuYXYtdG9nZ2xlIGlzIHZpc3VhbGx5IGhpZGRlbiBvbiBkZXNrdG9wXG4gIC8qIHN0eWxlbGludC1kaXNhYmxlIGExMXkvbm8tZGlzcGxheS1ub25lICovXG4gIC5uYXYtdG9nZ2xlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC8qIHN0eWxlbGludC1lbmFibGUgKi9cblxuICAvLyBOYXZpZ2F0aW9uIHdyYXBwZXJcbiAgLm5hdi1wcmltYXJ5IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgfVxuXG4gIC8vIE5hdmlnYXRpb24gdW5vcmRlcmVkIGxpc3Qgd3JhcHBlciBlbGVtZW50XG4gIC5tZW51LWl0ZW1zIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG5cbiAgLy8gTmF2aWdhdGlvbiBsaXN0IGl0ZW1cbiAgLm1lbnUtaXRlbSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuXG4gIC8vIE1lbnUgaXRlbXNcbiAgLm1lbnUtaXRlbSA+IGEge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLW1haW4tbGV2ZWwpO1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLW1haW4tbGV2ZWwpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1tYWluLWxldmVsKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tcGFkZGluZy1tYWluLWxldmVsLXZlcnRpY2FsKTtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXBhZGRpbmctbWFpbi1sZXZlbC1ob3Jpem9udGFsKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1wYWRkaW5nLW1haW4tbGV2ZWwtaG9yaXpvbnRhbCk7XG4gICAgcGFkZGluZy10b3A6IHZhcigtLXBhZGRpbmctbWFpbi1sZXZlbC12ZXJ0aWNhbCk7XG4gIH1cblxuICAubWVudS1pdGVtIC5zdWItbWVudSBhIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1zdWItbWVudSk7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zdWItbWVudSk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXN1Yi1tZW51KTtcbiAgICBsaW5lLWhlaWdodDogMS41O1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1wYWRkaW5nLXN1Yi1tZW51LXZlcnRpY2FsKTtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXBhZGRpbmctc3ViLW1lbnUtaG9yaXpvbnRhbCk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKC0tcGFkZGluZy1zdWItbWVudS1ob3Jpem9udGFsKTtcbiAgICBwYWRkaW5nLXRvcDogdmFyKC0tcGFkZGluZy1zdWItbWVudS12ZXJ0aWNhbCk7XG4gIH1cblxuICAvLyBDdXJyZW50IG1lbnUgaXRlbSBjb2xvclxuICAubWVudS1pdGVtLmN1cnJlbnQtbWVudS1wYXJlbnQgPiBhLFxuICAubWVudS1pdGVtLmN1cnJlbnQtbWVudS1pdGVtID4gYSB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWN1cnJlbnQpO1xuICB9XG5cbiAgLy8gTGV0J3MgbWFrZSBzcGFjZSBmb3IgdGhlIG5hdi10b2dnbGUvYXJyb3dcbiAgLm1lbnUtaXRlbS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuIGEge1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLWdhcC1iZXR3ZWVuLWRyb3Bkb3duLXRvZ2dsZSk7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgdHJhbnNpdGlvbjogcGFkZGluZyAuMnMgY3ViaWMtYmV6aWVyKC4xOSwgMSwgLjIyLCAxKSwgYmFja2dyb3VuZC1jb2xvciAuMnMgY3ViaWMtYmV6aWVyKC4xOSwgMSwgLjIyLCAxKTtcbiAgfVxuXG4gIC5tZW51LWl0ZW0gPiBhOmhvdmVyLFxuICAubWVudS1pdGVtID4gYTpmb2N1cyB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWhvdmVyLW1haW4tbGV2ZWwpO1xuICB9XG5cbiAgLm1lbnUtaXRlbSAuc3ViLW1lbnUgYTpob3ZlcixcbiAgLm1lbnUtaXRlbSAuc3ViLW1lbnUgYTpmb2N1cyB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWhvdmVyLXN1Yi1tZW51KTtcbiAgfVxuXG4gIC8vIENyZWF0ZSBhbmltYXRpb24gaWxsdXNpb25cbiAgLyogc3R5bGVsaW50LWRpc2FibGUgbm8tZGVzY2VuZGluZy1zcGVjaWZpY2l0eSAqL1xuICAuc3ViLW1lbnUudG9nZ2xlZC1vbiBhLFxuICAuc3ViLW1lbnUudG9nZ2xlZC1vbiAuc3ViLW1lbnUgYSxcbiAgLm1lbnUtaXRlbS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuOmhvdmVyIC5zdWItbWVudSBhLFxuICAubWVudS1pdGVtLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW46Zm9jdXMgLnN1Yi1tZW51IGEge1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1wYWRkaW5nLXN1Yi1tZW51LXZlcnRpY2FsKTtcbiAgICBwYWRkaW5nLXRvcDogdmFyKC0tcGFkZGluZy1zdWItbWVudS12ZXJ0aWNhbCk7XG4gIH1cbiAgLyogc3R5bGVsaW50LWVuYWJsZSAqL1xuXG4gIC5uYXYtcHJpbWFyeSA+IHVsOmZpcnN0LW9mLXR5cGUgPiAubWVudS1pdGVtLWhhcy1jaGlsZHJlbjpmb2N1czo6YmVmb3JlLFxuICAubmF2LXByaW1hcnkgPiB1bDpmaXJzdC1vZi10eXBlID4gLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW46aG92ZXI6OmJlZm9yZSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjJzIGN1YmljLWJlemllciguMTksIDEsIC4yMiwgMSk7XG4gIH1cblxuICAvLyBEcm9wZG93bnNcbiAgLnN1Yi1tZW51IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1iYWNrZ3JvdW5kLXN1Yi1tZW51KTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tY29sb3ItYm9yZGVyLXN1Yi1tZW51KTtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXN1Yi1tZW51KTtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zdWItbWVudSk7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ib3JkZXItc3ViLW1lbnUpO1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJvcmRlci1zdWItbWVudSk7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zdWItbWVudSk7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc3ViLW1lbnUpO1xuICAgIGJveC1zaGFkb3c6IDAgMjVweCAyMHB4IC0xMHB4IHJnYmEoNSwgNCwgMjUsIC4wNSk7XG4gICAgbGVmdDogNSU7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXRvcDogdmFyKC0tZ2FwLWRyb3Bkb3duKTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAuNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy10b3A6IC41cmVtO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IC05OTk5cHg7XG4gICAgdHJhbnNpdGlvbjogcGFkZGluZyAuMnMgY3ViaWMtYmV6aWVyKC4xOSwgMSwgLjIyLCAxKTtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgd2lkdGg6IHZhcigtLXdpZHRoLXN1Yi1tZW51KTtcbiAgICB6LWluZGV4OiA5O1xuXG4gICAgLy8gQWxsIGRyb3Bkb3ducyBpbiBsZXZlbCAyIGFuZCBhZnRlclxuICAgIC5zdWItbWVudSB7XG4gICAgICBsZWZ0OiAxMDAlO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBtYXJnaW4tdG9wOiAtNXB4O1xuICAgICAgdG9wOiAwO1xuICAgIH1cblxuICAgIGxpIHtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIHdpZHRoOiB2YXIoLS13aWR0aC1zdWItbWVudSk7XG4gICAgfVxuICB9XG5cbiAgLy8gVGhpcyBpcyB3aGVyZSB0aGUgbWFnaWMgaGFwcGVuc1xuICAubWVudS1pdGVtLWhhcy1jaGlsZHJlbiA+IC5zdWItbWVudS50b2dnbGVkLW9uLFxuICAubWVudS1pdGVtLWhhcy1jaGlsZHJlbjpmb2N1cyA+IC5zdWItbWVudSxcbiAgLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW46aG92ZXIgPiAuc3ViLW1lbnUge1xuICAgIC8vIElmIHlvdSB3YW50IHRvIHVzZSBcIm91dFwiLWFuaW1hdGlvbiwgYWRkIHRoaXM6XG4gICAgLy8gLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4uaG92ZXItaW50ZW50ID4gLnN1Yi1tZW51IHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRvcDogMTAwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgei1pbmRleDogMTtcbiAgfVxuXG4gIC5tZW51LWl0ZW0taGFzLWNoaWxkcmVuIC5zdWItbWVudS50b2dnbGVkLW9uIC5zdWItbWVudSxcbiAgLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gLnN1Yi1tZW51IC5zdWItbWVudS50b2dnbGVkLW9uLFxuICAubWVudS1pdGVtLWhhcy1jaGlsZHJlbjpmb2N1cyAuc3ViLW1lbnUgLnN1Yi1tZW51LFxuICAubWVudS1pdGVtLWhhcy1jaGlsZHJlbjpob3ZlciAuc3ViLW1lbnUgLnN1Yi1tZW51IHtcbiAgICBtYXJnaW4tdG9wOiAtNXB4O1xuICAgIHRvcDogMDtcbiAgICB6LWluZGV4OiAxMDtcbiAgfVxuXG4gIC8vIFN1YiBtZW51IGl0ZW1zIHRoYXQgaGF2ZSBpdGVtcyB1bmRlciB0aGVtXG4gIC5tZW51LWl0ZW0ubWVudS1pdGVtLWhhcy1jaGlsZHJlbiB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBtYXJnaW4tcmlnaHQ6IC44cmVtO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIC8vIEFkZCBhIHBzZXVkbyBlbGVtZW50IHRvIGZpbGwgdGhlIGdhcFxuICAgIC8vIGJldHdlZW4gbWVudSBpdGVtIGFuZCBzdWIgbWVudSB0byBoZWxwIGhvdmVyaW5nXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGhlaWdodDogdmFyKC0tZ2FwLWRyb3Bkb3duKTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMTAwJTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxuXG4gIC8vIFRvZ2dsZSBpY29uIGRpbWVuc2lvbnMgb24gZGVza3RvcFxuICAuZHJvcGRvd24tdG9nZ2xlIHN2ZyB7XG4gICAgaGVpZ2h0OiB2YXIoLS1kcm9wZG93bi10b2dnbGUtc2l6ZSk7XG4gICAgd2lkdGg6IHZhcigtLWRyb3Bkb3duLXRvZ2dsZS1zaXplKTtcblxuICAgIEBpZiAkdXNlLWRyb3Bkb3duLXRvZ2dsZS1hbmltYXRpb24gPT0gdHJ1ZSB7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgLjM1cyBjdWJpYy1iZXppZXIoLjE5LCAxLCAuMjIsIDEpO1xuICAgIH1cbiAgfVxuXG4gIC8vIE1haW4gbGV2ZWwgdG9nZ2xlIGljb25cbiAgLmRyb3Bkb3duLXRvZ2dsZS50b2dnbGVkLW9uIHN2ZyB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGVYKDE4MGRlZyk7XG4gIH1cblxuICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogMDtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItZHJvcGRvd24tdG9nZ2xlKTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgLy8gU3ViLW1lbnUgdG9nZ2xlIGljb25cbiAgLnN1Yi1tZW51IC5kcm9wZG93bi10b2dnbGUge1xuICAgIHdpZHRoOiAzcmVtO1xuICB9XG5cbiAgLnN1Yi1tZW51IC5kcm9wZG93bi10b2dnbGUgc3ZnIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpIHJvdGF0ZVgoMGRlZyk7XG4gIH1cblxuICAuc3ViLW1lbnUgLmRyb3Bkb3duLXRvZ2dsZS50b2dnbGVkLW9uIHN2ZyB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKSByb3RhdGVYKDE4MGRlZyk7XG4gIH1cblxuICAvLyBTbW9vdGggYW5pbWF0aW9uXG4gIEBpZiAkdXNlLWRyb3Bkb3duLXRvZ2dsZS1hbmltYXRpb24gPT0gdHJ1ZSB7XG4gICAgLm1lbnUtaXRlbS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuID4gLmRyb3Bkb3duLXRvZ2dsZS50b2dnbGVkLW9uIHN2ZyxcbiAgICAubWVudS1pdGVtLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW46aG92ZXIgPiAuZHJvcGRvd24tdG9nZ2xlIHN2ZyxcbiAgICAubWVudS1pdGVtLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW46Zm9jdXMgPiAuZHJvcGRvd24tdG9nZ2xlIHN2ZyB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpIHJvdGF0ZSgxODBkZWcpO1xuICAgIH1cblxuICAgIC8vIFNtb290aCBhbmltYXRpb25cbiAgICAvKiBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1tYXgtc3BlY2lmaWNpdHksIHNlbGVjdG9yLW1heC1jbGFzcyAqL1xuICAgIC5tZW51LWl0ZW0ubWVudS1pdGVtLWhhcy1jaGlsZHJlbiAubWVudS1pdGVtLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gPiAuZHJvcGRvd24tdG9nZ2xlLnRvZ2dsZWQtb24gc3ZnLFxuICAgIC5tZW51LWl0ZW0ubWVudS1pdGVtLWhhcy1jaGlsZHJlbiAubWVudS1pdGVtLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW46aG92ZXIgPiAuZHJvcGRvd24tdG9nZ2xlIHN2ZyxcbiAgICAubWVudS1pdGVtLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gLm1lbnUtaXRlbS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuOmZvY3VzID4gLmRyb3Bkb3duLXRvZ2dsZSBzdmcge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAlKSByb3RhdGUoOTBkZWcpO1xuICAgIH1cbiAgICAvKiBzdHlsZWxpbnQtZW5hYmxlICovXG4gIH1cblxuICAvLyBEb24ndCB1c2UgZ2FwIGZpbGxlciBpbiBzdWIgbWVudSBpdGVtc1xuICAvLyBBY2NlcHRhYmxlIHVzZSBvZiBkaXNwbGF5OiBub25lIGhlcmUsIGZvciB2aXN1YWwvdGVjaG5pY2FsIHB1cnBvc2VzXG4gIC8qIHN0eWxlbGludC1kaXNhYmxlIGExMXkvbm8tZGlzcGxheS1ub25lICovXG4gIC5zdWItbWVudSAubWVudS1pdGVtLWhhcy1jaGlsZHJlbjo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLyogc3R5bGVsaW50LWVuYWJsZSAqL1xuXG4gIC8vIERyb3Bkb3duIGJ1YmJsZVxuICBAaWYgJHVzZS1kcm9wZG93bi1idWJibGUgPT0gdHJ1ZSB7XG4gICAgLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW46OmJlZm9yZSB7XG4gICAgICAvLyBVc2Ugb2Ygbm9uLXZhcmlhYmxlIGlzIGFjY2VwdGFibGUgaGVyZSBiZWNhdXNlIGJ1YmJsZSBuZWVkcyBpdFxuICAgICAgLyogc3R5bGVsaW50LWRpc2FibGUgc2gtd2FxYXIvZGVjbGFyYXRpb24tdXNlLXZhcmlhYmxlICovXG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgICBib3JkZXItd2lkdGg6IDAgNXB4IDVweDtcbiAgICAgIC8qIHN0eWxlbGludC1lbmFibGUgKi9cbiAgICAgIGJvdHRvbTogLTEwcHg7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgaGVpZ2h0OiAwO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0yMHB4O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBib3R0b207XG4gICAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgICAgd2lkdGg6IDA7XG4gICAgfVxuICB9XG59IC8vIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJHdpZHRoLW1heC1tb2JpbGUpXG4iLCIvLyBTaXRlIG5hdmlnYXRpb24gbW9iaWxlIGxheW91dFxuLy8gVGhlIG1haW4gbGF5b3V0IGZvciB0aGUgd2Vic2l0ZSBuYXZpZ2F0aW9uLCBmb3IgdGhlIG1vYmlsZSB2ZXJzaW9uIG9ubHkuXG5cbi8vIFNldHRpbmdzXG4kYWJzb2x1dGUtbmF2aWdhdGlvbi1tb2JpbGU6IHRydWU7XG5cbi8vIFNldHRpbmdzIGZvciBqb25zdWgvaGFtYnVyZ2Vyc1xuLy8gVGhlc2UgbmVlZCB0byBiZSBTQ1NTIHZhcmlhYmxlc1xuJGhhbWJ1cmdlci1wYWRkaW5nLXg6IDEuNXJlbTtcbiRoYW1idXJnZXItcGFkZGluZy15OiA0cmVtO1xuJGhhbWJ1cmdlci1sYXllci13aWR0aDogM3JlbTtcbiRoYW1idXJnZXItbGF5ZXItaGVpZ2h0OiAuMnJlbTtcbiRoYW1idXJnZXItbGF5ZXItc3BhY2luZzogLjVyZW07XG4kaGFtYnVyZ2VyLWxheWVyLWNvbG9yOiB2YXIoLS1jb2xvci1oYW1idXJnZXIpO1xuJGhhbWJ1cmdlci1sYXllci1ib3JkZXItcmFkaXVzOiAwO1xuJGhhbWJ1cmdlci1ob3Zlci1vcGFjaXR5OiAuODtcbiRoYW1idXJnZXItaG92ZXItdHJhbnNpdGlvbi1kdXJhdGlvbjogLjE1cztcbiRoYW1idXJnZXItaG92ZXItdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiRuYXYtb3Blbi1mcm9tLWRpcmVjdGlvbjogdG9wO1xuXG4vLyBDU1MgdmFyaWFibGVzXG4vLyBUaGVzZSBjYW4gYmUgYWRqdXN0ZWQgd2l0aCBtZWRpYSBxdWVyaWVzIGZvciBpbi1iZXR3ZWVuIGJyZWFrcG9pbnRzXG46cm9vdCB7XG4gIC8vIERpbWVuc2lvbnMsIGdhcHMgYW5kIHNwYWNpbmdzXG4gIC0tZm9udC1zaXplLW1haW4tbGV2ZWwtbW9iaWxlOiAxN3B4O1xuICAtLWZvbnQtc2l6ZS1zdWItbWVudS1tb2JpbGU6IDE3cHg7XG4gIC0tZm9udC13ZWlnaHQtbWFpbi1sZXZlbC1tb2JpbGU6IDYwMDtcbiAgLS1mb250LXdlaWdodC1zdWItbWVudS1tb2JpbGU6IDYwMDtcbiAgLS1kcm9wZG93bi10b2dnbGUtc2l6ZS1tb2JpbGU6IDEycHg7XG4gIC0taGVpZ2h0LW5hdmlnYXRpb24tbW9iaWxlOiA3MnB4O1xuICAtLW1hcmdpbi1sZWZ0LXN1Yi1tZW51OiAycmVtO1xuICAtLXBhZGRpbmctc3ViLW1lbnUtdmVydGljYWwtbW9iaWxlOiAxLjJyZW07XG4gIC0tcGFkZGluZy1zdWItbWVudS1ob3Jpem9udGFsLW1vYmlsZTogMi41cmVtO1xuXG4gIC8vIENvbG9yc1xuICAtLWNvbG9yLWFjdGl2ZS1tYWluLWxldmVsLW1vYmlsZTogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAtLWNvbG9yLWJhY2tncm91bmQtbmF2LW1vYmlsZS1oZWFkZXI6IHZhcigtLWNvbG9yLW1haW4pO1xuICAtLWNvbG9yLWJhY2tncm91bmQtbmF2LW1vYmlsZS1sYXllcjogdmFyKC0tY29sb3ItbWFpbik7XG4gIC0tY29sb3ItY3VycmVudC1tb2JpbGU6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgLS1jb2xvci1kcm9wZG93bi10b2dnbGUtbW9iaWxlOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIC0tY29sb3ItaGFtYnVyZ2VyLWFjdGl2ZTogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAtLWNvbG9yLWhhbWJ1cmdlcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAtLWNvbG9yLW1haW4tbGV2ZWwtbW9iaWxlOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIC0tY29sb3Itc2VwYXJhdG9yLW5hdi1tb2JpbGU6IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjEpO1xuICAtLWNvbG9yLXN1Yi1tZW51LW1vYmlsZTogcmdiYSgyNTUsIDI1NSwgMjU1LCAuOCk7XG59XG5cbi8vIEluaXQgVGFzdHkgSGFtYnVyZ2VyIG5hdmlnYXRpb24gdG9nZ2xlXG5AaW1wb3J0ICdoYW1idXJnZXJzL19zYXNzL2hhbWJ1cmdlcnMvaGFtYnVyZ2Vycyc7XG5cbi8vIEluaXQgaGFtYnVyZ2VyIGFuaW1hdGlvblxuLy8gQ2hvb3NlIGZyb20gYW5pbWF0aW9uczogaHR0cHM6Ly9qb25zdWguY29tL2hhbWJ1cmdlcnMvXG4uaGFtYnVyZ2VyIHtcbiAgQGV4dGVuZCAuaGFtYnVyZ2VyLS1jb2xsYXBzZTtcbn1cblxuLy8gTmF2aWdhdGlvbiBjb3JlIGZ1bmN0aW9uYWxpdHlcbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHdpZHRoLW1heC1tb2JpbGUpIHtcbiAgLy8gRnVuY3Rpb25hbGl0eSBuZWVkcyBkaXNwbGF5OiBub25lIGhlcmUgZm9yIHZpc3VhbCByZWFzb25zXG4gIC8qIHN0eWxlbGludC1kaXNhYmxlIGExMXkvbm8tZGlzcGxheS1ub25lICovXG4gIC5qcyAubWVudS1pdGVtcyB1bCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAvKiBzdHlsZWxpbnQtZW5hYmxlICovXG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHdpZHRoLW1heC1tb2JpbGUpIHtcbiAgLmpzIHVsIC5zdWItbWVudS50b2dnbGVkLW9uIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG4vLyBMZXQncyBlbnN1cmUgc2l0ZS1oZWFkZXIgbG9hZHMgcHJvcGVybHkgYW5kIGRvZXNuJ3QgbGVhdmUgZW1wdHkgc3BhY2VzXG5AbWVkaWEgKG1heC13aWR0aDogJHdpZHRoLW1heC1tb2JpbGUpIHtcbiAgLm5hdi1jb250YWluZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJhY2tncm91bmQtbmF2LW1vYmlsZS1oZWFkZXIpO1xuXG4gICAgQGlmICRhYnNvbHV0ZS1uYXZpZ2F0aW9uLW1vYmlsZSA9PSBmYWxzZSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB6LWluZGV4OiAyMjI7XG4gICAgfVxuXG4gICAgQGlmICRhYnNvbHV0ZS1uYXZpZ2F0aW9uLW1vYmlsZSA9PSB0cnVlIHtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cblxuICBAaWYgJGFic29sdXRlLW5hdmlnYXRpb24tbW9iaWxlID09IHRydWUge1xuICAgIC5zaXRlIHtcbiAgICAgIHBhZGRpbmctdG9wOiB2YXIoLS1oZWlnaHQtbmF2aWdhdGlvbi1tb2JpbGUpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBNb2JpbGUgc3R5bGVzXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkd2lkdGgtbWF4LW1vYmlsZSAtIDFweCkge1xuICAvLyBHZW5lcmFsIG5hdmlnYXRpb24gcmVzZXRzIGZvciBtb2JpbGVcbiAgLnNpdGUtaGVhZGVyIHVsLFxuICAuc2l0ZS1oZWFkZXIgbGksXG4gIC5zaXRlLWhlYWRlciBhIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cblxuICAubWFpbi1uYXZpZ2F0aW9uLXdyYXBwZXIge1xuICAgIG9yZGVyOiA2O1xuICAgIHotaW5kZXg6IDk5OTtcbiAgfVxuXG4gIC8vIFVzZXJzIHRoYXQgZG9uJ3QgaGF2ZSBKYXZhc2NyaXB0IGVuYWJsZWRcbiAgLm5vLWpzIC5zaXRlLWhlYWRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmFja2dyb3VuZC1uYXYtbW9iaWxlLWhlYWRlcik7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgfVxuXG4gIC8vIERpc2FibGUgc2Nyb2xsIG9uIGh0bWwgYm9keSB3aGVuIG1lbnUgaXMgb3BlbmVkLlxuICAuZGlzYWJsZS1zY3JvbGwge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cblxuICAubmF2LXByaW1hcnkge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJhY2tncm91bmQtbmF2LW1vYmlsZS1sYXllcik7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gdmFyKC0taGVpZ2h0LW5hdmlnYXRpb24tbW9iaWxlKSk7XG4gICAgbWFyZ2luOiAwO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgdHJhbnNpdGlvbjogYWxsICR0cmFuc2l0aW9uLWR1cmF0aW9uIGVhc2UtaW4tb3V0O1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB3aWR0aDogMTAwdnc7XG4gIH1cblxuICAubWVudS1pdGVtcyB7XG4gICAgbWFyZ2luOiAwO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgcGFkZGluZzogMnJlbSAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLy8gTWFpbiBsZXZlbCBtb2JpbGUgbmF2aWdhdGlvbiBsaW5rc1xuICAubWVudS1pdGVtIGEge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1zZXBhcmF0b3ItbmF2LW1vYmlsZSk7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLW1haW4tbGV2ZWwtbW9iaWxlKTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1tYWluLWxldmVsLW1vYmlsZSk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW1haW4tbGV2ZWwtbW9iaWxlKTtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IHZhcigtLXBhZGRpbmctc3ViLW1lbnUtdmVydGljYWwtbW9iaWxlKTtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXBhZGRpbmctc3ViLW1lbnUtaG9yaXpvbnRhbC1tb2JpbGUpO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXBhZGRpbmctc3ViLW1lbnUtaG9yaXpvbnRhbC1tb2JpbGUpO1xuICAgIHBhZGRpbmctdG9wOiB2YXIoLS1wYWRkaW5nLXN1Yi1tZW51LXZlcnRpY2FsLW1vYmlsZSk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB6LWluZGV4OiAwO1xuICB9XG5cbiAgLy8gU3ViIG1lbnUgaXRlbXNcbiAgLnN1Yi1tZW51IGEge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1zdWItbWVudS1tb2JpbGUpO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXN1Yi1tZW51LW1vYmlsZSk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXN1Yi1tZW51LW1vYmlsZSk7XG4gICAgcGFkZGluZy1sZWZ0OiBjYWxjKHZhcigtLXBhZGRpbmctc3ViLW1lbnUtaG9yaXpvbnRhbC1tb2JpbGUpICsgdmFyKC0tbWFyZ2luLWxlZnQtc3ViLW1lbnUpKTtcbiAgfVxuXG4gIC5zdWItbWVudSB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG5cbiAgLnN1Yi1tZW51IC5zdWItbWVudSBhIHtcbiAgICBwYWRkaW5nLWxlZnQ6IGNhbGModmFyKC0tcGFkZGluZy1zdWItbWVudS1ob3Jpem9udGFsLW1vYmlsZSkgKyB2YXIoLS1tYXJnaW4tbGVmdC1zdWItbWVudSkgKyB2YXIoLS1tYXJnaW4tbGVmdC1zdWItbWVudSkpO1xuICB9XG5cbiAgLm1lbnUtaXRlbSBhOmhvdmVyLFxuICAubWVudS1pdGVtIGE6Zm9jdXMge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1hY3RpdmUtbWFpbi1sZXZlbC1tb2JpbGUpO1xuICB9XG5cbiAgLy8gQ3VycmVudCBtZW51IGl0ZW0gY29sb3JcbiAgLm1lbnUtaXRlbS5jdXJyZW50LW1lbnUtcGFyZW50ID4gYSxcbiAgLm1lbnUtaXRlbS5jdXJyZW50LW1lbnUtaXRlbSA+IGEge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1jdXJyZW50LW1vYmlsZSk7XG4gIH1cblxuICAvLyBEcm9wZG93biB0b2dnbGVcbiAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblxuICAgIC8vIEFsdGVybmF0aXZlICsgYW5kIG1pbnVzIGVmZmVjdFxuICAgIC8vIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vLi4vc3ZnL25hdi1vcGVuLnN2ZycpO1xuICAgIC8vIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAvLyBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIC8vIGJhY2tncm91bmQtc2l6ZTogdmFyKC0tZHJvcGRvd24tdG9nZ2xlLXNpemUtbW9iaWxlKSB2YXIoLS1kcm9wZG93bi10b2dnbGUtc2l6ZS1tb2JpbGUpO1xuICAgIGJvcmRlcjogMDtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItZHJvcGRvd24tdG9nZ2xlLW1vYmlsZSk7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXgtaGVpZ2h0OiA1MnB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcGFkZGluZy1ib3R0b206IHZhcigtLXBhZGRpbmctc3ViLW1lbnUtdmVydGljYWwtbW9iaWxlKTtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXBhZGRpbmctc3ViLW1lbnUtaG9yaXpvbnRhbC1tb2JpbGUpO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXBhZGRpbmctc3ViLW1lbnUtaG9yaXpvbnRhbC1tb2JpbGUpO1xuICAgIHBhZGRpbmctdG9wOiB2YXIoLS1wYWRkaW5nLXN1Yi1tZW51LXZlcnRpY2FsLW1vYmlsZSk7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogMnB4O1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICAgIHRyYW5zaXRpb246IGFsbCAkdHJhbnNpdGlvbi1kdXJhdGlvbjtcbiAgICB6LWluZGV4OiA5OTk5O1xuICB9XG5cbiAgLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7XG4gICAgei1pbmRleDogMTAwMDA7XG4gIH1cblxuICAuc3ViLW1lbnUgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLXN1Yi1tZW51LW1vYmlsZSk7XG4gIH1cblxuICAvLyBIaWRlIGRlc2t0b3AgdG9nZ2xlc1xuICAuZHJvcGRvd24tdG9nZ2xlIHN2ZyB7XG4gICAgaGVpZ2h0OiB2YXIoLS1kcm9wZG93bi10b2dnbGUtc2l6ZS1tb2JpbGUpO1xuICAgIHdpZHRoOiB2YXIoLS1kcm9wZG93bi10b2dnbGUtc2l6ZS1tb2JpbGUpO1xuICAgIC8vIEVuYWJsZSBmb3IgYWx0ZXJuYXRpdmUgKyBhbmQgbWludXMgZWZmZWN0XG4gICAgLy8gTmVlZCB0byB1c2UgZGlzcGxheTogbm9uZSBoZXJlIHRvIG1ha2Ugc3VyZSB0aGVyZSBhcmUgdmlzdWFsbHkgbm8gZG91YmxlIHRvZ2dsZXNcbiAgICAvKiBzdHlsZWxpbnQtZGlzYWJsZSBhMTF5L25vLWRpc3BsYXktbm9uZSAqL1xuICAgIC8vIGRpc3BsYXk6IG5vbmU7XG4gICAgLyogc3R5bGVsaW50LWVuYWJsZSAqL1xuICB9XG5cbiAgLmRyb3Bkb3duLXRvZ2dsZS50b2dnbGVkLW9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblxuICAgIC8vIEFsdGVybmF0aXZlICsgYW5kIG1pbnVzIGVmZmVjdFxuICAgIC8vIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vLi4vc3ZnL25hdi1jbG9zZS5zdmcnKTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTE4MGRlZyk7XG4gIH1cblxuICAvLyBNb2JpbGUgbmF2aWdhdGlvbiBjb3JlIGZ1bmN0aW9uYWxpdHlcbiAgLmpzIC5uYXYtcHJpbWFyeSB7XG4gICAgbGVmdDogMDtcbiAgICAvLyBIaWRlIG1vYmlsZSBuYXZpZ2F0aW9uIGJ5IGRlZmF1bHQgd2hpbGUgZW5hYmxpbmcgdXNlIG9mIGFuaW1hdGlvbnNcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG5cbiAgICAvLyBEZWZhdWx0IHBvc2l0aW9uLCBzb21lIGJyb3dzZXJzIG5lZWQgdGhpc1xuICAgIHRvcDogdmFyKC0taGVpZ2h0LW5hdmlnYXRpb24tbW9iaWxlKTtcbiAgICB6LWluZGV4OiA1O1xuXG4gICAgLm1lbnUtaXRlbXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmFja2dyb3VuZC1uYXYtbW9iaWxlLWxheWVyKTtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuICB9XG5cbiAgLy8gRW5zdXJlIG5hdiBzdGF5cyBpbiB0aGUgc2FtZSBwb3NpdGlvbiB3aGVuIGFjdGl2YXRlZFxuICAuanMuanMtbmF2LWFjdGl2ZSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgIC5uYXYtcHJpbWFyeSB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgcG9pbnRlci1ldmVudHM6IGFsbDtcbiAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgfVxuXG4gICAgLm1lbnUtaXRlbXMge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG4gIH1cbn1cblxuLy8gSGFtYnVyZ2VyIG1lbnUgaWNvbiBzcGVjaWZpY1xuLmhhbWJ1cmdlci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcixcbi5oYW1idXJnZXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSxcbi5oYW1idXJnZXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItaGFtYnVyZ2VyLWFjdGl2ZSk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1oYW1idXJnZXItYWN0aXZlKTtcbn1cblxuLm5hdi10b2dnbGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xuICBjb2xvcjogdmFyKC0tY29sb3ItaGFtYnVyZ2VyKTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XG4gIG1hcmdpbjogMDtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIHBhZGRpbmc6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0b3A6IDA7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICB6LWluZGV4OiAxMDAwMDA7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICR3aWR0aC1tYXgtbW9iaWxlKSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC8vIE1vZGVybiBzdHVmZiAoOjphZnRlciBpcyBmaXJzdCBsaW5lLCB3aXRob3V0IDo6YWZ0ZXIgaXMgZmlyc3QpXG4gICY6bm90KC50b2dnbGVkLW9uKSAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICB0cmFuc2l0aW9uOiB3aWR0aCAkdHJhbnNpdGlvbi1kdXJhdGlvbjtcbiAgICB3aWR0aDogMThweDtcbiAgfVxuXG4gICYuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIsXG4gICY6aG92ZXIgLmhhbWJ1cmdlci1pbm5lcixcbiAgJjpmb2N1cyAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICB3aWR0aDogJGhhbWJ1cmdlci1sYXllci13aWR0aDtcbiAgfVxuXG4gIHNwYW4ge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1oYW1idXJnZXIpO1xuICAgIGZvbnQtc2l6ZTogMS4yZW07XG4gIH1cblxuICAmLmlzLWFjdGl2ZSBzcGFuIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItaGFtYnVyZ2VyLWFjdGl2ZSk7XG4gIH1cblxuICAmOmhvdmVyLFxuICAmOmFjdGl2ZSB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWhhbWJ1cmdlcik7XG5cbiAgICBzcGFuIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1oYW1idXJnZXIpO1xuICAgIH1cbiAgfVxuXG4gIC8vIEFsdGVybmF0aXZlIGZvY3VzIGZvciBtb2JpbGUgbmF2XG4gICY6Zm9jdXMge1xuICAgIHNwYW4gc3BhbiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1oYW1idXJnZXIpO1xuICAgIH1cblxuICAgIHNwYW4gc3Bhbjo6YmVmb3JlLFxuICAgIHNwYW4gc3Bhbjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItaGFtYnVyZ2VyKTtcbiAgICB9XG4gIH1cblxuICAvLyBXZSBhbHJlYWR5IGhhdmUgYXJpYS1sYWJlbCBmb3IgYnV0dG9uXG4gIC8vIEJ1dCB3ZSB3YW50IHRvIHNob3cgbmF2LXRvZ2dsZSB2aXN1YWxseSBmb3Igc2VlaW5nIHVzZXJzXG4gIC8vIFNvIHdlJ2xsIGFkZCBoYXMtdmlzaWJsZS1sYWJlbCB0byBuYXYtdG9nZ2xlIGluIGhlYWRlci5waHBcbiAgLyogc3R5bGVsaW50LWRpc2FibGUgYTExeS9uby1kaXNwbGF5LW5vbmUgKi9cbiAgJjpub3QoLmhhcy12aXNpYmxlLWxhYmVsKSAubmF2LXRvZ2dsZS1sYWJlbCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAvKiBzdHlsZWxpbnQtZW5hYmxlICovXG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6ICR3aWR0aC1tYXgtbW9iaWxlIC0gMXB4KSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAmLmhhcy12aXNpYmxlLWxhYmVsIHtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgIH1cblxuICAgICYuaGFzLXZpc2libGUtbGFiZWwgLm5hdi10b2dnbGUtbGFiZWwge1xuICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbmF2LXRvZ2dsZS1sYWJlbCk7XG5cbiAgICAgIC8vIEhpZGUgb24gc21hbGxlc3QgcGhvbmVzXG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNDEwcHgpIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNDExcHgpIHtcbiAgICAgICYuaGFzLXZpc2libGUtbGFiZWwgLmhhbWJ1cmdlci1ib3gge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDJyZW07XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gU2VwYXJhdGUgYWN0aXZlIGNvbG9ycyBmb3Igb3BlbmVkIHN0YXRlXG4gICYuaXMtYWN0aXZlIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItaGFtYnVyZ2VyLWFjdGl2ZSk7XG4gIH1cblxuICAmLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWJveCB7XG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1oYW1idXJnZXItYWN0aXZlKTtcbiAgICB9XG5cbiAgICAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1oYW1idXJnZXItYWN0aXZlKTtcbiAgICB9XG4gIH1cblxuICAmLmlzLWFjdGl2ZSAuZm9jdXMsXG4gICYuaXMtYWN0aXZlIHNwYW46Zm9jdXMge1xuICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItaGFtYnVyZ2VyLWFjdGl2ZSk7XG4gICAgfVxuXG4gICAgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItaGFtYnVyZ2VyLWFjdGl2ZSk7XG4gICAgfVxuICB9XG5cbiAgJi5pcy1hY3RpdmUgc3Bhbjpmb2N1cyxcbiAgJi5pcy1hY3RpdmUgc3Bhbjpob3ZlcixcbiAgJi5pcy1hY3RpdmUgc3BhbjphY3RpdmUge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1oYW1idXJnZXItYWN0aXZlKTtcblxuICAgIHNwYW4ge1xuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWhhbWJ1cmdlci1hY3RpdmUpO1xuICAgIH1cbiAgfVxufVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuLyohXG4gKiBIYW1idXJnZXJzXG4gKiBAZGVzY3JpcHRpb24gVGFzdHkgQ1NTLWFuaW1hdGVkIGhhbWJ1cmdlcnNcbiAqIEBhdXRob3IgSm9uYXRoYW4gU3VoIEBqb25zdWhcbiAqIEBzaXRlIGh0dHBzOi8vam9uc3VoLmNvbS9oYW1idXJnZXJzXG4gKiBAbGluayBodHRwczovL2dpdGh1Yi5jb20vam9uc3VoL2hhbWJ1cmdlcnNcbiAqL1xuXG4vLyBTZXR0aW5nc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiRoYW1idXJnZXItcGFkZGluZy14ICAgICAgICAgICA6IDE1cHggIWRlZmF1bHQ7XG4kaGFtYnVyZ2VyLXBhZGRpbmcteSAgICAgICAgICAgOiAxNXB4ICFkZWZhdWx0O1xuJGhhbWJ1cmdlci1sYXllci13aWR0aCAgICAgICAgIDogNDBweCAhZGVmYXVsdDtcbiRoYW1idXJnZXItbGF5ZXItaGVpZ2h0ICAgICAgICA6IDRweCAhZGVmYXVsdDtcbiRoYW1idXJnZXItbGF5ZXItc3BhY2luZyAgICAgICA6IDZweCAhZGVmYXVsdDtcbiRoYW1idXJnZXItbGF5ZXItY29sb3IgICAgICAgICA6ICMwMDAgIWRlZmF1bHQ7XG4kaGFtYnVyZ2VyLWxheWVyLWJvcmRlci1yYWRpdXMgOiA0cHggIWRlZmF1bHQ7XG4kaGFtYnVyZ2VyLWhvdmVyLW9wYWNpdHkgICAgICAgOiAwLjcgIWRlZmF1bHQ7XG4kaGFtYnVyZ2VyLWFjdGl2ZS1sYXllci1jb2xvciAgOiAkaGFtYnVyZ2VyLWxheWVyLWNvbG9yICFkZWZhdWx0O1xuJGhhbWJ1cmdlci1hY3RpdmUtaG92ZXItb3BhY2l0eTogJGhhbWJ1cmdlci1ob3Zlci1vcGFjaXR5ICFkZWZhdWx0O1xuXG4vLyBUbyB1c2UgQ1NTIGZpbHRlcnMgYXMgdGhlIGhvdmVyIGVmZmVjdCBpbnN0ZWFkIG9mIG9wYWNpdHksXG4vLyBzZXQgJGhhbWJ1cmdlci1ob3Zlci11c2UtZmlsdGVyIGFzIHRydWUgYW5kXG4vLyBjaGFuZ2UgdGhlIHZhbHVlIG9mICRoYW1idXJnZXItaG92ZXItZmlsdGVyIGFjY29yZGluZ2x5LlxuJGhhbWJ1cmdlci1ob3Zlci11c2UtZmlsdGVyICAgOiBmYWxzZSAhZGVmYXVsdDtcbiRoYW1idXJnZXItaG92ZXItZmlsdGVyICAgICAgIDogb3BhY2l0eSg1MCUpICFkZWZhdWx0O1xuJGhhbWJ1cmdlci1hY3RpdmUtaG92ZXItZmlsdGVyOiAkaGFtYnVyZ2VyLWhvdmVyLWZpbHRlciAhZGVmYXVsdDtcblxuLy8gVHlwZXMgKFJlbW92ZSBvciBjb21tZW50IG91dCB3aGF0IHlvdSBkb27igJl0IG5lZWQpXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuJGhhbWJ1cmdlci10eXBlczogKFxuICAzZHgsXG4gIDNkeC1yLFxuICAzZHksXG4gIDNkeS1yLFxuICAzZHh5LFxuICAzZHh5LXIsXG4gIGFycm93LFxuICBhcnJvdy1yLFxuICBhcnJvd2FsdCxcbiAgYXJyb3dhbHQtcixcbiAgYXJyb3d0dXJuLFxuICBhcnJvd3R1cm4tcixcbiAgYm9yaW5nLFxuICBjb2xsYXBzZSxcbiAgY29sbGFwc2UtcixcbiAgZWxhc3RpYyxcbiAgZWxhc3RpYy1yLFxuICBlbXBoYXRpYyxcbiAgZW1waGF0aWMtcixcbiAgbWludXMsXG4gIHNsaWRlcixcbiAgc2xpZGVyLXIsXG4gIHNwaW4sXG4gIHNwaW4tcixcbiAgc3ByaW5nLFxuICBzcHJpbmctcixcbiAgc3RhbmQsXG4gIHN0YW5kLXIsXG4gIHNxdWVlemUsXG4gIHZvcnRleCxcbiAgdm9ydGV4LXJcbikgIWRlZmF1bHQ7XG5cbi8vIEJhc2UgSGFtYnVyZ2VyIChXZSBuZWVkIHRoaXMpXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuQGltcG9ydCBcImJhc2VcIjtcblxuLy8gSGFtYnVyZ2VyIHR5cGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuQGltcG9ydCBcInR5cGVzLzNkeFwiO1xuQGltcG9ydCBcInR5cGVzLzNkeC1yXCI7XG5AaW1wb3J0IFwidHlwZXMvM2R5XCI7XG5AaW1wb3J0IFwidHlwZXMvM2R5LXJcIjtcbkBpbXBvcnQgXCJ0eXBlcy8zZHh5XCI7XG5AaW1wb3J0IFwidHlwZXMvM2R4eS1yXCI7XG5AaW1wb3J0IFwidHlwZXMvYXJyb3dcIjtcbkBpbXBvcnQgXCJ0eXBlcy9hcnJvdy1yXCI7XG5AaW1wb3J0IFwidHlwZXMvYXJyb3dhbHRcIjtcbkBpbXBvcnQgXCJ0eXBlcy9hcnJvd2FsdC1yXCI7XG5AaW1wb3J0IFwidHlwZXMvYXJyb3d0dXJuXCI7XG5AaW1wb3J0IFwidHlwZXMvYXJyb3d0dXJuLXJcIjtcbkBpbXBvcnQgXCJ0eXBlcy9ib3JpbmdcIjtcbkBpbXBvcnQgXCJ0eXBlcy9jb2xsYXBzZVwiO1xuQGltcG9ydCBcInR5cGVzL2NvbGxhcHNlLXJcIjtcbkBpbXBvcnQgXCJ0eXBlcy9lbGFzdGljXCI7XG5AaW1wb3J0IFwidHlwZXMvZWxhc3RpYy1yXCI7XG5AaW1wb3J0IFwidHlwZXMvZW1waGF0aWNcIjtcbkBpbXBvcnQgXCJ0eXBlcy9lbXBoYXRpYy1yXCI7XG5AaW1wb3J0IFwidHlwZXMvbWludXNcIjtcbkBpbXBvcnQgXCJ0eXBlcy9zbGlkZXJcIjtcbkBpbXBvcnQgXCJ0eXBlcy9zbGlkZXItclwiO1xuQGltcG9ydCBcInR5cGVzL3NwaW5cIjtcbkBpbXBvcnQgXCJ0eXBlcy9zcGluLXJcIjtcbkBpbXBvcnQgXCJ0eXBlcy9zcHJpbmdcIjtcbkBpbXBvcnQgXCJ0eXBlcy9zcHJpbmctclwiO1xuQGltcG9ydCBcInR5cGVzL3N0YW5kXCI7XG5AaW1wb3J0IFwidHlwZXMvc3RhbmQtclwiO1xuQGltcG9ydCBcInR5cGVzL3NxdWVlemVcIjtcbkBpbXBvcnQgXCJ0eXBlcy92b3J0ZXhcIjtcbkBpbXBvcnQgXCJ0eXBlcy92b3J0ZXgtclwiO1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gQ29va2luZyB1cCBhZGRpdGlvbmFsIHR5cGVzOlxuLy9cbi8vIFRoZSBTYXNzIGZvciBlYWNoIGhhbWJ1cmdlciB0eXBlIHNob3VsZCBiZSBuZXN0ZWRcbi8vIGluc2lkZSBhbiBAaWYgZGlyZWN0aXZlIHRvIGNoZWNrIHdoZXRoZXIgb3Igbm90XG4vLyBpdCBleGlzdHMgaW4gJGhhbWJ1cmdlci10eXBlcyBzbyBvbmx5IHRoZSBDU1MgZm9yXG4vLyBpbmNsdWRlZCB0eXBlcyBhcmUgZ2VuZXJhdGVkLlxuLy9cbi8vIGUuZy4gaGFtYnVyZ2Vycy90eXBlcy9fbmV3LXR5cGUuc2Nzc1xuLy9cbi8vIEBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCBuZXctdHlwZSkge1xuLy8gICAuaGFtYnVyZ2VyLS1uZXctdHlwZSB7XG4vLyAgICAgLi4uXG4vLyAgIH1cbi8vIH1cbiIsIi8vIEhhbWJ1cmdlclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi5oYW1idXJnZXIge1xuICBwYWRkaW5nOiAkaGFtYnVyZ2VyLXBhZGRpbmcteSAkaGFtYnVyZ2VyLXBhZGRpbmcteDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eSwgZmlsdGVyO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjE1cztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcblxuICAvLyBOb3JtYWxpemUgKDxidXR0b24+KVxuICBmb250OiBpbmhlcml0O1xuICBjb2xvcjogaW5oZXJpdDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG4gIG1hcmdpbjogMDtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG5cbiAgJjpob3ZlciB7XG4gICAgQGlmICRoYW1idXJnZXItaG92ZXItdXNlLWZpbHRlciA9PSB0cnVlIHtcbiAgICAgIGZpbHRlcjogJGhhbWJ1cmdlci1ob3Zlci1maWx0ZXI7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIG9wYWNpdHk6ICRoYW1idXJnZXItaG92ZXItb3BhY2l0eTtcbiAgICB9XG4gIH1cblxuICAmLmlzLWFjdGl2ZSB7XG4gICAgJjpob3ZlciB7XG4gICAgICBAaWYgJGhhbWJ1cmdlci1ob3Zlci11c2UtZmlsdGVyID09IHRydWUge1xuICAgICAgICBmaWx0ZXI6ICRoYW1idXJnZXItYWN0aXZlLWhvdmVyLWZpbHRlcjtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgb3BhY2l0eTogJGhhbWJ1cmdlci1hY3RpdmUtaG92ZXItb3BhY2l0eTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuaGFtYnVyZ2VyLWlubmVyLFxuICAgIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSxcbiAgICAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaGFtYnVyZ2VyLWFjdGl2ZS1sYXllci1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLmhhbWJ1cmdlci1ib3gge1xuICB3aWR0aDogJGhhbWJ1cmdlci1sYXllci13aWR0aDtcbiAgaGVpZ2h0OiAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCAqIDMgKyAkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKiAyO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmhhbWJ1cmdlci1pbm5lciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0b3A6IDUwJTtcbiAgbWFyZ2luLXRvcDogJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgLyAtMjtcblxuICAmLFxuICAmOjpiZWZvcmUsXG4gICY6OmFmdGVyIHtcbiAgICB3aWR0aDogJGhhbWJ1cmdlci1sYXllci13aWR0aDtcbiAgICBoZWlnaHQ6ICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRoYW1idXJnZXItbGF5ZXItY29sb3I7XG4gICAgYm9yZGVyLXJhZGl1czogJGhhbWJ1cmdlci1sYXllci1ib3JkZXItcmFkaXVzO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4xNXM7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2U7XG4gIH1cblxuICAmOjpiZWZvcmUsXG4gICY6OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgJjo6YmVmb3JlIHtcbiAgICB0b3A6ICgkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKyAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCkgKiAtMTtcbiAgfVxuXG4gICY6OmFmdGVyIHtcbiAgICBib3R0b206ICgkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKyAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCkgKiAtMTtcbiAgfVxufVxuIiwiQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIDNkeCkge1xuICAvKlxuICAgKiAzRFhcbiAgICovXG4gIC5oYW1idXJnZXItLTNkeCB7XG4gICAgLmhhbWJ1cmdlci1ib3gge1xuICAgICAgcGVyc3BlY3RpdmU6ICRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAyO1xuICAgIH1cblxuICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKSxcbiAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3IgMHMgMC4xcyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSk7XG5cbiAgICAgICY6OmJlZm9yZSxcbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDBzIDAuMXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVkoMTgwZGVnKTtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgKyAkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcsIDApIHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAoJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgKyAkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcpICogLTEsIDApIHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgM2R4LXIpIHtcbiAgLypcbiAgICogM0RYIFJldmVyc2VcbiAgICovXG4gIC5oYW1idXJnZXItLTNkeC1yIHtcbiAgICAuaGFtYnVyZ2VyLWJveCB7XG4gICAgICBwZXJzcGVjdGl2ZTogJGhhbWJ1cmdlci1sYXllci13aWR0aCAqIDI7XG4gICAgfVxuXG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpLFxuICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvciAwcyAwLjFzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKTtcblxuICAgICAgJjo6YmVmb3JlLFxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMHMgMC4xcyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlWSgtMTgwZGVnKTtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgKyAkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcsIDApIHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAoJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgKyAkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcpICogLTEsIDApIHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgM2R5KSB7XG4gIC8qXG4gICAqIDNEWVxuICAgKi9cbiAgLmhhbWJ1cmdlci0tM2R5IHtcbiAgICAuaGFtYnVyZ2VyLWJveCB7XG4gICAgICBwZXJzcGVjdGl2ZTogJGhhbWJ1cmdlci1sYXllci13aWR0aCAqIDI7XG4gICAgfVxuXG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpLFxuICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvciAwcyAwLjFzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKTtcblxuICAgICAgJjo6YmVmb3JlLFxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMHMgMC4xcyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlWCgtMTgwZGVnKTtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgKyAkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcsIDApIHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAoJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgKyAkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcpICogLTEsIDApIHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgM2R5LXIpIHtcbiAgLypcbiAgICogM0RZIFJldmVyc2VcbiAgICovXG4gIC5oYW1idXJnZXItLTNkeS1yIHtcbiAgICAuaGFtYnVyZ2VyLWJveCB7XG4gICAgICBwZXJzcGVjdGl2ZTogJGhhbWJ1cmdlci1sYXllci13aWR0aCAqIDI7XG4gICAgfVxuXG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpLFxuICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvciAwcyAwLjFzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKTtcblxuICAgICAgJjo6YmVmb3JlLFxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMHMgMC4xcyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlWCgxODBkZWcpO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCArICRoYW1idXJnZXItbGF5ZXItc3BhY2luZywgMCkgcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsICgkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCArICRoYW1idXJnZXItbGF5ZXItc3BhY2luZykgKiAtMSwgMCkgcm90YXRlKC00NWRlZyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCAzZHh5KSB7XG4gIC8qXG4gICAqIDNEWFlcbiAgICovXG4gIC5oYW1idXJnZXItLTNkeHkge1xuICAgIC5oYW1idXJnZXItYm94IHtcbiAgICAgIHBlcnNwZWN0aXZlOiAkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogMjtcbiAgICB9XG5cbiAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSksXG4gICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yIDBzIDAuMXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpO1xuXG4gICAgICAmOjpiZWZvcmUsXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwcyAwLjFzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVYKDE4MGRlZykgcm90YXRlWSgxODBkZWcpO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCArICRoYW1idXJnZXItbGF5ZXItc3BhY2luZywgMCkgcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsICgkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCArICRoYW1idXJnZXItbGF5ZXItc3BhY2luZykgKiAtMSwgMCkgcm90YXRlKC00NWRlZyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCAzZHh5LXIpIHtcbiAgLypcbiAgICogM0RYWSBSZXZlcnNlXG4gICAqL1xuICAuaGFtYnVyZ2VyLS0zZHh5LXIge1xuICAgIC5oYW1idXJnZXItYm94IHtcbiAgICAgIHBlcnNwZWN0aXZlOiAkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogMjtcbiAgICB9XG5cbiAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSksXG4gICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yIDBzIDAuMXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpO1xuXG4gICAgICAmOjpiZWZvcmUsXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwcyAwLjFzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVYKDE4MGRlZykgcm90YXRlWSgxODBkZWcpIHJvdGF0ZVooLTE4MGRlZyk7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0ICsgJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nLCAwKSByb3RhdGUoNDVkZWcpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgKCRoYW1idXJnZXItbGF5ZXItaGVpZ2h0ICsgJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nKSAqIC0xLCAwKSByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIGFycm93KSB7XG4gIC8qXG4gICAqIEFycm93XG4gICAqL1xuICAuaGFtYnVyZ2VyLS1hcnJvdy5pcy1hY3RpdmUge1xuICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogLTAuMiwgMCwgMCkgcm90YXRlKC00NWRlZykgc2NhbGUoMC43LCAxKTtcbiAgICAgIH1cblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKCRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAtMC4yLCAwLCAwKSByb3RhdGUoNDVkZWcpIHNjYWxlKDAuNywgMSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgYXJyb3ctcikge1xuICAvKlxuICAgKiBBcnJvdyBSaWdodFxuICAgKi9cbiAgLmhhbWJ1cmdlci0tYXJyb3ctci5pcy1hY3RpdmUge1xuICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogMC4yLCAwLCAwKSByb3RhdGUoNDVkZWcpIHNjYWxlKDAuNywgMSk7XG4gICAgICB9XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogMC4yLCAwLCAwKSByb3RhdGUoLTQ1ZGVnKSBzY2FsZSgwLjcsIDEpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIGFycm93YWx0KSB7XG4gIC8qXG4gICAqIEFycm93IEFsdFxuICAgKi9cbiAgLmhhbWJ1cmdlci0tYXJyb3dhbHQge1xuICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMXMgMC4xcyBlYXNlLFxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4xcyBjdWJpYy1iZXppZXIoMC4xNjUsIDAuODQsIDAuNDQsIDEpO1xuICAgICAgfVxuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHRyYW5zaXRpb246IGJvdHRvbSAwLjFzIDAuMXMgZWFzZSxcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMXMgY3ViaWMtYmV6aWVyKDAuMTY1LCAwLjg0LCAwLjQ0LCAxKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogLTAuMiwgJGhhbWJ1cmdlci1sYXllci13aWR0aCAqIC0wLjI1LCAwKSByb3RhdGUoLTQ1ZGVnKSBzY2FsZSgwLjcsIDEpO1xuICAgICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjFzIGVhc2UsXG4gICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMXMgMC4xcyBjdWJpYy1iZXppZXIoMC44OTUsIDAuMDMsIDAuNjg1LCAwLjIyKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogLTAuMiwgJGhhbWJ1cmdlci1sYXllci13aWR0aCAqIDAuMjUsIDApIHJvdGF0ZSg0NWRlZykgc2NhbGUoMC43LCAxKTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBib3R0b20gMC4xcyBlYXNlLFxuICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjFzIDAuMXMgY3ViaWMtYmV6aWVyKDAuODk1LCAwLjAzLCAwLjY4NSwgMC4yMik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCBhcnJvd2FsdC1yKSB7XG4gIC8qXG4gICAqIEFycm93IEFsdCBSaWdodFxuICAgKi9cbiAgLmhhbWJ1cmdlci0tYXJyb3dhbHQtciB7XG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4xcyAwLjFzIGVhc2UsXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjFzIGN1YmljLWJlemllcigwLjE2NSwgMC44NCwgMC40NCwgMSk7XG4gICAgICB9XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdHJhbnNpdGlvbjogYm90dG9tIDAuMXMgMC4xcyBlYXNlLFxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4xcyBjdWJpYy1iZXppZXIoMC4xNjUsIDAuODQsIDAuNDQsIDEpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKCRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAwLjIsICRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAtMC4yNSwgMCkgcm90YXRlKDQ1ZGVnKSBzY2FsZSgwLjcsIDEpO1xuICAgICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjFzIGVhc2UsXG4gICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMXMgMC4xcyBjdWJpYy1iZXppZXIoMC44OTUsIDAuMDMsIDAuNjg1LCAwLjIyKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogMC4yLCAkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogMC4yNSwgMCkgcm90YXRlKC00NWRlZykgc2NhbGUoMC43LCAxKTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBib3R0b20gMC4xcyBlYXNlLFxuICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjFzIDAuMXMgY3ViaWMtYmV6aWVyKDAuODk1LCAwLjAzLCAwLjY4NSwgMC4yMik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCBhcnJvd3R1cm4pIHtcbiAgLypcbiAgICogQXJyb3cgVHVyblxuICAgKi9cbiAgLmhhbWJ1cmdlci0tYXJyb3d0dXJuLmlzLWFjdGl2ZSB7XG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTgwZGVnKTtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCg4cHgsIDAsIDApIHJvdGF0ZSg0NWRlZykgc2NhbGUoMC43LCAxKTtcbiAgICAgIH1cblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDhweCwgMCwgMCkgcm90YXRlKC00NWRlZykgc2NhbGUoMC43LCAxKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCBhcnJvd3R1cm4tcikge1xuICAvKlxuICAgKiBBcnJvdyBUdXJuIFJpZ2h0XG4gICAqL1xuICAuaGFtYnVyZ2VyLS1hcnJvd3R1cm4tci5pcy1hY3RpdmUge1xuICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTE4MGRlZyk7XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLThweCwgMCwgMCkgcm90YXRlKC00NWRlZykgc2NhbGUoMC43LCAxKTtcbiAgICAgIH1cblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC04cHgsIDAsIDApIHJvdGF0ZSg0NWRlZykgc2NhbGUoMC43LCAxKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCBib3JpbmcpIHtcbiAgLypcbiAgICogQm9yaW5nXG4gICAqL1xuICAuaGFtYnVyZ2VyLS1ib3Jpbmcge1xuICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgJixcbiAgICAgICY6OmJlZm9yZSxcbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCBjb2xsYXBzZSkge1xuICAvKlxuICAgKiBDb2xsYXBzZVxuICAgKi9cbiAgLmhhbWJ1cmdlci0tY29sbGFwc2Uge1xuICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgdG9wOiBhdXRvO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4xM3M7XG4gICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjEzcztcbiAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICB0b3A6ICgkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKiAyICsgJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgKiAyKSAqIC0xO1xuICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4ycyAwLjJzIGN1YmljLWJlemllcigwLjMzMzMzLCAwLjY2NjY3LCAwLjY2NjY3LCAxKSxcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eSAwLjFzIGxpbmVhcjtcbiAgICAgIH1cblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMTJzIDAuMnMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAuNjY2NjcsIDAuNjY2NjcsIDEpLFxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4xM3MgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgKCRoYW1idXJnZXItbGF5ZXItc3BhY2luZyArICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0KSAqIC0xLCAwKSByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC4yMnM7XG4gICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMnMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAsIDAuNjY2NjcsIDAuMzMzMzMpLFxuICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHkgMC4xcyAwLjIycyBsaW5lYXI7XG4gICAgICAgIH1cblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjFzIDAuMTZzIGN1YmljLWJlemllcigwLjMzMzMzLCAwLCAwLjY2NjY3LCAwLjMzMzMzKSxcbiAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4xM3MgMC4yNXMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCBjb2xsYXBzZS1yKSB7XG4gIC8qXG4gICAqIENvbGxhcHNlIFJldmVyc2VcbiAgICovXG4gIC5oYW1idXJnZXItLWNvbGxhcHNlLXIge1xuICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgdG9wOiBhdXRvO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4xM3M7XG4gICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjEzcztcbiAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICB0b3A6ICgkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKiAyICsgJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgKiAyKSAqIC0xO1xuICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4ycyAwLjJzIGN1YmljLWJlemllcigwLjMzMzMzLCAwLjY2NjY3LCAwLjY2NjY3LCAxKSxcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eSAwLjFzIGxpbmVhcjtcbiAgICAgIH1cblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMTJzIDAuMnMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAuNjY2NjcsIDAuNjY2NjcsIDEpLFxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4xM3MgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgKCRoYW1idXJnZXItbGF5ZXItc3BhY2luZyArICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0KSAqIC0xLCAwKSByb3RhdGUoNDVkZWcpO1xuICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjIycztcbiAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4ycyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMCwgMC42NjY2NywgMC4zMzMzMyksXG4gICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eSAwLjFzIDAuMjJzIGxpbmVhcjtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4xcyAwLjE2cyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMCwgMC42NjY2NywgMC4zMzMzMyksXG4gICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMTNzIDAuMjVzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgZWxhc3RpYykge1xuICAvKlxuICAgKiBFbGFzdGljXG4gICAqL1xuICAuaGFtYnVyZ2VyLS1lbGFzdGljIHtcbiAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgIHRvcDogJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgLyAyO1xuICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4yNzVzO1xuICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjY4LCAtMC41NSwgMC4yNjUsIDEuNTUpO1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICB0b3A6ICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0ICsgJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nO1xuICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTI1cyAwLjI3NXMgZWFzZTtcbiAgICAgIH1cblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICB0b3A6ICgkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCAqIDIpICsgKCRoYW1idXJnZXItbGF5ZXItc3BhY2luZyAqIDIpO1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4yNzVzIGN1YmljLWJlemllcigwLjY4LCAtMC41NSwgMC4yNjUsIDEuNTUpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgICAkeS1vZmZzZXQ6ICRoYW1idXJnZXItbGF5ZXItc3BhY2luZyArICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0O1xuXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgJHktb2Zmc2V0LCAwKSByb3RhdGUoMTM1ZGVnKTtcbiAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC4wNzVzO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsICR5LW9mZnNldCAqIC0yLCAwKSByb3RhdGUoLTI3MGRlZyk7XG4gICAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC4wNzVzO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgZWxhc3RpYy1yKSB7XG4gIC8qXG4gICAqIEVsYXN0aWMgUmV2ZXJzZVxuICAgKi9cbiAgLmhhbWJ1cmdlci0tZWxhc3RpYy1yIHtcbiAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgIHRvcDogJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgLyAyO1xuICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4yNzVzO1xuICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjY4LCAtMC41NSwgMC4yNjUsIDEuNTUpO1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICB0b3A6ICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0ICsgJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nO1xuICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTI1cyAwLjI3NXMgZWFzZTtcbiAgICAgIH1cblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICB0b3A6ICgkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCAqIDIpICsgKCRoYW1idXJnZXItbGF5ZXItc3BhY2luZyAqIDIpO1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4yNzVzIGN1YmljLWJlemllcigwLjY4LCAtMC41NSwgMC4yNjUsIDEuNTUpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgICAkeS1vZmZzZXQ6ICRoYW1idXJnZXItbGF5ZXItc3BhY2luZyArICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0O1xuXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgJHktb2Zmc2V0LCAwKSByb3RhdGUoLTEzNWRlZyk7XG4gICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMDc1cztcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzO1xuICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAkeS1vZmZzZXQgKiAtMiwgMCkgcm90YXRlKDI3MGRlZyk7XG4gICAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC4wNzVzO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgZW1waGF0aWMpIHtcbiAgLypcbiAgICogRW1waGF0aWNcbiAgICovXG4gIC5oYW1idXJnZXItLWVtcGhhdGljIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMTI1cyAwLjE3NXMgZWFzZS1pbjtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTI1cyBjdWJpYy1iZXppZXIoMC42LCAwLjA0LCAwLjk4LCAwLjMzNSksXG4gICAgICAgICAgICAgICAgICAgIHRvcCAwLjA1cyAwLjEyNXMgbGluZWFyLFxuICAgICAgICAgICAgICAgICAgICBsZWZ0IDAuMTI1cyAwLjE3NXMgZWFzZS1pbjtcbiAgICAgIH1cblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICB0b3A6ICgkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCkgKyAoJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nKTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjEyNXMgY3ViaWMtYmV6aWVyKDAuNiwgMC4wNCwgMC45OCwgMC4zMzUpLFxuICAgICAgICAgICAgICAgICAgICB0b3AgMC4wNXMgMC4xMjVzIGxpbmVhcixcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQgMC4xMjVzIDAuMTc1cyBlYXNlLWluO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwcztcbiAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgbGVmdDogJGhhbWJ1cmdlci1sYXllci13aWR0aCAqIC0yO1xuICAgICAgICAgIHRvcDogJGhhbWJ1cmdlci1sYXllci13aWR0aCAqIC0yO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoJGhhbWJ1cmdlci1sYXllci13aWR0aCAqIDIsICRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAyLCAwKSByb3RhdGUoNDVkZWcpO1xuICAgICAgICAgIHRyYW5zaXRpb246IGxlZnQgMC4xMjVzIGVhc2Utb3V0LFxuICAgICAgICAgICAgICAgICAgICAgIHRvcCAwLjA1cyAwLjEyNXMgbGluZWFyLFxuICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjEyNXMgMC4xNzVzIGN1YmljLWJlemllcigwLjA3NSwgMC44MiwgMC4xNjUsIDEpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIHJpZ2h0OiAkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogLTI7XG4gICAgICAgICAgdG9wOiAkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogLTI7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogLTIsICRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAyLCAwKSByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiByaWdodCAwLjEyNXMgZWFzZS1vdXQsXG4gICAgICAgICAgICAgICAgICAgICAgdG9wIDAuMDVzIDAuMTI1cyBsaW5lYXIsXG4gICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMTI1cyAwLjE3NXMgY3ViaWMtYmV6aWVyKDAuMDc1LCAwLjgyLCAwLjE2NSwgMSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCBlbXBoYXRpYy1yKSB7XG4gIC8qXG4gICAqIEVtcGhhdGljIFJldmVyc2VcbiAgICovXG4gIC5oYW1idXJnZXItLWVtcGhhdGljLXIge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xMjVzIDAuMTc1cyBlYXNlLWluO1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xMjVzIGN1YmljLWJlemllcigwLjYsIDAuMDQsIDAuOTgsIDAuMzM1KSxcbiAgICAgICAgICAgICAgICAgICAgdG9wIDAuMDVzIDAuMTI1cyBsaW5lYXIsXG4gICAgICAgICAgICAgICAgICAgIGxlZnQgMC4xMjVzIDAuMTc1cyBlYXNlLWluO1xuICAgICAgfVxuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHRvcDogKCRoYW1idXJnZXItbGF5ZXItaGVpZ2h0KSArICgkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcpO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTI1cyBjdWJpYy1iZXppZXIoMC42LCAwLjA0LCAwLjk4LCAwLjMzNSksXG4gICAgICAgICAgICAgICAgICAgIHRvcCAwLjA1cyAwLjEyNXMgbGluZWFyLFxuICAgICAgICAgICAgICAgICAgICByaWdodCAwLjEyNXMgMC4xNzVzIGVhc2UtaW47XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzO1xuICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICBsZWZ0OiAkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogLTI7XG4gICAgICAgICAgdG9wOiAkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogMjtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKCRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAyLCAkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogLTIsIDApIHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICAgIHRyYW5zaXRpb246IGxlZnQgMC4xMjVzIGVhc2Utb3V0LFxuICAgICAgICAgICAgICAgICAgICAgIHRvcCAwLjA1cyAwLjEyNXMgbGluZWFyLFxuICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjEyNXMgMC4xNzVzIGN1YmljLWJlemllcigwLjA3NSwgMC44MiwgMC4xNjUsIDEpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIHJpZ2h0OiAkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogLTI7XG4gICAgICAgICAgdG9wOiAkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogMjtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKCRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAtMiwgJGhhbWJ1cmdlci1sYXllci13aWR0aCAqIC0yLCAwKSByb3RhdGUoNDVkZWcpO1xuICAgICAgICAgIHRyYW5zaXRpb246IHJpZ2h0IDAuMTI1cyBlYXNlLW91dCxcbiAgICAgICAgICAgICAgICAgICAgICB0b3AgMC4wNXMgMC4xMjVzIGxpbmVhcixcbiAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4xMjVzIDAuMTc1cyBjdWJpYy1iZXppZXIoMC4wNzUsIDAuODIsIDAuMTY1LCAxKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIG1pbnVzKSB7XG4gIC8qXG4gICAqIE1pbnVzXG4gICAqL1xuICAuaGFtYnVyZ2VyLS1taW51cyB7XG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICAmOjpiZWZvcmUsXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHRyYW5zaXRpb246IGJvdHRvbSAwLjA4cyAwcyBlYXNlLW91dCxcbiAgICAgICAgICAgICAgICAgICAgdG9wIDAuMDhzIDBzIGVhc2Utb3V0LFxuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5IDBzIGxpbmVhcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgICAgJjo6YmVmb3JlLFxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBib3R0b20gMC4wOHMgZWFzZS1vdXQsXG4gICAgICAgICAgICAgICAgICAgICAgdG9wIDAuMDhzIGVhc2Utb3V0LFxuICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHkgMHMgMC4wOHMgbGluZWFyO1xuICAgICAgICB9XG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIHNsaWRlcikge1xuICAvKlxuICAgKiBTbGlkZXJcbiAgICovXG4gIC5oYW1idXJnZXItLXNsaWRlciB7XG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICB0b3A6ICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0IC8gMjtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgdG9wOiAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCArICRoYW1idXJnZXItbGF5ZXItc3BhY2luZztcbiAgICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZTtcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4xNXM7XG4gICAgICB9XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdG9wOiAoJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgKiAyKSArICgkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKiAyKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgICAgJHktb2Zmc2V0OiAkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKyAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodDtcblxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsICR5LW9mZnNldCwgMCkgcm90YXRlKDQ1ZGVnKTtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZykgdHJhbnNsYXRlM2QoJGhhbWJ1cmdlci1sYXllci13aWR0aCAvIC03LCAkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKiAtMSwgMCk7XG4gICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsICR5LW9mZnNldCAqIC0yLCAwKSByb3RhdGUoLTkwZGVnKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIHNsaWRlci1yKSB7XG4gIC8qXG4gICAqIFNsaWRlciBSZXZlcnNlXG4gICAqL1xuICAuaGFtYnVyZ2VyLS1zbGlkZXItciB7XG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICB0b3A6ICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0IC8gMjtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgdG9wOiAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCArICRoYW1idXJnZXItbGF5ZXItc3BhY2luZztcbiAgICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZTtcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4xNXM7XG4gICAgICB9XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdG9wOiAoJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgKiAyKSArICgkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKiAyKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgICAgJHktb2Zmc2V0OiAkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKyAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodDtcblxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsICR5LW9mZnNldCwgMCkgcm90YXRlKC00NWRlZyk7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZykgdHJhbnNsYXRlM2QoJGhhbWJ1cmdlci1sYXllci13aWR0aCAvIDcsICRoYW1idXJnZXItbGF5ZXItc3BhY2luZyAqIC0xLCAwKTtcbiAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgJHktb2Zmc2V0ICogLTIsIDApIHJvdGF0ZSg5MGRlZyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCBzcGluKSB7XG4gIC8qXG4gICAqIFNwaW5cbiAgICovXG4gIC5oYW1idXJnZXItLXNwaW4ge1xuICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4yMnM7XG4gICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjFzIDAuMjVzIGVhc2UtaW4sXG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHkgMC4xcyBlYXNlLWluO1xuICAgICAgfVxuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHRyYW5zaXRpb246IGJvdHRvbSAwLjFzIDAuMjVzIGVhc2UtaW4sXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjIycyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMjI1ZGVnKTtcbiAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC4xMnM7XG4gICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjFzIGVhc2Utb3V0LFxuICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHkgMC4xcyAwLjEycyBlYXNlLW91dDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBib3R0b20gMC4xcyBlYXNlLW91dCxcbiAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4yMnMgMC4xMnMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCBzcGluLXIpIHtcbiAgLypcbiAgICogU3BpbiBSZXZlcnNlXG4gICAqL1xuICAuaGFtYnVyZ2VyLS1zcGluLXIge1xuICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4yMnM7XG4gICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjFzIDAuMjVzIGVhc2UtaW4sXG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHkgMC4xcyBlYXNlLWluO1xuICAgICAgfVxuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHRyYW5zaXRpb246IGJvdHRvbSAwLjFzIDAuMjVzIGVhc2UtaW4sXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjIycyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTIyNWRlZyk7XG4gICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMTJzO1xuICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4xcyBlYXNlLW91dCxcbiAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5IDAuMXMgMC4xMnMgZWFzZS1vdXQ7XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBib3R0b20gMC4xcyBlYXNlLW91dCxcbiAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4yMnMgMC4xMnMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCBzcHJpbmcpIHtcbiAgLypcbiAgICogU3ByaW5nXG4gICAqL1xuICAuaGFtYnVyZ2VyLS1zcHJpbmcge1xuICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgdG9wOiAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCAvIDI7XG4gICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDBzIDAuMTNzIGxpbmVhcjtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgdG9wOiAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCArICRoYW1idXJnZXItbGF5ZXItc3BhY2luZztcbiAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMXMgMC4ycyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMC42NjY2NywgMC42NjY2NywgMSksXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjEzcyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcbiAgICAgIH1cblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICB0b3A6ICgkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCAqIDIpICsgKCRoYW1idXJnZXItbGF5ZXItc3BhY2luZyAqIDIpO1xuICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4ycyAwLjJzIGN1YmljLWJlemllcigwLjMzMzMzLCAwLjY2NjY3LCAwLjY2NjY3LCAxKSxcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMTNzIGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjIycztcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4xcyAwLjE1cyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMCwgMC42NjY2NywgMC4zMzMzMyksXG4gICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMTNzIDAuMjJzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nICsgJGhhbWJ1cmdlci1sYXllci1oZWlnaHQsIDApIHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjJzIGN1YmljLWJlemllcigwLjMzMzMzLCAwLCAwLjY2NjY3LCAwLjMzMzMzKSxcbiAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4xM3MgMC4yMnMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKyAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCwgMCkgcm90YXRlKC00NWRlZyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCBzcHJpbmctcikge1xuICAvKlxuICAgKiBTcHJpbmcgUmV2ZXJzZVxuICAgKi9cbiAgLmhhbWJ1cmdlci0tc3ByaW5nLXIge1xuICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgdG9wOiBhdXRvO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4xM3M7XG4gICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwcztcbiAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICB0b3A6ICgkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKiAyICsgJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgKiAyKSAqIC0xO1xuICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4ycyAwLjJzIGN1YmljLWJlemllcigwLjMzMzMzLCAwLjY2NjY3LCAwLjY2NjY3LCAxKSxcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eSAwcyBsaW5lYXI7XG4gICAgICB9XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjFzIDAuMnMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAuNjY2NjcsIDAuNjY2NjcsIDEpLFxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4xM3MgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgKCRoYW1idXJnZXItbGF5ZXItc3BhY2luZyArICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0KSAqIC0xLCAwKSByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC4yMnM7XG4gICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMnMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAsIDAuNjY2NjcsIDAuMzMzMzMpLFxuICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHkgMHMgMC4yMnMgbGluZWFyO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjFzIDAuMTVzIGN1YmljLWJlemllcigwLjMzMzMzLCAwLCAwLjY2NjY3LCAwLjMzMzMzKSxcbiAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4xM3MgMC4yMnMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCBzdGFuZCkge1xuICAvKlxuICAgKiBTdGFuZFxuICAgKi9cbiAgLmhhbWJ1cmdlci0tc3RhbmQge1xuICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMDc1cyAwLjE1cyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KSxcbiAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3IgMHMgMC4wNzVzIGxpbmVhcjtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMDc1cyAwLjA3NXMgZWFzZS1pbixcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMDc1cyAwcyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcbiAgICAgIH1cblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICB0cmFuc2l0aW9uOiBib3R0b20gMC4wNzVzIDAuMDc1cyBlYXNlLWluLFxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4wNzVzIDBzIGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMDc1cyAwcyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKSxcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvciAwcyAwLjE1cyBsaW5lYXI7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4wNzVzIDAuMXMgZWFzZS1vdXQsXG4gICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMDc1cyAwLjE1cyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgICAgICAgIHRyYW5zaXRpb246IGJvdHRvbSAwLjA3NXMgMC4xcyBlYXNlLW91dCxcbiAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4wNzVzIDAuMTVzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgc3RhbmQtcikge1xuICAvKlxuICAgKiBTdGFuZCBSZXZlcnNlXG4gICAqL1xuICAuaGFtYnVyZ2VyLS1zdGFuZC1yIHtcbiAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjA3NXMgMC4xNXMgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSksXG4gICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yIDBzIDAuMDc1cyBsaW5lYXI7XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjA3NXMgMC4wNzVzIGVhc2UtaW4sXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjA3NXMgMHMgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG4gICAgICB9XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdHJhbnNpdGlvbjogYm90dG9tIDAuMDc1cyAwLjA3NXMgZWFzZS1pbixcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMDc1cyAwcyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcblxuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4wNzVzIDBzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpLFxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yIDBzIDAuMTVzIGxpbmVhcjtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjA3NXMgMC4xcyBlYXNlLW91dCxcbiAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4wNzVzIDAuMTVzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgICAgdHJhbnNpdGlvbjogYm90dG9tIDAuMDc1cyAwLjFzIGVhc2Utb3V0LFxuICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjA3NXMgMC4xNXMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCBzcXVlZXplKSB7XG4gIC8qXG4gICAqIFNxdWVlemVcbiAgICovXG4gIC5oYW1idXJnZXItLXNxdWVlemUge1xuICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4wNzVzO1xuICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4wNzVzIDAuMTJzIGVhc2UsXG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHkgMC4wNzVzIGVhc2U7XG4gICAgICB9XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdHJhbnNpdGlvbjogYm90dG9tIDAuMDc1cyAwLjEycyBlYXNlLFxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4wNzVzIGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMTJzO1xuICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4wNzVzIGVhc2UsXG4gICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eSAwLjA3NXMgMC4xMnMgZWFzZTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBib3R0b20gMC4wNzVzIGVhc2UsXG4gICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMDc1cyAwLjEycyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIHZvcnRleCkge1xuICAvKlxuICAgKiBWb3J0ZXhcbiAgICovXG4gIC5oYW1idXJnZXItLXZvcnRleCB7XG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjJzO1xuICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKTtcblxuICAgICAgJjo6YmVmb3JlLFxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcbiAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC4xcztcbiAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgICAgIH1cblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdG9wLCBvcGFjaXR5O1xuICAgICAgfVxuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IGJvdHRvbSwgdHJhbnNmb3JtO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg3NjVkZWcpO1xuICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTksIDEsIDAuMjIsIDEpO1xuXG4gICAgICAgICY6OmJlZm9yZSxcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgdm9ydGV4LXIpIHtcbiAgLypcbiAgICogVm9ydGV4IFJldmVyc2VcbiAgICovXG4gIC5oYW1idXJnZXItLXZvcnRleC1yIHtcbiAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMnM7XG4gICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTksIDEsIDAuMjIsIDEpO1xuXG4gICAgICAmOjpiZWZvcmUsXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xuICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjFzO1xuICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICAgICAgfVxuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0b3AsIG9wYWNpdHk7XG4gICAgICB9XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogYm90dG9tLCB0cmFuc2Zvcm07XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC03NjVkZWcpO1xuICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTksIDEsIDAuMjIsIDEpO1xuXG4gICAgICAgICY6OmJlZm9yZSxcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gVHJhbnNpdGlvbiBkdXJhdGlvbiBhbmQgYW5pbWF0aW9uc1xuJHRyYW5zaXRpb24tZHVyYXRpb246IC4yMnM7XG5cbi8vIFBvc3NpYmxlIGtleWZyYW1lcyBoZXJlXG4vLyBAa2V5ZnJhbWVzXG4iLCIvLyBEZW1vIGNvbnRlbnRcbi8vXG4vLyBQbGVhc2Ugbm90ZTogVGhlc2UgYXJlIG1vc3RseSBmb3IgZGVtbyBwdXJwb3Nlc1xuLy8gc28gZmVlbCBmcmVlIHRvIHJlbW92ZSBldmVyeXRoaW5nIGluIHRoaXMgZmlsZVxuLy8gYW5kIHN0YXJ0IG92ZXIuXG5cbi8vIFRoaXMgaXMganVzdCBmb3IgZGVtb2luZyBwdXJwb3NlcyBzbyBsZXQncyBnaXZlIGl0IHNvbWUgc2xhY2tcbi8qIHN0eWxlbGludC1kaXNhYmxlICovXG5cbi8vIERlbW8gdmFyaWFibGVzXG4kY29sb3Itd2lsZC1ibHVlLXlvbmRlcjogIzczN2ZiZjtcblxuOnJvb3Qge1xuICAtLWNvbG9yLWJhYnktYmx1ZTogIzYwZjRlYTtcbiAgLS1jb2xvci1oZWxpb3Ryb3BlOiAjODY2Y2ZmO1xuICAtLWNvbG9yLXdpbGQtYmx1ZS15b25kZXI6ICN7JGNvbG9yLXdpbGQtYmx1ZS15b25kZXJ9O1xuICAtLWNvbG9yLXdpbGQtYmx1ZS15b25kZXItcmdiOiAje2hleHRvcmdiKCRjb2xvci13aWxkLWJsdWUteW9uZGVyKX07XG4gIC0tY29sb3ItYm9yZGVyLWRlbW8taGVhZGVyOiByZ2JhKHZhcigtLWNvbG9yLXdpbGQtYmx1ZS15b25kZXItcmdiKSwgLjUpO1xufVxuXG4vLyBEZW1vIG5hdmlnYXRpb24gYmFja2dyb3VuZCBvbiBzdWIgcGFnZXNcbkBtZWRpYSAobWluLXdpZHRoOiAkd2lkdGgtbWF4LW1vYmlsZSkge1xuICBib2R5IC5uYXYtY29udGFpbmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1tYWluKTtcbiAgfVxufVxuXG4uc2l0ZS1oZWFkZXIge1xuICBwYWRkaW5nLXRvcDogNHJlbTtcbiAgcGFkZGluZy1ib3R0b206IDRyZW07XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6ICR3aWR0aC1tYXgtbW9iaWxlKSB7XG4gICAgcGFkZGluZy10b3A6IDJyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDJyZW07XG4gIH1cblxuICAuc2l0ZS10aXRsZSB7XG4gICAgbWFyZ2luOiAwO1xuXG4gICAgc3ZnIHtcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAxcyBlYXNlLWluO1xuXG4gICAgICAvLyBBY2Nlc3NpYmlsaXR5OiBEaXNhYmxlIGFuaW1hdGlvbiBpZiByZWR1Y2UgbW90aW9uIGlzIGVuYWJsZWRcbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpLCAodXBkYXRlOiBzbG93KSB7XG4gICAgICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmNsci1pLXNvbGlkLXBhdGgtMiB7XG4gICAgICBmaWxsOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItYmFieS1ibHVlKTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIH1cblxuICAgIGE6aG92ZXIgc3ZnIHtcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuNHMgY3ViaWMtYmV6aWVyKC42LCAtLjY4LCAuNzMsIC4wNCk7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgyNjAlLCAtMjIwJSk7XG5cbiAgICAgIC8vIEFjY2Vzc2liaWxpdHk6IERpc2FibGUgYW5pbWF0aW9uIGlmIHJlZHVjZSBtb3Rpb24gaXMgZW5hYmxlZFxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSksICh1cGRhdGU6IHNsb3cpIHtcbiAgICAgICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgfVxuXG4gICAgICAuY2xyLWktc29saWQtcGF0aC0yIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgICAgZmlsbDogdmFyKC0tY29sb3ItYmFieS1ibHVlKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubG9nby1uYW1lIHtcbiAgICAgIGNvbnRlbnQ6ICdBaXInO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IC4xZW07XG4gICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcGFyYWdyYXBocyk7XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAgICAgbWFyZ2luLWxlZnQ6IC43NXJlbTtcbiAgICAgIGZvbnQtc2l6ZTogMi4ycmVtO1xuICAgIH1cbiAgfVxufVxuXG4vLyBEZW1vIHN0cnVjdHVyZVxuLmJsb2NrLmJsb2NrLWVudHJ5LWhlYWRlci1kZW1vIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItdmFsaGFsbGEpO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXgtaGVpZ2h0OiA4MHJlbTtcbiAgaGVpZ2h0OiA2MHZoO1xuICBtYXgtd2lkdGg6ICR3aWR0aC1tYXgtbGF5b3V0O1xuICBtYXJnaW46IDAgYXV0bztcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJGNvbnRhaW5lci1tb2JpbGUpIHtcbiAgICBtaW4taGVpZ2h0OiA2MHJlbTtcbiAgfVxuXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkY29udGFpbmVyLW1vYmlsZSkge1xuICAgIHBhZGRpbmctdG9wOiA2cmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiA2cmVtO1xuICB9XG5cbiAgLnNoYWRlIHtcbiAgICBvcGFjaXR5OiAuNDtcbiAgfVxuXG4gIC5pbm5lciB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6IDFmciAxZnI7XG5cbiAgICAvKiBhdXRvcHJlZml4ZXI6IG9mZiAqL1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICBqdXN0aWZ5LWl0ZW1zOiBjZW50ZXI7XG4gICAgcGFkZGluZzogMnJlbTtcbiAgICBtYXgtd2lkdGg6ICRjb250YWluZXItZGVza3RvcDtcbiAgICBtYXJnaW4tdG9wOiAxNDBweDtcbiAgICBtYXJnaW4tYm90dG9tOiA4MHB4O1xuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRjb250YWluZXItaXBhZCkge1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICBncmlkLXRlbXBsYXRlLXJvd3M6IG5vbmU7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDNmciA1ZnI7XG4gICAgICBtYXgtd2lkdGg6ICR3aWR0aC1tYXgtYXJ0aWNsZTtcbiAgICB9XG4gIH1cblxuICBAa2V5ZnJhbWVzIHBsYW5lLWNvbnRhaW5lciB7XG4gICAgMCUge1xuICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgfVxuXG4gICAgODAlIHtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIH1cbiAgfVxuXG4gIC5sb2dvIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItYmFieS1ibHVlKTtcbiAgICBib3JkZXItdG9wOiAycHggc29saWQgdmFyKC0tY29sb3ItYm9yZGVyLWRlbW8taGVhZGVyKTtcbiAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG9yZGVyOiAyO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIGFuaW1hdGlvbjogcGxhbmUtY29udGFpbmVyIDEwcyBsaW5lYXIgMXMgaW5maW5pdGU7XG5cbiAgICAubG9nby1uYW1lIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgQGtleWZyYW1lcyBwbGFuZSB7XG4gICAgICAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC0yMDAlLCAxNDAlKTtcbiAgICAgIH1cblxuICAgICAgMTAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB9XG5cbiAgICAgIDg1JSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgfVxuXG4gICAgICA5NSUge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgxNDAlLCAtMTAwJSk7XG4gICAgICB9XG5cbiAgICAgIDk3JSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICB9XG5cbiAgICAgIDEwMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBzdmcge1xuICAgICAgcGFkZGluZzogMnJlbTtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiAyMHJlbTtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtMTAwJSwgMTAwJSk7XG4gICAgICBhbmltYXRpb246IHBsYW5lIDVzIGN1YmljLWJlemllciguODYsIDAsIC4wNywgMSkgMXMgaW5maW5pdGU7XG4gICAgICBhbmltYXRpb24tZGVsYXk6IC01cztcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHotaW5kZXg6IDY7XG5cbiAgICAgIC8vIEFjY2Vzc2liaWxpdHk6IERpc2FibGUgYW5pbWF0aW9uIGlmIHJlZHVjZSBtb3Rpb24gaXMgZW5hYmxlZFxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSksICh1cGRhdGU6IHNsb3cpIHtcbiAgICAgICAgYW5pbWF0aW9uOiBub25lO1xuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB9XG5cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkY29udGFpbmVyLW1vYmlsZSkge1xuICAgICAgICBtYXgtd2lkdGg6IDE1cmVtO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkY29udGFpbmVyLWlwYWQpIHtcbiAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgICBib3JkZXItcmlnaHQ6IDJweCBzb2xpZCB2YXIoLS1jb2xvci1ib3JkZXItZGVtby1oZWFkZXIpO1xuICAgICAgb3JkZXI6IDA7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcblxuICAgICAgc3ZnIHtcbiAgICAgICAgcGFkZGluZzogMnJlbSA0cmVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5oZWFkaW5nLWhlcm8ge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDJyZW07XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDI7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjIzO1xuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRjb250YWluZXItaXBhZCkge1xuICAgICAgcGFkZGluZzogMnJlbSA0cmVtO1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB9XG4gIH1cbn1cblxuLmFjY2VudCB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWgzKTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBsZXR0ZXItc3BhY2luZzogLjA1ZW07XG4gIHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2U7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1tZWRpdW0pO1xuICBtYXJnaW46IDA7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGNvbG9yOiB2YXIoLS1jb2xvci13aWxkLWJsdWUteW9uZGVyKTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6ICR3aWR0aC1tYXgtbW9iaWxlKSB7XG4gIC5kcm9wZG93bi10b2dnbGUsXG4gIC5tZW51LWl0ZW0uY3VycmVudC1tZW51LWl0ZW0gPiBhLFxuICAubWVudS1pdGVtLmN1cnJlbnQtbWVudS1wYXJlbnQgPiBhLFxuICAuc2l0ZS1oZWFkZXIgLnNpdGUtYnJhbmRpbmcgLnNpdGUtdGl0bGUgYSxcbiAgLnNpdGUtaGVhZGVyIC5uYXYtcHJpbWFyeSAubWVudS1pdGVtcy5uYXYtbWVudSAubWVudS1pdGVtID4gLmRyb3Bkb3duLXRvZ2dsZSxcbiAgLnNpdGUtaGVhZGVyIC5uYXYtcHJpbWFyeSAubWVudS1pdGVtcyAuY3VycmVudC1tZW51LXBhcmVudCA+IGEsXG4gIC5zaXRlLWhlYWRlciAubmF2LXByaW1hcnkgLm1lbnUtaXRlbXMgLmN1cnJlbnQtbWVudS1pdGVtID4gYSB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWJhYnktYmx1ZSk7XG4gIH1cblxuICAuc2l0ZS1oZWFkZXIgLm5hdi1wcmltYXJ5IC5tZW51LWl0ZW1zIC5zdWItbWVudSAuY3VycmVudC1tZW51LXBhcmVudCA+IGEsXG4gIC5zaXRlLWhlYWRlciAubmF2LXByaW1hcnkgLm1lbnUtaXRlbXMgLnN1Yi1tZW51IC5jdXJyZW50LW1lbnUtaXRlbSA+IGEsXG4gIC5zaXRlLWhlYWRlciAubmF2LXByaW1hcnkgLm1lbnUtaXRlbXMgLnN1Yi1tZW51IC5kcm9wZG93bi10b2dnbGUge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1jdXJyZW50KTtcbiAgfVxuXG4gIC5zaXRlLWhlYWRlciAubmF2LXByaW1hcnkgLm1lbnUtaXRlbXMubmF2LW1lbnUgLnN1Yi1tZW51IC5tZW51LWl0ZW0gPiAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItdmFsaGFsbGEpO1xuICB9XG59XG5cbi5ibG9jay5ibG9jay1lbnRyeS1oZWFkZXItZGVtbyArIC5ibG9jayAuY29udGFpbmVyIHtcbiAgbWF4LXdpZHRoOiAkd2lkdGgtbWF4LWFydGljbGU7XG5cbiAgJi5ndXRlbmJlcmctY29udGVudCB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG59XG5cbi8vIEJ1aWxkIHRoZXNlIHRvIHZpZXdzL19pbmRleC5zY3NzIGZvciBleGFtcGxlXG4uYmxvY2suYmxvY2stYmxvZyBhcnRpY2xlLFxuLmJsb2NrLmJsb2NrLWJsb2cgbmF2IHtcbiAgbWF4LXdpZHRoOiAkd2lkdGgtbWF4LWFydGljbGU7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG5cbi5ibG9jay1ibG9nIGFydGljbGUge1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1wYWRkaW5nLWJsb2NrKTtcblxuICAmOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLmJsb2NrLWJsb2cgdWwudGFncyB7XG4gIHBhZGRpbmctbGVmdDogMDtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6ICR3aWR0aC1tYXgtbW9iaWxlKSB7XG4gIC5ibG9jayB7XG4gICAgbWluLWhlaWdodDogNzhweDtcbiAgfVxufVxuXG4uc2l0ZS1mb290ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci12YWxoYWxsYSk7XG59XG5cbi8vIERlbW8gY29tcG9uZW50c1xuLmNvbXBvbmVudHMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbi10b3A6IDZyZW07XG4gIG1hcmdpbi1ib3R0b206IC00cmVtO1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbn1cblxuLmhlYWRpbmctZGVtbyB7XG4gIG1hcmdpbi10b3A6IDZyZW07XG59XG5cbi5saW5rLWRlbW8ge1xuICBAaW5jbHVkZSBsaW5rKCk7XG59XG5cbi5zaXRlLW1haW4gLmNvbXBvbmVudCB7XG4gIGJvcmRlcjogMXB4IGRhc2hlZCB2YXIoLS1jb2xvci1oZWxpb3Ryb3BlKTtcbiAgcGFkZGluZzogMTlweDtcbiAgbWFyZ2luLXJpZ2h0OiA0cmVtO1xuICBtYXJnaW4tYm90dG9tOiA0cmVtO1xuXG4gIC5jb21wb25lbnQtbGFiZWwge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1oZWxpb3Ryb3BlKTtcbiAgICBmb250LXNpemU6IDEycHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIG1hcmdpbi10b3A6IC00MnB4O1xuICAgIG1hcmdpbi1sZWZ0OiAtMjBweDtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2h0dHBzOi8vYWlyd3B0aGVtZS5jb20vZGVtby9maWdtYS1jb21wb25lbnQuc3ZnJyk7XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB3aWR0aDogMTFweDtcbiAgICAgIGhlaWdodDogMTFweDtcbiAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgIH1cbiAgfVxuXG4gIHAge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBtYXJnaW46IDAgMCAycmVtO1xuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG59XG4iLCIvLyBMYXlvdXQgd2lkdGhzXG4kd2lkdGgtbWF4LWxheW91dDogMTAwJTtcbiR3aWR0aC1tYXgtYXJ0aWNsZTogODAwcHg7XG4kd2lkdGgtZ3JpZC1iYXNlOiAxMjAwcHg7XG5cbi8vIFRoaXMgaXMgdGhlIGJyZWFrcG9pbnQgbmF2aWdhdGlvbiB0cmFuc2Zvcm1zIGludG8gbW9iaWxlIG1lbnVcbi8vIE5CISBJTVBPUlRBTlQhIFJlbWVtYmVyIHRvIGNoYW5nZSBpbiBqcy9zcmMvbmF2aWdhdGlvbi5qczpcbi8vIGNvbnN0IHJlc3BvbnNpdmVuYXYgPSA5NjA7XG4vLyBJZiB0aGVzZSBhcmUgbm90IHRoZSBzYW1lLCBuYXZpZ2F0aW9uIHRvZ2dsZXMgd2lsbCBub3Qgd29yayBwcm9wZXJseS5cbiR3aWR0aC1tYXgtbW9iaWxlOiA5NjBweDtcblxuLy8gQnJlYWtwb2ludHMgZm9yIGNvbW50YWluZXJzXG4kY29udGFpbmVyLW1vYmlsZTogNDgwcHg7XG4kY29udGFpbmVyLWlwYWQ6IDc3MHB4O1xuJGNvbnRhaW5lci1pcGFkLWxhbmRzY2FwZTogMTAyNHB4O1xuJGNvbnRhaW5lci1kZXNrdG9wOiAxMjAwcHg7XG4iLCIvLyBMaW5rcyB3aXRoaW4gY29udGVudCBtdXN0IGJlIHZpc3VhbGx5IHVuZGVybGluZWRcbi8vIEBsaW5rIGh0dHBzOi8vbWFrZS53b3JkcHJlc3Mub3JnL3RoZW1lcy9oYW5kYm9vay9yZXZpZXcvYWNjZXNzaWJpbGl0eS9yZXF1aXJlZC8jY29udGVudC1saW5rc1xuQG1peGluIGxpbmsoKSB7XG4gIC8vIENyZWF0ZSB5b3VyIG93biBkZWZhdWx0IGNvbnRlbnQgbGluayBzdHlsZXMgaGVyZVxuICAvLyBmb3IgcGFnZXMgYW5kIEd1dGVuYmVyZ1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tY29sb3ItbGluay1ib3JkZXItYm90dG9tKTtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgdmFyKC0tY29sb3ItbGluay1iYWNrZ3JvdW5kLWhvdmVyKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWxpbmstdGV4dCk7XG4gIGRpc3BsYXk6IGlubGluZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IC4xcyBjdWJpYy1iZXppZXIoLjE5LCAxLCAuMjIsIDEpLCBjb2xvciAuMXMgY3ViaWMtYmV6aWVyKC4xOSwgMSwgLjIyLCAxKTtcblxuICAmOjphZnRlciB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi8uLi9zdmcvZXh0ZXJuYWwtbGluay1zdHlsZWQtbGlua3Muc3ZnJyk7XG4gIH1cblxuICAmOmhvdmVyIHtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgLTMuM3JlbSAwIHZhcigtLWNvbG9yLWxpbmstYmFja2dyb3VuZC1ob3Zlcik7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWxpbmstdGV4dC1ob3Zlcik7XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uLy4uL3N2Zy9leHRlcm5hbC1saW5rLXdoaXRlLnN2ZycpO1xuICAgIH1cbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItbGluay1ib3JkZXItZm9jdXMpO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWxpbmstdGV4dC1mb2N1cyk7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgLy8gTWFrZSBmb2N1cyBhIGxpdHRsZSBtb3JlIGVuZ2FnaW5nXG4gICAgLy8gQHNvdXJjZSBodHRwczovL3R3aXR0ZXIuY29tL2FyZ3lsZWluay9zdGF0dXMvMTM4NzA3MjA5NTE1OTQwNjU5NlxuICAgIC8vIEBsaW5rIGh0dHBzOi8vY29kZXBlbi5pby9hcmd5bGVpbmsvcGVuL0pqRXplTHBcbiAgICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IG5vLXByZWZlcmVuY2UpIHtcbiAgICAgIG91dGxpbmUtb2Zmc2V0OiA1cHg7XG4gICAgICB0cmFuc2l0aW9uOiBvdXRsaW5lLW9mZnNldCAuMjVzIGVhc2U7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi8uLi9zdmcvZXh0ZXJuYWwtbGluay1ibGFjay5zdmcnKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEdlbmVyYWxcbi8vXG4vLyBUaGlzIGZpbGUgaXMgbWVhbnQgZm9yIGdlbmVyYWwgc3R5bGVzIGFuZCBjb250YWluZXJzXG4vLyB0aGF0IGFwcGx5IGV2ZXJ5d2hlcmUgdGhyb3VnaG91dCB0aGUgd2Vic2l0ZS4gQWRkIG1vcmVcbi8vIGFsd2F5cyByZXBlYXRpbmcgZWxlbWVudHMgcmlnaHQgYmVsb3cuXG5cbi8vIERlZmF1bHQgc3RydWN0dXJhbCBlbGVtZW50XG4uYmxvY2sge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIG1heC13aWR0aDogJHdpZHRoLW1heC1sYXlvdXQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLy8gRGVmYXVsdCBzaGFkZSBvbiB0b3Agb2YgYmxvY2tzXG4uc2hhZGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1iYWNrZ3JvdW5kLXNoYWRlKTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBsZWZ0OiAwO1xuICBvcGFjaXR5OiAuMzU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgei1pbmRleDogMDtcbn1cblxuLy8gR2xvYmFsIGxpbmsgaGVscGVyXG4vLyBUaGlzIGlzIHVzZWZ1bCBpbiBzZXJ2aWNlcyAtdHlwZSBvZiBhcmVhcyB3aGVyZSB0aGUgd2hvbGUgYmxvY2sgaXMgYSBsaW5rXG4vLyBSZW1lbWJlciB0byBkZWZpbmUgYXJpYS1sYWJlbCBvciBzY3JlZW4tcmVhZGVyLXRleHQgZm9yIGFjY2Vzc2liaWxpdHlcbi5nbG9iYWwtbGluayB7XG4gIGhlaWdodDogMTAwJTtcbiAgbGVmdDogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiAzO1xufVxuXG4vLyBTaXRlIHdyYXBwZXJcbi5zaXRlIHtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi8vIENvbnRhaW5lcnNcbi5jb250YWluZXIge1xuICBtYXJnaW46IDAgYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWF4LXdpZHRoOiAkd2lkdGgtZ3JpZC1iYXNlO1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tcGFkZGluZy1jb250YWluZXItdmVydGljYWwpO1xuICBwYWRkaW5nLWxlZnQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgcGFkZGluZy10b3A6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLXZlcnRpY2FsKTtcbn1cblxuLy8gQ2xlYXIgYmxvY2sgY29udGFpbmVycyBieSBkZWZhdWx0XG4uc2l0ZS1tYWluIC5jb250YWluZXIge1xuICBjbGVhcjogYm90aDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLy8gTWV0YSBhY3Rpb25zXG4uZW50cnktZm9vdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgbWFyZ2luLXRvcDogdmFyKC0tcGFkZGluZy1jb250YWluZXItdmVydGljYWwpO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4vLyBCZXR0ZXIgZWRpdCBsaW5rXG4uZWRpdC1saW5rIHtcbiAgY2xlYXI6IGJvdGg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBtYXJnaW4tdG9wOiAycmVtO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1pbi13aWR0aDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgdHJhbnNpdGlvbjogYWxsICR0cmFuc2l0aW9uLWR1cmF0aW9uO1xuICB3aWR0aDogMTAwJTtcblxuICBhIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gICAgYm9yZGVyOiAycHggZGFzaGVkIHZhcigtLWNvbG9yLWxpbmstZWRpdC1ib3JkZXIpO1xuICAgIGNsZWFyOiBib3RoO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1saW5rLWVkaXQtdGV4dCk7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDJyZW07XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgJHRyYW5zaXRpb24tZHVyYXRpb247XG4gIH1cblxuICAmOmZvY3VzLFxuICBhOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1saW5rLWVkaXQtYmFja2dyb3VuZC1ob3Zlcik7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWxpbmstZWRpdC10ZXh0LWhvdmVyKTtcbiAgfVxufVxuXG4vLyBIaWRlL3Nob3cgaGVscGVyc1xuLmhpZGUtb24tZGVza3RvcCB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkY29udGFpbmVyLW1vYmlsZSkge1xuICAgIC8vIEZvcmNlZCB0byB1c2UgaW1wb3J0YW50IGhlcmUsIGJlY2F1c2UgbWFrZXMgbm8gc2Vuc2UgdG8gd3JpdGUgdG9vIHNwZWNpZmljIHNlbGVjdG9ycyBoZXJlXG4gICAgLyogc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50ICovXG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIC8qIHN0eWxlbGludC1lbmFibGUgKi9cbiAgfVxufVxuXG4vLyBGb3JjZWQgdG8gdXNlIGltcG9ydGFudCBoZXJlLCBiZWNhdXNlIG1ha2VzIG5vIHNlbnNlIHRvIHdyaXRlIHRvbyBzcGVjaWZpYyBzZWxlY3RvcnMgaGVyZVxuLyogc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50LCBhMTF5L25vLWRpc3BsYXktbm9uZSAqL1xuLmhpZGUtb24tbW9iaWxlIHtcbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRjb250YWluZXItbW9iaWxlKSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG4vKiBzdHlsZWxpbnQtZW5hYmxlICovXG5cbi8vIE9ubHkgZnVuY3Rpb24gb2YgdGhlc2UgaXMgdG8gZm9yY2UgaGlkZSBjb250ZW50IGJhc2VkIG9uIHRoZSB2aWV3XG4vLyBGb3JjZWQgdG8gdXNlIGltcG9ydGFudCBoZXJlLCBiZWNhdXNlIG1ha2VzIG5vIHNlbnNlIHRvIHdyaXRlIHRvbyBzcGVjaWZpYyBzZWxlY3RvcnMgaGVyZVxuLyogc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50LCBhMTF5L25vLWRpc3BsYXktbm9uZSAqL1xuLmhpZGUtb24tbW9iaWxlLW5hdi12aWV3IHtcbiAgQG1lZGlhIChtYXgtd2lkdGg6ICR3aWR0aC1tYXgtbW9iaWxlKSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG4vKiBzdHlsZWxpbnQtZW5hYmxlICovXG4vLyBGb3JjZWQgdG8gdXNlIGltcG9ydGFudCBoZXJlLCBiZWNhdXNlIG1ha2VzIG5vIHNlbnNlIHRvIHdyaXRlIHRvbyBzcGVjaWZpYyBzZWxlY3RvcnMgaGVyZVxuLyogc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50LCBhMTF5L25vLWRpc3BsYXktbm9uZSAqL1xuLmhpZGUtb24tZGVza3RvcC1uYXYtdmlldyB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkd2lkdGgtbWF4LW1vYmlsZSkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuLyogc3R5bGVsaW50LWVuYWJsZSAqL1xuXG4vLyBGb3JjZWQgdG8gdXNlIGltcG9ydGFudCBoZXJlLCBiZWNhdXNlIG1ha2VzIG5vIHNlbnNlIHRvIHdyaXRlIHRvbyBzcGVjaWZpYyBzZWxlY3RvcnMgaGVyZVxuLyogc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50LCBhMTF5L25vLWRpc3BsYXktbm9uZSAqL1xuLmhpZGUtY29tcGxldGVseSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cbi8qIHN0eWxlbGludC1lbmFibGUgKi9cbiIsIi8vIEl0IGlzIGFjY2VwdGFibGUgdG8gaGlkZSB0aGluZ3MgZm9yIHByaW50XG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBhMTF5L25vLWRpc3BsYXktbm9uZSAqL1xuQG1lZGlhIHByaW50IHtcbiAgLm5hdi1jb250YWluZXIsXG4gIC5zaXRlLWZvb3RlcixcbiAgLnNpZGUtbmF2IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLy8gQWRkIGNvbG9ycywgZGlzYWJsZSBzcGFjaW5ncyBvciBpbWFnZXMsXG4gIC8vIGV0Yy4gZGVmaW5lIGhlcmVcbiAgLy8gKiB7XG4gIC8vICAgY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKSAhaW1wb3J0YW50O1xuICAvLyB9XG59XG4iLCIvLyBUeXBvZ3JhcGh5XG4vL1xuLy8gRXZlcnl0aGluZyBhcm91bmQgZm9udHMsIGZvbnQgc2l6ZSBkZWZpbml0aW9ucyBhbmQgdHlwZXNldFxuLy8gcHJlc2V0cy4gTm8gbW9kdWxhciBzY2FsZSwgYnV0IGEgc29waGlzdGljYXRlZCB2aWV3cG9ydFxuLy8gYmFzZWQgcmVzcG9uc2l2ZSBtaXhpbiBjYW4gYmUgZm91bmQgaW4gX2hlbHBlcnMuc2Nzc1xuXG4vLyBTZXQgcm9vdCBzaXplIGZvciByZW1zXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1wcm9wZXJ0eS11bml0LWFsbG93ZWQtbGlzdCAqL1xuOnJvb3Qge1xuICBmb250LXNpemU6IDYyLjUlO1xufVxuLyogc3R5bGVsaW50LWVuYWJsZSBkZWNsYXJhdGlvbi1wcm9wZXJ0eS11bml0LWFsbG93ZWQtbGlzdCAqL1xuXG4vLyBTdGFydCB0eXBvZ3JhcGh5IHNldHRpbmdzXG5ib2R5IHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXBhcmFncmFwaCk7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXBhcmFncmFwaCk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWRlZmF1bHQpO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXBhcmFncmFwaHMpO1xuICB0ZXh0LXJlbmRlcmluZzogZ2VvbWV0cmljUHJlY2lzaW9uO1xufVxuXG4vLyBEZWZhdWx0c1xucCxcbmRkLFxuZHQsXG5maWdjYXB0aW9uLFxuaHIsXG5zbWFsbCxcbm9sLFxudWwsXG5saSxcbmJsb2NrcXVvdGUsXG5rYmQsXG5wcmUsXG5zYW1wLFxuY29kZSxcbnRoLFxudGQsXG50YWJsZSxcbnRyLFxuJWRlZmF1bHQge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1wYXJhZ3JhcGhzKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXBhcmFncmFwaHMpO1xufVxuXG4vLyBIZWFkaW5nIGRlZmF1bHRzXG5oMSxcbmgyLFxuaDMsXG5oNCxcbmg1LFxuaDYge1xuICBjb2xvcjogdmFyKC0tY29sb3ItaGVhZGluZyk7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWhlYWRpbmcpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtaGVhZGluZ3MpO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1tYXJnaW4tYmV0d2Vlbi1wYXJhZ3JhcGhzKTtcbiAgbWFyZ2luLXRvcDogdmFyKC0tbWFyZ2luLWJldHdlZW4tcGFyYWdyYXBocyk7XG59XG5cbmgyLFxuaDMsXG5oNCxcbmg1LFxuaDYge1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtaGVhZGluZ3MpO1xufVxuXG4vLyBEZWZpbmUgaGVhZGluZyBzY2FsZXNcbi8vIEN1cnJlbnQ6IFBlcmZlY3QgZm91cnRoOiBodHRwczovL3R5cGUtc2NhbGUuY29tL1xuaDEge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oMSk7XG59XG5cbmgyIHtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaDIpO1xufVxuXG5oMyB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWgzKTtcbn1cblxuaDQge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oNCk7XG59XG5cbmg1IHtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaDUpO1xufVxuXG5oNiB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWg2KTtcbn1cblxuaDE6Zmlyc3QtY2hpbGQsXG5oMjpmaXJzdC1jaGlsZCxcbmgzOmZpcnN0LWNoaWxkLFxuaDQ6Zmlyc3QtY2hpbGQsXG5oNTpmaXJzdC1jaGlsZCxcbmg2OmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cblxuLy8gTGlzdHNcbnVsIHtcbiAgbGlzdC1zdHlsZTogZGlzYyBvdXRzaWRlO1xuICBwYWRkaW5nLWxlZnQ6IDEuOXJlbTtcblxuICBsaSB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG59XG5cbm9sIHtcbiAgcGFkZGluZy1sZWZ0OiAxLjlyZW07XG59XG5cbi8vIEJvbGQuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xufVxuXG4vLyBJdGFsaWMuXG5lbSxcbmkge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbi8vIElubGluZSBzbWFsbCB0ZXh0Llxuc21hbGwge1xuICBmb250LXNpemU6IC44N2VtO1xufVxuXG4vLyBEZWZhdWx0IHBhcmFncmFwaHNcbnAge1xuICBtYXJnaW4tYm90dG9tOiAyLjlyZW07XG4gIG1hcmdpbi10b3A6IDIuOXJlbTtcbn1cblxuLy8gUXVvdGVzLlxuYmxvY2txdW90ZSB7XG4gIGJvcmRlcjogMCBub25lO1xuICBjbGVhcjogYm90aDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogM3JlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIHAge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1ibG9ja3F1b3RlKTtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cblxuICBAbWVkaWEgKG1pbi13aWR0aDogJGNvbnRhaW5lci1pcGFkKSB7XG4gICAgbWFyZ2luLXRvcDogNHJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogNHJlbTtcbiAgfVxuXG4gICY6OmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiA0cHg7XG4gICAgbGVmdDogMDtcbiAgICBtYXgtd2lkdGg6IDE0N3B4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJGNvbnRhaW5lci1tb2JpbGUpIHtcbiAgICAgIHdpZHRoOiAzMCU7XG4gICAgfVxuICB9XG59XG5cbmNpdGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG4vLyBObyBtYXJnaW4gdG9wIG9uIGZpcnN0IHBhcmFncmFwaFxucDpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5cbi8vIE5vIG1hcmdpbiBib3R0b20gb24gbGFzdCBwYXJhZ3JhcGhcbnA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi8vIGltYWdlc1xuaW1nIHtcbiAgaGVpZ2h0OiBhdXRvO1xuICAtbXMtaW50ZXJwb2xhdGlvbi1tb2RlOiBiaWN1YmljO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi8vIEZpZ3VyZXMgYW5kIGNhcHRpb25zXG5maWd1cmUge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tdG9wOiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi8vIEZpZ2NhcHRpb24uXG5maWdjYXB0aW9uIHtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcGFyYWdyYXBocyk7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5cbmtiZCxcbnByZSxcbnNhbXAge1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1tb25vc3BhY2UpO1xufVxuXG4vLyBDb2RlIGJsb2NrLlxuY29kZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJhY2tncm91bmQtY29kZS1pbmxpbmUpO1xuICBib3JkZXItcmFkaXVzOiAuM3JlbTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWNvZGUtYmxvY2spO1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1tb25vc3BhY2UpO1xuICBmb250LXNpemU6IGluaGVyaXQ7IC8vIG5vcm1hbGl6ZS5jc3Mgc2V0cyB0aGlzIGFzIDFlbSBieSBkZWZhdWx0XG4gIHBhZGRpbmc6IC4zN3JlbSAuNXJlbTtcblxuICBwcmUgJiB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmc6IDEuMTVyZW0gMXJlbSAuODVyZW07XG4gIH1cbn1cblxuLy8gUHJlZm9ybWF0dGVkIHRleHQuXG5wcmUge1xuICBib3JkZXItcmFkaXVzOiAuM3JlbTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG4gIHdoaXRlLXNwYWNlOiBwcmUtd3JhcDtcbiAgd29yZC1icmVhazogYnJlYWstYWxsO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG59XG4iLCIvLyBTaXRlIGhlYWRlclxuLy9cbi8vIFRoZSB2ZXJ5IHRvcCBvZiB0aGUgc2l0ZSwgZWxlbWVudCB0aGF0IHVzdWFsbHkgaW5jbHVkZXNcbi8vIHRoZSBzaXRlIG5hdmlnYXRpb24gYW5kIHNlYXJjaCBmb3IgZXhhbXBsZS5cblxuLnNpdGUtaGVhZGVyIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXgtd2lkdGg6ICR3aWR0aC1ncmlkLWJhc2U7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoLS1wYWRkaW5nLXNpdGUtaGVhZGVyLXZlcnRpY2FsKTtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gIHBhZGRpbmctdG9wOiB2YXIoLS1wYWRkaW5nLXNpdGUtaGVhZGVyLXZlcnRpY2FsKTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxNTtcbn1cblxuLnNpdGUtdGl0bGUge1xuICBsaW5lLWhlaWdodDogMDtcbiAgbWFyZ2luOiAwO1xuXG4gIGEge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxufVxuXG4vLyBOYXYgY29udGFpbmVyIHZpc2liaWxpdHkgZml4XG4ubmF2LWNvbnRhaW5lciB7XG4gIHotaW5kZXg6IDEwO1xufVxuIiwiLy8gU2l0ZSBmb290ZXJcbi8vXG4vLyBUaGUgdmVyeSBib3R0b20gb2YgdGhlIHNpdGUuIFVzdWFsbHkgY29udGFpbnMgc3VwcG9ydGluZ1xuLy8gb3Igc2Vjb25kYXJ5IG5hdmlnYXRpb24sIHNvY2lhbCBtZWRpYSBpY29ucywgY29udGFjdCBkZXRhaWxzXG4vLyBhbmQgc3VjaC5cbi8vXG4vLyBQbGVhc2Ugbm90ZTogVGhlc2UgYXJlIG1vc3RseSBmb3IgZGVtbyBwdXJwb3Nlc1xuLy8gc28gZmVlbCBmcmVlIHRvIHJlbW92ZSBldmVyeXRoaW5nIGluIHRoaXMgZmlsZVxuLy8gYW5kIHN0YXJ0IG92ZXIuXG5cbi5zaXRlLWZvb3RlciB7XG4gIGNsZWFyOiBib3RoO1xuICBjb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nOiA2cmVtIDJyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICBwLFxuICBzcGFuIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICB9XG5cbiAgLndvcmRwcmVzcy1sb2dvIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgfVxuXG4gIHNwYW4ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuXG4gIHN2ZyB7XG4gICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG5cbiAgLy8gSGlkaW5nIGZvciBhZXN0aGV0aWMgcmVhc29uc1xuICAvKiBzdHlsZWxpbnQtZGlzYWJsZSBhMTF5L25vLWRpc3BsYXktbm9uZSAqL1xuICAuaXMtZXh0ZXJuYWwtbGluazo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLyogc3R5bGVsaW50LWVuYWJsZSAqL1xuXG4gIC5wb3dlcmVkLWJ5LXdvcmRwcmVzcyB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1zZW1pYm9sZCk7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cblxuICAuZ2l0aHViLWxpbmsge1xuICAgIG1hcmdpbi1sZWZ0OiA4cHg7XG4gICAgbWFyZ2luLXRvcDogNHB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcGFkZGluZy1ib3R0b206IDRweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmLmlzLWV4dGVybmFsLWxpbms6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBoZWlnaHQ6IDFweDtcbiAgICAgIG9wYWNpdHk6IC40O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiBhdXRvO1xuICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAkdHJhbnNpdGlvbi1kdXJhdGlvbjtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxuXG4gIGEge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAkdHJhbnNpdGlvbi1kdXJhdGlvbjtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAgICAgb3BhY2l0eTogLjU7XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgb3BhY2l0eTogLjI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnRoZW1lLWluZm8ge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICBpIHtcbiAgICAgIG1hcmdpbjogMCA1cHg7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3JtcyBhbmQgaW5wdXQgZmllbGRzXG4vL1xuLy8gQWxsIHRoZSBmb3JtcyBvbiB0aGUgc2l0ZS4gR2VuZXJhbCBzdHlsZXMuIFN1cHBvcnRzIG1vc3Qgb2Zcbi8vIHRoZSBHcmF2aXR5IEZvcm1zIHN0eWxlcyBvdXQgb2YgdGhlIGJveC5cblxuLy8gQ1NTIFZhcmlhYmxlcyBmb3IgcmFkaW9zIGFuZCBjaGVja2JveGVzXG46cm9vdCB7XG4gIC8vIEZvcm0gZWxlbWVudCBjb2xvcnNcbiAgLS1jb2xvci1iYWNrZ3JvdW5kLWlucHV0LWZpZWxkOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIC0tY29sb3ItYm9yZGVyLWZvcm1zOiAjZDlkOWQ5O1xuICAtLWNvbG9yLWJvcmRlci1mb3Jtcy1mb2N1czogcmdiYSg0MiwgNDUsIDYyLCAuMyk7XG4gIC0tY29sb3ItYnV0dG9uOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIC0tY29sb3ItYnV0dG9uLWhvdmVyOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIC0tY29sb3ItYnV0dG9uLWJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWVhc3QtYmF5KTtcbiAgLS1jb2xvci1idXR0b24tYmFja2dyb3VuZC1ob3ZlcjogdmFyKC0tY29sb3ItdmFsaGFsbGEpO1xuICAtLWNvbG9yLWNoZWNrYm94OiB2YXIoLS1jb2xvci1lYXN0LWJheSk7XG4gIC0tY29sb3ItY2hlY2tib3gtb3V0bGluZTogMCAwIDAgM3B4IHJnYmEoODQsIDg3LCAxMTUsIC4yKTtcbiAgLS1jb2xvci1jaGVja2JveC1ib3JkZXItaG92ZXI6IGxpZ2h0ZW4oIzU0NTc3MywgMTUlKTtcbiAgLS1jb2xvci1wbGFjZWhvbGRlcjogdmFyKC0tY29sb3ItcGFyYWdyYXBoKTtcbiAgLS1jb2xvci1wbGFjZWhvbGRlci1mb2N1czogdmFyKC0tY29sb3ItYmxhY2spO1xuICAtLW9wYWNpdHktcGxhY2Vob2xkZXI6IC40O1xuICAtLW9wYWNpdHktcGxhY2Vob2xkZXItZm9jdXM6IC44O1xuXG4gIC8vIEZvcm0gZWxlbWVudCBzZXR0aW5nc1xuICAtLWJvcmRlci1yYWRpdXMtY2hlY2tib3g6IDRweDtcbiAgLS1ib3JkZXItcmFkaXVzLWlucHV0LWZpZWxkOiA0cHg7XG4gIC0tYm9yZGVyLXJhZGl1cy1zZWxlY3Q6IDA7XG4gIC0tYm9yZGVyLXdpZHRoLWNoZWNrYm94OiAycHg7XG4gIC0tYm9yZGVyLXdpZHRoLWlucHV0LWZpZWxkOiAycHg7XG4gIC0tZ2FwLWNoZWNrYm94OiAxMHB4O1xuICAtLWxpbmUtaGVpZ2h0LWNoZWNrYm94OiB2YXIoLS1saW5lLWhlaWdodC1wYXJhZ3JhcGhzKTtcbiAgLS1zaXplLWNoZWNrYm94LW1hcmtlcjogMTJweDtcbiAgLS1zaXplLXJhZGlvLWJ1dHRvbjogMTZweDtcbiAgLS1zaXplLXJhZGlvLWJ1dHRvbi1tYXJrZXI6IDhweDtcbn1cblxuLy8gQnV0dG9uc1xuLmJ1dHRvbi13cmFwcGVyIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLy8gQnV0dG9uc1xuLnNpdGUtbWFpbixcbi5zaXRlLWZvb3RlciB7XG4gIGJ1dHRvbixcbiAgLmJ1dHRvbixcbiAgaW5wdXRbdHlwZT1cInJlc2V0XCJdLFxuICBpbnB1dFt0eXBlPVwic3VibWl0XCJdLFxuICBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdIHtcbiAgICBAaW5jbHVkZSBidXR0b24oKTtcblxuICAgIC8vIEJ1dHRvbiBzaXplc1xuICAgICYuYnV0dG9uLXNtYWxsIHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbi1zaXplLXNtYWxsKCk7XG4gICAgfVxuXG4gICAgJi5idXR0b24tbGFyZ2Uge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uLXNpemUtbGFyZ2UoKTtcbiAgICB9XG5cbiAgICAvLyBCdXR0b24gc3R5bGVzXG4gICAgJi5idXR0b24tZ2hvc3Qge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uLXN0eWxlLWdob3N0KCk7XG4gICAgfVxuICB9XG59XG5cbi8vIFNlbGVjdCBkcm9wIGRvd25zXG5zZWxlY3Qge1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uLy4uL3N2Zy9zZWxlY3Quc3ZnJyk7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IDAgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IDQwcHggYXV0bztcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1ib3JkZXItZm9ybXMpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXNlbGVjdCk7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogdmFyKC0tYm9yZGVyLXdpZHRoLWlucHV0LWZpZWxkKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXBhcmFncmFwaCk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTE3KTtcbiAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWluLXdpZHRoOiAwO1xuICBwYWRkaW5nOiAxNXB4O1xuICB0ZXh0LWluZGVudDogMXB4O1xuICB0cmFuc2l0aW9uOiBub25lO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLy8gRm9ybSBpbnB1dCBlbGVtZW50cyBhbmQgdGV4dGFyZWFzXG50ZXh0YXJlYSxcbnNlbGVjdCxcbmlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuaW5wdXRbdHlwZT1cInRlbFwiXSxcbmlucHV0W3R5cGU9XCJ1cmxcIl0sXG5pbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0sXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdLFxuaW5wdXRbdHlwZT1cIm1vbnRoXCJdLFxuaW5wdXRbdHlwZT1cIndlZWtcIl0sXG5pbnB1dFt0eXBlPVwiZW1haWxcIl0sXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdIHtcbiAgQGV4dGVuZCAlZGVmYXVsdDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmFja2dyb3VuZC1pbnB1dC1maWVsZCk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItYm9yZGVyLWZvcm1zKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1pbnB1dC1maWVsZCk7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogdmFyKC0tYm9yZGVyLXdpZHRoLWlucHV0LWZpZWxkKTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtcGFyYWdyYXBoKTtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtMTcpO1xuICBsaW5lLWhlaWdodDogMjRweDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZzogMTVweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgLjU1cztcblxuICAmOjpwbGFjZWhvbGRlciB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLXBsYWNlaG9sZGVyKTtcbiAgICBvcGFjaXR5OiB2YXIoLS1vcGFjaXR5LXBsYWNlaG9sZGVyKTtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJhY2tncm91bmQtaW5wdXQtZmllbGQpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItYm9yZGVyLWZvcm1zLWZvY3VzKTtcblxuICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1wbGFjZWhvbGRlci1mb2N1cyk7XG4gICAgICBvcGFjaXR5OiB2YXIoLS1vcGFjaXR5LXBsYWNlaG9sZGVyLWZvY3VzKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gUmFkaW8gYnV0dG9ucyBhbmQgY2hlY2tib3hlc1xuaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgaGVpZ2h0OiB2YXIoLS1zaXplLXJhZGlvLWJ1dHRvbik7XG4gIG1hcmdpbjogMDtcbiAgbWFyZ2luLXRvcDogY2FsYygoMWVtICogdmFyKC0tbGluZS1oZWlnaHQtY2hlY2tib3gpIC0gdmFyKC0tc2l6ZS1yYWRpby1idXR0b24pKSAvIDIpO1xuICBvcGFjaXR5OiAwO1xuICBwYWRkaW5nOiAwO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgLy8gSGlkZSBuYXRpdmUgYnV0dG9uc1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiB2YXIoLS1zaXplLXJhZGlvLWJ1dHRvbik7XG59XG5cbi8vIExhYmVscyBmb3IgcmFkaW8gYnV0dG9ucyBhbmQgY2hlY2tib3hlc1xuaW5wdXRbdHlwZT1cInJhZGlvXCJdICsgbGFiZWwsXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0gKyBsYWJlbCB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtY2hlY2tib3gpO1xufVxuXG4vLyBDdXN0b20gYnV0dG9ucyAtIGJhc2ljIHN0eWxlXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0gKyBsYWJlbDo6YmVmb3JlLFxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdICsgbGFiZWw6OmJlZm9yZSB7XG4gIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItY2hlY2tib3gpO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IHZhcigtLWJvcmRlci13aWR0aC1jaGVja2JveCk7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgZmxleC1zaHJpbms6IDA7XG4gIGhlaWdodDogdmFyKC0tc2l6ZS1yYWRpby1idXR0b24pO1xuICBtYXJnaW4tcmlnaHQ6IHZhcigtLWdhcC1jaGVja2JveCk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiBjYWxjKHZhcigtLWJvcmRlci13aWR0aC1jaGVja2JveCkgLyAyKTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4ycywgYm9yZGVyIC4ycztcbiAgd2lkdGg6IHZhcigtLXNpemUtcmFkaW8tYnV0dG9uKTtcbn1cblxuLy8gUmFkaW8gb25seSBzdHlsZVxuaW5wdXRbdHlwZT1cInJhZGlvXCJdICsgbGFiZWw6OmJlZm9yZSB7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbn1cblxuLy8gQ2hlY2tib3ggb25seSBzdHlsZVxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdICsgbGFiZWw6OmJlZm9yZSB7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtY2hlY2tib3gpO1xufVxuXG4vLyBSYWRpbyBidXR0b24gYW5kIGNoZWNrYm94IGNoZWNrZWQgc3RhdGVzXG5pbnB1dFt0eXBlPVwicmFkaW9cIl06Y2hlY2tlZCArIGxhYmVsOjpiZWZvcmUsXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCArIGxhYmVsOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1jaGVja2JveCk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItY2hlY2tib3gpO1xuICBib3gtc2hhZG93OiBub25lO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjJzO1xufVxuXG4vLyBSYWRpbyBidXR0b24gYW5kIGNoZWNrYm94IGFjdGl2ZSBzdGF0ZXNcbmlucHV0W3R5cGU9XCJyYWRpb1wiXTphY3RpdmUgKyBsYWJlbDo6YmVmb3JlLFxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmFjdGl2ZSArIGxhYmVsOjpiZWZvcmUge1xuICB0cmFuc2Zvcm06IHNjYWxlKC44KTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4ycztcbn1cblxuLy8gUmFkaW8gYnV0dG9uIGljb25cbmlucHV0W3R5cGU9XCJyYWRpb1wiXTpjaGVja2VkICsgbGFiZWw6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsICUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNiclM0UlM0NnIGNsYXNzPSduYy1pY29uLXdyYXBwZXInIGZpbGw9JyUyM2ZmZmZmZiclM0UlM0NjaXJjbGUgY3g9JzgnIGN5PSc4JyByPSc4JyBmaWxsPSclMjNmZmZmZmYnJTNFJTNDL2NpcmNsZSUzRSUzQy9nJTNFJTNDL3N2ZyUzRVwiKTtcbiAgYmFja2dyb3VuZC1zaXplOiB2YXIoLS1zaXplLXJhZGlvLWJ1dHRvbi1tYXJrZXIpO1xufVxuXG4vLyBDaGVja2JveCBidXR0b24gaWNvblxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQgKyBsYWJlbDo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCAlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMTInIGhlaWdodD0nMTInIHZpZXdCb3g9JzAgMCAxMiAxMiclM0UlM0Nwb2x5bGluZSBwb2ludHM9JzEgNi41IDQgOS41IDExIDIuNScgZmlsbD0nbm9uZScgc3Ryb2tlPSclMjNGRkZGRkYnIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgc3Ryb2tlLXdpZHRoPScyJy8lM0UlM0Mvc3ZnJTNFXCIpO1xuICBiYWNrZ3JvdW5kLXNpemU6IHZhcigtLXNpemUtY2hlY2tib3gtbWFya2VyKTtcbn1cblxuLy8gUmFkaW8gYnV0dG9uIGFuZCBjaGVja2JveCBmb2N1cyBzdGF0ZXNcbmlucHV0W3R5cGU9XCJyYWRpb1wiXTpmb2N1cyArIGxhYmVsOjpiZWZvcmUsXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Zm9jdXMgKyBsYWJlbDo6YmVmb3JlLFxuaW5wdXRbdHlwZT1cInJhZGlvXCJdOmNoZWNrZWQ6YWN0aXZlICsgbGFiZWw6OmJlZm9yZSxcbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkOmFjdGl2ZSArIGxhYmVsOjpiZWZvcmUge1xuICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWNoZWNrYm94KTtcbiAgYm94LXNoYWRvdzogdmFyKC0tY29sb3ItY2hlY2tib3gtb3V0bGluZSk7XG59XG5cbi8vIFJhZGlvIGJ1dHRvbiBhbmQgY2hlY2tib3ggY2hlY2tlZCArIGFjdGl2ZSBzdGF0ZXNcbmlucHV0W3R5cGU9XCJyYWRpb1wiXTpjaGVja2VkOmFjdGl2ZSArIGxhYmVsOjpiZWZvcmUsXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZDphY3RpdmUgKyBsYWJlbDo6YmVmb3JlIHtcbiAgdHJhbnNmb3JtOiBub25lO1xuICB0cmFuc2l0aW9uOiBub25lO1xufVxuXG4vLyBSYWRpbyBidXR0b24gYW5kIGNoZWNrYm94IGhvdmVyc1xuLyogc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3ItbWF4LXBzZXVkby1jbGFzcyAqL1xuaW5wdXRbdHlwZT1cInJhZGlvXCJdOm5vdCg6Y2hlY2tlZCk6bm90KDpmb2N1cykgKyBsYWJlbDpob3Zlcjo6YmVmb3JlLFxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOm5vdCg6Y2hlY2tlZCk6bm90KDpmb2N1cykgKyBsYWJlbDpob3Zlcjo6YmVmb3JlIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1jaGVja2JveC1ib3JkZXItaG92ZXIpO1xufVxuLyogc3R5bGVsaW50LWVuYWJsZSBzZWxlY3Rvci1tYXgtcHNldWRvLWNsYXNzICovXG4iLCJAbWl4aW4gYnV0dG9uLXN0eWxlLWdob3N0KCRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCwgJGJhY2tncm91bmQtaG92ZXI6IHZhcigtLWNvbG9yLWJ1dHRvbi1iYWNrZ3JvdW5kKSwgJGNvbG9yOiB2YXIoLS1jb2xvci1idXR0b24tYmFja2dyb3VuZCksICRob3ZlcjogdmFyKC0tY29sb3Itd2hpdGUpLCAkcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWlucHV0LWZpZWxkKSwgJGJvcmRlcjogdmFyKC0tYm9yZGVyLXdpZHRoLWlucHV0LWZpZWxkKSBzb2xpZCB2YXIoLS1jb2xvci1idXR0b24tYmFja2dyb3VuZCksICR0cmFuc2l0aW9uOiBhbGwgLjA4cyBjdWJpYy1iZXppZXIoLjI1LCAuNDYsIC40NSwgLjk0KSkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgYm9yZGVyOiAkYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkcmFkaXVzO1xuICBjb2xvcjogJGNvbG9yO1xuICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbjtcblxuICAmLmZvY3VzLFxuICAmOmZvY3VzLFxuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZC1ob3ZlcjtcbiAgICBib3JkZXItY29sb3I6ICRiYWNrZ3JvdW5kLWhvdmVyO1xuICAgIGNvbG9yOiAkaG92ZXI7XG4gIH1cbn1cbiIsIi8vIEdlbmVyYWwgYmxvZyBpbmRleCBhbmQgc2luZ2xlIHN0eWxlc1xuLyogc3R5bGVsaW50LWRpc2FibGUgbm8tZGVzY2VuZGluZy1zcGVjaWZpY2l0eSAqL1xuLy8gQ2F0ZWdvcnkgbGlzdGluZyBzdHlsZXNcbi5jYXQge1xuICBtYXJnaW4tYm90dG9tOiAuNXJlbTtcbiAgbWFyZ2luLXRvcDogNHJlbTtcblxuICBhIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWNhdGVnb3J5LWJvcmRlcik7XG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXdpZHRoOiAxcHggMXB4IDJweDtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1jYXRlZ29yeS10ZXh0KTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtMTYpO1xuICAgIG1hcmdpbi1ib3R0b206IC41cmVtO1xuICAgIG1hcmdpbi1yaWdodDogLjVlbTtcbiAgICBwYWRkaW5nOiAuMmVtIC42ZW07XG4gICAgdHJhbnNpdGlvbjogYWxsICR0cmFuc2l0aW9uLWR1cmF0aW9uO1xuICB9XG5cbiAgYTpob3ZlcixcbiAgYTpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci10YWctYm9yZGVyLWhvdmVyKTtcbiAgfVxufVxuXG4vLyBCbG9nIHBvc3QgdGFnIHN0eWxlc1xuLnRhZ3Mge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1tYXJnaW4tYmV0d2Vlbi10ZXh0LWVsZW1lbnRzKTtcbiAgbWFyZ2luLXRvcDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICBsaSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cblxuICBhIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLXRhZy1ib3JkZXIpO1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci13aWR0aDogMXB4IDFweCAycHg7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItdGFnLXRleHQpO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0xNCk7XG4gICAgbWFyZ2luLXJpZ2h0OiAuNGVtO1xuICAgIHBhZGRpbmc6IC4yZW0gLjZlbTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgJHRyYW5zaXRpb24tZHVyYXRpb247XG4gIH1cblxuICBhOmhvdmVyLFxuICBhOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLXRhZy1ib3JkZXItaG92ZXIpO1xuICB9XG59XG5cbi8vIE5leHQvUHJldmlvdXMgc2luZ2xlIHBvc3QgbmF2aWdhdGlvblxuLnBvc3QtbmF2aWdhdGlvbiAubmF2LWxpbmtzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG59XG4iLCIvLyBUaGVzZSBzdHlsZXMgYXJlIHJlcXVpcmVkIGJ5IFdvcmRQcmVzcy5vcmcgVGhlbWUgQ2hlY2tcbi8vIFJFUVVJUkVEOiAuc3RpY2t5IGNzcyBjbGFzcyBpcyBuZWVkZWQgaW4geW91ciB0aGVtZSBjc3MuXG4vLyBSRVFVSVJFRDogLmJ5cG9zdGF1dGhvciBjc3MgY2xhc3MgaXMgbmVlZGVkIGluIHlvdXIgdGhlbWUgY3NzLlxuOnJvb3Qge1xuICAtLWNvbG9yLWJvcmRlci1zdGlja3k6ICNkN2U0ZjI7XG4gIC0tY29sb3ItYnlwb3N0YXV0aG9yOiByZ2JhKDQyLCA0NSwgNjIsIC41KTtcbn1cblxuLnN0aWNreSB7XG4gIGJvcmRlcjogMXB4IGRhc2hlZCB2YXIoLS1jb2xvci1ib3JkZXItc3RpY2t5KTtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgcGFkZGluZzogMnJlbTtcbn1cblxuLmNvbW1lbnQtbGlzdCBsaS5ieXBvc3RhdXRob3IsXG4uYnlwb3N0YXV0aG9yIHtcbiAgYm9yZGVyOiAxcHggZGFzaGVkIHZhcigtLWNvbG9yLWJ5cG9zdGF1dGhvcik7XG4gIHBhZGRpbmc6IDJyZW07XG59XG5cbi8vIFdvcmRQcmVzcyBjYXB0aW9uc1xuLy8gUkVRVUlSRUQ6IC53cC1jYXB0aW9uIGNzcyBjbGFzcyBpcyBuZWVkZWQgaW4geW91ciB0aGVtZSBjc3MuXG4vLyBSRVFVSVJFRDogLndwLWNhcHRpb24tdGV4dCBjc3MgY2xhc3MgaXMgbmVlZGVkIGluIHlvdXIgdGhlbWUgY3NzLlxuLndwLWNhcHRpb24ge1xuICBtYXgtd2lkdGg6IDEwMCU7XG5cbiAgaW1nW2NsYXNzKj1cIndwLWltYWdlLVwiXSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gIH1cblxuICAud3AtY2FwdGlvbi10ZXh0IHtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICBwYWRkaW5nOiAxcmVtIDA7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxufVxuIiwiLy8gQmFjayB0byB0b3AgbGlua1xuLy9cbi8vIFRoZSBvbmUgYW5kIG9ubHkgYW5jaG9yIGxpbmsgdGhhdCBicmluZ3MgdXNlciBiYWNrIHRvIHRvcFxuLy8gd2hlbiBoaXR0aW5nIHRoZSByb2NrIGJvdHRvbS5cblxuLnNpdGUtZm9vdGVyIC50b3Age1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblxuICAvLyBNYWtlcyBpdCA1MHg1MFxuICBwYWRkaW5nOiAxNnB4O1xuXG4gIHN2ZyB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZpbGw6IHZhcigtLWNvbG9yLXRvcC1hcnJvdy1kYXJrKTtcbiAgICBoZWlnaHQ6IDE4cHg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgbWFyZ2luOiAwO1xuICAgIG9wYWNpdHk6IC44O1xuICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTtcbiAgICB3aWR0aDogMThweDtcblxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkY29udGFpbmVyLW1vYmlsZSkge1xuICAgICAgaGVpZ2h0OiAxNXB4O1xuICAgICAgd2lkdGg6IDE1cHg7XG4gICAgfVxuICB9XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyxcbiAgJjphY3RpdmUge1xuICAgIG9wYWNpdHk6IDE7XG5cbiAgICBzdmcge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0uNXJlbSk7XG4gICAgfVxuICB9XG59XG5cbi5zaXRlLWZvb3RlciAuYmFjay10by10b3Age1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBib3R0b206IDFyZW07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBtYXJnaW46IDA7XG4gIG9wYWNpdHk6IDA7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgcmlnaHQ6IDFyZW07XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAkdHJhbnNpdGlvbi1kdXJhdGlvbiAwcywgdmlzaWJpbGl0eSAwcyAkdHJhbnNpdGlvbi1kdXJhdGlvbjtcbiAgei1pbmRleDogOTk5OTtcblxuICAvLyBBY2Nlc3NpYmlsaXR5OiBDaGFuZ2UgY29sb3IgYmFzZWQgb24gYmFja2dyb3VuZCBjb2xvciB0aGUgZWxlbWVudCBpcyBvblxuICAmLmhhcy1saWdodC1iZyBzdmcge1xuICAgIGZpbGw6IHZhcigtLWNvbG9yLXRvcC1hcnJvdy1kYXJrKTtcbiAgfVxuXG4gICYuaGFzLWRhcmstYmcgc3ZnIHtcbiAgICBmaWxsOiB2YXIoLS1jb2xvci10b3AtYXJyb3ctbGlnaHQpO1xuICB9XG5cbiAgJi5pcy12aXNpYmxlLFxuICAmLmZhZGUtb3V0IHtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5ICR0cmFuc2l0aW9uLWR1cmF0aW9uIDBzLCB2aXNpYmlsaXR5IDBzIDBzO1xuICB9XG5cbiAgJi5pcy12aXNpYmxlIHsgLy8gVGhlIGJ1dHRvbiBiZWNvbWVzIHZpc2libGVcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgJi5mYWRlLW91dCB7IC8vIElmIHRoZSB1c2VyIGtlZXBzIHNjcm9sbGluZyBkb3duLCB0aGUgYnV0dG9uIGlzIG91dCBvZiBmb2N1cyBhbmQgYmVjb21lcyBsZXNzIHZpc2libGVcbiAgICBvcGFjaXR5OiAxO1xuXG4gICAgJjpmb2N1cyxcbiAgICAmOmhvdmVyIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICB9XG59XG4iLCIvLyBDbGFzc2ljIFdvcmRQcmVzcyBnYWxsZXJpZXNcbi8vIEBzb3VyY2UgaHR0cHM6Ly9naXRodWIuY29tL0F1dG9tYXR0aWMvX3MvYmxvYi81MGNlOTNjN2NkNDc4ODcxYzlhZTc1MDRmMGVmNDc0OGY1ZGU0NDlmL3Nhc3MvbWVkaWEvX2dhbGxlcmllcy5zY3NzXG4uZ2FsbGVyeSB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtZ2FwOiAxLjVlbTtcbiAgbWFyZ2luLWJvdHRvbTogMS41ZW07XG59XG5cbi5nYWxsZXJ5LWl0ZW0ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbkBmb3IgJGkgZnJvbSAyIHRocm91Z2ggOSB7XG4gIC5nYWxsZXJ5LWNvbHVtbnMtI3skaX0ge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KCRpLCAxZnIpO1xuICB9XG59XG5cbi5nYWxsZXJ5LWNhcHRpb24ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbiIsIi8vIFN0eWxpbmcgbGF6eSBsb2FkaW5nIGRpdlxuLy8gQGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL3Zlcmxvay92YW5pbGxhLWxhenlsb2FkI2xhenktYmFja2dyb3VuZC1pbWFnZVxuZGl2Lmxhenkge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGhlaWdodDogMTAwJTtcbiAgbGVmdDogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiAwO1xufVxuXG4vLyBHZW5lcmFsIGNsYXNzIGZvciBhbnkgbGF6eSBsb2FkIGNvbnRhaW5lclxuLmhhcy1sYXp5bG9hZCB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbiIsIi8vIEFsdGVybmF0aXZlIHN0eWxlOiBodHRwczovL2kuaW1ndXIuY29tL0E4Z1V5dTIucG5nXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBhMTF5L2ZvbnQtc2l6ZS1pcy1yZWFkYWJsZSAqL1xuLm5hdmlnYXRpb246bm90KC5wb3N0LW5hdmlnYXRpb24pIC5uYXYtbGlua3Mge1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgZGlzcGxheTogZmxleDtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtaGVhZGluZyk7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICBtYXJnaW4tdG9wOiA0cmVtO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB3aWR0aDogMTAwJTtcblxuICBhIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbn1cbi8qIHN0eWxlbGludC1lbmFibGUgKi9cblxuLnBhZ2UtbnVtYmVycyB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIHZhcigtLWNvbG9yLWJsdWUtY2hhbGspO1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJsdWUtY2hhbGspO1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ibHVlLWNoYWxrKTtcbiAgYm9yZGVyLXRvcDogMnB4IHNvbGlkIHZhcigtLWNvbG9yLWJsdWUtY2hhbGspO1xuICBjb2xvcjogdmFyKC0tY29sb3ItcGFnaW5hdGlvbi10ZXh0KTtcbiAgZGlzcGxheTogZmxleDtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW1lZGl1bSk7XG4gIGhlaWdodDogMzVweDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIHRyYW5zaXRpb246IGFsbCAkdHJhbnNpdGlvbi1kdXJhdGlvbjtcbiAgd2lkdGg6IDM1cHg7XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDYwMHB4KSB7XG4gICAgaGVpZ2h0OiAyNnB4O1xuICAgIHdpZHRoOiAyNnB4O1xuICB9XG5cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiA0cHg7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogNHB4O1xuICB9XG5cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogNHB4O1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDRweDtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgfVxufVxuXG5hLnBhZ2UtbnVtYmVyczpob3ZlcixcbmEucGFnZS1udW1iZXJzOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItcGFnaW5hdGlvbi1iYWNrZ3JvdW5kLWhvdmVyKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1wYWdpbmF0aW9uLWJvcmRlci1ob3Zlcik7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1wYWdpbmF0aW9uLXRleHQtaG92ZXIpO1xufVxuXG4ucGFnZS1udW1iZXJzLmN1cnJlbnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1wYWdpbmF0aW9uLWJhY2tncm91bmQtY3VycmVudCk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItcGFnaW5hdGlvbi1ib3JkZXItY3VycmVudCk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1wYWdpbmF0aW9uLXRleHQtY3VycmVudCk7XG59XG5cbi8vIFJlbW92ZSB0aGlzIGlmIHlvdSBhcmUgdXNpbmcgdmVyc2lvbiB3aXRoIG5leHQvcHJldlxuLnBhZ2UtbnVtYmVycy5uZXh0LFxuLnBhZ2UtbnVtYmVycy5wcmV2IHtcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICB3aWR0aDogYXV0bztcblxuICBAbWVkaWEgKG1heC13aWR0aDogNjAwcHgpIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgfVxufVxuIiwiLy8gR3Jhdml0eSBmb3Jtc1xuLy8gUGxlYXNlIGRpc2FibGUgQ1NTIGluIC9hZG1pbi5waHA/cGFnZT1nZl9zZXR0aW5nc1xuXG4vLyBXQ0FHIDIuMCBlcnJvcnNcbi8qIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLWNsYXNzLXBhdHRlcm4gKi9cbmRpdi52YWxpZGF0aW9uX2Vycm9yIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZXJyb3IpO1xuICBjb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0xNyk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgcGFkZGluZzogMnJlbTtcblxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICB9XG59XG5cbmJvZHkgKlthcmlhLWludmFsaWQ9XCJ0cnVlXCJdIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1lcnJvcik7XG59XG5cbi52YWxpZGF0aW9uX21lc3NhZ2Uge1xuICBjb2xvcjogdmFyKC0tY29sb3ItZXJyb3IpO1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0xNik7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbn1cblxuLnZhbGlkYXRpb25fbGlzdCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBwYWRkaW5nOiAwO1xuXG4gIGEge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1lcnJvcik7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgbGkge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1lcnJvcik7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xuICB9XG59XG5cbi8vIEdyYXZpdHkgZm9ybXMgbWluaW1hbCBkZWZhdWx0IHN0eWxlc1xuLmdmb3JtX2JvZHkge1xuICAvLyBSZXF1aXJlZCBzdGFyIGNvbG9yXG4gIC5nZmllbGRfcmVxdWlyZWQge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1tYWluKTtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0yMik7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogM3B4O1xuICB9XG5cbiAgLy8gSGlkZSBob25leXBvdCBmaWVsZFxuICAuZ2Zvcm1fdmFsaWRhdGlvbl9jb250YWluZXIge1xuICAgIEBleHRlbmQgLnNjcmVlbi1yZWFkZXItdGV4dDtcbiAgfVxuXG4gIHVsIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgLmdmb3JtX2ZpZWxkcyBsaSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICB9XG5cbiAgLmdmaWVsZF9yYWRpbyBsaSxcbiAgLmdmaWVsZF9jaGVja2JveCBsaSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG5cbiAgLmdmaWVsZHNldCBsaSB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIG1hcmdpbjogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC5nZm9ybV9maWVsZHMgbGk6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gIC5nZmllbGRfbGFiZWwsXG4gIC5naW5wdXRfY29udGFpbmVyIGxhYmVsIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgfVxuXG4gIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbiAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gIH1cblxuICAuZ2ZpZWxkX3JhZGlvIGxpIGxhYmVsLFxuICAuZ2ZpZWxkX2NoZWNrYm94IGxpIGxhYmVsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cblxuICBpbnB1dDpub3QoW3R5cGU9XCJyYWRpb1wiXSk6bm90KFt0eXBlPVwiY2hlY2tib3hcIl0pLFxuICB0ZXh0YXJlYSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICBAbWVkaWEgKG1pbi13aWR0aDogJGNvbnRhaW5lci1tb2JpbGUpIHtcbiAgICAvLyBDb21wbGV4IGZpZWxkc1xuICAgIC5naW5wdXRfZnVsbCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIC5naW5wdXRfY29tcGxleCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0uNXJlbTtcbiAgICAgIG1hcmdpbi1yaWdodDogLS41cmVtO1xuXG4gICAgICBzcGFuIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC41cmVtO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC41cmVtO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5naW5wdXRfbGVmdCxcbiAgICAuZ2lucHV0X3JpZ2h0IHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gMXJlbSk7XG5cbiAgICAgID4gbGFiZWwsXG4gICAgICBpbnB1dCB7XG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTE2KTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4vKiBzdHlsZWxpbnQtZW5hYmxlIHNlbGVjdG9yLWNsYXNzLXBhdHRlcm4gKi9cbiIsIi8vIFNlYXJjaFxuXG4uYmxvY2stc2VhcmNoLFxuLmJsb2NrLXNlYXJjaC1yZXN1bHRzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xufVxuXG4uYmxvY2stc2VhcmNoIGZvcm0ge1xuICBkaXNwbGF5OiBncmlkO1xuICAvKiBhdXRvcHJlZml4ZXI6IG9mZiAqL1xuICBncmlkLWdhcDogMXJlbTtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiA5ZnIgMWZyO1xuXG4gIGlucHV0LFxuICBsYWJlbCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuLmJsb2NrLXNlYXJjaC1yZXN1bHRzIHtcbiAgPiAuY29udGFpbmVyIHtcbiAgICBwYWRkaW5nLXRvcDogMDtcblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkY29udGFpbmVyLWlwYWQtbGFuZHNjYXBlKSB7XG4gICAgICAvLyBDaGFuZ2UgdGhpcyB0byAyIGlmIHlvdSB1c2Ugb3RoZXIgcG9zdCB0eXBlIHJlc3VsdHNcbiAgICAgIEBpbmNsdWRlIGdyaWQoMSk7XG4gICAgfVxuICB9XG5cbiAgLnJvdy1yZXN1bHQge1xuICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCB2YXIoLS1jb2xvci1ib3JkZXItZm9ybXMpO1xuICAgIHBhZGRpbmc6IDJyZW0gMDtcblxuICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCB2YXIoLS1jb2xvci1ib3JkZXItZm9ybXMpO1xuICAgIH1cbiAgfVxuXG4gIGgzIHtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oNCk7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgfVxuXG4gIHAge1xuICAgIG1hcmdpbi10b3A6IDFyZW07XG4gIH1cblxuICAudGFncyBhIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1iYWNrZ3JvdW5kLXRhZyk7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLW1haW4pO1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLW1haW4pO1xuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJhY2tncm91bmQtdGFnKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIENTUyBHcmlkIG1peGluIHdpdGggZmxleGJveCBmYWxsYmFjayBmb3IgSUUgYW5kIEVkZ2VcbkBtaXhpbiBncmlkKCRjb2x1bW5zLCAkbWF4X3dpZHRoOiAxZnIsICRtaW5fd2lkdGg6IDAsICRtaW5faGVpZ2h0OiAwLCAkbWF4X2hlaWdodDogYXV0bywgJGd1dHRlcl94OiAxNnB4LCAkZ3V0dGVyX3k6IDE2cHgpIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC1hdXRvLXJvd3M6IG1pbm1heCgkbWluX2hlaWdodCwgJG1heF9oZWlnaHQpO1xuICBncmlkLWdhcDogJGd1dHRlcl94O1xuICBncmlkLXJvdy1nYXA6ICRndXR0ZXJfeTtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoJGNvbHVtbnMsIG1pbm1heCgkbWluX3dpZHRoLCAkbWF4X3dpZHRoKSk7XG5cbiAgLy8gRm9yIGJyb3dzZXIgdmVyc2lvbnMgdGhhdCBkbyBub3Qgc3VwcG9ydCBDU1MgZ3JpZFxuICBAc3VwcG9ydHMgbm90IChkaXNwbGF5OiBncmlkKSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgID4gZGl2IHtcbiAgICAgICRncmlkX3dpZHRoOiAxMDAlIC8gJGNvbHVtbnM7XG4gICAgICBtYXJnaW4tYm90dG9tOiAkZ3V0dGVyX3k7XG4gICAgICBtYXJnaW4tcmlnaHQ6ICRndXR0ZXJfeDtcbiAgICAgIHdpZHRoOiBjYWxjKCN7JGdyaWRfd2lkdGh9IC0gI3skZ3V0dGVyX3h9KTtcblxuICAgICAgJjpudGgtY2hpbGQoI3skY29sdW1uc31uKyN7JGNvbHVtbnN9KSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBJbnRlcm5ldCBFeHBsb3JlclxuICBAbWVkaWEgYWxsIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICA+IGRpdiB7XG4gICAgICAkZ3JpZF93aWR0aDogMTAwJSAvICRjb2x1bW5zO1xuICAgICAgbWFyZ2luLWJvdHRvbTogJGd1dHRlcl95O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAkZ3V0dGVyX3g7XG4gICAgICB3aWR0aDogY2FsYygjeyRncmlkX3dpZHRofSAtICN7JGd1dHRlcl94fSk7XG5cbiAgICAgICY6bnRoLWNoaWxkKCN7JGNvbHVtbnN9bisjeyRjb2x1bW5zfSkge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gRWRnZVxuICBAc3VwcG9ydHMgKC1tcy1pbWUtYWxpZ246IGF1dG8pIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgPiBkaXYge1xuICAgICAgJGdyaWRfd2lkdGg6IDEwMCUgLyAkY29sdW1ucztcbiAgICAgIG1hcmdpbi1ib3R0b206ICRndXR0ZXJfeTtcbiAgICAgIG1hcmdpbi1yaWdodDogJGd1dHRlcl94O1xuICAgICAgd2lkdGg6IGNhbGMoI3skZ3JpZF93aWR0aH0gLSAjeyRndXR0ZXJfeH0pO1xuXG4gICAgICAmOm50aC1jaGlsZCgjeyRjb2x1bW5zfW4rI3skY29sdW1uc30pIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRXJyb3IgNDA0IHRpdGxlXG4uYmxvY2stZXJyb3ItNDA0IHtcbiAgLmNvbnRhaW5lciB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRjb250YWluZXItbW9iaWxlKSB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTAlO1xuICAgICAgcGFkZGluZy10b3A6IDEwJTtcbiAgICB9XG4gIH1cblxuICBoMSB7XG4gICAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1mb250KDQycHgsIDIwMHB4KTtcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICB9XG59XG4iLCIvLyBDb21tZW50c1xuLy9cbi8vIFdvcmRQcmVzcyBidWlsdC1pbiBjb21tZW50cyB3aXRoIGNvbW1lbnRfZm9ybSgpLlxuLy8gQ3VzdG9tIGNvbW1lbnQgdGVtcGxhdGUgY2FuIGJlIGZvdW5kIGluIGluYy9jb21tZW50cy5waHBcbi8qIHN0eWxlbGludC1kaXNhYmxlIG5vLWRlc2NlbmRpbmctc3BlY2lmaWNpdHkgKi9cbi5jb21tZW50cy1hcmVhIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbWFyZ2luLXRvcDogNTBweDtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi5jb21tZW50LWxpc3Qge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG5cbiAgLy8gTWFrZSBzdXJlIGNoaWxkcmVuIGRvbid0IGhhdmUgbGlzdCBidWxsZXRzXG4gIC5jaGlsZHJlbiB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgfVxuXG4gIGxpIHtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0xNCk7XG4gICAgbWFyZ2luLWJvdHRvbTogNzBweDtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICBwIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItY29tbWVudC10ZXh0KTtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0xNCk7XG4gIH1cblxuICAuYXZhdGFyIHtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG5cbiAgLmNvbW1lbnQtYXV0aG9yIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItY29tbWVudC1hdXRob3ItdGV4dCk7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaDQpO1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgYSxcbiAgLmNvbW1lbnRzLWxpbmsgYSB7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItbGluay1jb21tZW50KTtcbiAgfVxuXG4gIC5jb21tZW50LWF1dGhvciBhIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItcGFyYWdyYXBoKTtcbiAgfVxuXG4gIC5jb21tZW50LXRpbWUge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTE0KTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgIGEge1xuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWxpbmstY29tbWVudC10aW1lLWFuY2hvcik7XG4gICAgfVxuXG4gICAgJjpmb2N1cyxcbiAgICAmOmhvdmVyIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICB9XG5cbiAgLmNvbW1lbnQtdGltZSBzdmcge1xuICAgIGZpbGw6IHZhcigtLWNvbG9yLWxpbmstY29tbWVudC10aW1lLWFuY2hvcik7XG4gICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMnB4O1xuICB9XG59XG5cbi5jb21tZW50cy1saW5rIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTE0KTtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG5cbiAgYSB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWxpbmstY29tbWVudCk7XG4gIH1cblxuICAmOmhvdmVyLFxuICAmOmZvY3VzLFxuICBhOmhvdmVyLFxuICBhOmZvY3VzIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItYmxhY2spO1xuICB9XG5cbiAgc3ZnIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDdweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAtMXB4O1xuICB9XG59XG5cbi8vIENvbW1lbnQgZm9ybSBncmlkXG4uY29tbWVudC1mb3JtIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRjb250YWluZXItbW9iaWxlKSB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLWdhcDogMWVtO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcblxuICAgIC8qIGF1dG9wcmVmaXhlcjogb2ZmICovXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgICAvLyBNYWtlIHRoZXNlIGZ1bGwgd2lkdGhcbiAgICAuY29tbWVudC1ub3RlcyxcbiAgICAuY29tbWVudC1mb3JtLWNvbW1lbnQsXG4gICAgLmZvcm0tc3VibWl0IHtcbiAgICAgIGdyaWQtY29sdW1uOiAxIC8gc3BhbiAyO1xuICAgIH1cbiAgfVxufVxuXG4uY29tbWVudC1yZXNwb25kIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG5cbiAgaW5wdXQge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkY29udGFpbmVyLW1vYmlsZSkge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgLmNvbW1lbnQtZm9ybS1hdXRob3Ige1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgbWFyZ2luLXRvcDogMDtcblxuICAgIGlucHV0IHtcbiAgICAgIGJvcmRlci13aWR0aDogMXB4O1xuICAgICAgcGFkZGluZzogMTVweDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxuXG4gIC5jb21tZW50LWZvcm0tZW1haWwge1xuICAgIGNsZWFyOiByaWdodDtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tdG9wOiAwO1xuXG4gICAgaW5wdXQge1xuICAgICAgYm9yZGVyLXdpZHRoOiAxcHg7XG4gICAgICBwYWRkaW5nOiAxNXB4O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgLmNvbW1lbnQtZm9ybS11cmwge1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICBpbnB1dCB7XG4gICAgICBib3JkZXItd2lkdGg6IDFweDtcbiAgICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cblxuICAuZm9ybS1zdWJtaXQge1xuICAgIGNsZWFyOiBib3RoO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxuXG4gIC5jb21tZW50LWZvcm0tY29tbWVudCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgfVxuXG4gIHRleHRhcmVhIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuLyogc3R5bGVsaW50LWVuYWJsZSBuby1kZXNjZW5kaW5nLXNwZWNpZmljaXR5ICovXG4iLCIvLyBHdXRlbmJlcmcgY29udGVudFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlcixcbi5ndXRlbmJlcmctY29udGVudCB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgcGFkZGluZy1ib3R0b206IHZhcigtLXBhZGRpbmctYmxvY2spO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHBhZGRpbmctdG9wOiB2YXIoLS1wYWRkaW5nLWJsb2NrKTtcbn1cblxuLy8gR3V0ZW5iZXJnIGNvcmUgbWFnaWNcbi5ndXRlbmJlcmctY29udGVudCA+ICoge1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtcGFyYWdyYXBocy1ibG9nKTtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWF4LXdpZHRoOiAkd2lkdGgtbWF4LWFydGljbGU7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6ICR3aWR0aC1tYXgtYXJ0aWNsZSArIDQwcHgpIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSBjYWxjKHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpICogMikpO1xuXG4gICAgJi5hbGlnbmZ1bGwge1xuICAgICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIGNhbGModmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCkgKiAyKSk7XG4gICAgfVxuICB9XG59XG4iLCIvLyBDb3JlL2Jsb2NrcXVvdGUgYmxvY2tcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIsXG4uZ3V0ZW5iZXJnLWNvbnRlbnQge1xuICBibG9ja3F1b3RlICsgY2l0ZSxcbiAgYmxvY2txdW90ZSArIHAgPiBjaXRlIHtcbiAgICBtYXJnaW4tYm90dG9tOiA0cmVtO1xuICB9XG5cbiAgPiBibG9ja3F1b3RlLFxuICA+IGJsb2NrcXVvdGUud3AtYmxvY2stcXVvdGUge1xuICAgIGJvcmRlci1sZWZ0OiAycHggc29saWQgdmFyKC0tY29sb3ItYmxvY2txdW90ZSk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXBhcmFncmFwaHMtYmxvZyk7XG4gICAgbWFyZ2luLWJvdHRvbTogNHJlbTtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLXRvcDogNHJlbTtcbiAgICBwYWRkaW5nOiAzLjVyZW0gNnJlbTtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMTJyZW0pO1xuXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICR3aWR0aC1tYXgtYXJ0aWNsZSArIDQwcHgpIHtcbiAgICAgIHBhZGRpbmc6IDMuNXJlbSAycmVtO1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDRyZW0pO1xuICAgIH1cblxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkY29udGFpbmVyLW1vYmlsZSkge1xuICAgICAgcGFkZGluZzogNHJlbSA0cmVtIDRyZW0gMnJlbTtcbiAgICB9XG5cbiAgICA+IHAge1xuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJsb2NrcXVvdGUpO1xuICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXBhcmFncmFwaHMtYmxvZyk7XG4gICAgfVxuICB9XG5cbiAgLndwLWJsb2NrLWJsb2NrcXVvdGUuYWxpZ253aWRlLFxuICAud3AtYmxvY2stYmxvY2txdW90ZS5hbGlnbmZ1bGwge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIGNhbGModmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCkgKiAyKSk7XG4gIH1cblxuICAud3AtYmxvY2stYmxvY2txdW90ZSBibG9ja3F1b3RlIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgfVxufVxuIiwiLy8gUHJlZm9ybWF0dGVkIHRleHQuXG5wcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1iYWNrZ3JvdW5kLWNvZGUtYmxvY2spO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1iYWNrZ3JvdW5kLWNvZGUtYmxvY2spO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1jb2RlLXRleHQpO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtbW9ub3NwYWNlKTtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtMTYpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtcGFyYWdyYXBocy1ibG9nKTtcbiAgbWFyZ2luOiAzcmVtIDA7XG4gIG92ZXJmbG93OiBhdXRvO1xuICBwYWRkaW5nOiAxNXB4IDE2cHggMTRweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aGl0ZS1zcGFjZTogcHJlO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG5cbiAgY29kZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1jb2RlLXRleHQpO1xuICB9XG59XG5cbi8vIENvcmUvY29kZSBibG9ja1xuLmVkaXRvci1zdHlsZXMtd3JhcHBlcixcbi5ndXRlbmJlcmctY29udGVudCB7XG4gIC53cC1ibG9jay1jb2RlIHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHdpZHRoLWdyaWQtYmFzZSArIDQwcHgpIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gY2FsYyh2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKSAqIDQpKTtcbiAgICB9XG4gIH1cblxuICBwcmUge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gIH1cbn1cbiIsIi8vIENvcmUvY29sdW1ucyBibG9ja1xuLmVkaXRvci1zdHlsZXMtd3JhcHBlcixcbi5ndXRlbmJlcmctY29udGVudCB7XG4gIC53cC1ibG9jay1jb2x1bW5zLmFsaWduZnVsbCB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgfVxuXG4gIC8vIExvb3BzIHRvIGVudW1lcmF0ZSB0aGUgY2xhc3NlcyBmb3IgY29sdW1ucy5cbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCA5IHtcbiAgICAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLSN7JGl9LmFsaWduZnVsbCB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICAgICAgcGFkZGluZy1yaWdodDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gY2FsYyh2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKSAqIDIpKTtcbiAgICB9XG5cbiAgICAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLSN7JGl9IHtcbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5MDBweCkge1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBncmlkLWdhcDogMWVtO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gY2FsYyh2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKSAqIDIpKTtcblxuICAgICAgICAud3AtYmxvY2stY29sdW1uIHtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICRjb250YWluZXItbW9iaWxlKSB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDEsIDFmcik7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBDb3JlL2NvdmVyIGJsb2NrXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyLFxuLmd1dGVuYmVyZy1jb250ZW50IHtcbiAgLndwLWJsb2NrLWNvdmVyX19pbm5lci1jb250YWluZXIge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG5cbiAgICBwIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1jb3JlLWhlYWRpbmcpO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gQ29yZS9lbWJlZCBibG9ja1xuLmVkaXRvci1zdHlsZXMtd3JhcHBlcixcbi5ndXRlbmJlcmctY29udGVudCB7XG4gIC53cC1ibG9jay1lbWJlZCBpZnJhbWUsXG4gIC53cC1ibG9jay1lbWJlZCB2aWRlbyB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6ICR3aWR0aC1ncmlkLWJhc2UgKyA0MHB4KSB7XG4gICAgLndwLWJsb2NrLWVtYmVkLmFsaWdud2lkZSxcbiAgICAud3AtYmxvY2stZW1iZWQuYWxpZ25mdWxsIHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSBjYWxjKHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpICogMikpO1xuICAgIH1cbiAgfVxuXG4gIC53cC1ibG9jay1lbWJlZC5hbGlnbmZ1bGwge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbiIsIi8vIENvcmUvZ2FsbGVyeSBibG9ja1xuLmVkaXRvci1zdHlsZXMtd3JhcHBlcixcbi5ndXRlbmJlcmctY29udGVudCB7XG4gIC5pcy1ncmlkLFxuICAud3AtYmxvY2stZ2FsbGVyeSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgIGZpZ2NhcHRpb24ge1xuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTE2KTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjU1O1xuICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tbWFyZ2luLWJldHdlZW4tdGV4dC1lbGVtZW50cyk7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAmLmFsaWdud2lkZSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICAgICAgcGFkZGluZy1yaWdodDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gICAgfVxuXG4gICAgJi5hbGlnbmZ1bGwge1xuICAgICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIGNhbGModmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCkgKiAyKSk7XG4gICAgfVxuICB9XG5cbiAgLmlzLWdyaWQsXG4gIC5ibG9ja3MtZ2FsbGVyeS1ncmlkIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIHBhZGRpbmctbGVmdDogMDtcblxuICAgIC5ibG9ja3MtZ2FsbGVyeS1pdGVtIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxuXG4gIC8vIExvb3BzIHRvIGVudW1lcmF0ZSB0aGUgY2xhc3NlcyBmb3IgY29sdW1ucy5cbiAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCA5IHtcbiAgICAuaXMtZ3JpZC5jb2x1bW5zLSN7JGl9LFxuICAgIC5jb2x1bW5zLSN7JGl9IC5ibG9ja3MtZ2FsbGVyeS1ncmlkIHtcbiAgICAgIGdyaWQtZ2FwOiAzcmVtO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoJGksIDFmcik7XG5cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMDAwcHgpIHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcbiAgICAgIH1cblxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDY3MHB4KSB7XG4gICAgICAgIGdyaWQtZ2FwOiAycmVtO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5ibG9ja3MtZ2FsbGVyeS1pdGVtID4gZmlndXJlIGZpZ2NhcHRpb24ge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cbiIsIi8vIENvcmUvc2VwYXJhdG9yIGJsb2NrXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyLFxuLmd1dGVuYmVyZy1jb250ZW50IHtcbiAgaHIsXG4gIC53cC1ibG9jay1zZXBhcmF0b3Ige1xuICAgIG1hcmdpbi1ib3R0b206IGNhbGModmFyKC0tbWFyZ2luLWJldHdlZW4tcGFyYWdyYXBocykgKiAyKTtcbiAgICBtYXJnaW4tdG9wOiBjYWxjKHZhcigtLW1hcmdpbi1iZXR3ZWVuLXBhcmFncmFwaHMpICogMik7XG4gIH1cblxuICAud3AtYmxvY2stc2VwYXJhdG9yLmlzLXN0eWxlLWRlZmF1bHQge1xuICAgIG1heC13aWR0aDogJHdpZHRoLW1heC1hcnRpY2xlO1xuICB9XG59XG4iLCIvLyBDb3JlL2hlYWRpbmcgYmxvY2tcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIsXG4uZ3V0ZW5iZXJnLWNvbnRlbnQge1xuICAvLyBUaXRsZSBsaW5lLWhlaWdodHNcbiAgaDEsXG4gIGgyLFxuICBoMyxcbiAgaDQsXG4gIGg1IHtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtY29yZS1oZWFkaW5nKTtcbiAgfVxuXG4gIC8vIERvbid0IGFkZCBleHRyYSBtYXJnaW4gb24gdG9wIG9mIGZpcnN0IHRpdGxlXG4gIGgxLFxuICBoMixcbiAgaDMsXG4gIGg0LFxuICBoNSxcbiAgaDYge1xuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIENvcmUvaGVhZGluZyBibG9ja1xuLmVkaXRvci1zdHlsZXMtd3JhcHBlcixcbi5ndXRlbmJlcmctY29udGVudCB7XG4gIC8vIEltYWdlIGJsb2NrXG4gIC53cC1ibG9jay1pbWFnZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tbWFyZ2luLXdwLWJsb2NrLWltYWdlKTtcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS1tYXJnaW4td3AtYmxvY2staW1hZ2UpO1xuXG4gICAgJi5hbGlnbmZ1bGwge1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICB9XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHdpZHRoLWdyaWQtYmFzZSArIDQwcHgpIHtcbiAgICAgICYuYWxpZ253aWRlIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkd2lkdGgtZ3JpZC1iYXNlICsgNDBweCkge1xuICAgICAgJi5hbGlnbndpZGUge1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gY2FsYyh2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKSAqIDIpKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuYWxpZ253aWRlIGltZyxcbiAgICAuYWxpZ25mdWxsIGltZyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAvLyBObyBib3JkZXIgcmFkaXVzIG9uIGZ1bGwgd2lkdGggaW1hZ2UgYW5kIHdpZGUgb24gc21hbGwgc2NyZWVuc1xuICAgIC5hbGlnbmZ1bGwgaW1nIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgfVxuXG4gICAgPiBmaWd1cmUge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogYXV0bztcblxuICAgICAgJi5hbGlnbmxlZnQsXG4gICAgICAmLmFsaWducmlnaHQge1xuICAgICAgICAvLyBIYWNrIGZvciBrZWVwaW5nIGZpZ2NhcHRpb24gZnJvbSBmbG93aW5nIG92ZXIgZmxvYXRlZCBpbWFnZSwgdGhpcyB2YXJpYWJsZSBpcyBzZXQgaW5saW5lIHRvIHRoZSBjb3JyZXNwb25kaW5nIGZpZ3VyZSB3aXRoIGd1dGVuYmVyZy1oZWxwZXJzLmpzXG4gICAgICAgIC8qIHN0eWxlbGludC1kaXNhYmxlIGNzc3Rvb2xzL3ZhbHVlLW5vLXVua25vd24tY3VzdG9tLXByb3BlcnRpZXMgKi9cbiAgICAgICAgbWF4LXdpZHRoOiB2YXIoLS13aWR0aC1jaGlsZC1pbWcpO1xuICAgICAgICAvKiBzdHlsZWxpbnQtZW5hYmxlICovXG4gICAgICB9XG4gICAgfVxuXG4gICAgZmlnY2FwdGlvbiB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgIH1cblxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkY29udGFpbmVyLW1vYmlsZSkge1xuICAgICAgJi5hbGlnbmxlZnQgaW1nLFxuICAgICAgJi5hbGlnbnJpZ2h0IGltZyxcbiAgICAgICYuYWxpZ25jZW50ZXIgaW1nIHtcbiAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmFsaWduY2VudGVyIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG5cbiAgICAuYWxpZ25jZW50ZXIgaW1nIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gTGlzdCBibG9ja1xuLmVkaXRvci1zdHlsZXMtd3JhcHBlcixcbi5ndXRlbmJlcmctY29udGVudCB7XG4gIC53cC1ibG9jay1jYXRlZ29yaWVzLWxpc3QsXG4gIG9sOm5vdChbY2xhc3NdKSxcbiAgdWw6bm90KFtjbGFzc10pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IGNhbGMoMnJlbSArIHZhcigtLW1hcmdpbi1iZXR3ZWVuLXBhcmFncmFwaHMpKTtcbiAgfVxufVxuIiwiLy8gQ29yZS9wYXJhZ3JhcGggYmxvY2tcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIsXG4uZ3V0ZW5iZXJnLWNvbnRlbnQge1xuICBwIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItcGFyYWdyYXBoKTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtcGFyYWdyYXBocy1ibG9nKTtcbiAgfVxuXG4gIC5oYXMtbGFyZ2VyLWZvbnQtc2l6ZSxcbiAgLmhhcy1sYXJnZS1mb250LXNpemUge1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1oZWFkaW5ncyk7XG4gIH1cblxuICAuaGFzLWxhcmdlLWZvbnQtc2l6ZSB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRjb250YWluZXItbW9iaWxlKSB7XG4gICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0xOCk7XG4gICAgfVxuICB9XG5cbiAgLmhhcy1sYXJnZXItZm9udC1zaXplIHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJGNvbnRhaW5lci1tb2JpbGUpIHtcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTIyKTtcbiAgICB9XG4gIH1cblxuICBAbWVkaWEgKG1heC13aWR0aDogJHdpZHRoLWdyaWQtYmFzZSArIDQwcHgpIHtcbiAgICAuaGFzLWJhY2tncm91bmQge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIGNhbGMoMi4zNzVlbSAqIDIpKTtcbiAgICB9XG4gIH1cbn1cbiIsIi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIsXG4uZ3V0ZW5iZXJnLWNvbnRlbnQge1xuICAud3AtYmxvY2stcHJlZm9ybWF0dGVkIHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHdpZHRoLWdyaWQtYmFzZSArIDQwcHgpIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gY2FsYyh2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKSAqIDQpKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIENvcmUvcHVsbHF1b3RlIGJsb2NrXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyLFxuLmd1dGVuYmVyZy1jb250ZW50IHtcbiAgLndwLWJsb2NrLXB1bGxxdW90ZS5hbGlnbndpZGUsXG4gIC53cC1ibG9jay1wdWxscXVvdGUuYWxpZ25mdWxsIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDtcblxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkd2lkdGgtZ3JpZC1iYXNlICsgNDBweCkge1xuICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSBjYWxjKHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpICogMikpO1xuICAgIH1cbiAgfVxuXG4gIC53cC1ibG9jay1wdWxscXVvdGUuYWxpZ25mdWxsIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gY2FsYyh2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKSAqIDIpKTtcbiAgfVxufVxuIiwiLyogc3R5bGVsaW50LWRpc2FibGUgbm8tZGVzY2VuZGluZy1zcGVjaWZpY2l0eSAqL1xuLy8gQ29yZS90YWJsZSBibG9ja1xuLy8gVGFibGUgaGVhZGluZyBjZWxsc1xudGgge1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXNjcm9waW9uKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG50ZCB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1ibGFjayk7XG59XG5cbnRkLFxudGgsXG4ud3AtYmxvY2stdGFibGUgdGQsXG4ud3AtYmxvY2stdGFibGUgdGgge1xuICBib3JkZXI6IDA7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXBhcmFncmFwaCk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTE0KTtcbiAgaGVpZ2h0OiAycmVtO1xuICBwYWRkaW5nOiAuNnJlbSAxLjVyZW07XG59XG5cbnRyOm50aC1jaGlsZChldmVuKSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJhY2tncm91bmQtdGFibGUtY2VsbC1ldmVuKTtcbn1cblxudHI6bnRoLWNoaWxkKG9kZCkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1iYWNrZ3JvdW5kLXRhYmxlLWNlbGwtb2RkKTtcbn1cblxudGhlYWQsXG4ud3AtYmxvY2stdGFibGUgdGhlYWQge1xuICBib3JkZXI6IDA7XG5cbiAgdGg6Zmlyc3QtY2hpbGQge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDhweDtcbiAgfVxuXG4gIHRoOmxhc3QtY2hpbGQge1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiA4cHg7XG4gIH1cbn1cblxuLy8gRGVmYXVsdHNcbnRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgYm9yZGVyLXNwYWNpbmc6IDA7XG59XG5cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIsXG4uZ3V0ZW5iZXJnLWNvbnRlbnQge1xuICAud3AtYmxvY2stdGFibGUuYWxpZ25mdWxsIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gY2FsYyh2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKSAqIDIpKTtcbiAgfVxuXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkd2lkdGgtZ3JpZC1iYXNlICsgNDBweCkge1xuICAgIC53cC1ibG9jay10YWJsZS5hbGlnbndpZGUge1xuICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSBjYWxjKHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpICogMikpO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gQ29yZS90ZXh0LWNvbHVtbnMgYmxvY2tcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIsXG4uZ3V0ZW5iZXJnLWNvbnRlbnQge1xuICAud3AtYmxvY2stdGV4dC1jb2x1bW5zLmFsaWduZnVsbCB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgfVxuXG4gIC8vIExvb3BzIHRvIGVudW1lcmF0ZSB0aGUgY2xhc3NlcyBmb3IgY29sdW1ucy5cbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCA5IHtcbiAgICAud3AtYmxvY2stdGV4dC1jb2x1bW5zLmNvbHVtbnMtI3skaX0uYWxpZ25mdWxsIHtcbiAgICAgIHBhZGRpbmctbGVmdDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSBjYWxjKHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpICogMikpO1xuICAgIH1cblxuICAgIC53cC1ibG9jay10ZXh0LWNvbHVtbnMuY29sdW1ucy0jeyRpfSB7XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogOTAwcHgpIHtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgZ3JpZC1nYXA6IDFlbTtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIGNhbGModmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCkgKiAyKSk7XG5cbiAgICAgICAgLndwLWJsb2NrLWNvbHVtbiB7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkY29udGFpbmVyLW1vYmlsZSkge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgxLCAxZnIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLmVkaXRvci1zdHlsZXMtd3JhcHBlcixcbi5ndXRlbmJlcmctY29udGVudCB7XG4gIC53cC1ibG9jay12ZXJzZSB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICR3aWR0aC1ncmlkLWJhc2UgKyA0MHB4KSB7XG4gICAgICBtYXJnaW4tbGVmdDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIGNhbGModmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCkgKiA0KSk7XG4gICAgfVxuICB9XG59XG4iLCIvLyBDb3JlL3ZpZGVvIGJsb2NrXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyLFxuLmd1dGVuYmVyZy1jb250ZW50IHtcbiAgLndwLWJsb2NrLXZpZGVvIHZpZGVvIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICBAbWVkaWEgKG1heC13aWR0aDogJHdpZHRoLWdyaWQtYmFzZSArIDQwcHgpIHtcbiAgICAud3AtYmxvY2stdmlkZW8uYWxpZ253aWRlLFxuICAgIC53cC1ibG9jay12aWRlby5hbGlnbmZ1bGwge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIGNhbGModmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCkgKiAyKSk7XG4gICAgfVxuICB9XG5cbiAgLndwLWJsb2NrLXZpZGVvLmFsaWduZnVsbCB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuIiwiLy8gQm94ZWQgYmxvY2sgc3R5bGVcbi53cC1ibG9jay5pcy1zdHlsZS1ib3hlZCxcbi5pcy1zdHlsZS1ib3hlZCB7XG4gIGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLWNvbG9yLXBhcmFncmFwaCk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1wYXJhZ3JhcGgpO1xuICBmb250LXNpemU6IDE3cHg7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW1lZGl1bSk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1wYXJhZ3JhcGhzLWJsb2cpO1xuICBwYWRkaW5nOiAycmVtO1xuICB3aWR0aDogY2FsYygxMDAlIC0gNHJlbSk7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAkd2lkdGgtbWF4LWFydGljbGUgKyA0MHB4KSB7XG4gIC5ndXRlbmJlcmctY29udGVudCAuaXMtc3R5bGUtYm94ZWQge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDJyZW0sIDApO1xuICB9XG59XG4iLCIud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgQGluY2x1ZGUgYnV0dG9uKCk7XG59XG4iLCIud3AtYmxvY2stZmlsZSAud3AtYmxvY2stZmlsZV9fYnV0dG9uIHtcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUtc21hbGwoKTtcbiAgZm9udC1zaXplOiAuOGVtO1xuICBwYWRkaW5nOiAuM2VtIC44ZW07XG59XG4iLCIvLyBBbGlnbm1lbnRzXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyLFxuLmd1dGVuYmVyZy1jb250ZW50IHtcbiAgLmFsaWdubGVmdCA+ICoge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG5cbiAgLmFsaWducmlnaHQgPiAqIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cblxuICAuYWxpZ25sZWZ0ID4gaW1nIHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1tYXJnaW4tYmV0d2Vlbi1wYXJhZ3JhcGhzKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICAgIG1hcmdpbi10b3A6IHZhcigtLW1hcmdpbi1iZXR3ZWVuLXBhcmFncmFwaHMpO1xuXG4gICAgKyBmaWdjYXB0aW9uIHtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgfVxuICB9XG5cbiAgLmFsaWducmlnaHQgPiBpbWcge1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLW1hcmdpbi1iZXR3ZWVuLXBhcmFncmFwaHMpO1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS1tYXJnaW4tYmV0d2Vlbi1wYXJhZ3JhcGhzKTtcblxuICAgICsgZmlnY2FwdGlvbiB7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cbiAgfVxuXG4gIC5hbGlnbndpZGUge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkd2lkdGgtZ3JpZC1iYXNlICsgNDBweCkge1xuICAgICAgbWF4LXdpZHRoOiAkd2lkdGgtZ3JpZC1iYXNlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgLmFsaWduZnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICR3aWR0aC1ncmlkLWJhc2UgKyA0MHB4KSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1wYWRkaW5nLWJsb2NrKTtcbiAgICAgIG1hcmdpbi10b3A6IHZhcigtLXBhZGRpbmctYmxvY2spO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgJi53cC1ibG9jay1pbWFnZSBpbWcge1xuICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIENhcHRpb25zXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1tYXgtY29tYmluYXRvcnMsIHNlbGVjdG9yLW1heC1jb21wb3VuZC1zZWxlY3RvcnMgKi9cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIsXG4uZ3V0ZW5iZXJnLWNvbnRlbnQge1xuICBmaWdjYXB0aW9uLFxuICBjaXRlLFxuICBzbWFsbCB7XG4gICAgYm9yZGVyOiAwO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1jYXB0aW9uKTtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1jYXB0aW9ucyk7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIG1hcmdpbi1ib3R0b206IDZyZW07XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi10b3A6IDNyZW07XG4gICAgbWF4LXdpZHRoOiAkd2lkdGgtbWF4LWFydGljbGU7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRjb250YWluZXItbW9iaWxlKSB7XG4gICAgICBtYXJnaW4tdG9wOiAycmVtO1xuICAgIH1cbiAgfVxuXG4gIC53cC1ibG9jay1pbWFnZSBmaWdjYXB0aW9uLFxuICAud3AtYmxvY2staW1hZ2UgLmFsaWducmlnaHQgPiBmaWdjYXB0aW9uLFxuICAud3AtYmxvY2staW1hZ2UgLmFsaWduY2VudGVyID4gZmlnY2FwdGlvbixcbiAgLndwLWJsb2NrLWltYWdlLmlzLXJlc2l6ZWQgPiBmaWdjYXB0aW9uIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIGNpdGUge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cbiIsIi8vIEltYWdlIGZvcm1hdHRpbmcgb3B0aW9uc1xuLmVkaXRvci1zdHlsZXMtd3JhcHBlcixcbi5ndXRlbmJlcmctY29udGVudCB7XG4gIGltZyB7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICB9XG59XG4iLCJrYmQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1rYmQtYmFja2dyb3VuZCk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWtiZC1ib3JkZXIpO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDAgcmdiYSgyMiwgMjIsIDIyLCAuMiksIDAgMCAwIDJweCB2YXIoLS1jb2xvci13aGl0ZSkgaW5zZXQ7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1wYXJhZ3JhcGgpO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIHBhZGRpbmc6IDAgLjVyZW07XG4gIHRleHQtc2hhZG93OiAwIDFweCAwIHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbiIsIi8qIHN0eWxlbGludC1kaXNhYmxlIGExMXkvbm8tZGlzcGxheS1ub25lLCBuby1kZXNjZW5kaW5nLXNwZWNpZmljaXR5LCBzZWxlY3Rvci1tYXgtcHNldWRvLWNsYXNzICovXG4vLyBEZWZhdWx0IGxpbmtzIGV2ZXJ5d2hlcmVcbmEge1xuICBjb2xvcjogdmFyKC0tY29sb3ItbGluay10ZXh0KTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1saW5rLXRleHQpO1xuICAgIC8vIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB9XG59XG5cbi8vIExpbmtzIHdpdGhpbiBjb250ZW50XG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyLFxuLmd1dGVuYmVyZy1jb250ZW50IHtcbiAgLy8gU3R5bGUgY2hvaWNlIG5vdCB0byBoYXZlIGV4dGVybmFsIGxpbmsgaW5kaWNhdG9ycyBpbiBhIGxpc3RcbiAgbGkgPiBhOjphZnRlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIFtkYXRhLXR5cGU9XCJjb3JlL3BhcmFncmFwaFwiXSA+IGEsXG4gIGxpID4gYSxcbiAgcCA+IHN0cm9uZyA+IGEsXG4gIHAgPiBlbSA+IGEsXG4gIHA6bm90KFtjbGFzc10pID4gYTpub3QoW2NsYXNzXSksXG4gIHAuaGFzLXRleHQtYWxpZ24tbGVmdCA+IGEsXG4gIHAuaGFzLXRleHQtYWxpZ24tY2VudGVyID4gYSxcbiAgcC5oYXMtdGV4dC1hbGlnbi1yaWdodCA+IGEsXG4gIHAuaGFzLXNtYWxsLWZvbnQtc2l6ZSA+IGEsXG4gIGZpZ2NhcHRpb24gPiBhLFxuICBwOm5vdChbY2xhc3NdKSA+IGEuaXMtZXh0ZXJuYWwtbGluayB7XG4gICAgQGluY2x1ZGUgbGluaygpO1xuICB9XG59XG4iXX0= */