@charset "UTF-8"; /** * 1. Add border box sizing in all browsers (opinionated). * 2. Backgrounds do not repeat by default (opinionated). */ *,::after,::before { background-repeat: no-repeat; /* 2 */ box-sizing: border-box; /* 1 */ } /** * 1. Add text decoration inheritance in all browsers (opinionated). * 2. Add vertical alignment inheritance in all browsers (opinionated). */ ::after,::before { text-decoration: inherit; /* 1 */ vertical-align: inherit; /* 2 */ } /** * 1. Use the default cursor in all browsers (opinionated). * 2. Change the line height in all browsers (opinionated). * 3. Breaks words to prevent overflow in all browsers (opinionated). * 4. Use a 4-space tab width in all browsers (opinionated). * 5. Remove the grey highlight on links in iOS (opinionated). * 6. Prevent adjustments of font size after orientation changes in iOS. */ :where(:root) { cursor: default; /* 1 */ line-height: 1.5; /* 2 */ overflow-wrap: break-word; /* 3 */ tab-size: 4; /* 4 */ -webkit-tap-highlight-color: transparent; /* 5 */ -webkit-text-size-adjust: 100%; text-size-adjust: 100%; /* 6 */ } /* Sections * ========================================================================== */ /** * Remove the margin in all browsers (opinionated). */ :where(body) { margin: 0; } /** * 1. Correct the inheritance of border color in Firefox. * 2. Add the correct box sizing in Firefox. */ :where(hr) { color: inherit; /* 1 */ height: 0; /* 2 */ } /** * Remove the list style on navigation lists in all browsers (opinionated). */ :where(nav) :where(ol, ul) { list-style-type: none; padding: 0; } /** * 1. Correct the inheritance and scaling of font size in all browsers. * 2. Correct the odd `em` font sizing in all browsers. * 3. Prevent overflow of the container in all browsers (opinionated). */ :where(pre) { font-family: monospace,monospace; /* 1 */ font-size: 1em; /* 2 */ overflow: auto; /* 3 */ } /** * Change the fill color to match the text color in all browsers (opinionated). */ :where(svg:not([fill])) { fill: currentColor; } /* Forms * ========================================================================== */ /** * Correct the inability to style buttons in iOS and Safari. */ :where(button, [type=button i], [type=reset i], [type=submit i]) { -webkit-appearance: button; appearance: button; } /** * 1. Remove the margin in Firefox and Safari. * 3. Change the resize direction in all browsers (opinionated). */ :where(textarea) { margin: 0; /* 1 */ resize: vertical; /* 3 */ } /** * 1. Correct the odd appearance in Chrome, Edge, and Safari. * 2. Correct the outline style in Safari. */ :where([type=search i]) { -webkit-appearance: textfield; appearance: textfield; /* 1 */ outline-offset: -2px; /* 2 */ } /** * Correct the cursor style of increment and decrement buttons in Safari. */ ::-webkit-inner-spin-button,::-webkit-outer-spin-button { height: auto; } /** * Correct the text style of placeholders in Chrome, Edge, and Safari. */ ::input-placeholder { color: inherit; opacity: 0.54; } /** * Remove the inner padding in Chrome, Edge, and Safari on macOS. */ ::-webkit-search-decoration { -webkit-appearance: none; appearance: none; } /** * 1. Correct the inability to style upload buttons in iOS and Safari. * 2. Change font properties to `inherit` in Safari. */ ::-webkit-file-upload-button { -webkit-appearance: button; appearance: button; /* 1 */ font: inherit; /* 2 */ } /* * Add the correct display in Safari. */ :where(details > summary:first-of-type) { display: list-item; } /* Accessibility * ========================================================================== */ /** * Change the cursor on busy elements in all browsers (opinionated). */ :where([aria-busy=true i]) { cursor: progress; } /* * Change the cursor on disabled, not-editable, or otherwise * inoperable elements in all browsers (opinionated). */ :where([aria-disabled=true i], [disabled]) { cursor: not-allowed; } /* * Change the display on visually hidden accessible elements * in all browsers (opinionated). */ :where([aria-hidden=false i][hidden]) { display: initial; } :where([aria-hidden=false i][hidden]:not(:focus)) { clip: rect(0, 0, 0, 0); position: absolute; } /* * 1. Remove animations when motion is reduced (opinionated). * 2. Remove fixed background attachments when motion is reduced (opinionated). * 3. Remove timed scrolling behaviors when motion is reduced (opinionated). * 4. Remove transitions when motion is reduced (opinionated). */ @media (prefers-reduced-motion: reduce) { *,::after,::before { animation-delay: -1ms !important; /* 1 */ animation-duration: 1ms !important; /* 1 */ animation-iteration-count: 1 !important; /* 1 */ background-attachment: initial !important; /* 2 */ scroll-behavior: auto !important; /* 3 */ transition-delay: 0s !important; /* 4 */ transition-duration: 0s !important; /* 4 */ } } *,*::after,*::before,html { /* autoprefixer: ignore next */ box-sizing: border-box; } img { /* autoprefixer: ignore next */ box-sizing: content-box; } .image-background > img { object-fit: cover; } .image-background { overflow: hidden; position: relative; } .image-background > img,.image-background-layer { height: 100%; left: 0; position: absolute; top: 0; width: 100%; z-index: 0; } :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-scorpion: #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-scorpion); --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: color.adjust(#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-black); --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-top: #f5f5f5; --color-background-top-hover: #f0f0f0; --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-kbd-border: #ccc; --color-kbd-background: var(--color-pattens-blue); --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-top-arrow-dark: var(--color-black); --color-top-arrow-light: var(--color-white); --color-error-block-border: #adb2ad; --color-error-block-background: #f9f9f9; --color-error: #cc2e2e; --color-success: #21aa14; --color-warning: #cc752e; --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); --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); } @font-face { font-display: auto; font-family: Inter; font-style: normal; font-weight: 400; src: url(../../fonts/inter-400.woff) format("woff"), url(../../fonts/inter-400.woff2) format("woff2"), url(../../fonts/inter-400.ttf) format("truetype"); } @font-face { font-display: auto; font-family: Inter; font-style: italic; font-weight: 400; src: url(../../fonts/inter-400-italic.woff) format("woff"), url(../../fonts/inter-400-italic.woff2) format("woff2"), url(../../fonts/inter-400-italic.ttf) format("truetype"); } @font-face { font-display: auto; font-family: Inter; font-style: normal; font-weight: 500; src: url(../../fonts/inter-500.woff) format("woff"), url(../../fonts/inter-500.woff2) format("woff2"), url(../../fonts/inter-500.ttf) format("truetype"); } @font-face { font-display: auto; font-family: Inter; font-style: normal; font-weight: 600; src: url(../../fonts/inter-600.woff) format("woff"), url(../../fonts/inter-600.woff2) format("woff2"), url(../../fonts/inter-600.ttf) format("truetype"); } @font-face { font-display: auto; font-family: Inter; font-style: normal; font-weight: 700; src: url(../../fonts/inter-700.woff) format("woff"), url(../../fonts/inter-700.woff2) format("woff2"), url(../../fonts/inter-700.ttf) format("truetype"); } @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; --font-size-paragraphs: 16px; --font-size-default: 16px; } } @media (max-width: 420px) { :root { --font-size-16: 14px; --font-size-nav-toggle-label: 13px; } } :root { --color-background-input-field: var(--color-white); --color-form-text: var(--color-paragraph); --color-form-label-text: var(--color-form-text); --color-required-label-text: var(--color-form-text); --color-border-forms: var(--color-paragraph); --color-border-forms-focus: var(--color-paragraph); --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: color.adjust(#545773, 15%); --color-placeholder: var(--color-paragraph); --color-placeholder-focus: var(--color-black); --opacity-placeholder: .4; --opacity-placeholder-focus: .8; --border-radius-checkbox: 3px; --border-radius-input-field: 3px; --border-radius-select: 3px; --border-width-checkbox: 1px; --border-width-input-field: 1px; --font-size-input-fields: var(--font-size-17); --font-size-input-labels: var(--font-size-input-fields); --font-size-required-text-label: var(--font-size-input-fields); --font-size-required-asterisk-label: 22px; --form-column-gap: 2rem; --form-row-gap: 2rem; --form-required-gap: .5rem; --form-line-height: 24px; --form-padding-vertical: 1rem; --form-padding-horizontal: 1.5rem; --gap-checkbox: 10px; --gap-select-icon: 1.5rem; --line-height-checkbox: var(--line-height-paragraphs); --size-checkbox-marker: 12px; --size-radio-button: 16px; --size-radio-button-marker: 8px; --grid-gap: 4.8rem; --padding-container-horizontal: 2rem; --padding-container-horizontal-large: 6.4rem; --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: 1590px) { :root { --padding-container-horizontal: 2rem; } } @media (max-width: 960px) { :root { --padding-site-header-vertical: 2rem; } } @media (max-width: 1024px) { :root { --grid-gap: 3.2rem; } } @media (max-width: 770px) { :root { --grid-gap: var(--padding-container-horizontal); --padding-container-vertical: 5rem; } } @media (max-width: 600px) { :root { --padding-block: 6rem; } } @media (max-width: 480px) { :root { --padding-container-vertical: 4rem; } } .screen-reader-text { 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; word-wrap: normal !important; } .screen-reader-text:focus { background-color: var(--color-white); border-radius: 0; box-shadow: 0 0 2px 2px hsla(0,0%,9%,.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: 11; } .screen-reader-text.skip-link { margin: 5px; } .screen-reader-text.skip-link:focus { color: currentColor; } [data-whatinput=mouse] *:focus,[data-whatinput=touch] *:focus { outline: none; } [data-whatinput=keyboard] a:focus,[data-whatinput=keyboard] button:focus,[data-whatinput=keyboard] div[tabindex]:focus,[data-whatinput=keyboard] input:focus,[data-whatinput=keyboard] select:focus,[data-whatinput=keyboard] textarea:focus { opacity: 1; } [data-whatinput=keyboard] .global-link { transition: none; } [data-whatinput=keyboard] a.global-link:focus { outline-offset: 5px; outline-style: solid; outline-width: 4px; transition: outline-offset 0.25s ease; } a.is-external-link::after { background-image: url(../../svg/external-link.svg); background-position: 100%; background-repeat: no-repeat; background-size: 12px 12px; content: ""; display: inline-flex; height: 12px; margin-left: 5px; margin-right: 2px; position: relative; right: 0; top: 0; transition: all 50ms; width: 12px; } a.is-external-link.global-link::after,a.is-external-link.no-external-link-indicator::after { 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 0.25s ease; } } :root { --border-radius-sub-menu: 0; --box-shadow-navigation-static: 0 0 10px rgba(84,87,115,.1); --box-shadow-sub-menu: transparent; --dropdown-toggle-size: 12px; --gap-dropdown: 1rem; --gap-between-dropdown-toggle: 1.5rem; --gap-main-level-horizontal: 2.5rem; --padding-main-level-horizontal: 0; --padding-main-level-vertical: .6rem; --padding-sub-menu-vertical: .6rem; --padding-sub-menu-link-vertical: .6rem; --padding-sub-menu-link-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-link-text); --color-hover-sub-menu: var(--color-valhalla); --color-main-level: var(--color-black); --color-current: var(--color-link-text); --font-size-main-level: var(--font-size-16); --font-size-sub-menu: var(--font-size-16); --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%; } .nav-toggle { display: none; } .nav-primary { padding-bottom: 0; padding-top: 0; } .menu-items { align-items: center; background-color: transparent; display: flex; gap: var(--gap-main-level-horizontal); padding: 0; } .menu-item,.menu-items { margin: 0; position: relative; } .menu-item > a { color: var(--color-main-level); font-size: var(--font-size-main-level); font-weight: var(--font-weight-main-level); margin-left: 0; margin-right: 0; padding: var(--padding-main-level-vertical) var(--padding-main-level-horizontal); white-space: nowrap; } .menu-item .sub-menu a,.menu-item > a { align-items: center; display: inline-flex; } .menu-item .sub-menu a { color: var(--color-sub-menu); font-size: var(--font-size-sub-menu); font-weight: var(--font-weight-sub-menu); line-height: 1.5; padding: var(--padding-sub-menu-link-vertical) var(--padding-sub-menu-link-horizontal); white-space: normal; } .menu-item.current-menu-item > a,.menu-item.current-menu-parent > a { color: var(--color-current); } .menu-item.menu-item-has-children a { 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:focus,.menu-item > a:hover { color: var(--color-hover-main-level); } .menu-item .sub-menu a:focus,.menu-item .sub-menu a:hover { color: var(--color-hover-sub-menu); } .menu-item.menu-item-has-children.hover-intent .sub-menu a,.menu-item.menu-item-has-children:focus .sub-menu a,.sub-menu.toggled-on .sub-menu a,.sub-menu.toggled-on a { padding-bottom: var(--padding-sub-menu-link-vertical); padding-top: var(--padding-sub-menu-link-vertical); } .menu-item.menu-item-has-children.hover-intent .sub-menu,.menu-item.menu-item-has-children:focus .sub-menu,.sub-menu.toggled-on,.sub-menu.toggled-on .sub-menu { padding-bottom: var(--padding-sub-menu-vertical); padding-top: var(--padding-sub-menu-vertical); } .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: var(--box-shadow-sub-menu); left: 0; margin-left: 0; margin-top: var(--gap-dropdown); opacity: 0; padding: 0; position: absolute; top: 100%; transition: all 0.2s cubic-bezier(0.19, 1, 0.22, 1); visibility: hidden; width: var(--width-sub-menu); z-index: 4; } .sub-menu.is-out-of-viewport { left: unset; right: 0; } .sub-menu .sub-menu.is-out-of-viewport,.sub-menu.is-out-of-viewport .sub-menu { left: unset; right: 100%; } .sub-menu .sub-menu { left: 100%; margin-left: 0; margin-top: calc(var(--padding-sub-menu-vertical)*-1); top: 0; } .sub-menu li { padding: 0; width: var(--width-sub-menu); } .menu-item-has-children > .sub-menu.toggled-on,.menu-item-has-children.hover-intent > .sub-menu,.menu-item-has-children:focus > .sub-menu { opacity: 1; transform: translateY(0%); visibility: visible; z-index: 6; } .menu-item-has-children .sub-menu .sub-menu.toggled-on,.menu-item-has-children .sub-menu.toggled-on .sub-menu,.menu-item-has-children.hover-intent .sub-menu .sub-menu,.menu-item-has-children:focus .sub-menu .sub-menu { margin-top: calc(var(--padding-sub-menu-vertical)*-1); top: 0; z-index: 5; } .menu-item.menu-item-has-children { align-items: center; display: flex; gap: var(--gap-between-dropdown-toggle); justify-content: space-between; position: relative; } .menu-item.menu-item-has-children::after { content: ""; display: block; height: var(--gap-dropdown); max-width: var(--width-sub-menu); position: absolute; top: 100%; visibility: hidden; width: 100%; } .menu-item.menu-item-has-children.hover-intent::after { visibility: visible; z-index: 12; } .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; pointer-events: none; } .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); } .sub-menu .menu-item-has-children::after { display: none; } } @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) { .menu-item.menu-item-has-children > .dropdown-toggle.toggled-on svg,.menu-item.menu-item-has-children:focus > .dropdown-toggle svg,.menu-item.menu-item-has-children:hover > .dropdown-toggle svg { transform: translateY(0%) rotate(180deg); } .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:focus > .dropdown-toggle svg,.menu-item.menu-item-has-children .menu-item.menu-item-has-children:hover > .dropdown-toggle svg { transform: translateY(0%) rotate(90deg); } .menu-item-has-children::before { border-color: transparent transparent var(--color-white); border-style: solid; border-width: 0 5px 5px; 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; } } @media only screen and (min-width: 960px) { } @media only screen and (min-width: 960px) { } :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-main-level-vertical-mobile: 1.2rem; --padding-sub-menu-vertical-mobile: .8rem; --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-header-active: var(--color-main); --color-background-nav-mobile-layer: var(--color-main); --color-background-nav-mobile-layer-active: 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: hsla(0,0%,100%,.1); --color-sub-menu-mobile: hsla(0,0%,100%,.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.is-active:hover,.hamburger:hover { opacity: 0.8; } .hamburger.is-active .hamburger-inner,.hamburger.is-active .hamburger-inner::after,.hamburger.is-active .hamburger-inner::before { 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::after,.hamburger-inner::before { 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::after,.hamburger-inner::before { 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::after,.hamburger--3dx .hamburger-inner::before { 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::after,.hamburger--3dx-r .hamburger-inner::before { 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::after,.hamburger--3dy .hamburger-inner::before { 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::after,.hamburger--3dy-r .hamburger-inner::before { 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::after,.hamburger--3dxy .hamburger-inner::before { 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::after,.hamburger--3dxy-r .hamburger-inner::before { 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::after,.hamburger--boring .hamburger-inner::before { 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 .hamburger-inner,.hamburger--collapse .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 .hamburger-inner::after,.hamburger--collapse .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 .hamburger-inner::before,.hamburger--collapse .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::after,.hamburger--minus .hamburger-inner::before { transition: bottom 0.08s 0s ease-out, top 0.08s 0s ease-out, opacity 0s linear; } .hamburger--minus.is-active .hamburger-inner::after,.hamburger--minus.is-active .hamburger-inner::before { 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.4285714286rem, -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.4285714286rem, -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::after,.hamburger--vortex .hamburger-inner::before { 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::after,.hamburger--vortex.is-active .hamburger-inner::before { 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::after,.hamburger--vortex-r .hamburger-inner::before { 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::after,.hamburger--vortex-r.is-active .hamburger-inner::before { 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) { .js .menu-items ul { display: none; } .js ul .sub-menu.toggled-on { display: block; } } @media only screen and (max-width: 960px) { } @media screen and (max-width: 959px) { .nav-container { background-color: var(--color-background-nav-mobile-header); left: 0; position: absolute; top: 0; width: 100%; } .site-header a,.site-header li,.site-header ul { position: relative; } .main-navigation-wrapper { order: 6; z-index: 8; } .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; overflow: auto; pointer-events: none; visibility: hidden; } .no-js .nav-primary { display: none; } .menu-items { margin: 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: var(--padding-main-level-vertical-mobile) var(--padding-sub-menu-horizontal-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-bottom: var(--padding-sub-menu-vertical-mobile); padding-left: calc(var(--padding-sub-menu-horizontal-mobile) + var(--margin-left-sub-menu)); padding-top: var(--padding-sub-menu-vertical-mobile); } .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:focus,.menu-item a:hover { color: var(--color-active-main-level-mobile); } .menu-item.current-menu-item > a,.menu-item.current-menu-parent > 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: var(--padding-sub-menu-vertical-mobile) var(--padding-sub-menu-horizontal-mobile); position: absolute; right: 0; top: 2px; transform: rotate(0); transition: all 50ms; z-index: 9; } .dropdown-toggle:focus { z-index: 10; } .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); } .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: 3; } .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 { background-color: var(--color-background-nav-mobile-layer-active); opacity: 1; } .js.js-nav-active .nav-container { background-color: var(--color-background-nav-mobile-header-active); } @supports (-webkit-touch-callout: none) { .js.js-nav-active .main-navigation-wrapper { width: unset; } .js .main-navigation-wrapper { width: 3rem; } } @supports (-webkit-touch-callout: none) { } .site { padding-top: var(--height-navigation-mobile); } .nav-primary { backface-visibility: hidden; transform: translate3d(100%, 0, 0); transition: all 250ms ease-in-out; width: 100vw; } .js.js-nav-active .nav-primary { transform: translate3d(0, 0, 0); } .site-main { transition: transform 250ms ease-in-out; } .js.js-nav-active .site-main { transform: translate3d(-310px, 0, 0); } } .hamburger.is-active .hamburger-inner,.hamburger.is-active .hamburger-inner::after,.hamburger.is-active .hamburger-inner::before { 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-semibold); margin: 0; overflow: visible; padding: 0; position: relative; text-decoration: none; top: 0; -webkit-user-select: none; user-select: none; z-index: 11; } .nav-toggle:not(.toggled-on) .hamburger-inner { transition: width 50ms; width: 18px; } .nav-toggle.is-active .hamburger-inner,.nav-toggle:focus .hamburger-inner,.nav-toggle:hover .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:active,.nav-toggle:active span,.nav-toggle:hover,.nav-toggle:hover span { color: var(--color-hamburger); } .nav-toggle:focus span span,.nav-toggle:focus span span::after,.nav-toggle:focus span span::before { background-color: var(--color-hamburger); } .nav-toggle:not(.has-visible-label) .nav-toggle-label { display: none; } .nav-toggle.is-active { color: var(--color-hamburger-active); } .nav-toggle.is-active .focus .hamburger-inner,.nav-toggle.is-active .focus .hamburger-inner::after,.nav-toggle.is-active .hamburger-box .hamburger-inner,.nav-toggle.is-active .hamburger-box .hamburger-inner::after,.nav-toggle.is-active span:focus .hamburger-inner,.nav-toggle.is-active span:focus .hamburger-inner::after { background-color: var(--color-hamburger-active); } .nav-toggle.is-active span:active,.nav-toggle.is-active span:active span,.nav-toggle.is-active span:focus,.nav-toggle.is-active span:focus span,.nav-toggle.is-active span:hover,.nav-toggle.is-active span:hover span { color: var(--color-hamburger-active); } @media (min-width: 960px) { .nav-toggle { 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 { gap: 1.5rem; } } .block { background-color: var(--color-white); background-position: 50%; background-repeat: no-repeat; background-size: cover; margin: 0 auto; max-width: 100%; position: relative; } .block.has-unified-padding-if-stacked + .block.has-unified-padding-if-stacked .container { overflow: visible; padding-top: 0; } .shade { background-color: var(--color-background-shade); opacity: 0.35; z-index: 0; } .global-link,.shade { height: 100%; left: 0; position: absolute; top: 0; width: 100%; } .global-link { z-index: 2; } .site { margin-left: auto; margin-right: auto; max-width: 100%; overflow: hidden; position: relative; } .container { margin: 0 auto; max-width: 1440px; padding: var(--padding-container-vertical) var(--padding-container-horizontal); } .entry-footer,.site-main .container { clear: both; overflow: hidden; } .entry-footer { display: flex; justify-content: space-between; margin-top: var(--padding-container-vertical); } .edit-link { margin-bottom: 0; margin-top: 2rem; max-width: 100%; min-width: 0; overflow: hidden; text-align: left; width: 100%; } .edit-link,.edit-link a { clear: both; display: block; transition: all 50ms; } .edit-link a { background-color: var(--color-white); border: 2px dashed var(--color-link-edit-border); color: var(--color-link-edit-text); margin: 0; padding: 2rem; text-align: center; text-decoration: none; } .edit-link a:hover,.edit-link:focus { background-color: var(--color-link-edit-background-hover); color: var(--color-link-edit-text-hover); } @media (min-width: 480px) { .hide-on-desktop { display: none !important; } } @media (max-width: 480px) { .hide-on-mobile { display: none !important; } } @media (max-width: 960px) { .hide-on-mobile-nav-view { display: none !important; } } @media (min-width: 960px) { .hide-on-desktop-nav-view { display: none !important; } } .hide-completely { display: none !important; } @media print { .nav-container,.side-nav,.site-footer { display: none; } } :root { font-size: 62.5%; } 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; } blockquote,code,dd,dt,figcaption,hr,input[type=email],input[type=month],input[type=number],input[type=password],input[type=search],input[type=tel],input[type=text],input[type=url],input[type=week],kbd,li,ol,p,pre,samp,small,table,td,textarea,th,tr,ul { 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; } b,strong { font-weight: var(--font-weight-bold); } em,i { font-style: italic; } p { margin-bottom: 2.9rem; margin-top: 2.9rem; } p:last-child { margin-bottom: 0; } .site-header { align-items: center; display: flex; justify-content: space-between; margin-left: auto; margin-right: auto; max-width: 1440px; padding: var(--padding-site-header-vertical) var(--padding-container-horizontal); position: relative; z-index: 7; } .site-title { line-height: 0; margin: 0; } .site-title a { align-items: center; display: flex; } .nav-container { z-index: 5; } .site-main { display: grid; } .site-main::after { align-items: center; background-image: linear-gradient(var(--color-black), var(--color-science-blue)), linear-gradient(var(--color-black), var(--color-science-blue)); background-position: 0 0, 100% 0; background-repeat: no-repeat; background-size: 3px 100%; border-bottom: 3px solid var(--color-science-blue); border-top: 3px solid var(--color-black); color: var(--color-black); content: "Build your website here! (Remove this bit in sass/layout/_site-header.scss)"; display: flex; font-size: clamp(0.5rem, 3.4vw, 3rem); font-weight: var(--font-weight-semibold); justify-content: center; margin-bottom: var(--padding-container-vertical); margin-left: auto; margin-right: auto; margin-top: calc(var(--padding-container-vertical)*2); max-width: 1400px; opacity: 0.7; order: -1; padding: 4rem; position: relative; text-align: center; width: calc(100% - 4rem); } .site-footer { clear: both; overflow: hidden; padding: 6rem 2rem; text-align: center; } .site-footer,.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 .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 a { color: var(--color-white); transition: opacity 50ms; } .site-footer a:focus,.site-footer a:hover { color: var(--color-white); opacity: 0.5; } .site-footer a:focus::after,.site-footer a:hover::after { opacity: 0.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; } .site-footer .button-wrapper,.site-main .button-wrapper { margin-bottom: 0; } .site-footer .button,.site-footer button,.site-footer input[type=button],.site-footer input[type=reset],.site-footer input[type=submit],.site-main .button,.site-main button,.site-main input[type=button],.site-main input[type=reset],.site-main input[type=submit] { -webkit-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: calc(14px - var(--border-width-input-field)*2) calc(21px - var(--border-width-input-field)*2); position: relative; text-decoration: none; text-overflow: ellipsis; transition: all 50ms cubic-bezier(0.25, 0.46, 0.45, 0.94); white-space: nowrap; width: auto; } .site-footer .button.focus,.site-footer .button:focus,.site-footer .button:hover,.site-footer button.focus,.site-footer button:focus,.site-footer button:hover,.site-footer input[type=button].focus,.site-footer input[type=button]:focus,.site-footer input[type=button]:hover,.site-footer input[type=reset].focus,.site-footer input[type=reset]:focus,.site-footer input[type=reset]:hover,.site-footer input[type=submit].focus,.site-footer input[type=submit]:focus,.site-footer input[type=submit]:hover,.site-main .button.focus,.site-main .button:focus,.site-main .button:hover,.site-main button.focus,.site-main button:focus,.site-main button:hover,.site-main input[type=button].focus,.site-main input[type=button]:focus,.site-main input[type=button]:hover,.site-main input[type=reset].focus,.site-main input[type=reset]:focus,.site-main input[type=reset]:hover,.site-main input[type=submit].focus,.site-main input[type=submit]:focus,.site-main input[type=submit]:hover { 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-footer .button.button-small,.site-footer button.button-small,.site-footer input[type=button].button-small,.site-footer input[type=reset].button-small,.site-footer input[type=submit].button-small,.site-main .button.button-small,.site-main button.button-small,.site-main input[type=button].button-small,.site-main input[type=reset].button-small,.site-main input[type=submit].button-small { font-size: var(--font-size-16); line-height: 20.9091px; padding: calc(10px - var(--border-width-input-field)*2) calc(21px - var(--border-width-input-field)*2); } .site-footer .button.button-large,.site-footer button.button-large,.site-footer input[type=button].button-large,.site-footer input[type=reset].button-large,.site-footer input[type=submit].button-large,.site-main .button.button-large,.site-main button.button-large,.site-main input[type=button].button-large,.site-main input[type=reset].button-large,.site-main input[type=submit].button-large { font-size: var(--font-size-18); line-height: 23.0909px; padding: calc(17px - var(--border-width-input-field)*2) calc(21px - var(--border-width-input-field)*2); } .site-footer .button.button-ghost,.site-footer button.button-ghost,.site-footer input[type=button].button-ghost,.site-footer input[type=reset].button-ghost,.site-footer input[type=submit].button-ghost,.site-main .button.button-ghost,.site-main button.button-ghost,.site-main input[type=button].button-ghost,.site-main input[type=reset].button-ghost,.site-main input[type=submit].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 50ms cubic-bezier(0.25, 0.46, 0.45, 0.94); } .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=button].button-ghost.focus,.site-footer input[type=button].button-ghost:focus,.site-footer input[type=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-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=button].button-ghost.focus,.site-main input[type=button].button-ghost:focus,.site-main input[type=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 { background-color: var(--color-button-background); border-color: var(--color-button-background); color: var(--color-white); } select { -webkit-appearance: none; appearance: none; background-image: url(../../svg/select.svg); background-position: right var(--gap-select-icon) center; background-repeat: no-repeat; background-size: 11px 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-form-text); line-height: var(--form-line-height); max-width: 100%; min-width: 0; padding: var(--form-padding-vertical) var(--form-padding-horizontal); text-indent: 1px; transition: none; width: 100%; } label,legend,select { font-size: var(--font-size-input-fields); } label,legend { color: var(--color-form-label-text); } input[type=email],input[type=month],input[type=number],input[type=password],input[type=search],input[type=tel],input[type=text],input[type=url],input[type=week],textarea { 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); color: var(--color-form-text); font-family: var(--font-paragraph); font-size: var(--font-size-input-fields); line-height: var(--form-line-height); margin-bottom: 0; padding: var(--form-padding-vertical) var(--form-padding-horizontal); position: relative; text-decoration: none; transition: background 0.55s; } input[type=email]::placeholder,input[type=month]::placeholder,input[type=number]::placeholder,input[type=password]::placeholder,input[type=search]::placeholder,input[type=tel]::placeholder,input[type=text]::placeholder,input[type=url]::placeholder,input[type=week]::placeholder,textarea::placeholder { color: var(--color-placeholder); opacity: var(--opacity-placeholder); } input[type=email]:focus,input[type=month]:focus,input[type=number]:focus,input[type=password]:focus,input[type=search]:focus,input[type=tel]:focus,input[type=text]:focus,input[type=url]:focus,input[type=week]:focus,textarea:focus { background-color: var(--color-background-input-field); border-color: var(--color-border-forms-focus); color: var(--color-form-text); } input[type=email]:focus::placeholder,input[type=month]:focus::placeholder,input[type=number]:focus::placeholder,input[type=password]:focus::placeholder,input[type=search]:focus::placeholder,input[type=tel]:focus::placeholder,input[type=text]:focus::placeholder,input[type=url]:focus::placeholder,input[type=week]:focus::placeholder,textarea:focus::placeholder { color: var(--color-placeholder-focus); opacity: var(--opacity-placeholder-focus); } input[type=checkbox],input[type=radio] { font-size: var(--font-size-input-fields); 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=checkbox] + label,input[type=radio] + label { align-items: flex-start; cursor: pointer; display: inline-flex; line-height: var(--line-height-checkbox); } input[type=checkbox] + label::before,input[type=radio] + label::before { align-self: center; background-color: var(--color-white); background-position: 50%; 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 0.2s, border 0.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=checkbox]:checked + label::before,input[type=radio]:checked + label::before { background-color: var(--color-checkbox); border-color: var(--color-checkbox); box-shadow: none; transition: transform 0.2s; } input[type=checkbox]:active + label::before,input[type=radio]:active + label::before { transform: scale(0.8); transition: transform 0.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=checkbox]:checked:active + label::before,input[type=checkbox]:focus + label::before,input[type=radio]:checked:active + label::before,input[type=radio]:focus + label::before { border-color: var(--color-checkbox); box-shadow: var(--color-checkbox-outline); } input[type=checkbox]:checked:active + label::before,input[type=radio]:checked:active + label::before { transform: none; transition: none; } input[type=checkbox]:not(:checked):not(:focus) + label:hover::before,input[type=radio]:not(:checked):not(:focus) + label:hover::before { border-color: var(--color-checkbox-border-hover); } .cat { margin-top: 4rem; } .cat,.cat a { margin-bottom: 0.5rem; } .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-right: 0.5em; padding: 0.2em 0.6em; transition: all 50ms; } .cat a:focus,.cat a:hover { 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: 0 10px 10px 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: 0.4em; padding: 0.2em 0.6em; transition: all 50ms; } .tags a:focus,.tags a:hover { 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; } .bypostauthor,.comment-list li.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; } .top { background-color: var(--color-background-top); border-radius: 2px; bottom: var(--padding-container-horizontal); color: var(--color-black); cursor: pointer; font-size: var(--font-size-16); height: 3rem; line-height: 30px; opacity: 0; position: fixed; right: var(--padding-container-horizontal); text-align: center; text-decoration: none; transition: 500ms opacity; visibility: hidden; width: 3rem; z-index: 1; } .top:hover { background-color: var(--color-background-top-hover); } .top:focus { background-color: var(--color-background-top); } .top.is-visible { opacity: 1; visibility: visible; } .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; } .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; } .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 50ms; width: 35px; } .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; } @media (max-width: 600px) { .page-numbers { height: 26px; width: 26px; } } a.page-numbers:focus,a.page-numbers:hover { 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; } } div.validation_error { background-color: var(--color-error); font-size: var(--font-size-17); font-weight: var(--font-weight-bold); margin-bottom: var(--form-row-gap); padding: 2rem; } div.validation_error,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: var(--form-row-gap); 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_required_legend,.sr-only { 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; word-wrap: normal !important; } .gform_required_legend:focus,.sr-only:focus { background-color: var(--color-white); border-radius: 0; box-shadow: 0 0 2px 2px hsla(0,0%,9%,.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: 11; } .gfield_required.gfield_required_asterisk { font-size: var(--font-size-required-asterisk-label); } .gfield_required.gfield_required_asterisk,.gfield_required.gfield_required_text { color: var(--color-required-label-text); } .gfield_required.gfield_required_text { font-size: var(--font-size-required-text-label); } .gform_wrapper > form { display: grid; grid-column-gap: var(--form-column-gap); grid-row-gap: var(--form-row-gap); } .gform-body ul { list-style: none; margin: 0; padding: 0; } .gform-body input,.gform-body textarea { width: 100%; } .gform-body .ginput_container.ginput_container_textarea { display: flex; } .gform-body .gfield_label { display: inline-flex; font-weight: var(--font-weight-bold); gap: var(--form-required-gap); margin-bottom: 1rem; margin-top: 1rem; -webkit-padding-end: 0; padding-inline-end: 0; -webkit-padding-start: 0; padding-inline-start: 0; } .gform-body .gform_fields { display: grid; grid-column-gap: var(--form-column-gap); grid-row-gap: var(--form-row-gap); grid-template-columns: repeat(12, 1fr); grid-template-rows: repeat(auto-fill, auto); width: 100%; } .gform-body .gfield { border: 0; grid-column: 1/-1; padding: 0; } .gform-body .gfield.gfield--width-full { grid-column: span 12; } .gform-body .gfield.gfield--width-eleven-twelfths { grid-column: span 11; } .gform-body .gfield.gfield--width-five-sixths { grid-column: span 10; } .gform-body .gfield.gfield--width-three-quarter { grid-column: span 9; } .gform-body .gfield.gfield--width-two-thirds { grid-column: span 8; } .gform-body .gfield.gfield--width-seven-twelfths { grid-column: span 7; } .gform-body .gfield.gfield--width-half { grid-column: span 6; } .gform-body .gfield.gfield--width-five-twelfths { grid-column: span 5; } .gform-body .gfield.gfield--width-third { grid-column: span 4; } .gform-body .gfield.gfield--width-quarter { grid-column: span 3; } @media (max-width: 640px) { .gform-body .gform_fields { grid-column-gap: 0; } .gform-body .gfield:not(.gfield--width-full) { grid-column: 1/-1; } } .gform_validation_container { display: none; } .gform_confirmation_message { background-color: transparent; border: 2px solid var(--color-success); color: var(--color-success); font-size: var(--font-size-default); font-weight: var(--font-weight-semibold); padding: 2rem; } .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; } } .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:focus,.block-search-results .tags a:hover { 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(10.4px + 9.875vw); } } @media screen and (min-width: 1920px) { .block-error-404 h1 { font-size: 200px; } } .comments-area { margin-bottom: 0; margin-top: 50px; overflow: visible; } .comment-list { margin: 0; padding: 0; } .comment-list,.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 .comments-link a,.comment-list 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 a:focus,.comments-link a:hover,.comments-link:focus,.comments-link:hover { 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-form-comment,.comment-form .comment-notes,.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%; } .article-content,.editor-styles-wrapper { max-width: 100%; padding-bottom: var(--padding-block); padding-left: 0; padding-right: 0; padding-top: var(--padding-block); } .article-content > *,.is-root-container > * { line-height: var(--line-height-paragraphs-blog); margin-left: auto; margin-right: auto; max-width: 800px; } @media (max-width: 840px) { .article-content > *,.article-content > *.alignfull,.is-root-container > *,.is-root-container > *.alignfull { padding-left: var(--padding-container-horizontal); padding-right: var(--padding-container-horizontal); } .article-content > *.alignfull,.is-root-container > *.alignfull { width: calc(100% - var(--padding-container-horizontal)*2); } } .article-content blockquote + cite,.article-content blockquote + p > cite,.editor-styles-wrapper blockquote + cite,.editor-styles-wrapper blockquote + p > cite { margin-bottom: 4rem; } .article-content blockquote,.editor-styles-wrapper blockquote { border: 0; clear: both; padding-bottom: 3rem; position: relative; } .article-content blockquote p,.editor-styles-wrapper blockquote p { color: var(--color-blockquote); font-style: normal; font-weight: var(--font-weight-semibold); margin-bottom: 0; overflow: visible; position: relative; } @media (min-width: 770px) { .article-content blockquote,.editor-styles-wrapper blockquote { margin-top: 4rem; padding-bottom: 4rem; } } .article-content .wp-block-quote,.editor-styles-wrapper .wp-block-quote { border-left: 2px solid var(--color-blockquote); line-height: var(--line-height-paragraphs-blog); margin: 4rem auto; padding: 3.5rem 6rem; width: calc(100% - 12rem); } .article-content .wp-block-quote > p,.editor-styles-wrapper .wp-block-quote > p { color: var(--color-blockquote); line-height: var(--line-height-paragraphs-blog); } @media (max-width: 840px) { .article-content .wp-block-quote,.editor-styles-wrapper .wp-block-quote { padding: 3.5rem 2rem; width: calc(100% - var(--padding-container-horizontal)*2); } } @media (max-width: 480px) { .article-content .wp-block-quote,.editor-styles-wrapper .wp-block-quote { padding: 4rem 4rem 4rem 2rem; } } .article-content .wp-block-blockquote.alignfull,.article-content .wp-block-blockquote.alignwide,.editor-styles-wrapper .wp-block-blockquote.alignfull,.editor-styles-wrapper .wp-block-blockquote.alignwide { padding-left: var(--padding-container-horizontal); padding-right: var(--padding-container-horizontal); width: calc(100% - var(--padding-container-horizontal)*2); } .article-content .wp-block-blockquote blockquote,.editor-styles-wrapper .wp-block-blockquote blockquote { padding-bottom: 0; } .article-content .wp-block-button__link,.editor-styles-wrapper .wp-block-button__link { -webkit-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: calc(14px - var(--border-width-input-field)*2) calc(21px - var(--border-width-input-field)*2); position: relative; text-decoration: none; text-overflow: ellipsis; transition: all 50ms cubic-bezier(0.25, 0.46, 0.45, 0.94); white-space: nowrap; width: auto; } .article-content .wp-block-button__link.focus,.article-content .wp-block-button__link:focus,.article-content .wp-block-button__link:hover,.editor-styles-wrapper .wp-block-button__link.focus,.editor-styles-wrapper .wp-block-button__link:focus,.editor-styles-wrapper .wp-block-button__link:hover { background-color: var(--color-button-background-hover); border: var(--border-width-input-field) solid var(--color-button-background-hover); color: var(--color-button-hover); } .article-content .wp-block-code,.editor-styles-wrapper .wp-block-code { 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-bottom: var(--margin-between-text-elements); margin-top: var(--margin-between-text-elements); overflow: auto; padding: var(--padding-container-horizontal); position: relative; white-space: pre; word-wrap: break-word; } .article-content .wp-block-code > code,.editor-styles-wrapper .wp-block-code > code { background-color: transparent; border: 0; border-radius: 4px; color: var(--color-code-text); padding: 0; } @media (max-width: 1480px) { .article-content .wp-block-code,.editor-styles-wrapper .wp-block-code { margin-left: var(--padding-container-horizontal); margin-right: var(--padding-container-horizontal); width: calc(100% - var(--padding-container-horizontal)*4); } } .article-content .wp-block-columns.has-1-columns.alignfull,.editor-styles-wrapper .wp-block-columns.has-1-columns.alignfull { padding-left: var(--padding-container-horizontal); padding-right: var(--padding-container-horizontal); width: 100%; } @media (max-width: 900px) { .article-content .wp-block-columns.has-1-columns,.editor-styles-wrapper .wp-block-columns.has-1-columns { display: grid; grid-gap: 1em; grid-template-columns: repeat(1, 1fr); width: 100%; } .article-content .wp-block-columns.has-1-columns .wp-block-column,.editor-styles-wrapper .wp-block-columns.has-1-columns .wp-block-column { margin: 0; width: 100%; } } @media (max-width: 480px) { .article-content .wp-block-columns.has-1-columns,.editor-styles-wrapper .wp-block-columns.has-1-columns { grid-template-columns: repeat(1, 1fr); } } .article-content .wp-block-columns.has-2-columns.alignfull,.editor-styles-wrapper .wp-block-columns.has-2-columns.alignfull { padding-left: var(--padding-container-horizontal); padding-right: var(--padding-container-horizontal); width: 100%; } @media (max-width: 900px) { .article-content .wp-block-columns.has-2-columns,.editor-styles-wrapper .wp-block-columns.has-2-columns { display: grid; grid-gap: 1em; grid-template-columns: repeat(2, 1fr); width: 100%; } .article-content .wp-block-columns.has-2-columns .wp-block-column,.editor-styles-wrapper .wp-block-columns.has-2-columns .wp-block-column { margin: 0; width: 100%; } } @media (max-width: 480px) { .article-content .wp-block-columns.has-2-columns,.editor-styles-wrapper .wp-block-columns.has-2-columns { grid-template-columns: repeat(1, 1fr); } } .article-content .wp-block-columns.has-3-columns.alignfull,.editor-styles-wrapper .wp-block-columns.has-3-columns.alignfull { padding-left: var(--padding-container-horizontal); padding-right: var(--padding-container-horizontal); width: 100%; } @media (max-width: 900px) { .article-content .wp-block-columns.has-3-columns,.editor-styles-wrapper .wp-block-columns.has-3-columns { display: grid; grid-gap: 1em; grid-template-columns: repeat(3, 1fr); width: 100%; } .article-content .wp-block-columns.has-3-columns .wp-block-column,.editor-styles-wrapper .wp-block-columns.has-3-columns .wp-block-column { margin: 0; width: 100%; } } @media (max-width: 480px) { .article-content .wp-block-columns.has-3-columns,.editor-styles-wrapper .wp-block-columns.has-3-columns { grid-template-columns: repeat(1, 1fr); } } .article-content .wp-block-columns.has-4-columns.alignfull,.editor-styles-wrapper .wp-block-columns.has-4-columns.alignfull { padding-left: var(--padding-container-horizontal); padding-right: var(--padding-container-horizontal); width: 100%; } @media (max-width: 900px) { .article-content .wp-block-columns.has-4-columns,.editor-styles-wrapper .wp-block-columns.has-4-columns { display: grid; grid-gap: 1em; grid-template-columns: repeat(4, 1fr); width: 100%; } .article-content .wp-block-columns.has-4-columns .wp-block-column,.editor-styles-wrapper .wp-block-columns.has-4-columns .wp-block-column { margin: 0; width: 100%; } } @media (max-width: 480px) { .article-content .wp-block-columns.has-4-columns,.editor-styles-wrapper .wp-block-columns.has-4-columns { grid-template-columns: repeat(1, 1fr); } } .article-content .wp-block-columns.has-5-columns.alignfull,.editor-styles-wrapper .wp-block-columns.has-5-columns.alignfull { padding-left: var(--padding-container-horizontal); padding-right: var(--padding-container-horizontal); width: 100%; } @media (max-width: 900px) { .article-content .wp-block-columns.has-5-columns,.editor-styles-wrapper .wp-block-columns.has-5-columns { display: grid; grid-gap: 1em; grid-template-columns: repeat(5, 1fr); width: 100%; } .article-content .wp-block-columns.has-5-columns .wp-block-column,.editor-styles-wrapper .wp-block-columns.has-5-columns .wp-block-column { margin: 0; width: 100%; } } @media (max-width: 480px) { .article-content .wp-block-columns.has-5-columns,.editor-styles-wrapper .wp-block-columns.has-5-columns { grid-template-columns: repeat(1, 1fr); } } .article-content .wp-block-columns.has-6-columns.alignfull,.editor-styles-wrapper .wp-block-columns.has-6-columns.alignfull { padding-left: var(--padding-container-horizontal); padding-right: var(--padding-container-horizontal); width: 100%; } @media (max-width: 900px) { .article-content .wp-block-columns.has-6-columns,.editor-styles-wrapper .wp-block-columns.has-6-columns { display: grid; grid-gap: 1em; grid-template-columns: repeat(6, 1fr); width: 100%; } .article-content .wp-block-columns.has-6-columns .wp-block-column,.editor-styles-wrapper .wp-block-columns.has-6-columns .wp-block-column { margin: 0; width: 100%; } } @media (max-width: 480px) { .article-content .wp-block-columns.has-6-columns,.editor-styles-wrapper .wp-block-columns.has-6-columns { grid-template-columns: repeat(1, 1fr); } } .article-content .wp-block-columns.has-7-columns.alignfull,.editor-styles-wrapper .wp-block-columns.has-7-columns.alignfull { padding-left: var(--padding-container-horizontal); padding-right: var(--padding-container-horizontal); width: 100%; } @media (max-width: 900px) { .article-content .wp-block-columns.has-7-columns,.editor-styles-wrapper .wp-block-columns.has-7-columns { display: grid; grid-gap: 1em; grid-template-columns: repeat(7, 1fr); width: 100%; } .article-content .wp-block-columns.has-7-columns .wp-block-column,.editor-styles-wrapper .wp-block-columns.has-7-columns .wp-block-column { margin: 0; width: 100%; } } @media (max-width: 480px) { .article-content .wp-block-columns.has-7-columns,.editor-styles-wrapper .wp-block-columns.has-7-columns { grid-template-columns: repeat(1, 1fr); } } .article-content .wp-block-columns.has-8-columns.alignfull,.editor-styles-wrapper .wp-block-columns.has-8-columns.alignfull { padding-left: var(--padding-container-horizontal); padding-right: var(--padding-container-horizontal); width: 100%; } @media (max-width: 900px) { .article-content .wp-block-columns.has-8-columns,.editor-styles-wrapper .wp-block-columns.has-8-columns { display: grid; grid-gap: 1em; grid-template-columns: repeat(8, 1fr); width: 100%; } .article-content .wp-block-columns.has-8-columns .wp-block-column,.editor-styles-wrapper .wp-block-columns.has-8-columns .wp-block-column { margin: 0; width: 100%; } } @media (max-width: 480px) { .article-content .wp-block-columns.has-8-columns,.editor-styles-wrapper .wp-block-columns.has-8-columns { grid-template-columns: repeat(1, 1fr); } } .article-content .wp-block-columns.has-9-columns.alignfull,.editor-styles-wrapper .wp-block-columns.has-9-columns.alignfull { padding-left: var(--padding-container-horizontal); padding-right: var(--padding-container-horizontal); width: 100%; } @media (max-width: 900px) { .article-content .wp-block-columns.has-9-columns,.editor-styles-wrapper .wp-block-columns.has-9-columns { display: grid; grid-gap: 1em; grid-template-columns: repeat(9, 1fr); width: 100%; } .article-content .wp-block-columns.has-9-columns .wp-block-column,.editor-styles-wrapper .wp-block-columns.has-9-columns .wp-block-column { margin: 0; width: 100%; } } @media (max-width: 480px) { .article-content .wp-block-columns.has-9-columns,.editor-styles-wrapper .wp-block-columns.has-9-columns { grid-template-columns: repeat(1, 1fr); } } .article-content .wp-block-cover__inner-container,.editor-styles-wrapper .wp-block-cover__inner-container { padding-left: var(--padding-container-horizontal); padding-right: var(--padding-container-horizontal); } .article-content .wp-block-cover__inner-container p,.editor-styles-wrapper .wp-block-cover__inner-container p { color: var(--color-white); line-height: var(--line-height-core-heading); } .article-content .wp-block-embed iframe,.article-content .wp-block-embed video,.editor-styles-wrapper .wp-block-embed iframe,.editor-styles-wrapper .wp-block-embed video { max-width: 100%; width: 100%; } @media (max-width: 1480px) { .article-content .wp-block-embed.alignfull,.article-content .wp-block-embed.alignwide,.editor-styles-wrapper .wp-block-embed.alignfull,.editor-styles-wrapper .wp-block-embed.alignwide { width: calc(100% - var(--padding-container-horizontal)*2); } } .article-content .wp-block-embed.alignfull,.editor-styles-wrapper .wp-block-embed.alignfull { margin-left: 0; margin-right: 0; max-width: 100%; padding-left: 0; padding-right: 0; width: 100%; } .article-content .wp-block-separator,.article-content hr,.editor-styles-wrapper .wp-block-separator,.editor-styles-wrapper hr { background-image: linear-gradient(180deg, transparent 50%, rgba(0,0,0,.3) 0); background-position: 0 50%; background-repeat: repeat-x; background-size: 2px 2px; border: 0; height: 0; margin-bottom: calc(var(--margin-between-paragraphs)*2); margin-top: calc(var(--margin-between-paragraphs)*2); padding-bottom: 1rem; padding-top: 1rem; } .article-content .wp-block-separator.is-style-default,.editor-styles-wrapper .wp-block-separator.is-style-default { max-width: 800px; } .article-content .wp-block-separator:not(.is-style-wide):not(.is-style-dots),.editor-styles-wrapper .wp-block-separator:not(.is-style-wide):not(.is-style-dots) { margin-bottom: calc(var(--margin-between-paragraphs)*2); margin-top: calc(var(--margin-between-paragraphs)*2); opacity: 0.4; width: 100px; } .article-content h1,.article-content h2,.article-content h3,.article-content h4,.article-content h5,.editor-styles-wrapper h1,.editor-styles-wrapper h2,.editor-styles-wrapper h3,.editor-styles-wrapper h4,.editor-styles-wrapper h5 { line-height: var(--line-height-core-heading); } .article-content h1:first-child,.article-content h2:first-child,.article-content h3:first-child,.article-content h4:first-child,.article-content h5:first-child,.article-content h6:first-child,.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 { margin-top: 0; } .article-content .wp-block-image,.editor-styles-wrapper .wp-block-image { display: block; margin-bottom: var(--margin-wp-block-image); margin-top: var(--margin-wp-block-image); } .article-content .wp-block-image.alignfull,.article-content .wp-block-image.alignwide,.editor-styles-wrapper .wp-block-image.alignfull,.editor-styles-wrapper .wp-block-image.alignwide { padding-left: 0; padding-right: 0; } .article-content .wp-block-image .alignfull img,.article-content .wp-block-image .alignwide img,.editor-styles-wrapper .wp-block-image .alignfull img,.editor-styles-wrapper .wp-block-image .alignwide img { width: 100%; } .article-content .wp-block-image .alignfull img,.editor-styles-wrapper .wp-block-image .alignfull img { border-radius: 0; } .article-content .wp-block-image > figure,.editor-styles-wrapper .wp-block-image > figure { display: block; width: auto; } .article-content .wp-block-image > figure.alignleft,.article-content .wp-block-image > figure.alignright,.editor-styles-wrapper .wp-block-image > figure.alignleft,.editor-styles-wrapper .wp-block-image > figure.alignright { max-width: var(--width-child-img); } .article-content .wp-block-image figcaption,.editor-styles-wrapper .wp-block-image figcaption { margin-bottom: 2rem; } .article-content .wp-block-image .aligncenter,.editor-styles-wrapper .wp-block-image .aligncenter { text-align: center; } .article-content .wp-block-image .aligncenter img,.editor-styles-wrapper .wp-block-image .aligncenter img { margin-left: auto; margin-right: auto; } @media (max-width: 1480px) { .article-content .wp-block-image.alignwide,.editor-styles-wrapper .wp-block-image.alignwide { width: calc(100% - var(--padding-container-horizontal)*2); } } @media (max-width: 480px) { .article-content .wp-block-image.aligncenter img,.article-content .wp-block-image.alignleft img,.article-content .wp-block-image.alignright img,.editor-styles-wrapper .wp-block-image.aligncenter img,.editor-styles-wrapper .wp-block-image.alignleft img,.editor-styles-wrapper .wp-block-image.alignright img { float: none; height: auto; width: 100%; } } .article-content ol,.article-content ul,.editor-styles-wrapper ol,.editor-styles-wrapper ul { color: var(--color-paragraph); list-style-position: outside; width: calc(100% - var(--padding-container-horizontal)*2); } .article-content ul,.editor-styles-wrapper ul { list-style-type: "• "; -webkit-padding-start: 1em; padding-inline-start: 1em; } .article-content ol,.editor-styles-wrapper ol { -webkit-padding-start: 1.25em; padding-inline-start: 1.25em; } .article-content li::marker,.editor-styles-wrapper li::marker { color: var(--color-link-text); font-size: var(--font-size-16); } .article-content .has-large-font-size,.article-content .has-larger-font-size,.editor-styles-wrapper .has-large-font-size,.editor-styles-wrapper .has-larger-font-size { line-height: var(--line-height-headings); } @media (max-width: 480px) { .article-content .has-large-font-size,.editor-styles-wrapper .has-large-font-size { font-size: var(--font-size-18); } .article-content .has-larger-font-size,.editor-styles-wrapper .has-larger-font-size { font-size: var(--font-size-22); } } @media (max-width: 480px) { } @media (max-width: 1480px) { .article-content .has-background,.editor-styles-wrapper .has-background { width: calc(100% - var(--padding-container-horizontal)*2); } .article-content .wp-block-preformatted,.editor-styles-wrapper .wp-block-preformatted { margin-left: var(--padding-container-horizontal); margin-right: var(--padding-container-horizontal); width: calc(100% - var(--padding-container-horizontal)*4); } } @media (max-width: 1480px) { } .article-content .wp-block-pullquote,.editor-styles-wrapper .wp-block-pullquote { border-color: var(--color-blockquote); border-width: 3px; display: grid; } .article-content .wp-block-pullquote [aria-label="Pullquote citation text"],.article-content .wp-block-pullquote cite,.editor-styles-wrapper .wp-block-pullquote [aria-label="Pullquote citation text"],.editor-styles-wrapper .wp-block-pullquote cite { display: block; margin-top: 3rem; } @media (max-width: 1480px) { .article-content .wp-block-pullquote,.editor-styles-wrapper .wp-block-pullquote { width: calc(100% - var(--padding-container-horizontal)*2); } } .article-content .wp-block-pullquote.alignfull,.article-content .wp-block-pullquote.alignwide,.editor-styles-wrapper .wp-block-pullquote.alignfull,.editor-styles-wrapper .wp-block-pullquote.alignwide { padding-left: 0; padding-right: 0; } .article-content .wp-block-pullquote.alignfull blockquote,.article-content .wp-block-pullquote.alignwide blockquote,.editor-styles-wrapper .wp-block-pullquote.alignfull blockquote,.editor-styles-wrapper .wp-block-pullquote.alignwide blockquote { justify-self: center; } @media (max-width: 1480px) { .article-content .wp-block-pullquote.alignfull,.article-content .wp-block-pullquote.alignwide,.editor-styles-wrapper .wp-block-pullquote.alignfull,.editor-styles-wrapper .wp-block-pullquote.alignwide { margin-left: var(--padding-container-horizontal); margin-right: var(--padding-container-horizontal); } } .article-content .wp-block-pullquote.alignfull,.editor-styles-wrapper .wp-block-pullquote.alignfull { margin-left: var(--padding-container-horizontal); margin-right: var(--padding-container-horizontal); width: calc(100% - var(--padding-container-horizontal)*2); } .article-content th,.editor-styles-wrapper th { backface-visibility: hidden; background-color: var(--color-scorpion); color: var(--color-white); font-weight: var(--font-weight-bold); overflow: hidden; text-align: left; } .article-content td,.editor-styles-wrapper td { color: var(--color-black); } .article-content .wp-block-table td,.article-content .wp-block-table th,.article-content td,.article-content th,.editor-styles-wrapper .wp-block-table td,.editor-styles-wrapper .wp-block-table th,.editor-styles-wrapper td,.editor-styles-wrapper th { border: 0; font-family: var(--font-paragraph); font-size: var(--font-size-14); height: 2rem; padding: 0.6rem 1.5rem; } .article-content tr:nth-child(even),.editor-styles-wrapper tr:nth-child(even) { background-color: var(--color-background-table-cell-even); } .article-content tr:nth-child(odd),.editor-styles-wrapper tr:nth-child(odd) { background-color: var(--color-background-table-cell-odd); } .article-content .wp-block-table thead,.article-content thead,.editor-styles-wrapper .wp-block-table thead,.editor-styles-wrapper thead { border: 0; } .article-content .wp-block-table thead th:first-child,.article-content thead th:first-child,.editor-styles-wrapper .wp-block-table thead th:first-child,.editor-styles-wrapper thead th:first-child { border-top-left-radius: 8px; } .article-content .wp-block-table thead th:last-child,.article-content thead th:last-child,.editor-styles-wrapper .wp-block-table thead th:last-child,.editor-styles-wrapper thead th:last-child { border-top-right-radius: 8px; } .article-content table,.editor-styles-wrapper table { border-collapse: collapse; border-spacing: 0; } @media (max-width: 1480px) { .article-content .wp-block-table,.editor-styles-wrapper .wp-block-table { width: calc(100% - var(--padding-container-horizontal)*2); } } .article-content .wp-block-table.alignfull,.editor-styles-wrapper .wp-block-table.alignfull { margin-left: var(--padding-container-horizontal); margin-right: var(--padding-container-horizontal); width: calc(100% - var(--padding-container-horizontal)*2); } @media (max-width: 1480px) { .article-content .wp-block-table.alignwide,.editor-styles-wrapper .wp-block-table.alignwide { margin-left: var(--padding-container-horizontal); margin-right: var(--padding-container-horizontal); width: calc(100% - var(--padding-container-horizontal)*2); } .article-content .wp-block-verse,.editor-styles-wrapper .wp-block-verse { margin-left: var(--padding-container-horizontal); margin-right: var(--padding-container-horizontal); width: calc(100% - var(--padding-container-horizontal)*4); } } @media (max-width: 1480px) { } .article-content .wp-block-video video,.editor-styles-wrapper .wp-block-video video { max-width: 100%; width: 100%; } @media (max-width: 1480px) { .article-content .wp-block-video.alignwide,.editor-styles-wrapper .wp-block-video.alignwide { width: calc(100% - var(--padding-container-horizontal)*2); } } .article-content .wp-block-video.alignwide,.editor-styles-wrapper .wp-block-video.alignwide { padding-left: 0; padding-right: 0; } .article-content .wp-block-video.alignfull,.editor-styles-wrapper .wp-block-video.alignfull { margin-left: 0; margin-right: 0; max-width: 100%; padding-left: 0; padding-right: 0; width: 100%; } .article-content .is-style-boxed,.article-content .wp-block.is-style-boxed,.editor-styles-wrapper .is-style-boxed,.editor-styles-wrapper .wp-block.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) { .article-content .is-style-boxed,.editor-styles-wrapper .is-style-boxed { transform: translate(2rem, 0); } } .article-content .wp-block-file .wp-block-file__button,.editor-styles-wrapper .wp-block-file .wp-block-file__button { font-size: var(--font-size-16); line-height: 20.9091px; font-size: 0.8em; padding: 0.3em 0.8em; } .editor-styles-wrapper .block-error,.site-main .block-error { background-color: var(--color-error-block-background); border: 1px solid var(--color-error-block-border); border-left: 10px solid var(--color-error); } .editor-styles-wrapper .block-error .container,.site-main .block-error .container { padding-bottom: 2rem; padding-top: 2rem; } .editor-styles-wrapper .block-error p,.site-main .block-error p { font-size: var(--font-size-14); } .editor-styles-wrapper .block-error p.error-message,.site-main .block-error p.error-message { font-size: var(--font-size-16); } .editor-styles-wrapper .block-error h2,.site-main .block-error h2 { font-size: var(--font-size-h4); } .article-content .alignleft > *,.editor-styles-wrapper .alignleft > * { float: left; } .article-content .alignright > *,.editor-styles-wrapper .alignright > * { float: right; } .article-content .alignleft > img,.editor-styles-wrapper .alignleft > img { margin-bottom: var(--margin-between-paragraphs); margin-right: var(--padding-container-horizontal); margin-top: var(--margin-between-paragraphs); } .article-content .alignleft > img + figcaption,.editor-styles-wrapper .alignleft > img + figcaption { margin-top: 0; } .article-content .alignright > img,.editor-styles-wrapper .alignright > img { margin-bottom: var(--margin-between-paragraphs); margin-left: var(--padding-container-horizontal); margin-top: var(--margin-between-paragraphs); } .article-content .alignright > img + figcaption,.editor-styles-wrapper .alignright > img + figcaption { margin-top: 0; } .article-content .alignwide,.editor-styles-wrapper .alignwide { max-width: 1200px; padding-left: var(--padding-container-horizontal); padding-right: var(--padding-container-horizontal); width: 100%; } @media (min-width: 1240px) { .article-content .alignwide,.editor-styles-wrapper .alignwide { padding-left: 0; padding-right: 0; } } .article-content .alignfull,.editor-styles-wrapper .alignfull { max-width: 100%; padding-left: 0; padding-right: 0; width: 100%; } .article-content .alignfull.wp-block-image img,.editor-styles-wrapper .alignfull.wp-block-image img { border-radius: 0; } @media (min-width: 840px) { .article-content .alignfull,.editor-styles-wrapper .alignfull { margin-bottom: var(--padding-block); margin-top: var(--padding-block); max-width: 100%; width: 100%; } } .article-content cite,.article-content figcaption,.article-content small,.editor-styles-wrapper cite,.editor-styles-wrapper figcaption,.editor-styles-wrapper small { border: 0; color: var(--color-caption); font-size: var(--font-size-captions); font-style: normal; margin: 3rem auto 6rem; max-width: 800px; padding-bottom: 0; text-align: center; width: 100%; } @media (max-width: 480px) { .article-content cite,.article-content figcaption,.article-content small,.editor-styles-wrapper cite,.editor-styles-wrapper figcaption,.editor-styles-wrapper small { margin-top: 2rem; } } .article-content .wp-block-image .aligncenter > figcaption,.article-content .wp-block-image .alignright > figcaption,.article-content .wp-block-image figcaption,.article-content .wp-block-image.is-resized > figcaption,.editor-styles-wrapper .wp-block-image .aligncenter > figcaption,.editor-styles-wrapper .wp-block-image .alignright > figcaption,.editor-styles-wrapper .wp-block-image figcaption,.editor-styles-wrapper .wp-block-image.is-resized > figcaption { display: block; width: 100%; } .article-content cite,.editor-styles-wrapper cite { margin-bottom: 0; } .article-content img,.editor-styles-wrapper 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 hsla(0,0%,9%,.2), 0 0 0 2px var(--color-white) inset; color: var(--color-paragraph); display: inline-block; line-height: 1.4; padding: 0 0.5rem; text-shadow: 0 1px 0 var(--color-white); white-space: nowrap; } a { color: var(--color-link-text); text-decoration: underline; -webkit-text-decoration-color: var(--color-link-text); text-decoration-color: var(--color-link-text); text-underline-offset: 6px; transition: all 50ms; } a:focus,a:hover { color: var(--color-link-text-hover); -webkit-text-decoration-color: var(--color-link-text-hover); text-decoration-color: var(--color-link-text-hover); } @media (prefers-reduced-motion: no-preference) { a:focus { outline-offset: 5px; transition: outline-offset 0.25s ease; } } .entry-footer a,.site-footer a,.site-header a { text-decoration: none; } p { color: var(--color-paragraph); line-height: var(--line-height-paragraphs-blog); } /*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImdsb2JhbC5jc3MiLCJoZWxwZXJzL19zYW5pdGl6ZS5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL3Nhbml0aXplLmNzcy9yZWR1Y2UtbW90aW9uLmNzcyIsImhlbHBlcnMvX2JveC1tb2RlbC5zY3NzIiwiaGVscGVycy9faW1hZ2VzLnNjc3MiLCJ2YXJpYWJsZXMvX2NvbG9ycy5zY3NzIiwidmFyaWFibGVzL19mb250LWZhbWlseS5zY3NzIiwidmFyaWFibGVzL19mb250LXNpemUuc2NzcyIsImhlbHBlcnMvX3R5cG9ncmFwaHkuc2NzcyIsInZhcmlhYmxlcy9fZm9udC1mYWNlLnNjc3MiLCJ2YXJpYWJsZXMvX2Zvcm1zLnNjc3MiLCJ2YXJpYWJsZXMvX3NwYWNpbmdzLnNjc3MiLCJiYXNlL19hY2Nlc3NpYmlsaXR5LnNjc3MiLCJuYXZpZ2F0aW9uL19uYXYtZGVza3RvcC5zY3NzIiwibmF2aWdhdGlvbi9fbmF2LW1vYmlsZS5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2hhbWJ1cmdlcnMvX3Nhc3MvaGFtYnVyZ2Vycy9oYW1idXJnZXJzLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvaGFtYnVyZ2Vycy9fc2Fzcy9oYW1idXJnZXJzL19iYXNlLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvaGFtYnVyZ2Vycy9fc2Fzcy9oYW1idXJnZXJzL3R5cGVzL18zZHguc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9oYW1idXJnZXJzL19zYXNzL2hhbWJ1cmdlcnMvdHlwZXMvXzNkeC1yLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvaGFtYnVyZ2Vycy9fc2Fzcy9oYW1idXJnZXJzL3R5cGVzL18zZHkuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9oYW1idXJnZXJzL19zYXNzL2hhbWJ1cmdlcnMvdHlwZXMvXzNkeS1yLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvaGFtYnVyZ2Vycy9fc2Fzcy9oYW1idXJnZXJzL3R5cGVzL18zZHh5LnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvaGFtYnVyZ2Vycy9fc2Fzcy9oYW1idXJnZXJzL3R5cGVzL18zZHh5LXIuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9oYW1idXJnZXJzL19zYXNzL2hhbWJ1cmdlcnMvdHlwZXMvX2Fycm93LnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvaGFtYnVyZ2Vycy9fc2Fzcy9oYW1idXJnZXJzL3R5cGVzL19hcnJvdy1yLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvaGFtYnVyZ2Vycy9fc2Fzcy9oYW1idXJnZXJzL3R5cGVzL19hcnJvd2FsdC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2hhbWJ1cmdlcnMvX3Nhc3MvaGFtYnVyZ2Vycy90eXBlcy9fYXJyb3dhbHQtci5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2hhbWJ1cmdlcnMvX3Nhc3MvaGFtYnVyZ2Vycy90eXBlcy9fYXJyb3d0dXJuLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvaGFtYnVyZ2Vycy9fc2Fzcy9oYW1idXJnZXJzL3R5cGVzL19hcnJvd3R1cm4tci5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2hhbWJ1cmdlcnMvX3Nhc3MvaGFtYnVyZ2Vycy90eXBlcy9fYm9yaW5nLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvaGFtYnVyZ2Vycy9fc2Fzcy9oYW1idXJnZXJzL3R5cGVzL19jb2xsYXBzZS5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2hhbWJ1cmdlcnMvX3Nhc3MvaGFtYnVyZ2Vycy90eXBlcy9fY29sbGFwc2Utci5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2hhbWJ1cmdlcnMvX3Nhc3MvaGFtYnVyZ2Vycy90eXBlcy9fZWxhc3RpYy5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2hhbWJ1cmdlcnMvX3Nhc3MvaGFtYnVyZ2Vycy90eXBlcy9fZWxhc3RpYy1yLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvaGFtYnVyZ2Vycy9fc2Fzcy9oYW1idXJnZXJzL3R5cGVzL19lbXBoYXRpYy5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2hhbWJ1cmdlcnMvX3Nhc3MvaGFtYnVyZ2Vycy90eXBlcy9fZW1waGF0aWMtci5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2hhbWJ1cmdlcnMvX3Nhc3MvaGFtYnVyZ2Vycy90eXBlcy9fbWludXMuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9oYW1idXJnZXJzL19zYXNzL2hhbWJ1cmdlcnMvdHlwZXMvX3NsaWRlci5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2hhbWJ1cmdlcnMvX3Nhc3MvaGFtYnVyZ2Vycy90eXBlcy9fc2xpZGVyLXIuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9oYW1idXJnZXJzL19zYXNzL2hhbWJ1cmdlcnMvdHlwZXMvX3NwaW4uc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9oYW1idXJnZXJzL19zYXNzL2hhbWJ1cmdlcnMvdHlwZXMvX3NwaW4tci5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2hhbWJ1cmdlcnMvX3Nhc3MvaGFtYnVyZ2Vycy90eXBlcy9fc3ByaW5nLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvaGFtYnVyZ2Vycy9fc2Fzcy9oYW1idXJnZXJzL3R5cGVzL19zcHJpbmctci5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2hhbWJ1cmdlcnMvX3Nhc3MvaGFtYnVyZ2Vycy90eXBlcy9fc3RhbmQuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9oYW1idXJnZXJzL19zYXNzL2hhbWJ1cmdlcnMvdHlwZXMvX3N0YW5kLXIuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9oYW1idXJnZXJzL19zYXNzL2hhbWJ1cmdlcnMvdHlwZXMvX3NxdWVlemUuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9oYW1idXJnZXJzL19zYXNzL2hhbWJ1cmdlcnMvdHlwZXMvX3ZvcnRleC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2hhbWJ1cmdlcnMvX3Nhc3MvaGFtYnVyZ2Vycy90eXBlcy9fdm9ydGV4LXIuc2NzcyIsImxheW91dC9fZ2VuZXJhbC5zY3NzIiwidmFyaWFibGVzL19icmVha3BvaW50cy5zY3NzIiwibGF5b3V0L19wcmludC5zY3NzIiwibGF5b3V0L190eXBvZ3JhcGh5LnNjc3MiLCJsYXlvdXQvX3NpdGUtaGVhZGVyLnNjc3MiLCJsYXlvdXQvX3NpdGUtZm9vdGVyLnNjc3MiLCJsYXlvdXQvX2Zvcm1zLnNjc3MiLCJjb21wb25lbnRzL19idXR0b24uc2NzcyIsImNvbXBvbmVudHMvX2J1dHRvbi1zaXplLXNtYWxsLnNjc3MiLCJjb21wb25lbnRzL19idXR0b24tc2l6ZS1sYXJnZS5zY3NzIiwiY29tcG9uZW50cy9fYnV0dG9uLXN0eWxlLWdob3N0LnNjc3MiLCJsYXlvdXQvX2Jsb2cuc2NzcyIsImxheW91dC9fd29yZHByZXNzLnNjc3MiLCJmZWF0dXJlcy9fdG9wLnNjc3MiLCJmZWF0dXJlcy9fZ2FsbGVyeS5zY3NzIiwiZmVhdHVyZXMvX3BhZ2luYXRpb24uc2NzcyIsImZlYXR1cmVzL19ncmF2aXR5LWZvcm1zLnNjc3MiLCJ2aWV3cy9fc2VhcmNoLnNjc3MiLCJ2aWV3cy9fNDA0LnNjc3MiLCJ2aWV3cy9fY29tbWVudHMuc2NzcyIsImd1dGVuYmVyZy9sYXlvdXQvX2NvbnRlbnQuc2NzcyIsImd1dGVuYmVyZy9ibG9ja3MvX2NvcmUtYmxvY2txdW90ZS5zY3NzIiwiZ3V0ZW5iZXJnL2Jsb2Nrcy9fY29yZS1idXR0b25zLnNjc3MiLCJndXRlbmJlcmcvYmxvY2tzL19jb3JlLWNvZGUuc2NzcyIsImd1dGVuYmVyZy9ibG9ja3MvX2NvcmUtY29sdW1ucy5zY3NzIiwiZ3V0ZW5iZXJnL2Jsb2Nrcy9fY29yZS1jb3Zlci5zY3NzIiwiZ3V0ZW5iZXJnL2Jsb2Nrcy9fY29yZS1lbWJlZC5zY3NzIiwiZ3V0ZW5iZXJnL2Jsb2Nrcy9fY29yZS1zZXBhcmF0b3Iuc2NzcyIsImd1dGVuYmVyZy9ibG9ja3MvX2NvcmUtaGVhZGluZy5zY3NzIiwiZ3V0ZW5iZXJnL2Jsb2Nrcy9fY29yZS1pbWFnZS5zY3NzIiwiZ3V0ZW5iZXJnL2Jsb2Nrcy9fY29yZS1saXN0LnNjc3MiLCJndXRlbmJlcmcvYmxvY2tzL19jb3JlLXBhcmFncmFwaC5zY3NzIiwiZ3V0ZW5iZXJnL2Jsb2Nrcy9fY29yZS1wcmVmb3JtYXR0ZWQuc2NzcyIsImd1dGVuYmVyZy9ibG9ja3MvX2NvcmUtcHVsbHF1b3RlLnNjc3MiLCJndXRlbmJlcmcvYmxvY2tzL19jb3JlLXRhYmxlLnNjc3MiLCJndXRlbmJlcmcvYmxvY2tzL19jb3JlLXZlcnNlLnNjc3MiLCJndXRlbmJlcmcvYmxvY2tzL19jb3JlLXZpZGVvLnNjc3MiLCJndXRlbmJlcmcvYmxvY2tzL19ib3hlZC5zY3NzIiwiZ3V0ZW5iZXJnL2Jsb2Nrcy9fYnV0dG9uLWZpbGUuc2NzcyIsImd1dGVuYmVyZy9ibG9ja3MvX2Vycm9yLnNjc3MiLCJndXRlbmJlcmcvZm9ybWF0dGluZy9fYWxpZ24uc2NzcyIsImd1dGVuYmVyZy9mb3JtYXR0aW5nL19jYXB0aW9uLnNjc3MiLCJndXRlbmJlcmcvZm9ybWF0dGluZy9faW1nLnNjc3MiLCJndXRlbmJlcmcvZm9ybWF0dGluZy9fa2JkLnNjc3MiLCJndXRlbmJlcmcvZm9ybWF0dGluZy9fbGluay5zY3NzIiwiY29tcG9uZW50cy9fbGluay5zY3NzIiwiZ3V0ZW5iZXJnL2Zvcm1hdHRpbmcvX3BhcmFncmFwaC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGdCQUFnQjtBQ0VoQjs7O0VBQUE7QUFLQTtFQUdFLDRCQUFBLEVBQUEsTUFBQTtFQUNBLHNCQUFBLEVBQUEsTUFBQTtBRERGOztBQ0lBOzs7SUFBQTtBQUtBO0VBRUUsd0JBQUEsRUFBQSxNQUFBO0VBQ0EsdUJBQUEsRUFBQSxNQUFBO0FERkY7O0FDS0E7Ozs7Ozs7SUFBQTtBQVNBO0VBQ0UsZUFBQSxFQUFBLE1BQUE7RUFDQSxnQkFBQSxFQUFBLE1BQUE7RUFDQSx5QkFBQSxFQUFBLE1BQUE7RUFDQSxXQUFBLEVBQUEsTUFBQTtFQUNBLHdDQUFBLEVBQUEsTUFBQTtFQUNBLDhCQUFBO1VBQUEsc0JBQUEsRUFBQSxNQUFBO0FESEY7O0FDTUE7aUZBQUE7QUFHQTs7SUFBQTtBQUlBO0VBQ0UsU0FBQTtBRExGOztBQ1FBOzs7SUFBQTtBQUtBO0VBRUUsY0FBQSxFQUFBLE1BQUE7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QTtFQUNBLHVDQUFBO0VBQ0EsbUJBQUE7QTNGNnJJRjs7QTRGdHNJQTtFQ0VFLDZCQUFBO0VBR0EsMEJBQUE7RUFDQSxxREFBQTtVQUFBLDZDQUFBO0VBQ0EsMEJBQUE7RUFDQSxvQkFBQTtBN0Zzc0lGO0E2RnBzSUU7RUFFRSxtQ0FBQTtFQUNBLDJEQUFBO1VBQUEsbURBQUE7QTdGcXNJSjtBNkYvcklFO0VBQ0U7SUFDRSxtQkFBQTtJQUNBLHFDQUFBO0U3RmlzSUo7QUFDRjs7QTRGaHRJRTtFQUNFLHFCQUFBO0E1RnF0SUo7O0E4Rjl0SUE7RUFDRSw2QkFBQTtFQUNBLCtDQUFBO0E5Rml1SUYiLCJmaWxlIjoiZ2xvYmFsLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIkBjaGFyc2V0IFwiVVRGLThcIjtcbi8qKlxuICogMS4gQWRkIGJvcmRlciBib3ggc2l6aW5nIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICogMi4gQmFja2dyb3VuZHMgZG8gbm90IHJlcGVhdCBieSBkZWZhdWx0IChvcGluaW9uYXRlZCkuXG4gKi9cbiosXG46OmJlZm9yZSxcbjo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OyAvKiAyICovXG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cbn1cblxuLyoqXG4gICAqIDEuIEFkZCB0ZXh0IGRlY29yYXRpb24gaW5oZXJpdGFuY2UgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAqIDIuIEFkZCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW5oZXJpdGFuY2UgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAqL1xuOjpiZWZvcmUsXG46OmFmdGVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpbmhlcml0OyAvKiAxICovXG4gIHZlcnRpY2FsLWFsaWduOiBpbmhlcml0OyAvKiAyICovXG59XG5cbi8qKlxuICAgKiAxLiBVc2UgdGhlIGRlZmF1bHQgY3Vyc29yIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgKiAyLiBDaGFuZ2UgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgKiAzLiBCcmVha3Mgd29yZHMgdG8gcHJldmVudCBvdmVyZmxvdyBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAgICogNC4gVXNlIGEgNC1zcGFjZSB0YWIgd2lkdGggaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAqIDUuIFJlbW92ZSB0aGUgZ3JleSBoaWdobGlnaHQgb24gbGlua3MgaW4gaU9TIChvcGluaW9uYXRlZCkuXG4gICAqIDYuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW4gaU9TLlxuICAgKi9cbjp3aGVyZSg6cm9vdCkge1xuICBjdXJzb3I6IGRlZmF1bHQ7IC8qIDEgKi9cbiAgbGluZS1oZWlnaHQ6IDEuNTsgLyogMiAqL1xuICBvdmVyZmxvdy13cmFwOiBicmVhay13b3JkOyAvKiAzICovXG4gIHRhYi1zaXplOiA0OyAvKiA0ICovXG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7IC8qIDUgKi9cbiAgdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLyogNiAqL1xufVxuXG4vKiBTZWN0aW9uc1xuICAgKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gICAqIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgKi9cbjp3aGVyZShib2R5KSB7XG4gIG1hcmdpbjogMDtcbn1cblxuLyoqXG4gICAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIG9mIGJvcmRlciBjb2xvciBpbiBGaXJlZm94LlxuICAgKiAyLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBGaXJlZm94LlxuICAgKi9cbjp3aGVyZShocikge1xuICBjb2xvcjogaW5oZXJpdDsgLyogMSAqL1xuICBoZWlnaHQ6IDA7IC8qIDIgKi9cbn1cblxuLyoqXG4gICAqIFJlbW92ZSB0aGUgbGlzdCBzdHlsZSBvbiBuYXZpZ2F0aW9uIGxpc3RzIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgKi9cbjp3aGVyZShuYXYpIDp3aGVyZShvbCwgdWwpIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBwYWRkaW5nOiAwO1xufVxuXG4vKipcbiAgICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAgICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICAgKiAzLiBQcmV2ZW50IG92ZXJmbG93IG9mIHRoZSBjb250YWluZXIgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAqL1xuOndoZXJlKHByZSkge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8qIDEgKi9cbiAgZm9udC1zaXplOiAxZW07IC8qIDIgKi9cbiAgb3ZlcmZsb3c6IGF1dG87IC8qIDMgKi9cbn1cblxuLyoqXG4gICAqIENoYW5nZSB0aGUgZmlsbCBjb2xvciB0byBtYXRjaCB0aGUgdGV4dCBjb2xvciBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAgICovXG46d2hlcmUoc3ZnOm5vdChbZmlsbF0pKSB7XG4gIGZpbGw6IGN1cnJlbnRDb2xvcjtcbn1cblxuLyogRm9ybXNcbiAgICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICAgKiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgYnV0dG9ucyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAgICovXG46d2hlcmUoYnV0dG9uLCBbdHlwZT1idXR0b24gaV0sIFt0eXBlPXJlc2V0IGldLCBbdHlwZT1zdWJtaXQgaV0pIHtcbiAgYXBwZWFyYW5jZTogYnV0dG9uO1xufVxuXG4vKipcbiAgICogMS4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpLlxuICAgKiAzLiBDaGFuZ2UgdGhlIHJlc2l6ZSBkaXJlY3Rpb24gaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAqL1xuOndoZXJlKHRleHRhcmVhKSB7XG4gIG1hcmdpbjogMDsgLyogMSAqL1xuICByZXNpemU6IHZlcnRpY2FsOyAvKiAzICovXG59XG5cbi8qKlxuICAgKiAxLiBDb3JyZWN0IHRoZSBvZGQgYXBwZWFyYW5jZSBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkuXG4gICAqIDIuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxuICAgKi9cbjp3aGVyZShbdHlwZT1zZWFyY2ggaV0pIHtcbiAgYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvKiAxICovXG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4OyAvKiAyICovXG59XG5cbi8qKlxuICAgKiBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBTYWZhcmkuXG4gICAqL1xuOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vKipcbiAgICogQ29ycmVjdCB0aGUgdGV4dCBzdHlsZSBvZiBwbGFjZWhvbGRlcnMgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuICAgKi9cbjo6aW5wdXQtcGxhY2Vob2xkZXIge1xuICBjb2xvcjogaW5oZXJpdDtcbiAgb3BhY2l0eTogMC41NDtcbn1cblxuLyoqXG4gICAqIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkgb24gbWFjT1MuXG4gICAqL1xuOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLyoqXG4gICAqIDEuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSB1cGxvYWQgYnV0dG9ucyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAgICogMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuICAgKi9cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICBhcHBlYXJhbmNlOiBidXR0b247IC8qIDEgKi9cbiAgZm9udDogaW5oZXJpdDsgLyogMiAqL1xufVxuXG4vKlxuICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBTYWZhcmkuXG4gICAqL1xuOndoZXJlKGRldGFpbHMgPiBzdW1tYXJ5OmZpcnN0LW9mLXR5cGUpIHtcbiAgZGlzcGxheTogbGlzdC1pdGVtO1xufVxuXG4vKiBBY2Nlc3NpYmlsaXR5XG4gICAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAgICogQ2hhbmdlIHRoZSBjdXJzb3Igb24gYnVzeSBlbGVtZW50cyBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAgICovXG46d2hlcmUoW2FyaWEtYnVzeT10cnVlIGldKSB7XG4gIGN1cnNvcjogcHJvZ3Jlc3M7XG59XG5cbi8qXG4gICAqIENoYW5nZSB0aGUgY3Vyc29yIG9uIGRpc2FibGVkLCBub3QtZWRpdGFibGUsIG9yIG90aGVyd2lzZVxuICAgKiBpbm9wZXJhYmxlIGVsZW1lbnRzIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgKi9cbjp3aGVyZShbYXJpYS1kaXNhYmxlZD10cnVlIGldLCBbZGlzYWJsZWRdKSB7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG5cbi8qXG4gICAqIENoYW5nZSB0aGUgZGlzcGxheSBvbiB2aXN1YWxseSBoaWRkZW4gYWNjZXNzaWJsZSBlbGVtZW50c1xuICAgKiBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAgICovXG46d2hlcmUoW2FyaWEtaGlkZGVuPWZhbHNlIGldW2hpZGRlbl0pIHtcbiAgZGlzcGxheTogaW5pdGlhbDtcbn1cblxuOndoZXJlKFthcmlhLWhpZGRlbj1mYWxzZSBpXVtoaWRkZW5dOm5vdCg6Zm9jdXMpKSB7XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cblxuLypcbiAqIDEuIFJlbW92ZSBhbmltYXRpb25zIHdoZW4gbW90aW9uIGlzIHJlZHVjZWQgKG9waW5pb25hdGVkKS5cbiAqIDIuIFJlbW92ZSBmaXhlZCBiYWNrZ3JvdW5kIGF0dGFjaG1lbnRzIHdoZW4gbW90aW9uIGlzIHJlZHVjZWQgKG9waW5pb25hdGVkKS5cbiAqIDMuIFJlbW92ZSB0aW1lZCBzY3JvbGxpbmcgYmVoYXZpb3JzIHdoZW4gbW90aW9uIGlzIHJlZHVjZWQgKG9waW5pb25hdGVkKS5cbiAqIDQuIFJlbW92ZSB0cmFuc2l0aW9ucyB3aGVuIG1vdGlvbiBpcyByZWR1Y2VkIChvcGluaW9uYXRlZCkuXG4gKi9cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gICosXG46OmJlZm9yZSxcbjo6YWZ0ZXIge1xuICAgIGFuaW1hdGlvbi1kZWxheTogLTFtcyAhaW1wb3J0YW50OyAvKiAxICovXG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxbXMgIWltcG9ydGFudDsgLyogMSAqL1xuICAgIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IDEgIWltcG9ydGFudDsgLyogMSAqL1xuICAgIGJhY2tncm91bmQtYXR0YWNobWVudDogaW5pdGlhbCAhaW1wb3J0YW50OyAvKiAyICovXG4gICAgc2Nyb2xsLWJlaGF2aW9yOiBhdXRvICFpbXBvcnRhbnQ7IC8qIDMgKi9cbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwcyAhaW1wb3J0YW50OyAvKiA0ICovXG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHMgIWltcG9ydGFudDsgLyogNCAqL1xuICB9XG59XG5odG1sLFxuKixcbio6OmJlZm9yZSxcbio6OmFmdGVyIHtcbiAgLyogYXV0b3ByZWZpeGVyOiBpZ25vcmUgbmV4dCAqL1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG5pbWcge1xuICAvKiBhdXRvcHJlZml4ZXI6IGlnbm9yZSBuZXh0ICovXG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xufVxuXG4uaW1hZ2UtYmFja2dyb3VuZCA+IGltZyB7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xufVxuXG4uaW1hZ2UtYmFja2dyb3VuZCB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmltYWdlLWJhY2tncm91bmQgPiBpbWcsXG4uaW1hZ2UtYmFja2dyb3VuZC1sYXllciB7XG4gIGhlaWdodDogMTAwJTtcbiAgbGVmdDogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiAwO1xufVxuXG46cm9vdCB7XG4gIC0tY29sb3ItYmxhY2s6ICMyMjI7XG4gIC0tY29sb3ItYmxhY2stcm9jazogIzJiMzAzYztcbiAgLS1jb2xvci1ibHVlLWNoYWxrOiAjZWNlNmYyO1xuICAtLWNvbG9yLWVhc3QtYmF5OiAjNTQ1NzczO1xuICAtLWNvbG9yLXBhdHRlbnMtYmx1ZTogI2VhZjFmODtcbiAgLS1jb2xvci1zY2llbmNlLWJsdWU6ICMwMDQ5ZDE7XG4gIC0tY29sb3Itc2NvcnBpb246ICM1ZjVmNWY7XG4gIC0tY29sb3ItdmFsaGFsbGE6ICMyYTJkM2U7XG4gIC0tY29sb3Itd2hpdGU6ICNmZmY7XG4gIC0tY29sb3ItaGVhZGluZzogdmFyKC0tY29sb3ItbWFpbik7XG4gIC0tY29sb3ItbWFpbjogdmFyKC0tY29sb3ItdmFsaGFsbGEpO1xuICAtLWNvbG9yLXBhcmFncmFwaDogdmFyKC0tY29sb3ItZWFzdC1iYXkpO1xuICAtLWNvbG9yLWxpbmstYm9yZGVyLWJvdHRvbTogdmFyKC0tY29sb3Itc2NpZW5jZS1ibHVlKTtcbiAgLS1jb2xvci1saW5rLWJvcmRlci1mb2N1czogdmFyKC0tY29sb3ItYmxhY2spO1xuICAtLWNvbG9yLWxpbmstY29tbWVudDogdmFyKC0tY29sb3Itc2NvcnBpb24pO1xuICAtLWNvbG9yLWxpbmstY29tbWVudC10aW1lLWFuY2hvcjogdmFyKC0tY29sb3ItZWFzdC1iYXkpO1xuICAtLWNvbG9yLWxpbmstZWRpdC1iYWNrZ3JvdW5kLWhvdmVyOiB2YXIoLS1jb2xvci1wYXR0ZW5zLWJsdWUpO1xuICAtLWNvbG9yLWxpbmstZWRpdC1ib3JkZXI6IHZhcigtLWNvbG9yLXBhdHRlbnMtYmx1ZSk7XG4gIC0tY29sb3ItbGluay1lZGl0LXRleHQ6IGNvbG9yLmFkanVzdCgjZWFmMWY4LCAtMjAlKTtcbiAgLS1jb2xvci1saW5rLWVkaXQtdGV4dC1ob3ZlcjogdmFyKC0tY29sb3ItZWFzdC1iYXkpO1xuICAtLWNvbG9yLWxpbmstdGV4dDogdmFyKC0tY29sb3Itc2NpZW5jZS1ibHVlKTtcbiAgLS1jb2xvci1saW5rLXRleHQtZm9jdXM6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgLS1jb2xvci1saW5rLXRleHQtaG92ZXI6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgLS1jb2xvci1saW5rLWJhY2tncm91bmQtaG92ZXI6IHZhcigtLWNvbG9yLWxpbmstdGV4dCk7XG4gIC0tY29sb3ItYmFja2dyb3VuZC1jb2RlLWJsb2NrOiB2YXIoLS1jb2xvci1ibGFjay1yb2NrKTtcbiAgLS1jb2xvci1iYWNrZ3JvdW5kLWNvZGUtaW5saW5lOiAjZjlmMmY0O1xuICAtLWNvbG9yLWJhY2tncm91bmQtZGVmYXVsdDogI2YwZjBmMDtcbiAgLS1jb2xvci1iYWNrZ3JvdW5kLXNoYWRlOiAjMDMwNjFiO1xuICAtLWNvbG9yLWJhY2tncm91bmQtdGFibGUtY2VsbC1vZGQ6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgLS1jb2xvci1iYWNrZ3JvdW5kLXRhYmxlLWNlbGwtZXZlbjogI2YzZjNmMztcbiAgLS1jb2xvci1iYWNrZ3JvdW5kLXRvcDogI2Y1ZjVmNTtcbiAgLS1jb2xvci1iYWNrZ3JvdW5kLXRvcC1ob3ZlcjogI2YwZjBmMDtcbiAgLS1jb2xvci1iYWNrZ3JvdW5kLXRhZzogdmFyKC0tY29sb3ItcGF0dGVucy1ibHVlKTtcbiAgLS1jb2xvci1ibG9ja3F1b3RlOiB2YXIoLS1jb2xvci1zY2llbmNlLWJsdWUpO1xuICAtLWNvbG9yLWNvbW1lbnQtdGV4dDogdmFyKC0tY29sb3ItZWFzdC1iYXkpO1xuICAtLWNvbG9yLWNvbW1lbnQtYXV0aG9yLXRleHQ6IHZhcigtLWNvbG9yLWVhc3QtYmF5KTtcbiAgLS1jb2xvci10YWctYm9yZGVyOiByZ2IoNiAyMiA0MSAvIC4xKTtcbiAgLS1jb2xvci10YWctYm9yZGVyLWhvdmVyOiByZ2IoNiAyMiA0MSAvIC40KTtcbiAgLS1jb2xvci10YWctdGV4dDogdmFyKC0tY29sb3ItYmxhY2spO1xuICAtLWNvbG9yLWNhdGVnb3J5LWJvcmRlcjogI2NkY2ZkNDtcbiAgLS1jb2xvci1jYXRlZ29yeS10ZXh0OiB2YXIoLS1jb2xvci1ibGFjayk7XG4gIC0tY29sb3ItY2FwdGlvbjogIzVjNWM2YTtcbiAgLS1jb2xvci1jb2RlLWJsb2NrOiAjYzcyNTRlO1xuICAtLWNvbG9yLWNvZGUtdGV4dDogI2Y1ZjVmNTtcbiAgLS1jb2xvci1rYmQtYm9yZGVyOiAjY2NjO1xuICAtLWNvbG9yLWtiZC1iYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1wYXR0ZW5zLWJsdWUpO1xuICAtLWNvbG9yLXBhZ2luYXRpb24tdGV4dDogdmFyKC0tY29sb3ItdmFsaGFsbGEpO1xuICAtLWNvbG9yLXBhZ2luYXRpb24tYmFja2dyb3VuZC1ob3ZlcjogdmFyKC0tY29sb3ItdmFsaGFsbGEpO1xuICAtLWNvbG9yLXBhZ2luYXRpb24tYm9yZGVyLWhvdmVyOiB2YXIoLS1jb2xvci12YWxoYWxsYSk7XG4gIC0tY29sb3ItcGFnaW5hdGlvbi10ZXh0LWhvdmVyOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIC0tY29sb3ItcGFnaW5hdGlvbi1iYWNrZ3JvdW5kLWN1cnJlbnQ6IHZhcigtLWNvbG9yLXZhbGhhbGxhKTtcbiAgLS1jb2xvci1wYWdpbmF0aW9uLWJvcmRlci1jdXJyZW50OiB2YXIoLS1jb2xvci12YWxoYWxsYSk7XG4gIC0tY29sb3ItcGFnaW5hdGlvbi10ZXh0LWN1cnJlbnQ6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgLS1jb2xvci10b3AtYXJyb3ctZGFyazogdmFyKC0tY29sb3ItYmxhY2spO1xuICAtLWNvbG9yLXRvcC1hcnJvdy1saWdodDogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAtLWNvbG9yLWVycm9yLWJsb2NrLWJvcmRlcjogI2FkYjJhZDtcbiAgLS1jb2xvci1lcnJvci1ibG9jay1iYWNrZ3JvdW5kOiAjZjlmOWY5O1xuICAtLWNvbG9yLWVycm9yOiAjY2MyZTJlO1xuICAtLWNvbG9yLXN1Y2Nlc3M6ICMyMWFhMTQ7XG4gIC0tY29sb3Itd2FybmluZzogI2NjNzUyZTtcbn1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZGlzcGxheTogYXV0bztcbiAgZm9udC1mYW1pbHk6IFwiSW50ZXJcIjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNDAwO1xuICBzcmM6IHVybChcIi4uLy4uL2ZvbnRzL2ludGVyLTQwMC53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcIi4uLy4uL2ZvbnRzL2ludGVyLTQwMC53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiLi4vLi4vZm9udHMvaW50ZXItNDAwLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtcbn1cbkBmb250LWZhY2Uge1xuICBmb250LWRpc3BsYXk6IGF1dG87XG4gIGZvbnQtZmFtaWx5OiBcIkludGVyXCI7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgc3JjOiB1cmwoXCIuLi8uLi9mb250cy9pbnRlci00MDAtaXRhbGljLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiLi4vLi4vZm9udHMvaW50ZXItNDAwLWl0YWxpYy53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiLi4vLi4vZm9udHMvaW50ZXItNDAwLWl0YWxpYy50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIik7XG59XG5AZm9udC1mYWNlIHtcbiAgZm9udC1kaXNwbGF5OiBhdXRvO1xuICBmb250LWZhbWlseTogXCJJbnRlclwiO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIHNyYzogdXJsKFwiLi4vLi4vZm9udHMvaW50ZXItNTAwLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiLi4vLi4vZm9udHMvaW50ZXItNTAwLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi8uLi9mb250cy9pbnRlci01MDAudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpO1xufVxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZGlzcGxheTogYXV0bztcbiAgZm9udC1mYW1pbHk6IFwiSW50ZXJcIjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNjAwO1xuICBzcmM6IHVybChcIi4uLy4uL2ZvbnRzL2ludGVyLTYwMC53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcIi4uLy4uL2ZvbnRzL2ludGVyLTYwMC53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiLi4vLi4vZm9udHMvaW50ZXItNjAwLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtcbn1cbkBmb250LWZhY2Uge1xuICBmb250LWRpc3BsYXk6IGF1dG87XG4gIGZvbnQtZmFtaWx5OiBcIkludGVyXCI7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgc3JjOiB1cmwoXCIuLi8uLi9mb250cy9pbnRlci03MDAud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCIuLi8uLi9mb250cy9pbnRlci03MDAud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uLy4uL2ZvbnRzL2ludGVyLTcwMC50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIik7XG59XG46cm9vdCB7XG4gIC0tZm9udC1zZXJpZjogc2Fucy1zZXJpZjtcbiAgLS1mb250LXNhbnM6IFwiSW50ZXJcIiwgLWFwcGxlLXN5c3RlbSwgXCJCbGlua01hY1N5c3RlbUZvbnRcIiwgXCJTZWdvZSBVSVwiLCBcIlJvYm90b1wiLCBcIk94eWdlbi1TYW5zXCIsIFwiVWJ1bnR1XCIsIFwiQ2FudGFyZWxsXCIsIFwiSGVsdmV0aWNhIE5ldWVcIiwgc2Fucy1zZXJpZjtcbiAgLS1mb250LW1vbm9zcGFjZTogXCJJbmNvbnNvbGF0YVwiLCBcIk1lbmxvXCIsIFwiTW9uYWNvXCIsIFwiQ29uc29sYXNcIiwgXCJBbmRhbGUgTW9ub1wiLCBcIkJpdHN0cmVhbSBWZXJhIFNhbnMgTW9ub1wiLCBcIkNvdXJpZXIgTmV3XCIsIG1vbm9zcGFjZTtcbiAgLS1mb250LXBhcmFncmFwaDogdmFyKC0tZm9udC1zYW5zKTtcbiAgLS1mb250LWhlYWRpbmc6IHZhcigtLWZvbnQtc2Fucyk7XG59XG5cbjpyb290IHtcbiAgLS1mb250LXNpemUtaGVybzogNTJweDtcbiAgLS1mb250LXNpemUtaDE6IDQwcHg7XG4gIC0tZm9udC1zaXplLWgyOiAzMHB4O1xuICAtLWZvbnQtc2l6ZS1oMzogMjRweDtcbiAgLS1mb250LXNpemUtaDQ6IDIwcHg7XG4gIC0tZm9udC1zaXplLWg1OiAxNnB4O1xuICAtLWZvbnQtc2l6ZS1oNjogMTRweDtcbiAgLS1mb250LXNpemUtMTQ6IDE0cHg7XG4gIC0tZm9udC1zaXplLTE1OiAxNXB4O1xuICAtLWZvbnQtc2l6ZS0xNjogMTZweDtcbiAgLS1mb250LXNpemUtMTc6IDE3cHg7XG4gIC0tZm9udC1zaXplLTE4OiAxOHB4O1xuICAtLWZvbnQtc2l6ZS0yMDogMjBweDtcbiAgLS1mb250LXNpemUtMjI6IDIycHg7XG4gIC0tZm9udC1zaXplLWRlZmF1bHQ6IHZhcigtLWZvbnQtc2l6ZS0xNyk7XG4gIC0tZm9udC1zaXplLXBhcmFncmFwaHM6IHZhcigtLWZvbnQtc2l6ZS0xOCk7XG4gIC0tZm9udC1zaXplLW5hdi10b2dnbGUtbGFiZWw6IDE1cHg7XG4gIC0tZm9udC1zaXplLWNhcHRpb25zOiAxNXB4O1xuICAtLWxpbmUtaGVpZ2h0LWhlYWRpbmdzOiAxLjU7XG4gIC0tbGluZS1oZWlnaHQtY29yZS1oZWFkaW5nOiAxLjIzO1xuICAtLWxpbmUtaGVpZ2h0LXBhcmFncmFwaHM6IDEuNztcbiAgLS1saW5lLWhlaWdodC1wYXJhZ3JhcGhzLWJsb2c6IDEuNzc7XG4gIC0tZm9udC13ZWlnaHQtcmVndWxhcjogNDAwO1xuICAtLWZvbnQtd2VpZ2h0LW1lZGl1bTogNTAwO1xuICAtLWZvbnQtd2VpZ2h0LXNlbWlib2xkOiA2MDA7XG4gIC0tZm9udC13ZWlnaHQtYm9sZDogNzAwO1xuICAtLWZvbnQtd2VpZ2h0LXBhcmFncmFwaHM6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICAtLWZvbnQtd2VpZ2h0LWhlYWRpbmdzOiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICA6cm9vdCB7XG4gICAgLS1mb250LXNpemUtaGVybzogMzhweDtcbiAgICAtLWZvbnQtc2l6ZS1oMTogMzJweDtcbiAgICAtLWZvbnQtc2l6ZS1oMjogMjRweDtcbiAgICAtLWZvbnQtc2l6ZS1oMzogMjFweDtcbiAgICAtLWZvbnQtc2l6ZS1oNDogMThweDtcbiAgICAtLWZvbnQtc2l6ZS1oNTogMTRweDtcbiAgICAtLWZvbnQtc2l6ZS1oNjogMTJweDtcbiAgICAtLWZvbnQtc2l6ZS1wYXJhZ3JhcGhzOiAxNnB4O1xuICAgIC0tZm9udC1zaXplLWRlZmF1bHQ6IDE2cHg7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA0MjBweCkge1xuICA6cm9vdCB7XG4gICAgLS1mb250LXNpemUtMTY6IDE0cHg7XG4gICAgLS1mb250LXNpemUtbmF2LXRvZ2dsZS1sYWJlbDogMTNweDtcbiAgfVxufVxuXG46cm9vdCB7XG4gIC0tY29sb3ItYmFja2dyb3VuZC1pbnB1dC1maWVsZDogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAtLWNvbG9yLWZvcm0tdGV4dDogdmFyKC0tY29sb3ItcGFyYWdyYXBoKTtcbiAgLS1jb2xvci1mb3JtLWxhYmVsLXRleHQ6IHZhcigtLWNvbG9yLWZvcm0tdGV4dCk7XG4gIC0tY29sb3ItcmVxdWlyZWQtbGFiZWwtdGV4dDogdmFyKC0tY29sb3ItZm9ybS10ZXh0KTtcbiAgLS1jb2xvci1ib3JkZXItZm9ybXM6IHZhcigtLWNvbG9yLXBhcmFncmFwaCk7XG4gIC0tY29sb3ItYm9yZGVyLWZvcm1zLWZvY3VzOiB2YXIoLS1jb2xvci1wYXJhZ3JhcGgpO1xuICAtLWNvbG9yLWJ1dHRvbjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAtLWNvbG9yLWJ1dHRvbi1ob3ZlcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAtLWNvbG9yLWJ1dHRvbi1iYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1lYXN0LWJheSk7XG4gIC0tY29sb3ItYnV0dG9uLWJhY2tncm91bmQtaG92ZXI6IHZhcigtLWNvbG9yLXZhbGhhbGxhKTtcbiAgLS1jb2xvci1jaGVja2JveDogdmFyKC0tY29sb3ItZWFzdC1iYXkpO1xuICAtLWNvbG9yLWNoZWNrYm94LW91dGxpbmU6IDAgMCAwIDNweCByZ2IoODQgODcgMTE1IC8gLjIpO1xuICAtLWNvbG9yLWNoZWNrYm94LWJvcmRlci1ob3ZlcjogY29sb3IuYWRqdXN0KCM1NDU3NzMsIDE1JSk7XG4gIC0tY29sb3ItcGxhY2Vob2xkZXI6IHZhcigtLWNvbG9yLXBhcmFncmFwaCk7XG4gIC0tY29sb3ItcGxhY2Vob2xkZXItZm9jdXM6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgLS1vcGFjaXR5LXBsYWNlaG9sZGVyOiAuNDtcbiAgLS1vcGFjaXR5LXBsYWNlaG9sZGVyLWZvY3VzOiAuODtcbiAgLS1ib3JkZXItcmFkaXVzLWNoZWNrYm94OiAzcHg7XG4gIC0tYm9yZGVyLXJhZGl1cy1pbnB1dC1maWVsZDogM3B4O1xuICAtLWJvcmRlci1yYWRpdXMtc2VsZWN0OiAzcHg7XG4gIC0tYm9yZGVyLXdpZHRoLWNoZWNrYm94OiAxcHg7XG4gIC0tYm9yZGVyLXdpZHRoLWlucHV0LWZpZWxkOiAxcHg7XG4gIC0tZm9udC1zaXplLWlucHV0LWZpZWxkczogdmFyKC0tZm9udC1zaXplLTE3KTtcbiAgLS1mb250LXNpemUtaW5wdXQtbGFiZWxzOiB2YXIoLS1mb250LXNpemUtaW5wdXQtZmllbGRzKTtcbiAgLS1mb250LXNpemUtcmVxdWlyZWQtdGV4dC1sYWJlbDogdmFyKC0tZm9udC1zaXplLWlucHV0LWZpZWxkcyk7XG4gIC0tZm9udC1zaXplLXJlcXVpcmVkLWFzdGVyaXNrLWxhYmVsOiAyMnB4O1xuICAtLWZvcm0tY29sdW1uLWdhcDogMnJlbTtcbiAgLS1mb3JtLXJvdy1nYXA6IDJyZW07XG4gIC0tZm9ybS1yZXF1aXJlZC1nYXA6IC41cmVtO1xuICAtLWZvcm0tbGluZS1oZWlnaHQ6IDI0cHg7XG4gIC0tZm9ybS1wYWRkaW5nLXZlcnRpY2FsOiAxcmVtO1xuICAtLWZvcm0tcGFkZGluZy1ob3Jpem9udGFsOiAxLjVyZW07XG4gIC0tZ2FwLWNoZWNrYm94OiAxMHB4O1xuICAtLWdhcC1zZWxlY3QtaWNvbjogMS41cmVtO1xuICAtLWxpbmUtaGVpZ2h0LWNoZWNrYm94OiB2YXIoLS1saW5lLWhlaWdodC1wYXJhZ3JhcGhzKTtcbiAgLS1zaXplLWNoZWNrYm94LW1hcmtlcjogMTJweDtcbiAgLS1zaXplLXJhZGlvLWJ1dHRvbjogMTZweDtcbiAgLS1zaXplLXJhZGlvLWJ1dHRvbi1tYXJrZXI6IDhweDtcbn1cblxuOnJvb3Qge1xuICAtLWdyaWQtZ2FwOiA0LjhyZW07XG4gIC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbDogMnJlbTtcbiAgLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsLWxhcmdlOiA2LjRyZW07XG4gIC0tcGFkZGluZy1jb250YWluZXItdmVydGljYWw6IDYuNHJlbTtcbiAgLS1wYWRkaW5nLXNpdGUtaGVhZGVyLXZlcnRpY2FsOiAycmVtO1xuICAtLXBhZGRpbmctYmxvY2s6IDhyZW07XG4gIC0tbWFyZ2luLWJldHdlZW4tdGV4dC1lbGVtZW50czogNHJlbTtcbiAgLS1tYXJnaW4td3AtYmxvY2staW1hZ2U6IDRyZW07XG4gIC0tbWFyZ2luLWJldHdlZW4tcGFyYWdyYXBoczogMi43cmVtO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDE1OTBweCkge1xuICA6cm9vdCB7XG4gICAgLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsOiAycmVtO1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogOTYwcHgpIHtcbiAgOnJvb3Qge1xuICAgIC0tcGFkZGluZy1zaXRlLWhlYWRlci12ZXJ0aWNhbDogMnJlbTtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICA6cm9vdCB7XG4gICAgLS1ncmlkLWdhcDogMy4ycmVtO1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogNzcwcHgpIHtcbiAgOnJvb3Qge1xuICAgIC0tZ3JpZC1nYXA6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICAgIC0tcGFkZGluZy1jb250YWluZXItdmVydGljYWw6IDVyZW07XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA2MDBweCkge1xuICA6cm9vdCB7XG4gICAgLS1wYWRkaW5nLWJsb2NrOiA2cmVtO1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgOnJvb3Qge1xuICAgIC0tcGFkZGluZy1jb250YWluZXItdmVydGljYWw6IDRyZW07XG4gIH1cbn1cblxuLnNjcmVlbi1yZWFkZXItdGV4dCB7XG4gIGJvcmRlcjogMDtcbiAgY2xpcDogcmVjdCgxcHgsIDFweCwgMXB4LCAxcHgpO1xuICBjbGlwLXBhdGg6IGluc2V0KDUwJSk7XG4gIGhlaWdodDogMXB4O1xuICBtYXJnaW46IC0xcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmc6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDFweDtcbiAgd29yZC13cmFwOiBub3JtYWwgIWltcG9ydGFudDtcbn1cbi5zY3JlZW4tcmVhZGVyLXRleHQ6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJveC1zaGFkb3c6IDAgMCAycHggMnB4IHJnYmEoMjIsIDIyLCAyMiwgMC42KTtcbiAgY2xpcDogYXV0bztcbiAgY2xpcC1wYXRoOiBub25lO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAxLjdyZW07XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBsZWZ0OiA1cHg7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gIHBhZGRpbmc6IDE1cHggMjNweCAxNHB4O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRvcDogNXB4O1xuICB3aWR0aDogYXV0bztcbiAgei1pbmRleDogMTAwMDAwO1xufVxuLnNjcmVlbi1yZWFkZXItdGV4dC5za2lwLWxpbmsge1xuICBtYXJnaW46IDVweDtcbn1cbi5zY3JlZW4tcmVhZGVyLXRleHQuc2tpcC1saW5rOmZvY3VzIHtcbiAgY29sb3I6IGN1cnJlbnRDb2xvcjtcbn1cblxuW2RhdGEtd2hhdGlucHV0PW1vdXNlXSAqOmZvY3VzLFxuW2RhdGEtd2hhdGlucHV0PXRvdWNoXSAqOmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbn1cblxuW2RhdGEtd2hhdGlucHV0PWtleWJvYXJkXSBhOmZvY3VzLFxuW2RhdGEtd2hhdGlucHV0PWtleWJvYXJkXSBpbnB1dDpmb2N1cyxcbltkYXRhLXdoYXRpbnB1dD1rZXlib2FyZF0gYnV0dG9uOmZvY3VzLFxuW2RhdGEtd2hhdGlucHV0PWtleWJvYXJkXSBzZWxlY3Q6Zm9jdXMsXG5bZGF0YS13aGF0aW5wdXQ9a2V5Ym9hcmRdIHRleHRhcmVhOmZvY3VzLFxuW2RhdGEtd2hhdGlucHV0PWtleWJvYXJkXSBkaXZbdGFiaW5kZXhdOmZvY3VzIHtcbiAgb3BhY2l0eTogMTtcbn1cbltkYXRhLXdoYXRpbnB1dD1rZXlib2FyZF0gLmdsb2JhbC1saW5rIHtcbiAgdHJhbnNpdGlvbjogbm9uZTtcbn1cbltkYXRhLXdoYXRpbnB1dD1rZXlib2FyZF0gYS5nbG9iYWwtbGluazpmb2N1cyB7XG4gIG91dGxpbmUtb2Zmc2V0OiA1cHg7XG4gIG91dGxpbmUtc3R5bGU6IHNvbGlkO1xuICBvdXRsaW5lLXdpZHRoOiA0cHg7XG4gIHRyYW5zaXRpb246IG91dGxpbmUtb2Zmc2V0IDAuMjVzIGVhc2U7XG59XG5cbmEuaXMtZXh0ZXJuYWwtbGluazo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi8uLi9zdmcvZXh0ZXJuYWwtbGluay5zdmdcIik7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiAxMnB4IDEycHg7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBoZWlnaHQ6IDEycHg7XG4gIG1hcmdpbi1sZWZ0OiA1cHg7XG4gIG1hcmdpbi1yaWdodDogMnB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDA7XG4gIHRyYW5zaXRpb246IGFsbCA1MG1zO1xuICB3aWR0aDogMTJweDtcbn1cblxuYS5pcy1leHRlcm5hbC1saW5rLmdsb2JhbC1saW5rOjphZnRlcixcbmEuaXMtZXh0ZXJuYWwtbGluay5uby1leHRlcm5hbC1saW5rLWluZGljYXRvcjo6YWZ0ZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IG5vLXByZWZlcmVuY2UpIHtcbiAgOmZvY3VzLFxuKjpmb2N1cyxcbltkYXRhLXdoYXRpbnB1dD1rZXlib2FyZF0gOmZvY3VzLFxuW2RhdGEtd2hhdGlucHV0PWtleWJvYXJkXSBhOmZvY3VzIHtcbiAgICBvdXRsaW5lLW9mZnNldDogNXB4O1xuICAgIHRyYW5zaXRpb246IG91dGxpbmUtb2Zmc2V0IDAuMjVzIGVhc2U7XG4gIH1cbn1cbjpyb290IHtcbiAgLS1ib3JkZXItcmFkaXVzLXN1Yi1tZW51OiAwO1xuICAtLWJveC1zaGFkb3ctbmF2aWdhdGlvbi1zdGF0aWM6IDAgMCAxMHB4IHJnYig4NCA4NyAxMTUgLyAuMSk7XG4gIC0tYm94LXNoYWRvdy1zdWItbWVudTogdHJhbnNwYXJlbnQ7XG4gIC0tZHJvcGRvd24tdG9nZ2xlLXNpemU6IDEycHg7XG4gIC0tZ2FwLWRyb3Bkb3duOiAxcmVtO1xuICAtLWdhcC1iZXR3ZWVuLWRyb3Bkb3duLXRvZ2dsZTogMS41cmVtO1xuICAtLWdhcC1tYWluLWxldmVsLWhvcml6b250YWw6IDIuNXJlbTtcbiAgLS1wYWRkaW5nLW1haW4tbGV2ZWwtaG9yaXpvbnRhbDogMDtcbiAgLS1wYWRkaW5nLW1haW4tbGV2ZWwtdmVydGljYWw6IC42cmVtO1xuICAtLXBhZGRpbmctc3ViLW1lbnUtdmVydGljYWw6IC42cmVtO1xuICAtLXBhZGRpbmctc3ViLW1lbnUtbGluay12ZXJ0aWNhbDogLjZyZW07XG4gIC0tcGFkZGluZy1zdWItbWVudS1saW5rLWhvcml6b250YWw6IDEuNXJlbTtcbiAgLS13aWR0aC1zdWItbWVudTogMjJyZW07XG4gIC0tY29sb3ItYmFja2dyb3VuZC1uYXYtZGVza3RvcDogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAtLWNvbG9yLWJhY2tncm91bmQtc3ViLW1lbnU6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgLS1jb2xvci1ib3JkZXItc3ViLW1lbnU6IHJnYig0MSA0NCA2MSAvIC4wNSk7XG4gIC0tY29sb3ItZHJvcGRvd24tdG9nZ2xlOiB2YXIoLS1jb2xvci12YWxoYWxsYSk7XG4gIC0tY29sb3Itc3ViLW1lbnU6IHZhcigtLWNvbG9yLXZhbGhhbGxhKTtcbiAgLS1jb2xvci1ob3Zlci1tYWluLWxldmVsOiB2YXIoLS1jb2xvci1saW5rLXRleHQpO1xuICAtLWNvbG9yLWhvdmVyLXN1Yi1tZW51OiB2YXIoLS1jb2xvci12YWxoYWxsYSk7XG4gIC0tY29sb3ItbWFpbi1sZXZlbDogdmFyKC0tY29sb3ItYmxhY2spO1xuICAtLWNvbG9yLWN1cnJlbnQ6IHZhcigtLWNvbG9yLWxpbmstdGV4dCk7XG4gIC0tZm9udC1zaXplLW1haW4tbGV2ZWw6IHZhcigtLWZvbnQtc2l6ZS0xNik7XG4gIC0tZm9udC1zaXplLXN1Yi1tZW51OiB2YXIoLS1mb250LXNpemUtMTYpO1xuICAtLWZvbnQtd2VpZ2h0LW1haW4tbGV2ZWw6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xuICAtLWZvbnQtd2VpZ2h0LXN1Yi1tZW51OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbn1cblxuLnNpdGUtaGVhZGVyIHVsIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5NjBweCkge1xuICAubmF2LWNvbnRhaW5lciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC5uYXYtdG9nZ2xlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5uYXYtcHJpbWFyeSB7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gIH1cbiAgLm1lbnUtaXRlbXMge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBnYXA6IHZhcigtLWdhcC1tYWluLWxldmVsLWhvcml6b250YWwpO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuICAubWVudS1pdGVtIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG4gIC5tZW51LWl0ZW0gPiBhIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1tYWluLWxldmVsKTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1tYWluLWxldmVsKTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWFpbi1sZXZlbCk7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1wYWRkaW5nLW1haW4tbGV2ZWwtdmVydGljYWwpO1xuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tcGFkZGluZy1tYWluLWxldmVsLWhvcml6b250YWwpO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXBhZGRpbmctbWFpbi1sZXZlbC1ob3Jpem9udGFsKTtcbiAgICBwYWRkaW5nLXRvcDogdmFyKC0tcGFkZGluZy1tYWluLWxldmVsLXZlcnRpY2FsKTtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB9XG4gIC5tZW51LWl0ZW0gLnN1Yi1tZW51IGEge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLXN1Yi1tZW51KTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zdWItbWVudSk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXN1Yi1tZW51KTtcbiAgICBsaW5lLWhlaWdodDogMS41O1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1wYWRkaW5nLXN1Yi1tZW51LWxpbmstdmVydGljYWwpO1xuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tcGFkZGluZy1zdWItbWVudS1saW5rLWhvcml6b250YWwpO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXBhZGRpbmctc3ViLW1lbnUtbGluay1ob3Jpem9udGFsKTtcbiAgICBwYWRkaW5nLXRvcDogdmFyKC0tcGFkZGluZy1zdWItbWVudS1saW5rLXZlcnRpY2FsKTtcbiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICB9XG4gIC5tZW51LWl0ZW0uY3VycmVudC1tZW51LXBhcmVudCA+IGEsXG4ubWVudS1pdGVtLmN1cnJlbnQtbWVudS1pdGVtID4gYSB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWN1cnJlbnQpO1xuICB9XG4gIC5tZW51LWl0ZW0ubWVudS1pdGVtLWhhcy1jaGlsZHJlbiBhIHtcbiAgICB0cmFuc2l0aW9uOiBwYWRkaW5nIDAuMnMgY3ViaWMtYmV6aWVyKDAuMTksIDEsIDAuMjIsIDEpLCBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgY3ViaWMtYmV6aWVyKDAuMTksIDEsIDAuMjIsIDEpO1xuICB9XG4gIC5tZW51LWl0ZW0gPiBhOmhvdmVyLFxuLm1lbnUtaXRlbSA+IGE6Zm9jdXMge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1ob3Zlci1tYWluLWxldmVsKTtcbiAgfVxuICAubWVudS1pdGVtIC5zdWItbWVudSBhOmhvdmVyLFxuLm1lbnUtaXRlbSAuc3ViLW1lbnUgYTpmb2N1cyB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWhvdmVyLXN1Yi1tZW51KTtcbiAgfVxuICAuc3ViLW1lbnUudG9nZ2xlZC1vbiBhLFxuLnN1Yi1tZW51LnRvZ2dsZWQtb24gLnN1Yi1tZW51IGEsXG4ubWVudS1pdGVtLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4uaG92ZXItaW50ZW50IC5zdWItbWVudSBhLFxuLm1lbnUtaXRlbS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuOmZvY3VzIC5zdWItbWVudSBhIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tcGFkZGluZy1zdWItbWVudS1saW5rLXZlcnRpY2FsKTtcbiAgICBwYWRkaW5nLXRvcDogdmFyKC0tcGFkZGluZy1zdWItbWVudS1saW5rLXZlcnRpY2FsKTtcbiAgfVxuICAuc3ViLW1lbnUudG9nZ2xlZC1vbixcbi5zdWItbWVudS50b2dnbGVkLW9uIC5zdWItbWVudSxcbi5tZW51LWl0ZW0ubWVudS1pdGVtLWhhcy1jaGlsZHJlbi5ob3Zlci1pbnRlbnQgLnN1Yi1tZW51LFxuLm1lbnUtaXRlbS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuOmZvY3VzIC5zdWItbWVudSB7XG4gICAgcGFkZGluZy1ib3R0b206IHZhcigtLXBhZGRpbmctc3ViLW1lbnUtdmVydGljYWwpO1xuICAgIHBhZGRpbmctdG9wOiB2YXIoLS1wYWRkaW5nLXN1Yi1tZW51LXZlcnRpY2FsKTtcbiAgfVxuICAubmF2LXByaW1hcnkgPiB1bDpmaXJzdC1vZi10eXBlID4gLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW46Zm9jdXM6OmJlZm9yZSxcbi5uYXYtcHJpbWFyeSA+IHVsOmZpcnN0LW9mLXR5cGUgPiAubWVudS1pdGVtLWhhcy1jaGlsZHJlbjpob3Zlcjo6YmVmb3JlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKTtcbiAgfVxuICAuc3ViLW1lbnUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJhY2tncm91bmQtc3ViLW1lbnUpO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ib3JkZXItc3ViLW1lbnUpO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc3ViLW1lbnUpO1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXN1Yi1tZW51KTtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJvcmRlci1zdWItbWVudSk7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgdmFyKC0tY29sb3ItYm9yZGVyLXN1Yi1tZW51KTtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXN1Yi1tZW51KTtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zdWItbWVudSk7XG4gICAgYm94LXNoYWRvdzogdmFyKC0tYm94LXNoYWRvdy1zdWItbWVudSk7XG4gICAgbGVmdDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS1nYXAtZHJvcGRvd24pO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTAwJTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBjdWJpYy1iZXppZXIoMC4xOSwgMSwgMC4yMiwgMSk7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIHdpZHRoOiB2YXIoLS13aWR0aC1zdWItbWVudSk7XG4gICAgei1pbmRleDogOTtcbiAgfVxuICAuc3ViLW1lbnUuaXMtb3V0LW9mLXZpZXdwb3J0IHtcbiAgICBsZWZ0OiB1bnNldDtcbiAgICByaWdodDogMDtcbiAgfVxuICAuc3ViLW1lbnUuaXMtb3V0LW9mLXZpZXdwb3J0IC5zdWItbWVudSB7XG4gICAgbGVmdDogdW5zZXQ7XG4gICAgcmlnaHQ6IDEwMCU7XG4gIH1cbiAgLnN1Yi1tZW51IC5zdWItbWVudS5pcy1vdXQtb2Ytdmlld3BvcnQge1xuICAgIGxlZnQ6IHVuc2V0O1xuICAgIHJpZ2h0OiAxMDAlO1xuICB9XG4gIC5zdWItbWVudSAuc3ViLW1lbnUge1xuICAgIGxlZnQ6IDEwMCU7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXRvcDogY2FsYygtMSAqIHZhcigtLXBhZGRpbmctc3ViLW1lbnUtdmVydGljYWwpKTtcbiAgICB0b3A6IDA7XG4gIH1cbiAgLnN1Yi1tZW51IGxpIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHdpZHRoOiB2YXIoLS13aWR0aC1zdWItbWVudSk7XG4gIH1cbiAgLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gPiAuc3ViLW1lbnUudG9nZ2xlZC1vbixcbi5tZW51LWl0ZW0taGFzLWNoaWxkcmVuOmZvY3VzID4gLnN1Yi1tZW51LFxuLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4uaG92ZXItaW50ZW50ID4gLnN1Yi1tZW51IHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwJSk7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgfVxuICAubWVudS1pdGVtLWhhcy1jaGlsZHJlbiAuc3ViLW1lbnUudG9nZ2xlZC1vbiAuc3ViLW1lbnUsXG4ubWVudS1pdGVtLWhhcy1jaGlsZHJlbiAuc3ViLW1lbnUgLnN1Yi1tZW51LnRvZ2dsZWQtb24sXG4ubWVudS1pdGVtLWhhcy1jaGlsZHJlbjpmb2N1cyAuc3ViLW1lbnUgLnN1Yi1tZW51LFxuLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4uaG92ZXItaW50ZW50IC5zdWItbWVudSAuc3ViLW1lbnUge1xuICAgIG1hcmdpbi10b3A6IGNhbGMoLTEgKiB2YXIoLS1wYWRkaW5nLXN1Yi1tZW51LXZlcnRpY2FsKSk7XG4gICAgdG9wOiAwO1xuICAgIHotaW5kZXg6IDEwO1xuICB9XG4gIC5tZW51LWl0ZW0ubWVudS1pdGVtLWhhcy1jaGlsZHJlbiB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGdhcDogdmFyKC0tZ2FwLWJldHdlZW4tZHJvcGRvd24tdG9nZ2xlKTtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG4gIC5tZW51LWl0ZW0ubWVudS1pdGVtLWhhcy1jaGlsZHJlbjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiB2YXIoLS1nYXAtZHJvcGRvd24pO1xuICAgIG1heC13aWR0aDogdmFyKC0td2lkdGgtc3ViLW1lbnUpO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDEwMCU7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC5tZW51LWl0ZW0ubWVudS1pdGVtLWhhcy1jaGlsZHJlbi5ob3Zlci1pbnRlbnQ6OmFmdGVyIHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIHotaW5kZXg6IDk5OTk5OTk7XG4gIH1cbiAgLmRyb3Bkb3duLXRvZ2dsZSBzdmcge1xuICAgIGhlaWdodDogdmFyKC0tZHJvcGRvd24tdG9nZ2xlLXNpemUpO1xuICAgIHdpZHRoOiB2YXIoLS1kcm9wZG93bi10b2dnbGUtc2l6ZSk7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMzVzIGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKTtcbiAgfVxuICAuZHJvcGRvd24tdG9nZ2xlLnRvZ2dsZWQtb24gc3ZnIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZVgoMTgwZGVnKTtcbiAgfVxuICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogMDtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItZHJvcGRvd24tdG9nZ2xlKTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB9XG4gIC5zdWItbWVudSAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICB3aWR0aDogM3JlbTtcbiAgfVxuICAuc3ViLW1lbnUgLmRyb3Bkb3duLXRvZ2dsZSBzdmcge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZykgcm90YXRlWCgwZGVnKTtcbiAgfVxuICAuc3ViLW1lbnUgLmRyb3Bkb3duLXRvZ2dsZS50b2dnbGVkLW9uIHN2ZyB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKSByb3RhdGVYKDE4MGRlZyk7XG4gIH1cbiAgLnN1Yi1tZW51IC5tZW51LWl0ZW0taGFzLWNoaWxkcmVuOjphZnRlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5NjBweCkgYW5kIChtYXgtd2lkdGg6IDk2MHB4KSB7XG4gIHVsIGxpOmZvY3VzID4gdWwsXG51bCBsaTpob3ZlciA+IHVsIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5NjBweCkgYW5kICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSwgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk2MHB4KSBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7XG4gIHVsIGxpOmZvY3VzID4gdWwsXG51bCBsaTpob3ZlciA+IHVsIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5NjBweCkge1xuICAubWVudS1pdGVtLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gPiAuZHJvcGRvd24tdG9nZ2xlLnRvZ2dsZWQtb24gc3ZnLFxuLm1lbnUtaXRlbS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuOmhvdmVyID4gLmRyb3Bkb3duLXRvZ2dsZSBzdmcsXG4ubWVudS1pdGVtLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW46Zm9jdXMgPiAuZHJvcGRvd24tdG9nZ2xlIHN2ZyB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAlKSByb3RhdGUoMTgwZGVnKTtcbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5NjBweCkge1xuICAubWVudS1pdGVtLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gLm1lbnUtaXRlbS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuID4gLmRyb3Bkb3duLXRvZ2dsZS50b2dnbGVkLW9uIHN2Zyxcbi5tZW51LWl0ZW0ubWVudS1pdGVtLWhhcy1jaGlsZHJlbiAubWVudS1pdGVtLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW46aG92ZXIgPiAuZHJvcGRvd24tdG9nZ2xlIHN2Zyxcbi5tZW51LWl0ZW0ubWVudS1pdGVtLWhhcy1jaGlsZHJlbiAubWVudS1pdGVtLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW46Zm9jdXMgPiAuZHJvcGRvd24tdG9nZ2xlIHN2ZyB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAlKSByb3RhdGUoOTBkZWcpO1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk2MHB4KSB7XG4gIC5tZW51LWl0ZW0taGFzLWNoaWxkcmVuOjpiZWZvcmUge1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdmFyKC0tY29sb3Itd2hpdGUpO1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXdpZHRoOiAwIDVweCA1cHg7XG4gICAgYm90dG9tOiAtMTBweDtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogMDtcbiAgICBsZWZ0OiA1MCU7XG4gICAgbWFyZ2luLWxlZnQ6IC0yMHB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBib3R0b207XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB3aWR0aDogMDtcbiAgfVxufVxuOnJvb3Qge1xuICAtLWZvbnQtc2l6ZS1tYWluLWxldmVsLW1vYmlsZTogMTdweDtcbiAgLS1mb250LXNpemUtc3ViLW1lbnUtbW9iaWxlOiAxN3B4O1xuICAtLWZvbnQtd2VpZ2h0LW1haW4tbGV2ZWwtbW9iaWxlOiA2MDA7XG4gIC0tZm9udC13ZWlnaHQtc3ViLW1lbnUtbW9iaWxlOiA2MDA7XG4gIC0tZHJvcGRvd24tdG9nZ2xlLXNpemUtbW9iaWxlOiAxMnB4O1xuICAtLWhlaWdodC1uYXZpZ2F0aW9uLW1vYmlsZTogNzJweDtcbiAgLS1tYXJnaW4tbGVmdC1zdWItbWVudTogMnJlbTtcbiAgLS1wYWRkaW5nLW1haW4tbGV2ZWwtdmVydGljYWwtbW9iaWxlOiAxLjJyZW07XG4gIC0tcGFkZGluZy1zdWItbWVudS12ZXJ0aWNhbC1tb2JpbGU6IC44cmVtO1xuICAtLXBhZGRpbmctc3ViLW1lbnUtaG9yaXpvbnRhbC1tb2JpbGU6IDIuNXJlbTtcbiAgLS1jb2xvci1hY3RpdmUtbWFpbi1sZXZlbC1tb2JpbGU6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgLS1jb2xvci1iYWNrZ3JvdW5kLW5hdi1tb2JpbGUtaGVhZGVyOiB2YXIoLS1jb2xvci1tYWluKTtcbiAgLS1jb2xvci1iYWNrZ3JvdW5kLW5hdi1tb2JpbGUtaGVhZGVyLWFjdGl2ZTogdmFyKC0tY29sb3ItbWFpbik7XG4gIC0tY29sb3ItYmFja2dyb3VuZC1uYXYtbW9iaWxlLWxheWVyOiB2YXIoLS1jb2xvci1tYWluKTtcbiAgLS1jb2xvci1iYWNrZ3JvdW5kLW5hdi1tb2JpbGUtbGF5ZXItYWN0aXZlOiB2YXIoLS1jb2xvci1tYWluKTtcbiAgLS1jb2xvci1jdXJyZW50LW1vYmlsZTogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAtLWNvbG9yLWRyb3Bkb3duLXRvZ2dsZS1tb2JpbGU6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgLS1jb2xvci1oYW1idXJnZXItYWN0aXZlOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIC0tY29sb3ItaGFtYnVyZ2VyOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIC0tY29sb3ItbWFpbi1sZXZlbC1tb2JpbGU6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgLS1jb2xvci1zZXBhcmF0b3ItbmF2LW1vYmlsZTogcmdiKDI1NSAyNTUgMjU1IC8gLjEpO1xuICAtLWNvbG9yLXN1Yi1tZW51LW1vYmlsZTogcmdiKDI1NSAyNTUgMjU1IC8gLjgpO1xufVxuXG4vKiFcbiAqIEhhbWJ1cmdlcnNcbiAqIEBkZXNjcmlwdGlvbiBUYXN0eSBDU1MtYW5pbWF0ZWQgaGFtYnVyZ2Vyc1xuICogQGF1dGhvciBKb25hdGhhbiBTdWggQGpvbnN1aFxuICogQHNpdGUgaHR0cHM6Ly9qb25zdWguY29tL2hhbWJ1cmdlcnNcbiAqIEBsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9qb25zdWgvaGFtYnVyZ2Vyc1xuICovXG4uaGFtYnVyZ2VyIHtcbiAgcGFkZGluZzogNHJlbSAxLjVyZW07XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5LCBmaWx0ZXI7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMTVzO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICBmb250OiBpbmhlcml0O1xuICBjb2xvcjogaW5oZXJpdDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG4gIG1hcmdpbjogMDtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG4uaGFtYnVyZ2VyOmhvdmVyIHtcbiAgb3BhY2l0eTogMC44O1xufVxuLmhhbWJ1cmdlci5pcy1hY3RpdmU6aG92ZXIge1xuICBvcGFjaXR5OiAwLjg7XG59XG4uaGFtYnVyZ2VyLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyLFxuLmhhbWJ1cmdlci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlLFxuLmhhbWJ1cmdlci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1oYW1idXJnZXIpO1xufVxuXG4uaGFtYnVyZ2VyLWJveCB7XG4gIHdpZHRoOiAzcmVtO1xuICBoZWlnaHQ6IDEuNnJlbTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5oYW1idXJnZXItaW5uZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgdG9wOiA1MCU7XG4gIG1hcmdpbi10b3A6IC0wLjFyZW07XG59XG4uaGFtYnVyZ2VyLWlubmVyLCAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUsIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgd2lkdGg6IDNyZW07XG4gIGhlaWdodDogMC4ycmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1oYW1idXJnZXIpO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4xNXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlO1xufVxuLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlLCAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgdG9wOiAtMC43cmVtO1xufVxuLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICBib3R0b206IC0wLjdyZW07XG59XG5cbi8qXG4gKiAzRFhcbiAqL1xuLmhhbWJ1cmdlci0tM2R4IC5oYW1idXJnZXItYm94IHtcbiAgcGVyc3BlY3RpdmU6IDZyZW07XG59XG4uaGFtYnVyZ2VyLS0zZHggLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSksIGJhY2tncm91bmQtY29sb3IgMHMgMC4xcyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSk7XG59XG4uaGFtYnVyZ2VyLS0zZHggLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlLCAuaGFtYnVyZ2VyLS0zZHggLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMHMgMC4xcyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSk7XG59XG4uaGFtYnVyZ2VyLS0zZHguaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICB0cmFuc2Zvcm06IHJvdGF0ZVkoMTgwZGVnKTtcbn1cbi5oYW1idXJnZXItLTNkeC5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLjdyZW0sIDApIHJvdGF0ZSg0NWRlZyk7XG59XG4uaGFtYnVyZ2VyLS0zZHguaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMC43cmVtLCAwKSByb3RhdGUoLTQ1ZGVnKTtcbn1cblxuLypcbiAqIDNEWCBSZXZlcnNlXG4gKi9cbi5oYW1idXJnZXItLTNkeC1yIC5oYW1idXJnZXItYm94IHtcbiAgcGVyc3BlY3RpdmU6IDZyZW07XG59XG4uaGFtYnVyZ2VyLS0zZHgtciAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKSwgYmFja2dyb3VuZC1jb2xvciAwcyAwLjFzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKTtcbn1cbi5oYW1idXJnZXItLTNkeC1yIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSwgLmhhbWJ1cmdlci0tM2R4LXIgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMHMgMC4xcyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSk7XG59XG4uaGFtYnVyZ2VyLS0zZHgtci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIHRyYW5zZm9ybTogcm90YXRlWSgtMTgwZGVnKTtcbn1cbi5oYW1idXJnZXItLTNkeC1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAuN3JlbSwgMCkgcm90YXRlKDQ1ZGVnKTtcbn1cbi5oYW1idXJnZXItLTNkeC1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTAuN3JlbSwgMCkgcm90YXRlKC00NWRlZyk7XG59XG5cbi8qXG4gKiAzRFlcbiAqL1xuLmhhbWJ1cmdlci0tM2R5IC5oYW1idXJnZXItYm94IHtcbiAgcGVyc3BlY3RpdmU6IDZyZW07XG59XG4uaGFtYnVyZ2VyLS0zZHkgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSksIGJhY2tncm91bmQtY29sb3IgMHMgMC4xcyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSk7XG59XG4uaGFtYnVyZ2VyLS0zZHkgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlLCAuaGFtYnVyZ2VyLS0zZHkgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMHMgMC4xcyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSk7XG59XG4uaGFtYnVyZ2VyLS0zZHkuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICB0cmFuc2Zvcm06IHJvdGF0ZVgoLTE4MGRlZyk7XG59XG4uaGFtYnVyZ2VyLS0zZHkuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMC43cmVtLCAwKSByb3RhdGUoNDVkZWcpO1xufVxuLmhhbWJ1cmdlci0tM2R5LmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTAuN3JlbSwgMCkgcm90YXRlKC00NWRlZyk7XG59XG5cbi8qXG4gKiAzRFkgUmV2ZXJzZVxuICovXG4uaGFtYnVyZ2VyLS0zZHktciAuaGFtYnVyZ2VyLWJveCB7XG4gIHBlcnNwZWN0aXZlOiA2cmVtO1xufVxuLmhhbWJ1cmdlci0tM2R5LXIgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSksIGJhY2tncm91bmQtY29sb3IgMHMgMC4xcyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSk7XG59XG4uaGFtYnVyZ2VyLS0zZHktciAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUsIC5oYW1idXJnZXItLTNkeS1yIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDBzIDAuMXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpO1xufVxuLmhhbWJ1cmdlci0tM2R5LXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICB0cmFuc2Zvcm06IHJvdGF0ZVgoMTgwZGVnKTtcbn1cbi5oYW1idXJnZXItLTNkeS1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAuN3JlbSwgMCkgcm90YXRlKDQ1ZGVnKTtcbn1cbi5oYW1idXJnZXItLTNkeS1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTAuN3JlbSwgMCkgcm90YXRlKC00NWRlZyk7XG59XG5cbi8qXG4gKiAzRFhZXG4gKi9cbi5oYW1idXJnZXItLTNkeHkgLmhhbWJ1cmdlci1ib3gge1xuICBwZXJzcGVjdGl2ZTogNnJlbTtcbn1cbi5oYW1idXJnZXItLTNkeHkgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSksIGJhY2tncm91bmQtY29sb3IgMHMgMC4xcyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSk7XG59XG4uaGFtYnVyZ2VyLS0zZHh5IC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSwgLmhhbWJ1cmdlci0tM2R4eSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwcyAwLjFzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKTtcbn1cbi5oYW1idXJnZXItLTNkeHkuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICB0cmFuc2Zvcm06IHJvdGF0ZVgoMTgwZGVnKSByb3RhdGVZKDE4MGRlZyk7XG59XG4uaGFtYnVyZ2VyLS0zZHh5LmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAuN3JlbSwgMCkgcm90YXRlKDQ1ZGVnKTtcbn1cbi5oYW1idXJnZXItLTNkeHkuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMC43cmVtLCAwKSByb3RhdGUoLTQ1ZGVnKTtcbn1cblxuLypcbiAqIDNEWFkgUmV2ZXJzZVxuICovXG4uaGFtYnVyZ2VyLS0zZHh5LXIgLmhhbWJ1cmdlci1ib3gge1xuICBwZXJzcGVjdGl2ZTogNnJlbTtcbn1cbi5oYW1idXJnZXItLTNkeHktciAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKSwgYmFja2dyb3VuZC1jb2xvciAwcyAwLjFzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKTtcbn1cbi5oYW1idXJnZXItLTNkeHktciAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUsIC5oYW1idXJnZXItLTNkeHktciAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwcyAwLjFzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKTtcbn1cbi5oYW1idXJnZXItLTNkeHktci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIHRyYW5zZm9ybTogcm90YXRlWCgxODBkZWcpIHJvdGF0ZVkoMTgwZGVnKSByb3RhdGVaKC0xODBkZWcpO1xufVxuLmhhbWJ1cmdlci0tM2R4eS1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAuN3JlbSwgMCkgcm90YXRlKDQ1ZGVnKTtcbn1cbi5oYW1idXJnZXItLTNkeHktci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0wLjdyZW0sIDApIHJvdGF0ZSgtNDVkZWcpO1xufVxuXG4vKlxuICogQXJyb3dcbiAqL1xuLmhhbWJ1cmdlci0tYXJyb3cuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTAuNnJlbSwgMCwgMCkgcm90YXRlKC00NWRlZykgc2NhbGUoMC43LCAxKTtcbn1cbi5oYW1idXJnZXItLWFycm93LmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTAuNnJlbSwgMCwgMCkgcm90YXRlKDQ1ZGVnKSBzY2FsZSgwLjcsIDEpO1xufVxuXG4vKlxuICogQXJyb3cgUmlnaHRcbiAqL1xuLmhhbWJ1cmdlci0tYXJyb3ctci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLjZyZW0sIDAsIDApIHJvdGF0ZSg0NWRlZykgc2NhbGUoMC43LCAxKTtcbn1cbi5oYW1idXJnZXItLWFycm93LXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLjZyZW0sIDAsIDApIHJvdGF0ZSgtNDVkZWcpIHNjYWxlKDAuNywgMSk7XG59XG5cbi8qXG4gKiBBcnJvdyBBbHRcbiAqL1xuLmhhbWJ1cmdlci0tYXJyb3dhbHQgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgdHJhbnNpdGlvbjogdG9wIDAuMXMgMC4xcyBlYXNlLCB0cmFuc2Zvcm0gMC4xcyBjdWJpYy1iZXppZXIoMC4xNjUsIDAuODQsIDAuNDQsIDEpO1xufVxuLmhhbWJ1cmdlci0tYXJyb3dhbHQgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICB0cmFuc2l0aW9uOiBib3R0b20gMC4xcyAwLjFzIGVhc2UsIHRyYW5zZm9ybSAwLjFzIGN1YmljLWJlemllcigwLjE2NSwgMC44NCwgMC40NCwgMSk7XG59XG4uaGFtYnVyZ2VyLS1hcnJvd2FsdC5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgdG9wOiAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0wLjZyZW0sIC0wLjc1cmVtLCAwKSByb3RhdGUoLTQ1ZGVnKSBzY2FsZSgwLjcsIDEpO1xuICB0cmFuc2l0aW9uOiB0b3AgMC4xcyBlYXNlLCB0cmFuc2Zvcm0gMC4xcyAwLjFzIGN1YmljLWJlemllcigwLjg5NSwgMC4wMywgMC42ODUsIDAuMjIpO1xufVxuLmhhbWJ1cmdlci0tYXJyb3dhbHQuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgYm90dG9tOiAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0wLjZyZW0sIDAuNzVyZW0sIDApIHJvdGF0ZSg0NWRlZykgc2NhbGUoMC43LCAxKTtcbiAgdHJhbnNpdGlvbjogYm90dG9tIDAuMXMgZWFzZSwgdHJhbnNmb3JtIDAuMXMgMC4xcyBjdWJpYy1iZXppZXIoMC44OTUsIDAuMDMsIDAuNjg1LCAwLjIyKTtcbn1cblxuLypcbiAqIEFycm93IEFsdCBSaWdodFxuICovXG4uaGFtYnVyZ2VyLS1hcnJvd2FsdC1yIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gIHRyYW5zaXRpb246IHRvcCAwLjFzIDAuMXMgZWFzZSwgdHJhbnNmb3JtIDAuMXMgY3ViaWMtYmV6aWVyKDAuMTY1LCAwLjg0LCAwLjQ0LCAxKTtcbn1cbi5oYW1idXJnZXItLWFycm93YWx0LXIgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICB0cmFuc2l0aW9uOiBib3R0b20gMC4xcyAwLjFzIGVhc2UsIHRyYW5zZm9ybSAwLjFzIGN1YmljLWJlemllcigwLjE2NSwgMC44NCwgMC40NCwgMSk7XG59XG4uaGFtYnVyZ2VyLS1hcnJvd2FsdC1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICB0b3A6IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMC42cmVtLCAtMC43NXJlbSwgMCkgcm90YXRlKDQ1ZGVnKSBzY2FsZSgwLjcsIDEpO1xuICB0cmFuc2l0aW9uOiB0b3AgMC4xcyBlYXNlLCB0cmFuc2Zvcm0gMC4xcyAwLjFzIGN1YmljLWJlemllcigwLjg5NSwgMC4wMywgMC42ODUsIDAuMjIpO1xufVxuLmhhbWJ1cmdlci0tYXJyb3dhbHQtci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICBib3R0b206IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMC42cmVtLCAwLjc1cmVtLCAwKSByb3RhdGUoLTQ1ZGVnKSBzY2FsZSgwLjcsIDEpO1xuICB0cmFuc2l0aW9uOiBib3R0b20gMC4xcyBlYXNlLCB0cmFuc2Zvcm0gMC4xcyAwLjFzIGN1YmljLWJlemllcigwLjg5NSwgMC4wMywgMC42ODUsIDAuMjIpO1xufVxuXG4vKlxuICogQXJyb3cgVHVyblxuICovXG4uaGFtYnVyZ2VyLS1hcnJvd3R1cm4uaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTgwZGVnKTtcbn1cbi5oYW1idXJnZXItLWFycm93dHVybi5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCg4cHgsIDAsIDApIHJvdGF0ZSg0NWRlZykgc2NhbGUoMC43LCAxKTtcbn1cbi5oYW1idXJnZXItLWFycm93dHVybi5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDhweCwgMCwgMCkgcm90YXRlKC00NWRlZykgc2NhbGUoMC43LCAxKTtcbn1cblxuLypcbiAqIEFycm93IFR1cm4gUmlnaHRcbiAqL1xuLmhhbWJ1cmdlci0tYXJyb3d0dXJuLXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTgwZGVnKTtcbn1cbi5oYW1idXJnZXItLWFycm93dHVybi1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC04cHgsIDAsIDApIHJvdGF0ZSgtNDVkZWcpIHNjYWxlKDAuNywgMSk7XG59XG4uaGFtYnVyZ2VyLS1hcnJvd3R1cm4tci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC04cHgsIDAsIDApIHJvdGF0ZSg0NWRlZykgc2NhbGUoMC43LCAxKTtcbn1cblxuLypcbiAqIEJvcmluZ1xuICovXG4uaGFtYnVyZ2VyLS1ib3JpbmcgLmhhbWJ1cmdlci1pbm5lciwgLmhhbWJ1cmdlci0tYm9yaW5nIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSwgLmhhbWJ1cmdlci0tYm9yaW5nIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogbm9uZTtcbn1cbi5oYW1idXJnZXItLWJvcmluZy5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbn1cbi5oYW1idXJnZXItLWJvcmluZy5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgdG9wOiAwO1xuICBvcGFjaXR5OiAwO1xufVxuLmhhbWJ1cmdlci0tYm9yaW5nLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gIGJvdHRvbTogMDtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbn1cblxuLypcbiAqIENvbGxhcHNlXG4gKi9cbi5oYW1idXJnZXItLWNvbGxhcHNlIC5oYW1idXJnZXItaW5uZXIsIC5oYW1idXJnZXIgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRvcDogYXV0bztcbiAgYm90dG9tOiAwO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjEzcztcbiAgdHJhbnNpdGlvbi1kZWxheTogMC4xM3M7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcbn1cbi5oYW1idXJnZXItLWNvbGxhcHNlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyLCAuaGFtYnVyZ2VyIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgdG9wOiAtMS40cmVtO1xuICB0cmFuc2l0aW9uOiB0b3AgMC4ycyAwLjJzIGN1YmljLWJlemllcigwLjMzMzMzLCAwLjY2NjY3LCAwLjY2NjY3LCAxKSwgb3BhY2l0eSAwLjFzIGxpbmVhcjtcbn1cbi5oYW1idXJnZXItLWNvbGxhcHNlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSwgLmhhbWJ1cmdlciAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICB0cmFuc2l0aW9uOiB0b3AgMC4xMnMgMC4ycyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMC42NjY2NywgMC42NjY2NywgMSksIHRyYW5zZm9ybSAwLjEzcyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcbn1cbi5oYW1idXJnZXItLWNvbGxhcHNlLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyLCAuaXMtYWN0aXZlLmhhbWJ1cmdlciAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMC43cmVtLCAwKSByb3RhdGUoLTQ1ZGVnKTtcbiAgdHJhbnNpdGlvbi1kZWxheTogMC4yMnM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbn1cbi5oYW1idXJnZXItLWNvbGxhcHNlLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciwgLmlzLWFjdGl2ZS5oYW1idXJnZXIgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICB0b3A6IDA7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IHRvcCAwLjJzIGN1YmljLWJlemllcigwLjMzMzMzLCAwLCAwLjY2NjY3LCAwLjMzMzMzKSwgb3BhY2l0eSAwLjFzIDAuMjJzIGxpbmVhcjtcbn1cbi5oYW1idXJnZXItLWNvbGxhcHNlLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUsIC5pcy1hY3RpdmUuaGFtYnVyZ2VyIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gIHRvcDogMDtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgdHJhbnNpdGlvbjogdG9wIDAuMXMgMC4xNnMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAsIDAuNjY2NjcsIDAuMzMzMzMpLCB0cmFuc2Zvcm0gMC4xM3MgMC4yNXMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG59XG5cbi8qXG4gKiBDb2xsYXBzZSBSZXZlcnNlXG4gKi9cbi5oYW1idXJnZXItLWNvbGxhcHNlLXIgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRvcDogYXV0bztcbiAgYm90dG9tOiAwO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjEzcztcbiAgdHJhbnNpdGlvbi1kZWxheTogMC4xM3M7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcbn1cbi5oYW1idXJnZXItLWNvbGxhcHNlLXIgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICB0b3A6IC0xLjRyZW07XG4gIHRyYW5zaXRpb246IHRvcCAwLjJzIDAuMnMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAuNjY2NjcsIDAuNjY2NjcsIDEpLCBvcGFjaXR5IDAuMXMgbGluZWFyO1xufVxuLmhhbWJ1cmdlci0tY29sbGFwc2UtciAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICB0cmFuc2l0aW9uOiB0b3AgMC4xMnMgMC4ycyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMC42NjY2NywgMC42NjY2NywgMSksIHRyYW5zZm9ybSAwLjEzcyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcbn1cbi5oYW1idXJnZXItLWNvbGxhcHNlLXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0wLjdyZW0sIDApIHJvdGF0ZSg0NWRlZyk7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDAuMjJzO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG59XG4uaGFtYnVyZ2VyLS1jb2xsYXBzZS1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gIHRvcDogMDtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbjogdG9wIDAuMnMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAsIDAuNjY2NjcsIDAuMzMzMzMpLCBvcGFjaXR5IDAuMXMgMC4yMnMgbGluZWFyO1xufVxuLmhhbWJ1cmdlci0tY29sbGFwc2Utci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgdG9wOiAwO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gIHRyYW5zaXRpb246IHRvcCAwLjFzIDAuMTZzIGN1YmljLWJlemllcigwLjMzMzMzLCAwLCAwLjY2NjY3LCAwLjMzMzMzKSwgdHJhbnNmb3JtIDAuMTNzIDAuMjVzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xufVxuXG4vKlxuICogRWxhc3RpY1xuICovXG4uaGFtYnVyZ2VyLS1lbGFzdGljIC5oYW1idXJnZXItaW5uZXIge1xuICB0b3A6IDAuMXJlbTtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4yNzVzO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNjgsIC0wLjU1LCAwLjI2NSwgMS41NSk7XG59XG4uaGFtYnVyZ2VyLS1lbGFzdGljIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gIHRvcDogMC43cmVtO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTI1cyAwLjI3NXMgZWFzZTtcbn1cbi5oYW1idXJnZXItLWVsYXN0aWMgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICB0b3A6IDEuNHJlbTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMjc1cyBjdWJpYy1iZXppZXIoMC42OCwgLTAuNTUsIDAuMjY1LCAxLjU1KTtcbn1cbi5oYW1idXJnZXItLWVsYXN0aWMuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAuN3JlbSwgMCkgcm90YXRlKDEzNWRlZyk7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDAuMDc1cztcbn1cbi5oYW1idXJnZXItLWVsYXN0aWMuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDBzO1xuICBvcGFjaXR5OiAwO1xufVxuLmhhbWJ1cmdlci0tZWxhc3RpYy5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xLjRyZW0sIDApIHJvdGF0ZSgtMjcwZGVnKTtcbiAgdHJhbnNpdGlvbi1kZWxheTogMC4wNzVzO1xufVxuXG4vKlxuICogRWxhc3RpYyBSZXZlcnNlXG4gKi9cbi5oYW1idXJnZXItLWVsYXN0aWMtciAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdG9wOiAwLjFyZW07XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMjc1cztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjY4LCAtMC41NSwgMC4yNjUsIDEuNTUpO1xufVxuLmhhbWJ1cmdlci0tZWxhc3RpYy1yIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gIHRvcDogMC43cmVtO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTI1cyAwLjI3NXMgZWFzZTtcbn1cbi5oYW1idXJnZXItLWVsYXN0aWMtciAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gIHRvcDogMS40cmVtO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4yNzVzIGN1YmljLWJlemllcigwLjY4LCAtMC41NSwgMC4yNjUsIDEuNTUpO1xufVxuLmhhbWJ1cmdlci0tZWxhc3RpYy1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLjdyZW0sIDApIHJvdGF0ZSgtMTM1ZGVnKTtcbiAgdHJhbnNpdGlvbi1kZWxheTogMC4wNzVzO1xufVxuLmhhbWJ1cmdlci0tZWxhc3RpYy1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwcztcbiAgb3BhY2l0eTogMDtcbn1cbi5oYW1idXJnZXItLWVsYXN0aWMtci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xLjRyZW0sIDApIHJvdGF0ZSgyNzBkZWcpO1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwLjA3NXM7XG59XG5cbi8qXG4gKiBFbXBoYXRpY1xuICovXG4uaGFtYnVyZ2VyLS1lbXBoYXRpYyB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4uaGFtYnVyZ2VyLS1lbXBoYXRpYyAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjEyNXMgMC4xNzVzIGVhc2UtaW47XG59XG4uaGFtYnVyZ2VyLS1lbXBoYXRpYyAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICBsZWZ0OiAwO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xMjVzIGN1YmljLWJlemllcigwLjYsIDAuMDQsIDAuOTgsIDAuMzM1KSwgdG9wIDAuMDVzIDAuMTI1cyBsaW5lYXIsIGxlZnQgMC4xMjVzIDAuMTc1cyBlYXNlLWluO1xufVxuLmhhbWJ1cmdlci0tZW1waGF0aWMgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICB0b3A6IDAuN3JlbTtcbiAgcmlnaHQ6IDA7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjEyNXMgY3ViaWMtYmV6aWVyKDAuNiwgMC4wNCwgMC45OCwgMC4zMzUpLCB0b3AgMC4wNXMgMC4xMjVzIGxpbmVhciwgcmlnaHQgMC4xMjVzIDAuMTc1cyBlYXNlLWluO1xufVxuLmhhbWJ1cmdlci0tZW1waGF0aWMuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xufVxuLmhhbWJ1cmdlci0tZW1waGF0aWMuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gIGxlZnQ6IC02cmVtO1xuICB0b3A6IC02cmVtO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDZyZW0sIDZyZW0sIDApIHJvdGF0ZSg0NWRlZyk7XG4gIHRyYW5zaXRpb246IGxlZnQgMC4xMjVzIGVhc2Utb3V0LCB0b3AgMC4wNXMgMC4xMjVzIGxpbmVhciwgdHJhbnNmb3JtIDAuMTI1cyAwLjE3NXMgY3ViaWMtYmV6aWVyKDAuMDc1LCAwLjgyLCAwLjE2NSwgMSk7XG59XG4uaGFtYnVyZ2VyLS1lbXBoYXRpYy5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICByaWdodDogLTZyZW07XG4gIHRvcDogLTZyZW07XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTZyZW0sIDZyZW0sIDApIHJvdGF0ZSgtNDVkZWcpO1xuICB0cmFuc2l0aW9uOiByaWdodCAwLjEyNXMgZWFzZS1vdXQsIHRvcCAwLjA1cyAwLjEyNXMgbGluZWFyLCB0cmFuc2Zvcm0gMC4xMjVzIDAuMTc1cyBjdWJpYy1iZXppZXIoMC4wNzUsIDAuODIsIDAuMTY1LCAxKTtcbn1cblxuLypcbiAqIEVtcGhhdGljIFJldmVyc2VcbiAqL1xuLmhhbWJ1cmdlci0tZW1waGF0aWMtciB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4uaGFtYnVyZ2VyLS1lbXBoYXRpYy1yIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMTI1cyAwLjE3NXMgZWFzZS1pbjtcbn1cbi5oYW1idXJnZXItLWVtcGhhdGljLXIgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgbGVmdDogMDtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTI1cyBjdWJpYy1iZXppZXIoMC42LCAwLjA0LCAwLjk4LCAwLjMzNSksIHRvcCAwLjA1cyAwLjEyNXMgbGluZWFyLCBsZWZ0IDAuMTI1cyAwLjE3NXMgZWFzZS1pbjtcbn1cbi5oYW1idXJnZXItLWVtcGhhdGljLXIgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICB0b3A6IDAuN3JlbTtcbiAgcmlnaHQ6IDA7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjEyNXMgY3ViaWMtYmV6aWVyKDAuNiwgMC4wNCwgMC45OCwgMC4zMzUpLCB0b3AgMC4wNXMgMC4xMjVzIGxpbmVhciwgcmlnaHQgMC4xMjVzIDAuMTc1cyBlYXNlLWluO1xufVxuLmhhbWJ1cmdlci0tZW1waGF0aWMtci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDBzO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG59XG4uaGFtYnVyZ2VyLS1lbXBoYXRpYy1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICBsZWZ0OiAtNnJlbTtcbiAgdG9wOiA2cmVtO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDZyZW0sIC02cmVtLCAwKSByb3RhdGUoLTQ1ZGVnKTtcbiAgdHJhbnNpdGlvbjogbGVmdCAwLjEyNXMgZWFzZS1vdXQsIHRvcCAwLjA1cyAwLjEyNXMgbGluZWFyLCB0cmFuc2Zvcm0gMC4xMjVzIDAuMTc1cyBjdWJpYy1iZXppZXIoMC4wNzUsIDAuODIsIDAuMTY1LCAxKTtcbn1cbi5oYW1idXJnZXItLWVtcGhhdGljLXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgcmlnaHQ6IC02cmVtO1xuICB0b3A6IDZyZW07XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTZyZW0sIC02cmVtLCAwKSByb3RhdGUoNDVkZWcpO1xuICB0cmFuc2l0aW9uOiByaWdodCAwLjEyNXMgZWFzZS1vdXQsIHRvcCAwLjA1cyAwLjEyNXMgbGluZWFyLCB0cmFuc2Zvcm0gMC4xMjVzIDAuMTc1cyBjdWJpYy1iZXppZXIoMC4wNzUsIDAuODIsIDAuMTY1LCAxKTtcbn1cblxuLypcbiAqIE1pbnVzXG4gKi9cbi5oYW1idXJnZXItLW1pbnVzIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSwgLmhhbWJ1cmdlci0tbWludXMgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICB0cmFuc2l0aW9uOiBib3R0b20gMC4wOHMgMHMgZWFzZS1vdXQsIHRvcCAwLjA4cyAwcyBlYXNlLW91dCwgb3BhY2l0eSAwcyBsaW5lYXI7XG59XG4uaGFtYnVyZ2VyLS1taW51cy5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlLCAuaGFtYnVyZ2VyLS1taW51cy5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uOiBib3R0b20gMC4wOHMgZWFzZS1vdXQsIHRvcCAwLjA4cyBlYXNlLW91dCwgb3BhY2l0eSAwcyAwLjA4cyBsaW5lYXI7XG59XG4uaGFtYnVyZ2VyLS1taW51cy5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgdG9wOiAwO1xufVxuLmhhbWJ1cmdlci0tbWludXMuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgYm90dG9tOiAwO1xufVxuXG4vKlxuICogU2xpZGVyXG4gKi9cbi5oYW1idXJnZXItLXNsaWRlciAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdG9wOiAwLjFyZW07XG59XG4uaGFtYnVyZ2VyLS1zbGlkZXIgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgdG9wOiAwLjdyZW07XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2U7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMTVzO1xufVxuLmhhbWJ1cmdlci0tc2xpZGVyIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgdG9wOiAxLjRyZW07XG59XG4uaGFtYnVyZ2VyLS1zbGlkZXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAuN3JlbSwgMCkgcm90YXRlKDQ1ZGVnKTtcbn1cbi5oYW1idXJnZXItLXNsaWRlci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKSB0cmFuc2xhdGUzZCgtMC40Mjg1NzE0Mjg2cmVtLCAtMC41cmVtLCAwKTtcbiAgb3BhY2l0eTogMDtcbn1cbi5oYW1idXJnZXItLXNsaWRlci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xLjRyZW0sIDApIHJvdGF0ZSgtOTBkZWcpO1xufVxuXG4vKlxuICogU2xpZGVyIFJldmVyc2VcbiAqL1xuLmhhbWJ1cmdlci0tc2xpZGVyLXIgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRvcDogMC4xcmVtO1xufVxuLmhhbWJ1cmdlci0tc2xpZGVyLXIgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgdG9wOiAwLjdyZW07XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2U7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMTVzO1xufVxuLmhhbWJ1cmdlci0tc2xpZGVyLXIgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICB0b3A6IDEuNHJlbTtcbn1cbi5oYW1idXJnZXItLXNsaWRlci1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLjdyZW0sIDApIHJvdGF0ZSgtNDVkZWcpO1xufVxuLmhhbWJ1cmdlci0tc2xpZGVyLXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKSB0cmFuc2xhdGUzZCgwLjQyODU3MTQyODZyZW0sIC0wLjVyZW0sIDApO1xuICBvcGFjaXR5OiAwO1xufVxuLmhhbWJ1cmdlci0tc2xpZGVyLXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMS40cmVtLCAwKSByb3RhdGUoOTBkZWcpO1xufVxuXG4vKlxuICogU3BpblxuICovXG4uaGFtYnVyZ2VyLS1zcGluIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjIycztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xufVxuLmhhbWJ1cmdlci0tc3BpbiAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICB0cmFuc2l0aW9uOiB0b3AgMC4xcyAwLjI1cyBlYXNlLWluLCBvcGFjaXR5IDAuMXMgZWFzZS1pbjtcbn1cbi5oYW1idXJnZXItLXNwaW4gLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICB0cmFuc2l0aW9uOiBib3R0b20gMC4xcyAwLjI1cyBlYXNlLWluLCB0cmFuc2Zvcm0gMC4yMnMgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG59XG4uaGFtYnVyZ2VyLS1zcGluLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMjI1ZGVnKTtcbiAgdHJhbnNpdGlvbi1kZWxheTogMC4xMnM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbn1cbi5oYW1idXJnZXItLXNwaW4uaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gIHRvcDogMDtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbjogdG9wIDAuMXMgZWFzZS1vdXQsIG9wYWNpdHkgMC4xcyAwLjEycyBlYXNlLW91dDtcbn1cbi5oYW1idXJnZXItLXNwaW4uaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgYm90dG9tOiAwO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICB0cmFuc2l0aW9uOiBib3R0b20gMC4xcyBlYXNlLW91dCwgdHJhbnNmb3JtIDAuMjJzIDAuMTJzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xufVxuXG4vKlxuICogU3BpbiBSZXZlcnNlXG4gKi9cbi5oYW1idXJnZXItLXNwaW4tciAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4yMnM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcbn1cbi5oYW1idXJnZXItLXNwaW4tciAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICB0cmFuc2l0aW9uOiB0b3AgMC4xcyAwLjI1cyBlYXNlLWluLCBvcGFjaXR5IDAuMXMgZWFzZS1pbjtcbn1cbi5oYW1idXJnZXItLXNwaW4tciAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gIHRyYW5zaXRpb246IGJvdHRvbSAwLjFzIDAuMjVzIGVhc2UtaW4sIHRyYW5zZm9ybSAwLjIycyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcbn1cbi5oYW1idXJnZXItLXNwaW4tci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRyYW5zZm9ybTogcm90YXRlKC0yMjVkZWcpO1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwLjEycztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xufVxuLmhhbWJ1cmdlci0tc3Bpbi1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICB0b3A6IDA7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IHRvcCAwLjFzIGVhc2Utb3V0LCBvcGFjaXR5IDAuMXMgMC4xMnMgZWFzZS1vdXQ7XG59XG4uaGFtYnVyZ2VyLS1zcGluLXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgYm90dG9tOiAwO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gIHRyYW5zaXRpb246IGJvdHRvbSAwLjFzIGVhc2Utb3V0LCB0cmFuc2Zvcm0gMC4yMnMgMC4xMnMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG59XG5cbi8qXG4gKiBTcHJpbmdcbiAqL1xuLmhhbWJ1cmdlci0tc3ByaW5nIC5oYW1idXJnZXItaW5uZXIge1xuICB0b3A6IDAuMXJlbTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwcyAwLjEzcyBsaW5lYXI7XG59XG4uaGFtYnVyZ2VyLS1zcHJpbmcgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgdG9wOiAwLjdyZW07XG4gIHRyYW5zaXRpb246IHRvcCAwLjFzIDAuMnMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAuNjY2NjcsIDAuNjY2NjcsIDEpLCB0cmFuc2Zvcm0gMC4xM3MgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG59XG4uaGFtYnVyZ2VyLS1zcHJpbmcgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICB0b3A6IDEuNHJlbTtcbiAgdHJhbnNpdGlvbjogdG9wIDAuMnMgMC4ycyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMC42NjY2NywgMC42NjY2NywgMSksIHRyYW5zZm9ybSAwLjEzcyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcbn1cbi5oYW1idXJnZXItLXNwcmluZy5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDAuMjJzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xufVxuLmhhbWJ1cmdlci0tc3ByaW5nLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICB0b3A6IDA7XG4gIHRyYW5zaXRpb246IHRvcCAwLjFzIDAuMTVzIGN1YmljLWJlemllcigwLjMzMzMzLCAwLCAwLjY2NjY3LCAwLjMzMzMzKSwgdHJhbnNmb3JtIDAuMTNzIDAuMjJzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAuN3JlbSwgMCkgcm90YXRlKDQ1ZGVnKTtcbn1cbi5oYW1idXJnZXItLXNwcmluZy5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICB0b3A6IDA7XG4gIHRyYW5zaXRpb246IHRvcCAwLjJzIGN1YmljLWJlemllcigwLjMzMzMzLCAwLCAwLjY2NjY3LCAwLjMzMzMzKSwgdHJhbnNmb3JtIDAuMTNzIDAuMjJzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAuN3JlbSwgMCkgcm90YXRlKC00NWRlZyk7XG59XG5cbi8qXG4gKiBTcHJpbmcgUmV2ZXJzZVxuICovXG4uaGFtYnVyZ2VyLS1zcHJpbmctciAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdG9wOiBhdXRvO1xuICBib3R0b206IDA7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMTNzO1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xufVxuLmhhbWJ1cmdlci0tc3ByaW5nLXIgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICB0b3A6IC0xLjRyZW07XG4gIHRyYW5zaXRpb246IHRvcCAwLjJzIDAuMnMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAuNjY2NjcsIDAuNjY2NjcsIDEpLCBvcGFjaXR5IDBzIGxpbmVhcjtcbn1cbi5oYW1idXJnZXItLXNwcmluZy1yIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gIHRyYW5zaXRpb246IHRvcCAwLjFzIDAuMnMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAuNjY2NjcsIDAuNjY2NjcsIDEpLCB0cmFuc2Zvcm0gMC4xM3MgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG59XG4uaGFtYnVyZ2VyLS1zcHJpbmctci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTAuN3JlbSwgMCkgcm90YXRlKC00NWRlZyk7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDAuMjJzO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG59XG4uaGFtYnVyZ2VyLS1zcHJpbmctci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICB0b3A6IDA7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IHRvcCAwLjJzIGN1YmljLWJlemllcigwLjMzMzMzLCAwLCAwLjY2NjY3LCAwLjMzMzMzKSwgb3BhY2l0eSAwcyAwLjIycyBsaW5lYXI7XG59XG4uaGFtYnVyZ2VyLS1zcHJpbmctci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgdG9wOiAwO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gIHRyYW5zaXRpb246IHRvcCAwLjFzIDAuMTVzIGN1YmljLWJlemllcigwLjMzMzMzLCAwLCAwLjY2NjY3LCAwLjMzMzMzKSwgdHJhbnNmb3JtIDAuMTNzIDAuMjJzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xufVxuXG4vKlxuICogU3RhbmRcbiAqL1xuLmhhbWJ1cmdlci0tc3RhbmQgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjA3NXMgMC4xNXMgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSksIGJhY2tncm91bmQtY29sb3IgMHMgMC4wNzVzIGxpbmVhcjtcbn1cbi5oYW1idXJnZXItLXN0YW5kIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gIHRyYW5zaXRpb246IHRvcCAwLjA3NXMgMC4wNzVzIGVhc2UtaW4sIHRyYW5zZm9ybSAwLjA3NXMgMHMgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG59XG4uaGFtYnVyZ2VyLS1zdGFuZCAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gIHRyYW5zaXRpb246IGJvdHRvbSAwLjA3NXMgMC4wNzVzIGVhc2UtaW4sIHRyYW5zZm9ybSAwLjA3NXMgMHMgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG59XG4uaGFtYnVyZ2VyLS1zdGFuZC5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMDc1cyAwcyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKSwgYmFja2dyb3VuZC1jb2xvciAwcyAwLjE1cyBsaW5lYXI7XG59XG4uaGFtYnVyZ2VyLS1zdGFuZC5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgdG9wOiAwO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICB0cmFuc2l0aW9uOiB0b3AgMC4wNzVzIDAuMXMgZWFzZS1vdXQsIHRyYW5zZm9ybSAwLjA3NXMgMC4xNXMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG59XG4uaGFtYnVyZ2VyLS1zdGFuZC5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICBib3R0b206IDA7XG4gIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgdHJhbnNpdGlvbjogYm90dG9tIDAuMDc1cyAwLjFzIGVhc2Utb3V0LCB0cmFuc2Zvcm0gMC4wNzVzIDAuMTVzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xufVxuXG4vKlxuICogU3RhbmQgUmV2ZXJzZVxuICovXG4uaGFtYnVyZ2VyLS1zdGFuZC1yIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4wNzVzIDAuMTVzIGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpLCBiYWNrZ3JvdW5kLWNvbG9yIDBzIDAuMDc1cyBsaW5lYXI7XG59XG4uaGFtYnVyZ2VyLS1zdGFuZC1yIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gIHRyYW5zaXRpb246IHRvcCAwLjA3NXMgMC4wNzVzIGVhc2UtaW4sIHRyYW5zZm9ybSAwLjA3NXMgMHMgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG59XG4uaGFtYnVyZ2VyLS1zdGFuZC1yIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgdHJhbnNpdGlvbjogYm90dG9tIDAuMDc1cyAwLjA3NXMgZWFzZS1pbiwgdHJhbnNmb3JtIDAuMDc1cyAwcyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcbn1cbi5oYW1idXJnZXItLXN0YW5kLXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4wNzVzIDBzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpLCBiYWNrZ3JvdW5kLWNvbG9yIDBzIDAuMTVzIGxpbmVhcjtcbn1cbi5oYW1idXJnZXItLXN0YW5kLXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gIHRvcDogMDtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgdHJhbnNpdGlvbjogdG9wIDAuMDc1cyAwLjFzIGVhc2Utb3V0LCB0cmFuc2Zvcm0gMC4wNzVzIDAuMTVzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xufVxuLmhhbWJ1cmdlci0tc3RhbmQtci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICBib3R0b206IDA7XG4gIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgdHJhbnNpdGlvbjogYm90dG9tIDAuMDc1cyAwLjFzIGVhc2Utb3V0LCB0cmFuc2Zvcm0gMC4wNzVzIDAuMTVzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xufVxuXG4vKlxuICogU3F1ZWV6ZVxuICovXG4uaGFtYnVyZ2VyLS1zcXVlZXplIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjA3NXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcbn1cbi5oYW1idXJnZXItLXNxdWVlemUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgdHJhbnNpdGlvbjogdG9wIDAuMDc1cyAwLjEycyBlYXNlLCBvcGFjaXR5IDAuMDc1cyBlYXNlO1xufVxuLmhhbWJ1cmdlci0tc3F1ZWV6ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gIHRyYW5zaXRpb246IGJvdHRvbSAwLjA3NXMgMC4xMnMgZWFzZSwgdHJhbnNmb3JtIDAuMDc1cyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcbn1cbi5oYW1idXJnZXItLXNxdWVlemUuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDAuMTJzO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG59XG4uaGFtYnVyZ2VyLS1zcXVlZXplLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICB0b3A6IDA7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IHRvcCAwLjA3NXMgZWFzZSwgb3BhY2l0eSAwLjA3NXMgMC4xMnMgZWFzZTtcbn1cbi5oYW1idXJnZXItLXNxdWVlemUuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgYm90dG9tOiAwO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICB0cmFuc2l0aW9uOiBib3R0b20gMC4wNzVzIGVhc2UsIHRyYW5zZm9ybSAwLjA3NXMgMC4xMnMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG59XG5cbi8qXG4gKiBWb3J0ZXhcbiAqL1xuLmhhbWJ1cmdlci0tdm9ydGV4IC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjJzO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTksIDEsIDAuMjIsIDEpO1xufVxuLmhhbWJ1cmdlci0tdm9ydGV4IC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSwgLmhhbWJ1cmdlci0tdm9ydGV4IC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDAuMXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG59XG4uaGFtYnVyZ2VyLS12b3J0ZXggLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdG9wLCBvcGFjaXR5O1xufVxuLmhhbWJ1cmdlci0tdm9ydGV4IC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogYm90dG9tLCB0cmFuc2Zvcm07XG59XG4uaGFtYnVyZ2VyLS12b3J0ZXguaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg3NjVkZWcpO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTksIDEsIDAuMjIsIDEpO1xufVxuLmhhbWJ1cmdlci0tdm9ydGV4LmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUsIC5oYW1idXJnZXItLXZvcnRleC5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwcztcbn1cbi5oYW1idXJnZXItLXZvcnRleC5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgdG9wOiAwO1xuICBvcGFjaXR5OiAwO1xufVxuLmhhbWJ1cmdlci0tdm9ydGV4LmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gIGJvdHRvbTogMDtcbiAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xufVxuXG4vKlxuICogVm9ydGV4IFJldmVyc2VcbiAqL1xuLmhhbWJ1cmdlci0tdm9ydGV4LXIgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMnM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xOSwgMSwgMC4yMiwgMSk7XG59XG4uaGFtYnVyZ2VyLS12b3J0ZXgtciAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUsIC5oYW1idXJnZXItLXZvcnRleC1yIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDAuMXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG59XG4uaGFtYnVyZ2VyLS12b3J0ZXgtciAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0b3AsIG9wYWNpdHk7XG59XG4uaGFtYnVyZ2VyLS12b3J0ZXgtciAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IGJvdHRvbSwgdHJhbnNmb3JtO1xufVxuLmhhbWJ1cmdlci0tdm9ydGV4LXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtNzY1ZGVnKTtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKTtcbn1cbi5oYW1idXJnZXItLXZvcnRleC1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUsIC5oYW1idXJnZXItLXZvcnRleC1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDBzO1xufVxuLmhhbWJ1cmdlci0tdm9ydGV4LXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gIHRvcDogMDtcbiAgb3BhY2l0eTogMDtcbn1cbi5oYW1idXJnZXItLXZvcnRleC1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gIGJvdHRvbTogMDtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NjBweCkge1xuICAuanMgLm1lbnUtaXRlbXMgdWwge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTYwcHgpIHtcbiAgLmpzIHVsIC5zdWItbWVudS50b2dnbGVkLW9uIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTU5cHgpIHtcbiAgLm5hdi1jb250YWluZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJhY2tncm91bmQtbmF2LW1vYmlsZS1oZWFkZXIpO1xuICAgIGxlZnQ6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAuc2l0ZS1oZWFkZXIgdWwsXG4uc2l0ZS1oZWFkZXIgbGksXG4uc2l0ZS1oZWFkZXIgYSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG4gIC5tYWluLW5hdmlnYXRpb24td3JhcHBlciB7XG4gICAgb3JkZXI6IDY7XG4gICAgei1pbmRleDogOTk5O1xuICB9XG4gIC5uby1qcyAuc2l0ZS1oZWFkZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJhY2tncm91bmQtbmF2LW1vYmlsZS1oZWFkZXIpO1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gIH1cbiAgLmRpc2FibGUtc2Nyb2xsIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG4gIC5uYXYtcHJpbWFyeSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmFja2dyb3VuZC1uYXYtbW9iaWxlLWxheWVyKTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSB2YXIoLS1oZWlnaHQtbmF2aWdhdGlvbi1tb2JpbGUpKTtcbiAgICBtYXJnaW46IDA7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG4gIC5uby1qcyAubmF2LXByaW1hcnkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLm1lbnUtaXRlbXMge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAycmVtIDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLm1lbnUtaXRlbSBhIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tY29sb3Itc2VwYXJhdG9yLW5hdi1tb2JpbGUpO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1tYWluLWxldmVsLW1vYmlsZSk7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbWFpbi1sZXZlbC1tb2JpbGUpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1tYWluLWxldmVsLW1vYmlsZSk7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1wYWRkaW5nLW1haW4tbGV2ZWwtdmVydGljYWwtbW9iaWxlKTtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXBhZGRpbmctc3ViLW1lbnUtaG9yaXpvbnRhbC1tb2JpbGUpO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXBhZGRpbmctc3ViLW1lbnUtaG9yaXpvbnRhbC1tb2JpbGUpO1xuICAgIHBhZGRpbmctdG9wOiB2YXIoLS1wYWRkaW5nLW1haW4tbGV2ZWwtdmVydGljYWwtbW9iaWxlKTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIHotaW5kZXg6IDA7XG4gIH1cbiAgLnN1Yi1tZW51IGEge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1zdWItbWVudS1tb2JpbGUpO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXN1Yi1tZW51LW1vYmlsZSk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXN1Yi1tZW51LW1vYmlsZSk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhcigtLXBhZGRpbmctc3ViLW1lbnUtdmVydGljYWwtbW9iaWxlKTtcbiAgICBwYWRkaW5nLWxlZnQ6IGNhbGModmFyKC0tcGFkZGluZy1zdWItbWVudS1ob3Jpem9udGFsLW1vYmlsZSkgKyB2YXIoLS1tYXJnaW4tbGVmdC1zdWItbWVudSkpO1xuICAgIHBhZGRpbmctdG9wOiB2YXIoLS1wYWRkaW5nLXN1Yi1tZW51LXZlcnRpY2FsLW1vYmlsZSk7XG4gIH1cbiAgLnN1Yi1tZW51IHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbiAgLnN1Yi1tZW51IC5zdWItbWVudSBhIHtcbiAgICBwYWRkaW5nLWxlZnQ6IGNhbGModmFyKC0tcGFkZGluZy1zdWItbWVudS1ob3Jpem9udGFsLW1vYmlsZSkgKyB2YXIoLS1tYXJnaW4tbGVmdC1zdWItbWVudSkgKyB2YXIoLS1tYXJnaW4tbGVmdC1zdWItbWVudSkpO1xuICB9XG4gIC5tZW51LWl0ZW0gYTpob3Zlcixcbi5tZW51LWl0ZW0gYTpmb2N1cyB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWFjdGl2ZS1tYWluLWxldmVsLW1vYmlsZSk7XG4gIH1cbiAgLm1lbnUtaXRlbS5jdXJyZW50LW1lbnUtcGFyZW50ID4gYSxcbi5tZW51LWl0ZW0uY3VycmVudC1tZW51LWl0ZW0gPiBhIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItY3VycmVudC1tb2JpbGUpO1xuICB9XG4gIC5kcm9wZG93bi10b2dnbGUge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiAwO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1kcm9wZG93bi10b2dnbGUtbW9iaWxlKTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbGVmdDogYXV0bztcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1heC1oZWlnaHQ6IDUycHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tcGFkZGluZy1zdWItbWVudS12ZXJ0aWNhbC1tb2JpbGUpO1xuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tcGFkZGluZy1zdWItbWVudS1ob3Jpem9udGFsLW1vYmlsZSk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKC0tcGFkZGluZy1zdWItbWVudS1ob3Jpem9udGFsLW1vYmlsZSk7XG4gICAgcGFkZGluZy10b3A6IHZhcigtLXBhZGRpbmctc3ViLW1lbnUtdmVydGljYWwtbW9iaWxlKTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiAycHg7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gICAgdHJhbnNpdGlvbjogYWxsIDUwbXM7XG4gICAgei1pbmRleDogOTk5OTtcbiAgfVxuICAuZHJvcGRvd24tdG9nZ2xlOmZvY3VzIHtcbiAgICB6LWluZGV4OiAxMDAwMDtcbiAgfVxuICAuc3ViLW1lbnUgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLXN1Yi1tZW51LW1vYmlsZSk7XG4gIH1cbiAgLmRyb3Bkb3duLXRvZ2dsZSBzdmcge1xuICAgIGhlaWdodDogdmFyKC0tZHJvcGRvd24tdG9nZ2xlLXNpemUtbW9iaWxlKTtcbiAgICB3aWR0aDogdmFyKC0tZHJvcGRvd24tdG9nZ2xlLXNpemUtbW9iaWxlKTtcbiAgfVxuICAuZHJvcGRvd24tdG9nZ2xlLnRvZ2dsZWQtb24ge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTgwZGVnKTtcbiAgfVxuICAuanMgLm5hdi1wcmltYXJ5IHtcbiAgICBsZWZ0OiAwO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IHZhcigtLWhlaWdodC1uYXZpZ2F0aW9uLW1vYmlsZSk7XG4gICAgei1pbmRleDogNTtcbiAgfVxuICAuanMgLm5hdi1wcmltYXJ5IC5tZW51LWl0ZW1zIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1iYWNrZ3JvdW5kLW5hdi1tb2JpbGUtbGF5ZXIpO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbiAgLmpzLmpzLW5hdi1hY3RpdmUge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cbiAgLmpzLmpzLW5hdi1hY3RpdmUgLm5hdi1wcmltYXJ5IHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHBvaW50ZXItZXZlbnRzOiBhbGw7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuICAuanMuanMtbmF2LWFjdGl2ZSAubWVudS1pdGVtcyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmFja2dyb3VuZC1uYXYtbW9iaWxlLWxheWVyLWFjdGl2ZSk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICAuanMuanMtbmF2LWFjdGl2ZSAubmF2LWNvbnRhaW5lciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmFja2dyb3VuZC1uYXYtbW9iaWxlLWhlYWRlci1hY3RpdmUpO1xuICB9XG4gIEBzdXBwb3J0cyAoLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lKSB7XG4gICAgLmpzLmpzLW5hdi1hY3RpdmUgLm1haW4tbmF2aWdhdGlvbi13cmFwcGVyIHtcbiAgICAgIHdpZHRoOiB1bnNldDtcbiAgICB9XG4gIH1cbiAgQHN1cHBvcnRzICgtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmUpIHtcbiAgICAuanMgLm1haW4tbmF2aWdhdGlvbi13cmFwcGVyIHtcbiAgICAgIHdpZHRoOiAzcmVtO1xuICAgIH1cbiAgfVxuICAuc2l0ZSB7XG4gICAgcGFkZGluZy10b3A6IHZhcigtLWhlaWdodC1uYXZpZ2F0aW9uLW1vYmlsZSk7XG4gIH1cbiAgLm5hdi1wcmltYXJ5IHtcbiAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMjUwbXMgZWFzZS1pbi1vdXQ7XG4gICAgd2lkdGg6IDEwMHZ3O1xuICB9XG4gIC5qcy5qcy1uYXYtYWN0aXZlIC5uYXYtcHJpbWFyeSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgfVxuICAuc2l0ZS1tYWluIHtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMjUwbXMgZWFzZS1pbi1vdXQ7XG4gIH1cbiAgLmpzLmpzLW5hdi1hY3RpdmUgLnNpdGUtbWFpbiB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMzEwcHgsIDAsIDApO1xuICB9XG59XG4uaGFtYnVyZ2VyLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyLFxuLmhhbWJ1cmdlci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlLFxuLmhhbWJ1cmdlci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1oYW1idXJnZXItYWN0aXZlKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWhhbWJ1cmdlci1hY3RpdmUpO1xufVxuXG4ubmF2LXRvZ2dsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1oYW1idXJnZXIpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1zZW1pYm9sZCk7XG4gIG1hcmdpbjogMDtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIHBhZGRpbmc6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0b3A6IDA7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICB6LWluZGV4OiAxMDAwMDA7XG59XG4ubmF2LXRvZ2dsZTpub3QoLnRvZ2dsZWQtb24pIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2l0aW9uOiB3aWR0aCA1MG1zO1xuICB3aWR0aDogMThweDtcbn1cbi5uYXYtdG9nZ2xlLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyLCAubmF2LXRvZ2dsZTpob3ZlciAuaGFtYnVyZ2VyLWlubmVyLCAubmF2LXRvZ2dsZTpmb2N1cyAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgd2lkdGg6IDNyZW07XG59XG4ubmF2LXRvZ2dsZSBzcGFuIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWhhbWJ1cmdlcik7XG4gIGZvbnQtc2l6ZTogMS4yZW07XG59XG4ubmF2LXRvZ2dsZS5pcy1hY3RpdmUgc3BhbiB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1oYW1idXJnZXItYWN0aXZlKTtcbn1cbi5uYXYtdG9nZ2xlOmhvdmVyLCAubmF2LXRvZ2dsZTphY3RpdmUge1xuICBjb2xvcjogdmFyKC0tY29sb3ItaGFtYnVyZ2VyKTtcbn1cbi5uYXYtdG9nZ2xlOmhvdmVyIHNwYW4sIC5uYXYtdG9nZ2xlOmFjdGl2ZSBzcGFuIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWhhbWJ1cmdlcik7XG59XG4ubmF2LXRvZ2dsZTpmb2N1cyBzcGFuIHNwYW4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1oYW1idXJnZXIpO1xufVxuLm5hdi10b2dnbGU6Zm9jdXMgc3BhbiBzcGFuOjpiZWZvcmUsXG4ubmF2LXRvZ2dsZTpmb2N1cyBzcGFuIHNwYW46OmFmdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItaGFtYnVyZ2VyKTtcbn1cbi5uYXYtdG9nZ2xlOm5vdCguaGFzLXZpc2libGUtbGFiZWwpIC5uYXYtdG9nZ2xlLWxhYmVsIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5uYXYtdG9nZ2xlLmlzLWFjdGl2ZSB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1oYW1idXJnZXItYWN0aXZlKTtcbn1cbi5uYXYtdG9nZ2xlLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWJveCAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItaGFtYnVyZ2VyLWFjdGl2ZSk7XG59XG4ubmF2LXRvZ2dsZS5pcy1hY3RpdmUgLmhhbWJ1cmdlci1ib3ggLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1oYW1idXJnZXItYWN0aXZlKTtcbn1cbi5uYXYtdG9nZ2xlLmlzLWFjdGl2ZSAuZm9jdXMgLmhhbWJ1cmdlci1pbm5lciwgLm5hdi10b2dnbGUuaXMtYWN0aXZlIHNwYW46Zm9jdXMgLmhhbWJ1cmdlci1pbm5lciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWhhbWJ1cmdlci1hY3RpdmUpO1xufVxuLm5hdi10b2dnbGUuaXMtYWN0aXZlIC5mb2N1cyAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciwgLm5hdi10b2dnbGUuaXMtYWN0aXZlIHNwYW46Zm9jdXMgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1oYW1idXJnZXItYWN0aXZlKTtcbn1cbi5uYXYtdG9nZ2xlLmlzLWFjdGl2ZSBzcGFuOmZvY3VzLCAubmF2LXRvZ2dsZS5pcy1hY3RpdmUgc3Bhbjpob3ZlciwgLm5hdi10b2dnbGUuaXMtYWN0aXZlIHNwYW46YWN0aXZlIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWhhbWJ1cmdlci1hY3RpdmUpO1xufVxuLm5hdi10b2dnbGUuaXMtYWN0aXZlIHNwYW46Zm9jdXMgc3BhbiwgLm5hdi10b2dnbGUuaXMtYWN0aXZlIHNwYW46aG92ZXIgc3BhbiwgLm5hdi10b2dnbGUuaXMtYWN0aXZlIHNwYW46YWN0aXZlIHNwYW4ge1xuICBjb2xvcjogdmFyKC0tY29sb3ItaGFtYnVyZ2VyLWFjdGl2ZSk7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTYwcHgpIHtcbiAgLm5hdi10b2dnbGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA5NTlweCkge1xuICAubmF2LXRvZ2dsZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgLm5hdi10b2dnbGUuaGFzLXZpc2libGUtbGFiZWwge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxuICAubmF2LXRvZ2dsZS5oYXMtdmlzaWJsZS1sYWJlbCAubmF2LXRvZ2dsZS1sYWJlbCB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbmF2LXRvZ2dsZS1sYWJlbCk7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA5NTlweCkgYW5kIChtYXgtd2lkdGg6IDQxMHB4KSB7XG4gIC5uYXYtdG9nZ2xlLmhhcy12aXNpYmxlLWxhYmVsIC5uYXYtdG9nZ2xlLWxhYmVsIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogOTU5cHgpIGFuZCAobWluLXdpZHRoOiA0MTFweCkge1xuICAubmF2LXRvZ2dsZS5oYXMtdmlzaWJsZS1sYWJlbCB7XG4gICAgZ2FwOiAxLjVyZW07XG4gIH1cbn1cblxuLmJsb2NrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmJsb2NrLmhhcy11bmlmaWVkLXBhZGRpbmctaWYtc3RhY2tlZCArIC5ibG9jay5oYXMtdW5pZmllZC1wYWRkaW5nLWlmLXN0YWNrZWQgLmNvbnRhaW5lciB7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBwYWRkaW5nLXRvcDogMDtcbn1cblxuLnNoYWRlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmFja2dyb3VuZC1zaGFkZSk7XG4gIGhlaWdodDogMTAwJTtcbiAgbGVmdDogMDtcbiAgb3BhY2l0eTogMC4zNTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiAwO1xufVxuXG4uZ2xvYmFsLWxpbmsge1xuICBoZWlnaHQ6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgei1pbmRleDogMztcbn1cblxuLnNpdGUge1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmNvbnRhaW5lciB7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXgtd2lkdGg6IDE0NDBweDtcbiAgcGFkZGluZy1ib3R0b206IHZhcigtLXBhZGRpbmctY29udGFpbmVyLXZlcnRpY2FsKTtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gIHBhZGRpbmctdG9wOiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci12ZXJ0aWNhbCk7XG59XG5cbi5zaXRlLW1haW4gLmNvbnRhaW5lciB7XG4gIGNsZWFyOiBib3RoO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uZW50cnktZm9vdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgbWFyZ2luLXRvcDogdmFyKC0tcGFkZGluZy1jb250YWluZXItdmVydGljYWwpO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uZWRpdC1saW5rIHtcbiAgY2xlYXI6IGJvdGg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBtYXJnaW4tdG9wOiAycmVtO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1pbi13aWR0aDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgdHJhbnNpdGlvbjogYWxsIDUwbXM7XG4gIHdpZHRoOiAxMDAlO1xufVxuLmVkaXQtbGluayBhIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICBib3JkZXI6IDJweCBkYXNoZWQgdmFyKC0tY29sb3ItbGluay1lZGl0LWJvcmRlcik7XG4gIGNsZWFyOiBib3RoO1xuICBjb2xvcjogdmFyKC0tY29sb3ItbGluay1lZGl0LXRleHQpO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAycmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdHJhbnNpdGlvbjogYWxsIDUwbXM7XG59XG4uZWRpdC1saW5rOmZvY3VzLFxuLmVkaXQtbGluayBhOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItbGluay1lZGl0LWJhY2tncm91bmQtaG92ZXIpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItbGluay1lZGl0LXRleHQtaG92ZXIpO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLmhpZGUtb24tZGVza3RvcCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAuaGlkZS1vbi1tb2JpbGUge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTYwcHgpIHtcbiAgLmhpZGUtb24tbW9iaWxlLW5hdi12aWV3IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDk2MHB4KSB7XG4gIC5oaWRlLW9uLWRlc2t0b3AtbmF2LXZpZXcge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uaGlkZS1jb21wbGV0ZWx5IHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG5AbWVkaWEgcHJpbnQge1xuICAubmF2LWNvbnRhaW5lcixcbi5zaXRlLWZvb3Rlcixcbi5zaWRlLW5hdiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuOnJvb3Qge1xuICBmb250LXNpemU6IDYyLjUlO1xufVxuXG5ib2R5IHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXBhcmFncmFwaCk7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXBhcmFncmFwaCk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWRlZmF1bHQpO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXBhcmFncmFwaHMpO1xuICB0ZXh0LXJlbmRlcmluZzogZ2VvbWV0cmljUHJlY2lzaW9uO1xufVxuXG5wLFxuZGQsXG5kdCxcbmZpZ2NhcHRpb24sXG5ocixcbnNtYWxsLFxub2wsXG51bCxcbmxpLFxuYmxvY2txdW90ZSxcbmtiZCxcbnByZSxcbnNhbXAsXG5jb2RlLFxudGgsXG50ZCxcbnRhYmxlLFxudHIsXG50ZXh0YXJlYSxcbmlucHV0W3R5cGU9dGV4dF0sXG5pbnB1dFt0eXBlPXRlbF0sXG5pbnB1dFt0eXBlPXVybF0sXG5pbnB1dFt0eXBlPXBhc3N3b3JkXSxcbmlucHV0W3R5cGU9bnVtYmVyXSxcbmlucHV0W3R5cGU9bW9udGhdLFxuaW5wdXRbdHlwZT13ZWVrXSxcbmlucHV0W3R5cGU9ZW1haWxdLFxuaW5wdXRbdHlwZT1zZWFyY2hdIHtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtcGFyYWdyYXBocyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1wYXJhZ3JhcGhzKTtcbn1cblxuaDEsXG5oMixcbmgzLFxuaDQsXG5oNSxcbmg2IHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWhlYWRpbmcpO1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1oZWFkaW5nKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWhlYWRpbmdzKTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tbWFyZ2luLWJldHdlZW4tcGFyYWdyYXBocyk7XG4gIG1hcmdpbi10b3A6IHZhcigtLW1hcmdpbi1iZXR3ZWVuLXBhcmFncmFwaHMpO1xufVxuXG5oMixcbmgzLFxuaDQsXG5oNSxcbmg2IHtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWhlYWRpbmdzKTtcbn1cblxuaDEge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oMSk7XG59XG5cbmgyIHtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaDIpO1xufVxuXG5oMyB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWgzKTtcbn1cblxuaDQge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oNCk7XG59XG5cbmg1IHtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaDUpO1xufVxuXG5oNiB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWg2KTtcbn1cblxuaDE6Zmlyc3QtY2hpbGQsXG5oMjpmaXJzdC1jaGlsZCxcbmgzOmZpcnN0LWNoaWxkLFxuaDQ6Zmlyc3QtY2hpbGQsXG5oNTpmaXJzdC1jaGlsZCxcbmg2OmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cblxuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcbn1cblxuZW0sXG5pIHtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG5wIHtcbiAgbWFyZ2luLWJvdHRvbTogMi45cmVtO1xuICBtYXJnaW4tdG9wOiAyLjlyZW07XG59XG5cbnA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5zaXRlLWhlYWRlciB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWF4LXdpZHRoOiAxNDQwcHg7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoLS1wYWRkaW5nLXNpdGUtaGVhZGVyLXZlcnRpY2FsKTtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gIHBhZGRpbmctdG9wOiB2YXIoLS1wYWRkaW5nLXNpdGUtaGVhZGVyLXZlcnRpY2FsKTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxNTtcbn1cblxuLnNpdGUtdGl0bGUge1xuICBsaW5lLWhlaWdodDogMDtcbiAgbWFyZ2luOiAwO1xufVxuLnNpdGUtdGl0bGUgYSB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG5cbi5uYXYtY29udGFpbmVyIHtcbiAgei1pbmRleDogMTA7XG59XG5cbi5zaXRlLW1haW4ge1xuICBkaXNwbGF5OiBncmlkO1xufVxuXG4uc2l0ZS1tYWluOjphZnRlciB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh2YXIoLS1jb2xvci1ibGFjayksIHZhcigtLWNvbG9yLXNjaWVuY2UtYmx1ZSkpLCBsaW5lYXItZ3JhZGllbnQodmFyKC0tY29sb3ItYmxhY2spLCB2YXIoLS1jb2xvci1zY2llbmNlLWJsdWUpKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwLCAxMDAlIDA7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogM3B4IDEwMCU7XG4gIGJvcmRlci1ib3R0b206IDNweCBzb2xpZCB2YXIoLS1jb2xvci1zY2llbmNlLWJsdWUpO1xuICBib3JkZXItdG9wOiAzcHggc29saWQgdmFyKC0tY29sb3ItYmxhY2spO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYmxhY2spO1xuICBjb250ZW50OiBcIkJ1aWxkIHlvdXIgd2Vic2l0ZSBoZXJlISAoUmVtb3ZlIHRoaXMgYml0IGluIHNhc3MvbGF5b3V0L19zaXRlLWhlYWRlci5zY3NzKVwiO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmb250LXNpemU6IGNsYW1wKDAuNXJlbSwgMy40dncsIDNyZW0pO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtc2VtaWJvbGQpO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tcGFkZGluZy1jb250YWluZXItdmVydGljYWwpO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tdG9wOiBjYWxjKHZhcigtLXBhZGRpbmctY29udGFpbmVyLXZlcnRpY2FsKSAqIDIpO1xuICBtYXgtd2lkdGg6IDE0MDBweDtcbiAgb3BhY2l0eTogMC43O1xuICBvcmRlcjogLTE7XG4gIHBhZGRpbmc6IDRyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aWR0aDogY2FsYygxMDAlIC0gNHJlbSk7XG59XG5cbi5zaXRlLWZvb3RlciB7XG4gIGNsZWFyOiBib3RoO1xuICBjb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nOiA2cmVtIDJyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5zaXRlLWZvb3RlciBwLFxuLnNpdGUtZm9vdGVyIHNwYW4ge1xuICBjb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xufVxuLnNpdGUtZm9vdGVyIC53b3JkcHJlc3MtbG9nbyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuLnNpdGUtZm9vdGVyIHNwYW4ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLnNpdGUtZm9vdGVyIHN2ZyB7XG4gIG1hcmdpbi1yaWdodDogNXB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uc2l0ZS1mb290ZXIgLnBvd2VyZWQtYnktd29yZHByZXNzIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtc2VtaWJvbGQpO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4uc2l0ZS1mb290ZXIgLmdpdGh1Yi1saW5rIHtcbiAgbWFyZ2luLWxlZnQ6IDhweDtcbiAgbWFyZ2luLXRvcDogNHB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nLWJvdHRvbTogNHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uc2l0ZS1mb290ZXIgYSB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgNTBtcztcbn1cbi5zaXRlLWZvb3RlciBhOmhvdmVyLCAuc2l0ZS1mb290ZXIgYTpmb2N1cyB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIG9wYWNpdHk6IDAuNTtcbn1cbi5zaXRlLWZvb3RlciBhOmhvdmVyOjphZnRlciwgLnNpdGUtZm9vdGVyIGE6Zm9jdXM6OmFmdGVyIHtcbiAgb3BhY2l0eTogMC4yO1xufVxuLnNpdGUtZm9vdGVyIC50aGVtZS1pbmZvIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5zaXRlLWZvb3RlciAudGhlbWUtaW5mbyBpIHtcbiAgbWFyZ2luOiAwIDVweDtcbn1cblxuLnNpdGUtbWFpbiAuYnV0dG9uLXdyYXBwZXIsXG4uc2l0ZS1mb290ZXIgLmJ1dHRvbi13cmFwcGVyIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5zaXRlLW1haW4gYnV0dG9uLFxuLnNpdGUtbWFpbiAuYnV0dG9uLFxuLnNpdGUtbWFpbiBpbnB1dFt0eXBlPXJlc2V0XSxcbi5zaXRlLW1haW4gaW5wdXRbdHlwZT1zdWJtaXRdLFxuLnNpdGUtbWFpbiBpbnB1dFt0eXBlPWJ1dHRvbl0sXG4uc2l0ZS1mb290ZXIgYnV0dG9uLFxuLnNpdGUtZm9vdGVyIC5idXR0b24sXG4uc2l0ZS1mb290ZXIgaW5wdXRbdHlwZT1yZXNldF0sXG4uc2l0ZS1mb290ZXIgaW5wdXRbdHlwZT1zdWJtaXRdLFxuLnNpdGUtZm9vdGVyIGlucHV0W3R5cGU9YnV0dG9uXSB7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJ1dHRvbi1iYWNrZ3JvdW5kKTtcbiAgYm9yZGVyOiB2YXIoLS1ib3JkZXItd2lkdGgtaW5wdXQtZmllbGQpIHNvbGlkIHZhcigtLWNvbG9yLWJ1dHRvbi1iYWNrZ3JvdW5kKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1pbnB1dC1maWVsZCk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1idXR0b24pO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtcGFyYWdyYXBoKTtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtMTYpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtc2VtaWJvbGQpO1xuICBsaW5lLWhlaWdodDogMTkuNjM2NHB4O1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBtYXgtd2lkdGg6IDIzMHB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nLWJvdHRvbTogY2FsYygxNHB4IC0gdmFyKC0tYm9yZGVyLXdpZHRoLWlucHV0LWZpZWxkKSAqIDIpO1xuICBwYWRkaW5nLWxlZnQ6IGNhbGMoMjFweCAtIHZhcigtLWJvcmRlci13aWR0aC1pbnB1dC1maWVsZCkgKiAyKTtcbiAgcGFkZGluZy1yaWdodDogY2FsYygyMXB4IC0gdmFyKC0tYm9yZGVyLXdpZHRoLWlucHV0LWZpZWxkKSAqIDIpO1xuICBwYWRkaW5nLXRvcDogY2FsYygxNHB4IC0gdmFyKC0tYm9yZGVyLXdpZHRoLWlucHV0LWZpZWxkKSAqIDIpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHRyYW5zaXRpb246IGFsbCA1MG1zIGN1YmljLWJlemllcigwLjI1LCAwLjQ2LCAwLjQ1LCAwLjk0KTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgd2lkdGg6IGF1dG87XG59XG4uc2l0ZS1tYWluIGJ1dHRvbi5mb2N1cywgLnNpdGUtbWFpbiBidXR0b246aG92ZXIsIC5zaXRlLW1haW4gYnV0dG9uOmZvY3VzLFxuLnNpdGUtbWFpbiAuYnV0dG9uLmZvY3VzLFxuLnNpdGUtbWFpbiAuYnV0dG9uOmhvdmVyLFxuLnNpdGUtbWFpbiAuYnV0dG9uOmZvY3VzLFxuLnNpdGUtbWFpbiBpbnB1dFt0eXBlPXJlc2V0XS5mb2N1cyxcbi5zaXRlLW1haW4gaW5wdXRbdHlwZT1yZXNldF06aG92ZXIsXG4uc2l0ZS1tYWluIGlucHV0W3R5cGU9cmVzZXRdOmZvY3VzLFxuLnNpdGUtbWFpbiBpbnB1dFt0eXBlPXN1Ym1pdF0uZm9jdXMsXG4uc2l0ZS1tYWluIGlucHV0W3R5cGU9c3VibWl0XTpob3Zlcixcbi5zaXRlLW1haW4gaW5wdXRbdHlwZT1zdWJtaXRdOmZvY3VzLFxuLnNpdGUtbWFpbiBpbnB1dFt0eXBlPWJ1dHRvbl0uZm9jdXMsXG4uc2l0ZS1tYWluIGlucHV0W3R5cGU9YnV0dG9uXTpob3Zlcixcbi5zaXRlLW1haW4gaW5wdXRbdHlwZT1idXR0b25dOmZvY3VzLFxuLnNpdGUtZm9vdGVyIGJ1dHRvbi5mb2N1cyxcbi5zaXRlLWZvb3RlciBidXR0b246aG92ZXIsXG4uc2l0ZS1mb290ZXIgYnV0dG9uOmZvY3VzLFxuLnNpdGUtZm9vdGVyIC5idXR0b24uZm9jdXMsXG4uc2l0ZS1mb290ZXIgLmJ1dHRvbjpob3Zlcixcbi5zaXRlLWZvb3RlciAuYnV0dG9uOmZvY3VzLFxuLnNpdGUtZm9vdGVyIGlucHV0W3R5cGU9cmVzZXRdLmZvY3VzLFxuLnNpdGUtZm9vdGVyIGlucHV0W3R5cGU9cmVzZXRdOmhvdmVyLFxuLnNpdGUtZm9vdGVyIGlucHV0W3R5cGU9cmVzZXRdOmZvY3VzLFxuLnNpdGUtZm9vdGVyIGlucHV0W3R5cGU9c3VibWl0XS5mb2N1cyxcbi5zaXRlLWZvb3RlciBpbnB1dFt0eXBlPXN1Ym1pdF06aG92ZXIsXG4uc2l0ZS1mb290ZXIgaW5wdXRbdHlwZT1zdWJtaXRdOmZvY3VzLFxuLnNpdGUtZm9vdGVyIGlucHV0W3R5cGU9YnV0dG9uXS5mb2N1cyxcbi5zaXRlLWZvb3RlciBpbnB1dFt0eXBlPWJ1dHRvbl06aG92ZXIsXG4uc2l0ZS1mb290ZXIgaW5wdXRbdHlwZT1idXR0b25dOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnV0dG9uLWJhY2tncm91bmQtaG92ZXIpO1xuICBib3JkZXI6IHZhcigtLWJvcmRlci13aWR0aC1pbnB1dC1maWVsZCkgc29saWQgdmFyKC0tY29sb3ItYnV0dG9uLWJhY2tncm91bmQtaG92ZXIpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnV0dG9uLWhvdmVyKTtcbn1cbi5zaXRlLW1haW4gYnV0dG9uLmJ1dHRvbi1zbWFsbCxcbi5zaXRlLW1haW4gLmJ1dHRvbi5idXR0b24tc21hbGwsXG4uc2l0ZS1tYWluIGlucHV0W3R5cGU9cmVzZXRdLmJ1dHRvbi1zbWFsbCxcbi5zaXRlLW1haW4gaW5wdXRbdHlwZT1zdWJtaXRdLmJ1dHRvbi1zbWFsbCxcbi5zaXRlLW1haW4gaW5wdXRbdHlwZT1idXR0b25dLmJ1dHRvbi1zbWFsbCxcbi5zaXRlLWZvb3RlciBidXR0b24uYnV0dG9uLXNtYWxsLFxuLnNpdGUtZm9vdGVyIC5idXR0b24uYnV0dG9uLXNtYWxsLFxuLnNpdGUtZm9vdGVyIGlucHV0W3R5cGU9cmVzZXRdLmJ1dHRvbi1zbWFsbCxcbi5zaXRlLWZvb3RlciBpbnB1dFt0eXBlPXN1Ym1pdF0uYnV0dG9uLXNtYWxsLFxuLnNpdGUtZm9vdGVyIGlucHV0W3R5cGU9YnV0dG9uXS5idXR0b24tc21hbGwge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0xNik7XG4gIGxpbmUtaGVpZ2h0OiAyMC45MDkxcHg7XG4gIHBhZGRpbmctYm90dG9tOiBjYWxjKDEwcHggLSB2YXIoLS1ib3JkZXItd2lkdGgtaW5wdXQtZmllbGQpICogMik7XG4gIHBhZGRpbmctbGVmdDogY2FsYygyMXB4IC0gdmFyKC0tYm9yZGVyLXdpZHRoLWlucHV0LWZpZWxkKSAqIDIpO1xuICBwYWRkaW5nLXJpZ2h0OiBjYWxjKDIxcHggLSB2YXIoLS1ib3JkZXItd2lkdGgtaW5wdXQtZmllbGQpICogMik7XG4gIHBhZGRpbmctdG9wOiBjYWxjKDEwcHggLSB2YXIoLS1ib3JkZXItd2lkdGgtaW5wdXQtZmllbGQpICogMik7XG59XG4uc2l0ZS1tYWluIGJ1dHRvbi5idXR0b24tbGFyZ2UsXG4uc2l0ZS1tYWluIC5idXR0b24uYnV0dG9uLWxhcmdlLFxuLnNpdGUtbWFpbiBpbnB1dFt0eXBlPXJlc2V0XS5idXR0b24tbGFyZ2UsXG4uc2l0ZS1tYWluIGlucHV0W3R5cGU9c3VibWl0XS5idXR0b24tbGFyZ2UsXG4uc2l0ZS1tYWluIGlucHV0W3R5cGU9YnV0dG9uXS5idXR0b24tbGFyZ2UsXG4uc2l0ZS1mb290ZXIgYnV0dG9uLmJ1dHRvbi1sYXJnZSxcbi5zaXRlLWZvb3RlciAuYnV0dG9uLmJ1dHRvbi1sYXJnZSxcbi5zaXRlLWZvb3RlciBpbnB1dFt0eXBlPXJlc2V0XS5idXR0b24tbGFyZ2UsXG4uc2l0ZS1mb290ZXIgaW5wdXRbdHlwZT1zdWJtaXRdLmJ1dHRvbi1sYXJnZSxcbi5zaXRlLWZvb3RlciBpbnB1dFt0eXBlPWJ1dHRvbl0uYnV0dG9uLWxhcmdlIHtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtMTgpO1xuICBsaW5lLWhlaWdodDogMjMuMDkwOXB4O1xuICBwYWRkaW5nLWJvdHRvbTogY2FsYygxN3B4IC0gdmFyKC0tYm9yZGVyLXdpZHRoLWlucHV0LWZpZWxkKSAqIDIpO1xuICBwYWRkaW5nLWxlZnQ6IGNhbGMoMjFweCAtIHZhcigtLWJvcmRlci13aWR0aC1pbnB1dC1maWVsZCkgKiAyKTtcbiAgcGFkZGluZy1yaWdodDogY2FsYygyMXB4IC0gdmFyKC0tYm9yZGVyLXdpZHRoLWlucHV0LWZpZWxkKSAqIDIpO1xuICBwYWRkaW5nLXRvcDogY2FsYygxN3B4IC0gdmFyKC0tYm9yZGVyLXdpZHRoLWlucHV0LWZpZWxkKSAqIDIpO1xufVxuLnNpdGUtbWFpbiBidXR0b24uYnV0dG9uLWdob3N0LFxuLnNpdGUtbWFpbiAuYnV0dG9uLmJ1dHRvbi1naG9zdCxcbi5zaXRlLW1haW4gaW5wdXRbdHlwZT1yZXNldF0uYnV0dG9uLWdob3N0LFxuLnNpdGUtbWFpbiBpbnB1dFt0eXBlPXN1Ym1pdF0uYnV0dG9uLWdob3N0LFxuLnNpdGUtbWFpbiBpbnB1dFt0eXBlPWJ1dHRvbl0uYnV0dG9uLWdob3N0LFxuLnNpdGUtZm9vdGVyIGJ1dHRvbi5idXR0b24tZ2hvc3QsXG4uc2l0ZS1mb290ZXIgLmJ1dHRvbi5idXR0b24tZ2hvc3QsXG4uc2l0ZS1mb290ZXIgaW5wdXRbdHlwZT1yZXNldF0uYnV0dG9uLWdob3N0LFxuLnNpdGUtZm9vdGVyIGlucHV0W3R5cGU9c3VibWl0XS5idXR0b24tZ2hvc3QsXG4uc2l0ZS1mb290ZXIgaW5wdXRbdHlwZT1idXR0b25dLmJ1dHRvbi1naG9zdCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IHZhcigtLWJvcmRlci13aWR0aC1pbnB1dC1maWVsZCkgc29saWQgdmFyKC0tY29sb3ItYnV0dG9uLWJhY2tncm91bmQpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWlucHV0LWZpZWxkKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJ1dHRvbi1iYWNrZ3JvdW5kKTtcbiAgdHJhbnNpdGlvbjogYWxsIDUwbXMgY3ViaWMtYmV6aWVyKDAuMjUsIDAuNDYsIDAuNDUsIDAuOTQpO1xufVxuLnNpdGUtbWFpbiBidXR0b24uYnV0dG9uLWdob3N0LmZvY3VzLCAuc2l0ZS1tYWluIGJ1dHRvbi5idXR0b24tZ2hvc3Q6Zm9jdXMsIC5zaXRlLW1haW4gYnV0dG9uLmJ1dHRvbi1naG9zdDpob3Zlcixcbi5zaXRlLW1haW4gLmJ1dHRvbi5idXR0b24tZ2hvc3QuZm9jdXMsXG4uc2l0ZS1tYWluIC5idXR0b24uYnV0dG9uLWdob3N0OmZvY3VzLFxuLnNpdGUtbWFpbiAuYnV0dG9uLmJ1dHRvbi1naG9zdDpob3Zlcixcbi5zaXRlLW1haW4gaW5wdXRbdHlwZT1yZXNldF0uYnV0dG9uLWdob3N0LmZvY3VzLFxuLnNpdGUtbWFpbiBpbnB1dFt0eXBlPXJlc2V0XS5idXR0b24tZ2hvc3Q6Zm9jdXMsXG4uc2l0ZS1tYWluIGlucHV0W3R5cGU9cmVzZXRdLmJ1dHRvbi1naG9zdDpob3Zlcixcbi5zaXRlLW1haW4gaW5wdXRbdHlwZT1zdWJtaXRdLmJ1dHRvbi1naG9zdC5mb2N1cyxcbi5zaXRlLW1haW4gaW5wdXRbdHlwZT1zdWJtaXRdLmJ1dHRvbi1naG9zdDpmb2N1cyxcbi5zaXRlLW1haW4gaW5wdXRbdHlwZT1zdWJtaXRdLmJ1dHRvbi1naG9zdDpob3Zlcixcbi5zaXRlLW1haW4gaW5wdXRbdHlwZT1idXR0b25dLmJ1dHRvbi1naG9zdC5mb2N1cyxcbi5zaXRlLW1haW4gaW5wdXRbdHlwZT1idXR0b25dLmJ1dHRvbi1naG9zdDpmb2N1cyxcbi5zaXRlLW1haW4gaW5wdXRbdHlwZT1idXR0b25dLmJ1dHRvbi1naG9zdDpob3Zlcixcbi5zaXRlLWZvb3RlciBidXR0b24uYnV0dG9uLWdob3N0LmZvY3VzLFxuLnNpdGUtZm9vdGVyIGJ1dHRvbi5idXR0b24tZ2hvc3Q6Zm9jdXMsXG4uc2l0ZS1mb290ZXIgYnV0dG9uLmJ1dHRvbi1naG9zdDpob3Zlcixcbi5zaXRlLWZvb3RlciAuYnV0dG9uLmJ1dHRvbi1naG9zdC5mb2N1cyxcbi5zaXRlLWZvb3RlciAuYnV0dG9uLmJ1dHRvbi1naG9zdDpmb2N1cyxcbi5zaXRlLWZvb3RlciAuYnV0dG9uLmJ1dHRvbi1naG9zdDpob3Zlcixcbi5zaXRlLWZvb3RlciBpbnB1dFt0eXBlPXJlc2V0XS5idXR0b24tZ2hvc3QuZm9jdXMsXG4uc2l0ZS1mb290ZXIgaW5wdXRbdHlwZT1yZXNldF0uYnV0dG9uLWdob3N0OmZvY3VzLFxuLnNpdGUtZm9vdGVyIGlucHV0W3R5cGU9cmVzZXRdLmJ1dHRvbi1naG9zdDpob3Zlcixcbi5zaXRlLWZvb3RlciBpbnB1dFt0eXBlPXN1Ym1pdF0uYnV0dG9uLWdob3N0LmZvY3VzLFxuLnNpdGUtZm9vdGVyIGlucHV0W3R5cGU9c3VibWl0XS5idXR0b24tZ2hvc3Q6Zm9jdXMsXG4uc2l0ZS1mb290ZXIgaW5wdXRbdHlwZT1zdWJtaXRdLmJ1dHRvbi1naG9zdDpob3Zlcixcbi5zaXRlLWZvb3RlciBpbnB1dFt0eXBlPWJ1dHRvbl0uYnV0dG9uLWdob3N0LmZvY3VzLFxuLnNpdGUtZm9vdGVyIGlucHV0W3R5cGU9YnV0dG9uXS5idXR0b24tZ2hvc3Q6Zm9jdXMsXG4uc2l0ZS1mb290ZXIgaW5wdXRbdHlwZT1idXR0b25dLmJ1dHRvbi1naG9zdDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJ1dHRvbi1iYWNrZ3JvdW5kKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1idXR0b24tYmFja2dyb3VuZCk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG59XG5cbnNlbGVjdCB7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uLy4uL3N2Zy9zZWxlY3Quc3ZnXCIpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCB2YXIoLS1nYXAtc2VsZWN0LWljb24pIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiAxMXB4IGF1dG87XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItYm9yZGVyLWZvcm1zKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zZWxlY3QpO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IHZhcigtLWJvcmRlci13aWR0aC1pbnB1dC1maWVsZCk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1mb3JtLXRleHQpO1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1pbnB1dC1maWVsZHMpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tZm9ybS1saW5lLWhlaWdodCk7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWluLXdpZHRoOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tZm9ybS1wYWRkaW5nLXZlcnRpY2FsKTtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoLS1mb3JtLXBhZGRpbmctaG9yaXpvbnRhbCk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhcigtLWZvcm0tcGFkZGluZy1ob3Jpem9udGFsKTtcbiAgcGFkZGluZy10b3A6IHZhcigtLWZvcm0tcGFkZGluZy12ZXJ0aWNhbCk7XG4gIHRleHQtaW5kZW50OiAxcHg7XG4gIHRyYW5zaXRpb246IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG5sZWdlbmQsXG5sYWJlbCB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1mb3JtLWxhYmVsLXRleHQpO1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1pbnB1dC1maWVsZHMpO1xufVxuXG50ZXh0YXJlYSxcbmlucHV0W3R5cGU9dGV4dF0sXG5pbnB1dFt0eXBlPXRlbF0sXG5pbnB1dFt0eXBlPXVybF0sXG5pbnB1dFt0eXBlPXBhc3N3b3JkXSxcbmlucHV0W3R5cGU9bnVtYmVyXSxcbmlucHV0W3R5cGU9bW9udGhdLFxuaW5wdXRbdHlwZT13ZWVrXSxcbmlucHV0W3R5cGU9ZW1haWxdLFxuaW5wdXRbdHlwZT1zZWFyY2hdIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmFja2dyb3VuZC1pbnB1dC1maWVsZCk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItYm9yZGVyLWZvcm1zKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1pbnB1dC1maWVsZCk7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogdmFyKC0tYm9yZGVyLXdpZHRoLWlucHV0LWZpZWxkKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWZvcm0tdGV4dCk7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXBhcmFncmFwaCk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWlucHV0LWZpZWxkcyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1mb3JtLWxpbmUtaGVpZ2h0KTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZy1ib3R0b206IHZhcigtLWZvcm0tcGFkZGluZy12ZXJ0aWNhbCk7XG4gIHBhZGRpbmctbGVmdDogdmFyKC0tZm9ybS1wYWRkaW5nLWhvcml6b250YWwpO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1mb3JtLXBhZGRpbmctaG9yaXpvbnRhbCk7XG4gIHBhZGRpbmctdG9wOiB2YXIoLS1mb3JtLXBhZGRpbmctdmVydGljYWwpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjU1cztcbn1cbnRleHRhcmVhOjpwbGFjZWhvbGRlcixcbmlucHV0W3R5cGU9dGV4dF06OnBsYWNlaG9sZGVyLFxuaW5wdXRbdHlwZT10ZWxdOjpwbGFjZWhvbGRlcixcbmlucHV0W3R5cGU9dXJsXTo6cGxhY2Vob2xkZXIsXG5pbnB1dFt0eXBlPXBhc3N3b3JkXTo6cGxhY2Vob2xkZXIsXG5pbnB1dFt0eXBlPW51bWJlcl06OnBsYWNlaG9sZGVyLFxuaW5wdXRbdHlwZT1tb250aF06OnBsYWNlaG9sZGVyLFxuaW5wdXRbdHlwZT13ZWVrXTo6cGxhY2Vob2xkZXIsXG5pbnB1dFt0eXBlPWVtYWlsXTo6cGxhY2Vob2xkZXIsXG5pbnB1dFt0eXBlPXNlYXJjaF06OnBsYWNlaG9sZGVyIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXBsYWNlaG9sZGVyKTtcbiAgb3BhY2l0eTogdmFyKC0tb3BhY2l0eS1wbGFjZWhvbGRlcik7XG59XG50ZXh0YXJlYTpmb2N1cyxcbmlucHV0W3R5cGU9dGV4dF06Zm9jdXMsXG5pbnB1dFt0eXBlPXRlbF06Zm9jdXMsXG5pbnB1dFt0eXBlPXVybF06Zm9jdXMsXG5pbnB1dFt0eXBlPXBhc3N3b3JkXTpmb2N1cyxcbmlucHV0W3R5cGU9bnVtYmVyXTpmb2N1cyxcbmlucHV0W3R5cGU9bW9udGhdOmZvY3VzLFxuaW5wdXRbdHlwZT13ZWVrXTpmb2N1cyxcbmlucHV0W3R5cGU9ZW1haWxdOmZvY3VzLFxuaW5wdXRbdHlwZT1zZWFyY2hdOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmFja2dyb3VuZC1pbnB1dC1maWVsZCk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItYm9yZGVyLWZvcm1zLWZvY3VzKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWZvcm0tdGV4dCk7XG59XG50ZXh0YXJlYTpmb2N1czo6cGxhY2Vob2xkZXIsXG5pbnB1dFt0eXBlPXRleHRdOmZvY3VzOjpwbGFjZWhvbGRlcixcbmlucHV0W3R5cGU9dGVsXTpmb2N1czo6cGxhY2Vob2xkZXIsXG5pbnB1dFt0eXBlPXVybF06Zm9jdXM6OnBsYWNlaG9sZGVyLFxuaW5wdXRbdHlwZT1wYXNzd29yZF06Zm9jdXM6OnBsYWNlaG9sZGVyLFxuaW5wdXRbdHlwZT1udW1iZXJdOmZvY3VzOjpwbGFjZWhvbGRlcixcbmlucHV0W3R5cGU9bW9udGhdOmZvY3VzOjpwbGFjZWhvbGRlcixcbmlucHV0W3R5cGU9d2Vla106Zm9jdXM6OnBsYWNlaG9sZGVyLFxuaW5wdXRbdHlwZT1lbWFpbF06Zm9jdXM6OnBsYWNlaG9sZGVyLFxuaW5wdXRbdHlwZT1zZWFyY2hdOmZvY3VzOjpwbGFjZWhvbGRlciB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1wbGFjZWhvbGRlci1mb2N1cyk7XG4gIG9wYWNpdHk6IHZhcigtLW9wYWNpdHktcGxhY2Vob2xkZXItZm9jdXMpO1xufVxuXG5pbnB1dFt0eXBlPXJhZGlvXSxcbmlucHV0W3R5cGU9Y2hlY2tib3hdIHtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaW5wdXQtZmllbGRzKTtcbiAgaGVpZ2h0OiB2YXIoLS1zaXplLXJhZGlvLWJ1dHRvbik7XG4gIG1hcmdpbjogMDtcbiAgbWFyZ2luLXRvcDogY2FsYygoMWVtICogdmFyKC0tbGluZS1oZWlnaHQtY2hlY2tib3gpIC0gdmFyKC0tc2l6ZS1yYWRpby1idXR0b24pKSAvIDIpO1xuICBvcGFjaXR5OiAwO1xuICBwYWRkaW5nOiAwO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogdmFyKC0tc2l6ZS1yYWRpby1idXR0b24pO1xufVxuXG5pbnB1dFt0eXBlPXJhZGlvXSArIGxhYmVsLFxuaW5wdXRbdHlwZT1jaGVja2JveF0gKyBsYWJlbCB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtY2hlY2tib3gpO1xufVxuXG5pbnB1dFt0eXBlPXJhZGlvXSArIGxhYmVsOjpiZWZvcmUsXG5pbnB1dFt0eXBlPWNoZWNrYm94XSArIGxhYmVsOjpiZWZvcmUge1xuICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWNoZWNrYm94KTtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXdpZHRoOiB2YXIoLS1ib3JkZXItd2lkdGgtY2hlY2tib3gpO1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgZmxleC1zaHJpbms6IDA7XG4gIGhlaWdodDogdmFyKC0tc2l6ZS1yYWRpby1idXR0b24pO1xuICBtYXJnaW4tcmlnaHQ6IHZhcigtLWdhcC1jaGVja2JveCk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiBjYWxjKHZhcigtLWJvcmRlci13aWR0aC1jaGVja2JveCkgLyAyKTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMnMsIGJvcmRlciAwLjJzO1xuICB3aWR0aDogdmFyKC0tc2l6ZS1yYWRpby1idXR0b24pO1xufVxuXG5pbnB1dFt0eXBlPXJhZGlvXSArIGxhYmVsOjpiZWZvcmUge1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG59XG5cbmlucHV0W3R5cGU9Y2hlY2tib3hdICsgbGFiZWw6OmJlZm9yZSB7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtY2hlY2tib3gpO1xufVxuXG5pbnB1dFt0eXBlPXJhZGlvXTpjaGVja2VkICsgbGFiZWw6OmJlZm9yZSxcbmlucHV0W3R5cGU9Y2hlY2tib3hdOmNoZWNrZWQgKyBsYWJlbDo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItY2hlY2tib3gpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWNoZWNrYm94KTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMnM7XG59XG5cbmlucHV0W3R5cGU9cmFkaW9dOmFjdGl2ZSArIGxhYmVsOjpiZWZvcmUsXG5pbnB1dFt0eXBlPWNoZWNrYm94XTphY3RpdmUgKyBsYWJlbDo6YmVmb3JlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjgpO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycztcbn1cblxuaW5wdXRbdHlwZT1yYWRpb106Y2hlY2tlZCArIGxhYmVsOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCAlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnJTNFJTNDZyBjbGFzcz0nbmMtaWNvbi13cmFwcGVyJyBmaWxsPSclMjNmZmZmZmYnJTNFJTNDY2lyY2xlIGN4PSc4JyBjeT0nOCcgcj0nOCcgZmlsbD0nJTIzZmZmZmZmJyUzRSUzQy9jaXJjbGUlM0UlM0MvZyUzRSUzQy9zdmclM0VcIik7XG4gIGJhY2tncm91bmQtc2l6ZTogdmFyKC0tc2l6ZS1yYWRpby1idXR0b24tbWFya2VyKTtcbn1cblxuaW5wdXRbdHlwZT1jaGVja2JveF06Y2hlY2tlZCArIGxhYmVsOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsICUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScxMicgaGVpZ2h0PScxMicgdmlld0JveD0nMCAwIDEyIDEyJyUzRSUzQ3BvbHlsaW5lIHBvaW50cz0nMSA2LjUgNCA5LjUgMTEgMi41JyBmaWxsPSdub25lJyBzdHJva2U9JyUyM0ZGRkZGRicgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBzdHJva2Utd2lkdGg9JzInLyUzRSUzQy9zdmclM0VcIik7XG4gIGJhY2tncm91bmQtc2l6ZTogdmFyKC0tc2l6ZS1jaGVja2JveC1tYXJrZXIpO1xufVxuXG5pbnB1dFt0eXBlPXJhZGlvXTpmb2N1cyArIGxhYmVsOjpiZWZvcmUsXG5pbnB1dFt0eXBlPWNoZWNrYm94XTpmb2N1cyArIGxhYmVsOjpiZWZvcmUsXG5pbnB1dFt0eXBlPXJhZGlvXTpjaGVja2VkOmFjdGl2ZSArIGxhYmVsOjpiZWZvcmUsXG5pbnB1dFt0eXBlPWNoZWNrYm94XTpjaGVja2VkOmFjdGl2ZSArIGxhYmVsOjpiZWZvcmUge1xuICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWNoZWNrYm94KTtcbiAgYm94LXNoYWRvdzogdmFyKC0tY29sb3ItY2hlY2tib3gtb3V0bGluZSk7XG59XG5cbmlucHV0W3R5cGU9cmFkaW9dOmNoZWNrZWQ6YWN0aXZlICsgbGFiZWw6OmJlZm9yZSxcbmlucHV0W3R5cGU9Y2hlY2tib3hdOmNoZWNrZWQ6YWN0aXZlICsgbGFiZWw6OmJlZm9yZSB7XG4gIHRyYW5zZm9ybTogbm9uZTtcbiAgdHJhbnNpdGlvbjogbm9uZTtcbn1cblxuaW5wdXRbdHlwZT1yYWRpb106bm90KDpjaGVja2VkKTpub3QoOmZvY3VzKSArIGxhYmVsOmhvdmVyOjpiZWZvcmUsXG5pbnB1dFt0eXBlPWNoZWNrYm94XTpub3QoOmNoZWNrZWQpOm5vdCg6Zm9jdXMpICsgbGFiZWw6aG92ZXI6OmJlZm9yZSB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItY2hlY2tib3gtYm9yZGVyLWhvdmVyKTtcbn1cblxuLmNhdCB7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgbWFyZ2luLXRvcDogNHJlbTtcbn1cbi5jYXQgYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWNhdGVnb3J5LWJvcmRlcik7XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXdpZHRoOiAxcHggMXB4IDJweDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWNhdGVnb3J5LXRleHQpO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTE2KTtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICBtYXJnaW4tcmlnaHQ6IDAuNWVtO1xuICBwYWRkaW5nOiAwLjJlbSAwLjZlbTtcbiAgdHJhbnNpdGlvbjogYWxsIDUwbXM7XG59XG4uY2F0IGE6aG92ZXIsXG4uY2F0IGE6Zm9jdXMge1xuICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLXRhZy1ib3JkZXItaG92ZXIpO1xufVxuXG4udGFncyB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLW1hcmdpbi1iZXR3ZWVuLXRleHQtZWxlbWVudHMpO1xuICBtYXJnaW4tdG9wOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLnRhZ3MgbGkge1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1yaWdodDogMTBweDtcbiAgbWFyZ2luLXRvcDogMDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xufVxuLnRhZ3MgYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLXRhZy1ib3JkZXIpO1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogMXB4IDFweCAycHg7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10YWctdGV4dCk7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtMTQpO1xuICBtYXJnaW4tcmlnaHQ6IDAuNGVtO1xuICBwYWRkaW5nOiAwLjJlbSAwLjZlbTtcbiAgdHJhbnNpdGlvbjogYWxsIDUwbXM7XG59XG4udGFncyBhOmhvdmVyLFxuLnRhZ3MgYTpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItdGFnLWJvcmRlci1ob3Zlcik7XG59XG5cbi5wb3N0LW5hdmlnYXRpb24gLm5hdi1saW5rcyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xufVxuXG46cm9vdCB7XG4gIC0tY29sb3ItYm9yZGVyLXN0aWNreTogI2Q3ZTRmMjtcbiAgLS1jb2xvci1ieXBvc3RhdXRob3I6IHJnYig0MiA0NSA2MiAvIC41KTtcbn1cblxuLnN0aWNreSB7XG4gIGJvcmRlcjogMXB4IGRhc2hlZCB2YXIoLS1jb2xvci1ib3JkZXItc3RpY2t5KTtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgcGFkZGluZzogMnJlbTtcbn1cblxuLmNvbW1lbnQtbGlzdCBsaS5ieXBvc3RhdXRob3IsXG4uYnlwb3N0YXV0aG9yIHtcbiAgYm9yZGVyOiAxcHggZGFzaGVkIHZhcigtLWNvbG9yLWJ5cG9zdGF1dGhvcik7XG4gIHBhZGRpbmc6IDJyZW07XG59XG5cbi53cC1jYXB0aW9uIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuLndwLWNhcHRpb24gaW1nW2NsYXNzKj13cC1pbWFnZS1dIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuLndwLWNhcHRpb24gLndwLWNhcHRpb24tdGV4dCB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgcGFkZGluZzogMXJlbSAwO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4udG9wIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmFja2dyb3VuZC10b3ApO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIGJvdHRvbTogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtMTYpO1xuICBoZWlnaHQ6IDNyZW07XG4gIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICBvcGFjaXR5OiAwO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHJpZ2h0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRyYW5zaXRpb246IDUwMG1zIG9wYWNpdHk7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgd2lkdGg6IDNyZW07XG4gIHotaW5kZXg6IDE7XG59XG4udG9wOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmFja2dyb3VuZC10b3AtaG92ZXIpO1xufVxuLnRvcDpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJhY2tncm91bmQtdG9wKTtcbn1cblxuLnRvcC5pcy12aXNpYmxlIHtcbiAgb3BhY2l0eTogMTtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbn1cblxuLmdhbGxlcnkge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLWdhcDogMS41ZW07XG4gIG1hcmdpbi1ib3R0b206IDEuNWVtO1xufVxuXG4uZ2FsbGVyeS1pdGVtIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uZ2FsbGVyeS1jb2x1bW5zLTIge1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xufVxuXG4uZ2FsbGVyeS1jb2x1bW5zLTMge1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCAxZnIpO1xufVxuXG4uZ2FsbGVyeS1jb2x1bW5zLTQge1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg0LCAxZnIpO1xufVxuXG4uZ2FsbGVyeS1jb2x1bW5zLTUge1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg1LCAxZnIpO1xufVxuXG4uZ2FsbGVyeS1jb2x1bW5zLTYge1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg2LCAxZnIpO1xufVxuXG4uZ2FsbGVyeS1jb2x1bW5zLTcge1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg3LCAxZnIpO1xufVxuXG4uZ2FsbGVyeS1jb2x1bW5zLTgge1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg4LCAxZnIpO1xufVxuXG4uZ2FsbGVyeS1jb2x1bW5zLTkge1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg5LCAxZnIpO1xufVxuXG4uZ2FsbGVyeS1jYXB0aW9uIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5uYXZpZ2F0aW9uOm5vdCgucG9zdC1uYXZpZ2F0aW9uKSAubmF2LWxpbmtzIHtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWhlYWRpbmcpO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgbWFyZ2luLXRvcDogNHJlbTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgd2lkdGg6IDEwMCU7XG59XG4ubmF2aWdhdGlvbjpub3QoLnBvc3QtbmF2aWdhdGlvbikgLm5hdi1saW5rcyBhIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4ucGFnZS1udW1iZXJzIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgdmFyKC0tY29sb3ItYmx1ZS1jaGFsayk7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgdmFyKC0tY29sb3ItYmx1ZS1jaGFsayk7XG4gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJsdWUtY2hhbGspO1xuICBib3JkZXItdG9wOiAycHggc29saWQgdmFyKC0tY29sb3ItYmx1ZS1jaGFsayk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1wYWdpbmF0aW9uLXRleHQpO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTtcbiAgaGVpZ2h0OiAzNXB4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgdHJhbnNpdGlvbjogYWxsIDUwbXM7XG4gIHdpZHRoOiAzNXB4O1xufVxuLnBhZ2UtbnVtYmVyczpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDRweDtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDRweDtcbn1cbi5wYWdlLW51bWJlcnM6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiA0cHg7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiA0cHg7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDYwMHB4KSB7XG4gIC5wYWdlLW51bWJlcnMge1xuICAgIGhlaWdodDogMjZweDtcbiAgICB3aWR0aDogMjZweDtcbiAgfVxufVxuXG5hLnBhZ2UtbnVtYmVyczpob3ZlcixcbmEucGFnZS1udW1iZXJzOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItcGFnaW5hdGlvbi1iYWNrZ3JvdW5kLWhvdmVyKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1wYWdpbmF0aW9uLWJvcmRlci1ob3Zlcik7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1wYWdpbmF0aW9uLXRleHQtaG92ZXIpO1xufVxuXG4ucGFnZS1udW1iZXJzLmN1cnJlbnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1wYWdpbmF0aW9uLWJhY2tncm91bmQtY3VycmVudCk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItcGFnaW5hdGlvbi1ib3JkZXItY3VycmVudCk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1wYWdpbmF0aW9uLXRleHQtY3VycmVudCk7XG59XG5cbi5wYWdlLW51bWJlcnMubmV4dCxcbi5wYWdlLW51bWJlcnMucHJldiB7XG4gIHBhZGRpbmctbGVmdDogMjBweDtcbiAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgd2lkdGg6IGF1dG87XG59XG5AbWVkaWEgKG1heC13aWR0aDogNjAwcHgpIHtcbiAgLnBhZ2UtbnVtYmVycy5uZXh0LFxuLnBhZ2UtbnVtYmVycy5wcmV2IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgfVxufVxuXG5kaXYudmFsaWRhdGlvbl9lcnJvciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWVycm9yKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtMTcpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLWZvcm0tcm93LWdhcCk7XG4gIHBhZGRpbmc6IDJyZW07XG59XG5kaXYudmFsaWRhdGlvbl9lcnJvcjpmb2N1cyB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG59XG5cbmJvZHkgKlthcmlhLWludmFsaWQ9dHJ1ZV0ge1xuICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWVycm9yKTtcbn1cblxuLnZhbGlkYXRpb25fbWVzc2FnZSB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1lcnJvcik7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTE2KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xufVxuXG4udmFsaWRhdGlvbl9saXN0IHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tZm9ybS1yb3ctZ2FwKTtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIHBhZGRpbmc6IDA7XG59XG4udmFsaWRhdGlvbl9saXN0IGEge1xuICBjb2xvcjogdmFyKC0tY29sb3ItZXJyb3IpO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4udmFsaWRhdGlvbl9saXN0IGxpIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWVycm9yKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xufVxuXG4uZ2Zvcm1fcmVxdWlyZWRfbGVnZW5kLFxuLnNyLW9ubHkge1xuICBib3JkZXI6IDA7XG4gIGNsaXA6IHJlY3QoMXB4LCAxcHgsIDFweCwgMXB4KTtcbiAgY2xpcC1wYXRoOiBpbnNldCg1MCUpO1xuICBoZWlnaHQ6IDFweDtcbiAgbWFyZ2luOiAtMXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nOiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7XG4gIHdvcmQtd3JhcDogbm9ybWFsICFpbXBvcnRhbnQ7XG59XG4uZ2Zvcm1fcmVxdWlyZWRfbGVnZW5kOmZvY3VzLFxuLnNyLW9ubHk6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJveC1zaGFkb3c6IDAgMCAycHggMnB4IHJnYmEoMjIsIDIyLCAyMiwgMC42KTtcbiAgY2xpcDogYXV0bztcbiAgY2xpcC1wYXRoOiBub25lO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAxLjdyZW07XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBsZWZ0OiA1cHg7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gIHBhZGRpbmc6IDE1cHggMjNweCAxNHB4O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRvcDogNXB4O1xuICB3aWR0aDogYXV0bztcbiAgei1pbmRleDogMTAwMDAwO1xufVxuXG4uZ2ZpZWxkX3JlcXVpcmVkLmdmaWVsZF9yZXF1aXJlZF9hc3RlcmlzayB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXJlcXVpcmVkLWFzdGVyaXNrLWxhYmVsKTtcbn1cblxuLmdmaWVsZF9yZXF1aXJlZC5nZmllbGRfcmVxdWlyZWRfYXN0ZXJpc2ssXG4uZ2ZpZWxkX3JlcXVpcmVkLmdmaWVsZF9yZXF1aXJlZF90ZXh0IHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXJlcXVpcmVkLWxhYmVsLXRleHQpO1xufVxuXG4uZ2ZpZWxkX3JlcXVpcmVkLmdmaWVsZF9yZXF1aXJlZF90ZXh0IHtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtcmVxdWlyZWQtdGV4dC1sYWJlbCk7XG59XG5cbi5nZm9ybV93cmFwcGVyID4gZm9ybSB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtY29sdW1uLWdhcDogdmFyKC0tZm9ybS1jb2x1bW4tZ2FwKTtcbiAgZ3JpZC1yb3ctZ2FwOiB2YXIoLS1mb3JtLXJvdy1nYXApO1xufVxuXG4uZ2Zvcm0tYm9keSB1bCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbn1cbi5nZm9ybS1ib2R5IHRleHRhcmVhLFxuLmdmb3JtLWJvZHkgaW5wdXQge1xuICB3aWR0aDogMTAwJTtcbn1cbi5nZm9ybS1ib2R5IC5naW5wdXRfY29udGFpbmVyLmdpbnB1dF9jb250YWluZXJfdGV4dGFyZWEge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuLmdmb3JtLWJvZHkgLmdmaWVsZF9sYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XG4gIGdhcDogdmFyKC0tZm9ybS1yZXF1aXJlZC1nYXApO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBtYXJnaW4tdG9wOiAxcmVtO1xuICBwYWRkaW5nLWlubGluZS1lbmQ6IDA7XG4gIHBhZGRpbmctaW5saW5lLXN0YXJ0OiAwO1xufVxuLmdmb3JtLWJvZHkgLmdmb3JtX2ZpZWxkcyB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtY29sdW1uLWdhcDogdmFyKC0tZm9ybS1jb2x1bW4tZ2FwKTtcbiAgZ3JpZC1yb3ctZ2FwOiB2YXIoLS1mb3JtLXJvdy1nYXApO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgxMiwgMWZyKTtcbiAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiByZXBlYXQoYXV0by1maWxsLCBhdXRvKTtcbiAgd2lkdGg6IDEwMCU7XG59XG4uZ2Zvcm0tYm9keSAuZ2ZpZWxkIHtcbiAgYm9yZGVyOiAwO1xuICBncmlkLWNvbHVtbjogMS8tMTtcbiAgcGFkZGluZzogMDtcbn1cbi5nZm9ybS1ib2R5IC5nZmllbGQuZ2ZpZWxkLS13aWR0aC1mdWxsIHtcbiAgZ3JpZC1jb2x1bW46IHNwYW4gMTI7XG59XG4uZ2Zvcm0tYm9keSAuZ2ZpZWxkLmdmaWVsZC0td2lkdGgtZWxldmVuLXR3ZWxmdGhzIHtcbiAgZ3JpZC1jb2x1bW46IHNwYW4gMTE7XG59XG4uZ2Zvcm0tYm9keSAuZ2ZpZWxkLmdmaWVsZC0td2lkdGgtZml2ZS1zaXh0aHMge1xuICBncmlkLWNvbHVtbjogc3BhbiAxMDtcbn1cbi5nZm9ybS1ib2R5IC5nZmllbGQuZ2ZpZWxkLS13aWR0aC10aHJlZS1xdWFydGVyIHtcbiAgZ3JpZC1jb2x1bW46IHNwYW4gOTtcbn1cbi5nZm9ybS1ib2R5IC5nZmllbGQuZ2ZpZWxkLS13aWR0aC10d28tdGhpcmRzIHtcbiAgZ3JpZC1jb2x1bW46IHNwYW4gODtcbn1cbi5nZm9ybS1ib2R5IC5nZmllbGQuZ2ZpZWxkLS13aWR0aC1zZXZlbi10d2VsZnRocyB7XG4gIGdyaWQtY29sdW1uOiBzcGFuIDc7XG59XG4uZ2Zvcm0tYm9keSAuZ2ZpZWxkLmdmaWVsZC0td2lkdGgtaGFsZiB7XG4gIGdyaWQtY29sdW1uOiBzcGFuIDY7XG59XG4uZ2Zvcm0tYm9keSAuZ2ZpZWxkLmdmaWVsZC0td2lkdGgtZml2ZS10d2VsZnRocyB7XG4gIGdyaWQtY29sdW1uOiBzcGFuIDU7XG59XG4uZ2Zvcm0tYm9keSAuZ2ZpZWxkLmdmaWVsZC0td2lkdGgtdGhpcmQge1xuICBncmlkLWNvbHVtbjogc3BhbiA0O1xufVxuLmdmb3JtLWJvZHkgLmdmaWVsZC5nZmllbGQtLXdpZHRoLXF1YXJ0ZXIge1xuICBncmlkLWNvbHVtbjogc3BhbiAzO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDY0MHB4KSB7XG4gIC5nZm9ybS1ib2R5IC5nZm9ybV9maWVsZHMge1xuICAgIGdyaWQtY29sdW1uLWdhcDogMDtcbiAgfVxuICAuZ2Zvcm0tYm9keSAuZ2ZpZWxkOm5vdCguZ2ZpZWxkLS13aWR0aC1mdWxsKSB7XG4gICAgZ3JpZC1jb2x1bW46IDEvLTE7XG4gIH1cbn1cblxuLmdmb3JtX3ZhbGlkYXRpb25fY29udGFpbmVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmdmb3JtX2NvbmZpcm1hdGlvbl9tZXNzYWdlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLWNvbG9yLXN1Y2Nlc3MpO1xuICBjb2xvcjogdmFyKC0tY29sb3Itc3VjY2Vzcyk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWRlZmF1bHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtc2VtaWJvbGQpO1xuICBwYWRkaW5nOiAycmVtO1xufVxuXG4uYmxvY2stc2VhcmNoLFxuLmJsb2NrLXNlYXJjaC1yZXN1bHRzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xufVxuXG4uYmxvY2stc2VhcmNoIGZvcm0ge1xuICBkaXNwbGF5OiBncmlkO1xuICAvKiBhdXRvcHJlZml4ZXI6IG9mZiAqL1xuICBncmlkLWdhcDogMXJlbTtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiA5ZnIgMWZyO1xufVxuLmJsb2NrLXNlYXJjaCBmb3JtIGlucHV0LFxuLmJsb2NrLXNlYXJjaCBmb3JtIGxhYmVsIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5ibG9jay1zZWFyY2gtcmVzdWx0cyA+IC5jb250YWluZXIge1xuICBwYWRkaW5nLXRvcDogMDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLmJsb2NrLXNlYXJjaC1yZXN1bHRzID4gLmNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgfVxufVxuLmJsb2NrLXNlYXJjaC1yZXN1bHRzIC5yb3ctcmVzdWx0IHtcbiAgYm9yZGVyLXRvcDogMnB4IHNvbGlkIHZhcigtLWNvbG9yLWJvcmRlci1mb3Jtcyk7XG4gIHBhZGRpbmc6IDJyZW0gMDtcbn1cbi5ibG9jay1zZWFyY2gtcmVzdWx0cyAucm93LXJlc3VsdDpsYXN0LW9mLXR5cGUge1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgdmFyKC0tY29sb3ItYm9yZGVyLWZvcm1zKTtcbn1cbi5ibG9jay1zZWFyY2gtcmVzdWx0cyBoMyB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWg0KTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cbi5ibG9jay1zZWFyY2gtcmVzdWx0cyBwIHtcbiAgbWFyZ2luLXRvcDogMXJlbTtcbn1cbi5ibG9jay1zZWFyY2gtcmVzdWx0cyAudGFncyBhIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmFja2dyb3VuZC10YWcpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbik7XG59XG4uYmxvY2stc2VhcmNoLXJlc3VsdHMgLnRhZ3MgYTpob3ZlciwgLmJsb2NrLXNlYXJjaC1yZXN1bHRzIC50YWdzIGE6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1tYWluKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJhY2tncm91bmQtdGFnKTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5ibG9jay1lcnJvci00MDQgLmNvbnRhaW5lciB7XG4gICAgcGFkZGluZy1ib3R0b206IDEwJTtcbiAgICBwYWRkaW5nLXRvcDogMTAlO1xuICB9XG59XG4uYmxvY2stZXJyb3ItNDA0IGgxIHtcbiAgZm9udC1zaXplOiA0MnB4O1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzIwcHgpIHtcbiAgLmJsb2NrLWVycm9yLTQwNCBoMSB7XG4gICAgZm9udC1zaXplOiBjYWxjKDQycHggKyAxNTggKiAoKDEwMHZ3IC0gMzIwcHgpIC8gMTYwMCkpO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxOTIwcHgpIHtcbiAgLmJsb2NrLWVycm9yLTQwNCBoMSB7XG4gICAgZm9udC1zaXplOiAyMDBweDtcbiAgfVxufVxuXG4uY29tbWVudHMtYXJlYSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIG1hcmdpbi10b3A6IDUwcHg7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4uY29tbWVudC1saXN0IHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuLmNvbW1lbnQtbGlzdCAuY2hpbGRyZW4ge1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuLmNvbW1lbnQtbGlzdCBsaSB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTE0KTtcbiAgbWFyZ2luLWJvdHRvbTogNzBweDtcbiAgbWFyZ2luLXRvcDogMDtcbiAgcGFkZGluZzogMDtcbn1cbi5jb21tZW50LWxpc3QgcCB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1jb21tZW50LXRleHQpO1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0xNCk7XG59XG4uY29tbWVudC1saXN0IC5hdmF0YXIge1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGZsb2F0OiByaWdodDtcbn1cbi5jb21tZW50LWxpc3QgLmNvbW1lbnQtYXV0aG9yIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWNvbW1lbnQtYXV0aG9yLXRleHQpO1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oNCk7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIG1hcmdpbi10b3A6IDA7XG4gIHBhZGRpbmc6IDA7XG59XG4uY29tbWVudC1saXN0IGEsXG4uY29tbWVudC1saXN0IC5jb21tZW50cy1saW5rIGEge1xuICBib3gtc2hhZG93OiBub25lO1xuICBjb2xvcjogdmFyKC0tY29sb3ItbGluay1jb21tZW50KTtcbn1cbi5jb21tZW50LWxpc3QgLmNvbW1lbnQtYXV0aG9yIGEge1xuICBjb2xvcjogdmFyKC0tY29sb3ItcGFyYWdyYXBoKTtcbn1cbi5jb21tZW50LWxpc3QgLmNvbW1lbnQtdGltZSB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTE0KTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuLmNvbW1lbnQtbGlzdCAuY29tbWVudC10aW1lIGEge1xuICBjb2xvcjogdmFyKC0tY29sb3ItbGluay1jb21tZW50LXRpbWUtYW5jaG9yKTtcbn1cbi5jb21tZW50LWxpc3QgLmNvbW1lbnQtdGltZTpmb2N1cywgLmNvbW1lbnQtbGlzdCAuY29tbWVudC10aW1lOmhvdmVyIHtcbiAgb3BhY2l0eTogMTtcbn1cbi5jb21tZW50LWxpc3QgLmNvbW1lbnQtdGltZSBzdmcge1xuICBmaWxsOiB2YXIoLS1jb2xvci1saW5rLWNvbW1lbnQtdGltZS1hbmNob3IpO1xuICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IDJweDtcbn1cblxuLmNvbW1lbnRzLWxpbmsge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtMTQpO1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cbi5jb21tZW50cy1saW5rIGEge1xuICBjb2xvcjogdmFyKC0tY29sb3ItbGluay1jb21tZW50KTtcbn1cbi5jb21tZW50cy1saW5rOmhvdmVyLCAuY29tbWVudHMtbGluazpmb2N1cyxcbi5jb21tZW50cy1saW5rIGE6aG92ZXIsXG4uY29tbWVudHMtbGluayBhOmZvY3VzIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTtcbn1cbi5jb21tZW50cy1saW5rIHN2ZyB7XG4gIG1hcmdpbi1yaWdodDogN3B4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogLTFweDtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5jb21tZW50LWZvcm0ge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC1nYXA6IDFlbTtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XG4gICAgLyogYXV0b3ByZWZpeGVyOiBvZmYgKi9cbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgfVxuICAuY29tbWVudC1mb3JtIC5jb21tZW50LW5vdGVzLFxuLmNvbW1lbnQtZm9ybSAuY29tbWVudC1mb3JtLWNvbW1lbnQsXG4uY29tbWVudC1mb3JtIC5mb3JtLXN1Ym1pdCB7XG4gICAgZ3JpZC1jb2x1bW46IDEvc3BhbiAyO1xuICB9XG59XG5cbi5jb21tZW50LXJlc3BvbmQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAuY29tbWVudC1yZXNwb25kIGlucHV0IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuLmNvbW1lbnQtcmVzcG9uZCAuY29tbWVudC1mb3JtLWF1dGhvciB7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIG1hcmdpbi10b3A6IDA7XG59XG4uY29tbWVudC1yZXNwb25kIC5jb21tZW50LWZvcm0tYXV0aG9yIGlucHV0IHtcbiAgYm9yZGVyLXdpZHRoOiAxcHg7XG4gIHBhZGRpbmc6IDE1cHg7XG4gIHdpZHRoOiAxMDAlO1xufVxuLmNvbW1lbnQtcmVzcG9uZCAuY29tbWVudC1mb3JtLWVtYWlsIHtcbiAgY2xlYXI6IHJpZ2h0O1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi10b3A6IDA7XG59XG4uY29tbWVudC1yZXNwb25kIC5jb21tZW50LWZvcm0tZW1haWwgaW5wdXQge1xuICBib3JkZXItd2lkdGg6IDFweDtcbiAgcGFkZGluZzogMTVweDtcbiAgd2lkdGg6IDEwMCU7XG59XG4uY29tbWVudC1yZXNwb25kIC5jb21tZW50LWZvcm0tdXJsIHtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgbWFyZ2luLXRvcDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmNvbW1lbnQtcmVzcG9uZCAuY29tbWVudC1mb3JtLXVybCBpbnB1dCB7XG4gIGJvcmRlci13aWR0aDogMXB4O1xuICBwYWRkaW5nOiAxNXB4O1xuICB3aWR0aDogMTAwJTtcbn1cbi5jb21tZW50LXJlc3BvbmQgLmZvcm0tc3VibWl0IHtcbiAgY2xlYXI6IGJvdGg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBtYXJnaW4tdG9wOiAwO1xufVxuLmNvbW1lbnQtcmVzcG9uZCAuY29tbWVudC1mb3JtLWNvbW1lbnQge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuLmNvbW1lbnQtcmVzcG9uZCB0ZXh0YXJlYSB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyLFxuLmFydGljbGUtY29udGVudCB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgcGFkZGluZy1ib3R0b206IHZhcigtLXBhZGRpbmctYmxvY2spO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHBhZGRpbmctdG9wOiB2YXIoLS1wYWRkaW5nLWJsb2NrKTtcbn1cblxuLmlzLXJvb3QtY29udGFpbmVyID4gKixcbi5hcnRpY2xlLWNvbnRlbnQgPiAqIHtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXBhcmFncmFwaHMtYmxvZyk7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1heC13aWR0aDogODAwcHg7XG59XG5AbWVkaWEgKG1heC13aWR0aDogODQwcHgpIHtcbiAgLmlzLXJvb3QtY29udGFpbmVyID4gKixcbi5hcnRpY2xlLWNvbnRlbnQgPiAqIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICB9XG4gIC5pcy1yb290LWNvbnRhaW5lciA+ICouYWxpZ25mdWxsLFxuLmFydGljbGUtY29udGVudCA+ICouYWxpZ25mdWxsIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKSAqIDIpO1xuICB9XG59XG5cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgYmxvY2txdW90ZSArIGNpdGUsXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIGJsb2NrcXVvdGUgKyBwID4gY2l0ZSxcbi5hcnRpY2xlLWNvbnRlbnQgYmxvY2txdW90ZSArIGNpdGUsXG4uYXJ0aWNsZS1jb250ZW50IGJsb2NrcXVvdGUgKyBwID4gY2l0ZSB7XG4gIG1hcmdpbi1ib3R0b206IDRyZW07XG59XG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIGJsb2NrcXVvdGUsXG4uYXJ0aWNsZS1jb250ZW50IGJsb2NrcXVvdGUge1xuICBib3JkZXI6IDAgbm9uZTtcbiAgY2xlYXI6IGJvdGg7XG4gIHBhZGRpbmctYm90dG9tOiAzcmVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIGJsb2NrcXVvdGUgcCxcbi5hcnRpY2xlLWNvbnRlbnQgYmxvY2txdW90ZSBwIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJsb2NrcXVvdGUpO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1zZW1pYm9sZCk7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzcwcHgpIHtcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciBibG9ja3F1b3RlLFxuLmFydGljbGUtY29udGVudCBibG9ja3F1b3RlIHtcbiAgICBtYXJnaW4tdG9wOiA0cmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiA0cmVtO1xuICB9XG59XG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1xdW90ZSxcbi5hcnRpY2xlLWNvbnRlbnQgLndwLWJsb2NrLXF1b3RlIHtcbiAgYm9yZGVyLWxlZnQ6IDJweCBzb2xpZCB2YXIoLS1jb2xvci1ibG9ja3F1b3RlKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXBhcmFncmFwaHMtYmxvZyk7XG4gIG1hcmdpbi1ib3R0b206IDRyZW07XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi10b3A6IDRyZW07XG4gIHBhZGRpbmc6IDMuNXJlbSA2cmVtO1xuICB3aWR0aDogY2FsYygxMDAlIC0gMTJyZW0pO1xufVxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stcXVvdGUgPiBwLFxuLmFydGljbGUtY29udGVudCAud3AtYmxvY2stcXVvdGUgPiBwIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJsb2NrcXVvdGUpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtcGFyYWdyYXBocy1ibG9nKTtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA4NDBweCkge1xuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1xdW90ZSxcbi5hcnRpY2xlLWNvbnRlbnQgLndwLWJsb2NrLXF1b3RlIHtcbiAgICBwYWRkaW5nOiAzLjVyZW0gMnJlbTtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCkgKiAyKTtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLXF1b3RlLFxuLmFydGljbGUtY29udGVudCAud3AtYmxvY2stcXVvdGUge1xuICAgIHBhZGRpbmc6IDRyZW0gNHJlbSA0cmVtIDJyZW07XG4gIH1cbn1cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWJsb2NrcXVvdGUuYWxpZ253aWRlLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stYmxvY2txdW90ZS5hbGlnbmZ1bGwsXG4uYXJ0aWNsZS1jb250ZW50IC53cC1ibG9jay1ibG9ja3F1b3RlLmFsaWdud2lkZSxcbi5hcnRpY2xlLWNvbnRlbnQgLndwLWJsb2NrLWJsb2NrcXVvdGUuYWxpZ25mdWxsIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKSAqIDIpO1xufVxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stYmxvY2txdW90ZSBibG9ja3F1b3RlLFxuLmFydGljbGUtY29udGVudCAud3AtYmxvY2stYmxvY2txdW90ZSBibG9ja3F1b3RlIHtcbiAgcGFkZGluZy1ib3R0b206IDA7XG59XG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1idXR0b25fX2xpbmssXG4uYXJ0aWNsZS1jb250ZW50IC53cC1ibG9jay1idXR0b25fX2xpbmsge1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1idXR0b24tYmFja2dyb3VuZCk7XG4gIGJvcmRlcjogdmFyKC0tYm9yZGVyLXdpZHRoLWlucHV0LWZpZWxkKSBzb2xpZCB2YXIoLS1jb2xvci1idXR0b24tYmFja2dyb3VuZCk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtaW5wdXQtZmllbGQpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnV0dG9uKTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXBhcmFncmFwaCk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTE2KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXNlbWlib2xkKTtcbiAgbGluZS1oZWlnaHQ6IDE5LjYzNjRweDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbWF4LXdpZHRoOiAyMzBweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZy1ib3R0b206IGNhbGMoMTRweCAtIHZhcigtLWJvcmRlci13aWR0aC1pbnB1dC1maWVsZCkgKiAyKTtcbiAgcGFkZGluZy1sZWZ0OiBjYWxjKDIxcHggLSB2YXIoLS1ib3JkZXItd2lkdGgtaW5wdXQtZmllbGQpICogMik7XG4gIHBhZGRpbmctcmlnaHQ6IGNhbGMoMjFweCAtIHZhcigtLWJvcmRlci13aWR0aC1pbnB1dC1maWVsZCkgKiAyKTtcbiAgcGFkZGluZy10b3A6IGNhbGMoMTRweCAtIHZhcigtLWJvcmRlci13aWR0aC1pbnB1dC1maWVsZCkgKiAyKTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB0cmFuc2l0aW9uOiBhbGwgNTBtcyBjdWJpYy1iZXppZXIoMC4yNSwgMC40NiwgMC40NSwgMC45NCk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHdpZHRoOiBhdXRvO1xufVxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stYnV0dG9uX19saW5rLmZvY3VzLCAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cyxcbi5hcnRpY2xlLWNvbnRlbnQgLndwLWJsb2NrLWJ1dHRvbl9fbGluay5mb2N1cyxcbi5hcnRpY2xlLWNvbnRlbnQgLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3Zlcixcbi5hcnRpY2xlLWNvbnRlbnQgLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyKTtcbiAgYm9yZGVyOiB2YXIoLS1ib3JkZXItd2lkdGgtaW5wdXQtZmllbGQpIHNvbGlkIHZhcigtLWNvbG9yLWJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJ1dHRvbi1ob3Zlcik7XG59XG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1jb2RlLFxuLmFydGljbGUtY29udGVudCAud3AtYmxvY2stY29kZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJhY2tncm91bmQtY29kZS1ibG9jayk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJhY2tncm91bmQtY29kZS1ibG9jayk7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWNvZGUtdGV4dCk7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1tb25vc3BhY2UpO1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0xNik7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1wYXJhZ3JhcGhzLWJsb2cpO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1tYXJnaW4tYmV0d2Vlbi10ZXh0LWVsZW1lbnRzKTtcbiAgbWFyZ2luLXRvcDogdmFyKC0tbWFyZ2luLWJldHdlZW4tdGV4dC1lbGVtZW50cyk7XG4gIG92ZXJmbG93OiBhdXRvO1xuICBwYWRkaW5nOiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aGl0ZS1zcGFjZTogcHJlO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG59XG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1jb2RlID4gY29kZSxcbi5hcnRpY2xlLWNvbnRlbnQgLndwLWJsb2NrLWNvZGUgPiBjb2RlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBjb2xvcjogdmFyKC0tY29sb3ItY29kZS10ZXh0KTtcbiAgcGFkZGluZzogMDtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiAxNDgwcHgpIHtcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stY29kZSxcbi5hcnRpY2xlLWNvbnRlbnQgLndwLWJsb2NrLWNvZGUge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKSAqIDQpO1xuICB9XG59XG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1jb2x1bW5zLmhhcy0xLWNvbHVtbnMuYWxpZ25mdWxsLFxuLmFydGljbGUtY29udGVudCAud3AtYmxvY2stY29sdW1ucy5oYXMtMS1jb2x1bW5zLmFsaWduZnVsbCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICB3aWR0aDogMTAwJTtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA5MDBweCkge1xuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1jb2x1bW5zLmhhcy0xLWNvbHVtbnMsXG4uYXJ0aWNsZS1jb250ZW50IC53cC1ibG9jay1jb2x1bW5zLmhhcy0xLWNvbHVtbnMge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC1nYXA6IDFlbTtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgxLCAxZnIpO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWNvbHVtbnMuaGFzLTEtY29sdW1ucyAud3AtYmxvY2stY29sdW1uLFxuLmFydGljbGUtY29udGVudCAud3AtYmxvY2stY29sdW1ucy5oYXMtMS1jb2x1bW5zIC53cC1ibG9jay1jb2x1bW4ge1xuICAgIG1hcmdpbjogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWNvbHVtbnMuaGFzLTEtY29sdW1ucyxcbi5hcnRpY2xlLWNvbnRlbnQgLndwLWJsb2NrLWNvbHVtbnMuaGFzLTEtY29sdW1ucyB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMSwgMWZyKTtcbiAgfVxufVxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stY29sdW1ucy5oYXMtMi1jb2x1bW5zLmFsaWduZnVsbCxcbi5hcnRpY2xlLWNvbnRlbnQgLndwLWJsb2NrLWNvbHVtbnMuaGFzLTItY29sdW1ucy5hbGlnbmZ1bGwge1xuICBwYWRkaW5nLWxlZnQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgd2lkdGg6IDEwMCU7XG59XG5AbWVkaWEgKG1heC13aWR0aDogOTAwcHgpIHtcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stY29sdW1ucy5oYXMtMi1jb2x1bW5zLFxuLmFydGljbGUtY29udGVudCAud3AtYmxvY2stY29sdW1ucy5oYXMtMi1jb2x1bW5zIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtZ2FwOiAxZW07XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1jb2x1bW5zLmhhcy0yLWNvbHVtbnMgLndwLWJsb2NrLWNvbHVtbixcbi5hcnRpY2xlLWNvbnRlbnQgLndwLWJsb2NrLWNvbHVtbnMuaGFzLTItY29sdW1ucyAud3AtYmxvY2stY29sdW1uIHtcbiAgICBtYXJnaW46IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1jb2x1bW5zLmhhcy0yLWNvbHVtbnMsXG4uYXJ0aWNsZS1jb250ZW50IC53cC1ibG9jay1jb2x1bW5zLmhhcy0yLWNvbHVtbnMge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDEsIDFmcik7XG4gIH1cbn1cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWNvbHVtbnMuaGFzLTMtY29sdW1ucy5hbGlnbmZ1bGwsXG4uYXJ0aWNsZS1jb250ZW50IC53cC1ibG9jay1jb2x1bW5zLmhhcy0zLWNvbHVtbnMuYWxpZ25mdWxsIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gIHdpZHRoOiAxMDAlO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDkwMHB4KSB7XG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWNvbHVtbnMuaGFzLTMtY29sdW1ucyxcbi5hcnRpY2xlLWNvbnRlbnQgLndwLWJsb2NrLWNvbHVtbnMuaGFzLTMtY29sdW1ucyB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLWdhcDogMWVtO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stY29sdW1ucy5oYXMtMy1jb2x1bW5zIC53cC1ibG9jay1jb2x1bW4sXG4uYXJ0aWNsZS1jb250ZW50IC53cC1ibG9jay1jb2x1bW5zLmhhcy0zLWNvbHVtbnMgLndwLWJsb2NrLWNvbHVtbiB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stY29sdW1ucy5oYXMtMy1jb2x1bW5zLFxuLmFydGljbGUtY29udGVudCAud3AtYmxvY2stY29sdW1ucy5oYXMtMy1jb2x1bW5zIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgxLCAxZnIpO1xuICB9XG59XG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1jb2x1bW5zLmhhcy00LWNvbHVtbnMuYWxpZ25mdWxsLFxuLmFydGljbGUtY29udGVudCAud3AtYmxvY2stY29sdW1ucy5oYXMtNC1jb2x1bW5zLmFsaWduZnVsbCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICB3aWR0aDogMTAwJTtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA5MDBweCkge1xuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1jb2x1bW5zLmhhcy00LWNvbHVtbnMsXG4uYXJ0aWNsZS1jb250ZW50IC53cC1ibG9jay1jb2x1bW5zLmhhcy00LWNvbHVtbnMge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC1nYXA6IDFlbTtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg0LCAxZnIpO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWNvbHVtbnMuaGFzLTQtY29sdW1ucyAud3AtYmxvY2stY29sdW1uLFxuLmFydGljbGUtY29udGVudCAud3AtYmxvY2stY29sdW1ucy5oYXMtNC1jb2x1bW5zIC53cC1ibG9jay1jb2x1bW4ge1xuICAgIG1hcmdpbjogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWNvbHVtbnMuaGFzLTQtY29sdW1ucyxcbi5hcnRpY2xlLWNvbnRlbnQgLndwLWJsb2NrLWNvbHVtbnMuaGFzLTQtY29sdW1ucyB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMSwgMWZyKTtcbiAgfVxufVxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stY29sdW1ucy5oYXMtNS1jb2x1bW5zLmFsaWduZnVsbCxcbi5hcnRpY2xlLWNvbnRlbnQgLndwLWJsb2NrLWNvbHVtbnMuaGFzLTUtY29sdW1ucy5hbGlnbmZ1bGwge1xuICBwYWRkaW5nLWxlZnQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgd2lkdGg6IDEwMCU7XG59XG5AbWVkaWEgKG1heC13aWR0aDogOTAwcHgpIHtcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stY29sdW1ucy5oYXMtNS1jb2x1bW5zLFxuLmFydGljbGUtY29udGVudCAud3AtYmxvY2stY29sdW1ucy5oYXMtNS1jb2x1bW5zIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtZ2FwOiAxZW07XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNSwgMWZyKTtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1jb2x1bW5zLmhhcy01LWNvbHVtbnMgLndwLWJsb2NrLWNvbHVtbixcbi5hcnRpY2xlLWNvbnRlbnQgLndwLWJsb2NrLWNvbHVtbnMuaGFzLTUtY29sdW1ucyAud3AtYmxvY2stY29sdW1uIHtcbiAgICBtYXJnaW46IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1jb2x1bW5zLmhhcy01LWNvbHVtbnMsXG4uYXJ0aWNsZS1jb250ZW50IC53cC1ibG9jay1jb2x1bW5zLmhhcy01LWNvbHVtbnMge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDEsIDFmcik7XG4gIH1cbn1cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWNvbHVtbnMuaGFzLTYtY29sdW1ucy5hbGlnbmZ1bGwsXG4uYXJ0aWNsZS1jb250ZW50IC53cC1ibG9jay1jb2x1bW5zLmhhcy02LWNvbHVtbnMuYWxpZ25mdWxsIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gIHdpZHRoOiAxMDAlO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDkwMHB4KSB7XG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWNvbHVtbnMuaGFzLTYtY29sdW1ucyxcbi5hcnRpY2xlLWNvbnRlbnQgLndwLWJsb2NrLWNvbHVtbnMuaGFzLTYtY29sdW1ucyB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLWdhcDogMWVtO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDYsIDFmcik7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stY29sdW1ucy5oYXMtNi1jb2x1bW5zIC53cC1ibG9jay1jb2x1bW4sXG4uYXJ0aWNsZS1jb250ZW50IC53cC1ibG9jay1jb2x1bW5zLmhhcy02LWNvbHVtbnMgLndwLWJsb2NrLWNvbHVtbiB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stY29sdW1ucy5oYXMtNi1jb2x1bW5zLFxuLmFydGljbGUtY29udGVudCAud3AtYmxvY2stY29sdW1ucy5oYXMtNi1jb2x1bW5zIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgxLCAxZnIpO1xuICB9XG59XG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1jb2x1bW5zLmhhcy03LWNvbHVtbnMuYWxpZ25mdWxsLFxuLmFydGljbGUtY29udGVudCAud3AtYmxvY2stY29sdW1ucy5oYXMtNy1jb2x1bW5zLmFsaWduZnVsbCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICB3aWR0aDogMTAwJTtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA5MDBweCkge1xuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1jb2x1bW5zLmhhcy03LWNvbHVtbnMsXG4uYXJ0aWNsZS1jb250ZW50IC53cC1ibG9jay1jb2x1bW5zLmhhcy03LWNvbHVtbnMge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC1nYXA6IDFlbTtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg3LCAxZnIpO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWNvbHVtbnMuaGFzLTctY29sdW1ucyAud3AtYmxvY2stY29sdW1uLFxuLmFydGljbGUtY29udGVudCAud3AtYmxvY2stY29sdW1ucy5oYXMtNy1jb2x1bW5zIC53cC1ibG9jay1jb2x1bW4ge1xuICAgIG1hcmdpbjogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWNvbHVtbnMuaGFzLTctY29sdW1ucyxcbi5hcnRpY2xlLWNvbnRlbnQgLndwLWJsb2NrLWNvbHVtbnMuaGFzLTctY29sdW1ucyB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMSwgMWZyKTtcbiAgfVxufVxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stY29sdW1ucy5oYXMtOC1jb2x1bW5zLmFsaWduZnVsbCxcbi5hcnRpY2xlLWNvbnRlbnQgLndwLWJsb2NrLWNvbHVtbnMuaGFzLTgtY29sdW1ucy5hbGlnbmZ1bGwge1xuICBwYWRkaW5nLWxlZnQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgd2lkdGg6IDEwMCU7XG59XG5AbWVkaWEgKG1heC13aWR0aDogOTAwcHgpIHtcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stY29sdW1ucy5oYXMtOC1jb2x1bW5zLFxuLmFydGljbGUtY29udGVudCAud3AtYmxvY2stY29sdW1ucy5oYXMtOC1jb2x1bW5zIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtZ2FwOiAxZW07XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoOCwgMWZyKTtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1jb2x1bW5zLmhhcy04LWNvbHVtbnMgLndwLWJsb2NrLWNvbHVtbixcbi5hcnRpY2xlLWNvbnRlbnQgLndwLWJsb2NrLWNvbHVtbnMuaGFzLTgtY29sdW1ucyAud3AtYmxvY2stY29sdW1uIHtcbiAgICBtYXJnaW46IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1jb2x1bW5zLmhhcy04LWNvbHVtbnMsXG4uYXJ0aWNsZS1jb250ZW50IC53cC1ibG9jay1jb2x1bW5zLmhhcy04LWNvbHVtbnMge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDEsIDFmcik7XG4gIH1cbn1cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWNvbHVtbnMuaGFzLTktY29sdW1ucy5hbGlnbmZ1bGwsXG4uYXJ0aWNsZS1jb250ZW50IC53cC1ibG9jay1jb2x1bW5zLmhhcy05LWNvbHVtbnMuYWxpZ25mdWxsIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gIHdpZHRoOiAxMDAlO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDkwMHB4KSB7XG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWNvbHVtbnMuaGFzLTktY29sdW1ucyxcbi5hcnRpY2xlLWNvbnRlbnQgLndwLWJsb2NrLWNvbHVtbnMuaGFzLTktY29sdW1ucyB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLWdhcDogMWVtO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDksIDFmcik7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stY29sdW1ucy5oYXMtOS1jb2x1bW5zIC53cC1ibG9jay1jb2x1bW4sXG4uYXJ0aWNsZS1jb250ZW50IC53cC1ibG9jay1jb2x1bW5zLmhhcy05LWNvbHVtbnMgLndwLWJsb2NrLWNvbHVtbiB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stY29sdW1ucy5oYXMtOS1jb2x1bW5zLFxuLmFydGljbGUtY29udGVudCAud3AtYmxvY2stY29sdW1ucy5oYXMtOS1jb2x1bW5zIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgxLCAxZnIpO1xuICB9XG59XG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1jb3Zlcl9faW5uZXItY29udGFpbmVyLFxuLmFydGljbGUtY29udGVudCAud3AtYmxvY2stY292ZXJfX2lubmVyLWNvbnRhaW5lciB7XG4gIHBhZGRpbmctbGVmdDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xufVxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stY292ZXJfX2lubmVyLWNvbnRhaW5lciBwLFxuLmFydGljbGUtY29udGVudCAud3AtYmxvY2stY292ZXJfX2lubmVyLWNvbnRhaW5lciBwIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWNvcmUtaGVhZGluZyk7XG59XG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1lbWJlZCBpZnJhbWUsXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1lbWJlZCB2aWRlbyxcbi5hcnRpY2xlLWNvbnRlbnQgLndwLWJsb2NrLWVtYmVkIGlmcmFtZSxcbi5hcnRpY2xlLWNvbnRlbnQgLndwLWJsb2NrLWVtYmVkIHZpZGVvIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiAxNDgwcHgpIHtcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stZW1iZWQuYWxpZ253aWRlLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stZW1iZWQuYWxpZ25mdWxsLFxuLmFydGljbGUtY29udGVudCAud3AtYmxvY2stZW1iZWQuYWxpZ253aWRlLFxuLmFydGljbGUtY29udGVudCAud3AtYmxvY2stZW1iZWQuYWxpZ25mdWxsIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCkgKiAyKTtcbiAgfVxufVxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stZW1iZWQuYWxpZ25mdWxsLFxuLmFydGljbGUtY29udGVudCAud3AtYmxvY2stZW1iZWQuYWxpZ25mdWxsIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xufVxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciBocixcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLXNlcGFyYXRvcixcbi5hcnRpY2xlLWNvbnRlbnQgaHIsXG4uYXJ0aWNsZS1jb250ZW50IC53cC1ibG9jay1zZXBhcmF0b3Ige1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCByZ2JhKDAsIDAsIDAsIDApIDUwJSwgcmdiYSgwLCAwLCAwLCAwLjMpIDUwJSk7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgNTAlO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gIGJhY2tncm91bmQtc2l6ZTogMnB4IDJweDtcbiAgYm9yZGVyOiAwO1xuICBoZWlnaHQ6IDA7XG4gIG1hcmdpbi1ib3R0b206IGNhbGModmFyKC0tbWFyZ2luLWJldHdlZW4tcGFyYWdyYXBocykgKiAyKTtcbiAgbWFyZ2luLXRvcDogY2FsYyh2YXIoLS1tYXJnaW4tYmV0d2Vlbi1wYXJhZ3JhcGhzKSAqIDIpO1xuICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgcGFkZGluZy10b3A6IDFyZW07XG59XG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1zZXBhcmF0b3IuaXMtc3R5bGUtZGVmYXVsdCxcbi5hcnRpY2xlLWNvbnRlbnQgLndwLWJsb2NrLXNlcGFyYXRvci5pcy1zdHlsZS1kZWZhdWx0IHtcbiAgbWF4LXdpZHRoOiA4MDBweDtcbn1cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLXNlcGFyYXRvcjpub3QoLmlzLXN0eWxlLXdpZGUpOm5vdCguaXMtc3R5bGUtZG90cyksXG4uYXJ0aWNsZS1jb250ZW50IC53cC1ibG9jay1zZXBhcmF0b3I6bm90KC5pcy1zdHlsZS13aWRlKTpub3QoLmlzLXN0eWxlLWRvdHMpIHtcbiAgbWFyZ2luLWJvdHRvbTogY2FsYyh2YXIoLS1tYXJnaW4tYmV0d2Vlbi1wYXJhZ3JhcGhzKSAqIDIpO1xuICBtYXJnaW4tdG9wOiBjYWxjKHZhcigtLW1hcmdpbi1iZXR3ZWVuLXBhcmFncmFwaHMpICogMik7XG4gIG9wYWNpdHk6IDAuNDtcbiAgd2lkdGg6IDEwMHB4O1xufVxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciBoMSxcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgaDIsXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIGgzLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciBoNCxcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgaDUsXG4uYXJ0aWNsZS1jb250ZW50IGgxLFxuLmFydGljbGUtY29udGVudCBoMixcbi5hcnRpY2xlLWNvbnRlbnQgaDMsXG4uYXJ0aWNsZS1jb250ZW50IGg0LFxuLmFydGljbGUtY29udGVudCBoNSB7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1jb3JlLWhlYWRpbmcpO1xufVxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciBoMTpmaXJzdC1jaGlsZCxcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgaDI6Zmlyc3QtY2hpbGQsXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIGgzOmZpcnN0LWNoaWxkLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciBoNDpmaXJzdC1jaGlsZCxcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgaDU6Zmlyc3QtY2hpbGQsXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIGg2OmZpcnN0LWNoaWxkLFxuLmFydGljbGUtY29udGVudCBoMTpmaXJzdC1jaGlsZCxcbi5hcnRpY2xlLWNvbnRlbnQgaDI6Zmlyc3QtY2hpbGQsXG4uYXJ0aWNsZS1jb250ZW50IGgzOmZpcnN0LWNoaWxkLFxuLmFydGljbGUtY29udGVudCBoNDpmaXJzdC1jaGlsZCxcbi5hcnRpY2xlLWNvbnRlbnQgaDU6Zmlyc3QtY2hpbGQsXG4uYXJ0aWNsZS1jb250ZW50IGg2OmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWltYWdlLFxuLmFydGljbGUtY29udGVudCAud3AtYmxvY2staW1hZ2Uge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tbWFyZ2luLXdwLWJsb2NrLWltYWdlKTtcbiAgbWFyZ2luLXRvcDogdmFyKC0tbWFyZ2luLXdwLWJsb2NrLWltYWdlKTtcbn1cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWltYWdlLmFsaWdud2lkZSwgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2staW1hZ2UuYWxpZ25mdWxsLFxuLmFydGljbGUtY29udGVudCAud3AtYmxvY2staW1hZ2UuYWxpZ253aWRlLFxuLmFydGljbGUtY29udGVudCAud3AtYmxvY2staW1hZ2UuYWxpZ25mdWxsIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xufVxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2staW1hZ2UgLmFsaWdud2lkZSBpbWcsXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1pbWFnZSAuYWxpZ25mdWxsIGltZyxcbi5hcnRpY2xlLWNvbnRlbnQgLndwLWJsb2NrLWltYWdlIC5hbGlnbndpZGUgaW1nLFxuLmFydGljbGUtY29udGVudCAud3AtYmxvY2staW1hZ2UgLmFsaWduZnVsbCBpbWcge1xuICB3aWR0aDogMTAwJTtcbn1cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWltYWdlIC5hbGlnbmZ1bGwgaW1nLFxuLmFydGljbGUtY29udGVudCAud3AtYmxvY2staW1hZ2UgLmFsaWduZnVsbCBpbWcge1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2staW1hZ2UgPiBmaWd1cmUsXG4uYXJ0aWNsZS1jb250ZW50IC53cC1ibG9jay1pbWFnZSA+IGZpZ3VyZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogYXV0bztcbn1cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWltYWdlID4gZmlndXJlLmFsaWdubGVmdCwgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2staW1hZ2UgPiBmaWd1cmUuYWxpZ25yaWdodCxcbi5hcnRpY2xlLWNvbnRlbnQgLndwLWJsb2NrLWltYWdlID4gZmlndXJlLmFsaWdubGVmdCxcbi5hcnRpY2xlLWNvbnRlbnQgLndwLWJsb2NrLWltYWdlID4gZmlndXJlLmFsaWducmlnaHQge1xuICBtYXgtd2lkdGg6IHZhcigtLXdpZHRoLWNoaWxkLWltZyk7XG59XG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1pbWFnZSBmaWdjYXB0aW9uLFxuLmFydGljbGUtY29udGVudCAud3AtYmxvY2staW1hZ2UgZmlnY2FwdGlvbiB7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG59XG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1pbWFnZSAuYWxpZ25jZW50ZXIsXG4uYXJ0aWNsZS1jb250ZW50IC53cC1ibG9jay1pbWFnZSAuYWxpZ25jZW50ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1pbWFnZSAuYWxpZ25jZW50ZXIgaW1nLFxuLmFydGljbGUtY29udGVudCAud3AtYmxvY2staW1hZ2UgLmFsaWduY2VudGVyIGltZyB7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG5AbWVkaWEgKG1heC13aWR0aDogMTQ4MHB4KSB7XG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWltYWdlLmFsaWdud2lkZSxcbi5hcnRpY2xlLWNvbnRlbnQgLndwLWJsb2NrLWltYWdlLmFsaWdud2lkZSB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpICogMik7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1pbWFnZS5hbGlnbmxlZnQgaW1nLCAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1pbWFnZS5hbGlnbnJpZ2h0IGltZywgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2staW1hZ2UuYWxpZ25jZW50ZXIgaW1nLFxuLmFydGljbGUtY29udGVudCAud3AtYmxvY2staW1hZ2UuYWxpZ25sZWZ0IGltZyxcbi5hcnRpY2xlLWNvbnRlbnQgLndwLWJsb2NrLWltYWdlLmFsaWducmlnaHQgaW1nLFxuLmFydGljbGUtY29udGVudCAud3AtYmxvY2staW1hZ2UuYWxpZ25jZW50ZXIgaW1nIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgdWwsXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIG9sLFxuLmFydGljbGUtY29udGVudCB1bCxcbi5hcnRpY2xlLWNvbnRlbnQgb2wge1xuICBjb2xvcjogdmFyKC0tY29sb3ItcGFyYWdyYXBoKTtcbiAgbGlzdC1zdHlsZS1wb3NpdGlvbjogb3V0c2lkZTtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpICogMik7XG59XG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIHVsLFxuLmFydGljbGUtY29udGVudCB1bCB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogXCLigKIgXCI7XG4gIHBhZGRpbmctaW5saW5lLXN0YXJ0OiAxZW07XG59XG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIG9sLFxuLmFydGljbGUtY29udGVudCBvbCB7XG4gIHBhZGRpbmctaW5saW5lLXN0YXJ0OiAxLjI1ZW07XG59XG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIGxpOjptYXJrZXIsXG4uYXJ0aWNsZS1jb250ZW50IGxpOjptYXJrZXIge1xuICBjb2xvcjogdmFyKC0tY29sb3ItbGluay10ZXh0KTtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtMTYpO1xufVxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuaGFzLWxhcmdlci1mb250LXNpemUsXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5oYXMtbGFyZ2UtZm9udC1zaXplLFxuLmFydGljbGUtY29udGVudCAuaGFzLWxhcmdlci1mb250LXNpemUsXG4uYXJ0aWNsZS1jb250ZW50IC5oYXMtbGFyZ2UtZm9udC1zaXplIHtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWhlYWRpbmdzKTtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5oYXMtbGFyZ2UtZm9udC1zaXplLFxuLmFydGljbGUtY29udGVudCAuaGFzLWxhcmdlLWZvbnQtc2l6ZSB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtMTgpO1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuaGFzLWxhcmdlci1mb250LXNpemUsXG4uYXJ0aWNsZS1jb250ZW50IC5oYXMtbGFyZ2VyLWZvbnQtc2l6ZSB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtMjIpO1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogMTQ4MHB4KSB7XG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmhhcy1iYWNrZ3JvdW5kLFxuLmFydGljbGUtY29udGVudCAuaGFzLWJhY2tncm91bmQge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKSAqIDIpO1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogMTQ4MHB4KSB7XG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLXByZWZvcm1hdHRlZCxcbi5hcnRpY2xlLWNvbnRlbnQgLndwLWJsb2NrLXByZWZvcm1hdHRlZCB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpICogNCk7XG4gIH1cbn1cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLXB1bGxxdW90ZSxcbi5hcnRpY2xlLWNvbnRlbnQgLndwLWJsb2NrLXB1bGxxdW90ZSB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItYmxvY2txdW90ZSk7XG4gIGJvcmRlci13aWR0aDogM3B4O1xuICBkaXNwbGF5OiBncmlkO1xufVxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stcHVsbHF1b3RlIFthcmlhLWxhYmVsPVwiUHVsbHF1b3RlIGNpdGF0aW9uIHRleHRcIl0sXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1wdWxscXVvdGUgY2l0ZSxcbi5hcnRpY2xlLWNvbnRlbnQgLndwLWJsb2NrLXB1bGxxdW90ZSBbYXJpYS1sYWJlbD1cIlB1bGxxdW90ZSBjaXRhdGlvbiB0ZXh0XCJdLFxuLmFydGljbGUtY29udGVudCAud3AtYmxvY2stcHVsbHF1b3RlIGNpdGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXRvcDogM3JlbTtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiAxNDgwcHgpIHtcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stcHVsbHF1b3RlLFxuLmFydGljbGUtY29udGVudCAud3AtYmxvY2stcHVsbHF1b3RlIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCkgKiAyKTtcbiAgfVxufVxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stcHVsbHF1b3RlLmFsaWdud2lkZSxcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLXB1bGxxdW90ZS5hbGlnbmZ1bGwsXG4uYXJ0aWNsZS1jb250ZW50IC53cC1ibG9jay1wdWxscXVvdGUuYWxpZ253aWRlLFxuLmFydGljbGUtY29udGVudCAud3AtYmxvY2stcHVsbHF1b3RlLmFsaWduZnVsbCB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgcGFkZGluZy1yaWdodDogMDtcbn1cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLXB1bGxxdW90ZS5hbGlnbndpZGUgYmxvY2txdW90ZSxcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLXB1bGxxdW90ZS5hbGlnbmZ1bGwgYmxvY2txdW90ZSxcbi5hcnRpY2xlLWNvbnRlbnQgLndwLWJsb2NrLXB1bGxxdW90ZS5hbGlnbndpZGUgYmxvY2txdW90ZSxcbi5hcnRpY2xlLWNvbnRlbnQgLndwLWJsb2NrLXB1bGxxdW90ZS5hbGlnbmZ1bGwgYmxvY2txdW90ZSB7XG4gIGp1c3RpZnktc2VsZjogY2VudGVyO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDE0ODBweCkge1xuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1wdWxscXVvdGUuYWxpZ253aWRlLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stcHVsbHF1b3RlLmFsaWduZnVsbCxcbi5hcnRpY2xlLWNvbnRlbnQgLndwLWJsb2NrLXB1bGxxdW90ZS5hbGlnbndpZGUsXG4uYXJ0aWNsZS1jb250ZW50IC53cC1ibG9jay1wdWxscXVvdGUuYWxpZ25mdWxsIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgfVxufVxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stcHVsbHF1b3RlLmFsaWduZnVsbCxcbi5hcnRpY2xlLWNvbnRlbnQgLndwLWJsb2NrLXB1bGxxdW90ZS5hbGlnbmZ1bGwge1xuICBtYXJnaW4tbGVmdDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gIG1hcmdpbi1yaWdodDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKSAqIDIpO1xufVxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciB0aCxcbi5hcnRpY2xlLWNvbnRlbnQgdGgge1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXNjb3JwaW9uKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciB0ZCxcbi5hcnRpY2xlLWNvbnRlbnQgdGQge1xuICBjb2xvcjogdmFyKC0tY29sb3ItYmxhY2spO1xufVxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciB0ZCxcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgdGgsXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay10YWJsZSB0ZCxcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLXRhYmxlIHRoLFxuLmFydGljbGUtY29udGVudCB0ZCxcbi5hcnRpY2xlLWNvbnRlbnQgdGgsXG4uYXJ0aWNsZS1jb250ZW50IC53cC1ibG9jay10YWJsZSB0ZCxcbi5hcnRpY2xlLWNvbnRlbnQgLndwLWJsb2NrLXRhYmxlIHRoIHtcbiAgYm9yZGVyOiAwO1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1wYXJhZ3JhcGgpO1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0xNCk7XG4gIGhlaWdodDogMnJlbTtcbiAgcGFkZGluZzogMC42cmVtIDEuNXJlbTtcbn1cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgdHI6bnRoLWNoaWxkKGV2ZW4pLFxuLmFydGljbGUtY29udGVudCB0cjpudGgtY2hpbGQoZXZlbikge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1iYWNrZ3JvdW5kLXRhYmxlLWNlbGwtZXZlbik7XG59XG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIHRyOm50aC1jaGlsZChvZGQpLFxuLmFydGljbGUtY29udGVudCB0cjpudGgtY2hpbGQob2RkKSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJhY2tncm91bmQtdGFibGUtY2VsbC1vZGQpO1xufVxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciB0aGVhZCxcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLXRhYmxlIHRoZWFkLFxuLmFydGljbGUtY29udGVudCB0aGVhZCxcbi5hcnRpY2xlLWNvbnRlbnQgLndwLWJsb2NrLXRhYmxlIHRoZWFkIHtcbiAgYm9yZGVyOiAwO1xufVxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciB0aGVhZCB0aDpmaXJzdC1jaGlsZCxcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLXRhYmxlIHRoZWFkIHRoOmZpcnN0LWNoaWxkLFxuLmFydGljbGUtY29udGVudCB0aGVhZCB0aDpmaXJzdC1jaGlsZCxcbi5hcnRpY2xlLWNvbnRlbnQgLndwLWJsb2NrLXRhYmxlIHRoZWFkIHRoOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogOHB4O1xufVxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciB0aGVhZCB0aDpsYXN0LWNoaWxkLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stdGFibGUgdGhlYWQgdGg6bGFzdC1jaGlsZCxcbi5hcnRpY2xlLWNvbnRlbnQgdGhlYWQgdGg6bGFzdC1jaGlsZCxcbi5hcnRpY2xlLWNvbnRlbnQgLndwLWJsb2NrLXRhYmxlIHRoZWFkIHRoOmxhc3QtY2hpbGQge1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogOHB4O1xufVxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciB0YWJsZSxcbi5hcnRpY2xlLWNvbnRlbnQgdGFibGUge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICBib3JkZXItc3BhY2luZzogMDtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiAxNDgwcHgpIHtcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stdGFibGUsXG4uYXJ0aWNsZS1jb250ZW50IC53cC1ibG9jay10YWJsZSB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpICogMik7XG4gIH1cbn1cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLXRhYmxlLmFsaWduZnVsbCxcbi5hcnRpY2xlLWNvbnRlbnQgLndwLWJsb2NrLXRhYmxlLmFsaWduZnVsbCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpICogMik7XG59XG5AbWVkaWEgKG1heC13aWR0aDogMTQ4MHB4KSB7XG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLXRhYmxlLmFsaWdud2lkZSxcbi5hcnRpY2xlLWNvbnRlbnQgLndwLWJsb2NrLXRhYmxlLmFsaWdud2lkZSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpICogMik7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiAxNDgwcHgpIHtcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stdmVyc2UsXG4uYXJ0aWNsZS1jb250ZW50IC53cC1ibG9jay12ZXJzZSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpICogNCk7XG4gIH1cbn1cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLXZpZGVvIHZpZGVvLFxuLmFydGljbGUtY29udGVudCAud3AtYmxvY2stdmlkZW8gdmlkZW8ge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDE0ODBweCkge1xuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay12aWRlby5hbGlnbndpZGUsXG4uYXJ0aWNsZS1jb250ZW50IC53cC1ibG9jay12aWRlby5hbGlnbndpZGUge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKSAqIDIpO1xuICB9XG59XG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay12aWRlby5hbGlnbndpZGUsXG4uYXJ0aWNsZS1jb250ZW50IC53cC1ibG9jay12aWRlby5hbGlnbndpZGUge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG59XG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay12aWRlby5hbGlnbmZ1bGwsXG4uYXJ0aWNsZS1jb250ZW50IC53cC1ibG9jay12aWRlby5hbGlnbmZ1bGwge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgd2lkdGg6IDEwMCU7XG59XG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay5pcy1zdHlsZS1ib3hlZCxcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmlzLXN0eWxlLWJveGVkLFxuLmFydGljbGUtY29udGVudCAud3AtYmxvY2suaXMtc3R5bGUtYm94ZWQsXG4uYXJ0aWNsZS1jb250ZW50IC5pcy1zdHlsZS1ib3hlZCB7XG4gIGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLWNvbG9yLXBhcmFncmFwaCk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1wYXJhZ3JhcGgpO1xuICBmb250LXNpemU6IDE3cHg7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW1lZGl1bSk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1wYXJhZ3JhcGhzLWJsb2cpO1xuICBwYWRkaW5nOiAycmVtO1xuICB3aWR0aDogY2FsYygxMDAlIC0gNHJlbSk7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogODQwcHgpIHtcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuaXMtc3R5bGUtYm94ZWQsXG4uYXJ0aWNsZS1jb250ZW50IC5pcy1zdHlsZS1ib3hlZCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMnJlbSwgMCk7XG4gIH1cbn1cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWZpbGUgLndwLWJsb2NrLWZpbGVfX2J1dHRvbixcbi5hcnRpY2xlLWNvbnRlbnQgLndwLWJsb2NrLWZpbGUgLndwLWJsb2NrLWZpbGVfX2J1dHRvbiB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTE2KTtcbiAgbGluZS1oZWlnaHQ6IDIwLjkwOTFweDtcbiAgcGFkZGluZy1ib3R0b206IGNhbGMoMTBweCAtIHZhcigtLWJvcmRlci13aWR0aC1pbnB1dC1maWVsZCkgKiAyKTtcbiAgcGFkZGluZy1sZWZ0OiBjYWxjKDIxcHggLSB2YXIoLS1ib3JkZXItd2lkdGgtaW5wdXQtZmllbGQpICogMik7XG4gIHBhZGRpbmctcmlnaHQ6IGNhbGMoMjFweCAtIHZhcigtLWJvcmRlci13aWR0aC1pbnB1dC1maWVsZCkgKiAyKTtcbiAgcGFkZGluZy10b3A6IGNhbGMoMTBweCAtIHZhcigtLWJvcmRlci13aWR0aC1pbnB1dC1maWVsZCkgKiAyKTtcbiAgZm9udC1zaXplOiAwLjhlbTtcbiAgcGFkZGluZzogMC4zZW0gMC44ZW07XG59XG5cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmJsb2NrLWVycm9yLFxuLnNpdGUtbWFpbiAuYmxvY2stZXJyb3Ige1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1lcnJvci1ibG9jay1iYWNrZ3JvdW5kKTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItZXJyb3ItYmxvY2stYm9yZGVyKTtcbiAgYm9yZGVyLWxlZnQ6IDEwcHggc29saWQgdmFyKC0tY29sb3ItZXJyb3IpO1xufVxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuYmxvY2stZXJyb3IgLmNvbnRhaW5lcixcbi5zaXRlLW1haW4gLmJsb2NrLWVycm9yIC5jb250YWluZXIge1xuICBwYWRkaW5nLWJvdHRvbTogMnJlbTtcbiAgcGFkZGluZy10b3A6IDJyZW07XG59XG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5ibG9jay1lcnJvciBwLFxuLnNpdGUtbWFpbiAuYmxvY2stZXJyb3IgcCB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTE0KTtcbn1cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmJsb2NrLWVycm9yIHAuZXJyb3ItbWVzc2FnZSxcbi5zaXRlLW1haW4gLmJsb2NrLWVycm9yIHAuZXJyb3ItbWVzc2FnZSB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTE2KTtcbn1cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmJsb2NrLWVycm9yIGgyLFxuLnNpdGUtbWFpbiAuYmxvY2stZXJyb3IgaDIge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oNCk7XG59XG5cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmFsaWdubGVmdCA+ICosXG4uYXJ0aWNsZS1jb250ZW50IC5hbGlnbmxlZnQgPiAqIHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5hbGlnbnJpZ2h0ID4gKixcbi5hcnRpY2xlLWNvbnRlbnQgLmFsaWducmlnaHQgPiAqIHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuYWxpZ25sZWZ0ID4gaW1nLFxuLmFydGljbGUtY29udGVudCAuYWxpZ25sZWZ0ID4gaW1nIHtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tbWFyZ2luLWJldHdlZW4tcGFyYWdyYXBocyk7XG4gIG1hcmdpbi1yaWdodDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gIG1hcmdpbi10b3A6IHZhcigtLW1hcmdpbi1iZXR3ZWVuLXBhcmFncmFwaHMpO1xufVxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuYWxpZ25sZWZ0ID4gaW1nICsgZmlnY2FwdGlvbixcbi5hcnRpY2xlLWNvbnRlbnQgLmFsaWdubGVmdCA+IGltZyArIGZpZ2NhcHRpb24ge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuYWxpZ25yaWdodCA+IGltZyxcbi5hcnRpY2xlLWNvbnRlbnQgLmFsaWducmlnaHQgPiBpbWcge1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1tYXJnaW4tYmV0d2Vlbi1wYXJhZ3JhcGhzKTtcbiAgbWFyZ2luLWxlZnQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICBtYXJnaW4tdG9wOiB2YXIoLS1tYXJnaW4tYmV0d2Vlbi1wYXJhZ3JhcGhzKTtcbn1cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmFsaWducmlnaHQgPiBpbWcgKyBmaWdjYXB0aW9uLFxuLmFydGljbGUtY29udGVudCAuYWxpZ25yaWdodCA+IGltZyArIGZpZ2NhcHRpb24ge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuYWxpZ253aWRlLFxuLmFydGljbGUtY29udGVudCAuYWxpZ253aWRlIHtcbiAgbWF4LXdpZHRoOiAxMjAwcHg7XG4gIHBhZGRpbmctbGVmdDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICB3aWR0aDogMTAwJTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjQwcHgpIHtcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuYWxpZ253aWRlLFxuLmFydGljbGUtY29udGVudCAuYWxpZ253aWRlIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgfVxufVxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuYWxpZ25mdWxsLFxuLmFydGljbGUtY29udGVudCAuYWxpZ25mdWxsIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xufVxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuYWxpZ25mdWxsLndwLWJsb2NrLWltYWdlIGltZyxcbi5hcnRpY2xlLWNvbnRlbnQgLmFsaWduZnVsbC53cC1ibG9jay1pbWFnZSBpbWcge1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDg0MHB4KSB7XG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmFsaWduZnVsbCxcbi5hcnRpY2xlLWNvbnRlbnQgLmFsaWduZnVsbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tcGFkZGluZy1ibG9jayk7XG4gICAgbWFyZ2luLXRvcDogdmFyKC0tcGFkZGluZy1ibG9jayk7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgZmlnY2FwdGlvbixcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgY2l0ZSxcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgc21hbGwsXG4uYXJ0aWNsZS1jb250ZW50IGZpZ2NhcHRpb24sXG4uYXJ0aWNsZS1jb250ZW50IGNpdGUsXG4uYXJ0aWNsZS1jb250ZW50IHNtYWxsIHtcbiAgYm9yZGVyOiAwO1xuICBjb2xvcjogdmFyKC0tY29sb3ItY2FwdGlvbik7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWNhcHRpb25zKTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBtYXJnaW4tYm90dG9tOiA2cmVtO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tdG9wOiAzcmVtO1xuICBtYXgtd2lkdGg6IDgwMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIGZpZ2NhcHRpb24sXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIGNpdGUsXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIHNtYWxsLFxuLmFydGljbGUtY29udGVudCBmaWdjYXB0aW9uLFxuLmFydGljbGUtY29udGVudCBjaXRlLFxuLmFydGljbGUtY29udGVudCBzbWFsbCB7XG4gICAgbWFyZ2luLXRvcDogMnJlbTtcbiAgfVxufVxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2staW1hZ2UgZmlnY2FwdGlvbixcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWltYWdlIC5hbGlnbnJpZ2h0ID4gZmlnY2FwdGlvbixcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWltYWdlIC5hbGlnbmNlbnRlciA+IGZpZ2NhcHRpb24sXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1pbWFnZS5pcy1yZXNpemVkID4gZmlnY2FwdGlvbixcbi5hcnRpY2xlLWNvbnRlbnQgLndwLWJsb2NrLWltYWdlIGZpZ2NhcHRpb24sXG4uYXJ0aWNsZS1jb250ZW50IC53cC1ibG9jay1pbWFnZSAuYWxpZ25yaWdodCA+IGZpZ2NhcHRpb24sXG4uYXJ0aWNsZS1jb250ZW50IC53cC1ibG9jay1pbWFnZSAuYWxpZ25jZW50ZXIgPiBmaWdjYXB0aW9uLFxuLmFydGljbGUtY29udGVudCAud3AtYmxvY2staW1hZ2UuaXMtcmVzaXplZCA+IGZpZ2NhcHRpb24ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG59XG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIGNpdGUsXG4uYXJ0aWNsZS1jb250ZW50IGNpdGUge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIGltZyxcbi5hcnRpY2xlLWNvbnRlbnQgaW1nIHtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xufVxuXG5rYmQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1rYmQtYmFja2dyb3VuZCk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWtiZC1ib3JkZXIpO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDAgcmdiYSgyMiwgMjIsIDIyLCAwLjIpLCAwIDAgMCAycHggdmFyKC0tY29sb3Itd2hpdGUpIGluc2V0O1xuICBjb2xvcjogdmFyKC0tY29sb3ItcGFyYWdyYXBoKTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBwYWRkaW5nOiAwIDAuNXJlbTtcbiAgdGV4dC1zaGFkb3c6IDAgMXB4IDAgdmFyKC0tY29sb3Itd2hpdGUpO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG5hIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWxpbmstdGV4dCk7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB0ZXh0LWRlY29yYXRpb24tY29sb3I6IHZhcigtLWNvbG9yLWxpbmstdGV4dCk7XG4gIHRleHQtdW5kZXJsaW5lLW9mZnNldDogNnB4O1xuICB0cmFuc2l0aW9uOiBhbGwgNTBtcztcbn1cbmE6aG92ZXIsIGE6Zm9jdXMge1xuICBjb2xvcjogdmFyKC0tY29sb3ItbGluay10ZXh0LWhvdmVyKTtcbiAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiB2YXIoLS1jb2xvci1saW5rLXRleHQtaG92ZXIpO1xufVxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiBuby1wcmVmZXJlbmNlKSB7XG4gIGE6Zm9jdXMge1xuICAgIG91dGxpbmUtb2Zmc2V0OiA1cHg7XG4gICAgdHJhbnNpdGlvbjogb3V0bGluZS1vZmZzZXQgMC4yNXMgZWFzZTtcbiAgfVxufVxuXG4uZW50cnktZm9vdGVyIGEsXG4uc2l0ZS1oZWFkZXIgYSxcbi5zaXRlLWZvb3RlciBhIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG5wIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXBhcmFncmFwaCk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1wYXJhZ3JhcGhzLWJsb2cpO1xufSIsIi8vIEN1c3RvbSB2ZXJzaW9uIG9mIHNhbml0aXplZC5jc3MuXG5cbi8qKlxuICogMS4gQWRkIGJvcmRlciBib3ggc2l6aW5nIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICogMi4gQmFja2dyb3VuZHMgZG8gbm90IHJlcGVhdCBieSBkZWZhdWx0IChvcGluaW9uYXRlZCkuXG4gKi9cblxuKixcbjo6YmVmb3JlLFxuOjphZnRlciB7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7IC8qIDIgKi9cbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xufVxuXG4vKipcbiAgICogMS4gQWRkIHRleHQgZGVjb3JhdGlvbiBpbmhlcml0YW5jZSBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAgICogMi4gQWRkIHZlcnRpY2FsIGFsaWdubWVudCBpbmhlcml0YW5jZSBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAgICovXG5cbjo6YmVmb3JlLFxuOjphZnRlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogaW5oZXJpdDsgLyogMSAqL1xuICB2ZXJ0aWNhbC1hbGlnbjogaW5oZXJpdDsgLyogMiAqL1xufVxuXG4vKipcbiAgICogMS4gVXNlIHRoZSBkZWZhdWx0IGN1cnNvciBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAgICogMi4gQ2hhbmdlIHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAgICogMy4gQnJlYWtzIHdvcmRzIHRvIHByZXZlbnQgb3ZlcmZsb3cgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAqIDQuIFVzZSBhIDQtc3BhY2UgdGFiIHdpZHRoIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgKiA1LiBSZW1vdmUgdGhlIGdyZXkgaGlnaGxpZ2h0IG9uIGxpbmtzIGluIGlPUyAob3BpbmlvbmF0ZWQpLlxuICAgKiA2LiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluIGlPUy5cbiAgICovXG5cbjp3aGVyZSg6cm9vdCkge1xuICBjdXJzb3I6IGRlZmF1bHQ7IC8qIDEgKi9cbiAgbGluZS1oZWlnaHQ6IDEuNTsgLyogMiAqL1xuICBvdmVyZmxvdy13cmFwOiBicmVhay13b3JkOyAvKiAzICovXG4gIHRhYi1zaXplOiA0OyAvKiA0ICovXG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7IC8qIDUgKi9cbiAgdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLyogNiAqL1xufVxuXG4vKiBTZWN0aW9uc1xuICAgKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAgICogUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAqL1xuXG46d2hlcmUoYm9keSkge1xuICBtYXJnaW46IDA7XG59XG5cbi8qKlxuICAgKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBvZiBib3JkZXIgY29sb3IgaW4gRmlyZWZveC5cbiAgICogMi4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAgICovXG5cbjp3aGVyZShocikge1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmVcbiAgY29sb3I6IGluaGVyaXQ7IC8qIDEgKi9cbiAgaGVpZ2h0OiAwOyAvKiAyICovXG59XG5cbi8qKlxuICAgKiBSZW1vdmUgdGhlIGxpc3Qgc3R5bGUgb24gbmF2aWdhdGlvbiBsaXN0cyBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAgICovXG5cbjp3aGVyZShuYXYpIDp3aGVyZShvbCwgdWwpIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBwYWRkaW5nOiAwO1xufVxuXG4vKipcbiAgICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAgICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICAgKiAzLiBQcmV2ZW50IG92ZXJmbG93IG9mIHRoZSBjb250YWluZXIgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAqL1xuXG46d2hlcmUocHJlKSB7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZVxuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8qIDEgKi9cbiAgZm9udC1zaXplOiAxZW07IC8qIDIgKi9cbiAgb3ZlcmZsb3c6IGF1dG87IC8qIDMgKi9cbn1cblxuLyoqXG4gICAqIENoYW5nZSB0aGUgZmlsbCBjb2xvciB0byBtYXRjaCB0aGUgdGV4dCBjb2xvciBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAgICovXG5cbjp3aGVyZShzdmc6bm90KFtmaWxsXSkpIHtcbiAgZmlsbDogY3VycmVudENvbG9yO1xufVxuXG4vKiBGb3Jtc1xuICAgKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAgICogQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGJ1dHRvbnMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gICAqL1xuXG46d2hlcmUoYnV0dG9uLCBbdHlwZT1cImJ1dHRvblwiIGldLCBbdHlwZT1cInJlc2V0XCIgaV0sIFt0eXBlPVwic3VibWl0XCIgaV0pIHtcbiAgYXBwZWFyYW5jZTogYnV0dG9uO1xufVxuXG4vKipcbiAgICogMS4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpLlxuICAgKiAzLiBDaGFuZ2UgdGhlIHJlc2l6ZSBkaXJlY3Rpb24gaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAqL1xuXG46d2hlcmUodGV4dGFyZWEpIHtcbiAgbWFyZ2luOiAwOyAvKiAxICovXG4gIHJlc2l6ZTogdmVydGljYWw7IC8qIDMgKi9cbn1cblxuLyoqXG4gICAqIDEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaS5cbiAgICogMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4gICAqL1xuXG46d2hlcmUoW3R5cGU9XCJzZWFyY2hcIiBpXSkge1xuICBhcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8qIDEgKi9cbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7IC8qIDIgKi9cbn1cblxuLyoqXG4gICAqIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIFNhZmFyaS5cbiAgICovXG5cbjo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbjo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLyoqXG4gICAqIENvcnJlY3QgdGhlIHRleHQgc3R5bGUgb2YgcGxhY2Vob2xkZXJzIGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaS5cbiAgICovXG5cbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZVxuOjppbnB1dC1wbGFjZWhvbGRlciB7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZVxuICBjb2xvcjogaW5oZXJpdDtcbiAgb3BhY2l0eTogLjU0O1xufVxuXG4vKipcbiAgICogUmVtb3ZlIHRoZSBpbm5lciBwYWRkaW5nIGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaSBvbiBtYWNPUy5cbiAgICovXG5cbjo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi8qKlxuICAgKiAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgdXBsb2FkIGJ1dHRvbnMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gICAqIDIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIFNhZmFyaS5cbiAgICovXG5cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICBhcHBlYXJhbmNlOiBidXR0b247IC8qIDEgKi9cbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lXG4gIGZvbnQ6IGluaGVyaXQ7IC8qIDIgKi9cbn1cblxuLypcbiAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gU2FmYXJpLlxuICAgKi9cblxuOndoZXJlKGRldGFpbHMgPiBzdW1tYXJ5OmZpcnN0LW9mLXR5cGUpIHtcbiAgZGlzcGxheTogbGlzdC1pdGVtO1xufVxuXG4vKiBBY2Nlc3NpYmlsaXR5XG4gICAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICAgKiBDaGFuZ2UgdGhlIGN1cnNvciBvbiBidXN5IGVsZW1lbnRzIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgKi9cblxuOndoZXJlKFthcmlhLWJ1c3k9XCJ0cnVlXCIgaV0pIHtcbiAgY3Vyc29yOiBwcm9ncmVzcztcbn1cblxuLypcbiAgICogQ2hhbmdlIHRoZSBjdXJzb3Igb24gZGlzYWJsZWQsIG5vdC1lZGl0YWJsZSwgb3Igb3RoZXJ3aXNlXG4gICAqIGlub3BlcmFibGUgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAqL1xuXG46d2hlcmUoW2FyaWEtZGlzYWJsZWQ9XCJ0cnVlXCIgaV0sIFtkaXNhYmxlZF0pIHtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cblxuLypcbiAgICogQ2hhbmdlIHRoZSBkaXNwbGF5IG9uIHZpc3VhbGx5IGhpZGRlbiBhY2Nlc3NpYmxlIGVsZW1lbnRzXG4gICAqIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgKi9cblxuOndoZXJlKFthcmlhLWhpZGRlbj1cImZhbHNlXCIgaV1baGlkZGVuXSkge1xuICBkaXNwbGF5OiBpbml0aWFsO1xufVxuXG46d2hlcmUoW2FyaWEtaGlkZGVuPVwiZmFsc2VcIiBpXVtoaWRkZW5dOm5vdCg6Zm9jdXMpKSB7XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cbiIsIi8qXG4gKiAxLiBSZW1vdmUgYW5pbWF0aW9ucyB3aGVuIG1vdGlvbiBpcyByZWR1Y2VkIChvcGluaW9uYXRlZCkuXG4gKiAyLiBSZW1vdmUgZml4ZWQgYmFja2dyb3VuZCBhdHRhY2htZW50cyB3aGVuIG1vdGlvbiBpcyByZWR1Y2VkIChvcGluaW9uYXRlZCkuXG4gKiAzLiBSZW1vdmUgdGltZWQgc2Nyb2xsaW5nIGJlaGF2aW9ycyB3aGVuIG1vdGlvbiBpcyByZWR1Y2VkIChvcGluaW9uYXRlZCkuXG4gKiA0LiBSZW1vdmUgdHJhbnNpdGlvbnMgd2hlbiBtb3Rpb24gaXMgcmVkdWNlZCAob3BpbmlvbmF0ZWQpLlxuICovXG5cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gICosXG4gIDo6YmVmb3JlLFxuICA6OmFmdGVyIHtcbiAgICBhbmltYXRpb24tZGVsYXk6IC0xbXMgIWltcG9ydGFudDsgLyogMSAqL1xuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMW1zICFpbXBvcnRhbnQ7IC8qIDEgKi9cbiAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxICFpbXBvcnRhbnQ7IC8qIDEgKi9cbiAgICBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IGluaXRpYWwgIWltcG9ydGFudDsgLyogMiAqL1xuICAgIHNjcm9sbC1iZWhhdmlvcjogYXV0byAhaW1wb3J0YW50OyAvKiAzICovXG4gICAgdHJhbnNpdGlvbi1kZWxheTogMHMgIWltcG9ydGFudDsgLyogNCAqL1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzICFpbXBvcnRhbnQ7IC8qIDQgKi9cbiAgfVxufVxuIiwiLy8gQSBuYXR1cmFsIGJveCBsYXlvdXQgbW9kZWwgdG8gYWxsIGVsZW1lbnRzXG4vLyBVcGRhdGU6IGh0dHA6Ly9jc3MtdHJpY2tzLmNvbS9pbmhlcml0aW5nLWJveC1zaXppbmctcHJvYmFibHktc2xpZ2h0bHktYmV0dGVyLWJlc3QtcHJhY3RpY2UvXG5odG1sLFxuKixcbio6OmJlZm9yZSxcbio6OmFmdGVyIHtcbiAgLyogYXV0b3ByZWZpeGVyOiBpZ25vcmUgbmV4dCAqL1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG5pbWcge1xuICAvKiBhdXRvcHJlZml4ZXI6IGlnbm9yZSBuZXh0ICovXG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xufVxuIiwiLy8gU3R5bGluZyBiYWNrZ3JvdW5kLWltYWdlc1xuLy8gRm9yIGN1c3RvbSBzaXplZCBpbWFnZSBiYWNrZ3JvdW5kLCB1c2U6IGNsYXNzPVwiaW1hZ2UgaW1hZ2UtYmFja2dyb3VuZFwiXG4vLyBGb3IgYmcgYXMgbGF5ZXIsIHVzZTogY2xhc3M9XCJpbWFnZSBpbWFnZS1iYWNrZ3JvdW5kIGltYWdlLWJhY2tncm91bmQtbGF5ZXJcIlxuLmltYWdlLWJhY2tncm91bmQgPiBpbWcge1xuICBvYmplY3QtZml0OiBjb3Zlcjtcbn1cblxuLmltYWdlLWJhY2tncm91bmQge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5pbWFnZS1iYWNrZ3JvdW5kID4gaW1nLFxuLmltYWdlLWJhY2tncm91bmQtbGF5ZXIge1xuICBoZWlnaHQ6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgei1pbmRleDogMDtcbn1cbiIsIi8vIENTUyB2YXJpYWJsZXNcbi8vIERlZmluZSBuYW1lczpcbi8vIEZvciBBQUE6IGh0dHBzOi8vd3d3LmNvbG9yLWJsaW5kbmVzcy5jb20vY29sb3ItbmFtZS1odWUvXG4vLyBGb3IgQUE6IGh0dHBzOi8vY2hpci5hZy9wcm9qZWN0cy9uYW1lLXRoYXQtY29sb3IvXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbjpyb290IHtcbiAgLy8gQnJhbmQgY29sb3IgcG9vbFxuICAtLWNvbG9yLWJsYWNrOiAjMjIyO1xuICAtLWNvbG9yLWJsYWNrLXJvY2s6ICMyYjMwM2M7XG4gIC0tY29sb3ItYmx1ZS1jaGFsazogI2VjZTZmMjtcbiAgLS1jb2xvci1lYXN0LWJheTogIzU0NTc3MztcbiAgLS1jb2xvci1wYXR0ZW5zLWJsdWU6ICNlYWYxZjg7XG4gIC0tY29sb3Itc2NpZW5jZS1ibHVlOiAjMDA0OWQxO1xuICAtLWNvbG9yLXNjb3JwaW9uOiAjNWY1ZjVmO1xuICAtLWNvbG9yLXZhbGhhbGxhOiAjMmEyZDNlO1xuICAtLWNvbG9yLXdoaXRlOiAjZmZmO1xuXG4gIC8vIE1haW4gZWxlbWVudCBjb2xvcnNcbiAgLS1jb2xvci1oZWFkaW5nOiB2YXIoLS1jb2xvci1tYWluKTtcbiAgLS1jb2xvci1tYWluOiB2YXIoLS1jb2xvci12YWxoYWxsYSk7XG4gIC0tY29sb3ItcGFyYWdyYXBoOiB2YXIoLS1jb2xvci1lYXN0LWJheSk7XG5cbiAgLy8gTW9kZXJuIGxpbmsgdGhhdCBoYXMgYmFja2dyb3VuZCBlZmZlY3Qgb24gaG92ZXJcbiAgLS1jb2xvci1saW5rLWJvcmRlci1ib3R0b206IHZhcigtLWNvbG9yLXNjaWVuY2UtYmx1ZSk7XG4gIC0tY29sb3ItbGluay1ib3JkZXItZm9jdXM6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgLS1jb2xvci1saW5rLWNvbW1lbnQ6IHZhcigtLWNvbG9yLXNjb3JwaW9uKTtcbiAgLS1jb2xvci1saW5rLWNvbW1lbnQtdGltZS1hbmNob3I6IHZhcigtLWNvbG9yLWVhc3QtYmF5KTtcbiAgLS1jb2xvci1saW5rLWVkaXQtYmFja2dyb3VuZC1ob3ZlcjogdmFyKC0tY29sb3ItcGF0dGVucy1ibHVlKTtcbiAgLS1jb2xvci1saW5rLWVkaXQtYm9yZGVyOiB2YXIoLS1jb2xvci1wYXR0ZW5zLWJsdWUpO1xuICAtLWNvbG9yLWxpbmstZWRpdC10ZXh0OiBjb2xvci5hZGp1c3QoI2VhZjFmOCwgLTIwJSk7XG4gIC0tY29sb3ItbGluay1lZGl0LXRleHQtaG92ZXI6IHZhcigtLWNvbG9yLWVhc3QtYmF5KTtcbiAgLS1jb2xvci1saW5rLXRleHQ6IHZhcigtLWNvbG9yLXNjaWVuY2UtYmx1ZSk7XG4gIC0tY29sb3ItbGluay10ZXh0LWZvY3VzOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gIC0tY29sb3ItbGluay10ZXh0LWhvdmVyOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gIC0tY29sb3ItbGluay1iYWNrZ3JvdW5kLWhvdmVyOiB2YXIoLS1jb2xvci1saW5rLXRleHQpO1xuXG4gIC8vIEVsZW1lbnQgY29sb3JzXG4gIC0tY29sb3ItYmFja2dyb3VuZC1jb2RlLWJsb2NrOiB2YXIoLS1jb2xvci1ibGFjay1yb2NrKTtcbiAgLS1jb2xvci1iYWNrZ3JvdW5kLWNvZGUtaW5saW5lOiAjZjlmMmY0O1xuICAtLWNvbG9yLWJhY2tncm91bmQtZGVmYXVsdDogI2YwZjBmMDtcbiAgLS1jb2xvci1iYWNrZ3JvdW5kLXNoYWRlOiAjMDMwNjFiO1xuICAtLWNvbG9yLWJhY2tncm91bmQtdGFibGUtY2VsbC1vZGQ6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgLS1jb2xvci1iYWNrZ3JvdW5kLXRhYmxlLWNlbGwtZXZlbjogI2YzZjNmMztcbiAgLS1jb2xvci1iYWNrZ3JvdW5kLXRvcDogI2Y1ZjVmNTtcbiAgLS1jb2xvci1iYWNrZ3JvdW5kLXRvcC1ob3ZlcjogI2YwZjBmMDtcbiAgLS1jb2xvci1iYWNrZ3JvdW5kLXRhZzogdmFyKC0tY29sb3ItcGF0dGVucy1ibHVlKTtcbiAgLS1jb2xvci1ibG9ja3F1b3RlOiB2YXIoLS1jb2xvci1zY2llbmNlLWJsdWUpO1xuICAtLWNvbG9yLWNvbW1lbnQtdGV4dDogdmFyKC0tY29sb3ItZWFzdC1iYXkpO1xuICAtLWNvbG9yLWNvbW1lbnQtYXV0aG9yLXRleHQ6IHZhcigtLWNvbG9yLWVhc3QtYmF5KTtcbiAgLS1jb2xvci10YWctYm9yZGVyOiByZ2IoNiAyMiA0MSAvIC4xKTtcbiAgLS1jb2xvci10YWctYm9yZGVyLWhvdmVyOiByZ2IoNiAyMiA0MSAvIC40KTtcbiAgLS1jb2xvci10YWctdGV4dDogdmFyKC0tY29sb3ItYmxhY2spO1xuICAtLWNvbG9yLWNhdGVnb3J5LWJvcmRlcjogI2NkY2ZkNDtcbiAgLS1jb2xvci1jYXRlZ29yeS10ZXh0OiB2YXIoLS1jb2xvci1ibGFjayk7XG4gIC0tY29sb3ItY2FwdGlvbjogIzVjNWM2YTtcbiAgLS1jb2xvci1jb2RlLWJsb2NrOiAjYzcyNTRlO1xuICAtLWNvbG9yLWNvZGUtdGV4dDogI2Y1ZjVmNTtcbiAgLS1jb2xvci1rYmQtYm9yZGVyOiAjY2NjO1xuICAtLWNvbG9yLWtiZC1iYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1wYXR0ZW5zLWJsdWUpO1xuICAtLWNvbG9yLXBhZ2luYXRpb24tdGV4dDogdmFyKC0tY29sb3ItdmFsaGFsbGEpO1xuICAtLWNvbG9yLXBhZ2luYXRpb24tYmFja2dyb3VuZC1ob3ZlcjogdmFyKC0tY29sb3ItdmFsaGFsbGEpO1xuICAtLWNvbG9yLXBhZ2luYXRpb24tYm9yZGVyLWhvdmVyOiB2YXIoLS1jb2xvci12YWxoYWxsYSk7XG4gIC0tY29sb3ItcGFnaW5hdGlvbi10ZXh0LWhvdmVyOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIC0tY29sb3ItcGFnaW5hdGlvbi1iYWNrZ3JvdW5kLWN1cnJlbnQ6IHZhcigtLWNvbG9yLXZhbGhhbGxhKTtcbiAgLS1jb2xvci1wYWdpbmF0aW9uLWJvcmRlci1jdXJyZW50OiB2YXIoLS1jb2xvci12YWxoYWxsYSk7XG4gIC0tY29sb3ItcGFnaW5hdGlvbi10ZXh0LWN1cnJlbnQ6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgLS1jb2xvci10b3AtYXJyb3ctZGFyazogdmFyKC0tY29sb3ItYmxhY2spO1xuICAtLWNvbG9yLXRvcC1hcnJvdy1saWdodDogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAtLWNvbG9yLWVycm9yLWJsb2NrLWJvcmRlcjogI2FkYjJhZDsgLy8gQ29sb3IgcGlja2VkIGZyb20gQUNGXG4gIC0tY29sb3ItZXJyb3ItYmxvY2stYmFja2dyb3VuZDogI2Y5ZjlmOTsgLy8gQ29sb3IgcGlja2VkIGZyb20gQUNGXG5cbiAgLy8gRWxlbWVudCBzdGF0ZXNcbiAgLS1jb2xvci1lcnJvcjogI2NjMmUyZTtcbiAgLS1jb2xvci1zdWNjZXNzOiAjMjFhYTE0O1xuICAtLWNvbG9yLXdhcm5pbmc6ICNjYzc1MmU7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBtYXgtbGluZS1sZW5ndGhcbi8vIEZvbnQgZmFtaWx5IHNldHRpbmdzXG4vLyBZb3UgY2FuIGRlZmluZSB5b3VyIG93biBmb250IGZhbWlsaWVzIGhlcmUsIGxpa2UgLS1mb250LWJhcmxvd1xuLy8gYW5kIHRoZW4gYXR0YWNoIHRoZW0gdG8gZWxlbWVudHM6IC0tZm9udC1wYXJhZ3JhcGg6IHZhcigtLWZvbnQtYmFybG93KVxuOnJvb3Qge1xuICAtLWZvbnQtc2VyaWY6IHNhbnMtc2VyaWY7XG4gIC0tZm9udC1zYW5zOiAnSW50ZXInLCAtYXBwbGUtc3lzdGVtLCAnQmxpbmtNYWNTeXN0ZW1Gb250JywgJ1NlZ29lIFVJJywgJ1JvYm90bycsICdPeHlnZW4tU2FucycsICdVYnVudHUnLCAnQ2FudGFyZWxsJywgJ0hlbHZldGljYSBOZXVlJywgc2Fucy1zZXJpZjtcbiAgLS1mb250LW1vbm9zcGFjZTogJ0luY29uc29sYXRhJywgJ01lbmxvJywgJ01vbmFjbycsICdDb25zb2xhcycsICdBbmRhbGUgTW9ubycsICdCaXRzdHJlYW0gVmVyYSBTYW5zIE1vbm8nLCAnQ291cmllciBOZXcnLCBtb25vc3BhY2U7XG5cbiAgLy8gRm9udHMgaW4gdXNlIGZvciBjb250ZW50XG4gIC0tZm9udC1wYXJhZ3JhcGg6IHZhcigtLWZvbnQtc2Fucyk7XG4gIC0tZm9udC1oZWFkaW5nOiB2YXIoLS1mb250LXNhbnMpO1xufVxuIiwiLy8gQ1NTIFZhcmlhYmxlcyBmb3IgcmVzcG9uc2l2ZSBmb250c1xuOnJvb3Qge1xuICAvLyBIZWFkaW5nIGZvbnQgc2l6ZXNcbiAgLS1mb250LXNpemUtaGVybzogNTJweDtcbiAgLS1mb250LXNpemUtaDE6IDQwcHg7XG4gIC0tZm9udC1zaXplLWgyOiAzMHB4O1xuICAtLWZvbnQtc2l6ZS1oMzogMjRweDtcbiAgLS1mb250LXNpemUtaDQ6IDIwcHg7XG4gIC0tZm9udC1zaXplLWg1OiAxNnB4O1xuICAtLWZvbnQtc2l6ZS1oNjogMTRweDtcblxuICAvLyBQYXJhZ3JhcGggZm9udCBzaXplc1xuICAtLWZvbnQtc2l6ZS0xNDogMTRweDtcbiAgLS1mb250LXNpemUtMTU6IDE1cHg7XG4gIC0tZm9udC1zaXplLTE2OiAxNnB4O1xuICAtLWZvbnQtc2l6ZS0xNzogMTdweDtcbiAgLS1mb250LXNpemUtMTg6IDE4cHg7XG4gIC0tZm9udC1zaXplLTIwOiAyMHB4O1xuICAtLWZvbnQtc2l6ZS0yMjogMjJweDtcblxuICAvLyBFbGVtZW50IGZvbnQgc2l6ZXNcbiAgLS1mb250LXNpemUtZGVmYXVsdDogdmFyKC0tZm9udC1zaXplLTE3KTtcbiAgLS1mb250LXNpemUtcGFyYWdyYXBoczogdmFyKC0tZm9udC1zaXplLTE4KTtcbiAgLS1mb250LXNpemUtbmF2LXRvZ2dsZS1sYWJlbDogMTVweDtcbiAgLS1mb250LXNpemUtY2FwdGlvbnM6IDE1cHg7XG5cbiAgLy8gTGluZS1oZWlnaHRzXG4gIC0tbGluZS1oZWlnaHQtaGVhZGluZ3M6IDEuNTtcbiAgLS1saW5lLWhlaWdodC1jb3JlLWhlYWRpbmc6IDEuMjM7XG4gIC0tbGluZS1oZWlnaHQtcGFyYWdyYXBoczogMS43O1xuICAtLWxpbmUtaGVpZ2h0LXBhcmFncmFwaHMtYmxvZzogMS43NztcblxuICAvLyBGb250IHdlaWdodHNcbiAgLS1mb250LXdlaWdodC1yZWd1bGFyOiA0MDA7XG4gIC0tZm9udC13ZWlnaHQtbWVkaXVtOiA1MDA7XG4gIC0tZm9udC13ZWlnaHQtc2VtaWJvbGQ6IDYwMDtcbiAgLS1mb250LXdlaWdodC1ib2xkOiA3MDA7XG4gIC0tZm9udC13ZWlnaHQtcGFyYWdyYXBoczogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIC0tZm9udC13ZWlnaHQtaGVhZGluZ3M6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xuXG4gIC8vIEhlYWRpbmcgZm9udCBzaXplcyBpbiBtb2JpbGVcbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRjb250YWluZXItbW9iaWxlKSB7XG4gICAgLS1mb250LXNpemUtaGVybzogMzhweDtcbiAgICAtLWZvbnQtc2l6ZS1oMTogMzJweDtcbiAgICAtLWZvbnQtc2l6ZS1oMjogMjRweDtcbiAgICAtLWZvbnQtc2l6ZS1oMzogMjFweDtcbiAgICAtLWZvbnQtc2l6ZS1oNDogMThweDtcbiAgICAtLWZvbnQtc2l6ZS1oNTogMTRweDtcbiAgICAtLWZvbnQtc2l6ZS1oNjogMTJweDtcbiAgICAtLWZvbnQtc2l6ZS1wYXJhZ3JhcGhzOiAxNnB4O1xuICAgIC0tZm9udC1zaXplLWRlZmF1bHQ6IDE2cHg7XG4gIH1cblxuICAvLyBFbGVtZW50IGZvbnQgc2l6ZXMgaW4gdGlueSBwaG9uZXMgbGlrZSBpUGhvbmUgNVNcbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQyMHB4KSB7XG4gICAgLS1mb250LXNpemUtMTY6IDE0cHg7XG4gICAgLS1mb250LXNpemUtbmF2LXRvZ2dsZS1sYWJlbDogMTNweDtcbiAgfVxufVxuIiwiQHVzZSAnc2FzczptYXRoJztcblxuLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tcHJvcGVydHktdW5pdC1hbGxvd2VkLWxpc3QsIG1heC1saW5lLWxlbmd0aFxuLy8gSGVscGVyIG1peGluIGZvciBzZWxmLWhvc3RlZCBmb250c1xuQG1peGluIGZvbnRmYWNlKCRmYW1pbHksICRzcmMsICR3ZWlnaHQ6IG5vcm1hbCwgJHN0eWxlOiBub3JtYWwpIHtcbiAgQGZvbnQtZmFjZSB7XG4gICAgLy8gQGxpbmsgaHR0cHM6Ly9jc3MtdHJpY2tzLmNvbS9hbG1hbmFjL3Byb3BlcnRpZXMvZi9mb250LWRpc3BsYXkvXG4gICAgZm9udC1kaXNwbGF5OiBhdXRvO1xuICAgIGZvbnQtZmFtaWx5OiAkZmFtaWx5O1xuICAgIGZvbnQtc3R5bGU6ICRzdHlsZTtcbiAgICBmb250LXdlaWdodDogJHdlaWdodDtcblxuICAgIC8vIFNsaWdodGx5IERlZXBlciBCcm93c2VyIFN1cHBvcnRcbiAgICAvLyBAc291cmNlIGh0dHBzOi8vY3NzLXRyaWNrcy5jb20vc25pcHBldHMvY3NzL3VzaW5nLWZvbnQtZmFjZS8jc2xpZ2h0bHktZGVlcGVyLWJyb3dzZXItc3VwcG9ydFxuICAgIHNyYzogdXJsKCcjeyRzcmN9LndvZmYnKSBmb3JtYXQoJ3dvZmYnKSwgdXJsKCcjeyRzcmN9LndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLCB1cmwoJyN7JHNyY30udHRmJykgZm9ybWF0KCd0cnVldHlwZScpO1xuICB9XG59XG5cbi8vIFJlc3BvbnNpdmUgZm9udHNcbkBmdW5jdGlvbiBzdHJpcC11bml0KCR2YWx1ZSkge1xuICBAcmV0dXJuIG1hdGguZGl2KCR2YWx1ZSwgJHZhbHVlICogMCArIDEpO1xufVxuXG5AbWl4aW4gcmVzcG9uc2l2ZS1mb250KCRtaW4tZm9udC1zaXplLCAkbWF4LWZvbnQtc2l6ZSwgJG1pbi12dzogMzIwcHgsICRtYXgtdnc6IDE5MjBweCkge1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZSBzY3NzL25vLWdsb2JhbC1mdW5jdGlvbi1uYW1lc1xuICAkdTE6IHVuaXQoJG1pbi12dyk7XG4gICR1MjogdW5pdCgkbWF4LXZ3KTtcbiAgJHUzOiB1bml0KCRtaW4tZm9udC1zaXplKTtcbiAgJHU0OiB1bml0KCRtYXgtZm9udC1zaXplKTtcblxuICBAaWYgJHUxID09ICR1MiBhbmQgJHUxID09ICR1MyBhbmQgJHUxID09ICR1NCB7XG4gICAgZm9udC1zaXplOiAkbWluLWZvbnQtc2l6ZTtcblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtaW4tdncpIHtcbiAgICAgIGZvbnQtc2l6ZTogY2FsYygjeyRtaW4tZm9udC1zaXplfSArICN7c3RyaXAtdW5pdCgkbWF4LWZvbnQtc2l6ZSAtICRtaW4tZm9udC1zaXplKX0gKiAoKDEwMHZ3IC0gI3skbWluLXZ3fSkgLyAje3N0cmlwLXVuaXQoJG1heC12dyAtICRtaW4tdncpfSkpO1xuICAgIH1cblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtYXgtdncpIHtcbiAgICAgIGZvbnQtc2l6ZTogJG1heC1mb250LXNpemU7XG4gICAgfVxuICB9XG59XG4iLCIvLyBTZWxmLWhvc3RlZCBmb250c1xuLy8gUmVtZW1iZXIgdG8gYWRkIHRoZXNlIGFsc28gdG8gZ3V0ZW5iZXJnL3ZhcmlhYmxlcy9fZm9udC1mYW1pbHkuc2Nzc1xuLy8gd2l0aCBjb3JyZWN0IHBhdGhzXG5AaW5jbHVkZSBmb250ZmFjZSgnSW50ZXInLCAnLi4vLi4vZm9udHMvaW50ZXItNDAwJywgNDAwKTtcbkBpbmNsdWRlIGZvbnRmYWNlKCdJbnRlcicsICcuLi8uLi9mb250cy9pbnRlci00MDAtaXRhbGljJywgNDAwLCBpdGFsaWMpO1xuQGluY2x1ZGUgZm9udGZhY2UoJ0ludGVyJywgJy4uLy4uL2ZvbnRzL2ludGVyLTUwMCcsIDUwMCk7XG5AaW5jbHVkZSBmb250ZmFjZSgnSW50ZXInLCAnLi4vLi4vZm9udHMvaW50ZXItNjAwJywgNjAwKTtcbkBpbmNsdWRlIGZvbnRmYWNlKCdJbnRlcicsICcuLi8uLi9mb250cy9pbnRlci03MDAnLCA3MDApO1xuIiwiLy8gQ1NTIFZhcmlhYmxlcyBmb3IgcmFkaW9zIGFuZCBjaGVja2JveGVzXG46cm9vdCB7XG4gIC8vIEZvcm0gZWxlbWVudCBjb2xvcnNcbiAgLS1jb2xvci1iYWNrZ3JvdW5kLWlucHV0LWZpZWxkOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIC0tY29sb3ItZm9ybS10ZXh0OiB2YXIoLS1jb2xvci1wYXJhZ3JhcGgpO1xuICAtLWNvbG9yLWZvcm0tbGFiZWwtdGV4dDogdmFyKC0tY29sb3ItZm9ybS10ZXh0KTtcbiAgLS1jb2xvci1yZXF1aXJlZC1sYWJlbC10ZXh0OiB2YXIoLS1jb2xvci1mb3JtLXRleHQpO1xuICAtLWNvbG9yLWJvcmRlci1mb3JtczogdmFyKC0tY29sb3ItcGFyYWdyYXBoKTtcbiAgLS1jb2xvci1ib3JkZXItZm9ybXMtZm9jdXM6IHZhcigtLWNvbG9yLXBhcmFncmFwaCk7XG4gIC0tY29sb3ItYnV0dG9uOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIC0tY29sb3ItYnV0dG9uLWhvdmVyOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIC0tY29sb3ItYnV0dG9uLWJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWVhc3QtYmF5KTtcbiAgLS1jb2xvci1idXR0b24tYmFja2dyb3VuZC1ob3ZlcjogdmFyKC0tY29sb3ItdmFsaGFsbGEpO1xuICAtLWNvbG9yLWNoZWNrYm94OiB2YXIoLS1jb2xvci1lYXN0LWJheSk7XG4gIC0tY29sb3ItY2hlY2tib3gtb3V0bGluZTogMCAwIDAgM3B4IHJnYig4NCA4NyAxMTUgLyAuMik7XG4gIC0tY29sb3ItY2hlY2tib3gtYm9yZGVyLWhvdmVyOiBjb2xvci5hZGp1c3QoIzU0NTc3MywgMTUlKTtcbiAgLS1jb2xvci1wbGFjZWhvbGRlcjogdmFyKC0tY29sb3ItcGFyYWdyYXBoKTtcbiAgLS1jb2xvci1wbGFjZWhvbGRlci1mb2N1czogdmFyKC0tY29sb3ItYmxhY2spO1xuICAtLW9wYWNpdHktcGxhY2Vob2xkZXI6IC40O1xuICAtLW9wYWNpdHktcGxhY2Vob2xkZXItZm9jdXM6IC44O1xuXG4gIC8vIEZvcm0gZWxlbWVudCBzZXR0aW5nc1xuICAtLWJvcmRlci1yYWRpdXMtY2hlY2tib3g6IDNweDtcbiAgLS1ib3JkZXItcmFkaXVzLWlucHV0LWZpZWxkOiAzcHg7XG4gIC0tYm9yZGVyLXJhZGl1cy1zZWxlY3Q6IDNweDtcbiAgLS1ib3JkZXItd2lkdGgtY2hlY2tib3g6IDFweDtcbiAgLS1ib3JkZXItd2lkdGgtaW5wdXQtZmllbGQ6IDFweDtcbiAgLS1mb250LXNpemUtaW5wdXQtZmllbGRzOiB2YXIoLS1mb250LXNpemUtMTcpO1xuICAtLWZvbnQtc2l6ZS1pbnB1dC1sYWJlbHM6IHZhcigtLWZvbnQtc2l6ZS1pbnB1dC1maWVsZHMpO1xuICAtLWZvbnQtc2l6ZS1yZXF1aXJlZC10ZXh0LWxhYmVsOiB2YXIoLS1mb250LXNpemUtaW5wdXQtZmllbGRzKTtcbiAgLS1mb250LXNpemUtcmVxdWlyZWQtYXN0ZXJpc2stbGFiZWw6IDIycHg7XG4gIC0tZm9ybS1jb2x1bW4tZ2FwOiAycmVtO1xuICAtLWZvcm0tcm93LWdhcDogMnJlbTtcbiAgLS1mb3JtLXJlcXVpcmVkLWdhcDogLjVyZW07XG4gIC0tZm9ybS1saW5lLWhlaWdodDogMjRweDtcbiAgLS1mb3JtLXBhZGRpbmctdmVydGljYWw6IDFyZW07XG4gIC0tZm9ybS1wYWRkaW5nLWhvcml6b250YWw6IDEuNXJlbTtcbiAgLS1nYXAtY2hlY2tib3g6IDEwcHg7XG4gIC0tZ2FwLXNlbGVjdC1pY29uOiAxLjVyZW07XG4gIC0tbGluZS1oZWlnaHQtY2hlY2tib3g6IHZhcigtLWxpbmUtaGVpZ2h0LXBhcmFncmFwaHMpO1xuICAtLXNpemUtY2hlY2tib3gtbWFya2VyOiAxMnB4O1xuICAtLXNpemUtcmFkaW8tYnV0dG9uOiAxNnB4O1xuICAtLXNpemUtcmFkaW8tYnV0dG9uLW1hcmtlcjogOHB4O1xufVxuIiwiLy8gQ1NTIFZhcmlhYmxlcyBmb3IgcmVzcG9uc2l2ZSBwYWRkaW5ncyBhbmQgbWFyZ2luc1xuOnJvb3Qge1xuICAvLyBHYXBzXG4gIC0tZ3JpZC1nYXA6IDQuOHJlbTtcblxuICAvLyBQYWRkaW5nc1xuICAtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWw6IDJyZW07XG4gIC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbC1sYXJnZTogNi40cmVtO1xuICAtLXBhZGRpbmctY29udGFpbmVyLXZlcnRpY2FsOiA2LjRyZW07XG4gIC0tcGFkZGluZy1zaXRlLWhlYWRlci12ZXJ0aWNhbDogMnJlbTtcbiAgLS1wYWRkaW5nLWJsb2NrOiA4cmVtO1xuXG4gIC8vIE1hcmdpbnNcbiAgLS1tYXJnaW4tYmV0d2Vlbi10ZXh0LWVsZW1lbnRzOiA0cmVtO1xuICAtLW1hcmdpbi13cC1ibG9jay1pbWFnZTogNHJlbTtcbiAgLS1tYXJnaW4tYmV0d2Vlbi1wYXJhZ3JhcGhzOiAyLjdyZW07XG5cbiAgLy8gTWlkLXNpemVkIHNjcmVlbnNcbiAgQG1lZGlhIChtYXgtd2lkdGg6ICR3aWR0aC1ncmlkLWJhc2UgKyAxNTBweCkge1xuICAgIC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbDogMnJlbTtcbiAgfVxuXG4gIC8vIFdoZW4gbmF2aWdhdGlvbiB0cmFuc2Zvcm1zIHRvIGEgcmVzcG9uc2l2ZSBoYW1idXJnZXIgbWVudVxuICBAbWVkaWEgKG1heC13aWR0aDogJHdpZHRoLW1heC1tb2JpbGUpIHtcbiAgICAtLXBhZGRpbmctc2l0ZS1oZWFkZXItdmVydGljYWw6IDJyZW07XG4gIH1cblxuICAvLyBpUGFkXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkY29udGFpbmVyLWlwYWQtbGFuZHNjYXBlKSB7XG4gICAgLS1ncmlkLWdhcDogMy4ycmVtO1xuICB9XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRjb250YWluZXItaXBhZCkge1xuICAgIC0tZ3JpZC1nYXA6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICAgIC0tcGFkZGluZy1jb250YWluZXItdmVydGljYWw6IDVyZW07XG4gIH1cblxuICAvLyBCZXR3ZWVuIGlQYWQgYW5kIGEgbW9iaWxlIHBob25lXG4gIEBtZWRpYSAobWF4LXdpZHRoOiA2MDBweCkge1xuICAgIC0tcGFkZGluZy1ibG9jazogNnJlbTtcbiAgfVxuXG4gIC8vIFZhcnMgaW4gbW9iaWxlXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkY29udGFpbmVyLW1vYmlsZSkge1xuICAgIC0tcGFkZGluZy1jb250YWluZXItdmVydGljYWw6IDRyZW07XG4gIH1cbn1cbiIsIi8vIEEgaGlkZGVuIHNjcmVlbiByZWFkZXIgdGV4dHMgZm9yIHJlYWRlcnMsIGZvY3VzIGVsZW1lbnRzIGZvclxuLy8gdmlzaW9uIGltcGFpcmVkIGFuZCBvdGhlciB1c2VmdWwgYTExeSBDU1MgaGFja3MuXG5cbi8vIFRleHQgbWVhbnQgb25seSBmb3Igc2NyZWVuIHJlYWRlcnMuXG5AbWl4aW4gc2NyZWVuLXJlYWRlci10ZXh0KCkge1xuICBib3JkZXI6IDA7XG4gIGNsaXA6IHJlY3QoMXB4LCAxcHgsIDFweCwgMXB4KTtcblxuICAvLyBkb2l1c2UtZGlzYWJsZVxuICBjbGlwLXBhdGg6IGluc2V0KDUwJSk7XG4gIGhlaWdodDogMXB4O1xuICBtYXJnaW46IC0xcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmc6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDFweDtcblxuICAvLyBNYW55IHNjcmVlbiByZWFkZXIgYW5kIGJyb3dzZXIgY29tYmluYXRpb25zIGFubm91bmNlIGJyb2tlbiB3b3JkcyBhcyB0aGV5IHdvdWxkIGFwcGVhciB2aXN1YWxseS5cbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudCwgbWF4LWxpbmUtbGVuZ3RoXG4gIHdvcmQtd3JhcDogbm9ybWFsICFpbXBvcnRhbnQ7XG5cbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgYm94LXNoYWRvdzogMCAwIDJweCAycHggcmdiKDIyIDIyIDIyIC8gLjYpO1xuICAgIGNsaXA6IGF1dG87XG4gICAgY2xpcC1wYXRoOiBub25lO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogMS43cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbGVmdDogNXB4O1xuICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgcGFkZGluZzogMTVweCAyM3B4IDE0cHg7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIHRvcDogNXB4O1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIHotaW5kZXg6IDEwMDAwMDsgLy8gQWJvdmUgV1AgdG9vbGJhci5cbiAgfVxufVxuXG4uc2NyZWVuLXJlYWRlci10ZXh0IHtcbiAgQGluY2x1ZGUgc2NyZWVuLXJlYWRlci10ZXh0KCk7XG5cbiAgJi5za2lwLWxpbmsge1xuICAgIG1hcmdpbjogNXB4O1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogY3VycmVudENvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4vLyBTdXBwcmVzcyBmb2N1cyByaW5nIG9uIGZvciBtb3VzZSBhbmQgdG91Y2ggdXNlcnMgZm9yIHZpc3VhbCByZWFzb25zXG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgYTExeS9uby1vdXRsaW5lLW5vbmVcbltkYXRhLXdoYXRpbnB1dD1cIm1vdXNlXCJdICo6Zm9jdXMsXG5bZGF0YS13aGF0aW5wdXQ9XCJ0b3VjaFwiXSAqOmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbn1cblxuLy8gVmlzdWFsbHkgZGlzdGluY3QgZm9jdXMgY29sb3Igb24ga2V5Ym9hcmRcbltkYXRhLXdoYXRpbnB1dD1cImtleWJvYXJkXCJdIHtcbiAgLy8gTWFrZSBzdXJlIGV2ZXJ5IGZvY3VzYWJsZSBlbGVtZW50IGhhcyBvcGFjaXR5IDEwMCVcbiAgYTpmb2N1cyxcbiAgaW5wdXQ6Zm9jdXMsXG4gIGJ1dHRvbjpmb2N1cyxcbiAgc2VsZWN0OmZvY3VzLFxuICB0ZXh0YXJlYTpmb2N1cyxcbiAgZGl2W3RhYmluZGV4XTpmb2N1cyB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIC5nbG9iYWwtbGluayB7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgfVxuXG4gIC8vIEEgYml0IGJldHRlciBmb2N1cyBmb3IgbGFyZ2UgZWxlbWVudHNcbiAgYS5nbG9iYWwtbGluazpmb2N1cyB7XG4gICAgb3V0bGluZS1vZmZzZXQ6IDVweDtcbiAgICBvdXRsaW5lLXN0eWxlOiBzb2xpZDtcbiAgICBvdXRsaW5lLXdpZHRoOiA0cHg7XG4gICAgdHJhbnNpdGlvbjogb3V0bGluZS1vZmZzZXQgLjI1cyBlYXNlO1xuICB9XG59XG5cbi8vIEFkZCBpY29uIHRvIGV4dGVybmFsIGxpbmtzXG5hLmlzLWV4dGVybmFsLWxpbms6OmFmdGVyIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi8uLi9zdmcvZXh0ZXJuYWwtbGluay5zdmcnKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IDEycHggMTJweDtcbiAgY29udGVudDogJyc7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBoZWlnaHQ6IDEycHg7XG4gIG1hcmdpbi1sZWZ0OiA1cHg7XG4gIG1hcmdpbi1yaWdodDogMnB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDA7XG4gIHRyYW5zaXRpb246IGFsbCAkdHJhbnNpdGlvbi1kdXJhdGlvbjtcbiAgd2lkdGg6IDEycHg7XG59XG5cbi8vIERvIG5vdCB1c2UgZXh0ZXJuYWwgbGlua3MgaW5kaWNhdG9ycyBpbiBkZWNvcmF0aXZlIGFyZWFzXG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgYTExeS9uby1kaXNwbGF5LW5vbmVcbmEuaXMtZXh0ZXJuYWwtbGluay5nbG9iYWwtbGluazo6YWZ0ZXIsXG5hLmlzLWV4dGVybmFsLWxpbmsubm8tZXh0ZXJuYWwtbGluay1pbmRpY2F0b3I6OmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLy8gRGVmaW5lIGhlcmUgdGhlIHVwc2VsbCBibG9ja3MgdGhhdCBoYXZlIG92ZXJsYXkgbGluayBhcmVhc1xuLy8gaW5zaWRlIHRoZW1cbi8vIFRoZXNlIHNob3VsZCBhbHdheXMgaGF2ZSBvdmVyZmxvdyB2aXNpYmxlLCBiZWNhdXNlIG90aGVyd2lzZVxuLy8gdGhlIG91dGxpbmUgd2lsbCBub3QgYmUgdmlzaWJsZSBvdXRzaWRlIHRoZSBlbGVtZW50XG4vLyAuYmxvY2suYmxvY2stdGhyZWUtdXBzZWxscyAuY29udGFpbmVyLFxuLy8gYm9keSAuYmxvY2sgLmNvbnRhaW5lciAuY29sIHtcbi8vICAgb3ZlcmZsb3c6IHZpc2libGU7XG4vLyB9XG5cbi8vIE1ha2UgZm9jdXMgYSBsaXR0bGUgbW9yZSBlbmdhZ2luZ1xuLy8gQHNvdXJjZSBodHRwczovL3R3aXR0ZXIuY29tL2FyZ3lsZWluay9zdGF0dXMvMTM4NzA3MjA5NTE1OTQwNjU5NlxuLy8gQGxpbmsgaHR0cHM6Ly9jb2RlcGVuLmlvL2FyZ3lsZWluay9wZW4vSmpFemVMcFxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiBuby1wcmVmZXJlbmNlKSB7XG4gIDpmb2N1cyxcbiAgKjpmb2N1cyxcbiAgW2RhdGEtd2hhdGlucHV0PVwia2V5Ym9hcmRcIl0gOmZvY3VzLFxuICBbZGF0YS13aGF0aW5wdXQ9XCJrZXlib2FyZFwiXSBhOmZvY3VzIHtcbiAgICBvdXRsaW5lLW9mZnNldDogNXB4O1xuICAgIHRyYW5zaXRpb246IG91dGxpbmUtb2Zmc2V0IC4yNXMgZWFzZTtcbiAgfVxufVxuIiwiLy8gU2l0ZSBuYXZpZ2F0aW9uIGRlc2t0b3AgbGF5b3V0XG4vLyBUaGUgbWFpbiBsYXlvdXQgZm9yIHRoZSB3ZWJzaXRlIG5hdmlnYXRpb24sIGZvciBhIGRlc2t0b3AgZGV2aWNlcyBvbmx5LlxuXG4vLyBEaXNhYmxlIHNvbWUgcnVsZXMgdGhhdCBhcmUgbm90IG5lZWRlZCBoZXJlXG4vLyBzdHlsZWxpbnQtZGlzYWJsZSBuby1kZXNjZW5kaW5nLXNwZWNpZmljaXR5XG5cbi8vIFNldHRpbmdzXG4kYWJzb2x1dGUtbmF2aWdhdGlvbjogdHJ1ZTtcbiR1c2UtZHJvcGRvd24tYnViYmxlOiB0cnVlO1xuJHVzZS1kcm9wZG93bi10b2dnbGUtYW5pbWF0aW9uOiB0cnVlO1xuXG4vLyBDU1MgdmFyaWFibGVzXG4vLyBUaGVzZSBjYW4gYmUgYWRqdXN0ZWQgd2l0aCBtZWRpYSBxdWVyaWVzIGZvciBpbi1iZXR3ZWVuIGJyZWFrcG9pbnRzXG46cm9vdCB7XG4gIC8vIERpbWVuc2lvbnMsIGdhcHMgYW5kIHNwYWNpbmdzXG4gIC0tYm9yZGVyLXJhZGl1cy1zdWItbWVudTogMDtcbiAgLS1ib3gtc2hhZG93LW5hdmlnYXRpb24tc3RhdGljOiAwIDAgMTBweCByZ2IoODQgODcgMTE1IC8gLjEpO1xuICAvLyBUaGlzIGNvdWxkIGJlIGZvciBpbnN0YW5jZTogMCAyNXB4IDIwcHggLTEwcHggcmdiKDUgNCAyNSAvIC4wNSlcbiAgLS1ib3gtc2hhZG93LXN1Yi1tZW51OiB0cmFuc3BhcmVudDtcbiAgLS1kcm9wZG93bi10b2dnbGUtc2l6ZTogMTJweDtcbiAgLS1nYXAtZHJvcGRvd246IDFyZW07XG4gIC0tZ2FwLWJldHdlZW4tZHJvcGRvd24tdG9nZ2xlOiAxLjVyZW07XG4gIC0tZ2FwLW1haW4tbGV2ZWwtaG9yaXpvbnRhbDogMi41cmVtO1xuICAtLXBhZGRpbmctbWFpbi1sZXZlbC1ob3Jpem9udGFsOiAwO1xuICAtLXBhZGRpbmctbWFpbi1sZXZlbC12ZXJ0aWNhbDogLjZyZW07XG4gIC0tcGFkZGluZy1zdWItbWVudS12ZXJ0aWNhbDogLjZyZW07XG4gIC0tcGFkZGluZy1zdWItbWVudS1saW5rLXZlcnRpY2FsOiAuNnJlbTtcbiAgLS1wYWRkaW5nLXN1Yi1tZW51LWxpbmstaG9yaXpvbnRhbDogMS41cmVtO1xuICAtLXdpZHRoLXN1Yi1tZW51OiAyMnJlbTtcblxuICAvLyBDb2xvcnNcbiAgLS1jb2xvci1iYWNrZ3JvdW5kLW5hdi1kZXNrdG9wOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIC0tY29sb3ItYmFja2dyb3VuZC1zdWItbWVudTogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAtLWNvbG9yLWJvcmRlci1zdWItbWVudTogcmdiKDQxIDQ0IDYxIC8gLjA1KTtcbiAgLS1jb2xvci1kcm9wZG93bi10b2dnbGU6IHZhcigtLWNvbG9yLXZhbGhhbGxhKTtcbiAgLS1jb2xvci1zdWItbWVudTogdmFyKC0tY29sb3ItdmFsaGFsbGEpO1xuICAtLWNvbG9yLWhvdmVyLW1haW4tbGV2ZWw6IHZhcigtLWNvbG9yLWxpbmstdGV4dCk7XG4gIC0tY29sb3ItaG92ZXItc3ViLW1lbnU6IHZhcigtLWNvbG9yLXZhbGhhbGxhKTtcbiAgLS1jb2xvci1tYWluLWxldmVsOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gIC0tY29sb3ItY3VycmVudDogdmFyKC0tY29sb3ItbGluay10ZXh0KTtcblxuICAvLyBGb250IHN0eWxlc1xuICAtLWZvbnQtc2l6ZS1tYWluLWxldmVsOiB2YXIoLS1mb250LXNpemUtMTYpO1xuICAtLWZvbnQtc2l6ZS1zdWItbWVudTogdmFyKC0tZm9udC1zaXplLTE2KTtcbiAgLS1mb250LXdlaWdodC1tYWluLWxldmVsOiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcbiAgLS1mb250LXdlaWdodC1zdWItbWVudTogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG59XG5cbi8vIEdlbmVyYWwgbmF2aWdhdGlvbiByZXNldHNcbi5zaXRlLWhlYWRlciB1bCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJHdpZHRoLW1heC1tb2JpbGUpIHtcbiAgLm5hdi1jb250YWluZXIge1xuICAgIEBpZiAkYWJzb2x1dGUtbmF2aWdhdGlvbiA9PSBmYWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1iYWNrZ3JvdW5kLW5hdi1kZXNrdG9wKTtcbiAgICAgIGJveC1zaGFkb3c6IHZhcigtLWJveC1zaGFkb3ctbmF2aWdhdGlvbi1zdGF0aWMpO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgei1pbmRleDogMjIyO1xuICAgIH1cblxuICAgIEBpZiAkYWJzb2x1dGUtbmF2aWdhdGlvbiA9PSB0cnVlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgLy8gTmVlZCB0byB1c2UgZGlzcGxheTogbm9uZSBoZXJlIHRvIG1ha2Ugc3VyZSBtb2JpbGUgbmF2LXRvZ2dsZSBpcyB2aXN1YWxseSBoaWRkZW4gb24gZGVza3RvcFxuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgYTExeS9uby1kaXNwbGF5LW5vbmVcbiAgLm5hdi10b2dnbGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAvLyBOYXZpZ2F0aW9uIHdyYXBwZXJcbiAgLm5hdi1wcmltYXJ5IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgfVxuXG4gIC8vIE5hdmlnYXRpb24gdW5vcmRlcmVkIGxpc3Qgd3JhcHBlciBlbGVtZW50XG4gIC5tZW51LWl0ZW1zIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZ2FwOiB2YXIoLS1nYXAtbWFpbi1sZXZlbC1ob3Jpem9udGFsKTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cblxuICAvLyBOYXZpZ2F0aW9uIGxpc3QgaXRlbVxuICAubWVudS1pdGVtIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG5cbiAgLy8gTWVudSBpdGVtc1xuICAubWVudS1pdGVtID4gYSB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbi1sZXZlbCk7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbWFpbi1sZXZlbCk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW1haW4tbGV2ZWwpO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tcGFkZGluZy1tYWluLWxldmVsLXZlcnRpY2FsKTtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXBhZGRpbmctbWFpbi1sZXZlbC1ob3Jpem9udGFsKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1wYWRkaW5nLW1haW4tbGV2ZWwtaG9yaXpvbnRhbCk7XG4gICAgcGFkZGluZy10b3A6IHZhcigtLXBhZGRpbmctbWFpbi1sZXZlbC12ZXJ0aWNhbCk7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgfVxuXG4gIC5tZW51LWl0ZW0gLnN1Yi1tZW51IGEge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLXN1Yi1tZW51KTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zdWItbWVudSk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXN1Yi1tZW51KTtcbiAgICBsaW5lLWhlaWdodDogMS41O1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1wYWRkaW5nLXN1Yi1tZW51LWxpbmstdmVydGljYWwpO1xuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tcGFkZGluZy1zdWItbWVudS1saW5rLWhvcml6b250YWwpO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXBhZGRpbmctc3ViLW1lbnUtbGluay1ob3Jpem9udGFsKTtcbiAgICBwYWRkaW5nLXRvcDogdmFyKC0tcGFkZGluZy1zdWItbWVudS1saW5rLXZlcnRpY2FsKTtcbiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICB9XG5cbiAgLy8gQ3VycmVudCBtZW51IGl0ZW0gY29sb3JcbiAgLm1lbnUtaXRlbS5jdXJyZW50LW1lbnUtcGFyZW50ID4gYSxcbiAgLm1lbnUtaXRlbS5jdXJyZW50LW1lbnUtaXRlbSA+IGEge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1jdXJyZW50KTtcbiAgfVxuXG4gIC8vIExldCdzIG1ha2Ugc3BhY2UgZm9yIHRoZSBuYXYtdG9nZ2xlL2Fycm93XG4gIC5tZW51LWl0ZW0ubWVudS1pdGVtLWhhcy1jaGlsZHJlbiBhIHtcbiAgICB0cmFuc2l0aW9uOiBwYWRkaW5nIC4ycyBjdWJpYy1iZXppZXIoLjE5LCAxLCAuMjIsIDEpLCBiYWNrZ3JvdW5kLWNvbG9yIC4ycyBjdWJpYy1iZXppZXIoLjE5LCAxLCAuMjIsIDEpO1xuICB9XG5cbiAgLm1lbnUtaXRlbSA+IGE6aG92ZXIsXG4gIC5tZW51LWl0ZW0gPiBhOmZvY3VzIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItaG92ZXItbWFpbi1sZXZlbCk7XG4gIH1cblxuICAubWVudS1pdGVtIC5zdWItbWVudSBhOmhvdmVyLFxuICAubWVudS1pdGVtIC5zdWItbWVudSBhOmZvY3VzIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItaG92ZXItc3ViLW1lbnUpO1xuICB9XG5cbiAgLy8gQ3JlYXRlIGFuaW1hdGlvbiBpbGx1c2lvblxuICAuc3ViLW1lbnUudG9nZ2xlZC1vbiBhLFxuICAuc3ViLW1lbnUudG9nZ2xlZC1vbiAuc3ViLW1lbnUgYSxcbiAgLm1lbnUtaXRlbS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuLmhvdmVyLWludGVudCAuc3ViLW1lbnUgYSxcbiAgLm1lbnUtaXRlbS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuOmZvY3VzIC5zdWItbWVudSBhIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tcGFkZGluZy1zdWItbWVudS1saW5rLXZlcnRpY2FsKTtcbiAgICBwYWRkaW5nLXRvcDogdmFyKC0tcGFkZGluZy1zdWItbWVudS1saW5rLXZlcnRpY2FsKTtcbiAgfVxuXG4gIC5zdWItbWVudS50b2dnbGVkLW9uLFxuICAuc3ViLW1lbnUudG9nZ2xlZC1vbiAuc3ViLW1lbnUsXG4gIC5tZW51LWl0ZW0ubWVudS1pdGVtLWhhcy1jaGlsZHJlbi5ob3Zlci1pbnRlbnQgLnN1Yi1tZW51LFxuICAubWVudS1pdGVtLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW46Zm9jdXMgLnN1Yi1tZW51IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tcGFkZGluZy1zdWItbWVudS12ZXJ0aWNhbCk7XG4gICAgcGFkZGluZy10b3A6IHZhcigtLXBhZGRpbmctc3ViLW1lbnUtdmVydGljYWwpO1xuICB9XG5cbiAgLm5hdi1wcmltYXJ5ID4gdWw6Zmlyc3Qtb2YtdHlwZSA+IC5tZW51LWl0ZW0taGFzLWNoaWxkcmVuOmZvY3VzOjpiZWZvcmUsXG4gIC5uYXYtcHJpbWFyeSA+IHVsOmZpcnN0LW9mLXR5cGUgPiAubWVudS1pdGVtLWhhcy1jaGlsZHJlbjpob3Zlcjo6YmVmb3JlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIHRyYW5zaXRpb246IGFsbCAuMnMgY3ViaWMtYmV6aWVyKC4xOSwgMSwgLjIyLCAxKTtcbiAgfVxuXG4gIC8vIERyb3Bkb3duc1xuICAuc3ViLW1lbnUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJhY2tncm91bmQtc3ViLW1lbnUpO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ib3JkZXItc3ViLW1lbnUpO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc3ViLW1lbnUpO1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXN1Yi1tZW51KTtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJvcmRlci1zdWItbWVudSk7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgdmFyKC0tY29sb3ItYm9yZGVyLXN1Yi1tZW51KTtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXN1Yi1tZW51KTtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zdWItbWVudSk7XG4gICAgYm94LXNoYWRvdzogdmFyKC0tYm94LXNoYWRvdy1zdWItbWVudSk7XG4gICAgbGVmdDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS1nYXAtZHJvcGRvd24pO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTAwJTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjJzIGN1YmljLWJlemllciguMTksIDEsIC4yMiwgMSk7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIHdpZHRoOiB2YXIoLS13aWR0aC1zdWItbWVudSk7XG4gICAgei1pbmRleDogOTtcblxuICAgIC8vIElmIGRyb3Bkb3duIGlzIG91dCBvZiB2aWV3cG9ydCBmcm9tIHRoZSByaWdodCwgbW92ZSBpdCB0byB0aGUgbGVmdFxuICAgICYuaXMtb3V0LW9mLXZpZXdwb3J0IHtcbiAgICAgIGxlZnQ6IHVuc2V0O1xuICAgICAgcmlnaHQ6IDA7XG5cbiAgICAgIC8vIEFsbCBkcm9wZG93bnMgaW4gbGV2ZWwgMiBhbmQgYWZ0ZXJcbiAgICAgIC5zdWItbWVudSB7XG4gICAgICAgIGxlZnQ6IHVuc2V0O1xuICAgICAgICByaWdodDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBJZiBtYWluIGxldmVsIGlzIG5vdCBvdXQgb2Ygdmlld3BvcnQgYnV0IGlmIHN1Yi1tZW51IHVuZGVyIGl0IGlzXG4gICAgLnN1Yi1tZW51LmlzLW91dC1vZi12aWV3cG9ydCB7XG4gICAgICBsZWZ0OiB1bnNldDtcbiAgICAgIHJpZ2h0OiAxMDAlO1xuICAgIH1cblxuICAgIC8vIEFsbCBkcm9wZG93bnMgaW4gbGV2ZWwgMiBhbmQgYWZ0ZXJcbiAgICAuc3ViLW1lbnUge1xuICAgICAgbGVmdDogMTAwJTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgbWFyZ2luLXRvcDogY2FsYygtMSAqIHZhcigtLXBhZGRpbmctc3ViLW1lbnUtdmVydGljYWwpKTtcbiAgICAgIHRvcDogMDtcbiAgICB9XG5cbiAgICBsaSB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgd2lkdGg6IHZhcigtLXdpZHRoLXN1Yi1tZW51KTtcbiAgICB9XG4gIH1cblxuICAvLyBUaGlzIGlzIHdoZXJlIHRoZSBtYWdpYyBoYXBwZW5zXG4gIC5tZW51LWl0ZW0taGFzLWNoaWxkcmVuID4gLnN1Yi1tZW51LnRvZ2dsZWQtb24sXG4gIC5tZW51LWl0ZW0taGFzLWNoaWxkcmVuOmZvY3VzID4gLnN1Yi1tZW51LFxuICAubWVudS1pdGVtLWhhcy1jaGlsZHJlbi5ob3Zlci1pbnRlbnQgPiAuc3ViLW1lbnUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAlKTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIHotaW5kZXg6IDEyO1xuICB9XG5cbiAgLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gLnN1Yi1tZW51LnRvZ2dsZWQtb24gLnN1Yi1tZW51LFxuICAubWVudS1pdGVtLWhhcy1jaGlsZHJlbiAuc3ViLW1lbnUgLnN1Yi1tZW51LnRvZ2dsZWQtb24sXG4gIC5tZW51LWl0ZW0taGFzLWNoaWxkcmVuOmZvY3VzIC5zdWItbWVudSAuc3ViLW1lbnUsXG4gIC5tZW51LWl0ZW0taGFzLWNoaWxkcmVuLmhvdmVyLWludGVudCAuc3ViLW1lbnUgLnN1Yi1tZW51IHtcbiAgICBtYXJnaW4tdG9wOiBjYWxjKC0xICogdmFyKC0tcGFkZGluZy1zdWItbWVudS12ZXJ0aWNhbCkpO1xuICAgIHRvcDogMDtcbiAgICB6LWluZGV4OiAxMDtcbiAgfVxuXG4gIC8vIFN1YiBtZW51IGl0ZW1zIHRoYXQgaGF2ZSBpdGVtcyB1bmRlciB0aGVtXG4gIC5tZW51LWl0ZW0ubWVudS1pdGVtLWhhcy1jaGlsZHJlbiB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGdhcDogdmFyKC0tZ2FwLWJldHdlZW4tZHJvcGRvd24tdG9nZ2xlKTtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgLy8gQWRkIGEgXCJzYWZlIGFyZWFcIiBwc2V1ZG8gZWxlbWVudCB0byBmaWxsIHRoZSBnYXBcbiAgICAvLyBiZXR3ZWVuIG1lbnUgaXRlbSBhbmQgc3ViIG1lbnUgdG8gaGVscCBob3ZlcmluZ1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBoZWlnaHQ6IHZhcigtLWdhcC1kcm9wZG93bik7XG4gICAgICBtYXgtd2lkdGg6IHZhcigtLXdpZHRoLXN1Yi1tZW51KTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMTAwJTtcbiAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxuXG4gIC8vIEVuc3VyZSBcInNhZmUgYXJlYVwiIGlzIHZpc2libGUgb25seSBhZnRlciB0cmlnZ2VyaW5nIHN1Ym1lbnUgd2l0aCBtb3VzZVxuICAubWVudS1pdGVtLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4uaG92ZXItaW50ZW50OjphZnRlciB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcblxuICAgIC8vIE1ha2Ugc3VyZSBpdCdzIG9uIHRvcCBvZiBldmVyeXRoaW5nXG4gICAgei1pbmRleDogOTk5OTk5OTtcbiAgfVxuXG4gIC8vIFRvZ2dsZSBpY29uIGRpbWVuc2lvbnMgb24gZGVza3RvcFxuICAuZHJvcGRvd24tdG9nZ2xlIHN2ZyB7XG4gICAgaGVpZ2h0OiB2YXIoLS1kcm9wZG93bi10b2dnbGUtc2l6ZSk7XG4gICAgd2lkdGg6IHZhcigtLWRyb3Bkb3duLXRvZ2dsZS1zaXplKTtcblxuICAgIEBpZiAkdXNlLWRyb3Bkb3duLXRvZ2dsZS1hbmltYXRpb24gPT0gdHJ1ZSB7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgLjM1cyBjdWJpYy1iZXppZXIoLjE5LCAxLCAuMjIsIDEpO1xuICAgIH1cbiAgfVxuXG4gIC8vIE1haW4gbGV2ZWwgdG9nZ2xlIGljb25cbiAgLmRyb3Bkb3duLXRvZ2dsZS50b2dnbGVkLW9uIHN2ZyB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGVYKDE4MGRlZyk7XG4gIH1cblxuICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogMDtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItZHJvcGRvd24tdG9nZ2xlKTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB9XG5cbiAgLy8gU3ViLW1lbnUgdG9nZ2xlIGljb25cbiAgLnN1Yi1tZW51IC5kcm9wZG93bi10b2dnbGUge1xuICAgIHdpZHRoOiAzcmVtO1xuICB9XG5cbiAgLnN1Yi1tZW51IC5kcm9wZG93bi10b2dnbGUgc3ZnIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpIHJvdGF0ZVgoMGRlZyk7XG4gIH1cblxuICAuc3ViLW1lbnUgLmRyb3Bkb3duLXRvZ2dsZS50b2dnbGVkLW9uIHN2ZyB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKSByb3RhdGVYKDE4MGRlZyk7XG4gIH1cblxuICAvLyBEb24ndCB1c2UgZ2FwIGZpbGxlciBpbiBzdWIgbWVudSBpdGVtc1xuICAvLyBBY2NlcHRhYmxlIHVzZSBvZiBkaXNwbGF5OiBub25lIGhlcmUsIGZvciB2aXN1YWwvdGVjaG5pY2FsIHB1cnBvc2VzXG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBhMTF5L25vLWRpc3BsYXktbm9uZVxuICAuc3ViLW1lbnUgLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW46OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkd2lkdGgtbWF4LW1vYmlsZSkge1xuICAgIHVsIGxpOmZvY3VzID4gdWwsXG4gICAgdWwgbGk6aG92ZXIgPiB1bCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cblxuICAvLyBEaXNhYmxlIGFuaW1hdGlvbnMgb24gSUUxMCArIElFMTFcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHtcbiAgICAvLyBFbmFibGUgaG92ZXJzXG4gICAgdWwgbGk6Zm9jdXMgPiB1bCxcbiAgICB1bCBsaTpob3ZlciA+IHVsIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxuXG4gIC8vIFNtb290aCBhbmltYXRpb25cbiAgQGlmICR1c2UtZHJvcGRvd24tdG9nZ2xlLWFuaW1hdGlvbiA9PSB0cnVlIHtcbiAgICAubWVudS1pdGVtLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gPiAuZHJvcGRvd24tdG9nZ2xlLnRvZ2dsZWQtb24gc3ZnLFxuICAgIC5tZW51LWl0ZW0ubWVudS1pdGVtLWhhcy1jaGlsZHJlbjpob3ZlciA+IC5kcm9wZG93bi10b2dnbGUgc3ZnLFxuICAgIC5tZW51LWl0ZW0ubWVudS1pdGVtLWhhcy1jaGlsZHJlbjpmb2N1cyA+IC5kcm9wZG93bi10b2dnbGUgc3ZnIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwJSkgcm90YXRlKDE4MGRlZyk7XG4gICAgfVxuXG4gICAgLy8gU21vb3RoIGFuaW1hdGlvblxuICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1tYXgtc3BlY2lmaWNpdHksIHNlbGVjdG9yLW1heC1jbGFzc1xuICAgIC5tZW51LWl0ZW0ubWVudS1pdGVtLWhhcy1jaGlsZHJlbiAubWVudS1pdGVtLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gPiAuZHJvcGRvd24tdG9nZ2xlLnRvZ2dsZWQtb24gc3ZnLFxuICAgIC5tZW51LWl0ZW0ubWVudS1pdGVtLWhhcy1jaGlsZHJlbiAubWVudS1pdGVtLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW46aG92ZXIgPiAuZHJvcGRvd24tdG9nZ2xlIHN2ZyxcbiAgICAubWVudS1pdGVtLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gLm1lbnUtaXRlbS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuOmZvY3VzID4gLmRyb3Bkb3duLXRvZ2dsZSBzdmcge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAlKSByb3RhdGUoOTBkZWcpO1xuICAgIH1cbiAgfVxuXG4gIC8vIERyb3Bkb3duIGJ1YmJsZVxuICBAaWYgJHVzZS1kcm9wZG93bi1idWJibGUgPT0gdHJ1ZSB7XG4gICAgLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW46OmJlZm9yZSB7XG4gICAgICAvLyBVc2Ugb2Ygbm9uLXZhcmlhYmxlIGlzIGFjY2VwdGFibGUgaGVyZSBiZWNhdXNlIGJ1YmJsZSBuZWVkcyBpdFxuICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNoLXdhcWFyL2RlY2xhcmF0aW9uLXVzZS12YXJpYWJsZVxuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB2YXIoLS1jb2xvci13aGl0ZSk7XG4gICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgICAgYm9yZGVyLXdpZHRoOiAwIDVweCA1cHg7XG4gICAgICBib3R0b206IC0xMHB4O1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGhlaWdodDogMDtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMjBweDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tO1xuICAgICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICAgIHdpZHRoOiAwO1xuICAgIH1cbiAgfVxufSAvLyBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICR3aWR0aC1tYXgtbW9iaWxlKVxuIiwiLy8gU2l0ZSBuYXZpZ2F0aW9uIG1vYmlsZSBsYXlvdXRcbi8vIFRoZSBtYWluIGxheW91dCBmb3IgdGhlIHdlYnNpdGUgbmF2aWdhdGlvbiwgZm9yIHRoZSBtb2JpbGUgdmVyc2lvbiBvbmx5LlxuXG4vLyBTZXR0aW5nc1xuJGFic29sdXRlLW5hdmlnYXRpb24tbW9iaWxlOiB0cnVlO1xuJG5hdi1zbGlkZS1hbmltYXRpb246IHRydWU7XG5cbi8vIFNldHRpbmdzIGZvciBqb25zdWgvaGFtYnVyZ2Vyc1xuLy8gVGhlc2UgbmVlZCB0byBiZSBTQ1NTIHZhcmlhYmxlc1xuJGhhbWJ1cmdlci1wYWRkaW5nLXg6IDEuNXJlbTtcbiRoYW1idXJnZXItcGFkZGluZy15OiA0cmVtO1xuJGhhbWJ1cmdlci1sYXllci13aWR0aDogM3JlbTtcbiRoYW1idXJnZXItbGF5ZXItaGVpZ2h0OiAuMnJlbTtcbiRoYW1idXJnZXItbGF5ZXItc3BhY2luZzogLjVyZW07XG4kaGFtYnVyZ2VyLWxheWVyLWNvbG9yOiB2YXIoLS1jb2xvci1oYW1idXJnZXIpO1xuJGhhbWJ1cmdlci1sYXllci1ib3JkZXItcmFkaXVzOiAwO1xuJGhhbWJ1cmdlci1ob3Zlci1vcGFjaXR5OiAuODtcbiRoYW1idXJnZXItaG92ZXItdHJhbnNpdGlvbi1kdXJhdGlvbjogLjE1cztcbiRoYW1idXJnZXItaG92ZXItdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcblxuLy8gQ1NTIHZhcmlhYmxlc1xuLy8gVGhlc2UgY2FuIGJlIGFkanVzdGVkIHdpdGggbWVkaWEgcXVlcmllcyBmb3IgaW4tYmV0d2VlbiBicmVha3BvaW50c1xuOnJvb3Qge1xuICAvLyBEaW1lbnNpb25zLCBnYXBzIGFuZCBzcGFjaW5nc1xuICAtLWZvbnQtc2l6ZS1tYWluLWxldmVsLW1vYmlsZTogMTdweDtcbiAgLS1mb250LXNpemUtc3ViLW1lbnUtbW9iaWxlOiAxN3B4O1xuICAtLWZvbnQtd2VpZ2h0LW1haW4tbGV2ZWwtbW9iaWxlOiA2MDA7XG4gIC0tZm9udC13ZWlnaHQtc3ViLW1lbnUtbW9iaWxlOiA2MDA7XG4gIC0tZHJvcGRvd24tdG9nZ2xlLXNpemUtbW9iaWxlOiAxMnB4O1xuICAtLWhlaWdodC1uYXZpZ2F0aW9uLW1vYmlsZTogNzJweDtcbiAgLS1tYXJnaW4tbGVmdC1zdWItbWVudTogMnJlbTtcbiAgLS1wYWRkaW5nLW1haW4tbGV2ZWwtdmVydGljYWwtbW9iaWxlOiAxLjJyZW07XG4gIC0tcGFkZGluZy1zdWItbWVudS12ZXJ0aWNhbC1tb2JpbGU6IC44cmVtO1xuICAtLXBhZGRpbmctc3ViLW1lbnUtaG9yaXpvbnRhbC1tb2JpbGU6IDIuNXJlbTtcblxuICAvLyBDb2xvcnNcbiAgLS1jb2xvci1hY3RpdmUtbWFpbi1sZXZlbC1tb2JpbGU6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgLS1jb2xvci1iYWNrZ3JvdW5kLW5hdi1tb2JpbGUtaGVhZGVyOiB2YXIoLS1jb2xvci1tYWluKTtcbiAgLS1jb2xvci1iYWNrZ3JvdW5kLW5hdi1tb2JpbGUtaGVhZGVyLWFjdGl2ZTogdmFyKC0tY29sb3ItbWFpbik7XG4gIC0tY29sb3ItYmFja2dyb3VuZC1uYXYtbW9iaWxlLWxheWVyOiB2YXIoLS1jb2xvci1tYWluKTtcbiAgLS1jb2xvci1iYWNrZ3JvdW5kLW5hdi1tb2JpbGUtbGF5ZXItYWN0aXZlOiB2YXIoLS1jb2xvci1tYWluKTtcbiAgLS1jb2xvci1jdXJyZW50LW1vYmlsZTogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAtLWNvbG9yLWRyb3Bkb3duLXRvZ2dsZS1tb2JpbGU6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgLS1jb2xvci1oYW1idXJnZXItYWN0aXZlOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIC0tY29sb3ItaGFtYnVyZ2VyOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIC0tY29sb3ItbWFpbi1sZXZlbC1tb2JpbGU6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgLS1jb2xvci1zZXBhcmF0b3ItbmF2LW1vYmlsZTogcmdiKDI1NSAyNTUgMjU1IC8gLjEpO1xuICAtLWNvbG9yLXN1Yi1tZW51LW1vYmlsZTogcmdiKDI1NSAyNTUgMjU1IC8gLjgpO1xufVxuXG4vLyBJbml0IFRhc3R5IEhhbWJ1cmdlciBuYXZpZ2F0aW9uIHRvZ2dsZVxuQGltcG9ydCAnaGFtYnVyZ2Vycy9fc2Fzcy9oYW1idXJnZXJzL2hhbWJ1cmdlcnMnO1xuXG4vLyBJbml0IGhhbWJ1cmdlciBhbmltYXRpb25cbi8vIENob29zZSBmcm9tIGFuaW1hdGlvbnM6IGh0dHBzOi8vam9uc3VoLmNvbS9oYW1idXJnZXJzL1xuLmhhbWJ1cmdlciB7XG4gIC8vIFRoaXMgY29tZXMgZnJvbSBub2RlIG1vZHVsZSBzbyBjYW4ndCBkbyBhbnl0aGluZyBhYm91dCB0aGUgc2VsZWN0b3JcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lXG4gIEBleHRlbmQgLmhhbWJ1cmdlci0tY29sbGFwc2U7XG59XG5cbi8vIE5hdmlnYXRpb24gY29yZSBmdW5jdGlvbmFsaXR5XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR3aWR0aC1tYXgtbW9iaWxlKSB7XG4gIC8vIEZ1bmN0aW9uYWxpdHkgbmVlZHMgZGlzcGxheTogbm9uZSBoZXJlIGZvciB2aXN1YWwgcmVhc29uc1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgYTExeS9uby1kaXNwbGF5LW5vbmVcbiAgLmpzIC5tZW51LWl0ZW1zIHVsIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHdpZHRoLW1heC1tb2JpbGUpIHtcbiAgLmpzIHVsIC5zdWItbWVudS50b2dnbGVkLW9uIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG4vLyBNb2JpbGUgc3R5bGVzXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkd2lkdGgtbWF4LW1vYmlsZSAtIDFweCkge1xuXG4gIC8vIExldCdzIGVuc3VyZSBzaXRlLWhlYWRlciBsb2FkcyBwcm9wZXJseSBhbmQgZG9lc24ndCBsZWF2ZSBlbXB0eSBzcGFjZXNcbiAgLm5hdi1jb250YWluZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJhY2tncm91bmQtbmF2LW1vYmlsZS1oZWFkZXIpO1xuXG4gICAgQGlmICRhYnNvbHV0ZS1uYXZpZ2F0aW9uLW1vYmlsZSA9PSBmYWxzZSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB6LWluZGV4OiAyMjI7XG4gICAgfVxuXG4gICAgQGlmICRhYnNvbHV0ZS1uYXZpZ2F0aW9uLW1vYmlsZSA9PSB0cnVlIHtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cblxuICAvLyBHZW5lcmFsIG5hdmlnYXRpb24gcmVzZXRzIGZvciBtb2JpbGVcbiAgLnNpdGUtaGVhZGVyIHVsLFxuICAuc2l0ZS1oZWFkZXIgbGksXG4gIC5zaXRlLWhlYWRlciBhIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cblxuICAubWFpbi1uYXZpZ2F0aW9uLXdyYXBwZXIge1xuICAgIG9yZGVyOiA2O1xuICAgIHotaW5kZXg6IDk5OTtcbiAgfVxuXG4gIC8vIFVzZXJzIHRoYXQgZG9uJ3QgaGF2ZSBKYXZhc2NyaXB0IGVuYWJsZWRcbiAgLm5vLWpzIC5zaXRlLWhlYWRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmFja2dyb3VuZC1uYXYtbW9iaWxlLWhlYWRlcik7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgfVxuXG4gIC8vIERpc2FibGUgc2Nyb2xsIG9uIGh0bWwgYm9keSB3aGVuIG1lbnUgaXMgb3BlbmVkLlxuICAuZGlzYWJsZS1zY3JvbGwge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cblxuICAubmF2LXByaW1hcnkge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJhY2tncm91bmQtbmF2LW1vYmlsZS1sYXllcik7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gdmFyKC0taGVpZ2h0LW5hdmlnYXRpb24tbW9iaWxlKSk7XG4gICAgbWFyZ2luOiAwO1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuXG4gIC8vIFByZXZlbnQgZmxpY2tlcmluZyBiZWZvcmUgSlMgaGFzIGJlZW4gbG9hZGVkXG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBhMTF5L25vLWRpc3BsYXktbm9uZVxuICAubm8tanMgLm5hdi1wcmltYXJ5IHtcbiAgICAvLyBXZSBjYW4ndCBzdXBwb3J0IG5vbi1KUyB2ZXJzaW9ucyBhdCB0aGlzIHRpbWVcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLm1lbnUtaXRlbXMge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAycmVtIDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAvLyBNYWluIGxldmVsIG1vYmlsZSBuYXZpZ2F0aW9uIGxpbmtzXG4gIC5tZW51LWl0ZW0gYSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWNvbG9yLXNlcGFyYXRvci1uYXYtbW9iaWxlKTtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbi1sZXZlbC1tb2JpbGUpO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLW1haW4tbGV2ZWwtbW9iaWxlKTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWFpbi1sZXZlbC1tb2JpbGUpO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tcGFkZGluZy1tYWluLWxldmVsLXZlcnRpY2FsLW1vYmlsZSk7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1wYWRkaW5nLXN1Yi1tZW51LWhvcml6b250YWwtbW9iaWxlKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1wYWRkaW5nLXN1Yi1tZW51LWhvcml6b250YWwtbW9iaWxlKTtcbiAgICBwYWRkaW5nLXRvcDogdmFyKC0tcGFkZGluZy1tYWluLWxldmVsLXZlcnRpY2FsLW1vYmlsZSk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB6LWluZGV4OiAwO1xuICB9XG5cbiAgLy8gU3ViIG1lbnUgaXRlbXNcbiAgLnN1Yi1tZW51IGEge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1zdWItbWVudS1tb2JpbGUpO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXN1Yi1tZW51LW1vYmlsZSk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXN1Yi1tZW51LW1vYmlsZSk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhcigtLXBhZGRpbmctc3ViLW1lbnUtdmVydGljYWwtbW9iaWxlKTtcbiAgICBwYWRkaW5nLWxlZnQ6IGNhbGModmFyKC0tcGFkZGluZy1zdWItbWVudS1ob3Jpem9udGFsLW1vYmlsZSkgKyB2YXIoLS1tYXJnaW4tbGVmdC1zdWItbWVudSkpO1xuICAgIHBhZGRpbmctdG9wOiB2YXIoLS1wYWRkaW5nLXN1Yi1tZW51LXZlcnRpY2FsLW1vYmlsZSk7XG4gIH1cblxuICAuc3ViLW1lbnUge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxuXG4gIC5zdWItbWVudSAuc3ViLW1lbnUgYSB7XG4gICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIG1heC1saW5lLWxlbmd0aFxuICAgIHBhZGRpbmctbGVmdDogY2FsYyh2YXIoLS1wYWRkaW5nLXN1Yi1tZW51LWhvcml6b250YWwtbW9iaWxlKSArIHZhcigtLW1hcmdpbi1sZWZ0LXN1Yi1tZW51KSArIHZhcigtLW1hcmdpbi1sZWZ0LXN1Yi1tZW51KSk7XG4gIH1cblxuICAubWVudS1pdGVtIGE6aG92ZXIsXG4gIC5tZW51LWl0ZW0gYTpmb2N1cyB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWFjdGl2ZS1tYWluLWxldmVsLW1vYmlsZSk7XG4gIH1cblxuICAvLyBDdXJyZW50IG1lbnUgaXRlbSBjb2xvclxuICAubWVudS1pdGVtLmN1cnJlbnQtbWVudS1wYXJlbnQgPiBhLFxuICAubWVudS1pdGVtLmN1cnJlbnQtbWVudS1pdGVtID4gYSB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWN1cnJlbnQtbW9iaWxlKTtcbiAgfVxuXG4gIC8vIERyb3Bkb3duIHRvZ2dsZVxuICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXG4gICAgLy8gQWx0ZXJuYXRpdmUgKyBhbmQgbWludXMgZWZmZWN0XG4gICAgLy8gYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi8uLi9zdmcvbmF2LW9wZW4uc3ZnJyk7XG4gICAgLy8gYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgIC8vIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgLy8gYmFja2dyb3VuZC1zaXplOiB2YXIoLS1kcm9wZG93bi10b2dnbGUtc2l6ZS1tb2JpbGUpIHZhcigtLWRyb3Bkb3duLXRvZ2dsZS1zaXplLW1vYmlsZSk7XG4gICAgYm9yZGVyOiAwO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1kcm9wZG93bi10b2dnbGUtbW9iaWxlKTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbGVmdDogYXV0bztcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1heC1oZWlnaHQ6IDUycHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tcGFkZGluZy1zdWItbWVudS12ZXJ0aWNhbC1tb2JpbGUpO1xuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tcGFkZGluZy1zdWItbWVudS1ob3Jpem9udGFsLW1vYmlsZSk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKC0tcGFkZGluZy1zdWItbWVudS1ob3Jpem9udGFsLW1vYmlsZSk7XG4gICAgcGFkZGluZy10b3A6IHZhcigtLXBhZGRpbmctc3ViLW1lbnUtdmVydGljYWwtbW9iaWxlKTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiAycHg7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gICAgdHJhbnNpdGlvbjogYWxsICR0cmFuc2l0aW9uLWR1cmF0aW9uO1xuICAgIHotaW5kZXg6IDk5OTk7XG4gIH1cblxuICAuZHJvcGRvd24tdG9nZ2xlOmZvY3VzIHtcbiAgICB6LWluZGV4OiAxMDAwMDtcbiAgfVxuXG4gIC5zdWItbWVudSAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3Itc3ViLW1lbnUtbW9iaWxlKTtcbiAgfVxuXG4gIC8vIEhpZGUgZGVza3RvcCB0b2dnbGVzXG4gIC5kcm9wZG93bi10b2dnbGUgc3ZnIHtcbiAgICBoZWlnaHQ6IHZhcigtLWRyb3Bkb3duLXRvZ2dsZS1zaXplLW1vYmlsZSk7XG4gICAgd2lkdGg6IHZhcigtLWRyb3Bkb3duLXRvZ2dsZS1zaXplLW1vYmlsZSk7XG4gICAgLy8gRW5hYmxlIGZvciBhbHRlcm5hdGl2ZSArIGFuZCBtaW51cyBlZmZlY3RcbiAgICAvLyBOZWVkIHRvIHVzZSBkaXNwbGF5OiBub25lIGhlcmUgdG8gbWFrZSBzdXJlIHRoZXJlIGFyZSB2aXN1YWxseSBubyBkb3VibGUgdG9nZ2xlc1xuICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBhMTF5L25vLWRpc3BsYXktbm9uZVxuICAgIC8vIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAuZHJvcGRvd24tdG9nZ2xlLnRvZ2dsZWQtb24ge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXG4gICAgLy8gQWx0ZXJuYXRpdmUgKyBhbmQgbWludXMgZWZmZWN0XG4gICAgLy8gYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi8uLi9zdmcvbmF2LWNsb3NlLnN2ZycpO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTgwZGVnKTtcbiAgfVxuXG4gIC8vIE1vYmlsZSBuYXZpZ2F0aW9uIGNvcmUgZnVuY3Rpb25hbGl0eVxuICAuanMgLm5hdi1wcmltYXJ5IHtcbiAgICBsZWZ0OiAwO1xuICAgIC8vIEhpZGUgbW9iaWxlIG5hdmlnYXRpb24gYnkgZGVmYXVsdCB3aGlsZSBlbmFibGluZyB1c2Ugb2YgYW5pbWF0aW9uc1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcblxuICAgIC8vIERlZmF1bHQgcG9zaXRpb24sIHNvbWUgYnJvd3NlcnMgbmVlZCB0aGlzXG4gICAgdG9wOiB2YXIoLS1oZWlnaHQtbmF2aWdhdGlvbi1tb2JpbGUpO1xuICAgIHotaW5kZXg6IDU7XG5cbiAgICAubWVudS1pdGVtcyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1iYWNrZ3JvdW5kLW5hdi1tb2JpbGUtbGF5ZXIpO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG4gIH1cblxuICAuanMuanMtbmF2LWFjdGl2ZSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgIC5uYXYtcHJpbWFyeSB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgcG9pbnRlci1ldmVudHM6IGFsbDtcbiAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgfVxuXG4gICAgLm1lbnUtaXRlbXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmFja2dyb3VuZC1uYXYtbW9iaWxlLWxheWVyLWFjdGl2ZSk7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1cblxuICAgIC5uYXYtY29udGFpbmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJhY2tncm91bmQtbmF2LW1vYmlsZS1oZWFkZXItYWN0aXZlKTtcbiAgICB9XG5cbiAgICAvLyBpT1Mgb25seTogaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvQ1NTLy13ZWJraXQtdG91Y2gtY2FsbG91dFxuICAgIEBzdXBwb3J0cyAoLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lKSB7XG4gICAgICAubWFpbi1uYXZpZ2F0aW9uLXdyYXBwZXIge1xuICAgICAgICB3aWR0aDogdW5zZXQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gaU9TIG9ubHk6IGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0NTUy8td2Via2l0LXRvdWNoLWNhbGxvdXRcbiAgLy8gRml4IHdlaXJkIGlPUyBidWcgd2hlcmUgd3JhcHBlciB0YWtlcyB0b28gbXVjaCBzcGFjZSwgSXNzdWUgIzEzNFxuICBAc3VwcG9ydHMgKC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZSkge1xuICAgIC5qcyAubWFpbi1uYXZpZ2F0aW9uLXdyYXBwZXIge1xuICAgICAgd2lkdGg6ICRoYW1idXJnZXItbGF5ZXItd2lkdGg7XG4gICAgfVxuICB9XG5cbiAgQGlmICRhYnNvbHV0ZS1uYXZpZ2F0aW9uLW1vYmlsZSA9PSB0cnVlIHtcbiAgICAuc2l0ZSB7XG4gICAgICBwYWRkaW5nLXRvcDogdmFyKC0taGVpZ2h0LW5hdmlnYXRpb24tbW9iaWxlKTtcbiAgICB9XG4gIH1cblxuICBAaWYgJG5hdi1zbGlkZS1hbmltYXRpb24gPT0gdHJ1ZSB7XG4gICAgLy8gU2xpZGUgYW5pbWF0aW9uIGZyb20gcmlnaHRcbiAgICAubmF2LXByaW1hcnkge1xuICAgICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAyNTBtcyBlYXNlLWluLW91dDtcbiAgICAgIHdpZHRoOiAxMDB2dztcbiAgICB9XG5cbiAgICAuanMuanMtbmF2LWFjdGl2ZSAubmF2LXByaW1hcnkge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICB9XG5cbiAgICAuc2l0ZS1tYWluIHtcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAyNTBtcyBlYXNlLWluLW91dDtcbiAgICB9XG5cbiAgICAvLyBQdXNoIHNpdGUgY29udGVudCB0byB0aGUgbGVmdFxuICAgIC5qcy5qcy1uYXYtYWN0aXZlIC5zaXRlLW1haW4ge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMzEwcHgsIDAsIDApO1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgLy8gRmFkZSBhbmltYXRpb25cbiAgICAubWVudS1pdGVtcyB7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgIH1cblxuICAgIC5uYXYtcHJpbWFyeSB7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgdHJhbnNpdGlvbjogYWxsICR0cmFuc2l0aW9uLWR1cmF0aW9uO1xuICAgICAgd2lkdGg6IDEwMHZ3O1xuICAgIH1cblxuICAgIC5qcy5qcy1uYXYtYWN0aXZlIC5tZW51LWl0ZW1zLFxuICAgIC5qcy5qcy1uYXYtYWN0aXZlIC5uYXYtcHJpbWFyeSB7XG4gICAgICBvcGFjaXR5OiAxO1xuXG4gICAgICAvLyBpT1Mgb25seTogaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvQ1NTLy13ZWJraXQtdG91Y2gtY2FsbG91dFxuICAgICAgQHN1cHBvcnRzICgtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmUpIHtcbiAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHZhbHVlLW5vLXZlbmRvci1wcmVmaXhcbiAgICAgICAgaGVpZ2h0OiAtd2Via2l0LWZpbGwtYXZhaWxhYmxlO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBIYW1idXJnZXIgbWVudSBpY29uIHNwZWNpZmljXG4uaGFtYnVyZ2VyLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyLFxuLmhhbWJ1cmdlci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlLFxuLmhhbWJ1cmdlci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1oYW1idXJnZXItYWN0aXZlKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWhhbWJ1cmdlci1hY3RpdmUpO1xufVxuXG4ubmF2LXRvZ2dsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1oYW1idXJnZXIpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1zZW1pYm9sZCk7XG4gIG1hcmdpbjogMDtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIHBhZGRpbmc6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0b3A6IDA7XG4gIC8vIGRvaXVzZS1kaXNhYmxlXG4gIHVzZXItc2VsZWN0OiBub25lO1xuICB6LWluZGV4OiAxMDAwMDA7XG5cbiAgLy8gTW9kZXJuIHN0dWZmICg6OmFmdGVyIGlzIGZpcnN0IGxpbmUsIHdpdGhvdXQgOjphZnRlciBpcyBmaXJzdClcbiAgJjpub3QoLnRvZ2dsZWQtb24pIC5oYW1idXJnZXItaW5uZXIge1xuICAgIHRyYW5zaXRpb246IHdpZHRoICR0cmFuc2l0aW9uLWR1cmF0aW9uO1xuICAgIHdpZHRoOiAxOHB4O1xuICB9XG5cbiAgJi5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcixcbiAgJjpob3ZlciAuaGFtYnVyZ2VyLWlubmVyLFxuICAmOmZvY3VzIC5oYW1idXJnZXItaW5uZXIge1xuICAgIHdpZHRoOiAkaGFtYnVyZ2VyLWxheWVyLXdpZHRoO1xuICB9XG5cbiAgc3BhbiB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWhhbWJ1cmdlcik7XG4gICAgZm9udC1zaXplOiAxLjJlbTtcbiAgfVxuXG4gICYuaXMtYWN0aXZlIHNwYW4ge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1oYW1idXJnZXItYWN0aXZlKTtcbiAgfVxuXG4gICY6aG92ZXIsXG4gICY6YWN0aXZlIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItaGFtYnVyZ2VyKTtcblxuICAgIHNwYW4ge1xuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWhhbWJ1cmdlcik7XG4gICAgfVxuICB9XG5cbiAgLy8gQWx0ZXJuYXRpdmUgZm9jdXMgZm9yIG1vYmlsZSBuYXZcbiAgJjpmb2N1cyB7XG4gICAgc3BhbiBzcGFuIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWhhbWJ1cmdlcik7XG4gICAgfVxuXG4gICAgc3BhbiBzcGFuOjpiZWZvcmUsXG4gICAgc3BhbiBzcGFuOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1oYW1idXJnZXIpO1xuICAgIH1cbiAgfVxuXG4gIC8vIFdlIGFscmVhZHkgaGF2ZSBhcmlhLWxhYmVsIGZvciBidXR0b25cbiAgLy8gQnV0IHdlIHdhbnQgdG8gc2hvdyBuYXYtdG9nZ2xlIHZpc3VhbGx5IGZvciBzZWVpbmcgdXNlcnNcbiAgLy8gU28gd2UnbGwgYWRkIGhhcy12aXNpYmxlLWxhYmVsIHRvIG5hdi10b2dnbGUgaW4gaGVhZGVyLnBocFxuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgYTExeS9uby1kaXNwbGF5LW5vbmVcbiAgJjpub3QoLmhhcy12aXNpYmxlLWxhYmVsKSAubmF2LXRvZ2dsZS1sYWJlbCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC8vIFNlcGFyYXRlIGFjdGl2ZSBjb2xvcnMgZm9yIG9wZW5lZCBzdGF0ZVxuICAmLmlzLWFjdGl2ZSB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWhhbWJ1cmdlci1hY3RpdmUpO1xuICB9XG5cbiAgJi5pcy1hY3RpdmUgLmhhbWJ1cmdlci1ib3gge1xuICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItaGFtYnVyZ2VyLWFjdGl2ZSk7XG4gICAgfVxuXG4gICAgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItaGFtYnVyZ2VyLWFjdGl2ZSk7XG4gICAgfVxuICB9XG5cbiAgJi5pcy1hY3RpdmUgLmZvY3VzLFxuICAmLmlzLWFjdGl2ZSBzcGFuOmZvY3VzIHtcbiAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWhhbWJ1cmdlci1hY3RpdmUpO1xuICAgIH1cblxuICAgIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWhhbWJ1cmdlci1hY3RpdmUpO1xuICAgIH1cbiAgfVxuXG4gICYuaXMtYWN0aXZlIHNwYW46Zm9jdXMsXG4gICYuaXMtYWN0aXZlIHNwYW46aG92ZXIsXG4gICYuaXMtYWN0aXZlIHNwYW46YWN0aXZlIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItaGFtYnVyZ2VyLWFjdGl2ZSk7XG5cbiAgICBzcGFuIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1oYW1idXJnZXItYWN0aXZlKTtcbiAgICB9XG4gIH1cblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHdpZHRoLW1heC1tb2JpbGUpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6ICR3aWR0aC1tYXgtbW9iaWxlIC0gMXB4KSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAmLmhhcy12aXNpYmxlLWxhYmVsIHtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgIH1cblxuICAgICYuaGFzLXZpc2libGUtbGFiZWwgLm5hdi10b2dnbGUtbGFiZWwge1xuICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbmF2LXRvZ2dsZS1sYWJlbCk7XG5cbiAgICAgIC8vIEhpZGUgb24gc21hbGxlc3QgcGhvbmVzXG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNDEwcHgpIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNDExcHgpIHtcbiAgICAgICYuaGFzLXZpc2libGUtbGFiZWwge1xuICAgICAgICBnYXA6IDEuNXJlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcbi8qIVxuICogSGFtYnVyZ2Vyc1xuICogQGRlc2NyaXB0aW9uIFRhc3R5IENTUy1hbmltYXRlZCBoYW1idXJnZXJzXG4gKiBAYXV0aG9yIEpvbmF0aGFuIFN1aCBAam9uc3VoXG4gKiBAc2l0ZSBodHRwczovL2pvbnN1aC5jb20vaGFtYnVyZ2Vyc1xuICogQGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL2pvbnN1aC9oYW1idXJnZXJzXG4gKi9cblxuLy8gU2V0dGluZ3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4kaGFtYnVyZ2VyLXBhZGRpbmcteCAgICAgICAgICAgOiAxNXB4ICFkZWZhdWx0O1xuJGhhbWJ1cmdlci1wYWRkaW5nLXkgICAgICAgICAgIDogMTVweCAhZGVmYXVsdDtcbiRoYW1idXJnZXItbGF5ZXItd2lkdGggICAgICAgICA6IDQwcHggIWRlZmF1bHQ7XG4kaGFtYnVyZ2VyLWxheWVyLWhlaWdodCAgICAgICAgOiA0cHggIWRlZmF1bHQ7XG4kaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgICAgICAgOiA2cHggIWRlZmF1bHQ7XG4kaGFtYnVyZ2VyLWxheWVyLWNvbG9yICAgICAgICAgOiAjMDAwICFkZWZhdWx0O1xuJGhhbWJ1cmdlci1sYXllci1ib3JkZXItcmFkaXVzIDogNHB4ICFkZWZhdWx0O1xuJGhhbWJ1cmdlci1ob3Zlci1vcGFjaXR5ICAgICAgIDogMC43ICFkZWZhdWx0O1xuJGhhbWJ1cmdlci1hY3RpdmUtbGF5ZXItY29sb3IgIDogJGhhbWJ1cmdlci1sYXllci1jb2xvciAhZGVmYXVsdDtcbiRoYW1idXJnZXItYWN0aXZlLWhvdmVyLW9wYWNpdHk6ICRoYW1idXJnZXItaG92ZXItb3BhY2l0eSAhZGVmYXVsdDtcblxuLy8gVG8gdXNlIENTUyBmaWx0ZXJzIGFzIHRoZSBob3ZlciBlZmZlY3QgaW5zdGVhZCBvZiBvcGFjaXR5LFxuLy8gc2V0ICRoYW1idXJnZXItaG92ZXItdXNlLWZpbHRlciBhcyB0cnVlIGFuZFxuLy8gY2hhbmdlIHRoZSB2YWx1ZSBvZiAkaGFtYnVyZ2VyLWhvdmVyLWZpbHRlciBhY2NvcmRpbmdseS5cbiRoYW1idXJnZXItaG92ZXItdXNlLWZpbHRlciAgIDogZmFsc2UgIWRlZmF1bHQ7XG4kaGFtYnVyZ2VyLWhvdmVyLWZpbHRlciAgICAgICA6IG9wYWNpdHkoNTAlKSAhZGVmYXVsdDtcbiRoYW1idXJnZXItYWN0aXZlLWhvdmVyLWZpbHRlcjogJGhhbWJ1cmdlci1ob3Zlci1maWx0ZXIgIWRlZmF1bHQ7XG5cbi8vIFR5cGVzIChSZW1vdmUgb3IgY29tbWVudCBvdXQgd2hhdCB5b3UgZG9u4oCZdCBuZWVkKVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiRoYW1idXJnZXItdHlwZXM6IChcbiAgM2R4LFxuICAzZHgtcixcbiAgM2R5LFxuICAzZHktcixcbiAgM2R4eSxcbiAgM2R4eS1yLFxuICBhcnJvdyxcbiAgYXJyb3ctcixcbiAgYXJyb3dhbHQsXG4gIGFycm93YWx0LXIsXG4gIGFycm93dHVybixcbiAgYXJyb3d0dXJuLXIsXG4gIGJvcmluZyxcbiAgY29sbGFwc2UsXG4gIGNvbGxhcHNlLXIsXG4gIGVsYXN0aWMsXG4gIGVsYXN0aWMtcixcbiAgZW1waGF0aWMsXG4gIGVtcGhhdGljLXIsXG4gIG1pbnVzLFxuICBzbGlkZXIsXG4gIHNsaWRlci1yLFxuICBzcGluLFxuICBzcGluLXIsXG4gIHNwcmluZyxcbiAgc3ByaW5nLXIsXG4gIHN0YW5kLFxuICBzdGFuZC1yLFxuICBzcXVlZXplLFxuICB2b3J0ZXgsXG4gIHZvcnRleC1yXG4pICFkZWZhdWx0O1xuXG4vLyBCYXNlIEhhbWJ1cmdlciAoV2UgbmVlZCB0aGlzKVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbkBpbXBvcnQgXCJiYXNlXCI7XG5cbi8vIEhhbWJ1cmdlciB0eXBlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbkBpbXBvcnQgXCJ0eXBlcy8zZHhcIjtcbkBpbXBvcnQgXCJ0eXBlcy8zZHgtclwiO1xuQGltcG9ydCBcInR5cGVzLzNkeVwiO1xuQGltcG9ydCBcInR5cGVzLzNkeS1yXCI7XG5AaW1wb3J0IFwidHlwZXMvM2R4eVwiO1xuQGltcG9ydCBcInR5cGVzLzNkeHktclwiO1xuQGltcG9ydCBcInR5cGVzL2Fycm93XCI7XG5AaW1wb3J0IFwidHlwZXMvYXJyb3ctclwiO1xuQGltcG9ydCBcInR5cGVzL2Fycm93YWx0XCI7XG5AaW1wb3J0IFwidHlwZXMvYXJyb3dhbHQtclwiO1xuQGltcG9ydCBcInR5cGVzL2Fycm93dHVyblwiO1xuQGltcG9ydCBcInR5cGVzL2Fycm93dHVybi1yXCI7XG5AaW1wb3J0IFwidHlwZXMvYm9yaW5nXCI7XG5AaW1wb3J0IFwidHlwZXMvY29sbGFwc2VcIjtcbkBpbXBvcnQgXCJ0eXBlcy9jb2xsYXBzZS1yXCI7XG5AaW1wb3J0IFwidHlwZXMvZWxhc3RpY1wiO1xuQGltcG9ydCBcInR5cGVzL2VsYXN0aWMtclwiO1xuQGltcG9ydCBcInR5cGVzL2VtcGhhdGljXCI7XG5AaW1wb3J0IFwidHlwZXMvZW1waGF0aWMtclwiO1xuQGltcG9ydCBcInR5cGVzL21pbnVzXCI7XG5AaW1wb3J0IFwidHlwZXMvc2xpZGVyXCI7XG5AaW1wb3J0IFwidHlwZXMvc2xpZGVyLXJcIjtcbkBpbXBvcnQgXCJ0eXBlcy9zcGluXCI7XG5AaW1wb3J0IFwidHlwZXMvc3Bpbi1yXCI7XG5AaW1wb3J0IFwidHlwZXMvc3ByaW5nXCI7XG5AaW1wb3J0IFwidHlwZXMvc3ByaW5nLXJcIjtcbkBpbXBvcnQgXCJ0eXBlcy9zdGFuZFwiO1xuQGltcG9ydCBcInR5cGVzL3N0YW5kLXJcIjtcbkBpbXBvcnQgXCJ0eXBlcy9zcXVlZXplXCI7XG5AaW1wb3J0IFwidHlwZXMvdm9ydGV4XCI7XG5AaW1wb3J0IFwidHlwZXMvdm9ydGV4LXJcIjtcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIENvb2tpbmcgdXAgYWRkaXRpb25hbCB0eXBlczpcbi8vXG4vLyBUaGUgU2FzcyBmb3IgZWFjaCBoYW1idXJnZXIgdHlwZSBzaG91bGQgYmUgbmVzdGVkXG4vLyBpbnNpZGUgYW4gQGlmIGRpcmVjdGl2ZSB0byBjaGVjayB3aGV0aGVyIG9yIG5vdFxuLy8gaXQgZXhpc3RzIGluICRoYW1idXJnZXItdHlwZXMgc28gb25seSB0aGUgQ1NTIGZvclxuLy8gaW5jbHVkZWQgdHlwZXMgYXJlIGdlbmVyYXRlZC5cbi8vXG4vLyBlLmcuIGhhbWJ1cmdlcnMvdHlwZXMvX25ldy10eXBlLnNjc3Ncbi8vXG4vLyBAaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgbmV3LXR5cGUpIHtcbi8vICAgLmhhbWJ1cmdlci0tbmV3LXR5cGUge1xuLy8gICAgIC4uLlxuLy8gICB9XG4vLyB9XG4iLCJAdXNlIFwic2FzczptYXRoXCI7XG5cbi8vIEhhbWJ1cmdlclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi5oYW1idXJnZXIge1xuICBwYWRkaW5nOiAkaGFtYnVyZ2VyLXBhZGRpbmcteSAkaGFtYnVyZ2VyLXBhZGRpbmcteDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eSwgZmlsdGVyO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjE1cztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcblxuICAvLyBOb3JtYWxpemUgKDxidXR0b24+KVxuICBmb250OiBpbmhlcml0O1xuICBjb2xvcjogaW5oZXJpdDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG4gIG1hcmdpbjogMDtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG5cbiAgJjpob3ZlciB7XG4gICAgQGlmICRoYW1idXJnZXItaG92ZXItdXNlLWZpbHRlciA9PSB0cnVlIHtcbiAgICAgIGZpbHRlcjogJGhhbWJ1cmdlci1ob3Zlci1maWx0ZXI7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIG9wYWNpdHk6ICRoYW1idXJnZXItaG92ZXItb3BhY2l0eTtcbiAgICB9XG4gIH1cblxuICAmLmlzLWFjdGl2ZSB7XG4gICAgJjpob3ZlciB7XG4gICAgICBAaWYgJGhhbWJ1cmdlci1ob3Zlci11c2UtZmlsdGVyID09IHRydWUge1xuICAgICAgICBmaWx0ZXI6ICRoYW1idXJnZXItYWN0aXZlLWhvdmVyLWZpbHRlcjtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgb3BhY2l0eTogJGhhbWJ1cmdlci1hY3RpdmUtaG92ZXItb3BhY2l0eTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuaGFtYnVyZ2VyLWlubmVyLFxuICAgIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSxcbiAgICAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaGFtYnVyZ2VyLWFjdGl2ZS1sYXllci1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLmhhbWJ1cmdlci1ib3gge1xuICB3aWR0aDogJGhhbWJ1cmdlci1sYXllci13aWR0aDtcbiAgaGVpZ2h0OiAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCAqIDMgKyAkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKiAyO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmhhbWJ1cmdlci1pbm5lciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0b3A6IDUwJTtcbiAgbWFyZ2luLXRvcDogbWF0aC5kaXYoJGhhbWJ1cmdlci1sYXllci1oZWlnaHQsIC0yKTtcblxuICAmLFxuICAmOjpiZWZvcmUsXG4gICY6OmFmdGVyIHtcbiAgICB3aWR0aDogJGhhbWJ1cmdlci1sYXllci13aWR0aDtcbiAgICBoZWlnaHQ6ICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRoYW1idXJnZXItbGF5ZXItY29sb3I7XG4gICAgYm9yZGVyLXJhZGl1czogJGhhbWJ1cmdlci1sYXllci1ib3JkZXItcmFkaXVzO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4xNXM7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2U7XG4gIH1cblxuICAmOjpiZWZvcmUsXG4gICY6OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgJjo6YmVmb3JlIHtcbiAgICB0b3A6ICgkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKyAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCkgKiAtMTtcbiAgfVxuXG4gICY6OmFmdGVyIHtcbiAgICBib3R0b206ICgkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKyAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCkgKiAtMTtcbiAgfVxufVxuIiwiQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIDNkeCkge1xuICAvKlxuICAgKiAzRFhcbiAgICovXG4gIC5oYW1idXJnZXItLTNkeCB7XG4gICAgLmhhbWJ1cmdlci1ib3gge1xuICAgICAgcGVyc3BlY3RpdmU6ICRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAyO1xuICAgIH1cblxuICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKSxcbiAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3IgMHMgMC4xcyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSk7XG5cbiAgICAgICY6OmJlZm9yZSxcbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDBzIDAuMXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVkoMTgwZGVnKTtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgKyAkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcsIDApIHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAoJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgKyAkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcpICogLTEsIDApIHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgM2R4LXIpIHtcbiAgLypcbiAgICogM0RYIFJldmVyc2VcbiAgICovXG4gIC5oYW1idXJnZXItLTNkeC1yIHtcbiAgICAuaGFtYnVyZ2VyLWJveCB7XG4gICAgICBwZXJzcGVjdGl2ZTogJGhhbWJ1cmdlci1sYXllci13aWR0aCAqIDI7XG4gICAgfVxuXG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpLFxuICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvciAwcyAwLjFzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKTtcblxuICAgICAgJjo6YmVmb3JlLFxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMHMgMC4xcyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlWSgtMTgwZGVnKTtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgKyAkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcsIDApIHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAoJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgKyAkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcpICogLTEsIDApIHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgM2R5KSB7XG4gIC8qXG4gICAqIDNEWVxuICAgKi9cbiAgLmhhbWJ1cmdlci0tM2R5IHtcbiAgICAuaGFtYnVyZ2VyLWJveCB7XG4gICAgICBwZXJzcGVjdGl2ZTogJGhhbWJ1cmdlci1sYXllci13aWR0aCAqIDI7XG4gICAgfVxuXG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpLFxuICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvciAwcyAwLjFzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKTtcblxuICAgICAgJjo6YmVmb3JlLFxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMHMgMC4xcyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlWCgtMTgwZGVnKTtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgKyAkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcsIDApIHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAoJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgKyAkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcpICogLTEsIDApIHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgM2R5LXIpIHtcbiAgLypcbiAgICogM0RZIFJldmVyc2VcbiAgICovXG4gIC5oYW1idXJnZXItLTNkeS1yIHtcbiAgICAuaGFtYnVyZ2VyLWJveCB7XG4gICAgICBwZXJzcGVjdGl2ZTogJGhhbWJ1cmdlci1sYXllci13aWR0aCAqIDI7XG4gICAgfVxuXG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpLFxuICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvciAwcyAwLjFzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKTtcblxuICAgICAgJjo6YmVmb3JlLFxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMHMgMC4xcyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlWCgxODBkZWcpO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCArICRoYW1idXJnZXItbGF5ZXItc3BhY2luZywgMCkgcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsICgkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCArICRoYW1idXJnZXItbGF5ZXItc3BhY2luZykgKiAtMSwgMCkgcm90YXRlKC00NWRlZyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCAzZHh5KSB7XG4gIC8qXG4gICAqIDNEWFlcbiAgICovXG4gIC5oYW1idXJnZXItLTNkeHkge1xuICAgIC5oYW1idXJnZXItYm94IHtcbiAgICAgIHBlcnNwZWN0aXZlOiAkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogMjtcbiAgICB9XG5cbiAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSksXG4gICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yIDBzIDAuMXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpO1xuXG4gICAgICAmOjpiZWZvcmUsXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwcyAwLjFzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVYKDE4MGRlZykgcm90YXRlWSgxODBkZWcpO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCArICRoYW1idXJnZXItbGF5ZXItc3BhY2luZywgMCkgcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsICgkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCArICRoYW1idXJnZXItbGF5ZXItc3BhY2luZykgKiAtMSwgMCkgcm90YXRlKC00NWRlZyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCAzZHh5LXIpIHtcbiAgLypcbiAgICogM0RYWSBSZXZlcnNlXG4gICAqL1xuICAuaGFtYnVyZ2VyLS0zZHh5LXIge1xuICAgIC5oYW1idXJnZXItYm94IHtcbiAgICAgIHBlcnNwZWN0aXZlOiAkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogMjtcbiAgICB9XG5cbiAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSksXG4gICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yIDBzIDAuMXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpO1xuXG4gICAgICAmOjpiZWZvcmUsXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwcyAwLjFzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVYKDE4MGRlZykgcm90YXRlWSgxODBkZWcpIHJvdGF0ZVooLTE4MGRlZyk7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0ICsgJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nLCAwKSByb3RhdGUoNDVkZWcpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgKCRoYW1idXJnZXItbGF5ZXItaGVpZ2h0ICsgJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nKSAqIC0xLCAwKSByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIGFycm93KSB7XG4gIC8qXG4gICAqIEFycm93XG4gICAqL1xuICAuaGFtYnVyZ2VyLS1hcnJvdy5pcy1hY3RpdmUge1xuICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogLTAuMiwgMCwgMCkgcm90YXRlKC00NWRlZykgc2NhbGUoMC43LCAxKTtcbiAgICAgIH1cblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKCRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAtMC4yLCAwLCAwKSByb3RhdGUoNDVkZWcpIHNjYWxlKDAuNywgMSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgYXJyb3ctcikge1xuICAvKlxuICAgKiBBcnJvdyBSaWdodFxuICAgKi9cbiAgLmhhbWJ1cmdlci0tYXJyb3ctci5pcy1hY3RpdmUge1xuICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogMC4yLCAwLCAwKSByb3RhdGUoNDVkZWcpIHNjYWxlKDAuNywgMSk7XG4gICAgICB9XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogMC4yLCAwLCAwKSByb3RhdGUoLTQ1ZGVnKSBzY2FsZSgwLjcsIDEpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIGFycm93YWx0KSB7XG4gIC8qXG4gICAqIEFycm93IEFsdFxuICAgKi9cbiAgLmhhbWJ1cmdlci0tYXJyb3dhbHQge1xuICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMXMgMC4xcyBlYXNlLFxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4xcyBjdWJpYy1iZXppZXIoMC4xNjUsIDAuODQsIDAuNDQsIDEpO1xuICAgICAgfVxuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHRyYW5zaXRpb246IGJvdHRvbSAwLjFzIDAuMXMgZWFzZSxcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMXMgY3ViaWMtYmV6aWVyKDAuMTY1LCAwLjg0LCAwLjQ0LCAxKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogLTAuMiwgJGhhbWJ1cmdlci1sYXllci13aWR0aCAqIC0wLjI1LCAwKSByb3RhdGUoLTQ1ZGVnKSBzY2FsZSgwLjcsIDEpO1xuICAgICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjFzIGVhc2UsXG4gICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMXMgMC4xcyBjdWJpYy1iZXppZXIoMC44OTUsIDAuMDMsIDAuNjg1LCAwLjIyKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogLTAuMiwgJGhhbWJ1cmdlci1sYXllci13aWR0aCAqIDAuMjUsIDApIHJvdGF0ZSg0NWRlZykgc2NhbGUoMC43LCAxKTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBib3R0b20gMC4xcyBlYXNlLFxuICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjFzIDAuMXMgY3ViaWMtYmV6aWVyKDAuODk1LCAwLjAzLCAwLjY4NSwgMC4yMik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCBhcnJvd2FsdC1yKSB7XG4gIC8qXG4gICAqIEFycm93IEFsdCBSaWdodFxuICAgKi9cbiAgLmhhbWJ1cmdlci0tYXJyb3dhbHQtciB7XG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4xcyAwLjFzIGVhc2UsXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjFzIGN1YmljLWJlemllcigwLjE2NSwgMC44NCwgMC40NCwgMSk7XG4gICAgICB9XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdHJhbnNpdGlvbjogYm90dG9tIDAuMXMgMC4xcyBlYXNlLFxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4xcyBjdWJpYy1iZXppZXIoMC4xNjUsIDAuODQsIDAuNDQsIDEpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKCRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAwLjIsICRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAtMC4yNSwgMCkgcm90YXRlKDQ1ZGVnKSBzY2FsZSgwLjcsIDEpO1xuICAgICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjFzIGVhc2UsXG4gICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMXMgMC4xcyBjdWJpYy1iZXppZXIoMC44OTUsIDAuMDMsIDAuNjg1LCAwLjIyKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogMC4yLCAkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogMC4yNSwgMCkgcm90YXRlKC00NWRlZykgc2NhbGUoMC43LCAxKTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBib3R0b20gMC4xcyBlYXNlLFxuICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjFzIDAuMXMgY3ViaWMtYmV6aWVyKDAuODk1LCAwLjAzLCAwLjY4NSwgMC4yMik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCBhcnJvd3R1cm4pIHtcbiAgLypcbiAgICogQXJyb3cgVHVyblxuICAgKi9cbiAgLmhhbWJ1cmdlci0tYXJyb3d0dXJuLmlzLWFjdGl2ZSB7XG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTgwZGVnKTtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCg4cHgsIDAsIDApIHJvdGF0ZSg0NWRlZykgc2NhbGUoMC43LCAxKTtcbiAgICAgIH1cblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDhweCwgMCwgMCkgcm90YXRlKC00NWRlZykgc2NhbGUoMC43LCAxKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCBhcnJvd3R1cm4tcikge1xuICAvKlxuICAgKiBBcnJvdyBUdXJuIFJpZ2h0XG4gICAqL1xuICAuaGFtYnVyZ2VyLS1hcnJvd3R1cm4tci5pcy1hY3RpdmUge1xuICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTE4MGRlZyk7XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLThweCwgMCwgMCkgcm90YXRlKC00NWRlZykgc2NhbGUoMC43LCAxKTtcbiAgICAgIH1cblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC04cHgsIDAsIDApIHJvdGF0ZSg0NWRlZykgc2NhbGUoMC43LCAxKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCBib3JpbmcpIHtcbiAgLypcbiAgICogQm9yaW5nXG4gICAqL1xuICAuaGFtYnVyZ2VyLS1ib3Jpbmcge1xuICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgJixcbiAgICAgICY6OmJlZm9yZSxcbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCBjb2xsYXBzZSkge1xuICAvKlxuICAgKiBDb2xsYXBzZVxuICAgKi9cbiAgLmhhbWJ1cmdlci0tY29sbGFwc2Uge1xuICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgdG9wOiBhdXRvO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4xM3M7XG4gICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjEzcztcbiAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICB0b3A6ICgkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKiAyICsgJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgKiAyKSAqIC0xO1xuICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4ycyAwLjJzIGN1YmljLWJlemllcigwLjMzMzMzLCAwLjY2NjY3LCAwLjY2NjY3LCAxKSxcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eSAwLjFzIGxpbmVhcjtcbiAgICAgIH1cblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMTJzIDAuMnMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAuNjY2NjcsIDAuNjY2NjcsIDEpLFxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4xM3MgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgKCRoYW1idXJnZXItbGF5ZXItc3BhY2luZyArICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0KSAqIC0xLCAwKSByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC4yMnM7XG4gICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMnMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAsIDAuNjY2NjcsIDAuMzMzMzMpLFxuICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHkgMC4xcyAwLjIycyBsaW5lYXI7XG4gICAgICAgIH1cblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjFzIDAuMTZzIGN1YmljLWJlemllcigwLjMzMzMzLCAwLCAwLjY2NjY3LCAwLjMzMzMzKSxcbiAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4xM3MgMC4yNXMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCBjb2xsYXBzZS1yKSB7XG4gIC8qXG4gICAqIENvbGxhcHNlIFJldmVyc2VcbiAgICovXG4gIC5oYW1idXJnZXItLWNvbGxhcHNlLXIge1xuICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgdG9wOiBhdXRvO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4xM3M7XG4gICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjEzcztcbiAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICB0b3A6ICgkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKiAyICsgJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgKiAyKSAqIC0xO1xuICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4ycyAwLjJzIGN1YmljLWJlemllcigwLjMzMzMzLCAwLjY2NjY3LCAwLjY2NjY3LCAxKSxcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eSAwLjFzIGxpbmVhcjtcbiAgICAgIH1cblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMTJzIDAuMnMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAuNjY2NjcsIDAuNjY2NjcsIDEpLFxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4xM3MgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgKCRoYW1idXJnZXItbGF5ZXItc3BhY2luZyArICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0KSAqIC0xLCAwKSByb3RhdGUoNDVkZWcpO1xuICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjIycztcbiAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4ycyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMCwgMC42NjY2NywgMC4zMzMzMyksXG4gICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eSAwLjFzIDAuMjJzIGxpbmVhcjtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4xcyAwLjE2cyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMCwgMC42NjY2NywgMC4zMzMzMyksXG4gICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMTNzIDAuMjVzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAdXNlIFwic2FzczptYXRoXCI7XG5cbkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCBlbGFzdGljKSB7XG4gIC8qXG4gICAqIEVsYXN0aWNcbiAgICovXG4gIC5oYW1idXJnZXItLWVsYXN0aWMge1xuICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgdG9wOiBtYXRoLmRpdigkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCwgMik7XG4gICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjI3NXM7XG4gICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNjgsIC0wLjU1LCAwLjI2NSwgMS41NSk7XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIHRvcDogJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgKyAkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmc7XG4gICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xMjVzIDAuMjc1cyBlYXNlO1xuICAgICAgfVxuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHRvcDogKCRoYW1idXJnZXItbGF5ZXItaGVpZ2h0ICogMikgKyAoJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nICogMik7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjI3NXMgY3ViaWMtYmV6aWVyKDAuNjgsIC0wLjU1LCAwLjI2NSwgMS41NSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICAgICR5LW9mZnNldDogJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nICsgJGhhbWJ1cmdlci1sYXllci1oZWlnaHQ7XG5cbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAkeS1vZmZzZXQsIDApIHJvdGF0ZSgxMzVkZWcpO1xuICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjA3NXM7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwcztcbiAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgJHktb2Zmc2V0ICogLTIsIDApIHJvdGF0ZSgtMjcwZGVnKTtcbiAgICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjA3NXM7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkB1c2UgXCJzYXNzOm1hdGhcIjtcblxuQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIGVsYXN0aWMtcikge1xuICAvKlxuICAgKiBFbGFzdGljIFJldmVyc2VcbiAgICovXG4gIC5oYW1idXJnZXItLWVsYXN0aWMtciB7XG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICB0b3A6IG1hdGguZGl2KCRoYW1idXJnZXItbGF5ZXItaGVpZ2h0LCAyKTtcbiAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMjc1cztcbiAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC42OCwgLTAuNTUsIDAuMjY1LCAxLjU1KTtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgdG9wOiAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCArICRoYW1idXJnZXItbGF5ZXItc3BhY2luZztcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjEyNXMgMC4yNzVzIGVhc2U7XG4gICAgICB9XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdG9wOiAoJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgKiAyKSArICgkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKiAyKTtcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMjc1cyBjdWJpYy1iZXppZXIoMC42OCwgLTAuNTUsIDAuMjY1LCAxLjU1KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgICAgJHktb2Zmc2V0OiAkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKyAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodDtcblxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsICR5LW9mZnNldCwgMCkgcm90YXRlKC0xMzVkZWcpO1xuICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjA3NXM7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwcztcbiAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgJHktb2Zmc2V0ICogLTIsIDApIHJvdGF0ZSgyNzBkZWcpO1xuICAgICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMDc1cztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIGVtcGhhdGljKSB7XG4gIC8qXG4gICAqIEVtcGhhdGljXG4gICAqL1xuICAuaGFtYnVyZ2VyLS1lbXBoYXRpYyB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjEyNXMgMC4xNzVzIGVhc2UtaW47XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjEyNXMgY3ViaWMtYmV6aWVyKDAuNiwgMC4wNCwgMC45OCwgMC4zMzUpLFxuICAgICAgICAgICAgICAgICAgICB0b3AgMC4wNXMgMC4xMjVzIGxpbmVhcixcbiAgICAgICAgICAgICAgICAgICAgbGVmdCAwLjEyNXMgMC4xNzVzIGVhc2UtaW47XG4gICAgICB9XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdG9wOiAoJGhhbWJ1cmdlci1sYXllci1oZWlnaHQpICsgKCRoYW1idXJnZXItbGF5ZXItc3BhY2luZyk7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xMjVzIGN1YmljLWJlemllcigwLjYsIDAuMDQsIDAuOTgsIDAuMzM1KSxcbiAgICAgICAgICAgICAgICAgICAgdG9wIDAuMDVzIDAuMTI1cyBsaW5lYXIsXG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0IDAuMTI1cyAwLjE3NXMgZWFzZS1pbjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIGxlZnQ6ICRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAtMjtcbiAgICAgICAgICB0b3A6ICRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAtMjtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKCRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAyLCAkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogMiwgMCkgcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBsZWZ0IDAuMTI1cyBlYXNlLW91dCxcbiAgICAgICAgICAgICAgICAgICAgICB0b3AgMC4wNXMgMC4xMjVzIGxpbmVhcixcbiAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4xMjVzIDAuMTc1cyBjdWJpYy1iZXppZXIoMC4wNzUsIDAuODIsIDAuMTY1LCAxKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICByaWdodDogJGhhbWJ1cmdlci1sYXllci13aWR0aCAqIC0yO1xuICAgICAgICAgIHRvcDogJGhhbWJ1cmdlci1sYXllci13aWR0aCAqIC0yO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoJGhhbWJ1cmdlci1sYXllci13aWR0aCAqIC0yLCAkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogMiwgMCkgcm90YXRlKC00NWRlZyk7XG4gICAgICAgICAgdHJhbnNpdGlvbjogcmlnaHQgMC4xMjVzIGVhc2Utb3V0LFxuICAgICAgICAgICAgICAgICAgICAgIHRvcCAwLjA1cyAwLjEyNXMgbGluZWFyLFxuICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjEyNXMgMC4xNzVzIGN1YmljLWJlemllcigwLjA3NSwgMC44MiwgMC4xNjUsIDEpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgZW1waGF0aWMtcikge1xuICAvKlxuICAgKiBFbXBoYXRpYyBSZXZlcnNlXG4gICAqL1xuICAuaGFtYnVyZ2VyLS1lbXBoYXRpYy1yIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMTI1cyAwLjE3NXMgZWFzZS1pbjtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTI1cyBjdWJpYy1iZXppZXIoMC42LCAwLjA0LCAwLjk4LCAwLjMzNSksXG4gICAgICAgICAgICAgICAgICAgIHRvcCAwLjA1cyAwLjEyNXMgbGluZWFyLFxuICAgICAgICAgICAgICAgICAgICBsZWZ0IDAuMTI1cyAwLjE3NXMgZWFzZS1pbjtcbiAgICAgIH1cblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICB0b3A6ICgkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCkgKyAoJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nKTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjEyNXMgY3ViaWMtYmV6aWVyKDAuNiwgMC4wNCwgMC45OCwgMC4zMzUpLFxuICAgICAgICAgICAgICAgICAgICB0b3AgMC4wNXMgMC4xMjVzIGxpbmVhcixcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQgMC4xMjVzIDAuMTc1cyBlYXNlLWluO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwcztcbiAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgbGVmdDogJGhhbWJ1cmdlci1sYXllci13aWR0aCAqIC0yO1xuICAgICAgICAgIHRvcDogJGhhbWJ1cmdlci1sYXllci13aWR0aCAqIDI7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogMiwgJGhhbWJ1cmdlci1sYXllci13aWR0aCAqIC0yLCAwKSByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBsZWZ0IDAuMTI1cyBlYXNlLW91dCxcbiAgICAgICAgICAgICAgICAgICAgICB0b3AgMC4wNXMgMC4xMjVzIGxpbmVhcixcbiAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4xMjVzIDAuMTc1cyBjdWJpYy1iZXppZXIoMC4wNzUsIDAuODIsIDAuMTY1LCAxKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICByaWdodDogJGhhbWJ1cmdlci1sYXllci13aWR0aCAqIC0yO1xuICAgICAgICAgIHRvcDogJGhhbWJ1cmdlci1sYXllci13aWR0aCAqIDI7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogLTIsICRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAtMiwgMCkgcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiByaWdodCAwLjEyNXMgZWFzZS1vdXQsXG4gICAgICAgICAgICAgICAgICAgICAgdG9wIDAuMDVzIDAuMTI1cyBsaW5lYXIsXG4gICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMTI1cyAwLjE3NXMgY3ViaWMtYmV6aWVyKDAuMDc1LCAwLjgyLCAwLjE2NSwgMSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCBtaW51cykge1xuICAvKlxuICAgKiBNaW51c1xuICAgKi9cbiAgLmhhbWJ1cmdlci0tbWludXMge1xuICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgJjo6YmVmb3JlLFxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICB0cmFuc2l0aW9uOiBib3R0b20gMC4wOHMgMHMgZWFzZS1vdXQsXG4gICAgICAgICAgICAgICAgICAgIHRvcCAwLjA4cyAwcyBlYXNlLW91dCxcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eSAwcyBsaW5lYXI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICAgICY6OmJlZm9yZSxcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgdHJhbnNpdGlvbjogYm90dG9tIDAuMDhzIGVhc2Utb3V0LFxuICAgICAgICAgICAgICAgICAgICAgIHRvcCAwLjA4cyBlYXNlLW91dCxcbiAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5IDBzIDAuMDhzIGxpbmVhcjtcbiAgICAgICAgfVxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkB1c2UgXCJzYXNzOm1hdGhcIjtcblxuQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIHNsaWRlcikge1xuICAvKlxuICAgKiBTbGlkZXJcbiAgICovXG4gIC5oYW1idXJnZXItLXNsaWRlciB7XG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICB0b3A6IG1hdGguZGl2KCRoYW1idXJnZXItbGF5ZXItaGVpZ2h0LCAyKTtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgdG9wOiAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCArICRoYW1idXJnZXItbGF5ZXItc3BhY2luZztcbiAgICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZTtcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4xNXM7XG4gICAgICB9XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdG9wOiAoJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgKiAyKSArICgkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKiAyKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgICAgJHktb2Zmc2V0OiAkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKyAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodDtcblxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsICR5LW9mZnNldCwgMCkgcm90YXRlKDQ1ZGVnKTtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZykgdHJhbnNsYXRlM2QobWF0aC5kaXYoJGhhbWJ1cmdlci1sYXllci13aWR0aCwgLTcpLCAkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKiAtMSwgMCk7XG4gICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsICR5LW9mZnNldCAqIC0yLCAwKSByb3RhdGUoLTkwZGVnKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQHVzZSBcInNhc3M6bWF0aFwiO1xuXG5AaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgc2xpZGVyLXIpIHtcbiAgLypcbiAgICogU2xpZGVyIFJldmVyc2VcbiAgICovXG4gIC5oYW1idXJnZXItLXNsaWRlci1yIHtcbiAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgIHRvcDogbWF0aC5kaXYoJGhhbWJ1cmdlci1sYXllci1oZWlnaHQsIDIpO1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICB0b3A6ICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0ICsgJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nO1xuICAgICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlO1xuICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjE1cztcbiAgICAgIH1cblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICB0b3A6ICgkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCAqIDIpICsgKCRoYW1idXJnZXItbGF5ZXItc3BhY2luZyAqIDIpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgICAkeS1vZmZzZXQ6ICRoYW1idXJnZXItbGF5ZXItc3BhY2luZyArICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0O1xuXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgJHktb2Zmc2V0LCAwKSByb3RhdGUoLTQ1ZGVnKTtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKSB0cmFuc2xhdGUzZChtYXRoLmRpdigkaGFtYnVyZ2VyLWxheWVyLXdpZHRoLCA3KSwgJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nICogLTEsIDApO1xuICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAkeS1vZmZzZXQgKiAtMiwgMCkgcm90YXRlKDkwZGVnKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIHNwaW4pIHtcbiAgLypcbiAgICogU3BpblxuICAgKi9cbiAgLmhhbWJ1cmdlci0tc3BpbiB7XG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjIycztcbiAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMXMgMC4yNXMgZWFzZS1pbixcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eSAwLjFzIGVhc2UtaW47XG4gICAgICB9XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdHJhbnNpdGlvbjogYm90dG9tIDAuMXMgMC4yNXMgZWFzZS1pbixcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMjJzIGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgyMjVkZWcpO1xuICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjEycztcbiAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMXMgZWFzZS1vdXQsXG4gICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eSAwLjFzIDAuMTJzIGVhc2Utb3V0O1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgICAgICAgIHRyYW5zaXRpb246IGJvdHRvbSAwLjFzIGVhc2Utb3V0LFxuICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjIycyAwLjEycyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIHNwaW4tcikge1xuICAvKlxuICAgKiBTcGluIFJldmVyc2VcbiAgICovXG4gIC5oYW1idXJnZXItLXNwaW4tciB7XG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjIycztcbiAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMXMgMC4yNXMgZWFzZS1pbixcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eSAwLjFzIGVhc2UtaW47XG4gICAgICB9XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdHJhbnNpdGlvbjogYm90dG9tIDAuMXMgMC4yNXMgZWFzZS1pbixcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMjJzIGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMjI1ZGVnKTtcbiAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC4xMnM7XG4gICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjFzIGVhc2Utb3V0LFxuICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHkgMC4xcyAwLjEycyBlYXNlLW91dDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgICAgICAgIHRyYW5zaXRpb246IGJvdHRvbSAwLjFzIGVhc2Utb3V0LFxuICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjIycyAwLjEycyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQHVzZSBcInNhc3M6bWF0aFwiO1xuXG5AaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgc3ByaW5nKSB7XG4gIC8qXG4gICAqIFNwcmluZ1xuICAgKi9cbiAgLmhhbWJ1cmdlci0tc3ByaW5nIHtcbiAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgIHRvcDogbWF0aC5kaXYoJGhhbWJ1cmdlci1sYXllci1oZWlnaHQsIDIpO1xuICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwcyAwLjEzcyBsaW5lYXI7XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIHRvcDogJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgKyAkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmc7XG4gICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjFzIDAuMnMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAuNjY2NjcsIDAuNjY2NjcsIDEpLFxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4xM3MgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG4gICAgICB9XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdG9wOiAoJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgKiAyKSArICgkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKiAyKTtcbiAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMnMgMC4ycyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMC42NjY2NywgMC42NjY2NywgMSksXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjEzcyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC4yMnM7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMXMgMC4xNXMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAsIDAuNjY2NjcsIDAuMzMzMzMpLFxuICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjEzcyAwLjIycyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsICRoYW1idXJnZXItbGF5ZXItc3BhY2luZyArICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0LCAwKSByb3RhdGUoNDVkZWcpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4ycyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMCwgMC42NjY2NywgMC4zMzMzMyksXG4gICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMTNzIDAuMjJzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nICsgJGhhbWJ1cmdlci1sYXllci1oZWlnaHQsIDApIHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgc3ByaW5nLXIpIHtcbiAgLypcbiAgICogU3ByaW5nIFJldmVyc2VcbiAgICovXG4gIC5oYW1idXJnZXItLXNwcmluZy1yIHtcbiAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgIHRvcDogYXV0bztcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMTNzO1xuICAgICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdG9wOiAoJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nICogMiArICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0ICogMikgKiAtMTtcbiAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMnMgMC4ycyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMC42NjY2NywgMC42NjY2NywgMSksXG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHkgMHMgbGluZWFyO1xuICAgICAgfVxuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4xcyAwLjJzIGN1YmljLWJlemllcigwLjMzMzMzLCAwLjY2NjY3LCAwLjY2NjY3LCAxKSxcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMTNzIGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsICgkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKyAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCkgKiAtMSwgMCkgcm90YXRlKC00NWRlZyk7XG4gICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMjJzO1xuICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjJzIGN1YmljLWJlemllcigwLjMzMzMzLCAwLCAwLjY2NjY3LCAwLjMzMzMzKSxcbiAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5IDBzIDAuMjJzIGxpbmVhcjtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4xcyAwLjE1cyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMCwgMC42NjY2NywgMC4zMzMzMyksXG4gICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMTNzIDAuMjJzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgc3RhbmQpIHtcbiAgLypcbiAgICogU3RhbmRcbiAgICovXG4gIC5oYW1idXJnZXItLXN0YW5kIHtcbiAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjA3NXMgMC4xNXMgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSksXG4gICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yIDBzIDAuMDc1cyBsaW5lYXI7XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjA3NXMgMC4wNzVzIGVhc2UtaW4sXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjA3NXMgMHMgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG4gICAgICB9XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdHJhbnNpdGlvbjogYm90dG9tIDAuMDc1cyAwLjA3NXMgZWFzZS1pbixcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMDc1cyAwcyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuXG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjA3NXMgMHMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSksXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3IgMHMgMC4xNXMgbGluZWFyO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gICAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMDc1cyAwLjFzIGVhc2Utb3V0LFxuICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjA3NXMgMC4xNXMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBib3R0b20gMC4wNzVzIDAuMXMgZWFzZS1vdXQsXG4gICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMDc1cyAwLjE1cyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIHN0YW5kLXIpIHtcbiAgLypcbiAgICogU3RhbmQgUmV2ZXJzZVxuICAgKi9cbiAgLmhhbWJ1cmdlci0tc3RhbmQtciB7XG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4wNzVzIDAuMTVzIGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpLFxuICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvciAwcyAwLjA3NXMgbGluZWFyO1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4wNzVzIDAuMDc1cyBlYXNlLWluLFxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4wNzVzIDBzIGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xuICAgICAgfVxuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHRyYW5zaXRpb246IGJvdHRvbSAwLjA3NXMgMC4wNzVzIGVhc2UtaW4sXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjA3NXMgMHMgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMDc1cyAwcyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKSxcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvciAwcyAwLjE1cyBsaW5lYXI7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4wNzVzIDAuMXMgZWFzZS1vdXQsXG4gICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMDc1cyAwLjE1cyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgICAgICAgIHRyYW5zaXRpb246IGJvdHRvbSAwLjA3NXMgMC4xcyBlYXNlLW91dCxcbiAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4wNzVzIDAuMTVzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgc3F1ZWV6ZSkge1xuICAvKlxuICAgKiBTcXVlZXplXG4gICAqL1xuICAuaGFtYnVyZ2VyLS1zcXVlZXplIHtcbiAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMDc1cztcbiAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMDc1cyAwLjEycyBlYXNlLFxuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5IDAuMDc1cyBlYXNlO1xuICAgICAgfVxuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHRyYW5zaXRpb246IGJvdHRvbSAwLjA3NXMgMC4xMnMgZWFzZSxcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMDc1cyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjEycztcbiAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMDc1cyBlYXNlLFxuICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHkgMC4wNzVzIDAuMTJzIGVhc2U7XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgICAgICAgdHJhbnNpdGlvbjogYm90dG9tIDAuMDc1cyBlYXNlLFxuICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjA3NXMgMC4xMnMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCB2b3J0ZXgpIHtcbiAgLypcbiAgICogVm9ydGV4XG4gICAqL1xuICAuaGFtYnVyZ2VyLS12b3J0ZXgge1xuICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4ycztcbiAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xOSwgMSwgMC4yMiwgMSk7XG5cbiAgICAgICY6OmJlZm9yZSxcbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XG4gICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMXM7XG4gICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gICAgICB9XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRvcCwgb3BhY2l0eTtcbiAgICAgIH1cblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBib3R0b20sIHRyYW5zZm9ybTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNzY1ZGVnKTtcbiAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKTtcblxuICAgICAgICAmOjpiZWZvcmUsXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwcztcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIHZvcnRleC1yKSB7XG4gIC8qXG4gICAqIFZvcnRleCBSZXZlcnNlXG4gICAqL1xuICAuaGFtYnVyZ2VyLS12b3J0ZXgtciB7XG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjJzO1xuICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKTtcblxuICAgICAgJjo6YmVmb3JlLFxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcbiAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC4xcztcbiAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgICAgIH1cblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdG9wLCBvcGFjaXR5O1xuICAgICAgfVxuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IGJvdHRvbSwgdHJhbnNmb3JtO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNzY1ZGVnKTtcbiAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKTtcblxuICAgICAgICAmOjpiZWZvcmUsXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwcztcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIFRoaXMgZmlsZSBpcyBtZWFudCBmb3IgZ2VuZXJhbCBzdHlsZXMgYW5kIGNvbnRhaW5lcnNcbi8vIHRoYXQgYXBwbHkgZXZlcnl3aGVyZSB0aHJvdWdob3V0IHRoZSB3ZWJzaXRlLiBBZGQgbW9yZVxuLy8gYWx3YXlzIHJlcGVhdGluZyBlbGVtZW50cyByaWdodCBiZWxvdy5cblxuLy8gRGVmYXVsdCBzdHJ1Y3R1cmFsIGVsZW1lbnRcbi5ibG9jayB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBtYXJnaW46IDAgYXV0bztcbiAgbWF4LXdpZHRoOiAkd2lkdGgtbWF4LWxheW91dDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4vLyBCbG9jayBwYWRkaW5nIGV4Y2VwdGlvbnNcbi8vIFRoaXMgY2xhc3MgaXMgdXNlZnVsIHdoZW4gd2UgaGF2ZSBtdWx0aXBsZSBibG9ja3Mgc3RhY2tlZCB3aXRoIHNhbWUgYmFja2dyb3VuZC1jb2xvclxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW1heC1jbGFzcywgc2VsZWN0b3ItbWF4LXNwZWNpZmljaXR5LCBuby1kZXNjZW5kaW5nLXNwZWNpZmljaXR5XG4uYmxvY2suaGFzLXVuaWZpZWQtcGFkZGluZy1pZi1zdGFja2VkICsgLmJsb2NrLmhhcy11bmlmaWVkLXBhZGRpbmctaWYtc3RhY2tlZCAuY29udGFpbmVyIHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIHBhZGRpbmctdG9wOiAwO1xufVxuXG4vLyBEZWZhdWx0IHNoYWRlIG9uIHRvcCBvZiBibG9ja3Ncbi5zaGFkZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJhY2tncm91bmQtc2hhZGUpO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIG9wYWNpdHk6IC4zNTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiAwO1xufVxuXG4vLyBHbG9iYWwgbGluayBoZWxwZXJcbi8vIFRoaXMgaXMgdXNlZnVsIGluIHNlcnZpY2VzIC10eXBlIG9mIGFyZWFzIHdoZXJlIHRoZSB3aG9sZSBibG9jayBpcyBhIGxpbmtcbi8vIFJlbWVtYmVyIHRvIGRlZmluZSBhcmlhLWxhYmVsIG9yIHNjcmVlbi1yZWFkZXItdGV4dCBmb3IgYWNjZXNzaWJpbGl0eVxuLmdsb2JhbC1saW5rIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICBsZWZ0OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDM7XG59XG5cbi8vIFNpdGUgd3JhcHBlclxuLnNpdGUge1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLy8gQ29udGFpbmVyc1xuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWRlc2NlbmRpbmctc3BlY2lmaWNpdHlcbi5jb250YWluZXIge1xuICBtYXJnaW46IDAgYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWF4LXdpZHRoOiAkd2lkdGgtZ3JpZC1iYXNlO1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tcGFkZGluZy1jb250YWluZXItdmVydGljYWwpO1xuICBwYWRkaW5nLWxlZnQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgcGFkZGluZy10b3A6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLXZlcnRpY2FsKTtcblxuICAvLyBJZiBiYXNlIGdyaWQgaXMgbGFyZ2VyIHRoYW4gTWFjYm9vayBBaXIgc2NyZWVuXG4gIEBpZiAkd2lkdGgtZ3JpZC1iYXNlID4gJGNvbnRhaW5lci1tYWNib29rLWFpciB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRjb250YWluZXItaXBhZC1sYW5kc2NhcGUpIGFuZCAobWF4LXdpZHRoOiAkY29udGFpbmVyLW1hY2Jvb2stYWlyICsgNi40cmVtKSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwtbGFyZ2UpO1xuICAgICAgcGFkZGluZy1yaWdodDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbC1sYXJnZSk7XG4gICAgfVxuICB9XG59XG5cbi8vIENsZWFyIGJsb2NrIGNvbnRhaW5lcnMgYnkgZGVmYXVsdFxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWRlc2NlbmRpbmctc3BlY2lmaWNpdHlcbi5zaXRlLW1haW4gLmNvbnRhaW5lciB7XG4gIGNsZWFyOiBib3RoO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4vLyBNZXRhIGFjdGlvbnNcbi5lbnRyeS1mb290ZXIge1xuICBjbGVhcjogYm90aDtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBtYXJnaW4tdG9wOiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci12ZXJ0aWNhbCk7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi8vIEJldHRlciBlZGl0IGxpbmtcbi5lZGl0LWxpbmsge1xuICBjbGVhcjogYm90aDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIG1hcmdpbi10b3A6IDJyZW07XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWluLXdpZHRoOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB0cmFuc2l0aW9uOiBhbGwgJHRyYW5zaXRpb24tZHVyYXRpb247XG4gIHdpZHRoOiAxMDAlO1xuXG4gIGEge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgICBib3JkZXI6IDJweCBkYXNoZWQgdmFyKC0tY29sb3ItbGluay1lZGl0LWJvcmRlcik7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWxpbmstZWRpdC10ZXh0KTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMnJlbTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIHRyYW5zaXRpb246IGFsbCAkdHJhbnNpdGlvbi1kdXJhdGlvbjtcbiAgfVxuXG4gICY6Zm9jdXMsXG4gIGE6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWxpbmstZWRpdC1iYWNrZ3JvdW5kLWhvdmVyKTtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItbGluay1lZGl0LXRleHQtaG92ZXIpO1xuICB9XG59XG5cbi8vIEhpZGUvc2hvdyBoZWxwZXJzXG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgYTExeS9uby1kaXNwbGF5LW5vbmVcbi5oaWRlLW9uLWRlc2t0b3Age1xuICBAbWVkaWEgKG1pbi13aWR0aDogJGNvbnRhaW5lci1tb2JpbGUpIHtcbiAgICAvLyBGb3JjZWQgdG8gdXNlIGltcG9ydGFudCBoZXJlLCBiZWNhdXNlIG1ha2VzIG5vIHNlbnNlIHRvIHdyaXRlIHRvbyBzcGVjaWZpYyBzZWxlY3RvcnMgaGVyZVxuICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLy8gRm9yY2VkIHRvIHVzZSBpbXBvcnRhbnQgaGVyZSwgYmVjYXVzZSBtYWtlcyBubyBzZW5zZSB0byB3cml0ZSB0b28gc3BlY2lmaWMgc2VsZWN0b3JzIGhlcmVcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBhMTF5L25vLWRpc3BsYXktbm9uZVxuLmhpZGUtb24tbW9iaWxlIHtcbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRjb250YWluZXItbW9iaWxlKSB7XG4gICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLyBPbmx5IGZ1bmN0aW9uIG9mIHRoZXNlIGlzIHRvIGZvcmNlIGhpZGUgY29udGVudCBiYXNlZCBvbiB0aGUgdmlld1xuLy8gRm9yY2VkIHRvIHVzZSBpbXBvcnRhbnQgaGVyZSwgYmVjYXVzZSBtYWtlcyBubyBzZW5zZSB0byB3cml0ZSB0b28gc3BlY2lmaWMgc2VsZWN0b3JzIGhlcmVcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBhMTF5L25vLWRpc3BsYXktbm9uZVxuLmhpZGUtb24tbW9iaWxlLW5hdi12aWV3IHtcbiAgQG1lZGlhIChtYXgtd2lkdGg6ICR3aWR0aC1tYXgtbW9iaWxlKSB7XG4gICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLyBGb3JjZWQgdG8gdXNlIGltcG9ydGFudCBoZXJlLCBiZWNhdXNlIG1ha2VzIG5vIHNlbnNlIHRvIHdyaXRlIHRvbyBzcGVjaWZpYyBzZWxlY3RvcnMgaGVyZVxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGExMXkvbm8tZGlzcGxheS1ub25lXG4uaGlkZS1vbi1kZXNrdG9wLW5hdi12aWV3IHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICR3aWR0aC1tYXgtbW9iaWxlKSB7XG4gICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLyBGb3JjZWQgdG8gdXNlIGltcG9ydGFudCBoZXJlLCBiZWNhdXNlIG1ha2VzIG5vIHNlbnNlIHRvIHdyaXRlIHRvbyBzcGVjaWZpYyBzZWxlY3RvcnMgaGVyZVxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGExMXkvbm8tZGlzcGxheS1ub25lXG4uaGlkZS1jb21wbGV0ZWx5IHtcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG4iLCIvLyBMYXlvdXQgd2lkdGhzXG4kd2lkdGgtbWF4LWxheW91dDogMTAwJTtcbiR3aWR0aC1tYXgtYXJ0aWNsZTogODAwcHg7XG4kd2lkdGgtZ3JpZC1iYXNlOiAxNDQwcHg7XG5cbi8vIFRoaXMgaXMgdGhlIGJyZWFrcG9pbnQgbmF2aWdhdGlvbiB0cmFuc2Zvcm1zIGludG8gbW9iaWxlIG1lbnVcbi8vIE5CISBJTVBPUlRBTlQhIFJlbWVtYmVyIHRvIGNoYW5nZSBpbiBqcy9zcmMvbmF2aWdhdGlvbi5qczpcbi8vIGNvbnN0IHJlc3BvbnNpdmVuYXYgPSA5NjA7XG4vLyBJZiB0aGVzZSBhcmUgbm90IHRoZSBzYW1lLCBuYXZpZ2F0aW9uIHRvZ2dsZXMgd2lsbCBub3Qgd29yayBwcm9wZXJseS5cbiR3aWR0aC1tYXgtbW9iaWxlOiA5NjBweDtcblxuLy8gQnJlYWtwb2ludHMgZm9yIGNvbnRhaW5lcnNcbiRjb250YWluZXItZGVza3RvcDogMTIwMHB4O1xuJGNvbnRhaW5lci1pcGFkOiA3NzBweDtcbiRjb250YWluZXItaXBhZC1sYW5kc2NhcGU6IDEwMjRweDtcbiRjb250YWluZXItbWFjYm9vay1haXI6IDE0NDBweDtcbiRjb250YWluZXItbW9iaWxlOiA0ODBweDtcblxuLy8gR3V0ZW5iZXJnIHdpZHRoc1xuJHdpZHRoLXdpZGU6IDEyMDBweDtcbiR3aWR0aC1mdWxsOiAxMDAlO1xuIiwiLy8gSXQgaXMgYWNjZXB0YWJsZSB0byBoaWRlIHRoaW5ncyBmb3IgcHJpbnRcbi8vIHN0eWxlbGludC1kaXNhYmxlIGExMXkvbm8tZGlzcGxheS1ub25lXG5AbWVkaWEgcHJpbnQge1xuICAubmF2LWNvbnRhaW5lcixcbiAgLnNpdGUtZm9vdGVyLFxuICAuc2lkZS1uYXYge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAvLyBBZGQgY29sb3JzLCBkaXNhYmxlIHNwYWNpbmdzIG9yIGltYWdlcyxcbiAgLy8gZXRjLiBkZWZpbmUgaGVyZVxuICAvLyAqIHtcbiAgLy8gICBjb2xvcjogdmFyKC0tY29sb3ItYmxhY2spICFpbXBvcnRhbnQ7XG4gIC8vIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLXByb3BlcnR5LXVuaXQtYWxsb3dlZC1saXN0LCBuby1kZXNjZW5kaW5nLXNwZWNpZmljaXR5XG4vLyBFdmVyeXRoaW5nIGFyb3VuZCBmb250cywgZm9udCBzaXplIGRlZmluaXRpb25zIGFuZCB0eXBlc2V0XG4vLyBwcmVzZXRzLiBObyBtb2R1bGFyIHNjYWxlLCBidXQgYSBzb3BoaXN0aWNhdGVkIHZpZXdwb3J0XG4vLyBiYXNlZCByZXNwb25zaXZlIG1peGluIGNhbiBiZSBmb3VuZCBpbiBfaGVscGVycy5zY3NzXG5cbi8vIFNldCByb290IHNpemUgZm9yIHJlbXNcbjpyb290IHtcbiAgZm9udC1zaXplOiA2Mi41JTtcbn1cblxuLy8gU3RhcnQgdHlwb2dyYXBoeSBzZXR0aW5nc1xuYm9keSB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1wYXJhZ3JhcGgpO1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1wYXJhZ3JhcGgpO1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1kZWZhdWx0KTtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1wYXJhZ3JhcGhzKTtcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHZhbHVlLWtleXdvcmQtY2FzZVxuICB0ZXh0LXJlbmRlcmluZzogZ2VvbWV0cmljUHJlY2lzaW9uO1xufVxuXG4vLyBEZWZhdWx0c1xucCxcbmRkLFxuZHQsXG5maWdjYXB0aW9uLFxuaHIsXG5zbWFsbCxcbm9sLFxudWwsXG5saSxcbmJsb2NrcXVvdGUsXG5rYmQsXG5wcmUsXG5zYW1wLFxuY29kZSxcbnRoLFxudGQsXG50YWJsZSxcbnRyLFxuJWRlZmF1bHQge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1wYXJhZ3JhcGhzKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXBhcmFncmFwaHMpO1xufVxuXG4vLyBIZWFkaW5nIGRlZmF1bHRzXG5oMSxcbmgyLFxuaDMsXG5oNCxcbmg1LFxuaDYge1xuICBjb2xvcjogdmFyKC0tY29sb3ItaGVhZGluZyk7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWhlYWRpbmcpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtaGVhZGluZ3MpO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1tYXJnaW4tYmV0d2Vlbi1wYXJhZ3JhcGhzKTtcbiAgbWFyZ2luLXRvcDogdmFyKC0tbWFyZ2luLWJldHdlZW4tcGFyYWdyYXBocyk7XG59XG5cbmgyLFxuaDMsXG5oNCxcbmg1LFxuaDYge1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtaGVhZGluZ3MpO1xufVxuXG4vLyBEZWZpbmUgaGVhZGluZyBzY2FsZXNcbi8vIEN1cnJlbnQ6IFBlcmZlY3QgZm91cnRoOiBodHRwczovL3R5cGUtc2NhbGUuY29tL1xuaDEge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oMSk7XG59XG5cbmgyIHtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaDIpO1xufVxuXG5oMyB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWgzKTtcbn1cblxuaDQge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oNCk7XG59XG5cbmg1IHtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaDUpO1xufVxuXG5oNiB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWg2KTtcbn1cblxuaDE6Zmlyc3QtY2hpbGQsXG5oMjpmaXJzdC1jaGlsZCxcbmgzOmZpcnN0LWNoaWxkLFxuaDQ6Zmlyc3QtY2hpbGQsXG5oNTpmaXJzdC1jaGlsZCxcbmg2OmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cblxuLy8gQm9sZFxuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcbn1cblxuLy8gSXRhbGljXG5lbSxcbmkge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbi8vIERlZmF1bHQgcGFyYWdyYXBoc1xucCB7XG4gIG1hcmdpbi1ib3R0b206IDIuOXJlbTtcbiAgbWFyZ2luLXRvcDogMi45cmVtO1xufVxuXG5wOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuIiwiLy8gVGhlIHZlcnkgdG9wIG9mIHRoZSBzaXRlLCBlbGVtZW50IHRoYXQgdXN1YWxseSBpbmNsdWRlc1xuLy8gdGhlIHNpdGUgbmF2aWdhdGlvbiBhbmQgc2VhcmNoIGZvciBleGFtcGxlLlxuLnNpdGUtaGVhZGVyIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXgtd2lkdGg6ICR3aWR0aC1ncmlkLWJhc2U7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoLS1wYWRkaW5nLXNpdGUtaGVhZGVyLXZlcnRpY2FsKTtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gIHBhZGRpbmctdG9wOiB2YXIoLS1wYWRkaW5nLXNpdGUtaGVhZGVyLXZlcnRpY2FsKTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxNTtcbn1cblxuLnNpdGUtdGl0bGUge1xuICBsaW5lLWhlaWdodDogMDtcbiAgbWFyZ2luOiAwO1xuXG4gIGEge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxufVxuXG4vLyBOYXYgY29udGFpbmVyIHZpc2liaWxpdHkgZml4XG4ubmF2LWNvbnRhaW5lciB7XG4gIHotaW5kZXg6IDEwO1xufVxuXG4vLyBEZWxldGUgdGhlIGZvbGxvd2luZyBzdHlsZXMgd2hlbiB5b3Ugc3RhcnQhIChtYXJrZWQgd2l0aCAtLWNsaXAtLSlcbi8vIC0tY2xpcC0tXG4uc2l0ZS1tYWluIHtcbiAgZGlzcGxheTogZ3JpZDtcbn1cblxuLnNpdGUtbWFpbjo6YWZ0ZXIge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmVcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHZhcigtLWNvbG9yLWJsYWNrKSwgdmFyKC0tY29sb3Itc2NpZW5jZS1ibHVlKSksIGxpbmVhci1ncmFkaWVudCh2YXIoLS1jb2xvci1ibGFjayksIHZhcigtLWNvbG9yLXNjaWVuY2UtYmx1ZSkpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDAsIDEwMCUgMDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiAzcHggMTAwJTtcbiAgYm9yZGVyLWJvdHRvbTogM3B4IHNvbGlkIHZhcigtLWNvbG9yLXNjaWVuY2UtYmx1ZSk7XG4gIGJvcmRlci10b3A6IDNweCBzb2xpZCB2YXIoLS1jb2xvci1ibGFjayk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gIGNvbnRlbnQ6ICdCdWlsZCB5b3VyIHdlYnNpdGUgaGVyZSEgKFJlbW92ZSB0aGlzIGJpdCBpbiBzYXNzL2xheW91dC9fc2l0ZS1oZWFkZXIuc2NzcyknO1xuICBkaXNwbGF5OiBmbGV4O1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmVcbiAgZm9udC1zaXplOiBjbGFtcCguNXJlbSwgMy40dncsIDNyZW0pO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtc2VtaWJvbGQpO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tcGFkZGluZy1jb250YWluZXItdmVydGljYWwpO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tdG9wOiBjYWxjKHZhcigtLXBhZGRpbmctY29udGFpbmVyLXZlcnRpY2FsKSAqIDIpO1xuICBtYXgtd2lkdGg6ICR3aWR0aC1ncmlkLWJhc2UgLSA0MHB4O1xuICBvcGFjaXR5OiAuNztcbiAgb3JkZXI6IC0xO1xuICBwYWRkaW5nOiA0cmVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDRyZW0pO1xufVxuLy8gLS1jbGlwLS1cbiIsIi8vIFRoZSB2ZXJ5IGJvdHRvbSBvZiB0aGUgc2l0ZS4gVXN1YWxseSBjb250YWlucyBzdXBwb3J0aW5nXG4vLyBvciBzZWNvbmRhcnkgbmF2aWdhdGlvbiwgc29jaWFsIG1lZGlhIGljb25zLCBjb250YWN0IGRldGFpbHNcbi8vIGFuZCBzdWNoLlxuXG4vLyBQbGVhc2Ugbm90ZTogVGhlc2UgYXJlIG1vc3RseSBmb3IgZGVtbyBwdXJwb3Nlc1xuLy8gc28gZmVlbCBmcmVlIHRvIHJlbW92ZSBldmVyeXRoaW5nIGluIHRoaXMgZmlsZVxuLy8gYW5kIHN0YXJ0IG92ZXIuXG4uc2l0ZS1mb290ZXIge1xuICBjbGVhcjogYm90aDtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZzogNnJlbSAycmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgcCxcbiAgc3BhbiB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgfVxuXG4gIC53b3JkcHJlc3MtbG9nbyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIH1cblxuICBzcGFuIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cblxuICBzdmcge1xuICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuXG4gIC5wb3dlcmVkLWJ5LXdvcmRwcmVzcyB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1zZW1pYm9sZCk7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cblxuICAuZ2l0aHViLWxpbmsge1xuICAgIG1hcmdpbi1sZWZ0OiA4cHg7XG4gICAgbWFyZ2luLXRvcDogNHB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcGFkZGluZy1ib3R0b206IDRweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cblxuICBhIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgJHRyYW5zaXRpb24tZHVyYXRpb247XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgICAgIG9wYWNpdHk6IC41O1xuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIG9wYWNpdHk6IC4yO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC50aGVtZS1pbmZvIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgaSB7XG4gICAgICBtYXJnaW46IDAgNXB4O1xuICAgIH1cbiAgfVxufVxuIiwiLnNpdGUtbWFpbixcbi5zaXRlLWZvb3RlciB7XG5cbiAgLy8gQnV0dG9uc1xuICAuYnV0dG9uLXdyYXBwZXIge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICBidXR0b24sXG4gIC5idXR0b24sXG4gIGlucHV0W3R5cGU9XCJyZXNldFwiXSxcbiAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSxcbiAgaW5wdXRbdHlwZT1cImJ1dHRvblwiXSB7XG4gICAgQGluY2x1ZGUgYnV0dG9uKCk7XG5cbiAgICAvLyBCdXR0b24gc2l6ZXNcbiAgICAmLmJ1dHRvbi1zbWFsbCB7XG4gICAgICBAaW5jbHVkZSBidXR0b24tc2l6ZS1zbWFsbCgpO1xuICAgIH1cblxuICAgICYuYnV0dG9uLWxhcmdlIHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbi1zaXplLWxhcmdlKCk7XG4gICAgfVxuXG4gICAgLy8gQnV0dG9uIHN0eWxlc1xuICAgICYuYnV0dG9uLWdob3N0IHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbi1zdHlsZS1naG9zdCgpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBTZWxlY3QgZHJvcCBkb3duc1xuc2VsZWN0IHtcbiAgLy8gZG9pdXNlLWRpc2FibGVcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi8uLi9zdmcvc2VsZWN0LnN2ZycpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCB2YXIoLS1nYXAtc2VsZWN0LWljb24pIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiAxMXB4IGF1dG87XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItYm9yZGVyLWZvcm1zKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zZWxlY3QpO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IHZhcigtLWJvcmRlci13aWR0aC1pbnB1dC1maWVsZCk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1mb3JtLXRleHQpO1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1pbnB1dC1maWVsZHMpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tZm9ybS1saW5lLWhlaWdodCk7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWluLXdpZHRoOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tZm9ybS1wYWRkaW5nLXZlcnRpY2FsKTtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoLS1mb3JtLXBhZGRpbmctaG9yaXpvbnRhbCk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhcigtLWZvcm0tcGFkZGluZy1ob3Jpem9udGFsKTtcbiAgcGFkZGluZy10b3A6IHZhcigtLWZvcm0tcGFkZGluZy12ZXJ0aWNhbCk7XG4gIHRleHQtaW5kZW50OiAxcHg7XG4gIHRyYW5zaXRpb246IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vLyBMYWJlbHNcbmxlZ2VuZCxcbmxhYmVsIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWZvcm0tbGFiZWwtdGV4dCk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWlucHV0LWZpZWxkcyk7XG59XG5cbi8vIEZvcm0gaW5wdXQgZWxlbWVudHMgYW5kIHRleHRhcmVhc1xudGV4dGFyZWEsXG5pbnB1dFt0eXBlPVwidGV4dFwiXSxcbmlucHV0W3R5cGU9XCJ0ZWxcIl0sXG5pbnB1dFt0eXBlPVwidXJsXCJdLFxuaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLFxuaW5wdXRbdHlwZT1cIm51bWJlclwiXSxcbmlucHV0W3R5cGU9XCJtb250aFwiXSxcbmlucHV0W3R5cGU9XCJ3ZWVrXCJdLFxuaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXSB7XG4gIEBleHRlbmQgJWRlZmF1bHQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJhY2tncm91bmQtaW5wdXQtZmllbGQpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWJvcmRlci1mb3Jtcyk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtaW5wdXQtZmllbGQpO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IHZhcigtLWJvcmRlci13aWR0aC1pbnB1dC1maWVsZCk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1mb3JtLXRleHQpO1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1wYXJhZ3JhcGgpO1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1pbnB1dC1maWVsZHMpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tZm9ybS1saW5lLWhlaWdodCk7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoLS1mb3JtLXBhZGRpbmctdmVydGljYWwpO1xuICBwYWRkaW5nLWxlZnQ6IHZhcigtLWZvcm0tcGFkZGluZy1ob3Jpem9udGFsKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKC0tZm9ybS1wYWRkaW5nLWhvcml6b250YWwpO1xuICBwYWRkaW5nLXRvcDogdmFyKC0tZm9ybS1wYWRkaW5nLXZlcnRpY2FsKTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgLjU1cztcblxuICAmOjpwbGFjZWhvbGRlciB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLXBsYWNlaG9sZGVyKTtcbiAgICBvcGFjaXR5OiB2YXIoLS1vcGFjaXR5LXBsYWNlaG9sZGVyKTtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJhY2tncm91bmQtaW5wdXQtZmllbGQpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItYm9yZGVyLWZvcm1zLWZvY3VzKTtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItZm9ybS10ZXh0KTtcblxuICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1wbGFjZWhvbGRlci1mb2N1cyk7XG4gICAgICBvcGFjaXR5OiB2YXIoLS1vcGFjaXR5LXBsYWNlaG9sZGVyLWZvY3VzKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gUmFkaW8gYnV0dG9ucyBhbmQgY2hlY2tib3hlc1xuaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaW5wdXQtZmllbGRzKTtcbiAgaGVpZ2h0OiB2YXIoLS1zaXplLXJhZGlvLWJ1dHRvbik7XG4gIG1hcmdpbjogMDtcbiAgbWFyZ2luLXRvcDogY2FsYygoMWVtICogdmFyKC0tbGluZS1oZWlnaHQtY2hlY2tib3gpIC0gdmFyKC0tc2l6ZS1yYWRpby1idXR0b24pKSAvIDIpO1xuICBvcGFjaXR5OiAwO1xuICBwYWRkaW5nOiAwO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgLy8gSGlkZSBuYXRpdmUgYnV0dG9uc1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiB2YXIoLS1zaXplLXJhZGlvLWJ1dHRvbik7XG59XG5cbi8vIExhYmVscyBmb3IgcmFkaW8gYnV0dG9ucyBhbmQgY2hlY2tib3hlc1xuaW5wdXRbdHlwZT1cInJhZGlvXCJdICsgbGFiZWwsXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0gKyBsYWJlbCB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtY2hlY2tib3gpO1xufVxuXG4vLyBDdXN0b20gYnV0dG9ucyAtIGJhc2ljIHN0eWxlXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0gKyBsYWJlbDo6YmVmb3JlLFxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdICsgbGFiZWw6OmJlZm9yZSB7XG4gIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItY2hlY2tib3gpO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IHZhcigtLWJvcmRlci13aWR0aC1jaGVja2JveCk7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgZmxleC1zaHJpbms6IDA7XG4gIGhlaWdodDogdmFyKC0tc2l6ZS1yYWRpby1idXR0b24pO1xuICBtYXJnaW4tcmlnaHQ6IHZhcigtLWdhcC1jaGVja2JveCk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiBjYWxjKHZhcigtLWJvcmRlci13aWR0aC1jaGVja2JveCkgLyAyKTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4ycywgYm9yZGVyIC4ycztcbiAgd2lkdGg6IHZhcigtLXNpemUtcmFkaW8tYnV0dG9uKTtcbn1cblxuLy8gUmFkaW8gb25seSBzdHlsZVxuaW5wdXRbdHlwZT1cInJhZGlvXCJdICsgbGFiZWw6OmJlZm9yZSB7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbn1cblxuLy8gQ2hlY2tib3ggb25seSBzdHlsZVxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdICsgbGFiZWw6OmJlZm9yZSB7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtY2hlY2tib3gpO1xufVxuXG4vLyBSYWRpbyBidXR0b24gYW5kIGNoZWNrYm94IGNoZWNrZWQgc3RhdGVzXG5pbnB1dFt0eXBlPVwicmFkaW9cIl06Y2hlY2tlZCArIGxhYmVsOjpiZWZvcmUsXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCArIGxhYmVsOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1jaGVja2JveCk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItY2hlY2tib3gpO1xuICBib3gtc2hhZG93OiBub25lO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjJzO1xufVxuXG4vLyBSYWRpbyBidXR0b24gYW5kIGNoZWNrYm94IGFjdGl2ZSBzdGF0ZXNcbmlucHV0W3R5cGU9XCJyYWRpb1wiXTphY3RpdmUgKyBsYWJlbDo6YmVmb3JlLFxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmFjdGl2ZSArIGxhYmVsOjpiZWZvcmUge1xuICB0cmFuc2Zvcm06IHNjYWxlKC44KTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4ycztcbn1cblxuLy8gUmFkaW8gYnV0dG9uIGljb25cbmlucHV0W3R5cGU9XCJyYWRpb1wiXTpjaGVja2VkICsgbGFiZWw6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsICUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNiclM0UlM0NnIGNsYXNzPSduYy1pY29uLXdyYXBwZXInIGZpbGw9JyUyM2ZmZmZmZiclM0UlM0NjaXJjbGUgY3g9JzgnIGN5PSc4JyByPSc4JyBmaWxsPSclMjNmZmZmZmYnJTNFJTNDL2NpcmNsZSUzRSUzQy9nJTNFJTNDL3N2ZyUzRVwiKTtcbiAgYmFja2dyb3VuZC1zaXplOiB2YXIoLS1zaXplLXJhZGlvLWJ1dHRvbi1tYXJrZXIpO1xufVxuXG4vLyBDaGVja2JveCBidXR0b24gaWNvblxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQgKyBsYWJlbDo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCAlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMTInIGhlaWdodD0nMTInIHZpZXdCb3g9JzAgMCAxMiAxMiclM0UlM0Nwb2x5bGluZSBwb2ludHM9JzEgNi41IDQgOS41IDExIDIuNScgZmlsbD0nbm9uZScgc3Ryb2tlPSclMjNGRkZGRkYnIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgc3Ryb2tlLXdpZHRoPScyJy8lM0UlM0Mvc3ZnJTNFXCIpO1xuICBiYWNrZ3JvdW5kLXNpemU6IHZhcigtLXNpemUtY2hlY2tib3gtbWFya2VyKTtcbn1cblxuLy8gUmFkaW8gYnV0dG9uIGFuZCBjaGVja2JveCBmb2N1cyBzdGF0ZXNcbmlucHV0W3R5cGU9XCJyYWRpb1wiXTpmb2N1cyArIGxhYmVsOjpiZWZvcmUsXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Zm9jdXMgKyBsYWJlbDo6YmVmb3JlLFxuaW5wdXRbdHlwZT1cInJhZGlvXCJdOmNoZWNrZWQ6YWN0aXZlICsgbGFiZWw6OmJlZm9yZSxcbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkOmFjdGl2ZSArIGxhYmVsOjpiZWZvcmUge1xuICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWNoZWNrYm94KTtcbiAgYm94LXNoYWRvdzogdmFyKC0tY29sb3ItY2hlY2tib3gtb3V0bGluZSk7XG59XG5cbi8vIFJhZGlvIGJ1dHRvbiBhbmQgY2hlY2tib3ggY2hlY2tlZCArIGFjdGl2ZSBzdGF0ZXNcbmlucHV0W3R5cGU9XCJyYWRpb1wiXTpjaGVja2VkOmFjdGl2ZSArIGxhYmVsOjpiZWZvcmUsXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZDphY3RpdmUgKyBsYWJlbDo6YmVmb3JlIHtcbiAgdHJhbnNmb3JtOiBub25lO1xuICB0cmFuc2l0aW9uOiBub25lO1xufVxuXG4vLyBSYWRpbyBidXR0b24gYW5kIGNoZWNrYm94IGhvdmVyc1xuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW1heC1wc2V1ZG8tY2xhc3NcbmlucHV0W3R5cGU9XCJyYWRpb1wiXTpub3QoOmNoZWNrZWQpOm5vdCg6Zm9jdXMpICsgbGFiZWw6aG92ZXI6OmJlZm9yZSxcbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpub3QoOmNoZWNrZWQpOm5vdCg6Zm9jdXMpICsgbGFiZWw6aG92ZXI6OmJlZm9yZSB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItY2hlY2tib3gtYm9yZGVyLWhvdmVyKTtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIG51bWJlci1tYXgtcHJlY2lzaW9uLCBtYXgtbGluZS1sZW5ndGhcbkBtaXhpbiBidXR0b24oJG1heC13aWR0aDogMjMwcHgsICRjb2xvcjogdmFyKC0tY29sb3ItYnV0dG9uKSwgJGhvdmVyOiB2YXIoLS1jb2xvci1idXR0b24taG92ZXIpLCAkYmFja2dyb3VuZDogdmFyKC0tY29sb3ItYnV0dG9uLWJhY2tncm91bmQpLCAkYmFja2dyb3VuZC1ob3ZlcjogdmFyKC0tY29sb3ItYnV0dG9uLWJhY2tncm91bmQtaG92ZXIpLCAkcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWlucHV0LWZpZWxkKSwgJGJvcmRlcjogdmFyKC0tYm9yZGVyLXdpZHRoLWlucHV0LWZpZWxkKSBzb2xpZCB2YXIoLS1jb2xvci1idXR0b24tYmFja2dyb3VuZCksICRib3JkZXItaG92ZXI6IHZhcigtLWJvcmRlci13aWR0aC1pbnB1dC1maWVsZCkgc29saWQgJGJhY2tncm91bmQtaG92ZXIsICR3ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXNlbWlib2xkKSwgJGFycm93OiBmYWxzZSwgJHRyYW5zaXRpb246IGFsbCAkdHJhbnNpdGlvbi1kdXJhdGlvbiBjdWJpYy1iZXppZXIoLjI1LCAuNDYsIC40NSwgLjk0KSkge1xuICAvLyBkb2l1c2UtZGlzYWJsZVxuICBhcHBlYXJhbmNlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgYm9yZGVyOiAkYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkcmFkaXVzO1xuICBjb2xvcjogJGNvbG9yO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtcGFyYWdyYXBoKTtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtMTYpO1xuICBmb250LXdlaWdodDogJHdlaWdodDtcbiAgbGluZS1oZWlnaHQ6IDE5LjYzNjRweDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbWF4LXdpZHRoOiAkbWF4LXdpZHRoO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nLWJvdHRvbTogY2FsYygxNHB4IC0gY2FsYyh2YXIoLS1ib3JkZXItd2lkdGgtaW5wdXQtZmllbGQpICogMikpO1xuICBwYWRkaW5nLWxlZnQ6IGNhbGMoMjFweCAtIGNhbGModmFyKC0tYm9yZGVyLXdpZHRoLWlucHV0LWZpZWxkKSAqIDIpKTtcbiAgcGFkZGluZy1yaWdodDogY2FsYygyMXB4IC0gY2FsYyh2YXIoLS1ib3JkZXItd2lkdGgtaW5wdXQtZmllbGQpICogMikpO1xuICBwYWRkaW5nLXRvcDogY2FsYygxNHB4IC0gY2FsYyh2YXIoLS1ib3JkZXItd2lkdGgtaW5wdXQtZmllbGQpICogMikpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB3aWR0aDogYXV0bztcblxuICAmLmZvY3VzLFxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZC1ob3ZlcjtcbiAgICBib3JkZXI6ICRib3JkZXItaG92ZXI7XG4gICAgY29sb3I6ICRob3ZlcjtcbiAgfVxuXG4gIC8vIEFycm93IGljb25cbiAgQGlmICRhcnJvdyB7XG4gICAgc3ZnIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAycmVtO1xuICAgIH1cbiAgfVxufVxuIiwiQG1peGluIGJ1dHRvbi1zaXplLXNtYWxsKCkge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0xNik7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBudW1iZXItbWF4LXByZWNpc2lvblxuICBsaW5lLWhlaWdodDogMjAuOTA5MXB4O1xuICBwYWRkaW5nLWJvdHRvbTogY2FsYygxMHB4IC0gY2FsYyh2YXIoLS1ib3JkZXItd2lkdGgtaW5wdXQtZmllbGQpICogMikpO1xuICBwYWRkaW5nLWxlZnQ6IGNhbGMoMjFweCAtIGNhbGModmFyKC0tYm9yZGVyLXdpZHRoLWlucHV0LWZpZWxkKSAqIDIpKTtcbiAgcGFkZGluZy1yaWdodDogY2FsYygyMXB4IC0gY2FsYyh2YXIoLS1ib3JkZXItd2lkdGgtaW5wdXQtZmllbGQpICogMikpO1xuICBwYWRkaW5nLXRvcDogY2FsYygxMHB4IC0gY2FsYyh2YXIoLS1ib3JkZXItd2lkdGgtaW5wdXQtZmllbGQpICogMikpO1xufVxuIiwiQG1peGluIGJ1dHRvbi1zaXplLWxhcmdlKCkge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0xOCk7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBudW1iZXItbWF4LXByZWNpc2lvblxuICBsaW5lLWhlaWdodDogMjMuMDkwOXB4O1xuICBwYWRkaW5nLWJvdHRvbTogY2FsYygxN3B4IC0gY2FsYyh2YXIoLS1ib3JkZXItd2lkdGgtaW5wdXQtZmllbGQpICogMikpO1xuICBwYWRkaW5nLWxlZnQ6IGNhbGMoMjFweCAtIGNhbGModmFyKC0tYm9yZGVyLXdpZHRoLWlucHV0LWZpZWxkKSAqIDIpKTtcbiAgcGFkZGluZy1yaWdodDogY2FsYygyMXB4IC0gY2FsYyh2YXIoLS1ib3JkZXItd2lkdGgtaW5wdXQtZmllbGQpICogMikpO1xuICBwYWRkaW5nLXRvcDogY2FsYygxN3B4IC0gY2FsYyh2YXIoLS1ib3JkZXItd2lkdGgtaW5wdXQtZmllbGQpICogMikpO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIG1heC1saW5lLWxlbmd0aFxuQG1peGluIGJ1dHRvbi1zdHlsZS1naG9zdCgkYmFja2dyb3VuZDogdHJhbnNwYXJlbnQsICRiYWNrZ3JvdW5kLWhvdmVyOiB2YXIoLS1jb2xvci1idXR0b24tYmFja2dyb3VuZCksICRjb2xvcjogdmFyKC0tY29sb3ItYnV0dG9uLWJhY2tncm91bmQpLCAkaG92ZXI6IHZhcigtLWNvbG9yLXdoaXRlKSwgJHJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1pbnB1dC1maWVsZCksICRib3JkZXI6IHZhcigtLWJvcmRlci13aWR0aC1pbnB1dC1maWVsZCkgc29saWQgdmFyKC0tY29sb3ItYnV0dG9uLWJhY2tncm91bmQpLCAkdHJhbnNpdGlvbjogYWxsICR0cmFuc2l0aW9uLWR1cmF0aW9uIGN1YmljLWJlemllciguMjUsIC40NiwgLjQ1LCAuOTQpKSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICBib3JkZXI6ICRib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRyYWRpdXM7XG4gIGNvbG9yOiAkY29sb3I7XG4gIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xuXG4gICYuZm9jdXMsXG4gICY6Zm9jdXMsXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kLWhvdmVyO1xuICAgIGJvcmRlci1jb2xvcjogJGJhY2tncm91bmQtaG92ZXI7XG4gICAgY29sb3I6ICRob3ZlcjtcbiAgfVxufVxuIiwiLy8gR2VuZXJhbCBibG9nIGluZGV4IGFuZCBzaW5nbGUgc3R5bGVzXG4vLyBzdHlsZWxpbnQtZGlzYWJsZSBuby1kZXNjZW5kaW5nLXNwZWNpZmljaXR5XG4vLyBDYXRlZ29yeSBsaXN0aW5nIHN0eWxlc1xuLmNhdCB7XG4gIG1hcmdpbi1ib3R0b206IC41cmVtO1xuICBtYXJnaW4tdG9wOiA0cmVtO1xuXG4gIGEge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItY2F0ZWdvcnktYm9yZGVyKTtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItd2lkdGg6IDFweCAxcHggMnB4O1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWNhdGVnb3J5LXRleHQpO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0xNik7XG4gICAgbWFyZ2luLWJvdHRvbTogLjVyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAuNWVtO1xuICAgIHBhZGRpbmc6IC4yZW0gLjZlbTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgJHRyYW5zaXRpb24tZHVyYXRpb247XG4gIH1cblxuICBhOmhvdmVyLFxuICBhOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLXRhZy1ib3JkZXItaG92ZXIpO1xuICB9XG59XG5cbi8vIEJsb2cgcG9zdCB0YWcgc3R5bGVzXG4udGFncyB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLW1hcmdpbi1iZXR3ZWVuLXRleHQtZWxlbWVudHMpO1xuICBtYXJnaW4tdG9wOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gIGxpIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxuXG4gIGEge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItdGFnLWJvcmRlcik7XG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXdpZHRoOiAxcHggMXB4IDJweDtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci10YWctdGV4dCk7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTE0KTtcbiAgICBtYXJnaW4tcmlnaHQ6IC40ZW07XG4gICAgcGFkZGluZzogLjJlbSAuNmVtO1xuICAgIHRyYW5zaXRpb246IGFsbCAkdHJhbnNpdGlvbi1kdXJhdGlvbjtcbiAgfVxuXG4gIGE6aG92ZXIsXG4gIGE6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItdGFnLWJvcmRlci1ob3Zlcik7XG4gIH1cbn1cblxuLy8gTmV4dC9QcmV2aW91cyBzaW5nbGUgcG9zdCBuYXZpZ2F0aW9uXG4ucG9zdC1uYXZpZ2F0aW9uIC5uYXYtbGlua3Mge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcbn1cbiIsIi8vIFRoZXNlIHN0eWxlcyBhcmUgcmVxdWlyZWQgYnkgV29yZFByZXNzLm9yZyBUaGVtZSBDaGVja1xuLy8gUkVRVUlSRUQ6IC5zdGlja3kgY3NzIGNsYXNzIGlzIG5lZWRlZCBpbiB5b3VyIHRoZW1lIGNzcy5cbi8vIFJFUVVJUkVEOiAuYnlwb3N0YXV0aG9yIGNzcyBjbGFzcyBpcyBuZWVkZWQgaW4geW91ciB0aGVtZSBjc3MuXG46cm9vdCB7XG4gIC0tY29sb3ItYm9yZGVyLXN0aWNreTogI2Q3ZTRmMjtcbiAgLS1jb2xvci1ieXBvc3RhdXRob3I6IHJnYig0MiA0NSA2MiAvIC41KTtcbn1cblxuLnN0aWNreSB7XG4gIGJvcmRlcjogMXB4IGRhc2hlZCB2YXIoLS1jb2xvci1ib3JkZXItc3RpY2t5KTtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgcGFkZGluZzogMnJlbTtcbn1cblxuLmNvbW1lbnQtbGlzdCBsaS5ieXBvc3RhdXRob3IsXG4uYnlwb3N0YXV0aG9yIHtcbiAgYm9yZGVyOiAxcHggZGFzaGVkIHZhcigtLWNvbG9yLWJ5cG9zdGF1dGhvcik7XG4gIHBhZGRpbmc6IDJyZW07XG59XG5cbi8vIFdvcmRQcmVzcyBjYXB0aW9uc1xuLy8gUkVRVUlSRUQ6IC53cC1jYXB0aW9uIGNzcyBjbGFzcyBpcyBuZWVkZWQgaW4geW91ciB0aGVtZSBjc3MuXG4vLyBSRVFVSVJFRDogLndwLWNhcHRpb24tdGV4dCBjc3MgY2xhc3MgaXMgbmVlZGVkIGluIHlvdXIgdGhlbWUgY3NzLlxuLndwLWNhcHRpb24ge1xuICBtYXgtd2lkdGg6IDEwMCU7XG5cbiAgaW1nW2NsYXNzKj1cIndwLWltYWdlLVwiXSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gIH1cblxuICAud3AtY2FwdGlvbi10ZXh0IHtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICBwYWRkaW5nOiAxcmVtIDA7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxufVxuIiwiLy8gVGhlIG9uZSBhbmQgb25seSBhbmNob3IgbGluayB0aGF0IGJyaW5ncyB1c2VyIGJhY2sgdG8gdG9wXG4udG9wIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmFja2dyb3VuZC10b3ApO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIGJvdHRvbTogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtMTYpO1xuICBoZWlnaHQ6IDNyZW07XG4gIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICBvcGFjaXR5OiAwO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHJpZ2h0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRyYW5zaXRpb246IDUwMG1zIG9wYWNpdHk7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgd2lkdGg6IDNyZW07XG4gIHotaW5kZXg6IDE7XG5cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmFja2dyb3VuZC10b3AtaG92ZXIpO1xuICB9XG5cbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmFja2dyb3VuZC10b3ApO1xuICB9XG59XG5cbi50b3AuaXMtdmlzaWJsZSB7XG4gIG9wYWNpdHk6IDE7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG59XG4iLCIvLyBDbGFzc2ljIFdvcmRQcmVzcyBnYWxsZXJpZXNcbi8vIEBzb3VyY2UgaHR0cHM6Ly9naXRodWIuY29tL0F1dG9tYXR0aWMvX3MvYmxvYi81MGNlOTNjN2NkNDc4ODcxYzlhZTc1MDRmMGVmNDc0OGY1ZGU0NDlmL3Nhc3MvbWVkaWEvX2dhbGxlcmllcy5zY3NzXG4uZ2FsbGVyeSB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtZ2FwOiAxLjVlbTtcbiAgbWFyZ2luLWJvdHRvbTogMS41ZW07XG59XG5cbi5nYWxsZXJ5LWl0ZW0ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbkBmb3IgJGkgZnJvbSAyIHRocm91Z2ggOSB7XG4gIC5nYWxsZXJ5LWNvbHVtbnMtI3skaX0ge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KCRpLCAxZnIpO1xuICB9XG59XG5cbi5nYWxsZXJ5LWNhcHRpb24ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbiIsIi8vIEFsdGVybmF0aXZlIHN0eWxlOiBodHRwczovL2kuaW1ndXIuY29tL0E4Z1V5dTIucG5nXG4vLyBzdHlsZWxpbnQtZGlzYWJsZSBhMTF5L2ZvbnQtc2l6ZS1pcy1yZWFkYWJsZVxuLm5hdmlnYXRpb246bm90KC5wb3N0LW5hdmlnYXRpb24pIC5uYXYtbGlua3Mge1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgZGlzcGxheTogZmxleDtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtaGVhZGluZyk7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICBtYXJnaW4tdG9wOiA0cmVtO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB3aWR0aDogMTAwJTtcblxuICBhIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbn1cblxuLnBhZ2UtbnVtYmVycyB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIHZhcigtLWNvbG9yLWJsdWUtY2hhbGspO1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJsdWUtY2hhbGspO1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ibHVlLWNoYWxrKTtcbiAgYm9yZGVyLXRvcDogMnB4IHNvbGlkIHZhcigtLWNvbG9yLWJsdWUtY2hhbGspO1xuICBjb2xvcjogdmFyKC0tY29sb3ItcGFnaW5hdGlvbi10ZXh0KTtcbiAgZGlzcGxheTogZmxleDtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW1lZGl1bSk7XG4gIGhlaWdodDogMzVweDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIHRyYW5zaXRpb246IGFsbCAkdHJhbnNpdGlvbi1kdXJhdGlvbjtcbiAgd2lkdGg6IDM1cHg7XG5cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiA0cHg7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogNHB4O1xuICB9XG5cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogNHB4O1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDRweDtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgfVxuXG4gIEBtZWRpYSAobWF4LXdpZHRoOiA2MDBweCkge1xuICAgIGhlaWdodDogMjZweDtcbiAgICB3aWR0aDogMjZweDtcbiAgfVxufVxuXG5hLnBhZ2UtbnVtYmVyczpob3ZlcixcbmEucGFnZS1udW1iZXJzOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItcGFnaW5hdGlvbi1iYWNrZ3JvdW5kLWhvdmVyKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1wYWdpbmF0aW9uLWJvcmRlci1ob3Zlcik7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1wYWdpbmF0aW9uLXRleHQtaG92ZXIpO1xufVxuXG4ucGFnZS1udW1iZXJzLmN1cnJlbnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1wYWdpbmF0aW9uLWJhY2tncm91bmQtY3VycmVudCk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItcGFnaW5hdGlvbi1ib3JkZXItY3VycmVudCk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1wYWdpbmF0aW9uLXRleHQtY3VycmVudCk7XG59XG5cbi8vIFJlbW92ZSB0aGlzIGlmIHlvdSBhcmUgdXNpbmcgdmVyc2lvbiB3aXRoIG5leHQvcHJldlxuLnBhZ2UtbnVtYmVycy5uZXh0LFxuLnBhZ2UtbnVtYmVycy5wcmV2IHtcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICB3aWR0aDogYXV0bztcblxuICBAbWVkaWEgKG1heC13aWR0aDogNjAwcHgpIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgfVxufVxuIiwiLy8gR3Jhdml0eSBmb3JtcyBzdHlsZXMgPj0gMi41XG4vLyBQbGVhc2UgZGlzYWJsZSBDU1MgaW4gL2FkbWluLnBocD9wYWdlPWdmX3NldHRpbmdzXG5cbi8vIFdDQUcgMi4wIGVycm9yc1xuLy8gc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3ItY2xhc3MtcGF0dGVyblxuZGl2LnZhbGlkYXRpb25fZXJyb3Ige1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1lcnJvcik7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTE3KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1mb3JtLXJvdy1nYXApO1xuICBwYWRkaW5nOiAycmVtO1xuXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIH1cbn1cblxuYm9keSAqW2FyaWEtaW52YWxpZD1cInRydWVcIl0ge1xuICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWVycm9yKTtcbn1cblxuLnZhbGlkYXRpb25fbWVzc2FnZSB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1lcnJvcik7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTE2KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xufVxuXG4udmFsaWRhdGlvbl9saXN0IHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tZm9ybS1yb3ctZ2FwKTtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIHBhZGRpbmc6IDA7XG5cbiAgYSB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWVycm9yKTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICBsaSB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWVycm9yKTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XG4gIH1cbn1cblxuLy8gRm9ybSBzY3JlZW4gcmVhZGVyIHRleHRzXG4uZ2Zvcm1fcmVxdWlyZWRfbGVnZW5kLFxuLnNyLW9ubHkge1xuICBAaW5jbHVkZSBzY3JlZW4tcmVhZGVyLXRleHQoKTtcbn1cblxuLy8gRGVmYXVsdCByZXF1aXJlZCBsYWJlbFxuLmdmaWVsZF9yZXF1aXJlZC5nZmllbGRfcmVxdWlyZWRfYXN0ZXJpc2sge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1yZXF1aXJlZC1hc3Rlcmlzay1sYWJlbCk7XG59XG5cbi5nZmllbGRfcmVxdWlyZWQuZ2ZpZWxkX3JlcXVpcmVkX2FzdGVyaXNrLFxuLmdmaWVsZF9yZXF1aXJlZC5nZmllbGRfcmVxdWlyZWRfdGV4dCB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1yZXF1aXJlZC1sYWJlbC10ZXh0KTtcbn1cblxuLmdmaWVsZF9yZXF1aXJlZC5nZmllbGRfcmVxdWlyZWRfdGV4dCB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXJlcXVpcmVkLXRleHQtbGFiZWwpO1xufVxuXG4vLyBHcmF2aXR5IGZvcm1zIG1pbmltYWwgZGVmYXVsdCBzdHlsZXNcbi5nZm9ybV93cmFwcGVyID4gZm9ybSB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtY29sdW1uLWdhcDogdmFyKC0tZm9ybS1jb2x1bW4tZ2FwKTtcbiAgZ3JpZC1yb3ctZ2FwOiB2YXIoLS1mb3JtLXJvdy1nYXApO1xufVxuXG4uZ2Zvcm0tYm9keSB7XG4gIHVsIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgdGV4dGFyZWEsXG4gIGlucHV0IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC8vIEZpeCB0ZXh0YXJlYSBub3QgZnVsbCB3aWR0aFxuICAuZ2lucHV0X2NvbnRhaW5lci5naW5wdXRfY29udGFpbmVyX3RleHRhcmVhIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG5cbiAgLmdmaWVsZF9sYWJlbCB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xuICAgIGdhcDogdmFyKC0tZm9ybS1yZXF1aXJlZC1nYXApO1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICBwYWRkaW5nLWlubGluZS1lbmQ6IDA7XG4gICAgcGFkZGluZy1pbmxpbmUtc3RhcnQ6IDA7XG4gIH1cblxuICAvLyAyLjUgYnVpbHQtaW4gbXVsdGkgY29sdW1uIHN1cHBvcnRcbiAgLmdmb3JtX2ZpZWxkcyB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLWNvbHVtbi1nYXA6IHZhcigtLWZvcm0tY29sdW1uLWdhcCk7XG4gICAgZ3JpZC1yb3ctZ2FwOiB2YXIoLS1mb3JtLXJvdy1nYXApO1xuICAgIC8vIGRvaXVzZS1kaXNhYmxlXG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMTIsIDFmcik7XG4gICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiByZXBlYXQoYXV0by1maWxsLCBhdXRvKTtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC5nZmllbGQge1xuICAgIGJvcmRlcjogMDtcbiAgICBncmlkLWNvbHVtbjogMSAvIC0xO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICAuZ2ZpZWxkLmdmaWVsZC0td2lkdGgtZnVsbCB7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gMTI7XG4gIH1cblxuICAuZ2ZpZWxkLmdmaWVsZC0td2lkdGgtZWxldmVuLXR3ZWxmdGhzIHtcbiAgICBncmlkLWNvbHVtbjogc3BhbiAxMTtcbiAgfVxuXG4gIC5nZmllbGQuZ2ZpZWxkLS13aWR0aC1maXZlLXNpeHRocyB7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gMTA7XG4gIH1cblxuICAuZ2ZpZWxkLmdmaWVsZC0td2lkdGgtdGhyZWUtcXVhcnRlciB7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gOTtcbiAgfVxuXG4gIC5nZmllbGQuZ2ZpZWxkLS13aWR0aC10d28tdGhpcmRzIHtcbiAgICBncmlkLWNvbHVtbjogc3BhbiA4O1xuICB9XG5cbiAgLmdmaWVsZC5nZmllbGQtLXdpZHRoLXNldmVuLXR3ZWxmdGhzIHtcbiAgICBncmlkLWNvbHVtbjogc3BhbiA3O1xuICB9XG5cbiAgLmdmaWVsZC5nZmllbGQtLXdpZHRoLWhhbGYge1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDY7XG4gIH1cblxuICAuZ2ZpZWxkLmdmaWVsZC0td2lkdGgtZml2ZS10d2VsZnRocyB7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gNTtcbiAgfVxuXG4gIC5nZmllbGQuZ2ZpZWxkLS13aWR0aC10aGlyZCB7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gNDtcbiAgfVxuXG4gIC5nZmllbGQuZ2ZpZWxkLS13aWR0aC1xdWFydGVyIHtcbiAgICBncmlkLWNvbHVtbjogc3BhbiAzO1xuICB9XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDY0MHB4KSB7XG4gICAgLmdmb3JtX2ZpZWxkcyB7XG4gICAgICBncmlkLWNvbHVtbi1nYXA6IDA7XG4gICAgfVxuXG4gICAgLmdmaWVsZDpub3QoLmdmaWVsZC0td2lkdGgtZnVsbCkge1xuICAgICAgZ3JpZC1jb2x1bW46IDEgLyAtMTtcbiAgICB9XG4gIH1cbn1cblxuLy8gSGlkZSBTUEFNIEhvbmV5cG90IGZpZWxkc1xuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGExMXkvbm8tZGlzcGxheS1ub25lXG4uZ2Zvcm1fdmFsaWRhdGlvbl9jb250YWluZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vLyBEZWZhdWx0IGNvbmZpcm1hdGlvbiBtZXNzYWdlIHN0eWxlc1xuLmdmb3JtX2NvbmZpcm1hdGlvbl9tZXNzYWdlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLWNvbG9yLXN1Y2Nlc3MpO1xuICBjb2xvcjogdmFyKC0tY29sb3Itc3VjY2Vzcyk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWRlZmF1bHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtc2VtaWJvbGQpO1xuICBwYWRkaW5nOiAycmVtO1xufVxuIiwiLy8gU2VhcmNoXG4uYmxvY2stc2VhcmNoLFxuLmJsb2NrLXNlYXJjaC1yZXN1bHRzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xufVxuXG4uYmxvY2stc2VhcmNoIGZvcm0ge1xuICBkaXNwbGF5OiBncmlkO1xuICAvKiBhdXRvcHJlZml4ZXI6IG9mZiAqL1xuICBncmlkLWdhcDogMXJlbTtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiA5ZnIgMWZyO1xuXG4gIGlucHV0LFxuICBsYWJlbCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuLmJsb2NrLXNlYXJjaC1yZXN1bHRzIHtcbiAgPiAuY29udGFpbmVyIHtcbiAgICBwYWRkaW5nLXRvcDogMDtcblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkY29udGFpbmVyLWlwYWQtbGFuZHNjYXBlKSB7XG4gICAgICAvLyBNYWtlIGEgQ1NTIGdyaWQgZm9yIG11bHRpcGxlIGNvbHVtbnMgaWYgeW91IHVzZSBvdGhlciBwb3N0IHR5cGUgcmVzdWx0c1xuICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICB9XG4gIH1cblxuICAucm93LXJlc3VsdCB7XG4gICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkIHZhcigtLWNvbG9yLWJvcmRlci1mb3Jtcyk7XG4gICAgcGFkZGluZzogMnJlbSAwO1xuXG4gICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIHZhcigtLWNvbG9yLWJvcmRlci1mb3Jtcyk7XG4gICAgfVxuICB9XG5cbiAgaDMge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWg0KTtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICB9XG5cbiAgcCB7XG4gICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgfVxuXG4gIC50YWdzIGEge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJhY2tncm91bmQtdGFnKTtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbik7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItbWFpbik7XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItYmFja2dyb3VuZC10YWcpO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRXJyb3IgNDA0IHRpdGxlXG4uYmxvY2stZXJyb3ItNDA0IHtcbiAgLmNvbnRhaW5lciB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRjb250YWluZXItbW9iaWxlKSB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTAlO1xuICAgICAgcGFkZGluZy10b3A6IDEwJTtcbiAgICB9XG4gIH1cblxuICBoMSB7XG4gICAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1mb250KDQycHgsIDIwMHB4KTtcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICB9XG59XG4iLCIvLyBXb3JkUHJlc3MgYnVpbHQtaW4gY29tbWVudHMgd2l0aCBjb21tZW50X2Zvcm0oKS5cbi8vIEN1c3RvbSBjb21tZW50IHRlbXBsYXRlIGNhbiBiZSBmb3VuZCBpbiBpbmMvY29tbWVudHMucGhwXG4uY29tbWVudHMtYXJlYSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIG1hcmdpbi10b3A6IDUwcHg7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4uY29tbWVudC1saXN0IHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuXG4gIC8vIE1ha2Ugc3VyZSBjaGlsZHJlbiBkb24ndCBoYXZlIGxpc3QgYnVsbGV0c1xuICAuY2hpbGRyZW4ge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIH1cblxuICBsaSB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtMTQpO1xuICAgIG1hcmdpbi1ib3R0b206IDcwcHg7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgcCB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWNvbW1lbnQtdGV4dCk7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtMTQpO1xuICB9XG5cbiAgLmF2YXRhciB7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxuXG4gIC5jb21tZW50LWF1dGhvciB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWNvbW1lbnQtYXV0aG9yLXRleHQpO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWg0KTtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIGEsXG4gIC5jb21tZW50cy1saW5rIGEge1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWxpbmstY29tbWVudCk7XG4gIH1cblxuICAuY29tbWVudC1hdXRob3IgYSB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLXBhcmFncmFwaCk7XG4gIH1cblxuICAuY29tbWVudC10aW1lIHtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0xNCk7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICBhIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1saW5rLWNvbW1lbnQtdGltZS1hbmNob3IpO1xuICAgIH1cblxuICAgICY6Zm9jdXMsXG4gICAgJjpob3ZlciB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbiAgfVxuXG4gIC5jb21tZW50LXRpbWUgc3ZnIHtcbiAgICBmaWxsOiB2YXIoLS1jb2xvci1saW5rLWNvbW1lbnQtdGltZS1hbmNob3IpO1xuICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDJweDtcbiAgfVxufVxuXG4uY29tbWVudHMtbGluayB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0xNCk7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuXG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1kZXNjZW5kaW5nLXNwZWNpZmljaXR5XG4gIGEge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1saW5rLWNvbW1lbnQpO1xuICB9XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyxcbiAgYTpob3ZlcixcbiAgYTpmb2N1cyB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgfVxuXG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1kZXNjZW5kaW5nLXNwZWNpZmljaXR5XG4gIHN2ZyB7XG4gICAgbWFyZ2luLXJpZ2h0OiA3cHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogLTFweDtcbiAgfVxufVxuXG4vLyBDb21tZW50IGZvcm0gZ3JpZFxuLmNvbW1lbnQtZm9ybSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkY29udGFpbmVyLW1vYmlsZSkge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC1nYXA6IDFlbTtcbiAgICAvLyBkb2l1c2UtZGlzYWJsZVxuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcblxuICAgIC8qIGF1dG9wcmVmaXhlcjogb2ZmICovXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgICAvLyBNYWtlIHRoZXNlIGZ1bGwgd2lkdGhcbiAgICAuY29tbWVudC1ub3RlcyxcbiAgICAuY29tbWVudC1mb3JtLWNvbW1lbnQsXG4gICAgLmZvcm0tc3VibWl0IHtcbiAgICAgIGdyaWQtY29sdW1uOiAxIC8gc3BhbiAyO1xuICAgIH1cbiAgfVxufVxuXG4uY29tbWVudC1yZXNwb25kIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG5cbiAgaW5wdXQge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkY29udGFpbmVyLW1vYmlsZSkge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgLmNvbW1lbnQtZm9ybS1hdXRob3Ige1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgbWFyZ2luLXRvcDogMDtcblxuICAgIGlucHV0IHtcbiAgICAgIGJvcmRlci13aWR0aDogMXB4O1xuICAgICAgcGFkZGluZzogMTVweDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxuXG4gIC5jb21tZW50LWZvcm0tZW1haWwge1xuICAgIGNsZWFyOiByaWdodDtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tdG9wOiAwO1xuXG4gICAgaW5wdXQge1xuICAgICAgYm9yZGVyLXdpZHRoOiAxcHg7XG4gICAgICBwYWRkaW5nOiAxNXB4O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgLmNvbW1lbnQtZm9ybS11cmwge1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICBpbnB1dCB7XG4gICAgICBib3JkZXItd2lkdGg6IDFweDtcbiAgICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cblxuICAuZm9ybS1zdWJtaXQge1xuICAgIGNsZWFyOiBib3RoO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxuXG4gIC5jb21tZW50LWZvcm0tY29tbWVudCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgfVxuXG4gIHRleHRhcmVhIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuIiwiLy8gR3V0ZW5iZXJnIGNvbnRlbnRcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIsXG4uYXJ0aWNsZS1jb250ZW50IHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tcGFkZGluZy1ibG9jayk7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgcGFkZGluZy10b3A6IHZhcigtLXBhZGRpbmctYmxvY2spO1xufVxuXG4vLyBHdXRlbmJlcmcgY29yZSBtYWdpY1xuLmlzLXJvb3QtY29udGFpbmVyID4gKixcbi5hcnRpY2xlLWNvbnRlbnQgPiAqIHtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXBhcmFncmFwaHMtYmxvZyk7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1heC13aWR0aDogJHdpZHRoLW1heC1hcnRpY2xlO1xuXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkd2lkdGgtbWF4LWFydGljbGUgKyA0MHB4KSB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcblxuICAgICYuYWxpZ25mdWxsIHtcbiAgICAgIHBhZGRpbmctbGVmdDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSBjYWxjKHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpICogMikpO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gQ29yZS9ibG9ja3F1b3RlIGJsb2NrXG5ibG9ja3F1b3RlICsgY2l0ZSxcbmJsb2NrcXVvdGUgKyBwID4gY2l0ZSB7XG4gIG1hcmdpbi1ib3R0b206IDRyZW07XG59XG5cbi8vIEdlbmVyYWwgYmxvY2txdW90ZSBzdHlsZXNcbmJsb2NrcXVvdGUge1xuICBib3JkZXI6IDAgbm9uZTtcbiAgY2xlYXI6IGJvdGg7XG4gIHBhZGRpbmctYm90dG9tOiAzcmVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgcCB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWJsb2NrcXVvdGUpO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtc2VtaWJvbGQpO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRjb250YWluZXItaXBhZCkge1xuICAgIG1hcmdpbi10b3A6IDRyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDRyZW07XG4gIH1cbn1cblxuLndwLWJsb2NrLXF1b3RlIHtcbiAgYm9yZGVyLWxlZnQ6IDJweCBzb2xpZCB2YXIoLS1jb2xvci1ibG9ja3F1b3RlKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXBhcmFncmFwaHMtYmxvZyk7XG4gIG1hcmdpbi1ib3R0b206IDRyZW07XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi10b3A6IDRyZW07XG4gIHBhZGRpbmc6IDMuNXJlbSA2cmVtO1xuICB3aWR0aDogY2FsYygxMDAlIC0gMTJyZW0pO1xuXG4gID4gcCB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWJsb2NrcXVvdGUpO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1wYXJhZ3JhcGhzLWJsb2cpO1xuICB9XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6ICR3aWR0aC1tYXgtYXJ0aWNsZSArIDQwcHgpIHtcbiAgICBwYWRkaW5nOiAzLjVyZW0gMnJlbTtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gY2FsYyh2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKSAqIDIpKTtcbiAgfVxuXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkY29udGFpbmVyLW1vYmlsZSkge1xuICAgIHBhZGRpbmc6IDRyZW0gNHJlbSA0cmVtIDJyZW07XG4gIH1cbn1cblxuLndwLWJsb2NrLWJsb2NrcXVvdGUuYWxpZ253aWRlLFxuLndwLWJsb2NrLWJsb2NrcXVvdGUuYWxpZ25mdWxsIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSBjYWxjKHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpICogMikpO1xufVxuXG4ud3AtYmxvY2stYmxvY2txdW90ZSBibG9ja3F1b3RlIHtcbiAgcGFkZGluZy1ib3R0b206IDA7XG59XG4iLCIud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgQGluY2x1ZGUgYnV0dG9uKCk7XG59XG4iLCIvLyBDb2RlIGJsb2NrXG4ud3AtYmxvY2stY29kZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJhY2tncm91bmQtY29kZS1ibG9jayk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJhY2tncm91bmQtY29kZS1ibG9jayk7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWNvZGUtdGV4dCk7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1tb25vc3BhY2UpO1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0xNik7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1wYXJhZ3JhcGhzLWJsb2cpO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1tYXJnaW4tYmV0d2Vlbi10ZXh0LWVsZW1lbnRzKTtcbiAgbWFyZ2luLXRvcDogdmFyKC0tbWFyZ2luLWJldHdlZW4tdGV4dC1lbGVtZW50cyk7XG4gIG92ZXJmbG93OiBhdXRvO1xuICBwYWRkaW5nOiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aGl0ZS1zcGFjZTogcHJlO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG5cbiAgPiBjb2RlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1jb2RlLXRleHQpO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICBAbWVkaWEgKG1heC13aWR0aDogJHdpZHRoLWdyaWQtYmFzZSArIDQwcHgpIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gY2FsYyh2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKSAqIDQpKTtcbiAgfVxufVxuIiwiLy8gQ29yZS9jb2x1bW5zIGJsb2NrXG4vLyBMb29wcyB0byBlbnVtZXJhdGUgdGhlIGNsYXNzZXMgZm9yIGNvbHVtbnMuXG5AZm9yICRpIGZyb20gMSB0aHJvdWdoIDkge1xuICAud3AtYmxvY2stY29sdW1ucy5oYXMtI3skaX0tY29sdW1ucy5hbGlnbmZ1bGwge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAud3AtYmxvY2stY29sdW1ucy5oYXMtI3skaX0tY29sdW1ucyB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDkwMHB4KSB7XG4gICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgZ3JpZC1nYXA6IDFlbTtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KCRpLCAxZnIpO1xuICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgIC53cC1ibG9jay1jb2x1bW4ge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkY29udGFpbmVyLW1vYmlsZSkge1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMSwgMWZyKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIENvcmUvY292ZXIgYmxvY2tcbi53cC1ibG9jay1jb3Zlcl9faW5uZXItY29udGFpbmVyIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG5cbiAgcCB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtY29yZS1oZWFkaW5nKTtcbiAgfVxufVxuIiwiLy8gQ29yZS9lbWJlZCBibG9ja1xuLndwLWJsb2NrLWVtYmVkIGlmcmFtZSxcbi53cC1ibG9jay1lbWJlZCB2aWRlbyB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAkd2lkdGgtZ3JpZC1iYXNlICsgNDBweCkge1xuICAud3AtYmxvY2stZW1iZWQuYWxpZ253aWRlLFxuICAud3AtYmxvY2stZW1iZWQuYWxpZ25mdWxsIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gY2FsYyh2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKSAqIDIpKTtcbiAgfVxufVxuXG4ud3AtYmxvY2stZW1iZWQuYWxpZ25mdWxsIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xufVxuIiwiLy8gQ29yZS9zZXBhcmF0b3IgYmxvY2tcbmhyLFxuLndwLWJsb2NrLXNlcGFyYXRvciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYigwIDAgMCAvIDApIDUwJSwgcmdiKDAgMCAwIC8gLjMpIDUwJSk7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgNTAlO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gIGJhY2tncm91bmQtc2l6ZTogMnB4IDJweDtcbiAgYm9yZGVyOiAwO1xuICBoZWlnaHQ6IDA7XG4gIG1hcmdpbi1ib3R0b206IGNhbGModmFyKC0tbWFyZ2luLWJldHdlZW4tcGFyYWdyYXBocykgKiAyKTtcbiAgbWFyZ2luLXRvcDogY2FsYyh2YXIoLS1tYXJnaW4tYmV0d2Vlbi1wYXJhZ3JhcGhzKSAqIDIpO1xuICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgcGFkZGluZy10b3A6IDFyZW07XG59XG5cbi53cC1ibG9jay1zZXBhcmF0b3IuaXMtc3R5bGUtZGVmYXVsdCB7XG4gIG1heC13aWR0aDogJHdpZHRoLW1heC1hcnRpY2xlO1xufVxuXG4ud3AtYmxvY2stc2VwYXJhdG9yOm5vdCguaXMtc3R5bGUtd2lkZSk6bm90KC5pcy1zdHlsZS1kb3RzKSB7XG4gIG1hcmdpbi1ib3R0b206IGNhbGModmFyKC0tbWFyZ2luLWJldHdlZW4tcGFyYWdyYXBocykgKiAyKTtcbiAgbWFyZ2luLXRvcDogY2FsYyh2YXIoLS1tYXJnaW4tYmV0d2Vlbi1wYXJhZ3JhcGhzKSAqIDIpO1xuICBvcGFjaXR5OiAuNDtcbiAgd2lkdGg6IDEwMHB4O1xufVxuIiwiLy8gQ29yZS9oZWFkaW5nIGJsb2NrXG5cbi8vIFRpdGxlIGxpbmUtaGVpZ2h0c1xuaDEsXG5oMixcbmgzLFxuaDQsXG5oNSB7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1jb3JlLWhlYWRpbmcpO1xufVxuXG4vLyBEb24ndCBhZGQgZXh0cmEgbWFyZ2luIG9uIHRvcCBvZiBmaXJzdCB0aXRsZVxuaDEsXG5oMixcbmgzLFxuaDQsXG5oNSxcbmg2IHtcbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxufVxuIiwiLy8gSW1hZ2UgYmxvY2tcbi53cC1ibG9jay1pbWFnZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1tYXJnaW4td3AtYmxvY2staW1hZ2UpO1xuICBtYXJnaW4tdG9wOiB2YXIoLS1tYXJnaW4td3AtYmxvY2staW1hZ2UpO1xuXG4gICYuYWxpZ253aWRlLFxuICAmLmFsaWduZnVsbCB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gIH1cblxuICAuYWxpZ253aWRlIGltZyxcbiAgLmFsaWduZnVsbCBpbWcge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLy8gTm8gYm9yZGVyIHJhZGl1cyBvbiBmdWxsIHdpZHRoIGltYWdlIGFuZCB3aWRlIG9uIHNtYWxsIHNjcmVlbnNcbiAgLmFsaWduZnVsbCBpbWcge1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gIH1cblxuICA+IGZpZ3VyZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IGF1dG87XG5cbiAgICAmLmFsaWdubGVmdCxcbiAgICAmLmFsaWducmlnaHQge1xuICAgICAgLy8gSGFjayBmb3Iga2VlcGluZyBmaWdjYXB0aW9uIGZyb20gZmxvd2luZyBvdmVyIGZsb2F0ZWQgaW1hZ2VcbiAgICAgIC8vIFRoaXMgdmFyaWFibGUgaXMgc2V0IGlubGluZSB0byB0aGUgY29ycmVzcG9uZGluZyBmaWd1cmUgd2l0aCBndXRlbmJlcmctaGVscGVycy5qc1xuICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGNzc3Rvb2xzL3ZhbHVlLW5vLXVua25vd24tY3VzdG9tLXByb3BlcnRpZXNcbiAgICAgIG1heC13aWR0aDogdmFyKC0td2lkdGgtY2hpbGQtaW1nKTtcbiAgICB9XG4gIH1cblxuICBmaWdjYXB0aW9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICB9XG5cbiAgLmFsaWduY2VudGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cblxuICAuYWxpZ25jZW50ZXIgaW1nIHtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIH1cblxuICBAbWVkaWEgKG1heC13aWR0aDogJHdpZHRoLWdyaWQtYmFzZSArIDQwcHgpIHtcbiAgICAmLmFsaWdud2lkZSB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gY2FsYyh2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKSAqIDIpKTtcbiAgICB9XG4gIH1cblxuICBAbWVkaWEgKG1heC13aWR0aDogJGNvbnRhaW5lci1tb2JpbGUpIHtcbiAgICAmLmFsaWdubGVmdCBpbWcsXG4gICAgJi5hbGlnbnJpZ2h0IGltZyxcbiAgICAmLmFsaWduY2VudGVyIGltZyB7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgbm8tZGVzY2VuZGluZy1zcGVjaWZpY2l0eVxuLy8gRGVmYXVsdCBsaXN0IGJsb2NrXG51bCxcbm9sIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXBhcmFncmFwaCk7XG4gIGxpc3Qtc3R5bGUtcG9zaXRpb246IG91dHNpZGU7XG4gIHdpZHRoOiBjYWxjKCgxMDAlIC0gY2FsYyh2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKSAqIDIpKSk7XG59XG5cbnVsIHtcbiAgbGlzdC1zdHlsZS10eXBlOiAnXFwyMDIyICAnO1xuICBwYWRkaW5nLWlubGluZS1zdGFydDogMWVtO1xufVxuXG5vbCB7XG4gIHBhZGRpbmctaW5saW5lLXN0YXJ0OiAxLjI1ZW07XG59XG5cbi8vIENvbG9yaXplZCBtYXJrZXJzXG5saTo6bWFya2VyIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWxpbmstdGV4dCk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTE2KTtcbn1cbiIsIi8vIENvcmUvcGFyYWdyYXBoIGJsb2NrXG4uaGFzLWxhcmdlci1mb250LXNpemUsXG4uaGFzLWxhcmdlLWZvbnQtc2l6ZSB7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1oZWFkaW5ncyk7XG59XG5cbi5oYXMtbGFyZ2UtZm9udC1zaXplIHtcbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRjb250YWluZXItbW9iaWxlKSB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtMTgpO1xuICB9XG59XG5cbi5oYXMtbGFyZ2VyLWZvbnQtc2l6ZSB7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkY29udGFpbmVyLW1vYmlsZSkge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTIyKTtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogJHdpZHRoLWdyaWQtYmFzZSArIDQwcHgpIHtcbiAgLmhhcy1iYWNrZ3JvdW5kIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gY2FsYyh2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKSAqIDIpKTtcbiAgfVxufVxuIiwiLy8gUHJlZm9ybWF0dGVkIHRleHRcbi53cC1ibG9jay1wcmVmb3JtYXR0ZWQge1xuICBAbWVkaWEgKG1heC13aWR0aDogJHdpZHRoLWdyaWQtYmFzZSArIDQwcHgpIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gY2FsYyh2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKSAqIDQpKTtcbiAgfVxufVxuIiwiLy8gQ29yZS9wdWxscXVvdGUgYmxvY2tcbi53cC1ibG9jay1wdWxscXVvdGUge1xuICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWJsb2NrcXVvdGUpO1xuICBib3JkZXItd2lkdGg6IDNweDtcbiAgZGlzcGxheTogZ3JpZDtcblxuICBbYXJpYS1sYWJlbD1cIlB1bGxxdW90ZSBjaXRhdGlvbiB0ZXh0XCJdLFxuICBjaXRlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tdG9wOiAzcmVtO1xuICB9XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6ICR3aWR0aC1ncmlkLWJhc2UgKyA0MHB4KSB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIGNhbGModmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCkgKiAyKSk7XG4gIH1cbn1cblxuLndwLWJsb2NrLXB1bGxxdW90ZS5hbGlnbndpZGUsXG4ud3AtYmxvY2stcHVsbHF1b3RlLmFsaWduZnVsbCB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgcGFkZGluZy1yaWdodDogMDtcblxuICBibG9ja3F1b3RlIHtcbiAgICBqdXN0aWZ5LXNlbGY6IGNlbnRlcjtcbiAgfVxuXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkd2lkdGgtZ3JpZC1iYXNlICsgNDBweCkge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICB9XG59XG5cbi53cC1ibG9jay1wdWxscXVvdGUuYWxpZ25mdWxsIHtcbiAgbWFyZ2luLWxlZnQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICBtYXJnaW4tcmlnaHQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICB3aWR0aDogY2FsYygxMDAlIC0gY2FsYyh2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKSAqIDIpKTtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIG5vLWRlc2NlbmRpbmctc3BlY2lmaWNpdHlcbi8vIENvcmUvdGFibGUgYmxvY2tcbi8vIFRhYmxlIGhlYWRpbmcgY2VsbHNcbnRoIHtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1zY29ycGlvbik7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxudGQge1xuICBjb2xvcjogdmFyKC0tY29sb3ItYmxhY2spO1xufVxuXG50ZCxcbnRoLFxuLndwLWJsb2NrLXRhYmxlIHRkLFxuLndwLWJsb2NrLXRhYmxlIHRoIHtcbiAgYm9yZGVyOiAwO1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1wYXJhZ3JhcGgpO1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0xNCk7XG4gIGhlaWdodDogMnJlbTtcbiAgcGFkZGluZzogLjZyZW0gMS41cmVtO1xufVxuXG50cjpudGgtY2hpbGQoZXZlbikge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1iYWNrZ3JvdW5kLXRhYmxlLWNlbGwtZXZlbik7XG59XG5cbnRyOm50aC1jaGlsZChvZGQpIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmFja2dyb3VuZC10YWJsZS1jZWxsLW9kZCk7XG59XG5cbnRoZWFkLFxuLndwLWJsb2NrLXRhYmxlIHRoZWFkIHtcbiAgYm9yZGVyOiAwO1xuXG4gIHRoOmZpcnN0LWNoaWxkIHtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiA4cHg7XG4gIH1cblxuICB0aDpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogOHB4O1xuICB9XG59XG5cbi8vIERlZmF1bHRzXG50YWJsZSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIGJvcmRlci1zcGFjaW5nOiAwO1xufVxuXG4ud3AtYmxvY2stdGFibGUge1xuICBAbWVkaWEgKG1heC13aWR0aDogJHdpZHRoLWdyaWQtYmFzZSArIDQwcHgpIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gY2FsYyh2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKSAqIDIpKTtcbiAgfVxufVxuXG4ud3AtYmxvY2stdGFibGUuYWxpZ25mdWxsIHtcbiAgbWFyZ2luLWxlZnQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICBtYXJnaW4tcmlnaHQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICB3aWR0aDogY2FsYygxMDAlIC0gY2FsYyh2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKSAqIDIpKTtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6ICR3aWR0aC1ncmlkLWJhc2UgKyA0MHB4KSB7XG4gIC53cC1ibG9jay10YWJsZS5hbGlnbndpZGUge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSBjYWxjKHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpICogMikpO1xuICB9XG59XG4iLCIvLyBDb3JlL3ZlcnNlIGJsb2NrXG4ud3AtYmxvY2stdmVyc2Uge1xuICBAbWVkaWEgKG1heC13aWR0aDogJHdpZHRoLWdyaWQtYmFzZSArIDQwcHgpIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gY2FsYyh2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKSAqIDQpKTtcbiAgfVxufVxuIiwiLy8gQ29yZS92aWRlbyBibG9ja1xuLndwLWJsb2NrLXZpZGVvIHZpZGVvIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6ICR3aWR0aC1ncmlkLWJhc2UgKyA0MHB4KSB7XG4gIC53cC1ibG9jay12aWRlby5hbGlnbndpZGUge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSBjYWxjKHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpICogMikpO1xuICB9XG59XG5cbi53cC1ibG9jay12aWRlby5hbGlnbndpZGUge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG59XG5cbi53cC1ibG9jay12aWRlby5hbGlnbmZ1bGwge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgd2lkdGg6IDEwMCU7XG59XG4iLCIvLyBCb3hlZCBibG9jayBzdHlsZVxuLndwLWJsb2NrLmlzLXN0eWxlLWJveGVkLFxuLmlzLXN0eWxlLWJveGVkIHtcbiAgYm9yZGVyOiAycHggc29saWQgdmFyKC0tY29sb3ItcGFyYWdyYXBoKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXBhcmFncmFwaCk7XG4gIGZvbnQtc2l6ZTogMTdweDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXBhcmFncmFwaHMtYmxvZyk7XG4gIHBhZGRpbmc6IDJyZW07XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSA0cmVtKTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6ICR3aWR0aC1tYXgtYXJ0aWNsZSArIDQwcHgpIHtcbiAgLmlzLXN0eWxlLWJveGVkIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgycmVtLCAwKTtcbiAgfVxufVxuIiwiLndwLWJsb2NrLWZpbGUgLndwLWJsb2NrLWZpbGVfX2J1dHRvbiB7XG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplLXNtYWxsKCk7XG4gIGZvbnQtc2l6ZTogLjhlbTtcbiAgcGFkZGluZzogLjNlbSAuOGVtO1xufVxuIiwiLmJsb2NrLWVycm9yIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZXJyb3ItYmxvY2stYmFja2dyb3VuZCk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWVycm9yLWJsb2NrLWJvcmRlcik7XG4gIGJvcmRlci1sZWZ0OiAxMHB4IHNvbGlkIHZhcigtLWNvbG9yLWVycm9yKTtcblxuICAuY29udGFpbmVyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMnJlbTtcbiAgICBwYWRkaW5nLXRvcDogMnJlbTtcbiAgfVxuXG4gIHAge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTE0KTtcbiAgfVxuXG4gIHAuZXJyb3ItbWVzc2FnZSB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtMTYpO1xuICB9XG5cbiAgaDIge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWg0KTtcbiAgfVxufVxuIiwiLy8gQWxpZ25tZW50c1xuLmVkaXRvci1zdHlsZXMtd3JhcHBlcixcbi5hcnRpY2xlLWNvbnRlbnQge1xuICAuYWxpZ25sZWZ0ID4gKiB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cblxuICAuYWxpZ25yaWdodCA+ICoge1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxuXG4gIC5hbGlnbmxlZnQgPiBpbWcge1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLW1hcmdpbi1iZXR3ZWVuLXBhcmFncmFwaHMpO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gICAgbWFyZ2luLXRvcDogdmFyKC0tbWFyZ2luLWJldHdlZW4tcGFyYWdyYXBocyk7XG5cbiAgICArIGZpZ2NhcHRpb24ge1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG4gIH1cblxuICAuYWxpZ25yaWdodCA+IGltZyB7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tbWFyZ2luLWJldHdlZW4tcGFyYWdyYXBocyk7XG4gICAgbWFyZ2luLWxlZnQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICAgIG1hcmdpbi10b3A6IHZhcigtLW1hcmdpbi1iZXR3ZWVuLXBhcmFncmFwaHMpO1xuXG4gICAgKyBmaWdjYXB0aW9uIHtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgfVxuICB9XG5cbiAgLmFsaWdud2lkZSB7XG4gICAgbWF4LXdpZHRoOiAkd2lkdGgtd2lkZTtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICR3aWR0aC13aWRlICsgNDBweCkge1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICB9XG4gIH1cblxuICAuYWxpZ25mdWxsIHtcbiAgICBtYXgtd2lkdGg6ICR3aWR0aC1mdWxsO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHdpZHRoOiAkd2lkdGgtZnVsbDtcblxuICAgICYud3AtYmxvY2staW1hZ2UgaW1nIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgfVxuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICR3aWR0aC1tYXgtYXJ0aWNsZSArIDQwcHgpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXBhZGRpbmctYmxvY2spO1xuICAgICAgbWFyZ2luLXRvcDogdmFyKC0tcGFkZGluZy1ibG9jayk7XG4gICAgICBtYXgtd2lkdGg6ICR3aWR0aC1mdWxsO1xuICAgICAgd2lkdGg6ICR3aWR0aC1mdWxsO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gQ2FwdGlvbnNcbi8vIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW1heC1jb21iaW5hdG9ycywgc2VsZWN0b3ItbWF4LWNvbXBvdW5kLXNlbGVjdG9yc1xuLmVkaXRvci1zdHlsZXMtd3JhcHBlcixcbi5hcnRpY2xlLWNvbnRlbnQge1xuICBmaWdjYXB0aW9uLFxuICBjaXRlLFxuICBzbWFsbCB7XG4gICAgYm9yZGVyOiAwO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1jYXB0aW9uKTtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1jYXB0aW9ucyk7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIG1hcmdpbi1ib3R0b206IDZyZW07XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi10b3A6IDNyZW07XG4gICAgbWF4LXdpZHRoOiAkd2lkdGgtbWF4LWFydGljbGU7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRjb250YWluZXItbW9iaWxlKSB7XG4gICAgICBtYXJnaW4tdG9wOiAycmVtO1xuICAgIH1cbiAgfVxuXG4gIC53cC1ibG9jay1pbWFnZSBmaWdjYXB0aW9uLFxuICAud3AtYmxvY2staW1hZ2UgLmFsaWducmlnaHQgPiBmaWdjYXB0aW9uLFxuICAud3AtYmxvY2staW1hZ2UgLmFsaWduY2VudGVyID4gZmlnY2FwdGlvbixcbiAgLndwLWJsb2NrLWltYWdlLmlzLXJlc2l6ZWQgPiBmaWdjYXB0aW9uIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIGNpdGUge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cbiIsIi8vIEltYWdlIGZvcm1hdHRpbmcgb3B0aW9uc1xuLmVkaXRvci1zdHlsZXMtd3JhcHBlcixcbi5hcnRpY2xlLWNvbnRlbnQge1xuICBpbWcge1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgfVxufVxuIiwia2JkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Ita2JkLWJhY2tncm91bmQpO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1rYmQtYm9yZGVyKTtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBib3gtc2hhZG93OiAwIDFweCAwIHJnYigyMiAyMiAyMiAvIC4yKSwgMCAwIDAgMnB4IHZhcigtLWNvbG9yLXdoaXRlKSBpbnNldDtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXBhcmFncmFwaCk7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgcGFkZGluZzogMCAuNXJlbTtcbiAgdGV4dC1zaGFkb3c6IDAgMXB4IDAgdmFyKC0tY29sb3Itd2hpdGUpO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuIiwiLy8gRGVmYXVsdCBsaW5rcyBldmVyeXdoZXJlXG5hIHtcbiAgQGluY2x1ZGUgbGluaygpO1xufVxuXG4vLyBEZWZpbmUgZWxlbWVudHMgd2hlcmUgeW91IGRvIG5vdCB3YW50IHRvIHVzZSBkZWZhdWx0IGxpbmsgc3R5bGVzXG4uZW50cnktZm9vdGVyLFxuLnNpdGUtaGVhZGVyLFxuLnNpdGUtZm9vdGVyIHtcbiAgYSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG59XG4iLCIvLyBMaW5rcyB3aXRoaW4gY29udGVudCBtdXN0IGJlIHZpc3VhbGx5IHVuZGVybGluZWRcbi8vIEBsaW5rIGh0dHBzOi8vbWFrZS53b3JkcHJlc3Mub3JnL3RoZW1lcy9oYW5kYm9vay9yZXZpZXcvYWNjZXNzaWJpbGl0eS9yZXF1aXJlZC8jY29udGVudC1saW5rc1xuQG1peGluIGxpbmsoKSB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1saW5rLXRleHQpO1xuICAvLyBDcmVhdGUgeW91ciBvd24gZGVmYXVsdCBjb250ZW50IGxpbmsgc3R5bGVzIGhlcmVcbiAgLy8gZm9yIHBhZ2VzIGFuZCBhcnRpY2xlc1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiB2YXIoLS1jb2xvci1saW5rLXRleHQpO1xuICB0ZXh0LXVuZGVybGluZS1vZmZzZXQ6IDZweDtcbiAgdHJhbnNpdGlvbjogYWxsICR0cmFuc2l0aW9uLWR1cmF0aW9uO1xuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1saW5rLXRleHQtaG92ZXIpO1xuICAgIHRleHQtZGVjb3JhdGlvbi1jb2xvcjogdmFyKC0tY29sb3ItbGluay10ZXh0LWhvdmVyKTtcbiAgfVxuXG4gIC8vIE1ha2UgZm9jdXMgYSBsaXR0bGUgbW9yZSBlbmdhZ2luZ1xuICAvLyBAc291cmNlIGh0dHBzOi8vdHdpdHRlci5jb20vYXJneWxlaW5rL3N0YXR1cy8xMzg3MDcyMDk1MTU5NDA2NTk2XG4gIC8vIEBsaW5rIGh0dHBzOi8vY29kZXBlbi5pby9hcmd5bGVpbmsvcGVuL0pqRXplTHBcbiAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiBuby1wcmVmZXJlbmNlKSB7XG4gICAgJjpmb2N1cyB7XG4gICAgICBvdXRsaW5lLW9mZnNldDogNXB4O1xuICAgICAgdHJhbnNpdGlvbjogb3V0bGluZS1vZmZzZXQgLjI1cyBlYXNlO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gR2VuZXJhbCBwYXJhZ3JhcGhzXG5wIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXBhcmFncmFwaCk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1wYXJhZ3JhcGhzLWJsb2cpO1xufVxuIl19 */