@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; --color-focus-outline: #7b46e1; --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-paragraph: 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-paragraph: 1.7; --font-weight-regular: 400; --font-weight-medium: 500; --font-weight-semibold: 600; --font-weight-bold: 700; --font-weight-paragraph: 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-paragraph: 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-checkbox-checked: var(--color-form-label-text); --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; --size-checkbox: 2.2rem; --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: 6.4rem; } } @media (max-width: 700px) { :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; outline-color: var(--color-focus-outline); outline-offset: 8px; outline-width: 2px; } @media (prefers-reduced-motion: no-preference) { *:focus,:focus,[data-whatinput=keyboard] :focus,[data-whatinput=keyboard] a:focus { transition: outline-offset 0.25s ease; } } .external-link-icon { margin-left: 0.7rem; margin-right: 0.2rem; } @media (max-width: 480px) { .external-link-icon { height: 12px; margin-left: 0.4rem; transform: translateY(1px); width: 12px; } } :root { --border-radius-sub-menu: 0; --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-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-top-left-radius: var(--border-radius-sub-menu); border-top-right-radius: var(--border-radius-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); } } @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 150ms; 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 150ms; width: 18px; } .nav-toggle.is-active .hamburger-inner,.nav-toggle:not(.is-active):focus .hamburger-inner,.nav-toggle:not(.is-active):hover .hamburger-inner::after { 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); 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 150ms; } .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%; } .acf-block-preview .block,.is-root-container,body { color: var(--color-paragraph); font-family: var(--font-paragraph); font-size: var(--font-size-paragraph); -moz-osx-font-smoothing: grayscale; -webkit-font-smoothing: antialiased; font-weight: var(--font-weight-paragraph); line-height: var(--line-height-paragraph); text-rendering: geometricPrecision; } 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 150ms; } .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 150ms 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 150ms 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); } label,legend { color: var(--color-form-label-text); font-size: var(--font-size-input-fields); font-weight: var(--font-weight-semibold); } input + label { font-weight: unset; } 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); } select { background-image: url('data:image/svg+xml, %3Csvg width="12" height="9" viewBox="0 0 12 9" fill="none" xmlns="http://www.w3.org/2000/svg"%3E%3Cpath d="M2.049 1.552L6.22 6.268a.188.188 0 00.28 0l4.173-4.716" stroke="%23212121" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/%3E%3Cdefs%3E%3Cpath fill="none" transform="translate(.861 .45)" d="M0 0h10.544v7.95H0z"/%3E%3C/defs%3E%3C/svg%3E%0A'); 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); font-family: var(--font-paragraph); font-size: var(--font-size-input-fields); 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%; } input[type=checkbox],input[type=radio],select { -webkit-appearance: none; appearance: none; } input[type=checkbox],input[type=radio] { background-color: var(--color-background-input-field); border: 1px solid var(--color-border-forms); color: currentColor; display: grid; font: inherit; height: var(--size-checkbox); margin: 0; place-content: center; width: var(--size-checkbox); } input[type=radio],input[type=radio]::before { border-radius: 50%; } input[type=checkbox],input[type=checkbox]::before { border-radius: var(--border-radius-checkbox); } input[type=checkbox]::before,input[type=radio]::before { background-color: var(--color-checkbox-checked); background-image: url('data:image/svg+xml, %3Csvg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" width="16" heighg="16"%3E%3Cg class="nc-icon-wrapper" stroke-width="3" fill="%237effe1" stroke="%237effe1"%3E%3Cpolyline fill="none" stroke="%237effe1" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" points="1, 9 5, 13 15, 3" data-cap="butt"%3E%3C/polyline%3E%3C/g%3E%3C/svg%3E%0A'); background-position: 50%; background-size: var(--size-checkbox-marker) var(--size-checkbox-marker); border: 1px solid var(--color-checkbox-checked); content: ""; height: var(--size-checkbox); opacity: 0; transform: scale(0.8); transition: transform 0.2s; width: var(--size-checkbox); } input[type=checkbox]:checked::before,input[type=radio]:checked::before { opacity: 1; transform: scale(1); } input[type=checkbox]:checked,input[type=radio]:checked { background-color: transparent; border-color: transparent; } input[type=checkbox] + label:focus,input[type=checkbox] + label:hover,input[type=checkbox]:focus,input[type=checkbox]:hover,input[type=radio] + label:focus,input[type=radio] + label:hover,input[type=radio]:focus,input[type=radio]:hover { cursor: pointer; } .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 150ms; } .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 150ms; } .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 150ms; 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:not([type=checkbox]):not([type=radio]),.gform-body textarea { width: 100%; } .gform-body .ginput_container.ginput_container_textarea { display: flex; } .gform-body .gfield_checkbox,.gform-body .gfield_radio { display: grid; gap: 1rem; } .gform-body .gchoice { display: flex; gap: 1rem; } .gform-body .gfield_label { display: inline-flex; 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-paragraph); 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: clamp(42px, -25.7142857143px + 0.1410714286 * 100vw, 200px); margin-bottom: 2rem; } .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 > *,.article-content > [class^=wp-block-],.is-root-container > * { line-height: var(--line-height-paragraph); margin-left: auto; margin-right: auto; max-width: 800px; } @media (max-width: 840px) { .article-content > *,.article-content > [class^=wp-block-],.is-root-container > * { padding-left: var(--padding-container-horizontal); padding-right: var(--padding-container-horizontal); } .article-content > *.alignfull,.article-content > [class^=wp-block-].alignfull,.is-root-container > *.alignfull { padding-left: var(--padding-container-horizontal); padding-right: var(--padding-container-horizontal); 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-paragraph); 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-paragraph); } @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 150ms 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-paragraph); 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 { 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: inherit; } .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-paragraph); 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 150ms; } 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); } .entry-footer a,.site-footer a,.site-header a { text-decoration: none; } p { color: var(--color-paragraph); line-height: var(--line-height-paragraph); } /*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImdsb2JhbC5jc3MiLCJoZWxwZXJzL19zYW5pdGl6ZS5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL3Nhbml0aXplLmNzcy9yZWR1Y2UtbW90aW9uLmNzcyIsImhlbHBlcnMvX2JveC1tb2RlbC5zY3NzIiwiaGVscGVycy9faW1hZ2VzLnNjc3MiLCJ2YXJpYWJsZXMvX2NvbG9ycy5zY3NzIiwidmFyaWFibGVzL19mb250LWZhbWlseS5zY3NzIiwidmFyaWFibGVzL19mb250LXNpemUuc2NzcyIsImhlbHBlcnMvX3R5cG9ncmFwaHkuc2NzcyIsInZhcmlhYmxlcy9fZm9udC1mYWNlLnNjc3MiLCJ2YXJpYWJsZXMvX2Zvcm1zLnNjc3MiLCJ2YXJpYWJsZXMvX3NwYWNpbmdzLnNjc3MiLCJiYXNlL19hY2Nlc3NpYmlsaXR5LnNjc3MiLCJuYXZpZ2F0aW9uL19uYXYtZGVza3RvcC5zY3NzIiwibmF2aWdhdGlvbi9fbmF2LW1vYmlsZS5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2hhbWJ1cmdlcnMvX3Nhc3MvaGFtYnVyZ2Vycy9oYW1idXJnZXJzLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvaGFtYnVyZ2Vycy9fc2Fzcy9oYW1idXJnZXJzL19iYXNlLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvaGFtYnVyZ2Vycy9fc2Fzcy9oYW1idXJnZXJzL3R5cGVzL18zZHguc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9oYW1idXJnZXJzL19zYXNzL2hhbWJ1cmdlcnMvdHlwZXMvXzNkeC1yLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvaGFtYnVyZ2Vycy9fc2Fzcy9oYW1idXJnZXJzL3R5cGVzL18zZHkuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9oYW1idXJnZXJzL19zYXNzL2hhbWJ1cmdlcnMvdHlwZXMvXzNkeS1yLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvaGFtYnVyZ2Vycy9fc2Fzcy9oYW1idXJnZXJzL3R5cGVzL18zZHh5LnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvaGFtYnVyZ2Vycy9fc2Fzcy9oYW1idXJnZXJzL3R5cGVzL18zZHh5LXIuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9oYW1idXJnZXJzL19zYXNzL2hhbWJ1cmdlcnMvdHlwZXMvX2Fycm93LnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvaGFtYnVyZ2Vycy9fc2Fzcy9oYW1idXJnZXJzL3R5cGVzL19hcnJvdy1yLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvaGFtYnVyZ2Vycy9fc2Fzcy9oYW1idXJnZXJzL3R5cGVzL19hcnJvd2FsdC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2hhbWJ1cmdlcnMvX3Nhc3MvaGFtYnVyZ2Vycy90eXBlcy9fYXJyb3dhbHQtci5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2hhbWJ1cmdlcnMvX3Nhc3MvaGFtYnVyZ2Vycy90eXBlcy9fYXJyb3d0dXJuLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvaGFtYnVyZ2Vycy9fc2Fzcy9oYW1idXJnZXJzL3R5cGVzL19hcnJvd3R1cm4tci5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2hhbWJ1cmdlcnMvX3Nhc3MvaGFtYnVyZ2Vycy90eXBlcy9fYm9yaW5nLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvaGFtYnVyZ2Vycy9fc2Fzcy9oYW1idXJnZXJzL3R5cGVzL19jb2xsYXBzZS5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2hhbWJ1cmdlcnMvX3Nhc3MvaGFtYnVyZ2Vycy90eXBlcy9fY29sbGFwc2Utci5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2hhbWJ1cmdlcnMvX3Nhc3MvaGFtYnVyZ2Vycy90eXBlcy9fZWxhc3RpYy5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2hhbWJ1cmdlcnMvX3Nhc3MvaGFtYnVyZ2Vycy90eXBlcy9fZWxhc3RpYy1yLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvaGFtYnVyZ2Vycy9fc2Fzcy9oYW1idXJnZXJzL3R5cGVzL19lbXBoYXRpYy5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2hhbWJ1cmdlcnMvX3Nhc3MvaGFtYnVyZ2Vycy90eXBlcy9fZW1waGF0aWMtci5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2hhbWJ1cmdlcnMvX3Nhc3MvaGFtYnVyZ2Vycy90eXBlcy9fbWludXMuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9oYW1idXJnZXJzL19zYXNzL2hhbWJ1cmdlcnMvdHlwZXMvX3NsaWRlci5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2hhbWJ1cmdlcnMvX3Nhc3MvaGFtYnVyZ2Vycy90eXBlcy9fc2xpZGVyLXIuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9oYW1idXJnZXJzL19zYXNzL2hhbWJ1cmdlcnMvdHlwZXMvX3NwaW4uc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9oYW1idXJnZXJzL19zYXNzL2hhbWJ1cmdlcnMvdHlwZXMvX3NwaW4tci5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2hhbWJ1cmdlcnMvX3Nhc3MvaGFtYnVyZ2Vycy90eXBlcy9fc3ByaW5nLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvaGFtYnVyZ2Vycy9fc2Fzcy9oYW1idXJnZXJzL3R5cGVzL19zcHJpbmctci5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2hhbWJ1cmdlcnMvX3Nhc3MvaGFtYnVyZ2Vycy90eXBlcy9fc3RhbmQuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9oYW1idXJnZXJzL19zYXNzL2hhbWJ1cmdlcnMvdHlwZXMvX3N0YW5kLXIuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9oYW1idXJnZXJzL19zYXNzL2hhbWJ1cmdlcnMvdHlwZXMvX3NxdWVlemUuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9oYW1idXJnZXJzL19zYXNzL2hhbWJ1cmdlcnMvdHlwZXMvX3ZvcnRleC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2hhbWJ1cmdlcnMvX3Nhc3MvaGFtYnVyZ2Vycy90eXBlcy9fdm9ydGV4LXIuc2NzcyIsImxheW91dC9fZ2VuZXJhbC5zY3NzIiwidmFyaWFibGVzL19icmVha3BvaW50cy5zY3NzIiwibGF5b3V0L19wcmludC5zY3NzIiwibGF5b3V0L190eXBvZ3JhcGh5LnNjc3MiLCJsYXlvdXQvX3NpdGUtaGVhZGVyLnNjc3MiLCJsYXlvdXQvX3NpdGUtZm9vdGVyLnNjc3MiLCJsYXlvdXQvX2Zvcm1zLnNjc3MiLCJjb21wb25lbnRzL19idXR0b24uc2NzcyIsImNvbXBvbmVudHMvX2J1dHRvbi1zaXplLXNtYWxsLnNjc3MiLCJjb21wb25lbnRzL19idXR0b24tc2l6ZS1sYXJnZS5zY3NzIiwiY29tcG9uZW50cy9fYnV0dG9uLXN0eWxlLWdob3N0LnNjc3MiLCJsYXlvdXQvX2Jsb2cuc2NzcyIsImxheW91dC9fd29yZHByZXNzLnNjc3MiLCJmZWF0dXJlcy9fdG9wLnNjc3MiLCJmZWF0dXJlcy9fZ2FsbGVyeS5zY3NzIiwiZmVhdHVyZXMvX3BhZ2luYXRpb24uc2NzcyIsImZlYXR1cmVzL19ncmF2aXR5LWZvcm1zLnNjc3MiLCJ2aWV3cy9fc2VhcmNoLnNjc3MiLCJ2aWV3cy9fNDA0LnNjc3MiLCJ2aWV3cy9fY29tbWVudHMuc2NzcyIsImd1dGVuYmVyZy9sYXlvdXQvX2NvbnRlbnQuc2NzcyIsImd1dGVuYmVyZy9ibG9ja3MvX2NvcmUtYmxvY2txdW90ZS5zY3NzIiwiZ3V0ZW5iZXJnL2Jsb2Nrcy9fY29yZS1idXR0b25zLnNjc3MiLCJndXRlbmJlcmcvYmxvY2tzL19jb3JlLWNvZGUuc2NzcyIsImd1dGVuYmVyZy9ibG9ja3MvX2NvcmUtY29sdW1ucy5zY3NzIiwiZ3V0ZW5iZXJnL2Jsb2Nrcy9fY29yZS1jb3Zlci5zY3NzIiwiZ3V0ZW5iZXJnL2Jsb2Nrcy9fY29yZS1lbWJlZC5zY3NzIiwiZ3V0ZW5iZXJnL2Jsb2Nrcy9fY29yZS1zZXBhcmF0b3Iuc2NzcyIsImd1dGVuYmVyZy9ibG9ja3MvX2NvcmUtaGVhZGluZy5zY3NzIiwiZ3V0ZW5iZXJnL2Jsb2Nrcy9fY29yZS1pbWFnZS5zY3NzIiwiZ3V0ZW5iZXJnL2Jsb2Nrcy9fY29yZS1saXN0LnNjc3MiLCJndXRlbmJlcmcvYmxvY2tzL19jb3JlLXBhcmFncmFwaC5zY3NzIiwiZ3V0ZW5iZXJnL2Jsb2Nrcy9fY29yZS1wcmVmb3JtYXR0ZWQuc2NzcyIsImd1dGVuYmVyZy9ibG9ja3MvX2NvcmUtcHVsbHF1b3RlLnNjc3MiLCJndXRlbmJlcmcvYmxvY2tzL19jb3JlLXRhYmxlLnNjc3MiLCJndXRlbmJlcmcvYmxvY2tzL19jb3JlLXZlcnNlLnNjc3MiLCJndXRlbmJlcmcvYmxvY2tzL19jb3JlLXZpZGVvLnNjc3MiLCJndXRlbmJlcmcvYmxvY2tzL19ib3hlZC5zY3NzIiwiZ3V0ZW5iZXJnL2Jsb2Nrcy9fYnV0dG9uLWZpbGUuc2NzcyIsImd1dGVuYmVyZy9ibG9ja3MvX2Vycm9yLnNjc3MiLCJndXRlbmJlcmcvZm9ybWF0dGluZy9fYWxpZ24uc2NzcyIsImd1dGVuYmVyZy9mb3JtYXR0aW5nL19jYXB0aW9uLnNjc3MiLCJndXRlbmJlcmcvZm9ybWF0dGluZy9faW1nLnNjc3MiLCJndXRlbmJlcmcvZm9ybWF0dGluZy9fa2JkLnNjc3MiLCJndXRlbmJlcmcvZm9ybWF0dGluZy9fbGluay5zY3NzIiwiY29tcG9uZW50cy9fbGluay5zY3NzIiwiZ3V0ZW5iZXJnL2Zvcm1hdHRpbmcvX3BhcmFncmFwaC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGdCQUFnQjtBQ0VoQjs7O0VBQUE7QUFLQTtFQUdFLDRCQUFBLEVBQUEsTUFBQTtFQUNBLHNCQUFBLEVBQUEsTUFBQTtBRERGOztBQ0lBOzs7SUFBQTtBQUtBO0VBRUUsd0JBQUEsRUFBQSxNQUFBO0VBQ0EsdUJBQUEsRUFBQSxNQUFBO0FERkY7O0FDS0E7Ozs7Ozs7SUFBQTtBQVNBO0VBQ0UsZUFBQSxFQUFBLE1BQUE7RUFDQSxnQkFBQSxFQUFBLE1BQUE7RUFDQSx5QkFBQSxFQUFBLE1BQUE7RUFDQSxXQUFBLEVBQUEsTUFBQTtFQUNBLHdDQUFBLEVBQUEsTUFBQTtFQUNBLDhCQUFBO1VBQUEsc0JBQUEsRUFBQSxNQUFBO0FESEY7O0FDTUE7aUZBQUE7QUFHQTs7SUFBQTtBQUlBO0VBQ0UsU0FBQTtBRExGOztBQ1FBOzs7SUFBQTtBQUtBO0VBRUUsY0FBQSxFQUFBLE1BQUE7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eUY5aUlFO0VBSUUsY0FBQTtFQUNBLFdBQUE7QXpGb2pJSjtBeUZqaklFO0VBQ0UsZ0JBQUE7QXpGb2pJSjs7QTBGbmxJRTtFQUNFLGtCQUFBO0ExRnVsSUo7O0EyRjNsSUE7RUFDRSw2Q0FBQTtFQUNBLHlDQUFBO0VBQ0Esa0JBQUE7RUFDQSx3RUFBQTtFQUNBLDZCQUFBO0VBQ0EscUJBQUE7RUFDQSxnQkFBQTtFQUNBLGlCQUFBO0VBQ0EsdUNBQUE7RUFDQSxtQkFBQTtBM0Y4bElGOztBNEZ2bUlBO0VDRUUsNkJBQUE7RUFHQSwwQkFBQTtFQUNBLHFEQUFBO1VBQUEsNkNBQUE7RUFDQSwwQkFBQTtFQUNBLHFCQUFBO0E3RnVtSUY7QTZGcm1JRTtFQUVFLG1DQUFBO0VBQ0EsMkRBQUE7VUFBQSxtREFBQTtBN0ZzbUlKOztBNEYzbUlFO0VBQ0UscUJBQUE7QTVGZ25JSjs7QThGem5JQTtFQUNFLDZCQUFBO0VBQ0EseUNBQUE7QTlGNG5JRiIsImZpbGUiOiJnbG9iYWwuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiQGNoYXJzZXQgXCJVVEYtOFwiO1xuLyoqXG4gKiAxLiBBZGQgYm9yZGVyIGJveCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKiAyLiBCYWNrZ3JvdW5kcyBkbyBub3QgcmVwZWF0IGJ5IGRlZmF1bHQgKG9waW5pb25hdGVkKS5cbiAqL1xuKixcbjo6YmVmb3JlLFxuOjphZnRlciB7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7IC8qIDIgKi9cbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xufVxuXG4vKipcbiAgICogMS4gQWRkIHRleHQgZGVjb3JhdGlvbiBpbmhlcml0YW5jZSBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAgICogMi4gQWRkIHZlcnRpY2FsIGFsaWdubWVudCBpbmhlcml0YW5jZSBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAgICovXG46OmJlZm9yZSxcbjo6YWZ0ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IGluaGVyaXQ7IC8qIDEgKi9cbiAgdmVydGljYWwtYWxpZ246IGluaGVyaXQ7IC8qIDIgKi9cbn1cblxuLyoqXG4gICAqIDEuIFVzZSB0aGUgZGVmYXVsdCBjdXJzb3IgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAqIDIuIENoYW5nZSB0aGUgbGluZSBoZWlnaHQgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAqIDMuIEJyZWFrcyB3b3JkcyB0byBwcmV2ZW50IG92ZXJmbG93IGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgKiA0LiBVc2UgYSA0LXNwYWNlIHRhYiB3aWR0aCBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAgICogNS4gUmVtb3ZlIHRoZSBncmV5IGhpZ2hsaWdodCBvbiBsaW5rcyBpbiBpT1MgKG9waW5pb25hdGVkKS5cbiAgICogNi4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpbiBpT1MuXG4gICAqL1xuOndoZXJlKDpyb290KSB7XG4gIGN1cnNvcjogZGVmYXVsdDsgLyogMSAqL1xuICBsaW5lLWhlaWdodDogMS41OyAvKiAyICovXG4gIG92ZXJmbG93LXdyYXA6IGJyZWFrLXdvcmQ7IC8qIDMgKi9cbiAgdGFiLXNpemU6IDQ7IC8qIDQgKi9cbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDsgLyogNSAqL1xuICB0ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiA2ICovXG59XG5cbi8qIFNlY3Rpb25zXG4gICAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAgICogUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAqL1xuOndoZXJlKGJvZHkpIHtcbiAgbWFyZ2luOiAwO1xufVxuXG4vKipcbiAgICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2Ugb2YgYm9yZGVyIGNvbG9yIGluIEZpcmVmb3guXG4gICAqIDIuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIEZpcmVmb3guXG4gICAqL1xuOndoZXJlKGhyKSB7XG4gIGNvbG9yOiBpbmhlcml0OyAvKiAxICovXG4gIGhlaWdodDogMDsgLyogMiAqL1xufVxuXG4vKipcbiAgICogUmVtb3ZlIHRoZSBsaXN0IHN0eWxlIG9uIG5hdmlnYXRpb24gbGlzdHMgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAqL1xuOndoZXJlKG5hdikgOndoZXJlKG9sLCB1bCkge1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi8qKlxuICAgKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICAgKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gICAqIDMuIFByZXZlbnQgb3ZlcmZsb3cgb2YgdGhlIGNvbnRhaW5lciBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAgICovXG46d2hlcmUocHJlKSB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLyogMSAqL1xuICBmb250LXNpemU6IDFlbTsgLyogMiAqL1xuICBvdmVyZmxvdzogYXV0bzsgLyogMyAqL1xufVxuXG4vKipcbiAgICogQ2hhbmdlIHRoZSBmaWxsIGNvbG9yIHRvIG1hdGNoIHRoZSB0ZXh0IGNvbG9yIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgKi9cbjp3aGVyZShzdmc6bm90KFtmaWxsXSkpIHtcbiAgZmlsbDogY3VycmVudENvbG9yO1xufVxuXG4vKiBGb3Jtc1xuICAgKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gICAqIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBidXR0b25zIGluIGlPUyBhbmQgU2FmYXJpLlxuICAgKi9cbjp3aGVyZShidXR0b24sIFt0eXBlPWJ1dHRvbiBpXSwgW3R5cGU9cmVzZXQgaV0sIFt0eXBlPXN1Ym1pdCBpXSkge1xuICBhcHBlYXJhbmNlOiBidXR0b247XG59XG5cbi8qKlxuICAgKiAxLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmkuXG4gICAqIDMuIENoYW5nZSB0aGUgcmVzaXplIGRpcmVjdGlvbiBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAgICovXG46d2hlcmUodGV4dGFyZWEpIHtcbiAgbWFyZ2luOiAwOyAvKiAxICovXG4gIHJlc2l6ZTogdmVydGljYWw7IC8qIDMgKi9cbn1cblxuLyoqXG4gICAqIDEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaS5cbiAgICogMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4gICAqL1xuOndoZXJlKFt0eXBlPXNlYXJjaCBpXSkge1xuICBhcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8qIDEgKi9cbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7IC8qIDIgKi9cbn1cblxuLyoqXG4gICAqIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIFNhZmFyaS5cbiAgICovXG46Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG46Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi8qKlxuICAgKiBDb3JyZWN0IHRoZSB0ZXh0IHN0eWxlIG9mIHBsYWNlaG9sZGVycyBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkuXG4gICAqL1xuOjppbnB1dC1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBvcGFjaXR5OiAwLjU0O1xufVxuXG4vKipcbiAgICogUmVtb3ZlIHRoZSBpbm5lciBwYWRkaW5nIGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaSBvbiBtYWNPUy5cbiAgICovXG46Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICBhcHBlYXJhbmNlOiBub25lO1xufVxuXG4vKipcbiAgICogMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIHVwbG9hZCBidXR0b25zIGluIGlPUyBhbmQgU2FmYXJpLlxuICAgKiAyLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBTYWZhcmkuXG4gICAqL1xuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gIGFwcGVhcmFuY2U6IGJ1dHRvbjsgLyogMSAqL1xuICBmb250OiBpbmhlcml0OyAvKiAyICovXG59XG5cbi8qXG4gICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIFNhZmFyaS5cbiAgICovXG46d2hlcmUoZGV0YWlscyA+IHN1bW1hcnk6Zmlyc3Qtb2YtdHlwZSkge1xuICBkaXNwbGF5OiBsaXN0LWl0ZW07XG59XG5cbi8qIEFjY2Vzc2liaWxpdHlcbiAgICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICAgKiBDaGFuZ2UgdGhlIGN1cnNvciBvbiBidXN5IGVsZW1lbnRzIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgKi9cbjp3aGVyZShbYXJpYS1idXN5PXRydWUgaV0pIHtcbiAgY3Vyc29yOiBwcm9ncmVzcztcbn1cblxuLypcbiAgICogQ2hhbmdlIHRoZSBjdXJzb3Igb24gZGlzYWJsZWQsIG5vdC1lZGl0YWJsZSwgb3Igb3RoZXJ3aXNlXG4gICAqIGlub3BlcmFibGUgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAqL1xuOndoZXJlKFthcmlhLWRpc2FibGVkPXRydWUgaV0sIFtkaXNhYmxlZF0pIHtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cblxuLypcbiAgICogQ2hhbmdlIHRoZSBkaXNwbGF5IG9uIHZpc3VhbGx5IGhpZGRlbiBhY2Nlc3NpYmxlIGVsZW1lbnRzXG4gICAqIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgKi9cbjp3aGVyZShbYXJpYS1oaWRkZW49ZmFsc2UgaV1baGlkZGVuXSkge1xuICBkaXNwbGF5OiBpbml0aWFsO1xufVxuXG46d2hlcmUoW2FyaWEtaGlkZGVuPWZhbHNlIGldW2hpZGRlbl06bm90KDpmb2N1cykpIHtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xufVxuXG4vKlxuICogMS4gUmVtb3ZlIGFuaW1hdGlvbnMgd2hlbiBtb3Rpb24gaXMgcmVkdWNlZCAob3BpbmlvbmF0ZWQpLlxuICogMi4gUmVtb3ZlIGZpeGVkIGJhY2tncm91bmQgYXR0YWNobWVudHMgd2hlbiBtb3Rpb24gaXMgcmVkdWNlZCAob3BpbmlvbmF0ZWQpLlxuICogMy4gUmVtb3ZlIHRpbWVkIHNjcm9sbGluZyBiZWhhdmlvcnMgd2hlbiBtb3Rpb24gaXMgcmVkdWNlZCAob3BpbmlvbmF0ZWQpLlxuICogNC4gUmVtb3ZlIHRyYW5zaXRpb25zIHdoZW4gbW90aW9uIGlzIHJlZHVjZWQgKG9waW5pb25hdGVkKS5cbiAqL1xuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgKixcbjo6YmVmb3JlLFxuOjphZnRlciB7XG4gICAgYW5pbWF0aW9uLWRlbGF5OiAtMW1zICFpbXBvcnRhbnQ7IC8qIDEgKi9cbiAgICBhbmltYXRpb24tZHVyYXRpb246IDFtcyAhaW1wb3J0YW50OyAvKiAxICovXG4gICAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMSAhaW1wb3J0YW50OyAvKiAxICovXG4gICAgYmFja2dyb3VuZC1hdHRhY2htZW50OiBpbml0aWFsICFpbXBvcnRhbnQ7IC8qIDIgKi9cbiAgICBzY3JvbGwtYmVoYXZpb3I6IGF1dG8gIWltcG9ydGFudDsgLyogMyAqL1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzICFpbXBvcnRhbnQ7IC8qIDQgKi9cbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcyAhaW1wb3J0YW50OyAvKiA0ICovXG4gIH1cbn1cbmh0bWwsXG4qLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuICAvKiBhdXRvcHJlZml4ZXI6IGlnbm9yZSBuZXh0ICovXG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbmltZyB7XG4gIC8qIGF1dG9wcmVmaXhlcjogaWdub3JlIG5leHQgKi9cbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG59XG5cbi5pbWFnZS1iYWNrZ3JvdW5kID4gaW1nIHtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG59XG5cbi5pbWFnZS1iYWNrZ3JvdW5kIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uaW1hZ2UtYmFja2dyb3VuZCA+IGltZyxcbi5pbWFnZS1iYWNrZ3JvdW5kLWxheWVyIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICBsZWZ0OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDA7XG59XG5cbjpyb290IHtcbiAgLS1jb2xvci1ibGFjazogIzIyMjtcbiAgLS1jb2xvci1ibGFjay1yb2NrOiAjMmIzMDNjO1xuICAtLWNvbG9yLWJsdWUtY2hhbGs6ICNlY2U2ZjI7XG4gIC0tY29sb3ItZWFzdC1iYXk6ICM1NDU3NzM7XG4gIC0tY29sb3ItcGF0dGVucy1ibHVlOiAjZWFmMWY4O1xuICAtLWNvbG9yLXNjaWVuY2UtYmx1ZTogIzAwNDlkMTtcbiAgLS1jb2xvci1zY29ycGlvbjogIzVmNWY1ZjtcbiAgLS1jb2xvci12YWxoYWxsYTogIzJhMmQzZTtcbiAgLS1jb2xvci13aGl0ZTogI2ZmZjtcbiAgLS1jb2xvci1oZWFkaW5nOiB2YXIoLS1jb2xvci1tYWluKTtcbiAgLS1jb2xvci1tYWluOiB2YXIoLS1jb2xvci12YWxoYWxsYSk7XG4gIC0tY29sb3ItcGFyYWdyYXBoOiB2YXIoLS1jb2xvci1lYXN0LWJheSk7XG4gIC0tY29sb3ItbGluay1ib3JkZXItYm90dG9tOiB2YXIoLS1jb2xvci1zY2llbmNlLWJsdWUpO1xuICAtLWNvbG9yLWxpbmstYm9yZGVyLWZvY3VzOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gIC0tY29sb3ItbGluay1jb21tZW50OiB2YXIoLS1jb2xvci1zY29ycGlvbik7XG4gIC0tY29sb3ItbGluay1jb21tZW50LXRpbWUtYW5jaG9yOiB2YXIoLS1jb2xvci1lYXN0LWJheSk7XG4gIC0tY29sb3ItbGluay1lZGl0LWJhY2tncm91bmQtaG92ZXI6IHZhcigtLWNvbG9yLXBhdHRlbnMtYmx1ZSk7XG4gIC0tY29sb3ItbGluay1lZGl0LWJvcmRlcjogdmFyKC0tY29sb3ItcGF0dGVucy1ibHVlKTtcbiAgLS1jb2xvci1saW5rLWVkaXQtdGV4dDogY29sb3IuYWRqdXN0KCNlYWYxZjgsIC0yMCUpO1xuICAtLWNvbG9yLWxpbmstZWRpdC10ZXh0LWhvdmVyOiB2YXIoLS1jb2xvci1lYXN0LWJheSk7XG4gIC0tY29sb3ItbGluay10ZXh0OiB2YXIoLS1jb2xvci1zY2llbmNlLWJsdWUpO1xuICAtLWNvbG9yLWxpbmstdGV4dC1mb2N1czogdmFyKC0tY29sb3ItYmxhY2spO1xuICAtLWNvbG9yLWxpbmstdGV4dC1ob3ZlcjogdmFyKC0tY29sb3ItYmxhY2spO1xuICAtLWNvbG9yLWxpbmstYmFja2dyb3VuZC1ob3ZlcjogdmFyKC0tY29sb3ItbGluay10ZXh0KTtcbiAgLS1jb2xvci1iYWNrZ3JvdW5kLWNvZGUtYmxvY2s6IHZhcigtLWNvbG9yLWJsYWNrLXJvY2spO1xuICAtLWNvbG9yLWJhY2tncm91bmQtY29kZS1pbmxpbmU6ICNmOWYyZjQ7XG4gIC0tY29sb3ItYmFja2dyb3VuZC1kZWZhdWx0OiAjZjBmMGYwO1xuICAtLWNvbG9yLWJhY2tncm91bmQtc2hhZGU6ICMwMzA2MWI7XG4gIC0tY29sb3ItYmFja2dyb3VuZC10YWJsZS1jZWxsLW9kZDogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAtLWNvbG9yLWJhY2tncm91bmQtdGFibGUtY2VsbC1ldmVuOiAjZjNmM2YzO1xuICAtLWNvbG9yLWJhY2tncm91bmQtdG9wOiAjZjVmNWY1O1xuICAtLWNvbG9yLWJhY2tncm91bmQtdG9wLWhvdmVyOiAjZjBmMGYwO1xuICAtLWNvbG9yLWJhY2tncm91bmQtdGFnOiB2YXIoLS1jb2xvci1wYXR0ZW5zLWJsdWUpO1xuICAtLWNvbG9yLWJsb2NrcXVvdGU6IHZhcigtLWNvbG9yLXNjaWVuY2UtYmx1ZSk7XG4gIC0tY29sb3ItY29tbWVudC10ZXh0OiB2YXIoLS1jb2xvci1lYXN0LWJheSk7XG4gIC0tY29sb3ItY29tbWVudC1hdXRob3ItdGV4dDogdmFyKC0tY29sb3ItZWFzdC1iYXkpO1xuICAtLWNvbG9yLXRhZy1ib3JkZXI6IHJnYig2IDIyIDQxIC8gLjEpO1xuICAtLWNvbG9yLXRhZy1ib3JkZXItaG92ZXI6IHJnYig2IDIyIDQxIC8gLjQpO1xuICAtLWNvbG9yLXRhZy10ZXh0OiB2YXIoLS1jb2xvci1ibGFjayk7XG4gIC0tY29sb3ItY2F0ZWdvcnktYm9yZGVyOiAjY2RjZmQ0O1xuICAtLWNvbG9yLWNhdGVnb3J5LXRleHQ6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgLS1jb2xvci1jYXB0aW9uOiAjNWM1YzZhO1xuICAtLWNvbG9yLWNvZGUtYmxvY2s6ICNjNzI1NGU7XG4gIC0tY29sb3ItY29kZS10ZXh0OiAjZjVmNWY1O1xuICAtLWNvbG9yLWtiZC1ib3JkZXI6ICNjY2M7XG4gIC0tY29sb3Ita2JkLWJhY2tncm91bmQ6IHZhcigtLWNvbG9yLXBhdHRlbnMtYmx1ZSk7XG4gIC0tY29sb3ItcGFnaW5hdGlvbi10ZXh0OiB2YXIoLS1jb2xvci12YWxoYWxsYSk7XG4gIC0tY29sb3ItcGFnaW5hdGlvbi1iYWNrZ3JvdW5kLWhvdmVyOiB2YXIoLS1jb2xvci12YWxoYWxsYSk7XG4gIC0tY29sb3ItcGFnaW5hdGlvbi1ib3JkZXItaG92ZXI6IHZhcigtLWNvbG9yLXZhbGhhbGxhKTtcbiAgLS1jb2xvci1wYWdpbmF0aW9uLXRleHQtaG92ZXI6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgLS1jb2xvci1wYWdpbmF0aW9uLWJhY2tncm91bmQtY3VycmVudDogdmFyKC0tY29sb3ItdmFsaGFsbGEpO1xuICAtLWNvbG9yLXBhZ2luYXRpb24tYm9yZGVyLWN1cnJlbnQ6IHZhcigtLWNvbG9yLXZhbGhhbGxhKTtcbiAgLS1jb2xvci1wYWdpbmF0aW9uLXRleHQtY3VycmVudDogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAtLWNvbG9yLXRvcC1hcnJvdy1kYXJrOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gIC0tY29sb3ItdG9wLWFycm93LWxpZ2h0OiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIC0tY29sb3ItZXJyb3ItYmxvY2stYm9yZGVyOiAjYWRiMmFkO1xuICAtLWNvbG9yLWVycm9yLWJsb2NrLWJhY2tncm91bmQ6ICNmOWY5Zjk7XG4gIC0tY29sb3ItZXJyb3I6ICNjYzJlMmU7XG4gIC0tY29sb3Itc3VjY2VzczogIzIxYWExNDtcbiAgLS1jb2xvci13YXJuaW5nOiAjY2M3NTJlO1xuICAtLWNvbG9yLWZvY3VzLW91dGxpbmU6ICM3YjQ2ZTE7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LWRpc3BsYXk6IGF1dG87XG4gIGZvbnQtZmFtaWx5OiBcIkludGVyXCI7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgc3JjOiB1cmwoXCIuLi8uLi9mb250cy9pbnRlci00MDAud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCIuLi8uLi9mb250cy9pbnRlci00MDAud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uLy4uL2ZvbnRzL2ludGVyLTQwMC50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIik7XG59XG5AZm9udC1mYWNlIHtcbiAgZm9udC1kaXNwbGF5OiBhdXRvO1xuICBmb250LWZhbWlseTogXCJJbnRlclwiO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHNyYzogdXJsKFwiLi4vLi4vZm9udHMvaW50ZXItNDAwLWl0YWxpYy53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcIi4uLy4uL2ZvbnRzL2ludGVyLTQwMC1pdGFsaWMud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uLy4uL2ZvbnRzL2ludGVyLTQwMC1pdGFsaWMudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpO1xufVxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZGlzcGxheTogYXV0bztcbiAgZm9udC1mYW1pbHk6IFwiSW50ZXJcIjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNTAwO1xuICBzcmM6IHVybChcIi4uLy4uL2ZvbnRzL2ludGVyLTUwMC53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcIi4uLy4uL2ZvbnRzL2ludGVyLTUwMC53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiLi4vLi4vZm9udHMvaW50ZXItNTAwLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtcbn1cbkBmb250LWZhY2Uge1xuICBmb250LWRpc3BsYXk6IGF1dG87XG4gIGZvbnQtZmFtaWx5OiBcIkludGVyXCI7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgc3JjOiB1cmwoXCIuLi8uLi9mb250cy9pbnRlci02MDAud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCIuLi8uLi9mb250cy9pbnRlci02MDAud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uLy4uL2ZvbnRzL2ludGVyLTYwMC50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIik7XG59XG5AZm9udC1mYWNlIHtcbiAgZm9udC1kaXNwbGF5OiBhdXRvO1xuICBmb250LWZhbWlseTogXCJJbnRlclwiO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHNyYzogdXJsKFwiLi4vLi4vZm9udHMvaW50ZXItNzAwLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiLi4vLi4vZm9udHMvaW50ZXItNzAwLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi8uLi9mb250cy9pbnRlci03MDAudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpO1xufVxuOnJvb3Qge1xuICAtLWZvbnQtc2VyaWY6IHNhbnMtc2VyaWY7XG4gIC0tZm9udC1zYW5zOiBcIkludGVyXCIsIC1hcHBsZS1zeXN0ZW0sIFwiQmxpbmtNYWNTeXN0ZW1Gb250XCIsIFwiU2Vnb2UgVUlcIiwgXCJSb2JvdG9cIiwgXCJPeHlnZW4tU2Fuc1wiLCBcIlVidW50dVwiLCBcIkNhbnRhcmVsbFwiLCBcIkhlbHZldGljYSBOZXVlXCIsIHNhbnMtc2VyaWY7XG4gIC0tZm9udC1tb25vc3BhY2U6IFwiSW5jb25zb2xhdGFcIiwgXCJNZW5sb1wiLCBcIk1vbmFjb1wiLCBcIkNvbnNvbGFzXCIsIFwiQW5kYWxlIE1vbm9cIiwgXCJCaXRzdHJlYW0gVmVyYSBTYW5zIE1vbm9cIiwgXCJDb3VyaWVyIE5ld1wiLCBtb25vc3BhY2U7XG4gIC0tZm9udC1wYXJhZ3JhcGg6IHZhcigtLWZvbnQtc2Fucyk7XG4gIC0tZm9udC1oZWFkaW5nOiB2YXIoLS1mb250LXNhbnMpO1xufVxuXG46cm9vdCB7XG4gIC0tZm9udC1zaXplLWhlcm86IDUycHg7XG4gIC0tZm9udC1zaXplLWgxOiA0MHB4O1xuICAtLWZvbnQtc2l6ZS1oMjogMzBweDtcbiAgLS1mb250LXNpemUtaDM6IDI0cHg7XG4gIC0tZm9udC1zaXplLWg0OiAyMHB4O1xuICAtLWZvbnQtc2l6ZS1oNTogMTZweDtcbiAgLS1mb250LXNpemUtaDY6IDE0cHg7XG4gIC0tZm9udC1zaXplLTE0OiAxNHB4O1xuICAtLWZvbnQtc2l6ZS0xNTogMTVweDtcbiAgLS1mb250LXNpemUtMTY6IDE2cHg7XG4gIC0tZm9udC1zaXplLTE3OiAxN3B4O1xuICAtLWZvbnQtc2l6ZS0xODogMThweDtcbiAgLS1mb250LXNpemUtMjA6IDIwcHg7XG4gIC0tZm9udC1zaXplLTIyOiAyMnB4O1xuICAtLWZvbnQtc2l6ZS1wYXJhZ3JhcGg6IHZhcigtLWZvbnQtc2l6ZS0xOCk7XG4gIC0tZm9udC1zaXplLW5hdi10b2dnbGUtbGFiZWw6IDE1cHg7XG4gIC0tZm9udC1zaXplLWNhcHRpb25zOiAxNXB4O1xuICAtLWxpbmUtaGVpZ2h0LWhlYWRpbmdzOiAxLjU7XG4gIC0tbGluZS1oZWlnaHQtY29yZS1oZWFkaW5nOiAxLjIzO1xuICAtLWxpbmUtaGVpZ2h0LXBhcmFncmFwaDogMS43O1xuICAtLWZvbnQtd2VpZ2h0LXJlZ3VsYXI6IDQwMDtcbiAgLS1mb250LXdlaWdodC1tZWRpdW06IDUwMDtcbiAgLS1mb250LXdlaWdodC1zZW1pYm9sZDogNjAwO1xuICAtLWZvbnQtd2VpZ2h0LWJvbGQ6IDcwMDtcbiAgLS1mb250LXdlaWdodC1wYXJhZ3JhcGg6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICAtLWZvbnQtd2VpZ2h0LWhlYWRpbmdzOiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICA6cm9vdCB7XG4gICAgLS1mb250LXNpemUtaGVybzogMzhweDtcbiAgICAtLWZvbnQtc2l6ZS1oMTogMzJweDtcbiAgICAtLWZvbnQtc2l6ZS1oMjogMjRweDtcbiAgICAtLWZvbnQtc2l6ZS1oMzogMjFweDtcbiAgICAtLWZvbnQtc2l6ZS1oNDogMThweDtcbiAgICAtLWZvbnQtc2l6ZS1oNTogMTRweDtcbiAgICAtLWZvbnQtc2l6ZS1oNjogMTJweDtcbiAgICAtLWZvbnQtc2l6ZS1wYXJhZ3JhcGg6IDE2cHg7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA0MjBweCkge1xuICA6cm9vdCB7XG4gICAgLS1mb250LXNpemUtMTY6IDE0cHg7XG4gICAgLS1mb250LXNpemUtbmF2LXRvZ2dsZS1sYWJlbDogMTNweDtcbiAgfVxufVxuXG46cm9vdCB7XG4gIC0tY29sb3ItYmFja2dyb3VuZC1pbnB1dC1maWVsZDogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAtLWNvbG9yLWZvcm0tdGV4dDogdmFyKC0tY29sb3ItcGFyYWdyYXBoKTtcbiAgLS1jb2xvci1mb3JtLWxhYmVsLXRleHQ6IHZhcigtLWNvbG9yLWZvcm0tdGV4dCk7XG4gIC0tY29sb3ItcmVxdWlyZWQtbGFiZWwtdGV4dDogdmFyKC0tY29sb3ItZm9ybS10ZXh0KTtcbiAgLS1jb2xvci1ib3JkZXItZm9ybXM6IHZhcigtLWNvbG9yLXBhcmFncmFwaCk7XG4gIC0tY29sb3ItYm9yZGVyLWZvcm1zLWZvY3VzOiB2YXIoLS1jb2xvci1wYXJhZ3JhcGgpO1xuICAtLWNvbG9yLWJ1dHRvbjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAtLWNvbG9yLWJ1dHRvbi1ob3ZlcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAtLWNvbG9yLWJ1dHRvbi1iYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1lYXN0LWJheSk7XG4gIC0tY29sb3ItYnV0dG9uLWJhY2tncm91bmQtaG92ZXI6IHZhcigtLWNvbG9yLXZhbGhhbGxhKTtcbiAgLS1jb2xvci1jaGVja2JveDogdmFyKC0tY29sb3ItZWFzdC1iYXkpO1xuICAtLWNvbG9yLWNoZWNrYm94LW91dGxpbmU6IDAgMCAwIDNweCByZ2IoODQgODcgMTE1IC8gLjIpO1xuICAtLWNvbG9yLWNoZWNrYm94LWJvcmRlci1ob3ZlcjogY29sb3IuYWRqdXN0KCM1NDU3NzMsIDE1JSk7XG4gIC0tY29sb3ItY2hlY2tib3gtY2hlY2tlZDogdmFyKC0tY29sb3ItZm9ybS1sYWJlbC10ZXh0KTtcbiAgLS1jb2xvci1wbGFjZWhvbGRlcjogdmFyKC0tY29sb3ItcGFyYWdyYXBoKTtcbiAgLS1jb2xvci1wbGFjZWhvbGRlci1mb2N1czogdmFyKC0tY29sb3ItYmxhY2spO1xuICAtLW9wYWNpdHktcGxhY2Vob2xkZXI6IC40O1xuICAtLW9wYWNpdHktcGxhY2Vob2xkZXItZm9jdXM6IC44O1xuICAtLWJvcmRlci1yYWRpdXMtY2hlY2tib3g6IDNweDtcbiAgLS1ib3JkZXItcmFkaXVzLWlucHV0LWZpZWxkOiAzcHg7XG4gIC0tYm9yZGVyLXJhZGl1cy1zZWxlY3Q6IDNweDtcbiAgLS1ib3JkZXItd2lkdGgtY2hlY2tib3g6IDFweDtcbiAgLS1ib3JkZXItd2lkdGgtaW5wdXQtZmllbGQ6IDFweDtcbiAgLS1mb250LXNpemUtaW5wdXQtZmllbGRzOiB2YXIoLS1mb250LXNpemUtMTcpO1xuICAtLWZvbnQtc2l6ZS1pbnB1dC1sYWJlbHM6IHZhcigtLWZvbnQtc2l6ZS1pbnB1dC1maWVsZHMpO1xuICAtLWZvbnQtc2l6ZS1yZXF1aXJlZC10ZXh0LWxhYmVsOiB2YXIoLS1mb250LXNpemUtaW5wdXQtZmllbGRzKTtcbiAgLS1mb250LXNpemUtcmVxdWlyZWQtYXN0ZXJpc2stbGFiZWw6IDIycHg7XG4gIC0tZm9ybS1jb2x1bW4tZ2FwOiAycmVtO1xuICAtLWZvcm0tcm93LWdhcDogMnJlbTtcbiAgLS1mb3JtLXJlcXVpcmVkLWdhcDogLjVyZW07XG4gIC0tZm9ybS1saW5lLWhlaWdodDogMjRweDtcbiAgLS1mb3JtLXBhZGRpbmctdmVydGljYWw6IDFyZW07XG4gIC0tZm9ybS1wYWRkaW5nLWhvcml6b250YWw6IDEuNXJlbTtcbiAgLS1nYXAtY2hlY2tib3g6IDEwcHg7XG4gIC0tZ2FwLXNlbGVjdC1pY29uOiAxLjVyZW07XG4gIC0tc2l6ZS1jaGVja2JveDogMi4ycmVtO1xuICAtLXNpemUtY2hlY2tib3gtbWFya2VyOiAxMnB4O1xuICAtLXNpemUtcmFkaW8tYnV0dG9uOiAxNnB4O1xuICAtLXNpemUtcmFkaW8tYnV0dG9uLW1hcmtlcjogOHB4O1xufVxuXG46cm9vdCB7XG4gIC0tZ3JpZC1nYXA6IDQuOHJlbTtcbiAgLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsOiAycmVtO1xuICAtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwtbGFyZ2U6IDYuNHJlbTtcbiAgLS1wYWRkaW5nLWNvbnRhaW5lci12ZXJ0aWNhbDogNi40cmVtO1xuICAtLXBhZGRpbmctc2l0ZS1oZWFkZXItdmVydGljYWw6IDJyZW07XG4gIC0tcGFkZGluZy1ibG9jazogOHJlbTtcbiAgLS1tYXJnaW4tYmV0d2Vlbi10ZXh0LWVsZW1lbnRzOiA0cmVtO1xuICAtLW1hcmdpbi13cC1ibG9jay1pbWFnZTogNHJlbTtcbiAgLS1tYXJnaW4tYmV0d2Vlbi1wYXJhZ3JhcGhzOiAyLjdyZW07XG59XG5AbWVkaWEgKG1heC13aWR0aDogMTU5MHB4KSB7XG4gIDpyb290IHtcbiAgICAtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWw6IDYuNHJlbTtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDcwMHB4KSB7XG4gIDpyb290IHtcbiAgICAtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWw6IDJyZW07XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA5NjBweCkge1xuICA6cm9vdCB7XG4gICAgLS1wYWRkaW5nLXNpdGUtaGVhZGVyLXZlcnRpY2FsOiAycmVtO1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gIDpyb290IHtcbiAgICAtLWdyaWQtZ2FwOiAzLjJyZW07XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA3NzBweCkge1xuICA6cm9vdCB7XG4gICAgLS1ncmlkLWdhcDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gICAgLS1wYWRkaW5nLWNvbnRhaW5lci12ZXJ0aWNhbDogNXJlbTtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDYwMHB4KSB7XG4gIDpyb290IHtcbiAgICAtLXBhZGRpbmctYmxvY2s6IDZyZW07XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICA6cm9vdCB7XG4gICAgLS1wYWRkaW5nLWNvbnRhaW5lci12ZXJ0aWNhbDogNHJlbTtcbiAgfVxufVxuXG4uc2NyZWVuLXJlYWRlci10ZXh0IHtcbiAgYm9yZGVyOiAwO1xuICBjbGlwOiByZWN0KDFweCwgMXB4LCAxcHgsIDFweCk7XG4gIGNsaXAtcGF0aDogaW5zZXQoNTAlKTtcbiAgaGVpZ2h0OiAxcHg7XG4gIG1hcmdpbjogLTFweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZzogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xuICB3b3JkLXdyYXA6IG5vcm1hbCAhaW1wb3J0YW50O1xufVxuLnNjcmVlbi1yZWFkZXItdGV4dDpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYm94LXNoYWRvdzogMCAwIDJweCAycHggcmdiYSgyMiwgMjIsIDIyLCAwLjYpO1xuICBjbGlwOiBhdXRvO1xuICBjbGlwLXBhdGg6IG5vbmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDEuN3JlbTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xuICBoZWlnaHQ6IGF1dG87XG4gIGxlZnQ6IDVweDtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgcGFkZGluZzogMTVweCAyM3B4IDE0cHg7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdG9wOiA1cHg7XG4gIHdpZHRoOiBhdXRvO1xuICB6LWluZGV4OiAxMDAwMDA7XG59XG4uc2NyZWVuLXJlYWRlci10ZXh0LnNraXAtbGluayB7XG4gIG1hcmdpbjogNXB4O1xufVxuLnNjcmVlbi1yZWFkZXItdGV4dC5za2lwLWxpbms6Zm9jdXMge1xuICBjb2xvcjogY3VycmVudENvbG9yO1xufVxuXG5bZGF0YS13aGF0aW5wdXQ9bW91c2VdICo6Zm9jdXMsXG5bZGF0YS13aGF0aW5wdXQ9dG91Y2hdICo6Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xufVxuXG5bZGF0YS13aGF0aW5wdXQ9a2V5Ym9hcmRdIGE6Zm9jdXMsXG5bZGF0YS13aGF0aW5wdXQ9a2V5Ym9hcmRdIGlucHV0OmZvY3VzLFxuW2RhdGEtd2hhdGlucHV0PWtleWJvYXJkXSBidXR0b246Zm9jdXMsXG5bZGF0YS13aGF0aW5wdXQ9a2V5Ym9hcmRdIHNlbGVjdDpmb2N1cyxcbltkYXRhLXdoYXRpbnB1dD1rZXlib2FyZF0gdGV4dGFyZWE6Zm9jdXMsXG5bZGF0YS13aGF0aW5wdXQ9a2V5Ym9hcmRdIGRpdlt0YWJpbmRleF06Zm9jdXMge1xuICBvcGFjaXR5OiAxO1xuICBvdXRsaW5lLWNvbG9yOiB2YXIoLS1jb2xvci1mb2N1cy1vdXRsaW5lKTtcbiAgb3V0bGluZS1vZmZzZXQ6IDhweDtcbiAgb3V0bGluZS13aWR0aDogMnB4O1xufVxuXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IG5vLXByZWZlcmVuY2UpIHtcbiAgOmZvY3VzLFxuKjpmb2N1cyxcbltkYXRhLXdoYXRpbnB1dD1rZXlib2FyZF0gOmZvY3VzLFxuW2RhdGEtd2hhdGlucHV0PWtleWJvYXJkXSBhOmZvY3VzIHtcbiAgICB0cmFuc2l0aW9uOiBvdXRsaW5lLW9mZnNldCAwLjI1cyBlYXNlO1xuICB9XG59XG4uZXh0ZXJuYWwtbGluay1pY29uIHtcbiAgbWFyZ2luLWxlZnQ6IDAuN3JlbTtcbiAgbWFyZ2luLXJpZ2h0OiAwLjJyZW07XG59XG5AbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgLmV4dGVybmFsLWxpbmstaWNvbiB7XG4gICAgaGVpZ2h0OiAxMnB4O1xuICAgIG1hcmdpbi1sZWZ0OiAwLjRyZW07XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDFweCk7XG4gICAgd2lkdGg6IDEycHg7XG4gIH1cbn1cblxuOnJvb3Qge1xuICAtLWJvcmRlci1yYWRpdXMtc3ViLW1lbnU6IDA7XG4gIC0tZHJvcGRvd24tdG9nZ2xlLXNpemU6IDEycHg7XG4gIC0tZ2FwLWRyb3Bkb3duOiAxcmVtO1xuICAtLWdhcC1iZXR3ZWVuLWRyb3Bkb3duLXRvZ2dsZTogMS41cmVtO1xuICAtLWdhcC1tYWluLWxldmVsLWhvcml6b250YWw6IDIuNXJlbTtcbiAgLS1wYWRkaW5nLW1haW4tbGV2ZWwtaG9yaXpvbnRhbDogMDtcbiAgLS1wYWRkaW5nLW1haW4tbGV2ZWwtdmVydGljYWw6IC42cmVtO1xuICAtLXBhZGRpbmctc3ViLW1lbnUtdmVydGljYWw6IC42cmVtO1xuICAtLXBhZGRpbmctc3ViLW1lbnUtbGluay12ZXJ0aWNhbDogLjZyZW07XG4gIC0tcGFkZGluZy1zdWItbWVudS1saW5rLWhvcml6b250YWw6IDEuNXJlbTtcbiAgLS13aWR0aC1zdWItbWVudTogMjJyZW07XG4gIC0tY29sb3ItYmFja2dyb3VuZC1uYXYtZGVza3RvcDogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAtLWNvbG9yLWJhY2tncm91bmQtc3ViLW1lbnU6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgLS1jb2xvci1kcm9wZG93bi10b2dnbGU6IHZhcigtLWNvbG9yLXZhbGhhbGxhKTtcbiAgLS1jb2xvci1zdWItbWVudTogdmFyKC0tY29sb3ItdmFsaGFsbGEpO1xuICAtLWNvbG9yLWhvdmVyLW1haW4tbGV2ZWw6IHZhcigtLWNvbG9yLWxpbmstdGV4dCk7XG4gIC0tY29sb3ItaG92ZXItc3ViLW1lbnU6IHZhcigtLWNvbG9yLXZhbGhhbGxhKTtcbiAgLS1jb2xvci1tYWluLWxldmVsOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gIC0tY29sb3ItY3VycmVudDogdmFyKC0tY29sb3ItbGluay10ZXh0KTtcbiAgLS1mb250LXNpemUtbWFpbi1sZXZlbDogdmFyKC0tZm9udC1zaXplLTE2KTtcbiAgLS1mb250LXNpemUtc3ViLW1lbnU6IHZhcigtLWZvbnQtc2l6ZS0xNik7XG4gIC0tZm9udC13ZWlnaHQtbWFpbi1sZXZlbDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XG4gIC0tZm9udC13ZWlnaHQtc3ViLW1lbnU6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xufVxuXG4uc2l0ZS1oZWFkZXIgdWwge1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk2MHB4KSB7XG4gIC5uYXYtY29udGFpbmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLm5hdi10b2dnbGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLm5hdi1wcmltYXJ5IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgfVxuICAubWVudS1pdGVtcyB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGdhcDogdmFyKC0tZ2FwLW1haW4tbGV2ZWwtaG9yaXpvbnRhbCk7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG4gIC5tZW51LWl0ZW0ge1xuICAgIG1hcmdpbjogMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cbiAgLm1lbnUtaXRlbSA+IGEge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLW1haW4tbGV2ZWwpO1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLW1haW4tbGV2ZWwpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1tYWluLWxldmVsKTtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IHZhcigtLXBhZGRpbmctbWFpbi1sZXZlbC12ZXJ0aWNhbCk7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1wYWRkaW5nLW1haW4tbGV2ZWwtaG9yaXpvbnRhbCk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKC0tcGFkZGluZy1tYWluLWxldmVsLWhvcml6b250YWwpO1xuICAgIHBhZGRpbmctdG9wOiB2YXIoLS1wYWRkaW5nLW1haW4tbGV2ZWwtdmVydGljYWwpO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIH1cbiAgLm1lbnUtaXRlbSAuc3ViLW1lbnUgYSB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBjb2xvcjogdmFyKC0tY29sb3Itc3ViLW1lbnUpO1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXN1Yi1tZW51KTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtc3ViLW1lbnUpO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgcGFkZGluZy1ib3R0b206IHZhcigtLXBhZGRpbmctc3ViLW1lbnUtbGluay12ZXJ0aWNhbCk7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1wYWRkaW5nLXN1Yi1tZW51LWxpbmstaG9yaXpvbnRhbCk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKC0tcGFkZGluZy1zdWItbWVudS1saW5rLWhvcml6b250YWwpO1xuICAgIHBhZGRpbmctdG9wOiB2YXIoLS1wYWRkaW5nLXN1Yi1tZW51LWxpbmstdmVydGljYWwpO1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIH1cbiAgLm1lbnUtaXRlbS5jdXJyZW50LW1lbnUtcGFyZW50ID4gYSxcbi5tZW51LWl0ZW0uY3VycmVudC1tZW51LWl0ZW0gPiBhIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItY3VycmVudCk7XG4gIH1cbiAgLm1lbnUtaXRlbS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuIGEge1xuICAgIHRyYW5zaXRpb246IHBhZGRpbmcgMC4ycyBjdWJpYy1iZXppZXIoMC4xOSwgMSwgMC4yMiwgMSksIGJhY2tncm91bmQtY29sb3IgMC4ycyBjdWJpYy1iZXppZXIoMC4xOSwgMSwgMC4yMiwgMSk7XG4gIH1cbiAgLm1lbnUtaXRlbSA+IGE6aG92ZXIsXG4ubWVudS1pdGVtID4gYTpmb2N1cyB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWhvdmVyLW1haW4tbGV2ZWwpO1xuICB9XG4gIC5tZW51LWl0ZW0gLnN1Yi1tZW51IGE6aG92ZXIsXG4ubWVudS1pdGVtIC5zdWItbWVudSBhOmZvY3VzIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItaG92ZXItc3ViLW1lbnUpO1xuICB9XG4gIC5zdWItbWVudS50b2dnbGVkLW9uIGEsXG4uc3ViLW1lbnUudG9nZ2xlZC1vbiAuc3ViLW1lbnUgYSxcbi5tZW51LWl0ZW0ubWVudS1pdGVtLWhhcy1jaGlsZHJlbi5ob3Zlci1pbnRlbnQgLnN1Yi1tZW51IGEsXG4ubWVudS1pdGVtLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW46Zm9jdXMgLnN1Yi1tZW51IGEge1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1wYWRkaW5nLXN1Yi1tZW51LWxpbmstdmVydGljYWwpO1xuICAgIHBhZGRpbmctdG9wOiB2YXIoLS1wYWRkaW5nLXN1Yi1tZW51LWxpbmstdmVydGljYWwpO1xuICB9XG4gIC5zdWItbWVudS50b2dnbGVkLW9uLFxuLnN1Yi1tZW51LnRvZ2dsZWQtb24gLnN1Yi1tZW51LFxuLm1lbnUtaXRlbS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuLmhvdmVyLWludGVudCAuc3ViLW1lbnUsXG4ubWVudS1pdGVtLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW46Zm9jdXMgLnN1Yi1tZW51IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tcGFkZGluZy1zdWItbWVudS12ZXJ0aWNhbCk7XG4gICAgcGFkZGluZy10b3A6IHZhcigtLXBhZGRpbmctc3ViLW1lbnUtdmVydGljYWwpO1xuICB9XG4gIC5uYXYtcHJpbWFyeSA+IHVsOmZpcnN0LW9mLXR5cGUgPiAubWVudS1pdGVtLWhhcy1jaGlsZHJlbjpmb2N1czo6YmVmb3JlLFxuLm5hdi1wcmltYXJ5ID4gdWw6Zmlyc3Qtb2YtdHlwZSA+IC5tZW51LWl0ZW0taGFzLWNoaWxkcmVuOmhvdmVyOjpiZWZvcmUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgY3ViaWMtYmV6aWVyKDAuMTksIDEsIDAuMjIsIDEpO1xuICB9XG4gIC5zdWItbWVudSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmFja2dyb3VuZC1zdWItbWVudSk7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zdWItbWVudSk7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc3ViLW1lbnUpO1xuICAgIGxlZnQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXRvcDogdmFyKC0tZ2FwLWRyb3Bkb3duKTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDEwMCU7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgY3ViaWMtYmV6aWVyKDAuMTksIDEsIDAuMjIsIDEpO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB3aWR0aDogdmFyKC0td2lkdGgtc3ViLW1lbnUpO1xuICAgIHotaW5kZXg6IDk7XG4gIH1cbiAgLnN1Yi1tZW51LmlzLW91dC1vZi12aWV3cG9ydCB7XG4gICAgbGVmdDogdW5zZXQ7XG4gICAgcmlnaHQ6IDA7XG4gIH1cbiAgLnN1Yi1tZW51LmlzLW91dC1vZi12aWV3cG9ydCAuc3ViLW1lbnUge1xuICAgIGxlZnQ6IHVuc2V0O1xuICAgIHJpZ2h0OiAxMDAlO1xuICB9XG4gIC5zdWItbWVudSAuc3ViLW1lbnUuaXMtb3V0LW9mLXZpZXdwb3J0IHtcbiAgICBsZWZ0OiB1bnNldDtcbiAgICByaWdodDogMTAwJTtcbiAgfVxuICAuc3ViLW1lbnUgLnN1Yi1tZW51IHtcbiAgICBsZWZ0OiAxMDAlO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi10b3A6IGNhbGMoLTEgKiB2YXIoLS1wYWRkaW5nLXN1Yi1tZW51LXZlcnRpY2FsKSk7XG4gICAgdG9wOiAwO1xuICB9XG4gIC5zdWItbWVudSBsaSB7XG4gICAgcGFkZGluZzogMDtcbiAgICB3aWR0aDogdmFyKC0td2lkdGgtc3ViLW1lbnUpO1xuICB9XG4gIC5tZW51LWl0ZW0taGFzLWNoaWxkcmVuID4gLnN1Yi1tZW51LnRvZ2dsZWQtb24sXG4ubWVudS1pdGVtLWhhcy1jaGlsZHJlbjpmb2N1cyA+IC5zdWItbWVudSxcbi5tZW51LWl0ZW0taGFzLWNoaWxkcmVuLmhvdmVyLWludGVudCA+IC5zdWItbWVudSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgei1pbmRleDogMTI7XG4gIH1cbiAgLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gLnN1Yi1tZW51LnRvZ2dsZWQtb24gLnN1Yi1tZW51LFxuLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gLnN1Yi1tZW51IC5zdWItbWVudS50b2dnbGVkLW9uLFxuLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW46Zm9jdXMgLnN1Yi1tZW51IC5zdWItbWVudSxcbi5tZW51LWl0ZW0taGFzLWNoaWxkcmVuLmhvdmVyLWludGVudCAuc3ViLW1lbnUgLnN1Yi1tZW51IHtcbiAgICBtYXJnaW4tdG9wOiBjYWxjKC0xICogdmFyKC0tcGFkZGluZy1zdWItbWVudS12ZXJ0aWNhbCkpO1xuICAgIHRvcDogMDtcbiAgICB6LWluZGV4OiAxMDtcbiAgfVxuICAubWVudS1pdGVtLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4ge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBnYXA6IHZhcigtLWdhcC1iZXR3ZWVuLWRyb3Bkb3duLXRvZ2dsZSk7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuICAubWVudS1pdGVtLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW46OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogdmFyKC0tZ2FwLWRyb3Bkb3duKTtcbiAgICBtYXgtd2lkdGg6IHZhcigtLXdpZHRoLXN1Yi1tZW51KTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxMDAlO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAubWVudS1pdGVtLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4uaG92ZXItaW50ZW50OjphZnRlciB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICB6LWluZGV4OiA5OTk5OTk5O1xuICB9XG4gIC5kcm9wZG93bi10b2dnbGUgc3ZnIHtcbiAgICBoZWlnaHQ6IHZhcigtLWRyb3Bkb3duLXRvZ2dsZS1zaXplKTtcbiAgICB3aWR0aDogdmFyKC0tZHJvcGRvd24tdG9nZ2xlLXNpemUpO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjM1cyBjdWJpYy1iZXppZXIoMC4xOSwgMSwgMC4yMiwgMSk7XG4gIH1cbiAgLmRyb3Bkb3duLXRvZ2dsZS50b2dnbGVkLW9uIHN2ZyB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGVYKDE4MGRlZyk7XG4gIH1cbiAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IDA7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWRyb3Bkb3duLXRvZ2dsZSk7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgcGFkZGluZzogMDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgfVxuICAuc3ViLW1lbnUgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgd2lkdGg6IDNyZW07XG4gIH1cbiAgLnN1Yi1tZW51IC5kcm9wZG93bi10b2dnbGUgc3ZnIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpIHJvdGF0ZVgoMGRlZyk7XG4gIH1cbiAgLnN1Yi1tZW51IC5kcm9wZG93bi10b2dnbGUudG9nZ2xlZC1vbiBzdmcge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZykgcm90YXRlWCgxODBkZWcpO1xuICB9XG4gIC5zdWItbWVudSAubWVudS1pdGVtLWhhcy1jaGlsZHJlbjo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTYwcHgpIGFuZCAobWF4LXdpZHRoOiA5NjBweCkge1xuICB1bCBsaTpmb2N1cyA+IHVsLFxudWwgbGk6aG92ZXIgPiB1bCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTYwcHgpIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSksIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5NjBweCkgYW5kICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSkge1xuICB1bCBsaTpmb2N1cyA+IHVsLFxudWwgbGk6aG92ZXIgPiB1bCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTYwcHgpIHtcbiAgLm1lbnUtaXRlbS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuID4gLmRyb3Bkb3duLXRvZ2dsZS50b2dnbGVkLW9uIHN2Zyxcbi5tZW51LWl0ZW0ubWVudS1pdGVtLWhhcy1jaGlsZHJlbjpob3ZlciA+IC5kcm9wZG93bi10b2dnbGUgc3ZnLFxuLm1lbnUtaXRlbS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuOmZvY3VzID4gLmRyb3Bkb3duLXRvZ2dsZSBzdmcge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwJSkgcm90YXRlKDE4MGRlZyk7XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTYwcHgpIHtcbiAgLm1lbnUtaXRlbS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuIC5tZW51LWl0ZW0ubWVudS1pdGVtLWhhcy1jaGlsZHJlbiA+IC5kcm9wZG93bi10b2dnbGUudG9nZ2xlZC1vbiBzdmcsXG4ubWVudS1pdGVtLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gLm1lbnUtaXRlbS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuOmhvdmVyID4gLmRyb3Bkb3duLXRvZ2dsZSBzdmcsXG4ubWVudS1pdGVtLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gLm1lbnUtaXRlbS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuOmZvY3VzID4gLmRyb3Bkb3duLXRvZ2dsZSBzdmcge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwJSkgcm90YXRlKDkwZGVnKTtcbiAgfVxufVxuOnJvb3Qge1xuICAtLWZvbnQtc2l6ZS1tYWluLWxldmVsLW1vYmlsZTogMTdweDtcbiAgLS1mb250LXNpemUtc3ViLW1lbnUtbW9iaWxlOiAxN3B4O1xuICAtLWZvbnQtd2VpZ2h0LW1haW4tbGV2ZWwtbW9iaWxlOiA2MDA7XG4gIC0tZm9udC13ZWlnaHQtc3ViLW1lbnUtbW9iaWxlOiA2MDA7XG4gIC0tZHJvcGRvd24tdG9nZ2xlLXNpemUtbW9iaWxlOiAxMnB4O1xuICAtLWhlaWdodC1uYXZpZ2F0aW9uLW1vYmlsZTogNzJweDtcbiAgLS1tYXJnaW4tbGVmdC1zdWItbWVudTogMnJlbTtcbiAgLS1wYWRkaW5nLW1haW4tbGV2ZWwtdmVydGljYWwtbW9iaWxlOiAxLjJyZW07XG4gIC0tcGFkZGluZy1zdWItbWVudS12ZXJ0aWNhbC1tb2JpbGU6IC44cmVtO1xuICAtLXBhZGRpbmctc3ViLW1lbnUtaG9yaXpvbnRhbC1tb2JpbGU6IDIuNXJlbTtcbiAgLS1jb2xvci1hY3RpdmUtbWFpbi1sZXZlbC1tb2JpbGU6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgLS1jb2xvci1iYWNrZ3JvdW5kLW5hdi1tb2JpbGUtaGVhZGVyOiB2YXIoLS1jb2xvci1tYWluKTtcbiAgLS1jb2xvci1iYWNrZ3JvdW5kLW5hdi1tb2JpbGUtaGVhZGVyLWFjdGl2ZTogdmFyKC0tY29sb3ItbWFpbik7XG4gIC0tY29sb3ItYmFja2dyb3VuZC1uYXYtbW9iaWxlLWxheWVyOiB2YXIoLS1jb2xvci1tYWluKTtcbiAgLS1jb2xvci1iYWNrZ3JvdW5kLW5hdi1tb2JpbGUtbGF5ZXItYWN0aXZlOiB2YXIoLS1jb2xvci1tYWluKTtcbiAgLS1jb2xvci1jdXJyZW50LW1vYmlsZTogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAtLWNvbG9yLWRyb3Bkb3duLXRvZ2dsZS1tb2JpbGU6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgLS1jb2xvci1oYW1idXJnZXItYWN0aXZlOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIC0tY29sb3ItaGFtYnVyZ2VyOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIC0tY29sb3ItbWFpbi1sZXZlbC1tb2JpbGU6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgLS1jb2xvci1zZXBhcmF0b3ItbmF2LW1vYmlsZTogcmdiKDI1NSAyNTUgMjU1IC8gLjEpO1xuICAtLWNvbG9yLXN1Yi1tZW51LW1vYmlsZTogcmdiKDI1NSAyNTUgMjU1IC8gLjgpO1xufVxuXG4vKiFcbiAqIEhhbWJ1cmdlcnNcbiAqIEBkZXNjcmlwdGlvbiBUYXN0eSBDU1MtYW5pbWF0ZWQgaGFtYnVyZ2Vyc1xuICogQGF1dGhvciBKb25hdGhhbiBTdWggQGpvbnN1aFxuICogQHNpdGUgaHR0cHM6Ly9qb25zdWguY29tL2hhbWJ1cmdlcnNcbiAqIEBsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9qb25zdWgvaGFtYnVyZ2Vyc1xuICovXG4uaGFtYnVyZ2VyIHtcbiAgcGFkZGluZzogNHJlbSAxLjVyZW07XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5LCBmaWx0ZXI7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMTVzO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICBmb250OiBpbmhlcml0O1xuICBjb2xvcjogaW5oZXJpdDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG4gIG1hcmdpbjogMDtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG4uaGFtYnVyZ2VyOmhvdmVyIHtcbiAgb3BhY2l0eTogMC44O1xufVxuLmhhbWJ1cmdlci5pcy1hY3RpdmU6aG92ZXIge1xuICBvcGFjaXR5OiAwLjg7XG59XG4uaGFtYnVyZ2VyLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyLFxuLmhhbWJ1cmdlci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlLFxuLmhhbWJ1cmdlci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1oYW1idXJnZXIpO1xufVxuXG4uaGFtYnVyZ2VyLWJveCB7XG4gIHdpZHRoOiAzcmVtO1xuICBoZWlnaHQ6IDEuNnJlbTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5oYW1idXJnZXItaW5uZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgdG9wOiA1MCU7XG4gIG1hcmdpbi10b3A6IC0wLjFyZW07XG59XG4uaGFtYnVyZ2VyLWlubmVyLCAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUsIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgd2lkdGg6IDNyZW07XG4gIGhlaWdodDogMC4ycmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1oYW1idXJnZXIpO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4xNXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlO1xufVxuLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlLCAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgdG9wOiAtMC43cmVtO1xufVxuLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICBib3R0b206IC0wLjdyZW07XG59XG5cbi8qXG4gKiAzRFhcbiAqL1xuLmhhbWJ1cmdlci0tM2R4IC5oYW1idXJnZXItYm94IHtcbiAgcGVyc3BlY3RpdmU6IDZyZW07XG59XG4uaGFtYnVyZ2VyLS0zZHggLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSksIGJhY2tncm91bmQtY29sb3IgMHMgMC4xcyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSk7XG59XG4uaGFtYnVyZ2VyLS0zZHggLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlLCAuaGFtYnVyZ2VyLS0zZHggLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMHMgMC4xcyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSk7XG59XG4uaGFtYnVyZ2VyLS0zZHguaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICB0cmFuc2Zvcm06IHJvdGF0ZVkoMTgwZGVnKTtcbn1cbi5oYW1idXJnZXItLTNkeC5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLjdyZW0sIDApIHJvdGF0ZSg0NWRlZyk7XG59XG4uaGFtYnVyZ2VyLS0zZHguaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMC43cmVtLCAwKSByb3RhdGUoLTQ1ZGVnKTtcbn1cblxuLypcbiAqIDNEWCBSZXZlcnNlXG4gKi9cbi5oYW1idXJnZXItLTNkeC1yIC5oYW1idXJnZXItYm94IHtcbiAgcGVyc3BlY3RpdmU6IDZyZW07XG59XG4uaGFtYnVyZ2VyLS0zZHgtciAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKSwgYmFja2dyb3VuZC1jb2xvciAwcyAwLjFzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKTtcbn1cbi5oYW1idXJnZXItLTNkeC1yIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSwgLmhhbWJ1cmdlci0tM2R4LXIgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMHMgMC4xcyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSk7XG59XG4uaGFtYnVyZ2VyLS0zZHgtci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIHRyYW5zZm9ybTogcm90YXRlWSgtMTgwZGVnKTtcbn1cbi5oYW1idXJnZXItLTNkeC1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAuN3JlbSwgMCkgcm90YXRlKDQ1ZGVnKTtcbn1cbi5oYW1idXJnZXItLTNkeC1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTAuN3JlbSwgMCkgcm90YXRlKC00NWRlZyk7XG59XG5cbi8qXG4gKiAzRFlcbiAqL1xuLmhhbWJ1cmdlci0tM2R5IC5oYW1idXJnZXItYm94IHtcbiAgcGVyc3BlY3RpdmU6IDZyZW07XG59XG4uaGFtYnVyZ2VyLS0zZHkgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSksIGJhY2tncm91bmQtY29sb3IgMHMgMC4xcyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSk7XG59XG4uaGFtYnVyZ2VyLS0zZHkgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlLCAuaGFtYnVyZ2VyLS0zZHkgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMHMgMC4xcyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSk7XG59XG4uaGFtYnVyZ2VyLS0zZHkuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICB0cmFuc2Zvcm06IHJvdGF0ZVgoLTE4MGRlZyk7XG59XG4uaGFtYnVyZ2VyLS0zZHkuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMC43cmVtLCAwKSByb3RhdGUoNDVkZWcpO1xufVxuLmhhbWJ1cmdlci0tM2R5LmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTAuN3JlbSwgMCkgcm90YXRlKC00NWRlZyk7XG59XG5cbi8qXG4gKiAzRFkgUmV2ZXJzZVxuICovXG4uaGFtYnVyZ2VyLS0zZHktciAuaGFtYnVyZ2VyLWJveCB7XG4gIHBlcnNwZWN0aXZlOiA2cmVtO1xufVxuLmhhbWJ1cmdlci0tM2R5LXIgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSksIGJhY2tncm91bmQtY29sb3IgMHMgMC4xcyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSk7XG59XG4uaGFtYnVyZ2VyLS0zZHktciAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUsIC5oYW1idXJnZXItLTNkeS1yIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDBzIDAuMXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpO1xufVxuLmhhbWJ1cmdlci0tM2R5LXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICB0cmFuc2Zvcm06IHJvdGF0ZVgoMTgwZGVnKTtcbn1cbi5oYW1idXJnZXItLTNkeS1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAuN3JlbSwgMCkgcm90YXRlKDQ1ZGVnKTtcbn1cbi5oYW1idXJnZXItLTNkeS1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTAuN3JlbSwgMCkgcm90YXRlKC00NWRlZyk7XG59XG5cbi8qXG4gKiAzRFhZXG4gKi9cbi5oYW1idXJnZXItLTNkeHkgLmhhbWJ1cmdlci1ib3gge1xuICBwZXJzcGVjdGl2ZTogNnJlbTtcbn1cbi5oYW1idXJnZXItLTNkeHkgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSksIGJhY2tncm91bmQtY29sb3IgMHMgMC4xcyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSk7XG59XG4uaGFtYnVyZ2VyLS0zZHh5IC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSwgLmhhbWJ1cmdlci0tM2R4eSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwcyAwLjFzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKTtcbn1cbi5oYW1idXJnZXItLTNkeHkuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICB0cmFuc2Zvcm06IHJvdGF0ZVgoMTgwZGVnKSByb3RhdGVZKDE4MGRlZyk7XG59XG4uaGFtYnVyZ2VyLS0zZHh5LmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAuN3JlbSwgMCkgcm90YXRlKDQ1ZGVnKTtcbn1cbi5oYW1idXJnZXItLTNkeHkuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMC43cmVtLCAwKSByb3RhdGUoLTQ1ZGVnKTtcbn1cblxuLypcbiAqIDNEWFkgUmV2ZXJzZVxuICovXG4uaGFtYnVyZ2VyLS0zZHh5LXIgLmhhbWJ1cmdlci1ib3gge1xuICBwZXJzcGVjdGl2ZTogNnJlbTtcbn1cbi5oYW1idXJnZXItLTNkeHktciAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKSwgYmFja2dyb3VuZC1jb2xvciAwcyAwLjFzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKTtcbn1cbi5oYW1idXJnZXItLTNkeHktciAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUsIC5oYW1idXJnZXItLTNkeHktciAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwcyAwLjFzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKTtcbn1cbi5oYW1idXJnZXItLTNkeHktci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIHRyYW5zZm9ybTogcm90YXRlWCgxODBkZWcpIHJvdGF0ZVkoMTgwZGVnKSByb3RhdGVaKC0xODBkZWcpO1xufVxuLmhhbWJ1cmdlci0tM2R4eS1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAuN3JlbSwgMCkgcm90YXRlKDQ1ZGVnKTtcbn1cbi5oYW1idXJnZXItLTNkeHktci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0wLjdyZW0sIDApIHJvdGF0ZSgtNDVkZWcpO1xufVxuXG4vKlxuICogQXJyb3dcbiAqL1xuLmhhbWJ1cmdlci0tYXJyb3cuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTAuNnJlbSwgMCwgMCkgcm90YXRlKC00NWRlZykgc2NhbGUoMC43LCAxKTtcbn1cbi5oYW1idXJnZXItLWFycm93LmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTAuNnJlbSwgMCwgMCkgcm90YXRlKDQ1ZGVnKSBzY2FsZSgwLjcsIDEpO1xufVxuXG4vKlxuICogQXJyb3cgUmlnaHRcbiAqL1xuLmhhbWJ1cmdlci0tYXJyb3ctci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLjZyZW0sIDAsIDApIHJvdGF0ZSg0NWRlZykgc2NhbGUoMC43LCAxKTtcbn1cbi5oYW1idXJnZXItLWFycm93LXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLjZyZW0sIDAsIDApIHJvdGF0ZSgtNDVkZWcpIHNjYWxlKDAuNywgMSk7XG59XG5cbi8qXG4gKiBBcnJvdyBBbHRcbiAqL1xuLmhhbWJ1cmdlci0tYXJyb3dhbHQgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgdHJhbnNpdGlvbjogdG9wIDAuMXMgMC4xcyBlYXNlLCB0cmFuc2Zvcm0gMC4xcyBjdWJpYy1iZXppZXIoMC4xNjUsIDAuODQsIDAuNDQsIDEpO1xufVxuLmhhbWJ1cmdlci0tYXJyb3dhbHQgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICB0cmFuc2l0aW9uOiBib3R0b20gMC4xcyAwLjFzIGVhc2UsIHRyYW5zZm9ybSAwLjFzIGN1YmljLWJlemllcigwLjE2NSwgMC44NCwgMC40NCwgMSk7XG59XG4uaGFtYnVyZ2VyLS1hcnJvd2FsdC5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgdG9wOiAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0wLjZyZW0sIC0wLjc1cmVtLCAwKSByb3RhdGUoLTQ1ZGVnKSBzY2FsZSgwLjcsIDEpO1xuICB0cmFuc2l0aW9uOiB0b3AgMC4xcyBlYXNlLCB0cmFuc2Zvcm0gMC4xcyAwLjFzIGN1YmljLWJlemllcigwLjg5NSwgMC4wMywgMC42ODUsIDAuMjIpO1xufVxuLmhhbWJ1cmdlci0tYXJyb3dhbHQuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgYm90dG9tOiAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0wLjZyZW0sIDAuNzVyZW0sIDApIHJvdGF0ZSg0NWRlZykgc2NhbGUoMC43LCAxKTtcbiAgdHJhbnNpdGlvbjogYm90dG9tIDAuMXMgZWFzZSwgdHJhbnNmb3JtIDAuMXMgMC4xcyBjdWJpYy1iZXppZXIoMC44OTUsIDAuMDMsIDAuNjg1LCAwLjIyKTtcbn1cblxuLypcbiAqIEFycm93IEFsdCBSaWdodFxuICovXG4uaGFtYnVyZ2VyLS1hcnJvd2FsdC1yIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gIHRyYW5zaXRpb246IHRvcCAwLjFzIDAuMXMgZWFzZSwgdHJhbnNmb3JtIDAuMXMgY3ViaWMtYmV6aWVyKDAuMTY1LCAwLjg0LCAwLjQ0LCAxKTtcbn1cbi5oYW1idXJnZXItLWFycm93YWx0LXIgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICB0cmFuc2l0aW9uOiBib3R0b20gMC4xcyAwLjFzIGVhc2UsIHRyYW5zZm9ybSAwLjFzIGN1YmljLWJlemllcigwLjE2NSwgMC44NCwgMC40NCwgMSk7XG59XG4uaGFtYnVyZ2VyLS1hcnJvd2FsdC1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICB0b3A6IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMC42cmVtLCAtMC43NXJlbSwgMCkgcm90YXRlKDQ1ZGVnKSBzY2FsZSgwLjcsIDEpO1xuICB0cmFuc2l0aW9uOiB0b3AgMC4xcyBlYXNlLCB0cmFuc2Zvcm0gMC4xcyAwLjFzIGN1YmljLWJlemllcigwLjg5NSwgMC4wMywgMC42ODUsIDAuMjIpO1xufVxuLmhhbWJ1cmdlci0tYXJyb3dhbHQtci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICBib3R0b206IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMC42cmVtLCAwLjc1cmVtLCAwKSByb3RhdGUoLTQ1ZGVnKSBzY2FsZSgwLjcsIDEpO1xuICB0cmFuc2l0aW9uOiBib3R0b20gMC4xcyBlYXNlLCB0cmFuc2Zvcm0gMC4xcyAwLjFzIGN1YmljLWJlemllcigwLjg5NSwgMC4wMywgMC42ODUsIDAuMjIpO1xufVxuXG4vKlxuICogQXJyb3cgVHVyblxuICovXG4uaGFtYnVyZ2VyLS1hcnJvd3R1cm4uaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTgwZGVnKTtcbn1cbi5oYW1idXJnZXItLWFycm93dHVybi5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCg4cHgsIDAsIDApIHJvdGF0ZSg0NWRlZykgc2NhbGUoMC43LCAxKTtcbn1cbi5oYW1idXJnZXItLWFycm93dHVybi5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDhweCwgMCwgMCkgcm90YXRlKC00NWRlZykgc2NhbGUoMC43LCAxKTtcbn1cblxuLypcbiAqIEFycm93IFR1cm4gUmlnaHRcbiAqL1xuLmhhbWJ1cmdlci0tYXJyb3d0dXJuLXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTgwZGVnKTtcbn1cbi5oYW1idXJnZXItLWFycm93dHVybi1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC04cHgsIDAsIDApIHJvdGF0ZSgtNDVkZWcpIHNjYWxlKDAuNywgMSk7XG59XG4uaGFtYnVyZ2VyLS1hcnJvd3R1cm4tci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC04cHgsIDAsIDApIHJvdGF0ZSg0NWRlZykgc2NhbGUoMC43LCAxKTtcbn1cblxuLypcbiAqIEJvcmluZ1xuICovXG4uaGFtYnVyZ2VyLS1ib3JpbmcgLmhhbWJ1cmdlci1pbm5lciwgLmhhbWJ1cmdlci0tYm9yaW5nIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSwgLmhhbWJ1cmdlci0tYm9yaW5nIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogbm9uZTtcbn1cbi5oYW1idXJnZXItLWJvcmluZy5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbn1cbi5oYW1idXJnZXItLWJvcmluZy5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgdG9wOiAwO1xuICBvcGFjaXR5OiAwO1xufVxuLmhhbWJ1cmdlci0tYm9yaW5nLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gIGJvdHRvbTogMDtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbn1cblxuLypcbiAqIENvbGxhcHNlXG4gKi9cbi5oYW1idXJnZXItLWNvbGxhcHNlIC5oYW1idXJnZXItaW5uZXIsIC5oYW1idXJnZXIgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRvcDogYXV0bztcbiAgYm90dG9tOiAwO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjEzcztcbiAgdHJhbnNpdGlvbi1kZWxheTogMC4xM3M7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcbn1cbi5oYW1idXJnZXItLWNvbGxhcHNlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyLCAuaGFtYnVyZ2VyIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgdG9wOiAtMS40cmVtO1xuICB0cmFuc2l0aW9uOiB0b3AgMC4ycyAwLjJzIGN1YmljLWJlemllcigwLjMzMzMzLCAwLjY2NjY3LCAwLjY2NjY3LCAxKSwgb3BhY2l0eSAwLjFzIGxpbmVhcjtcbn1cbi5oYW1idXJnZXItLWNvbGxhcHNlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSwgLmhhbWJ1cmdlciAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICB0cmFuc2l0aW9uOiB0b3AgMC4xMnMgMC4ycyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMC42NjY2NywgMC42NjY2NywgMSksIHRyYW5zZm9ybSAwLjEzcyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcbn1cbi5oYW1idXJnZXItLWNvbGxhcHNlLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyLCAuaXMtYWN0aXZlLmhhbWJ1cmdlciAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMC43cmVtLCAwKSByb3RhdGUoLTQ1ZGVnKTtcbiAgdHJhbnNpdGlvbi1kZWxheTogMC4yMnM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbn1cbi5oYW1idXJnZXItLWNvbGxhcHNlLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciwgLmlzLWFjdGl2ZS5oYW1idXJnZXIgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICB0b3A6IDA7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IHRvcCAwLjJzIGN1YmljLWJlemllcigwLjMzMzMzLCAwLCAwLjY2NjY3LCAwLjMzMzMzKSwgb3BhY2l0eSAwLjFzIDAuMjJzIGxpbmVhcjtcbn1cbi5oYW1idXJnZXItLWNvbGxhcHNlLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUsIC5pcy1hY3RpdmUuaGFtYnVyZ2VyIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gIHRvcDogMDtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgdHJhbnNpdGlvbjogdG9wIDAuMXMgMC4xNnMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAsIDAuNjY2NjcsIDAuMzMzMzMpLCB0cmFuc2Zvcm0gMC4xM3MgMC4yNXMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG59XG5cbi8qXG4gKiBDb2xsYXBzZSBSZXZlcnNlXG4gKi9cbi5oYW1idXJnZXItLWNvbGxhcHNlLXIgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRvcDogYXV0bztcbiAgYm90dG9tOiAwO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjEzcztcbiAgdHJhbnNpdGlvbi1kZWxheTogMC4xM3M7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcbn1cbi5oYW1idXJnZXItLWNvbGxhcHNlLXIgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICB0b3A6IC0xLjRyZW07XG4gIHRyYW5zaXRpb246IHRvcCAwLjJzIDAuMnMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAuNjY2NjcsIDAuNjY2NjcsIDEpLCBvcGFjaXR5IDAuMXMgbGluZWFyO1xufVxuLmhhbWJ1cmdlci0tY29sbGFwc2UtciAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICB0cmFuc2l0aW9uOiB0b3AgMC4xMnMgMC4ycyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMC42NjY2NywgMC42NjY2NywgMSksIHRyYW5zZm9ybSAwLjEzcyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcbn1cbi5oYW1idXJnZXItLWNvbGxhcHNlLXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0wLjdyZW0sIDApIHJvdGF0ZSg0NWRlZyk7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDAuMjJzO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG59XG4uaGFtYnVyZ2VyLS1jb2xsYXBzZS1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gIHRvcDogMDtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbjogdG9wIDAuMnMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAsIDAuNjY2NjcsIDAuMzMzMzMpLCBvcGFjaXR5IDAuMXMgMC4yMnMgbGluZWFyO1xufVxuLmhhbWJ1cmdlci0tY29sbGFwc2Utci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgdG9wOiAwO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gIHRyYW5zaXRpb246IHRvcCAwLjFzIDAuMTZzIGN1YmljLWJlemllcigwLjMzMzMzLCAwLCAwLjY2NjY3LCAwLjMzMzMzKSwgdHJhbnNmb3JtIDAuMTNzIDAuMjVzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xufVxuXG4vKlxuICogRWxhc3RpY1xuICovXG4uaGFtYnVyZ2VyLS1lbGFzdGljIC5oYW1idXJnZXItaW5uZXIge1xuICB0b3A6IDAuMXJlbTtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4yNzVzO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNjgsIC0wLjU1LCAwLjI2NSwgMS41NSk7XG59XG4uaGFtYnVyZ2VyLS1lbGFzdGljIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gIHRvcDogMC43cmVtO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTI1cyAwLjI3NXMgZWFzZTtcbn1cbi5oYW1idXJnZXItLWVsYXN0aWMgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICB0b3A6IDEuNHJlbTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMjc1cyBjdWJpYy1iZXppZXIoMC42OCwgLTAuNTUsIDAuMjY1LCAxLjU1KTtcbn1cbi5oYW1idXJnZXItLWVsYXN0aWMuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAuN3JlbSwgMCkgcm90YXRlKDEzNWRlZyk7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDAuMDc1cztcbn1cbi5oYW1idXJnZXItLWVsYXN0aWMuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDBzO1xuICBvcGFjaXR5OiAwO1xufVxuLmhhbWJ1cmdlci0tZWxhc3RpYy5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xLjRyZW0sIDApIHJvdGF0ZSgtMjcwZGVnKTtcbiAgdHJhbnNpdGlvbi1kZWxheTogMC4wNzVzO1xufVxuXG4vKlxuICogRWxhc3RpYyBSZXZlcnNlXG4gKi9cbi5oYW1idXJnZXItLWVsYXN0aWMtciAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdG9wOiAwLjFyZW07XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMjc1cztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjY4LCAtMC41NSwgMC4yNjUsIDEuNTUpO1xufVxuLmhhbWJ1cmdlci0tZWxhc3RpYy1yIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gIHRvcDogMC43cmVtO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTI1cyAwLjI3NXMgZWFzZTtcbn1cbi5oYW1idXJnZXItLWVsYXN0aWMtciAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gIHRvcDogMS40cmVtO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4yNzVzIGN1YmljLWJlemllcigwLjY4LCAtMC41NSwgMC4yNjUsIDEuNTUpO1xufVxuLmhhbWJ1cmdlci0tZWxhc3RpYy1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLjdyZW0sIDApIHJvdGF0ZSgtMTM1ZGVnKTtcbiAgdHJhbnNpdGlvbi1kZWxheTogMC4wNzVzO1xufVxuLmhhbWJ1cmdlci0tZWxhc3RpYy1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwcztcbiAgb3BhY2l0eTogMDtcbn1cbi5oYW1idXJnZXItLWVsYXN0aWMtci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xLjRyZW0sIDApIHJvdGF0ZSgyNzBkZWcpO1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwLjA3NXM7XG59XG5cbi8qXG4gKiBFbXBoYXRpY1xuICovXG4uaGFtYnVyZ2VyLS1lbXBoYXRpYyB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4uaGFtYnVyZ2VyLS1lbXBoYXRpYyAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjEyNXMgMC4xNzVzIGVhc2UtaW47XG59XG4uaGFtYnVyZ2VyLS1lbXBoYXRpYyAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICBsZWZ0OiAwO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xMjVzIGN1YmljLWJlemllcigwLjYsIDAuMDQsIDAuOTgsIDAuMzM1KSwgdG9wIDAuMDVzIDAuMTI1cyBsaW5lYXIsIGxlZnQgMC4xMjVzIDAuMTc1cyBlYXNlLWluO1xufVxuLmhhbWJ1cmdlci0tZW1waGF0aWMgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICB0b3A6IDAuN3JlbTtcbiAgcmlnaHQ6IDA7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjEyNXMgY3ViaWMtYmV6aWVyKDAuNiwgMC4wNCwgMC45OCwgMC4zMzUpLCB0b3AgMC4wNXMgMC4xMjVzIGxpbmVhciwgcmlnaHQgMC4xMjVzIDAuMTc1cyBlYXNlLWluO1xufVxuLmhhbWJ1cmdlci0tZW1waGF0aWMuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xufVxuLmhhbWJ1cmdlci0tZW1waGF0aWMuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gIGxlZnQ6IC02cmVtO1xuICB0b3A6IC02cmVtO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDZyZW0sIDZyZW0sIDApIHJvdGF0ZSg0NWRlZyk7XG4gIHRyYW5zaXRpb246IGxlZnQgMC4xMjVzIGVhc2Utb3V0LCB0b3AgMC4wNXMgMC4xMjVzIGxpbmVhciwgdHJhbnNmb3JtIDAuMTI1cyAwLjE3NXMgY3ViaWMtYmV6aWVyKDAuMDc1LCAwLjgyLCAwLjE2NSwgMSk7XG59XG4uaGFtYnVyZ2VyLS1lbXBoYXRpYy5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICByaWdodDogLTZyZW07XG4gIHRvcDogLTZyZW07XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTZyZW0sIDZyZW0sIDApIHJvdGF0ZSgtNDVkZWcpO1xuICB0cmFuc2l0aW9uOiByaWdodCAwLjEyNXMgZWFzZS1vdXQsIHRvcCAwLjA1cyAwLjEyNXMgbGluZWFyLCB0cmFuc2Zvcm0gMC4xMjVzIDAuMTc1cyBjdWJpYy1iZXppZXIoMC4wNzUsIDAuODIsIDAuMTY1LCAxKTtcbn1cblxuLypcbiAqIEVtcGhhdGljIFJldmVyc2VcbiAqL1xuLmhhbWJ1cmdlci0tZW1waGF0aWMtciB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4uaGFtYnVyZ2VyLS1lbXBoYXRpYy1yIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMTI1cyAwLjE3NXMgZWFzZS1pbjtcbn1cbi5oYW1idXJnZXItLWVtcGhhdGljLXIgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgbGVmdDogMDtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTI1cyBjdWJpYy1iZXppZXIoMC42LCAwLjA0LCAwLjk4LCAwLjMzNSksIHRvcCAwLjA1cyAwLjEyNXMgbGluZWFyLCBsZWZ0IDAuMTI1cyAwLjE3NXMgZWFzZS1pbjtcbn1cbi5oYW1idXJnZXItLWVtcGhhdGljLXIgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICB0b3A6IDAuN3JlbTtcbiAgcmlnaHQ6IDA7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjEyNXMgY3ViaWMtYmV6aWVyKDAuNiwgMC4wNCwgMC45OCwgMC4zMzUpLCB0b3AgMC4wNXMgMC4xMjVzIGxpbmVhciwgcmlnaHQgMC4xMjVzIDAuMTc1cyBlYXNlLWluO1xufVxuLmhhbWJ1cmdlci0tZW1waGF0aWMtci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDBzO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG59XG4uaGFtYnVyZ2VyLS1lbXBoYXRpYy1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICBsZWZ0OiAtNnJlbTtcbiAgdG9wOiA2cmVtO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDZyZW0sIC02cmVtLCAwKSByb3RhdGUoLTQ1ZGVnKTtcbiAgdHJhbnNpdGlvbjogbGVmdCAwLjEyNXMgZWFzZS1vdXQsIHRvcCAwLjA1cyAwLjEyNXMgbGluZWFyLCB0cmFuc2Zvcm0gMC4xMjVzIDAuMTc1cyBjdWJpYy1iZXppZXIoMC4wNzUsIDAuODIsIDAuMTY1LCAxKTtcbn1cbi5oYW1idXJnZXItLWVtcGhhdGljLXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgcmlnaHQ6IC02cmVtO1xuICB0b3A6IDZyZW07XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTZyZW0sIC02cmVtLCAwKSByb3RhdGUoNDVkZWcpO1xuICB0cmFuc2l0aW9uOiByaWdodCAwLjEyNXMgZWFzZS1vdXQsIHRvcCAwLjA1cyAwLjEyNXMgbGluZWFyLCB0cmFuc2Zvcm0gMC4xMjVzIDAuMTc1cyBjdWJpYy1iZXppZXIoMC4wNzUsIDAuODIsIDAuMTY1LCAxKTtcbn1cblxuLypcbiAqIE1pbnVzXG4gKi9cbi5oYW1idXJnZXItLW1pbnVzIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSwgLmhhbWJ1cmdlci0tbWludXMgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICB0cmFuc2l0aW9uOiBib3R0b20gMC4wOHMgMHMgZWFzZS1vdXQsIHRvcCAwLjA4cyAwcyBlYXNlLW91dCwgb3BhY2l0eSAwcyBsaW5lYXI7XG59XG4uaGFtYnVyZ2VyLS1taW51cy5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlLCAuaGFtYnVyZ2VyLS1taW51cy5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uOiBib3R0b20gMC4wOHMgZWFzZS1vdXQsIHRvcCAwLjA4cyBlYXNlLW91dCwgb3BhY2l0eSAwcyAwLjA4cyBsaW5lYXI7XG59XG4uaGFtYnVyZ2VyLS1taW51cy5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgdG9wOiAwO1xufVxuLmhhbWJ1cmdlci0tbWludXMuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgYm90dG9tOiAwO1xufVxuXG4vKlxuICogU2xpZGVyXG4gKi9cbi5oYW1idXJnZXItLXNsaWRlciAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdG9wOiAwLjFyZW07XG59XG4uaGFtYnVyZ2VyLS1zbGlkZXIgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgdG9wOiAwLjdyZW07XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2U7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMTVzO1xufVxuLmhhbWJ1cmdlci0tc2xpZGVyIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgdG9wOiAxLjRyZW07XG59XG4uaGFtYnVyZ2VyLS1zbGlkZXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAuN3JlbSwgMCkgcm90YXRlKDQ1ZGVnKTtcbn1cbi5oYW1idXJnZXItLXNsaWRlci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKSB0cmFuc2xhdGUzZCgtMC40Mjg1NzE0Mjg2cmVtLCAtMC41cmVtLCAwKTtcbiAgb3BhY2l0eTogMDtcbn1cbi5oYW1idXJnZXItLXNsaWRlci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xLjRyZW0sIDApIHJvdGF0ZSgtOTBkZWcpO1xufVxuXG4vKlxuICogU2xpZGVyIFJldmVyc2VcbiAqL1xuLmhhbWJ1cmdlci0tc2xpZGVyLXIgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRvcDogMC4xcmVtO1xufVxuLmhhbWJ1cmdlci0tc2xpZGVyLXIgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgdG9wOiAwLjdyZW07XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2U7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMTVzO1xufVxuLmhhbWJ1cmdlci0tc2xpZGVyLXIgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICB0b3A6IDEuNHJlbTtcbn1cbi5oYW1idXJnZXItLXNsaWRlci1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLjdyZW0sIDApIHJvdGF0ZSgtNDVkZWcpO1xufVxuLmhhbWJ1cmdlci0tc2xpZGVyLXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKSB0cmFuc2xhdGUzZCgwLjQyODU3MTQyODZyZW0sIC0wLjVyZW0sIDApO1xuICBvcGFjaXR5OiAwO1xufVxuLmhhbWJ1cmdlci0tc2xpZGVyLXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMS40cmVtLCAwKSByb3RhdGUoOTBkZWcpO1xufVxuXG4vKlxuICogU3BpblxuICovXG4uaGFtYnVyZ2VyLS1zcGluIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjIycztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xufVxuLmhhbWJ1cmdlci0tc3BpbiAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICB0cmFuc2l0aW9uOiB0b3AgMC4xcyAwLjI1cyBlYXNlLWluLCBvcGFjaXR5IDAuMXMgZWFzZS1pbjtcbn1cbi5oYW1idXJnZXItLXNwaW4gLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICB0cmFuc2l0aW9uOiBib3R0b20gMC4xcyAwLjI1cyBlYXNlLWluLCB0cmFuc2Zvcm0gMC4yMnMgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG59XG4uaGFtYnVyZ2VyLS1zcGluLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMjI1ZGVnKTtcbiAgdHJhbnNpdGlvbi1kZWxheTogMC4xMnM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbn1cbi5oYW1idXJnZXItLXNwaW4uaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gIHRvcDogMDtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbjogdG9wIDAuMXMgZWFzZS1vdXQsIG9wYWNpdHkgMC4xcyAwLjEycyBlYXNlLW91dDtcbn1cbi5oYW1idXJnZXItLXNwaW4uaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgYm90dG9tOiAwO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICB0cmFuc2l0aW9uOiBib3R0b20gMC4xcyBlYXNlLW91dCwgdHJhbnNmb3JtIDAuMjJzIDAuMTJzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xufVxuXG4vKlxuICogU3BpbiBSZXZlcnNlXG4gKi9cbi5oYW1idXJnZXItLXNwaW4tciAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4yMnM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcbn1cbi5oYW1idXJnZXItLXNwaW4tciAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICB0cmFuc2l0aW9uOiB0b3AgMC4xcyAwLjI1cyBlYXNlLWluLCBvcGFjaXR5IDAuMXMgZWFzZS1pbjtcbn1cbi5oYW1idXJnZXItLXNwaW4tciAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gIHRyYW5zaXRpb246IGJvdHRvbSAwLjFzIDAuMjVzIGVhc2UtaW4sIHRyYW5zZm9ybSAwLjIycyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcbn1cbi5oYW1idXJnZXItLXNwaW4tci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRyYW5zZm9ybTogcm90YXRlKC0yMjVkZWcpO1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwLjEycztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xufVxuLmhhbWJ1cmdlci0tc3Bpbi1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICB0b3A6IDA7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IHRvcCAwLjFzIGVhc2Utb3V0LCBvcGFjaXR5IDAuMXMgMC4xMnMgZWFzZS1vdXQ7XG59XG4uaGFtYnVyZ2VyLS1zcGluLXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgYm90dG9tOiAwO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gIHRyYW5zaXRpb246IGJvdHRvbSAwLjFzIGVhc2Utb3V0LCB0cmFuc2Zvcm0gMC4yMnMgMC4xMnMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG59XG5cbi8qXG4gKiBTcHJpbmdcbiAqL1xuLmhhbWJ1cmdlci0tc3ByaW5nIC5oYW1idXJnZXItaW5uZXIge1xuICB0b3A6IDAuMXJlbTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwcyAwLjEzcyBsaW5lYXI7XG59XG4uaGFtYnVyZ2VyLS1zcHJpbmcgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgdG9wOiAwLjdyZW07XG4gIHRyYW5zaXRpb246IHRvcCAwLjFzIDAuMnMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAuNjY2NjcsIDAuNjY2NjcsIDEpLCB0cmFuc2Zvcm0gMC4xM3MgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG59XG4uaGFtYnVyZ2VyLS1zcHJpbmcgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICB0b3A6IDEuNHJlbTtcbiAgdHJhbnNpdGlvbjogdG9wIDAuMnMgMC4ycyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMC42NjY2NywgMC42NjY2NywgMSksIHRyYW5zZm9ybSAwLjEzcyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcbn1cbi5oYW1idXJnZXItLXNwcmluZy5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDAuMjJzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xufVxuLmhhbWJ1cmdlci0tc3ByaW5nLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICB0b3A6IDA7XG4gIHRyYW5zaXRpb246IHRvcCAwLjFzIDAuMTVzIGN1YmljLWJlemllcigwLjMzMzMzLCAwLCAwLjY2NjY3LCAwLjMzMzMzKSwgdHJhbnNmb3JtIDAuMTNzIDAuMjJzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAuN3JlbSwgMCkgcm90YXRlKDQ1ZGVnKTtcbn1cbi5oYW1idXJnZXItLXNwcmluZy5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICB0b3A6IDA7XG4gIHRyYW5zaXRpb246IHRvcCAwLjJzIGN1YmljLWJlemllcigwLjMzMzMzLCAwLCAwLjY2NjY3LCAwLjMzMzMzKSwgdHJhbnNmb3JtIDAuMTNzIDAuMjJzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAuN3JlbSwgMCkgcm90YXRlKC00NWRlZyk7XG59XG5cbi8qXG4gKiBTcHJpbmcgUmV2ZXJzZVxuICovXG4uaGFtYnVyZ2VyLS1zcHJpbmctciAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdG9wOiBhdXRvO1xuICBib3R0b206IDA7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMTNzO1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xufVxuLmhhbWJ1cmdlci0tc3ByaW5nLXIgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICB0b3A6IC0xLjRyZW07XG4gIHRyYW5zaXRpb246IHRvcCAwLjJzIDAuMnMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAuNjY2NjcsIDAuNjY2NjcsIDEpLCBvcGFjaXR5IDBzIGxpbmVhcjtcbn1cbi5oYW1idXJnZXItLXNwcmluZy1yIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gIHRyYW5zaXRpb246IHRvcCAwLjFzIDAuMnMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAuNjY2NjcsIDAuNjY2NjcsIDEpLCB0cmFuc2Zvcm0gMC4xM3MgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG59XG4uaGFtYnVyZ2VyLS1zcHJpbmctci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTAuN3JlbSwgMCkgcm90YXRlKC00NWRlZyk7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDAuMjJzO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG59XG4uaGFtYnVyZ2VyLS1zcHJpbmctci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICB0b3A6IDA7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IHRvcCAwLjJzIGN1YmljLWJlemllcigwLjMzMzMzLCAwLCAwLjY2NjY3LCAwLjMzMzMzKSwgb3BhY2l0eSAwcyAwLjIycyBsaW5lYXI7XG59XG4uaGFtYnVyZ2VyLS1zcHJpbmctci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgdG9wOiAwO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gIHRyYW5zaXRpb246IHRvcCAwLjFzIDAuMTVzIGN1YmljLWJlemllcigwLjMzMzMzLCAwLCAwLjY2NjY3LCAwLjMzMzMzKSwgdHJhbnNmb3JtIDAuMTNzIDAuMjJzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xufVxuXG4vKlxuICogU3RhbmRcbiAqL1xuLmhhbWJ1cmdlci0tc3RhbmQgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjA3NXMgMC4xNXMgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSksIGJhY2tncm91bmQtY29sb3IgMHMgMC4wNzVzIGxpbmVhcjtcbn1cbi5oYW1idXJnZXItLXN0YW5kIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gIHRyYW5zaXRpb246IHRvcCAwLjA3NXMgMC4wNzVzIGVhc2UtaW4sIHRyYW5zZm9ybSAwLjA3NXMgMHMgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG59XG4uaGFtYnVyZ2VyLS1zdGFuZCAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gIHRyYW5zaXRpb246IGJvdHRvbSAwLjA3NXMgMC4wNzVzIGVhc2UtaW4sIHRyYW5zZm9ybSAwLjA3NXMgMHMgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG59XG4uaGFtYnVyZ2VyLS1zdGFuZC5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMDc1cyAwcyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKSwgYmFja2dyb3VuZC1jb2xvciAwcyAwLjE1cyBsaW5lYXI7XG59XG4uaGFtYnVyZ2VyLS1zdGFuZC5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgdG9wOiAwO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICB0cmFuc2l0aW9uOiB0b3AgMC4wNzVzIDAuMXMgZWFzZS1vdXQsIHRyYW5zZm9ybSAwLjA3NXMgMC4xNXMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG59XG4uaGFtYnVyZ2VyLS1zdGFuZC5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICBib3R0b206IDA7XG4gIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgdHJhbnNpdGlvbjogYm90dG9tIDAuMDc1cyAwLjFzIGVhc2Utb3V0LCB0cmFuc2Zvcm0gMC4wNzVzIDAuMTVzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xufVxuXG4vKlxuICogU3RhbmQgUmV2ZXJzZVxuICovXG4uaGFtYnVyZ2VyLS1zdGFuZC1yIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4wNzVzIDAuMTVzIGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpLCBiYWNrZ3JvdW5kLWNvbG9yIDBzIDAuMDc1cyBsaW5lYXI7XG59XG4uaGFtYnVyZ2VyLS1zdGFuZC1yIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gIHRyYW5zaXRpb246IHRvcCAwLjA3NXMgMC4wNzVzIGVhc2UtaW4sIHRyYW5zZm9ybSAwLjA3NXMgMHMgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG59XG4uaGFtYnVyZ2VyLS1zdGFuZC1yIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgdHJhbnNpdGlvbjogYm90dG9tIDAuMDc1cyAwLjA3NXMgZWFzZS1pbiwgdHJhbnNmb3JtIDAuMDc1cyAwcyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcbn1cbi5oYW1idXJnZXItLXN0YW5kLXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4wNzVzIDBzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpLCBiYWNrZ3JvdW5kLWNvbG9yIDBzIDAuMTVzIGxpbmVhcjtcbn1cbi5oYW1idXJnZXItLXN0YW5kLXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gIHRvcDogMDtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgdHJhbnNpdGlvbjogdG9wIDAuMDc1cyAwLjFzIGVhc2Utb3V0LCB0cmFuc2Zvcm0gMC4wNzVzIDAuMTVzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xufVxuLmhhbWJ1cmdlci0tc3RhbmQtci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICBib3R0b206IDA7XG4gIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgdHJhbnNpdGlvbjogYm90dG9tIDAuMDc1cyAwLjFzIGVhc2Utb3V0LCB0cmFuc2Zvcm0gMC4wNzVzIDAuMTVzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xufVxuXG4vKlxuICogU3F1ZWV6ZVxuICovXG4uaGFtYnVyZ2VyLS1zcXVlZXplIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjA3NXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcbn1cbi5oYW1idXJnZXItLXNxdWVlemUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgdHJhbnNpdGlvbjogdG9wIDAuMDc1cyAwLjEycyBlYXNlLCBvcGFjaXR5IDAuMDc1cyBlYXNlO1xufVxuLmhhbWJ1cmdlci0tc3F1ZWV6ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gIHRyYW5zaXRpb246IGJvdHRvbSAwLjA3NXMgMC4xMnMgZWFzZSwgdHJhbnNmb3JtIDAuMDc1cyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcbn1cbi5oYW1idXJnZXItLXNxdWVlemUuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDAuMTJzO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG59XG4uaGFtYnVyZ2VyLS1zcXVlZXplLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICB0b3A6IDA7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IHRvcCAwLjA3NXMgZWFzZSwgb3BhY2l0eSAwLjA3NXMgMC4xMnMgZWFzZTtcbn1cbi5oYW1idXJnZXItLXNxdWVlemUuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgYm90dG9tOiAwO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICB0cmFuc2l0aW9uOiBib3R0b20gMC4wNzVzIGVhc2UsIHRyYW5zZm9ybSAwLjA3NXMgMC4xMnMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG59XG5cbi8qXG4gKiBWb3J0ZXhcbiAqL1xuLmhhbWJ1cmdlci0tdm9ydGV4IC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjJzO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTksIDEsIDAuMjIsIDEpO1xufVxuLmhhbWJ1cmdlci0tdm9ydGV4IC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSwgLmhhbWJ1cmdlci0tdm9ydGV4IC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDAuMXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG59XG4uaGFtYnVyZ2VyLS12b3J0ZXggLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdG9wLCBvcGFjaXR5O1xufVxuLmhhbWJ1cmdlci0tdm9ydGV4IC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogYm90dG9tLCB0cmFuc2Zvcm07XG59XG4uaGFtYnVyZ2VyLS12b3J0ZXguaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg3NjVkZWcpO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTksIDEsIDAuMjIsIDEpO1xufVxuLmhhbWJ1cmdlci0tdm9ydGV4LmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUsIC5oYW1idXJnZXItLXZvcnRleC5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwcztcbn1cbi5oYW1idXJnZXItLXZvcnRleC5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgdG9wOiAwO1xuICBvcGFjaXR5OiAwO1xufVxuLmhhbWJ1cmdlci0tdm9ydGV4LmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gIGJvdHRvbTogMDtcbiAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xufVxuXG4vKlxuICogVm9ydGV4IFJldmVyc2VcbiAqL1xuLmhhbWJ1cmdlci0tdm9ydGV4LXIgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMnM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xOSwgMSwgMC4yMiwgMSk7XG59XG4uaGFtYnVyZ2VyLS12b3J0ZXgtciAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUsIC5oYW1idXJnZXItLXZvcnRleC1yIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDAuMXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG59XG4uaGFtYnVyZ2VyLS12b3J0ZXgtciAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0b3AsIG9wYWNpdHk7XG59XG4uaGFtYnVyZ2VyLS12b3J0ZXgtciAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IGJvdHRvbSwgdHJhbnNmb3JtO1xufVxuLmhhbWJ1cmdlci0tdm9ydGV4LXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtNzY1ZGVnKTtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKTtcbn1cbi5oYW1idXJnZXItLXZvcnRleC1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUsIC5oYW1idXJnZXItLXZvcnRleC1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDBzO1xufVxuLmhhbWJ1cmdlci0tdm9ydGV4LXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gIHRvcDogMDtcbiAgb3BhY2l0eTogMDtcbn1cbi5oYW1idXJnZXItLXZvcnRleC1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gIGJvdHRvbTogMDtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NjBweCkge1xuICAuanMgLm1lbnUtaXRlbXMgdWwge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTYwcHgpIHtcbiAgLmpzIHVsIC5zdWItbWVudS50b2dnbGVkLW9uIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTU5cHgpIHtcbiAgLm5hdi1jb250YWluZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJhY2tncm91bmQtbmF2LW1vYmlsZS1oZWFkZXIpO1xuICAgIGxlZnQ6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAuc2l0ZS1oZWFkZXIgdWwsXG4uc2l0ZS1oZWFkZXIgbGksXG4uc2l0ZS1oZWFkZXIgYSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG4gIC5tYWluLW5hdmlnYXRpb24td3JhcHBlciB7XG4gICAgb3JkZXI6IDY7XG4gICAgei1pbmRleDogOTk5O1xuICB9XG4gIC5uby1qcyAuc2l0ZS1oZWFkZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJhY2tncm91bmQtbmF2LW1vYmlsZS1oZWFkZXIpO1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gIH1cbiAgLmRpc2FibGUtc2Nyb2xsIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG4gIC5uYXYtcHJpbWFyeSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmFja2dyb3VuZC1uYXYtbW9iaWxlLWxheWVyKTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSB2YXIoLS1oZWlnaHQtbmF2aWdhdGlvbi1tb2JpbGUpKTtcbiAgICBtYXJnaW46IDA7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG4gIC5uby1qcyAubmF2LXByaW1hcnkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLm1lbnUtaXRlbXMge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAycmVtIDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLm1lbnUtaXRlbSBhIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tY29sb3Itc2VwYXJhdG9yLW5hdi1tb2JpbGUpO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1tYWluLWxldmVsLW1vYmlsZSk7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbWFpbi1sZXZlbC1tb2JpbGUpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1tYWluLWxldmVsLW1vYmlsZSk7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1wYWRkaW5nLW1haW4tbGV2ZWwtdmVydGljYWwtbW9iaWxlKTtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXBhZGRpbmctc3ViLW1lbnUtaG9yaXpvbnRhbC1tb2JpbGUpO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXBhZGRpbmctc3ViLW1lbnUtaG9yaXpvbnRhbC1tb2JpbGUpO1xuICAgIHBhZGRpbmctdG9wOiB2YXIoLS1wYWRkaW5nLW1haW4tbGV2ZWwtdmVydGljYWwtbW9iaWxlKTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIHotaW5kZXg6IDA7XG4gIH1cbiAgLnN1Yi1tZW51IGEge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1zdWItbWVudS1tb2JpbGUpO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXN1Yi1tZW51LW1vYmlsZSk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXN1Yi1tZW51LW1vYmlsZSk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhcigtLXBhZGRpbmctc3ViLW1lbnUtdmVydGljYWwtbW9iaWxlKTtcbiAgICBwYWRkaW5nLWxlZnQ6IGNhbGModmFyKC0tcGFkZGluZy1zdWItbWVudS1ob3Jpem9udGFsLW1vYmlsZSkgKyB2YXIoLS1tYXJnaW4tbGVmdC1zdWItbWVudSkpO1xuICAgIHBhZGRpbmctdG9wOiB2YXIoLS1wYWRkaW5nLXN1Yi1tZW51LXZlcnRpY2FsLW1vYmlsZSk7XG4gIH1cbiAgLnN1Yi1tZW51IHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbiAgLnN1Yi1tZW51IC5zdWItbWVudSBhIHtcbiAgICBwYWRkaW5nLWxlZnQ6IGNhbGModmFyKC0tcGFkZGluZy1zdWItbWVudS1ob3Jpem9udGFsLW1vYmlsZSkgKyB2YXIoLS1tYXJnaW4tbGVmdC1zdWItbWVudSkgKyB2YXIoLS1tYXJnaW4tbGVmdC1zdWItbWVudSkpO1xuICB9XG4gIC5tZW51LWl0ZW0gYTpob3Zlcixcbi5tZW51LWl0ZW0gYTpmb2N1cyB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWFjdGl2ZS1tYWluLWxldmVsLW1vYmlsZSk7XG4gIH1cbiAgLm1lbnUtaXRlbS5jdXJyZW50LW1lbnUtcGFyZW50ID4gYSxcbi5tZW51LWl0ZW0uY3VycmVudC1tZW51LWl0ZW0gPiBhIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItY3VycmVudC1tb2JpbGUpO1xuICB9XG4gIC5kcm9wZG93bi10b2dnbGUge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiAwO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1kcm9wZG93bi10b2dnbGUtbW9iaWxlKTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbGVmdDogYXV0bztcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1heC1oZWlnaHQ6IDUycHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tcGFkZGluZy1zdWItbWVudS12ZXJ0aWNhbC1tb2JpbGUpO1xuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tcGFkZGluZy1zdWItbWVudS1ob3Jpem9udGFsLW1vYmlsZSk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKC0tcGFkZGluZy1zdWItbWVudS1ob3Jpem9udGFsLW1vYmlsZSk7XG4gICAgcGFkZGluZy10b3A6IHZhcigtLXBhZGRpbmctc3ViLW1lbnUtdmVydGljYWwtbW9iaWxlKTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiAycHg7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gICAgdHJhbnNpdGlvbjogYWxsIDE1MG1zO1xuICAgIHotaW5kZXg6IDk5OTk7XG4gIH1cbiAgLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7XG4gICAgei1pbmRleDogMTAwMDA7XG4gIH1cbiAgLnN1Yi1tZW51IC5kcm9wZG93bi10b2dnbGUge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1zdWItbWVudS1tb2JpbGUpO1xuICB9XG4gIC5kcm9wZG93bi10b2dnbGUgc3ZnIHtcbiAgICBoZWlnaHQ6IHZhcigtLWRyb3Bkb3duLXRvZ2dsZS1zaXplLW1vYmlsZSk7XG4gICAgd2lkdGg6IHZhcigtLWRyb3Bkb3duLXRvZ2dsZS1zaXplLW1vYmlsZSk7XG4gIH1cbiAgLmRyb3Bkb3duLXRvZ2dsZS50b2dnbGVkLW9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTE4MGRlZyk7XG4gIH1cbiAgLmpzIC5uYXYtcHJpbWFyeSB7XG4gICAgbGVmdDogMDtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiB2YXIoLS1oZWlnaHQtbmF2aWdhdGlvbi1tb2JpbGUpO1xuICAgIHotaW5kZXg6IDU7XG4gIH1cbiAgLmpzIC5uYXYtcHJpbWFyeSAubWVudS1pdGVtcyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmFja2dyb3VuZC1uYXYtbW9iaWxlLWxheWVyKTtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG4gIC5qcy5qcy1uYXYtYWN0aXZlIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG4gIC5qcy5qcy1uYXYtYWN0aXZlIC5uYXYtcHJpbWFyeSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICBwb2ludGVyLWV2ZW50czogYWxsO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbiAgLmpzLmpzLW5hdi1hY3RpdmUgLm1lbnUtaXRlbXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJhY2tncm91bmQtbmF2LW1vYmlsZS1sYXllci1hY3RpdmUpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbiAgLmpzLmpzLW5hdi1hY3RpdmUgLm5hdi1jb250YWluZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJhY2tncm91bmQtbmF2LW1vYmlsZS1oZWFkZXItYWN0aXZlKTtcbiAgfVxuICBAc3VwcG9ydHMgKC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZSkge1xuICAgIC5qcy5qcy1uYXYtYWN0aXZlIC5tYWluLW5hdmlnYXRpb24td3JhcHBlciB7XG4gICAgICB3aWR0aDogdW5zZXQ7XG4gICAgfVxuICB9XG4gIEBzdXBwb3J0cyAoLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lKSB7XG4gICAgLmpzIC5tYWluLW5hdmlnYXRpb24td3JhcHBlciB7XG4gICAgICB3aWR0aDogM3JlbTtcbiAgICB9XG4gIH1cbiAgLnNpdGUge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoLS1oZWlnaHQtbmF2aWdhdGlvbi1tb2JpbGUpO1xuICB9XG4gIC5uYXYtcHJpbWFyeSB7XG4gICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XG4gICAgdHJhbnNpdGlvbjogYWxsIDI1MG1zIGVhc2UtaW4tb3V0O1xuICAgIHdpZHRoOiAxMDB2dztcbiAgfVxuICAuanMuanMtbmF2LWFjdGl2ZSAubmF2LXByaW1hcnkge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIH1cbiAgLnNpdGUtbWFpbiB7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDI1MG1zIGVhc2UtaW4tb3V0O1xuICB9XG4gIC5qcy5qcy1uYXYtYWN0aXZlIC5zaXRlLW1haW4ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTMxMHB4LCAwLCAwKTtcbiAgfVxufVxuLmhhbWJ1cmdlci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcixcbi5oYW1idXJnZXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSxcbi5oYW1idXJnZXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItaGFtYnVyZ2VyLWFjdGl2ZSk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1oYW1idXJnZXItYWN0aXZlKTtcbn1cblxuLm5hdi10b2dnbGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xuICBjb2xvcjogdmFyKC0tY29sb3ItaGFtYnVyZ2VyKTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtc2VtaWJvbGQpO1xuICBtYXJnaW46IDA7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBwYWRkaW5nOiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdG9wOiAwO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgei1pbmRleDogMTAwMDAwO1xufVxuLm5hdi10b2dnbGU6bm90KC50b2dnbGVkLW9uKSAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdHJhbnNpdGlvbjogd2lkdGggMTUwbXM7XG4gIHdpZHRoOiAxOHB4O1xufVxuLm5hdi10b2dnbGUuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIsIC5uYXYtdG9nZ2xlOm5vdCguaXMtYWN0aXZlKTpob3ZlciAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciwgLm5hdi10b2dnbGU6bm90KC5pcy1hY3RpdmUpOmZvY3VzIC5oYW1idXJnZXItaW5uZXIge1xuICB3aWR0aDogM3JlbTtcbn1cbi5uYXYtdG9nZ2xlIHNwYW4ge1xuICBjb2xvcjogdmFyKC0tY29sb3ItaGFtYnVyZ2VyKTtcbiAgZm9udC1zaXplOiAxLjJlbTtcbn1cbi5uYXYtdG9nZ2xlLmlzLWFjdGl2ZSBzcGFuIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWhhbWJ1cmdlci1hY3RpdmUpO1xufVxuLm5hdi10b2dnbGU6aG92ZXIsIC5uYXYtdG9nZ2xlOmFjdGl2ZSB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1oYW1idXJnZXIpO1xufVxuLm5hdi10b2dnbGU6aG92ZXIgc3BhbiwgLm5hdi10b2dnbGU6YWN0aXZlIHNwYW4ge1xuICBjb2xvcjogdmFyKC0tY29sb3ItaGFtYnVyZ2VyKTtcbn1cbi5uYXYtdG9nZ2xlOmZvY3VzIHNwYW4gc3BhbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWhhbWJ1cmdlcik7XG59XG4ubmF2LXRvZ2dsZTpmb2N1cyBzcGFuIHNwYW46OmJlZm9yZSxcbi5uYXYtdG9nZ2xlOmZvY3VzIHNwYW4gc3Bhbjo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1oYW1idXJnZXIpO1xufVxuLm5hdi10b2dnbGU6bm90KC5oYXMtdmlzaWJsZS1sYWJlbCkgLm5hdi10b2dnbGUtbGFiZWwge1xuICBkaXNwbGF5OiBub25lO1xufVxuLm5hdi10b2dnbGUuaXMtYWN0aXZlIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWhhbWJ1cmdlci1hY3RpdmUpO1xufVxuLm5hdi10b2dnbGUuaXMtYWN0aXZlIC5oYW1idXJnZXItYm94IC5oYW1idXJnZXItaW5uZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1oYW1idXJnZXItYWN0aXZlKTtcbn1cbi5uYXYtdG9nZ2xlLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWJveCAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWhhbWJ1cmdlci1hY3RpdmUpO1xufVxuLm5hdi10b2dnbGUuaXMtYWN0aXZlIC5mb2N1cyAuaGFtYnVyZ2VyLWlubmVyLCAubmF2LXRvZ2dsZS5pcy1hY3RpdmUgc3Bhbjpmb2N1cyAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItaGFtYnVyZ2VyLWFjdGl2ZSk7XG59XG4ubmF2LXRvZ2dsZS5pcy1hY3RpdmUgLmZvY3VzIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyLCAubmF2LXRvZ2dsZS5pcy1hY3RpdmUgc3Bhbjpmb2N1cyAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWhhbWJ1cmdlci1hY3RpdmUpO1xufVxuLm5hdi10b2dnbGUuaXMtYWN0aXZlIHNwYW46Zm9jdXMsIC5uYXYtdG9nZ2xlLmlzLWFjdGl2ZSBzcGFuOmhvdmVyLCAubmF2LXRvZ2dsZS5pcy1hY3RpdmUgc3BhbjphY3RpdmUge1xuICBjb2xvcjogdmFyKC0tY29sb3ItaGFtYnVyZ2VyLWFjdGl2ZSk7XG59XG4ubmF2LXRvZ2dsZS5pcy1hY3RpdmUgc3Bhbjpmb2N1cyBzcGFuLCAubmF2LXRvZ2dsZS5pcy1hY3RpdmUgc3Bhbjpob3ZlciBzcGFuLCAubmF2LXRvZ2dsZS5pcy1hY3RpdmUgc3BhbjphY3RpdmUgc3BhbiB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1oYW1idXJnZXItYWN0aXZlKTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5NjBweCkge1xuICAubmF2LXRvZ2dsZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDk1OXB4KSB7XG4gIC5uYXYtdG9nZ2xlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAubmF2LXRvZ2dsZS5oYXMtdmlzaWJsZS1sYWJlbCB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG4gIC5uYXYtdG9nZ2xlLmhhcy12aXNpYmxlLWxhYmVsIC5uYXYtdG9nZ2xlLWxhYmVsIHtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1uYXYtdG9nZ2xlLWxhYmVsKTtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDk1OXB4KSBhbmQgKG1heC13aWR0aDogNDEwcHgpIHtcbiAgLm5hdi10b2dnbGUuaGFzLXZpc2libGUtbGFiZWwgLm5hdi10b2dnbGUtbGFiZWwge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA5NTlweCkgYW5kIChtaW4td2lkdGg6IDQxMXB4KSB7XG4gIC5uYXYtdG9nZ2xlLmhhcy12aXNpYmxlLWxhYmVsIHtcbiAgICBnYXA6IDEuNXJlbTtcbiAgfVxufVxuXG4uYmxvY2sge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmJsb2NrLmhhcy11bmlmaWVkLXBhZGRpbmctaWYtc3RhY2tlZCArIC5ibG9jay5oYXMtdW5pZmllZC1wYWRkaW5nLWlmLXN0YWNrZWQgLmNvbnRhaW5lciB7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBwYWRkaW5nLXRvcDogMDtcbn1cblxuLnNoYWRlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmFja2dyb3VuZC1zaGFkZSk7XG4gIGhlaWdodDogMTAwJTtcbiAgbGVmdDogMDtcbiAgb3BhY2l0eTogMC4zNTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiAwO1xufVxuXG4uZ2xvYmFsLWxpbmsge1xuICBoZWlnaHQ6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgei1pbmRleDogMztcbn1cblxuLnNpdGUge1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmNvbnRhaW5lciB7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXgtd2lkdGg6IDE0NDBweDtcbiAgcGFkZGluZy1ib3R0b206IHZhcigtLXBhZGRpbmctY29udGFpbmVyLXZlcnRpY2FsKTtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gIHBhZGRpbmctdG9wOiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci12ZXJ0aWNhbCk7XG59XG5cbi5zaXRlLW1haW4gLmNvbnRhaW5lciB7XG4gIGNsZWFyOiBib3RoO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uZW50cnktZm9vdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgbWFyZ2luLXRvcDogdmFyKC0tcGFkZGluZy1jb250YWluZXItdmVydGljYWwpO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uZWRpdC1saW5rIHtcbiAgY2xlYXI6IGJvdGg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBtYXJnaW4tdG9wOiAycmVtO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1pbi13aWR0aDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgdHJhbnNpdGlvbjogYWxsIDE1MG1zO1xuICB3aWR0aDogMTAwJTtcbn1cbi5lZGl0LWxpbmsgYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgYm9yZGVyOiAycHggZGFzaGVkIHZhcigtLWNvbG9yLWxpbmstZWRpdC1ib3JkZXIpO1xuICBjbGVhcjogYm90aDtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWxpbmstZWRpdC10ZXh0KTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMnJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRyYW5zaXRpb246IGFsbCAxNTBtcztcbn1cbi5lZGl0LWxpbms6Zm9jdXMsXG4uZWRpdC1saW5rIGE6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1saW5rLWVkaXQtYmFja2dyb3VuZC1ob3Zlcik7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1saW5rLWVkaXQtdGV4dC1ob3Zlcik7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAuaGlkZS1vbi1kZXNrdG9wIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gIC5oaWRlLW9uLW1vYmlsZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5NjBweCkge1xuICAuaGlkZS1vbi1tb2JpbGUtbmF2LXZpZXcge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTYwcHgpIHtcbiAgLmhpZGUtb24tZGVza3RvcC1uYXYtdmlldyB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5oaWRlLWNvbXBsZXRlbHkge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbkBtZWRpYSBwcmludCB7XG4gIC5uYXYtY29udGFpbmVyLFxuLnNpdGUtZm9vdGVyLFxuLnNpZGUtbmF2IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG46cm9vdCB7XG4gIGZvbnQtc2l6ZTogNjIuNSU7XG59XG5cbi5pcy1yb290LWNvbnRhaW5lcixcbi5hY2YtYmxvY2stcHJldmlldyAuYmxvY2ssXG5ib2R5IHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXBhcmFncmFwaCk7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXBhcmFncmFwaCk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXBhcmFncmFwaCk7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcGFyYWdyYXBoKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXBhcmFncmFwaCk7XG4gIHRleHQtcmVuZGVyaW5nOiBnZW9tZXRyaWNQcmVjaXNpb247XG59XG5cbmgxLFxuaDIsXG5oMyxcbmg0LFxuaDUsXG5oNiB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1oZWFkaW5nKTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtaGVhZGluZyk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1oZWFkaW5ncyk7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLW1hcmdpbi1iZXR3ZWVuLXBhcmFncmFwaHMpO1xuICBtYXJnaW4tdG9wOiB2YXIoLS1tYXJnaW4tYmV0d2Vlbi1wYXJhZ3JhcGhzKTtcbn1cblxuaDIsXG5oMyxcbmg0LFxuaDUsXG5oNiB7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1oZWFkaW5ncyk7XG59XG5cbmgxIHtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaDEpO1xufVxuXG5oMiB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWgyKTtcbn1cblxuaDMge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oMyk7XG59XG5cbmg0IHtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaDQpO1xufVxuXG5oNSB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWg1KTtcbn1cblxuaDYge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oNik7XG59XG5cbmgxOmZpcnN0LWNoaWxkLFxuaDI6Zmlyc3QtY2hpbGQsXG5oMzpmaXJzdC1jaGlsZCxcbmg0OmZpcnN0LWNoaWxkLFxuaDU6Zmlyc3QtY2hpbGQsXG5oNjpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XG59XG5cbmVtLFxuaSB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxucCB7XG4gIG1hcmdpbi1ib3R0b206IDIuOXJlbTtcbiAgbWFyZ2luLXRvcDogMi45cmVtO1xufVxuXG5wOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uc2l0ZS1oZWFkZXIge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1heC13aWR0aDogMTQ0MHB4O1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tcGFkZGluZy1zaXRlLWhlYWRlci12ZXJ0aWNhbCk7XG4gIHBhZGRpbmctbGVmdDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICBwYWRkaW5nLXRvcDogdmFyKC0tcGFkZGluZy1zaXRlLWhlYWRlci12ZXJ0aWNhbCk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTU7XG59XG5cbi5zaXRlLXRpdGxlIHtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIG1hcmdpbjogMDtcbn1cbi5zaXRlLXRpdGxlIGEge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBkaXNwbGF5OiBmbGV4O1xufVxuXG4ubmF2LWNvbnRhaW5lciB7XG4gIHotaW5kZXg6IDEwO1xufVxuXG4uc2l0ZS1tYWluIHtcbiAgZGlzcGxheTogZ3JpZDtcbn1cblxuLnNpdGUtbWFpbjo6YWZ0ZXIge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodmFyKC0tY29sb3ItYmxhY2spLCB2YXIoLS1jb2xvci1zY2llbmNlLWJsdWUpKSwgbGluZWFyLWdyYWRpZW50KHZhcigtLWNvbG9yLWJsYWNrKSwgdmFyKC0tY29sb3Itc2NpZW5jZS1ibHVlKSk7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgMCwgMTAwJSAwO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IDNweCAxMDAlO1xuICBib3JkZXItYm90dG9tOiAzcHggc29saWQgdmFyKC0tY29sb3Itc2NpZW5jZS1ibHVlKTtcbiAgYm9yZGVyLXRvcDogM3B4IHNvbGlkIHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgY29udGVudDogXCJCdWlsZCB5b3VyIHdlYnNpdGUgaGVyZSEgKFJlbW92ZSB0aGlzIGJpdCBpbiBzYXNzL2xheW91dC9fc2l0ZS1oZWFkZXIuc2NzcylcIjtcbiAgZGlzcGxheTogZmxleDtcbiAgZm9udC1zaXplOiBjbGFtcCgwLjVyZW0sIDMuNHZ3LCAzcmVtKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXNlbWlib2xkKTtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXBhZGRpbmctY29udGFpbmVyLXZlcnRpY2FsKTtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLXRvcDogY2FsYyh2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci12ZXJ0aWNhbCkgKiAyKTtcbiAgbWF4LXdpZHRoOiAxNDAwcHg7XG4gIG9wYWNpdHk6IDAuNztcbiAgb3JkZXI6IC0xO1xuICBwYWRkaW5nOiA0cmVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDRyZW0pO1xufVxuXG4uc2l0ZS1mb290ZXIge1xuICBjbGVhcjogYm90aDtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZzogNnJlbSAycmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4uc2l0ZS1mb290ZXIgcCxcbi5zaXRlLWZvb3RlciBzcGFuIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbn1cbi5zaXRlLWZvb3RlciAud29yZHByZXNzLWxvZ28ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cbi5zaXRlLWZvb3RlciBzcGFuIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5zaXRlLWZvb3RlciBzdmcge1xuICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLnNpdGUtZm9vdGVyIC5wb3dlcmVkLWJ5LXdvcmRwcmVzcyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXNlbWlib2xkKTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLnNpdGUtZm9vdGVyIC5naXRodWItbGluayB7XG4gIG1hcmdpbi1sZWZ0OiA4cHg7XG4gIG1hcmdpbi10b3A6IDRweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZy1ib3R0b206IDRweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLnNpdGUtZm9vdGVyIGEge1xuICBjb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDE1MG1zO1xufVxuLnNpdGUtZm9vdGVyIGE6aG92ZXIsIC5zaXRlLWZvb3RlciBhOmZvY3VzIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgb3BhY2l0eTogMC41O1xufVxuLnNpdGUtZm9vdGVyIGE6aG92ZXI6OmFmdGVyLCAuc2l0ZS1mb290ZXIgYTpmb2N1czo6YWZ0ZXIge1xuICBvcGFjaXR5OiAwLjI7XG59XG4uc2l0ZS1mb290ZXIgLnRoZW1lLWluZm8ge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBtYXJnaW46IDAgYXV0bztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLnNpdGUtZm9vdGVyIC50aGVtZS1pbmZvIGkge1xuICBtYXJnaW46IDAgNXB4O1xufVxuXG4uc2l0ZS1tYWluIC5idXR0b24td3JhcHBlcixcbi5zaXRlLWZvb3RlciAuYnV0dG9uLXdyYXBwZXIge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLnNpdGUtbWFpbiBidXR0b24sXG4uc2l0ZS1tYWluIC5idXR0b24sXG4uc2l0ZS1tYWluIGlucHV0W3R5cGU9cmVzZXRdLFxuLnNpdGUtbWFpbiBpbnB1dFt0eXBlPXN1Ym1pdF0sXG4uc2l0ZS1tYWluIGlucHV0W3R5cGU9YnV0dG9uXSxcbi5zaXRlLWZvb3RlciBidXR0b24sXG4uc2l0ZS1mb290ZXIgLmJ1dHRvbixcbi5zaXRlLWZvb3RlciBpbnB1dFt0eXBlPXJlc2V0XSxcbi5zaXRlLWZvb3RlciBpbnB1dFt0eXBlPXN1Ym1pdF0sXG4uc2l0ZS1mb290ZXIgaW5wdXRbdHlwZT1idXR0b25dIHtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnV0dG9uLWJhY2tncm91bmQpO1xuICBib3JkZXI6IHZhcigtLWJvcmRlci13aWR0aC1pbnB1dC1maWVsZCkgc29saWQgdmFyKC0tY29sb3ItYnV0dG9uLWJhY2tncm91bmQpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWlucHV0LWZpZWxkKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJ1dHRvbik7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1wYXJhZ3JhcGgpO1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0xNik7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1zZW1pYm9sZCk7XG4gIGxpbmUtaGVpZ2h0OiAxOS42MzY0cHg7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIG1heC13aWR0aDogMjMwcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmctYm90dG9tOiBjYWxjKDE0cHggLSB2YXIoLS1ib3JkZXItd2lkdGgtaW5wdXQtZmllbGQpICogMik7XG4gIHBhZGRpbmctbGVmdDogY2FsYygyMXB4IC0gdmFyKC0tYm9yZGVyLXdpZHRoLWlucHV0LWZpZWxkKSAqIDIpO1xuICBwYWRkaW5nLXJpZ2h0OiBjYWxjKDIxcHggLSB2YXIoLS1ib3JkZXItd2lkdGgtaW5wdXQtZmllbGQpICogMik7XG4gIHBhZGRpbmctdG9wOiBjYWxjKDE0cHggLSB2YXIoLS1ib3JkZXItd2lkdGgtaW5wdXQtZmllbGQpICogMik7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgdHJhbnNpdGlvbjogYWxsIDE1MG1zIGN1YmljLWJlemllcigwLjI1LCAwLjQ2LCAwLjQ1LCAwLjk0KTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgd2lkdGg6IGF1dG87XG59XG4uc2l0ZS1tYWluIGJ1dHRvbi5mb2N1cywgLnNpdGUtbWFpbiBidXR0b246aG92ZXIsIC5zaXRlLW1haW4gYnV0dG9uOmZvY3VzLFxuLnNpdGUtbWFpbiAuYnV0dG9uLmZvY3VzLFxuLnNpdGUtbWFpbiAuYnV0dG9uOmhvdmVyLFxuLnNpdGUtbWFpbiAuYnV0dG9uOmZvY3VzLFxuLnNpdGUtbWFpbiBpbnB1dFt0eXBlPXJlc2V0XS5mb2N1cyxcbi5zaXRlLW1haW4gaW5wdXRbdHlwZT1yZXNldF06aG92ZXIsXG4uc2l0ZS1tYWluIGlucHV0W3R5cGU9cmVzZXRdOmZvY3VzLFxuLnNpdGUtbWFpbiBpbnB1dFt0eXBlPXN1Ym1pdF0uZm9jdXMsXG4uc2l0ZS1tYWluIGlucHV0W3R5cGU9c3VibWl0XTpob3Zlcixcbi5zaXRlLW1haW4gaW5wdXRbdHlwZT1zdWJtaXRdOmZvY3VzLFxuLnNpdGUtbWFpbiBpbnB1dFt0eXBlPWJ1dHRvbl0uZm9jdXMsXG4uc2l0ZS1tYWluIGlucHV0W3R5cGU9YnV0dG9uXTpob3Zlcixcbi5zaXRlLW1haW4gaW5wdXRbdHlwZT1idXR0b25dOmZvY3VzLFxuLnNpdGUtZm9vdGVyIGJ1dHRvbi5mb2N1cyxcbi5zaXRlLWZvb3RlciBidXR0b246aG92ZXIsXG4uc2l0ZS1mb290ZXIgYnV0dG9uOmZvY3VzLFxuLnNpdGUtZm9vdGVyIC5idXR0b24uZm9jdXMsXG4uc2l0ZS1mb290ZXIgLmJ1dHRvbjpob3Zlcixcbi5zaXRlLWZvb3RlciAuYnV0dG9uOmZvY3VzLFxuLnNpdGUtZm9vdGVyIGlucHV0W3R5cGU9cmVzZXRdLmZvY3VzLFxuLnNpdGUtZm9vdGVyIGlucHV0W3R5cGU9cmVzZXRdOmhvdmVyLFxuLnNpdGUtZm9vdGVyIGlucHV0W3R5cGU9cmVzZXRdOmZvY3VzLFxuLnNpdGUtZm9vdGVyIGlucHV0W3R5cGU9c3VibWl0XS5mb2N1cyxcbi5zaXRlLWZvb3RlciBpbnB1dFt0eXBlPXN1Ym1pdF06aG92ZXIsXG4uc2l0ZS1mb290ZXIgaW5wdXRbdHlwZT1zdWJtaXRdOmZvY3VzLFxuLnNpdGUtZm9vdGVyIGlucHV0W3R5cGU9YnV0dG9uXS5mb2N1cyxcbi5zaXRlLWZvb3RlciBpbnB1dFt0eXBlPWJ1dHRvbl06aG92ZXIsXG4uc2l0ZS1mb290ZXIgaW5wdXRbdHlwZT1idXR0b25dOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnV0dG9uLWJhY2tncm91bmQtaG92ZXIpO1xuICBib3JkZXI6IHZhcigtLWJvcmRlci13aWR0aC1pbnB1dC1maWVsZCkgc29saWQgdmFyKC0tY29sb3ItYnV0dG9uLWJhY2tncm91bmQtaG92ZXIpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnV0dG9uLWhvdmVyKTtcbn1cbi5zaXRlLW1haW4gYnV0dG9uLmJ1dHRvbi1zbWFsbCxcbi5zaXRlLW1haW4gLmJ1dHRvbi5idXR0b24tc21hbGwsXG4uc2l0ZS1tYWluIGlucHV0W3R5cGU9cmVzZXRdLmJ1dHRvbi1zbWFsbCxcbi5zaXRlLW1haW4gaW5wdXRbdHlwZT1zdWJtaXRdLmJ1dHRvbi1zbWFsbCxcbi5zaXRlLW1haW4gaW5wdXRbdHlwZT1idXR0b25dLmJ1dHRvbi1zbWFsbCxcbi5zaXRlLWZvb3RlciBidXR0b24uYnV0dG9uLXNtYWxsLFxuLnNpdGUtZm9vdGVyIC5idXR0b24uYnV0dG9uLXNtYWxsLFxuLnNpdGUtZm9vdGVyIGlucHV0W3R5cGU9cmVzZXRdLmJ1dHRvbi1zbWFsbCxcbi5zaXRlLWZvb3RlciBpbnB1dFt0eXBlPXN1Ym1pdF0uYnV0dG9uLXNtYWxsLFxuLnNpdGUtZm9vdGVyIGlucHV0W3R5cGU9YnV0dG9uXS5idXR0b24tc21hbGwge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0xNik7XG4gIGxpbmUtaGVpZ2h0OiAyMC45MDkxcHg7XG4gIHBhZGRpbmctYm90dG9tOiBjYWxjKDEwcHggLSB2YXIoLS1ib3JkZXItd2lkdGgtaW5wdXQtZmllbGQpICogMik7XG4gIHBhZGRpbmctbGVmdDogY2FsYygyMXB4IC0gdmFyKC0tYm9yZGVyLXdpZHRoLWlucHV0LWZpZWxkKSAqIDIpO1xuICBwYWRkaW5nLXJpZ2h0OiBjYWxjKDIxcHggLSB2YXIoLS1ib3JkZXItd2lkdGgtaW5wdXQtZmllbGQpICogMik7XG4gIHBhZGRpbmctdG9wOiBjYWxjKDEwcHggLSB2YXIoLS1ib3JkZXItd2lkdGgtaW5wdXQtZmllbGQpICogMik7XG59XG4uc2l0ZS1tYWluIGJ1dHRvbi5idXR0b24tbGFyZ2UsXG4uc2l0ZS1tYWluIC5idXR0b24uYnV0dG9uLWxhcmdlLFxuLnNpdGUtbWFpbiBpbnB1dFt0eXBlPXJlc2V0XS5idXR0b24tbGFyZ2UsXG4uc2l0ZS1tYWluIGlucHV0W3R5cGU9c3VibWl0XS5idXR0b24tbGFyZ2UsXG4uc2l0ZS1tYWluIGlucHV0W3R5cGU9YnV0dG9uXS5idXR0b24tbGFyZ2UsXG4uc2l0ZS1mb290ZXIgYnV0dG9uLmJ1dHRvbi1sYXJnZSxcbi5zaXRlLWZvb3RlciAuYnV0dG9uLmJ1dHRvbi1sYXJnZSxcbi5zaXRlLWZvb3RlciBpbnB1dFt0eXBlPXJlc2V0XS5idXR0b24tbGFyZ2UsXG4uc2l0ZS1mb290ZXIgaW5wdXRbdHlwZT1zdWJtaXRdLmJ1dHRvbi1sYXJnZSxcbi5zaXRlLWZvb3RlciBpbnB1dFt0eXBlPWJ1dHRvbl0uYnV0dG9uLWxhcmdlIHtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtMTgpO1xuICBsaW5lLWhlaWdodDogMjMuMDkwOXB4O1xuICBwYWRkaW5nLWJvdHRvbTogY2FsYygxN3B4IC0gdmFyKC0tYm9yZGVyLXdpZHRoLWlucHV0LWZpZWxkKSAqIDIpO1xuICBwYWRkaW5nLWxlZnQ6IGNhbGMoMjFweCAtIHZhcigtLWJvcmRlci13aWR0aC1pbnB1dC1maWVsZCkgKiAyKTtcbiAgcGFkZGluZy1yaWdodDogY2FsYygyMXB4IC0gdmFyKC0tYm9yZGVyLXdpZHRoLWlucHV0LWZpZWxkKSAqIDIpO1xuICBwYWRkaW5nLXRvcDogY2FsYygxN3B4IC0gdmFyKC0tYm9yZGVyLXdpZHRoLWlucHV0LWZpZWxkKSAqIDIpO1xufVxuLnNpdGUtbWFpbiBidXR0b24uYnV0dG9uLWdob3N0LFxuLnNpdGUtbWFpbiAuYnV0dG9uLmJ1dHRvbi1naG9zdCxcbi5zaXRlLW1haW4gaW5wdXRbdHlwZT1yZXNldF0uYnV0dG9uLWdob3N0LFxuLnNpdGUtbWFpbiBpbnB1dFt0eXBlPXN1Ym1pdF0uYnV0dG9uLWdob3N0LFxuLnNpdGUtbWFpbiBpbnB1dFt0eXBlPWJ1dHRvbl0uYnV0dG9uLWdob3N0LFxuLnNpdGUtZm9vdGVyIGJ1dHRvbi5idXR0b24tZ2hvc3QsXG4uc2l0ZS1mb290ZXIgLmJ1dHRvbi5idXR0b24tZ2hvc3QsXG4uc2l0ZS1mb290ZXIgaW5wdXRbdHlwZT1yZXNldF0uYnV0dG9uLWdob3N0LFxuLnNpdGUtZm9vdGVyIGlucHV0W3R5cGU9c3VibWl0XS5idXR0b24tZ2hvc3QsXG4uc2l0ZS1mb290ZXIgaW5wdXRbdHlwZT1idXR0b25dLmJ1dHRvbi1naG9zdCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IHZhcigtLWJvcmRlci13aWR0aC1pbnB1dC1maWVsZCkgc29saWQgdmFyKC0tY29sb3ItYnV0dG9uLWJhY2tncm91bmQpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWlucHV0LWZpZWxkKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJ1dHRvbi1iYWNrZ3JvdW5kKTtcbiAgdHJhbnNpdGlvbjogYWxsIDE1MG1zIGN1YmljLWJlemllcigwLjI1LCAwLjQ2LCAwLjQ1LCAwLjk0KTtcbn1cbi5zaXRlLW1haW4gYnV0dG9uLmJ1dHRvbi1naG9zdC5mb2N1cywgLnNpdGUtbWFpbiBidXR0b24uYnV0dG9uLWdob3N0OmZvY3VzLCAuc2l0ZS1tYWluIGJ1dHRvbi5idXR0b24tZ2hvc3Q6aG92ZXIsXG4uc2l0ZS1tYWluIC5idXR0b24uYnV0dG9uLWdob3N0LmZvY3VzLFxuLnNpdGUtbWFpbiAuYnV0dG9uLmJ1dHRvbi1naG9zdDpmb2N1cyxcbi5zaXRlLW1haW4gLmJ1dHRvbi5idXR0b24tZ2hvc3Q6aG92ZXIsXG4uc2l0ZS1tYWluIGlucHV0W3R5cGU9cmVzZXRdLmJ1dHRvbi1naG9zdC5mb2N1cyxcbi5zaXRlLW1haW4gaW5wdXRbdHlwZT1yZXNldF0uYnV0dG9uLWdob3N0OmZvY3VzLFxuLnNpdGUtbWFpbiBpbnB1dFt0eXBlPXJlc2V0XS5idXR0b24tZ2hvc3Q6aG92ZXIsXG4uc2l0ZS1tYWluIGlucHV0W3R5cGU9c3VibWl0XS5idXR0b24tZ2hvc3QuZm9jdXMsXG4uc2l0ZS1tYWluIGlucHV0W3R5cGU9c3VibWl0XS5idXR0b24tZ2hvc3Q6Zm9jdXMsXG4uc2l0ZS1tYWluIGlucHV0W3R5cGU9c3VibWl0XS5idXR0b24tZ2hvc3Q6aG92ZXIsXG4uc2l0ZS1tYWluIGlucHV0W3R5cGU9YnV0dG9uXS5idXR0b24tZ2hvc3QuZm9jdXMsXG4uc2l0ZS1tYWluIGlucHV0W3R5cGU9YnV0dG9uXS5idXR0b24tZ2hvc3Q6Zm9jdXMsXG4uc2l0ZS1tYWluIGlucHV0W3R5cGU9YnV0dG9uXS5idXR0b24tZ2hvc3Q6aG92ZXIsXG4uc2l0ZS1mb290ZXIgYnV0dG9uLmJ1dHRvbi1naG9zdC5mb2N1cyxcbi5zaXRlLWZvb3RlciBidXR0b24uYnV0dG9uLWdob3N0OmZvY3VzLFxuLnNpdGUtZm9vdGVyIGJ1dHRvbi5idXR0b24tZ2hvc3Q6aG92ZXIsXG4uc2l0ZS1mb290ZXIgLmJ1dHRvbi5idXR0b24tZ2hvc3QuZm9jdXMsXG4uc2l0ZS1mb290ZXIgLmJ1dHRvbi5idXR0b24tZ2hvc3Q6Zm9jdXMsXG4uc2l0ZS1mb290ZXIgLmJ1dHRvbi5idXR0b24tZ2hvc3Q6aG92ZXIsXG4uc2l0ZS1mb290ZXIgaW5wdXRbdHlwZT1yZXNldF0uYnV0dG9uLWdob3N0LmZvY3VzLFxuLnNpdGUtZm9vdGVyIGlucHV0W3R5cGU9cmVzZXRdLmJ1dHRvbi1naG9zdDpmb2N1cyxcbi5zaXRlLWZvb3RlciBpbnB1dFt0eXBlPXJlc2V0XS5idXR0b24tZ2hvc3Q6aG92ZXIsXG4uc2l0ZS1mb290ZXIgaW5wdXRbdHlwZT1zdWJtaXRdLmJ1dHRvbi1naG9zdC5mb2N1cyxcbi5zaXRlLWZvb3RlciBpbnB1dFt0eXBlPXN1Ym1pdF0uYnV0dG9uLWdob3N0OmZvY3VzLFxuLnNpdGUtZm9vdGVyIGlucHV0W3R5cGU9c3VibWl0XS5idXR0b24tZ2hvc3Q6aG92ZXIsXG4uc2l0ZS1mb290ZXIgaW5wdXRbdHlwZT1idXR0b25dLmJ1dHRvbi1naG9zdC5mb2N1cyxcbi5zaXRlLWZvb3RlciBpbnB1dFt0eXBlPWJ1dHRvbl0uYnV0dG9uLWdob3N0OmZvY3VzLFxuLnNpdGUtZm9vdGVyIGlucHV0W3R5cGU9YnV0dG9uXS5idXR0b24tZ2hvc3Q6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1idXR0b24tYmFja2dyb3VuZCk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItYnV0dG9uLWJhY2tncm91bmQpO1xuICBjb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xufVxuXG5sZWdlbmQsXG5sYWJlbCB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1mb3JtLWxhYmVsLXRleHQpO1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1pbnB1dC1maWVsZHMpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtc2VtaWJvbGQpO1xufVxuXG5pbnB1dCArIGxhYmVsIHtcbiAgZm9udC13ZWlnaHQ6IHVuc2V0O1xufVxuXG50ZXh0YXJlYSxcbmlucHV0W3R5cGU9dGV4dF0sXG5pbnB1dFt0eXBlPXRlbF0sXG5pbnB1dFt0eXBlPXVybF0sXG5pbnB1dFt0eXBlPXBhc3N3b3JkXSxcbmlucHV0W3R5cGU9bnVtYmVyXSxcbmlucHV0W3R5cGU9bW9udGhdLFxuaW5wdXRbdHlwZT13ZWVrXSxcbmlucHV0W3R5cGU9ZW1haWxdLFxuaW5wdXRbdHlwZT1zZWFyY2hdIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmFja2dyb3VuZC1pbnB1dC1maWVsZCk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItYm9yZGVyLWZvcm1zKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1pbnB1dC1maWVsZCk7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogdmFyKC0tYm9yZGVyLXdpZHRoLWlucHV0LWZpZWxkKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWZvcm0tdGV4dCk7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXBhcmFncmFwaCk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWlucHV0LWZpZWxkcyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1mb3JtLWxpbmUtaGVpZ2h0KTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZy1ib3R0b206IHZhcigtLWZvcm0tcGFkZGluZy12ZXJ0aWNhbCk7XG4gIHBhZGRpbmctbGVmdDogdmFyKC0tZm9ybS1wYWRkaW5nLWhvcml6b250YWwpO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1mb3JtLXBhZGRpbmctaG9yaXpvbnRhbCk7XG4gIHBhZGRpbmctdG9wOiB2YXIoLS1mb3JtLXBhZGRpbmctdmVydGljYWwpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjU1cztcbn1cbnRleHRhcmVhOjpwbGFjZWhvbGRlcixcbmlucHV0W3R5cGU9dGV4dF06OnBsYWNlaG9sZGVyLFxuaW5wdXRbdHlwZT10ZWxdOjpwbGFjZWhvbGRlcixcbmlucHV0W3R5cGU9dXJsXTo6cGxhY2Vob2xkZXIsXG5pbnB1dFt0eXBlPXBhc3N3b3JkXTo6cGxhY2Vob2xkZXIsXG5pbnB1dFt0eXBlPW51bWJlcl06OnBsYWNlaG9sZGVyLFxuaW5wdXRbdHlwZT1tb250aF06OnBsYWNlaG9sZGVyLFxuaW5wdXRbdHlwZT13ZWVrXTo6cGxhY2Vob2xkZXIsXG5pbnB1dFt0eXBlPWVtYWlsXTo6cGxhY2Vob2xkZXIsXG5pbnB1dFt0eXBlPXNlYXJjaF06OnBsYWNlaG9sZGVyIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXBsYWNlaG9sZGVyKTtcbiAgb3BhY2l0eTogdmFyKC0tb3BhY2l0eS1wbGFjZWhvbGRlcik7XG59XG50ZXh0YXJlYTpmb2N1cyxcbmlucHV0W3R5cGU9dGV4dF06Zm9jdXMsXG5pbnB1dFt0eXBlPXRlbF06Zm9jdXMsXG5pbnB1dFt0eXBlPXVybF06Zm9jdXMsXG5pbnB1dFt0eXBlPXBhc3N3b3JkXTpmb2N1cyxcbmlucHV0W3R5cGU9bnVtYmVyXTpmb2N1cyxcbmlucHV0W3R5cGU9bW9udGhdOmZvY3VzLFxuaW5wdXRbdHlwZT13ZWVrXTpmb2N1cyxcbmlucHV0W3R5cGU9ZW1haWxdOmZvY3VzLFxuaW5wdXRbdHlwZT1zZWFyY2hdOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmFja2dyb3VuZC1pbnB1dC1maWVsZCk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItYm9yZGVyLWZvcm1zLWZvY3VzKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWZvcm0tdGV4dCk7XG59XG50ZXh0YXJlYTpmb2N1czo6cGxhY2Vob2xkZXIsXG5pbnB1dFt0eXBlPXRleHRdOmZvY3VzOjpwbGFjZWhvbGRlcixcbmlucHV0W3R5cGU9dGVsXTpmb2N1czo6cGxhY2Vob2xkZXIsXG5pbnB1dFt0eXBlPXVybF06Zm9jdXM6OnBsYWNlaG9sZGVyLFxuaW5wdXRbdHlwZT1wYXNzd29yZF06Zm9jdXM6OnBsYWNlaG9sZGVyLFxuaW5wdXRbdHlwZT1udW1iZXJdOmZvY3VzOjpwbGFjZWhvbGRlcixcbmlucHV0W3R5cGU9bW9udGhdOmZvY3VzOjpwbGFjZWhvbGRlcixcbmlucHV0W3R5cGU9d2Vla106Zm9jdXM6OnBsYWNlaG9sZGVyLFxuaW5wdXRbdHlwZT1lbWFpbF06Zm9jdXM6OnBsYWNlaG9sZGVyLFxuaW5wdXRbdHlwZT1zZWFyY2hdOmZvY3VzOjpwbGFjZWhvbGRlciB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1wbGFjZWhvbGRlci1mb2N1cyk7XG4gIG9wYWNpdHk6IHZhcigtLW9wYWNpdHktcGxhY2Vob2xkZXItZm9jdXMpO1xufVxuXG5zZWxlY3Qge1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbCwgJTNDc3ZnIHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCI5XCIgdmlld0JveD1cIjAgMCAxMiA5XCIgZmlsbD1cIm5vbmVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIlM0UlM0NwYXRoIGQ9XCJNMi4wNDkgMS41NTJMNi4yMiA2LjI2OGEuMTg4LjE4OCAwIDAwLjI4IDBsNC4xNzMtNC43MTZcIiBzdHJva2U9XCIlMjMyMTIxMjFcIiBzdHJva2Utd2lkdGg9XCIxLjVcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIi8lM0UlM0NkZWZzJTNFJTNDcGF0aCBmaWxsPVwibm9uZVwiIHRyYW5zZm9ybT1cInRyYW5zbGF0ZSguODYxIC40NSlcIiBkPVwiTTAgMGgxMC41NDR2Ny45NUgwelwiLyUzRSUzQy9kZWZzJTNFJTNDL3N2ZyUzRSUwQScpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCB2YXIoLS1nYXAtc2VsZWN0LWljb24pIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiAxMXB4IGF1dG87XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItYm9yZGVyLWZvcm1zKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zZWxlY3QpO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IHZhcigtLWJvcmRlci13aWR0aC1pbnB1dC1maWVsZCk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1mb3JtLXRleHQpO1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1wYXJhZ3JhcGgpO1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1pbnB1dC1maWVsZHMpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tZm9ybS1saW5lLWhlaWdodCk7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWluLXdpZHRoOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tZm9ybS1wYWRkaW5nLXZlcnRpY2FsKTtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoLS1mb3JtLXBhZGRpbmctaG9yaXpvbnRhbCk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhcigtLWZvcm0tcGFkZGluZy1ob3Jpem9udGFsKTtcbiAgcGFkZGluZy10b3A6IHZhcigtLWZvcm0tcGFkZGluZy12ZXJ0aWNhbCk7XG4gIHRleHQtaW5kZW50OiAxcHg7XG4gIHRyYW5zaXRpb246IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG5pbnB1dFt0eXBlPXJhZGlvXSxcbmlucHV0W3R5cGU9Y2hlY2tib3hdIHtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmFja2dyb3VuZC1pbnB1dC1maWVsZCk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJvcmRlci1mb3Jtcyk7XG4gIGNvbG9yOiBjdXJyZW50Q29sb3I7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGZvbnQ6IGluaGVyaXQ7XG4gIGhlaWdodDogdmFyKC0tc2l6ZS1jaGVja2JveCk7XG4gIG1hcmdpbjogMDtcbiAgcGxhY2UtY29udGVudDogY2VudGVyO1xuICB3aWR0aDogdmFyKC0tc2l6ZS1jaGVja2JveCk7XG59XG5cbmlucHV0W3R5cGU9cmFkaW9dOjpiZWZvcmUsXG5pbnB1dFt0eXBlPXJhZGlvXSB7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbn1cblxuaW5wdXRbdHlwZT1jaGVja2JveF06OmJlZm9yZSxcbmlucHV0W3R5cGU9Y2hlY2tib3hdIHtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1jaGVja2JveCk7XG59XG5cbmlucHV0W3R5cGU9cmFkaW9dOjpiZWZvcmUsXG5pbnB1dFt0eXBlPWNoZWNrYm94XTo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItY2hlY2tib3gtY2hlY2tlZCk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sLCAlM0NzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiB3aWR0aD1cIjE2XCIgaGVpZ2hnPVwiMTZcIiUzRSUzQ2cgY2xhc3M9XCJuYy1pY29uLXdyYXBwZXJcIiBzdHJva2Utd2lkdGg9XCIzXCIgZmlsbD1cIiUyMzdlZmZlMVwiIHN0cm9rZT1cIiUyMzdlZmZlMVwiJTNFJTNDcG9seWxpbmUgZmlsbD1cIm5vbmVcIiBzdHJva2U9XCIlMjM3ZWZmZTFcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiBzdHJva2UtbWl0ZXJsaW1pdD1cIjEwXCIgcG9pbnRzPVwiMSwgOSA1LCAxMyAxNSwgM1wiIGRhdGEtY2FwPVwiYnV0dFwiJTNFJTNDL3BvbHlsaW5lJTNFJTNDL2clM0UlM0Mvc3ZnJTNFJTBBJyk7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiB2YXIoLS1zaXplLWNoZWNrYm94LW1hcmtlcikgdmFyKC0tc2l6ZS1jaGVja2JveC1tYXJrZXIpO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1jaGVja2JveC1jaGVja2VkKTtcbiAgY29udGVudDogXCJcIjtcbiAgaGVpZ2h0OiB2YXIoLS1zaXplLWNoZWNrYm94KTtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjgpO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycztcbiAgd2lkdGg6IHZhcigtLXNpemUtY2hlY2tib3gpO1xufVxuXG5pbnB1dFt0eXBlPXJhZGlvXTpjaGVja2VkOjpiZWZvcmUsXG5pbnB1dFt0eXBlPWNoZWNrYm94XTpjaGVja2VkOjpiZWZvcmUge1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xufVxuXG5pbnB1dFt0eXBlPXJhZGlvXTpjaGVja2VkLFxuaW5wdXRbdHlwZT1jaGVja2JveF06Y2hlY2tlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG5pbnB1dFt0eXBlPXJhZGlvXTpob3ZlcixcbmlucHV0W3R5cGU9cmFkaW9dICsgbGFiZWw6aG92ZXIsXG5pbnB1dFt0eXBlPXJhZGlvXTpmb2N1cyxcbmlucHV0W3R5cGU9cmFkaW9dICsgbGFiZWw6Zm9jdXMsXG5pbnB1dFt0eXBlPWNoZWNrYm94XTpob3ZlcixcbmlucHV0W3R5cGU9Y2hlY2tib3hdICsgbGFiZWw6aG92ZXIsXG5pbnB1dFt0eXBlPWNoZWNrYm94XTpmb2N1cyxcbmlucHV0W3R5cGU9Y2hlY2tib3hdICsgbGFiZWw6Zm9jdXMge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5jYXQge1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gIG1hcmdpbi10b3A6IDRyZW07XG59XG4uY2F0IGEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1jYXRlZ29yeS1ib3JkZXIpO1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogMXB4IDFweCAycHg7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1jYXRlZ29yeS10ZXh0KTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0xNik7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAwLjVlbTtcbiAgcGFkZGluZzogMC4yZW0gMC42ZW07XG4gIHRyYW5zaXRpb246IGFsbCAxNTBtcztcbn1cbi5jYXQgYTpob3Zlcixcbi5jYXQgYTpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItdGFnLWJvcmRlci1ob3Zlcik7XG59XG5cbi50YWdzIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tbWFyZ2luLWJldHdlZW4tdGV4dC1lbGVtZW50cyk7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4udGFncyBsaSB7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICBtYXJnaW4tdG9wOiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG4udGFncyBhIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItdGFnLWJvcmRlcik7XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXdpZHRoOiAxcHggMXB4IDJweDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRhZy10ZXh0KTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0xNCk7XG4gIG1hcmdpbi1yaWdodDogMC40ZW07XG4gIHBhZGRpbmc6IDAuMmVtIDAuNmVtO1xuICB0cmFuc2l0aW9uOiBhbGwgMTUwbXM7XG59XG4udGFncyBhOmhvdmVyLFxuLnRhZ3MgYTpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItdGFnLWJvcmRlci1ob3Zlcik7XG59XG5cbi5wb3N0LW5hdmlnYXRpb24gLm5hdi1saW5rcyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xufVxuXG46cm9vdCB7XG4gIC0tY29sb3ItYm9yZGVyLXN0aWNreTogI2Q3ZTRmMjtcbiAgLS1jb2xvci1ieXBvc3RhdXRob3I6IHJnYig0MiA0NSA2MiAvIC41KTtcbn1cblxuLnN0aWNreSB7XG4gIGJvcmRlcjogMXB4IGRhc2hlZCB2YXIoLS1jb2xvci1ib3JkZXItc3RpY2t5KTtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgcGFkZGluZzogMnJlbTtcbn1cblxuLmNvbW1lbnQtbGlzdCBsaS5ieXBvc3RhdXRob3IsXG4uYnlwb3N0YXV0aG9yIHtcbiAgYm9yZGVyOiAxcHggZGFzaGVkIHZhcigtLWNvbG9yLWJ5cG9zdGF1dGhvcik7XG4gIHBhZGRpbmc6IDJyZW07XG59XG5cbi53cC1jYXB0aW9uIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuLndwLWNhcHRpb24gaW1nW2NsYXNzKj13cC1pbWFnZS1dIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuLndwLWNhcHRpb24gLndwLWNhcHRpb24tdGV4dCB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgcGFkZGluZzogMXJlbSAwO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4udG9wIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmFja2dyb3VuZC10b3ApO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIGJvdHRvbTogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtMTYpO1xuICBoZWlnaHQ6IDNyZW07XG4gIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICBvcGFjaXR5OiAwO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHJpZ2h0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRyYW5zaXRpb246IDUwMG1zIG9wYWNpdHk7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgd2lkdGg6IDNyZW07XG4gIHotaW5kZXg6IDE7XG59XG4udG9wOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmFja2dyb3VuZC10b3AtaG92ZXIpO1xufVxuLnRvcDpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJhY2tncm91bmQtdG9wKTtcbn1cblxuLnRvcC5pcy12aXNpYmxlIHtcbiAgb3BhY2l0eTogMTtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbn1cblxuLmdhbGxlcnkge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLWdhcDogMS41ZW07XG4gIG1hcmdpbi1ib3R0b206IDEuNWVtO1xufVxuXG4uZ2FsbGVyeS1pdGVtIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uZ2FsbGVyeS1jb2x1bW5zLTIge1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xufVxuXG4uZ2FsbGVyeS1jb2x1bW5zLTMge1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCAxZnIpO1xufVxuXG4uZ2FsbGVyeS1jb2x1bW5zLTQge1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg0LCAxZnIpO1xufVxuXG4uZ2FsbGVyeS1jb2x1bW5zLTUge1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg1LCAxZnIpO1xufVxuXG4uZ2FsbGVyeS1jb2x1bW5zLTYge1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg2LCAxZnIpO1xufVxuXG4uZ2FsbGVyeS1jb2x1bW5zLTcge1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg3LCAxZnIpO1xufVxuXG4uZ2FsbGVyeS1jb2x1bW5zLTgge1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg4LCAxZnIpO1xufVxuXG4uZ2FsbGVyeS1jb2x1bW5zLTkge1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg5LCAxZnIpO1xufVxuXG4uZ2FsbGVyeS1jYXB0aW9uIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5uYXZpZ2F0aW9uOm5vdCgucG9zdC1uYXZpZ2F0aW9uKSAubmF2LWxpbmtzIHtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWhlYWRpbmcpO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgbWFyZ2luLXRvcDogNHJlbTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgd2lkdGg6IDEwMCU7XG59XG4ubmF2aWdhdGlvbjpub3QoLnBvc3QtbmF2aWdhdGlvbikgLm5hdi1saW5rcyBhIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4ucGFnZS1udW1iZXJzIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgdmFyKC0tY29sb3ItYmx1ZS1jaGFsayk7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgdmFyKC0tY29sb3ItYmx1ZS1jaGFsayk7XG4gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJsdWUtY2hhbGspO1xuICBib3JkZXItdG9wOiAycHggc29saWQgdmFyKC0tY29sb3ItYmx1ZS1jaGFsayk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1wYWdpbmF0aW9uLXRleHQpO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTtcbiAgaGVpZ2h0OiAzNXB4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgdHJhbnNpdGlvbjogYWxsIDE1MG1zO1xuICB3aWR0aDogMzVweDtcbn1cbi5wYWdlLW51bWJlcnM6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiA0cHg7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiA0cHg7XG59XG4ucGFnZS1udW1iZXJzOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogNHB4O1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogNHB4O1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA2MDBweCkge1xuICAucGFnZS1udW1iZXJzIHtcbiAgICBoZWlnaHQ6IDI2cHg7XG4gICAgd2lkdGg6IDI2cHg7XG4gIH1cbn1cblxuYS5wYWdlLW51bWJlcnM6aG92ZXIsXG5hLnBhZ2UtbnVtYmVyczpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXBhZ2luYXRpb24tYmFja2dyb3VuZC1ob3Zlcik7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItcGFnaW5hdGlvbi1ib3JkZXItaG92ZXIpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItcGFnaW5hdGlvbi10ZXh0LWhvdmVyKTtcbn1cblxuLnBhZ2UtbnVtYmVycy5jdXJyZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItcGFnaW5hdGlvbi1iYWNrZ3JvdW5kLWN1cnJlbnQpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLXBhZ2luYXRpb24tYm9yZGVyLWN1cnJlbnQpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItcGFnaW5hdGlvbi10ZXh0LWN1cnJlbnQpO1xufVxuXG4ucGFnZS1udW1iZXJzLm5leHQsXG4ucGFnZS1udW1iZXJzLnByZXYge1xuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gIHdpZHRoOiBhdXRvO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDYwMHB4KSB7XG4gIC5wYWdlLW51bWJlcnMubmV4dCxcbi5wYWdlLW51bWJlcnMucHJldiB7XG4gICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gIH1cbn1cblxuZGl2LnZhbGlkYXRpb25fZXJyb3Ige1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1lcnJvcik7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTE3KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1mb3JtLXJvdy1nYXApO1xuICBwYWRkaW5nOiAycmVtO1xufVxuZGl2LnZhbGlkYXRpb25fZXJyb3I6Zm9jdXMge1xuICBjb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xufVxuXG5ib2R5ICpbYXJpYS1pbnZhbGlkPXRydWVdIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1lcnJvcik7XG59XG5cbi52YWxpZGF0aW9uX21lc3NhZ2Uge1xuICBjb2xvcjogdmFyKC0tY29sb3ItZXJyb3IpO1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0xNik7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1yZWd1bGFyKTtcbn1cblxuLnZhbGlkYXRpb25fbGlzdCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLWZvcm0tcm93LWdhcCk7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBwYWRkaW5nOiAwO1xufVxuLnZhbGlkYXRpb25fbGlzdCBhIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWVycm9yKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuLnZhbGlkYXRpb25fbGlzdCBsaSB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1lcnJvcik7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcbn1cblxuLmdmb3JtX3JlcXVpcmVkX2xlZ2VuZCxcbi5zci1vbmx5IHtcbiAgYm9yZGVyOiAwO1xuICBjbGlwOiByZWN0KDFweCwgMXB4LCAxcHgsIDFweCk7XG4gIGNsaXAtcGF0aDogaW5zZXQoNTAlKTtcbiAgaGVpZ2h0OiAxcHg7XG4gIG1hcmdpbjogLTFweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZzogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xuICB3b3JkLXdyYXA6IG5vcm1hbCAhaW1wb3J0YW50O1xufVxuLmdmb3JtX3JlcXVpcmVkX2xlZ2VuZDpmb2N1cyxcbi5zci1vbmx5OmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBib3gtc2hhZG93OiAwIDAgMnB4IDJweCByZ2JhKDIyLCAyMiwgMjIsIDAuNik7XG4gIGNsaXA6IGF1dG87XG4gIGNsaXAtcGF0aDogbm9uZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMS43cmVtO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XG4gIGhlaWdodDogYXV0bztcbiAgbGVmdDogNXB4O1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICBwYWRkaW5nOiAxNXB4IDIzcHggMTRweDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0b3A6IDVweDtcbiAgd2lkdGg6IGF1dG87XG4gIHotaW5kZXg6IDEwMDAwMDtcbn1cblxuLmdmaWVsZF9yZXF1aXJlZC5nZmllbGRfcmVxdWlyZWRfYXN0ZXJpc2sge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1yZXF1aXJlZC1hc3Rlcmlzay1sYWJlbCk7XG59XG5cbi5nZmllbGRfcmVxdWlyZWQuZ2ZpZWxkX3JlcXVpcmVkX2FzdGVyaXNrLFxuLmdmaWVsZF9yZXF1aXJlZC5nZmllbGRfcmVxdWlyZWRfdGV4dCB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1yZXF1aXJlZC1sYWJlbC10ZXh0KTtcbn1cblxuLmdmaWVsZF9yZXF1aXJlZC5nZmllbGRfcmVxdWlyZWRfdGV4dCB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXJlcXVpcmVkLXRleHQtbGFiZWwpO1xufVxuXG4uZ2Zvcm1fd3JhcHBlciA+IGZvcm0ge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLWNvbHVtbi1nYXA6IHZhcigtLWZvcm0tY29sdW1uLWdhcCk7XG4gIGdyaWQtcm93LWdhcDogdmFyKC0tZm9ybS1yb3ctZ2FwKTtcbn1cblxuLmdmb3JtLWJvZHkgdWwge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG4uZ2Zvcm0tYm9keSB0ZXh0YXJlYSxcbi5nZm9ybS1ib2R5IGlucHV0Om5vdChbdHlwZT1jaGVja2JveF0pOm5vdChbdHlwZT1yYWRpb10pIHtcbiAgd2lkdGg6IDEwMCU7XG59XG4uZ2Zvcm0tYm9keSAuZ2lucHV0X2NvbnRhaW5lci5naW5wdXRfY29udGFpbmVyX3RleHRhcmVhIHtcbiAgZGlzcGxheTogZmxleDtcbn1cbi5nZm9ybS1ib2R5IC5nZmllbGRfcmFkaW8sXG4uZ2Zvcm0tYm9keSAuZ2ZpZWxkX2NoZWNrYm94IHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ2FwOiAxcmVtO1xufVxuLmdmb3JtLWJvZHkgLmdjaG9pY2Uge1xuICBkaXNwbGF5OiBmbGV4O1xuICBnYXA6IDFyZW07XG59XG4uZ2Zvcm0tYm9keSAuZ2ZpZWxkX2xhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGdhcDogdmFyKC0tZm9ybS1yZXF1aXJlZC1nYXApO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBtYXJnaW4tdG9wOiAxcmVtO1xuICBwYWRkaW5nLWlubGluZS1lbmQ6IDA7XG4gIHBhZGRpbmctaW5saW5lLXN0YXJ0OiAwO1xufVxuLmdmb3JtLWJvZHkgLmdmb3JtX2ZpZWxkcyB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtY29sdW1uLWdhcDogdmFyKC0tZm9ybS1jb2x1bW4tZ2FwKTtcbiAgZ3JpZC1yb3ctZ2FwOiB2YXIoLS1mb3JtLXJvdy1nYXApO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgxMiwgMWZyKTtcbiAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiByZXBlYXQoYXV0by1maWxsLCBhdXRvKTtcbiAgd2lkdGg6IDEwMCU7XG59XG4uZ2Zvcm0tYm9keSAuZ2ZpZWxkIHtcbiAgYm9yZGVyOiAwO1xuICBncmlkLWNvbHVtbjogMS8tMTtcbiAgcGFkZGluZzogMDtcbn1cbi5nZm9ybS1ib2R5IC5nZmllbGQuZ2ZpZWxkLS13aWR0aC1mdWxsIHtcbiAgZ3JpZC1jb2x1bW46IHNwYW4gMTI7XG59XG4uZ2Zvcm0tYm9keSAuZ2ZpZWxkLmdmaWVsZC0td2lkdGgtZWxldmVuLXR3ZWxmdGhzIHtcbiAgZ3JpZC1jb2x1bW46IHNwYW4gMTE7XG59XG4uZ2Zvcm0tYm9keSAuZ2ZpZWxkLmdmaWVsZC0td2lkdGgtZml2ZS1zaXh0aHMge1xuICBncmlkLWNvbHVtbjogc3BhbiAxMDtcbn1cbi5nZm9ybS1ib2R5IC5nZmllbGQuZ2ZpZWxkLS13aWR0aC10aHJlZS1xdWFydGVyIHtcbiAgZ3JpZC1jb2x1bW46IHNwYW4gOTtcbn1cbi5nZm9ybS1ib2R5IC5nZmllbGQuZ2ZpZWxkLS13aWR0aC10d28tdGhpcmRzIHtcbiAgZ3JpZC1jb2x1bW46IHNwYW4gODtcbn1cbi5nZm9ybS1ib2R5IC5nZmllbGQuZ2ZpZWxkLS13aWR0aC1zZXZlbi10d2VsZnRocyB7XG4gIGdyaWQtY29sdW1uOiBzcGFuIDc7XG59XG4uZ2Zvcm0tYm9keSAuZ2ZpZWxkLmdmaWVsZC0td2lkdGgtaGFsZiB7XG4gIGdyaWQtY29sdW1uOiBzcGFuIDY7XG59XG4uZ2Zvcm0tYm9keSAuZ2ZpZWxkLmdmaWVsZC0td2lkdGgtZml2ZS10d2VsZnRocyB7XG4gIGdyaWQtY29sdW1uOiBzcGFuIDU7XG59XG4uZ2Zvcm0tYm9keSAuZ2ZpZWxkLmdmaWVsZC0td2lkdGgtdGhpcmQge1xuICBncmlkLWNvbHVtbjogc3BhbiA0O1xufVxuLmdmb3JtLWJvZHkgLmdmaWVsZC5nZmllbGQtLXdpZHRoLXF1YXJ0ZXIge1xuICBncmlkLWNvbHVtbjogc3BhbiAzO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDY0MHB4KSB7XG4gIC5nZm9ybS1ib2R5IC5nZm9ybV9maWVsZHMge1xuICAgIGdyaWQtY29sdW1uLWdhcDogMDtcbiAgfVxuICAuZ2Zvcm0tYm9keSAuZ2ZpZWxkOm5vdCguZ2ZpZWxkLS13aWR0aC1mdWxsKSB7XG4gICAgZ3JpZC1jb2x1bW46IDEvLTE7XG4gIH1cbn1cblxuLmdmb3JtX3ZhbGlkYXRpb25fY29udGFpbmVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmdmb3JtX2NvbmZpcm1hdGlvbl9tZXNzYWdlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLWNvbG9yLXN1Y2Nlc3MpO1xuICBjb2xvcjogdmFyKC0tY29sb3Itc3VjY2Vzcyk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXBhcmFncmFwaCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1zZW1pYm9sZCk7XG4gIHBhZGRpbmc6IDJyZW07XG59XG5cbi5ibG9jay1zZWFyY2gsXG4uYmxvY2stc2VhcmNoLXJlc3VsdHMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG59XG5cbi5ibG9jay1zZWFyY2ggZm9ybSB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIC8qIGF1dG9wcmVmaXhlcjogb2ZmICovXG4gIGdyaWQtZ2FwOiAxcmVtO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDlmciAxZnI7XG59XG4uYmxvY2stc2VhcmNoIGZvcm0gaW5wdXQsXG4uYmxvY2stc2VhcmNoIGZvcm0gbGFiZWwge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmJsb2NrLXNlYXJjaC1yZXN1bHRzID4gLmNvbnRhaW5lciB7XG4gIHBhZGRpbmctdG9wOiAwO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAuYmxvY2stc2VhcmNoLXJlc3VsdHMgPiAuY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICB9XG59XG4uYmxvY2stc2VhcmNoLXJlc3VsdHMgLnJvdy1yZXN1bHQge1xuICBib3JkZXItdG9wOiAycHggc29saWQgdmFyKC0tY29sb3ItYm9yZGVyLWZvcm1zKTtcbiAgcGFkZGluZzogMnJlbSAwO1xufVxuLmJsb2NrLXNlYXJjaC1yZXN1bHRzIC5yb3ctcmVzdWx0Omxhc3Qtb2YtdHlwZSB7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCB2YXIoLS1jb2xvci1ib3JkZXItZm9ybXMpO1xufVxuLmJsb2NrLXNlYXJjaC1yZXN1bHRzIGgzIHtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaDQpO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuLmJsb2NrLXNlYXJjaC1yZXN1bHRzIHAge1xuICBtYXJnaW4tdG9wOiAxcmVtO1xufVxuLmJsb2NrLXNlYXJjaC1yZXN1bHRzIC50YWdzIGEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1iYWNrZ3JvdW5kLXRhZyk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1tYWluKTtcbn1cbi5ibG9jay1zZWFyY2gtcmVzdWx0cyAudGFncyBhOmhvdmVyLCAuYmxvY2stc2VhcmNoLXJlc3VsdHMgLnRhZ3MgYTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLW1haW4pO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYmFja2dyb3VuZC10YWcpO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLmJsb2NrLWVycm9yLTQwNCAuY29udGFpbmVyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTAlO1xuICAgIHBhZGRpbmctdG9wOiAxMCU7XG4gIH1cbn1cbi5ibG9jay1lcnJvci00MDQgaDEge1xuICBmb250LXNpemU6IGNsYW1wKDQycHgsIC0yNS43MTQyODU3MTQzcHggKyAwLjE0MTA3MTQyODYgKiAxMDB2dywgMjAwcHgpO1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xufVxuXG4uY29tbWVudHMtYXJlYSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIG1hcmdpbi10b3A6IDUwcHg7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4uY29tbWVudC1saXN0IHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuLmNvbW1lbnQtbGlzdCAuY2hpbGRyZW4ge1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuLmNvbW1lbnQtbGlzdCBsaSB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTE0KTtcbiAgbWFyZ2luLWJvdHRvbTogNzBweDtcbiAgbWFyZ2luLXRvcDogMDtcbiAgcGFkZGluZzogMDtcbn1cbi5jb21tZW50LWxpc3QgcCB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1jb21tZW50LXRleHQpO1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0xNCk7XG59XG4uY29tbWVudC1saXN0IC5hdmF0YXIge1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGZsb2F0OiByaWdodDtcbn1cbi5jb21tZW50LWxpc3QgLmNvbW1lbnQtYXV0aG9yIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWNvbW1lbnQtYXV0aG9yLXRleHQpO1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oNCk7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIG1hcmdpbi10b3A6IDA7XG4gIHBhZGRpbmc6IDA7XG59XG4uY29tbWVudC1saXN0IGEsXG4uY29tbWVudC1saXN0IC5jb21tZW50cy1saW5rIGEge1xuICBib3gtc2hhZG93OiBub25lO1xuICBjb2xvcjogdmFyKC0tY29sb3ItbGluay1jb21tZW50KTtcbn1cbi5jb21tZW50LWxpc3QgLmNvbW1lbnQtYXV0aG9yIGEge1xuICBjb2xvcjogdmFyKC0tY29sb3ItcGFyYWdyYXBoKTtcbn1cbi5jb21tZW50LWxpc3QgLmNvbW1lbnQtdGltZSB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTE0KTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuLmNvbW1lbnQtbGlzdCAuY29tbWVudC10aW1lIGEge1xuICBjb2xvcjogdmFyKC0tY29sb3ItbGluay1jb21tZW50LXRpbWUtYW5jaG9yKTtcbn1cbi5jb21tZW50LWxpc3QgLmNvbW1lbnQtdGltZTpmb2N1cywgLmNvbW1lbnQtbGlzdCAuY29tbWVudC10aW1lOmhvdmVyIHtcbiAgb3BhY2l0eTogMTtcbn1cbi5jb21tZW50LWxpc3QgLmNvbW1lbnQtdGltZSBzdmcge1xuICBmaWxsOiB2YXIoLS1jb2xvci1saW5rLWNvbW1lbnQtdGltZS1hbmNob3IpO1xuICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IDJweDtcbn1cblxuLmNvbW1lbnRzLWxpbmsge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtMTQpO1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cbi5jb21tZW50cy1saW5rIGEge1xuICBjb2xvcjogdmFyKC0tY29sb3ItbGluay1jb21tZW50KTtcbn1cbi5jb21tZW50cy1saW5rOmhvdmVyLCAuY29tbWVudHMtbGluazpmb2N1cyxcbi5jb21tZW50cy1saW5rIGE6aG92ZXIsXG4uY29tbWVudHMtbGluayBhOmZvY3VzIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTtcbn1cbi5jb21tZW50cy1saW5rIHN2ZyB7XG4gIG1hcmdpbi1yaWdodDogN3B4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogLTFweDtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5jb21tZW50LWZvcm0ge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC1nYXA6IDFlbTtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XG4gICAgLyogYXV0b3ByZWZpeGVyOiBvZmYgKi9cbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgfVxuICAuY29tbWVudC1mb3JtIC5jb21tZW50LW5vdGVzLFxuLmNvbW1lbnQtZm9ybSAuY29tbWVudC1mb3JtLWNvbW1lbnQsXG4uY29tbWVudC1mb3JtIC5mb3JtLXN1Ym1pdCB7XG4gICAgZ3JpZC1jb2x1bW46IDEvc3BhbiAyO1xuICB9XG59XG5cbi5jb21tZW50LXJlc3BvbmQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAuY29tbWVudC1yZXNwb25kIGlucHV0IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuLmNvbW1lbnQtcmVzcG9uZCAuY29tbWVudC1mb3JtLWF1dGhvciB7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIG1hcmdpbi10b3A6IDA7XG59XG4uY29tbWVudC1yZXNwb25kIC5jb21tZW50LWZvcm0tYXV0aG9yIGlucHV0IHtcbiAgYm9yZGVyLXdpZHRoOiAxcHg7XG4gIHBhZGRpbmc6IDE1cHg7XG4gIHdpZHRoOiAxMDAlO1xufVxuLmNvbW1lbnQtcmVzcG9uZCAuY29tbWVudC1mb3JtLWVtYWlsIHtcbiAgY2xlYXI6IHJpZ2h0O1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi10b3A6IDA7XG59XG4uY29tbWVudC1yZXNwb25kIC5jb21tZW50LWZvcm0tZW1haWwgaW5wdXQge1xuICBib3JkZXItd2lkdGg6IDFweDtcbiAgcGFkZGluZzogMTVweDtcbiAgd2lkdGg6IDEwMCU7XG59XG4uY29tbWVudC1yZXNwb25kIC5jb21tZW50LWZvcm0tdXJsIHtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgbWFyZ2luLXRvcDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmNvbW1lbnQtcmVzcG9uZCAuY29tbWVudC1mb3JtLXVybCBpbnB1dCB7XG4gIGJvcmRlci13aWR0aDogMXB4O1xuICBwYWRkaW5nOiAxNXB4O1xuICB3aWR0aDogMTAwJTtcbn1cbi5jb21tZW50LXJlc3BvbmQgLmZvcm0tc3VibWl0IHtcbiAgY2xlYXI6IGJvdGg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBtYXJnaW4tdG9wOiAwO1xufVxuLmNvbW1lbnQtcmVzcG9uZCAuY29tbWVudC1mb3JtLWNvbW1lbnQge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuLmNvbW1lbnQtcmVzcG9uZCB0ZXh0YXJlYSB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyLFxuLmFydGljbGUtY29udGVudCB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgcGFkZGluZy1ib3R0b206IHZhcigtLXBhZGRpbmctYmxvY2spO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHBhZGRpbmctdG9wOiB2YXIoLS1wYWRkaW5nLWJsb2NrKTtcbn1cblxuLmFydGljbGUtY29udGVudCA+IFtjbGFzc149d3AtYmxvY2stXSxcbi5pcy1yb290LWNvbnRhaW5lciA+ICosXG4uYXJ0aWNsZS1jb250ZW50ID4gKiB7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1wYXJhZ3JhcGgpO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXgtd2lkdGg6IDgwMHB4O1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDg0MHB4KSB7XG4gIC5hcnRpY2xlLWNvbnRlbnQgPiBbY2xhc3NePXdwLWJsb2NrLV0sXG4uaXMtcm9vdC1jb250YWluZXIgPiAqLFxuLmFydGljbGUtY29udGVudCA+ICoge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gIH1cbiAgLmFydGljbGUtY29udGVudCA+IFtjbGFzc149d3AtYmxvY2stXS5hbGlnbmZ1bGwsXG4uaXMtcm9vdC1jb250YWluZXIgPiAqLmFsaWduZnVsbCxcbi5hcnRpY2xlLWNvbnRlbnQgPiAqLmFsaWduZnVsbCB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCkgKiAyKTtcbiAgfVxufVxuXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIGJsb2NrcXVvdGUgKyBjaXRlLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciBibG9ja3F1b3RlICsgcCA+IGNpdGUsXG4uYXJ0aWNsZS1jb250ZW50IGJsb2NrcXVvdGUgKyBjaXRlLFxuLmFydGljbGUtY29udGVudCBibG9ja3F1b3RlICsgcCA+IGNpdGUge1xuICBtYXJnaW4tYm90dG9tOiA0cmVtO1xufVxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciBibG9ja3F1b3RlLFxuLmFydGljbGUtY29udGVudCBibG9ja3F1b3RlIHtcbiAgYm9yZGVyOiAwIG5vbmU7XG4gIGNsZWFyOiBib3RoO1xuICBwYWRkaW5nLWJvdHRvbTogM3JlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciBibG9ja3F1b3RlIHAsXG4uYXJ0aWNsZS1jb250ZW50IGJsb2NrcXVvdGUgcCB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1ibG9ja3F1b3RlKTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtc2VtaWJvbGQpO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc3MHB4KSB7XG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgYmxvY2txdW90ZSxcbi5hcnRpY2xlLWNvbnRlbnQgYmxvY2txdW90ZSB7XG4gICAgbWFyZ2luLXRvcDogNHJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogNHJlbTtcbiAgfVxufVxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stcXVvdGUsXG4uYXJ0aWNsZS1jb250ZW50IC53cC1ibG9jay1xdW90ZSB7XG4gIGJvcmRlci1sZWZ0OiAycHggc29saWQgdmFyKC0tY29sb3ItYmxvY2txdW90ZSk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1wYXJhZ3JhcGgpO1xuICBtYXJnaW4tYm90dG9tOiA0cmVtO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tdG9wOiA0cmVtO1xuICBwYWRkaW5nOiAzLjVyZW0gNnJlbTtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDEycmVtKTtcbn1cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLXF1b3RlID4gcCxcbi5hcnRpY2xlLWNvbnRlbnQgLndwLWJsb2NrLXF1b3RlID4gcCB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1ibG9ja3F1b3RlKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXBhcmFncmFwaCk7XG59XG5AbWVkaWEgKG1heC13aWR0aDogODQwcHgpIHtcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stcXVvdGUsXG4uYXJ0aWNsZS1jb250ZW50IC53cC1ibG9jay1xdW90ZSB7XG4gICAgcGFkZGluZzogMy41cmVtIDJyZW07XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpICogMik7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1xdW90ZSxcbi5hcnRpY2xlLWNvbnRlbnQgLndwLWJsb2NrLXF1b3RlIHtcbiAgICBwYWRkaW5nOiA0cmVtIDRyZW0gNHJlbSAycmVtO1xuICB9XG59XG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1ibG9ja3F1b3RlLmFsaWdud2lkZSxcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWJsb2NrcXVvdGUuYWxpZ25mdWxsLFxuLmFydGljbGUtY29udGVudCAud3AtYmxvY2stYmxvY2txdW90ZS5hbGlnbndpZGUsXG4uYXJ0aWNsZS1jb250ZW50IC53cC1ibG9jay1ibG9ja3F1b3RlLmFsaWduZnVsbCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICB3aWR0aDogY2FsYygxMDAlIC0gdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCkgKiAyKTtcbn1cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWJsb2NrcXVvdGUgYmxvY2txdW90ZSxcbi5hcnRpY2xlLWNvbnRlbnQgLndwLWJsb2NrLWJsb2NrcXVvdGUgYmxvY2txdW90ZSB7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xufVxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stYnV0dG9uX19saW5rLFxuLmFydGljbGUtY29udGVudCAud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnV0dG9uLWJhY2tncm91bmQpO1xuICBib3JkZXI6IHZhcigtLWJvcmRlci13aWR0aC1pbnB1dC1maWVsZCkgc29saWQgdmFyKC0tY29sb3ItYnV0dG9uLWJhY2tncm91bmQpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWlucHV0LWZpZWxkKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJ1dHRvbik7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1wYXJhZ3JhcGgpO1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0xNik7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1zZW1pYm9sZCk7XG4gIGxpbmUtaGVpZ2h0OiAxOS42MzY0cHg7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIG1heC13aWR0aDogMjMwcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmctYm90dG9tOiBjYWxjKDE0cHggLSB2YXIoLS1ib3JkZXItd2lkdGgtaW5wdXQtZmllbGQpICogMik7XG4gIHBhZGRpbmctbGVmdDogY2FsYygyMXB4IC0gdmFyKC0tYm9yZGVyLXdpZHRoLWlucHV0LWZpZWxkKSAqIDIpO1xuICBwYWRkaW5nLXJpZ2h0OiBjYWxjKDIxcHggLSB2YXIoLS1ib3JkZXItd2lkdGgtaW5wdXQtZmllbGQpICogMik7XG4gIHBhZGRpbmctdG9wOiBjYWxjKDE0cHggLSB2YXIoLS1ib3JkZXItd2lkdGgtaW5wdXQtZmllbGQpICogMik7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgdHJhbnNpdGlvbjogYWxsIDE1MG1zIGN1YmljLWJlemllcigwLjI1LCAwLjQ2LCAwLjQ1LCAwLjk0KTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgd2lkdGg6IGF1dG87XG59XG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1idXR0b25fX2xpbmsuZm9jdXMsIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLFxuLmFydGljbGUtY29udGVudCAud3AtYmxvY2stYnV0dG9uX19saW5rLmZvY3VzLFxuLmFydGljbGUtY29udGVudCAud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLFxuLmFydGljbGUtY29udGVudCAud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnV0dG9uLWJhY2tncm91bmQtaG92ZXIpO1xuICBib3JkZXI6IHZhcigtLWJvcmRlci13aWR0aC1pbnB1dC1maWVsZCkgc29saWQgdmFyKC0tY29sb3ItYnV0dG9uLWJhY2tncm91bmQtaG92ZXIpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnV0dG9uLWhvdmVyKTtcbn1cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWNvZGUsXG4uYXJ0aWNsZS1jb250ZW50IC53cC1ibG9jay1jb2RlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmFja2dyb3VuZC1jb2RlLWJsb2NrKTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItYmFja2dyb3VuZC1jb2RlLWJsb2NrKTtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBjb2xvcjogdmFyKC0tY29sb3ItY29kZS10ZXh0KTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LW1vbm9zcGFjZSk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTE2KTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXBhcmFncmFwaCk7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLW1hcmdpbi1iZXR3ZWVuLXRleHQtZWxlbWVudHMpO1xuICBtYXJnaW4tdG9wOiB2YXIoLS1tYXJnaW4tYmV0d2Vlbi10ZXh0LWVsZW1lbnRzKTtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIHBhZGRpbmc6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdoaXRlLXNwYWNlOiBwcmU7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbn1cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWNvZGUgPiBjb2RlLFxuLmFydGljbGUtY29udGVudCAud3AtYmxvY2stY29kZSA+IGNvZGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1jb2RlLXRleHQpO1xuICBwYWRkaW5nOiAwO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDE0ODBweCkge1xuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1jb2RlLFxuLmFydGljbGUtY29udGVudCAud3AtYmxvY2stY29kZSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpICogNCk7XG4gIH1cbn1cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWNvbHVtbnMuaGFzLTEtY29sdW1ucy5hbGlnbmZ1bGwsXG4uYXJ0aWNsZS1jb250ZW50IC53cC1ibG9jay1jb2x1bW5zLmhhcy0xLWNvbHVtbnMuYWxpZ25mdWxsIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gIHdpZHRoOiAxMDAlO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDkwMHB4KSB7XG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWNvbHVtbnMuaGFzLTEtY29sdW1ucyxcbi5hcnRpY2xlLWNvbnRlbnQgLndwLWJsb2NrLWNvbHVtbnMuaGFzLTEtY29sdW1ucyB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLWdhcDogMWVtO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDEsIDFmcik7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stY29sdW1ucy5oYXMtMS1jb2x1bW5zIC53cC1ibG9jay1jb2x1bW4sXG4uYXJ0aWNsZS1jb250ZW50IC53cC1ibG9jay1jb2x1bW5zLmhhcy0xLWNvbHVtbnMgLndwLWJsb2NrLWNvbHVtbiB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stY29sdW1ucy5oYXMtMS1jb2x1bW5zLFxuLmFydGljbGUtY29udGVudCAud3AtYmxvY2stY29sdW1ucy5oYXMtMS1jb2x1bW5zIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgxLCAxZnIpO1xuICB9XG59XG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1jb2x1bW5zLmhhcy0yLWNvbHVtbnMuYWxpZ25mdWxsLFxuLmFydGljbGUtY29udGVudCAud3AtYmxvY2stY29sdW1ucy5oYXMtMi1jb2x1bW5zLmFsaWduZnVsbCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICB3aWR0aDogMTAwJTtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA5MDBweCkge1xuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1jb2x1bW5zLmhhcy0yLWNvbHVtbnMsXG4uYXJ0aWNsZS1jb250ZW50IC53cC1ibG9jay1jb2x1bW5zLmhhcy0yLWNvbHVtbnMge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC1nYXA6IDFlbTtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWNvbHVtbnMuaGFzLTItY29sdW1ucyAud3AtYmxvY2stY29sdW1uLFxuLmFydGljbGUtY29udGVudCAud3AtYmxvY2stY29sdW1ucy5oYXMtMi1jb2x1bW5zIC53cC1ibG9jay1jb2x1bW4ge1xuICAgIG1hcmdpbjogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWNvbHVtbnMuaGFzLTItY29sdW1ucyxcbi5hcnRpY2xlLWNvbnRlbnQgLndwLWJsb2NrLWNvbHVtbnMuaGFzLTItY29sdW1ucyB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMSwgMWZyKTtcbiAgfVxufVxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stY29sdW1ucy5oYXMtMy1jb2x1bW5zLmFsaWduZnVsbCxcbi5hcnRpY2xlLWNvbnRlbnQgLndwLWJsb2NrLWNvbHVtbnMuaGFzLTMtY29sdW1ucy5hbGlnbmZ1bGwge1xuICBwYWRkaW5nLWxlZnQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgd2lkdGg6IDEwMCU7XG59XG5AbWVkaWEgKG1heC13aWR0aDogOTAwcHgpIHtcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stY29sdW1ucy5oYXMtMy1jb2x1bW5zLFxuLmFydGljbGUtY29udGVudCAud3AtYmxvY2stY29sdW1ucy5oYXMtMy1jb2x1bW5zIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtZ2FwOiAxZW07XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1jb2x1bW5zLmhhcy0zLWNvbHVtbnMgLndwLWJsb2NrLWNvbHVtbixcbi5hcnRpY2xlLWNvbnRlbnQgLndwLWJsb2NrLWNvbHVtbnMuaGFzLTMtY29sdW1ucyAud3AtYmxvY2stY29sdW1uIHtcbiAgICBtYXJnaW46IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1jb2x1bW5zLmhhcy0zLWNvbHVtbnMsXG4uYXJ0aWNsZS1jb250ZW50IC53cC1ibG9jay1jb2x1bW5zLmhhcy0zLWNvbHVtbnMge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDEsIDFmcik7XG4gIH1cbn1cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWNvbHVtbnMuaGFzLTQtY29sdW1ucy5hbGlnbmZ1bGwsXG4uYXJ0aWNsZS1jb250ZW50IC53cC1ibG9jay1jb2x1bW5zLmhhcy00LWNvbHVtbnMuYWxpZ25mdWxsIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gIHdpZHRoOiAxMDAlO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDkwMHB4KSB7XG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWNvbHVtbnMuaGFzLTQtY29sdW1ucyxcbi5hcnRpY2xlLWNvbnRlbnQgLndwLWJsb2NrLWNvbHVtbnMuaGFzLTQtY29sdW1ucyB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLWdhcDogMWVtO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDQsIDFmcik7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stY29sdW1ucy5oYXMtNC1jb2x1bW5zIC53cC1ibG9jay1jb2x1bW4sXG4uYXJ0aWNsZS1jb250ZW50IC53cC1ibG9jay1jb2x1bW5zLmhhcy00LWNvbHVtbnMgLndwLWJsb2NrLWNvbHVtbiB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stY29sdW1ucy5oYXMtNC1jb2x1bW5zLFxuLmFydGljbGUtY29udGVudCAud3AtYmxvY2stY29sdW1ucy5oYXMtNC1jb2x1bW5zIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgxLCAxZnIpO1xuICB9XG59XG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1jb2x1bW5zLmhhcy01LWNvbHVtbnMuYWxpZ25mdWxsLFxuLmFydGljbGUtY29udGVudCAud3AtYmxvY2stY29sdW1ucy5oYXMtNS1jb2x1bW5zLmFsaWduZnVsbCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICB3aWR0aDogMTAwJTtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA5MDBweCkge1xuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1jb2x1bW5zLmhhcy01LWNvbHVtbnMsXG4uYXJ0aWNsZS1jb250ZW50IC53cC1ibG9jay1jb2x1bW5zLmhhcy01LWNvbHVtbnMge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC1nYXA6IDFlbTtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg1LCAxZnIpO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWNvbHVtbnMuaGFzLTUtY29sdW1ucyAud3AtYmxvY2stY29sdW1uLFxuLmFydGljbGUtY29udGVudCAud3AtYmxvY2stY29sdW1ucy5oYXMtNS1jb2x1bW5zIC53cC1ibG9jay1jb2x1bW4ge1xuICAgIG1hcmdpbjogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWNvbHVtbnMuaGFzLTUtY29sdW1ucyxcbi5hcnRpY2xlLWNvbnRlbnQgLndwLWJsb2NrLWNvbHVtbnMuaGFzLTUtY29sdW1ucyB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMSwgMWZyKTtcbiAgfVxufVxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stY29sdW1ucy5oYXMtNi1jb2x1bW5zLmFsaWduZnVsbCxcbi5hcnRpY2xlLWNvbnRlbnQgLndwLWJsb2NrLWNvbHVtbnMuaGFzLTYtY29sdW1ucy5hbGlnbmZ1bGwge1xuICBwYWRkaW5nLWxlZnQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgd2lkdGg6IDEwMCU7XG59XG5AbWVkaWEgKG1heC13aWR0aDogOTAwcHgpIHtcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stY29sdW1ucy5oYXMtNi1jb2x1bW5zLFxuLmFydGljbGUtY29udGVudCAud3AtYmxvY2stY29sdW1ucy5oYXMtNi1jb2x1bW5zIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtZ2FwOiAxZW07XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNiwgMWZyKTtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1jb2x1bW5zLmhhcy02LWNvbHVtbnMgLndwLWJsb2NrLWNvbHVtbixcbi5hcnRpY2xlLWNvbnRlbnQgLndwLWJsb2NrLWNvbHVtbnMuaGFzLTYtY29sdW1ucyAud3AtYmxvY2stY29sdW1uIHtcbiAgICBtYXJnaW46IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1jb2x1bW5zLmhhcy02LWNvbHVtbnMsXG4uYXJ0aWNsZS1jb250ZW50IC53cC1ibG9jay1jb2x1bW5zLmhhcy02LWNvbHVtbnMge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDEsIDFmcik7XG4gIH1cbn1cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWNvbHVtbnMuaGFzLTctY29sdW1ucy5hbGlnbmZ1bGwsXG4uYXJ0aWNsZS1jb250ZW50IC53cC1ibG9jay1jb2x1bW5zLmhhcy03LWNvbHVtbnMuYWxpZ25mdWxsIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gIHdpZHRoOiAxMDAlO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDkwMHB4KSB7XG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWNvbHVtbnMuaGFzLTctY29sdW1ucyxcbi5hcnRpY2xlLWNvbnRlbnQgLndwLWJsb2NrLWNvbHVtbnMuaGFzLTctY29sdW1ucyB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLWdhcDogMWVtO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDcsIDFmcik7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stY29sdW1ucy5oYXMtNy1jb2x1bW5zIC53cC1ibG9jay1jb2x1bW4sXG4uYXJ0aWNsZS1jb250ZW50IC53cC1ibG9jay1jb2x1bW5zLmhhcy03LWNvbHVtbnMgLndwLWJsb2NrLWNvbHVtbiB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stY29sdW1ucy5oYXMtNy1jb2x1bW5zLFxuLmFydGljbGUtY29udGVudCAud3AtYmxvY2stY29sdW1ucy5oYXMtNy1jb2x1bW5zIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgxLCAxZnIpO1xuICB9XG59XG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1jb2x1bW5zLmhhcy04LWNvbHVtbnMuYWxpZ25mdWxsLFxuLmFydGljbGUtY29udGVudCAud3AtYmxvY2stY29sdW1ucy5oYXMtOC1jb2x1bW5zLmFsaWduZnVsbCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICB3aWR0aDogMTAwJTtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA5MDBweCkge1xuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1jb2x1bW5zLmhhcy04LWNvbHVtbnMsXG4uYXJ0aWNsZS1jb250ZW50IC53cC1ibG9jay1jb2x1bW5zLmhhcy04LWNvbHVtbnMge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC1nYXA6IDFlbTtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg4LCAxZnIpO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWNvbHVtbnMuaGFzLTgtY29sdW1ucyAud3AtYmxvY2stY29sdW1uLFxuLmFydGljbGUtY29udGVudCAud3AtYmxvY2stY29sdW1ucy5oYXMtOC1jb2x1bW5zIC53cC1ibG9jay1jb2x1bW4ge1xuICAgIG1hcmdpbjogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWNvbHVtbnMuaGFzLTgtY29sdW1ucyxcbi5hcnRpY2xlLWNvbnRlbnQgLndwLWJsb2NrLWNvbHVtbnMuaGFzLTgtY29sdW1ucyB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMSwgMWZyKTtcbiAgfVxufVxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stY29sdW1ucy5oYXMtOS1jb2x1bW5zLmFsaWduZnVsbCxcbi5hcnRpY2xlLWNvbnRlbnQgLndwLWJsb2NrLWNvbHVtbnMuaGFzLTktY29sdW1ucy5hbGlnbmZ1bGwge1xuICBwYWRkaW5nLWxlZnQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgd2lkdGg6IDEwMCU7XG59XG5AbWVkaWEgKG1heC13aWR0aDogOTAwcHgpIHtcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stY29sdW1ucy5oYXMtOS1jb2x1bW5zLFxuLmFydGljbGUtY29udGVudCAud3AtYmxvY2stY29sdW1ucy5oYXMtOS1jb2x1bW5zIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtZ2FwOiAxZW07XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoOSwgMWZyKTtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1jb2x1bW5zLmhhcy05LWNvbHVtbnMgLndwLWJsb2NrLWNvbHVtbixcbi5hcnRpY2xlLWNvbnRlbnQgLndwLWJsb2NrLWNvbHVtbnMuaGFzLTktY29sdW1ucyAud3AtYmxvY2stY29sdW1uIHtcbiAgICBtYXJnaW46IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1jb2x1bW5zLmhhcy05LWNvbHVtbnMsXG4uYXJ0aWNsZS1jb250ZW50IC53cC1ibG9jay1jb2x1bW5zLmhhcy05LWNvbHVtbnMge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDEsIDFmcik7XG4gIH1cbn1cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWNvdmVyX19pbm5lci1jb250YWluZXIsXG4uYXJ0aWNsZS1jb250ZW50IC53cC1ibG9jay1jb3Zlcl9faW5uZXItY29udGFpbmVyIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG59XG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1jb3Zlcl9faW5uZXItY29udGFpbmVyIHAsXG4uYXJ0aWNsZS1jb250ZW50IC53cC1ibG9jay1jb3Zlcl9faW5uZXItY29udGFpbmVyIHAge1xuICBjb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtY29yZS1oZWFkaW5nKTtcbn1cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWVtYmVkIGlmcmFtZSxcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWVtYmVkIHZpZGVvLFxuLmFydGljbGUtY29udGVudCAud3AtYmxvY2stZW1iZWQgaWZyYW1lLFxuLmFydGljbGUtY29udGVudCAud3AtYmxvY2stZW1iZWQgdmlkZW8ge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDE0ODBweCkge1xuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1lbWJlZC5hbGlnbndpZGUsXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1lbWJlZC5hbGlnbmZ1bGwsXG4uYXJ0aWNsZS1jb250ZW50IC53cC1ibG9jay1lbWJlZC5hbGlnbndpZGUsXG4uYXJ0aWNsZS1jb250ZW50IC53cC1ibG9jay1lbWJlZC5hbGlnbmZ1bGwge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKSAqIDIpO1xuICB9XG59XG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1lbWJlZC5hbGlnbmZ1bGwsXG4uYXJ0aWNsZS1jb250ZW50IC53cC1ibG9jay1lbWJlZC5hbGlnbmZ1bGwge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgd2lkdGg6IDEwMCU7XG59XG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIGhyLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stc2VwYXJhdG9yLFxuLmFydGljbGUtY29udGVudCBocixcbi5hcnRpY2xlLWNvbnRlbnQgLndwLWJsb2NrLXNlcGFyYXRvciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMCwgMCwgMCwgMCkgNTAlLCByZ2JhKDAsIDAsIDAsIDAuMykgNTAlKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCA1MCU7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgYmFja2dyb3VuZC1zaXplOiAycHggMnB4O1xuICBib3JkZXI6IDA7XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luLWJvdHRvbTogY2FsYyh2YXIoLS1tYXJnaW4tYmV0d2Vlbi1wYXJhZ3JhcGhzKSAqIDIpO1xuICBtYXJnaW4tdG9wOiBjYWxjKHZhcigtLW1hcmdpbi1iZXR3ZWVuLXBhcmFncmFwaHMpICogMik7XG4gIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICBwYWRkaW5nLXRvcDogMXJlbTtcbn1cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLXNlcGFyYXRvci5pcy1zdHlsZS1kZWZhdWx0LFxuLmFydGljbGUtY29udGVudCAud3AtYmxvY2stc2VwYXJhdG9yLmlzLXN0eWxlLWRlZmF1bHQge1xuICBtYXgtd2lkdGg6IDgwMHB4O1xufVxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stc2VwYXJhdG9yOm5vdCguaXMtc3R5bGUtd2lkZSk6bm90KC5pcy1zdHlsZS1kb3RzKSxcbi5hcnRpY2xlLWNvbnRlbnQgLndwLWJsb2NrLXNlcGFyYXRvcjpub3QoLmlzLXN0eWxlLXdpZGUpOm5vdCguaXMtc3R5bGUtZG90cykge1xuICBtYXJnaW4tYm90dG9tOiBjYWxjKHZhcigtLW1hcmdpbi1iZXR3ZWVuLXBhcmFncmFwaHMpICogMik7XG4gIG1hcmdpbi10b3A6IGNhbGModmFyKC0tbWFyZ2luLWJldHdlZW4tcGFyYWdyYXBocykgKiAyKTtcbiAgb3BhY2l0eTogMC40O1xuICB3aWR0aDogMTAwcHg7XG59XG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIGgxLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciBoMixcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgaDMsXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIGg0LFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciBoNSxcbi5hcnRpY2xlLWNvbnRlbnQgaDEsXG4uYXJ0aWNsZS1jb250ZW50IGgyLFxuLmFydGljbGUtY29udGVudCBoMyxcbi5hcnRpY2xlLWNvbnRlbnQgaDQsXG4uYXJ0aWNsZS1jb250ZW50IGg1IHtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWNvcmUtaGVhZGluZyk7XG59XG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIGgxOmZpcnN0LWNoaWxkLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciBoMjpmaXJzdC1jaGlsZCxcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgaDM6Zmlyc3QtY2hpbGQsXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIGg0OmZpcnN0LWNoaWxkLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciBoNTpmaXJzdC1jaGlsZCxcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgaDY6Zmlyc3QtY2hpbGQsXG4uYXJ0aWNsZS1jb250ZW50IGgxOmZpcnN0LWNoaWxkLFxuLmFydGljbGUtY29udGVudCBoMjpmaXJzdC1jaGlsZCxcbi5hcnRpY2xlLWNvbnRlbnQgaDM6Zmlyc3QtY2hpbGQsXG4uYXJ0aWNsZS1jb250ZW50IGg0OmZpcnN0LWNoaWxkLFxuLmFydGljbGUtY29udGVudCBoNTpmaXJzdC1jaGlsZCxcbi5hcnRpY2xlLWNvbnRlbnQgaDY6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2staW1hZ2UsXG4uYXJ0aWNsZS1jb250ZW50IC53cC1ibG9jay1pbWFnZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1tYXJnaW4td3AtYmxvY2staW1hZ2UpO1xuICBtYXJnaW4tdG9wOiB2YXIoLS1tYXJnaW4td3AtYmxvY2staW1hZ2UpO1xufVxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2staW1hZ2UuYWxpZ253aWRlLCAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1pbWFnZS5hbGlnbmZ1bGwsXG4uYXJ0aWNsZS1jb250ZW50IC53cC1ibG9jay1pbWFnZS5hbGlnbndpZGUsXG4uYXJ0aWNsZS1jb250ZW50IC53cC1ibG9jay1pbWFnZS5hbGlnbmZ1bGwge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG59XG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1pbWFnZSAuYWxpZ253aWRlIGltZyxcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWltYWdlIC5hbGlnbmZ1bGwgaW1nLFxuLmFydGljbGUtY29udGVudCAud3AtYmxvY2staW1hZ2UgLmFsaWdud2lkZSBpbWcsXG4uYXJ0aWNsZS1jb250ZW50IC53cC1ibG9jay1pbWFnZSAuYWxpZ25mdWxsIGltZyB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2staW1hZ2UgLmFsaWduZnVsbCBpbWcsXG4uYXJ0aWNsZS1jb250ZW50IC53cC1ibG9jay1pbWFnZSAuYWxpZ25mdWxsIGltZyB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1pbWFnZSA+IGZpZ3VyZSxcbi5hcnRpY2xlLWNvbnRlbnQgLndwLWJsb2NrLWltYWdlID4gZmlndXJlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiBhdXRvO1xufVxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2staW1hZ2UgPiBmaWd1cmUuYWxpZ25sZWZ0LCAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1pbWFnZSA+IGZpZ3VyZS5hbGlnbnJpZ2h0LFxuLmFydGljbGUtY29udGVudCAud3AtYmxvY2staW1hZ2UgPiBmaWd1cmUuYWxpZ25sZWZ0LFxuLmFydGljbGUtY29udGVudCAud3AtYmxvY2staW1hZ2UgPiBmaWd1cmUuYWxpZ25yaWdodCB7XG4gIG1heC13aWR0aDogdmFyKC0td2lkdGgtY2hpbGQtaW1nKTtcbn1cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWltYWdlIGZpZ2NhcHRpb24sXG4uYXJ0aWNsZS1jb250ZW50IC53cC1ibG9jay1pbWFnZSBmaWdjYXB0aW9uIHtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbn1cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWltYWdlIC5hbGlnbmNlbnRlcixcbi5hcnRpY2xlLWNvbnRlbnQgLndwLWJsb2NrLWltYWdlIC5hbGlnbmNlbnRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWltYWdlIC5hbGlnbmNlbnRlciBpbWcsXG4uYXJ0aWNsZS1jb250ZW50IC53cC1ibG9jay1pbWFnZSAuYWxpZ25jZW50ZXIgaW1nIHtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiAxNDgwcHgpIHtcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2staW1hZ2UuYWxpZ253aWRlLFxuLmFydGljbGUtY29udGVudCAud3AtYmxvY2staW1hZ2UuYWxpZ253aWRlIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCkgKiAyKTtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWltYWdlLmFsaWdubGVmdCBpbWcsIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWltYWdlLmFsaWducmlnaHQgaW1nLCAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1pbWFnZS5hbGlnbmNlbnRlciBpbWcsXG4uYXJ0aWNsZS1jb250ZW50IC53cC1ibG9jay1pbWFnZS5hbGlnbmxlZnQgaW1nLFxuLmFydGljbGUtY29udGVudCAud3AtYmxvY2staW1hZ2UuYWxpZ25yaWdodCBpbWcsXG4uYXJ0aWNsZS1jb250ZW50IC53cC1ibG9jay1pbWFnZS5hbGlnbmNlbnRlciBpbWcge1xuICAgIGZsb2F0OiBub25lO1xuICAgIGhlaWdodDogYXV0bztcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciB1bCxcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgb2wsXG4uYXJ0aWNsZS1jb250ZW50IHVsLFxuLmFydGljbGUtY29udGVudCBvbCB7XG4gIGxpc3Qtc3R5bGUtcG9zaXRpb246IG91dHNpZGU7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKSAqIDIpO1xufVxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciB1bCxcbi5hcnRpY2xlLWNvbnRlbnQgdWwge1xuICBsaXN0LXN0eWxlLXR5cGU6IFwi4oCiIFwiO1xuICBwYWRkaW5nLWlubGluZS1zdGFydDogMWVtO1xufVxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciBvbCxcbi5hcnRpY2xlLWNvbnRlbnQgb2wge1xuICBwYWRkaW5nLWlubGluZS1zdGFydDogMS4yNWVtO1xufVxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciBsaTo6bWFya2VyLFxuLmFydGljbGUtY29udGVudCBsaTo6bWFya2VyIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWxpbmstdGV4dCk7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbn1cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmhhcy1sYXJnZXItZm9udC1zaXplLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuaGFzLWxhcmdlLWZvbnQtc2l6ZSxcbi5hcnRpY2xlLWNvbnRlbnQgLmhhcy1sYXJnZXItZm9udC1zaXplLFxuLmFydGljbGUtY29udGVudCAuaGFzLWxhcmdlLWZvbnQtc2l6ZSB7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1oZWFkaW5ncyk7XG59XG5AbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuaGFzLWxhcmdlLWZvbnQtc2l6ZSxcbi5hcnRpY2xlLWNvbnRlbnQgLmhhcy1sYXJnZS1mb250LXNpemUge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTE4KTtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmhhcy1sYXJnZXItZm9udC1zaXplLFxuLmFydGljbGUtY29udGVudCAuaGFzLWxhcmdlci1mb250LXNpemUge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTIyKTtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDE0ODBweCkge1xuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5oYXMtYmFja2dyb3VuZCxcbi5hcnRpY2xlLWNvbnRlbnQgLmhhcy1iYWNrZ3JvdW5kIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCkgKiAyKTtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDE0ODBweCkge1xuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1wcmVmb3JtYXR0ZWQsXG4uYXJ0aWNsZS1jb250ZW50IC53cC1ibG9jay1wcmVmb3JtYXR0ZWQge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKSAqIDQpO1xuICB9XG59XG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1wdWxscXVvdGUsXG4uYXJ0aWNsZS1jb250ZW50IC53cC1ibG9jay1wdWxscXVvdGUge1xuICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWJsb2NrcXVvdGUpO1xuICBib3JkZXItd2lkdGg6IDNweDtcbiAgZGlzcGxheTogZ3JpZDtcbn1cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLXB1bGxxdW90ZSBbYXJpYS1sYWJlbD1cIlB1bGxxdW90ZSBjaXRhdGlvbiB0ZXh0XCJdLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stcHVsbHF1b3RlIGNpdGUsXG4uYXJ0aWNsZS1jb250ZW50IC53cC1ibG9jay1wdWxscXVvdGUgW2FyaWEtbGFiZWw9XCJQdWxscXVvdGUgY2l0YXRpb24gdGV4dFwiXSxcbi5hcnRpY2xlLWNvbnRlbnQgLndwLWJsb2NrLXB1bGxxdW90ZSBjaXRlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi10b3A6IDNyZW07XG59XG5AbWVkaWEgKG1heC13aWR0aDogMTQ4MHB4KSB7XG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLXB1bGxxdW90ZSxcbi5hcnRpY2xlLWNvbnRlbnQgLndwLWJsb2NrLXB1bGxxdW90ZSB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpICogMik7XG4gIH1cbn1cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLXB1bGxxdW90ZS5hbGlnbndpZGUsXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1wdWxscXVvdGUuYWxpZ25mdWxsLFxuLmFydGljbGUtY29udGVudCAud3AtYmxvY2stcHVsbHF1b3RlLmFsaWdud2lkZSxcbi5hcnRpY2xlLWNvbnRlbnQgLndwLWJsb2NrLXB1bGxxdW90ZS5hbGlnbmZ1bGwge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG59XG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1wdWxscXVvdGUuYWxpZ253aWRlIGJsb2NrcXVvdGUsXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1wdWxscXVvdGUuYWxpZ25mdWxsIGJsb2NrcXVvdGUsXG4uYXJ0aWNsZS1jb250ZW50IC53cC1ibG9jay1wdWxscXVvdGUuYWxpZ253aWRlIGJsb2NrcXVvdGUsXG4uYXJ0aWNsZS1jb250ZW50IC53cC1ibG9jay1wdWxscXVvdGUuYWxpZ25mdWxsIGJsb2NrcXVvdGUge1xuICBqdXN0aWZ5LXNlbGY6IGNlbnRlcjtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiAxNDgwcHgpIHtcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stcHVsbHF1b3RlLmFsaWdud2lkZSxcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLXB1bGxxdW90ZS5hbGlnbmZ1bGwsXG4uYXJ0aWNsZS1jb250ZW50IC53cC1ibG9jay1wdWxscXVvdGUuYWxpZ253aWRlLFxuLmFydGljbGUtY29udGVudCAud3AtYmxvY2stcHVsbHF1b3RlLmFsaWduZnVsbCB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gIH1cbn1cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLXB1bGxxdW90ZS5hbGlnbmZ1bGwsXG4uYXJ0aWNsZS1jb250ZW50IC53cC1ibG9jay1wdWxscXVvdGUuYWxpZ25mdWxsIHtcbiAgbWFyZ2luLWxlZnQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICBtYXJnaW4tcmlnaHQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICB3aWR0aDogY2FsYygxMDAlIC0gdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCkgKiAyKTtcbn1cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgdGgsXG4uYXJ0aWNsZS1jb250ZW50IHRoIHtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1zY29ycGlvbik7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgdGQsXG4uYXJ0aWNsZS1jb250ZW50IHRkIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTtcbn1cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgdGQsXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIHRoLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stdGFibGUgdGQsXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay10YWJsZSB0aCxcbi5hcnRpY2xlLWNvbnRlbnQgdGQsXG4uYXJ0aWNsZS1jb250ZW50IHRoLFxuLmFydGljbGUtY29udGVudCAud3AtYmxvY2stdGFibGUgdGQsXG4uYXJ0aWNsZS1jb250ZW50IC53cC1ibG9jay10YWJsZSB0aCB7XG4gIGJvcmRlcjogMDtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtcGFyYWdyYXBoKTtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtMTQpO1xuICBoZWlnaHQ6IDJyZW07XG4gIHBhZGRpbmc6IDAuNnJlbSAxLjVyZW07XG59XG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIHRyOm50aC1jaGlsZChldmVuKSxcbi5hcnRpY2xlLWNvbnRlbnQgdHI6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmFja2dyb3VuZC10YWJsZS1jZWxsLWV2ZW4pO1xufVxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciB0cjpudGgtY2hpbGQob2RkKSxcbi5hcnRpY2xlLWNvbnRlbnQgdHI6bnRoLWNoaWxkKG9kZCkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1iYWNrZ3JvdW5kLXRhYmxlLWNlbGwtb2RkKTtcbn1cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgdGhlYWQsXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay10YWJsZSB0aGVhZCxcbi5hcnRpY2xlLWNvbnRlbnQgdGhlYWQsXG4uYXJ0aWNsZS1jb250ZW50IC53cC1ibG9jay10YWJsZSB0aGVhZCB7XG4gIGJvcmRlcjogMDtcbn1cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgdGhlYWQgdGg6Zmlyc3QtY2hpbGQsXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay10YWJsZSB0aGVhZCB0aDpmaXJzdC1jaGlsZCxcbi5hcnRpY2xlLWNvbnRlbnQgdGhlYWQgdGg6Zmlyc3QtY2hpbGQsXG4uYXJ0aWNsZS1jb250ZW50IC53cC1ibG9jay10YWJsZSB0aGVhZCB0aDpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDhweDtcbn1cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgdGhlYWQgdGg6bGFzdC1jaGlsZCxcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLXRhYmxlIHRoZWFkIHRoOmxhc3QtY2hpbGQsXG4uYXJ0aWNsZS1jb250ZW50IHRoZWFkIHRoOmxhc3QtY2hpbGQsXG4uYXJ0aWNsZS1jb250ZW50IC53cC1ibG9jay10YWJsZSB0aGVhZCB0aDpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDhweDtcbn1cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgdGFibGUsXG4uYXJ0aWNsZS1jb250ZW50IHRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgYm9yZGVyLXNwYWNpbmc6IDA7XG59XG5AbWVkaWEgKG1heC13aWR0aDogMTQ4MHB4KSB7XG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLXRhYmxlLFxuLmFydGljbGUtY29udGVudCAud3AtYmxvY2stdGFibGUge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKSAqIDIpO1xuICB9XG59XG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay10YWJsZS5hbGlnbmZ1bGwsXG4uYXJ0aWNsZS1jb250ZW50IC53cC1ibG9jay10YWJsZS5hbGlnbmZ1bGwge1xuICBtYXJnaW4tbGVmdDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gIG1hcmdpbi1yaWdodDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKSAqIDIpO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDE0ODBweCkge1xuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay10YWJsZS5hbGlnbndpZGUsXG4uYXJ0aWNsZS1jb250ZW50IC53cC1ibG9jay10YWJsZS5hbGlnbndpZGUge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKSAqIDIpO1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogMTQ4MHB4KSB7XG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLXZlcnNlLFxuLmFydGljbGUtY29udGVudCAud3AtYmxvY2stdmVyc2Uge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKSAqIDQpO1xuICB9XG59XG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay12aWRlbyB2aWRlbyxcbi5hcnRpY2xlLWNvbnRlbnQgLndwLWJsb2NrLXZpZGVvIHZpZGVvIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiAxNDgwcHgpIHtcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stdmlkZW8uYWxpZ253aWRlLFxuLmFydGljbGUtY29udGVudCAud3AtYmxvY2stdmlkZW8uYWxpZ253aWRlIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCkgKiAyKTtcbiAgfVxufVxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stdmlkZW8uYWxpZ253aWRlLFxuLmFydGljbGUtY29udGVudCAud3AtYmxvY2stdmlkZW8uYWxpZ253aWRlIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xufVxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stdmlkZW8uYWxpZ25mdWxsLFxuLmFydGljbGUtY29udGVudCAud3AtYmxvY2stdmlkZW8uYWxpZ25mdWxsIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xufVxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2suaXMtc3R5bGUtYm94ZWQsXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5pcy1zdHlsZS1ib3hlZCxcbi5hcnRpY2xlLWNvbnRlbnQgLndwLWJsb2NrLmlzLXN0eWxlLWJveGVkLFxuLmFydGljbGUtY29udGVudCAuaXMtc3R5bGUtYm94ZWQge1xuICBib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1jb2xvci1wYXJhZ3JhcGgpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItcGFyYWdyYXBoKTtcbiAgZm9udC1zaXplOiAxN3B4O1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1tZWRpdW0pO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtcGFyYWdyYXBoKTtcbiAgcGFkZGluZzogMnJlbTtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDRyZW0pO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDg0MHB4KSB7XG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmlzLXN0eWxlLWJveGVkLFxuLmFydGljbGUtY29udGVudCAuaXMtc3R5bGUtYm94ZWQge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDJyZW0sIDApO1xuICB9XG59XG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1maWxlIC53cC1ibG9jay1maWxlX19idXR0b24sXG4uYXJ0aWNsZS1jb250ZW50IC53cC1ibG9jay1maWxlIC53cC1ibG9jay1maWxlX19idXR0b24ge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0xNik7XG4gIGxpbmUtaGVpZ2h0OiAyMC45MDkxcHg7XG4gIHBhZGRpbmctYm90dG9tOiBjYWxjKDEwcHggLSB2YXIoLS1ib3JkZXItd2lkdGgtaW5wdXQtZmllbGQpICogMik7XG4gIHBhZGRpbmctbGVmdDogY2FsYygyMXB4IC0gdmFyKC0tYm9yZGVyLXdpZHRoLWlucHV0LWZpZWxkKSAqIDIpO1xuICBwYWRkaW5nLXJpZ2h0OiBjYWxjKDIxcHggLSB2YXIoLS1ib3JkZXItd2lkdGgtaW5wdXQtZmllbGQpICogMik7XG4gIHBhZGRpbmctdG9wOiBjYWxjKDEwcHggLSB2YXIoLS1ib3JkZXItd2lkdGgtaW5wdXQtZmllbGQpICogMik7XG4gIGZvbnQtc2l6ZTogMC44ZW07XG4gIHBhZGRpbmc6IDAuM2VtIDAuOGVtO1xufVxuXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5ibG9jay1lcnJvcixcbi5zaXRlLW1haW4gLmJsb2NrLWVycm9yIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZXJyb3ItYmxvY2stYmFja2dyb3VuZCk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWVycm9yLWJsb2NrLWJvcmRlcik7XG4gIGJvcmRlci1sZWZ0OiAxMHB4IHNvbGlkIHZhcigtLWNvbG9yLWVycm9yKTtcbn1cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmJsb2NrLWVycm9yIC5jb250YWluZXIsXG4uc2l0ZS1tYWluIC5ibG9jay1lcnJvciAuY29udGFpbmVyIHtcbiAgcGFkZGluZy1ib3R0b206IDJyZW07XG4gIHBhZGRpbmctdG9wOiAycmVtO1xufVxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuYmxvY2stZXJyb3IgcCxcbi5zaXRlLW1haW4gLmJsb2NrLWVycm9yIHAge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0xNCk7XG59XG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5ibG9jay1lcnJvciBwLmVycm9yLW1lc3NhZ2UsXG4uc2l0ZS1tYWluIC5ibG9jay1lcnJvciBwLmVycm9yLW1lc3NhZ2Uge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0xNik7XG59XG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5ibG9jay1lcnJvciBoMixcbi5zaXRlLW1haW4gLmJsb2NrLWVycm9yIGgyIHtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaDQpO1xufVxuXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5hbGlnbmxlZnQgPiAqLFxuLmFydGljbGUtY29udGVudCAuYWxpZ25sZWZ0ID4gKiB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuYWxpZ25yaWdodCA+ICosXG4uYXJ0aWNsZS1jb250ZW50IC5hbGlnbnJpZ2h0ID4gKiB7XG4gIGZsb2F0OiByaWdodDtcbn1cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmFsaWdubGVmdCA+IGltZyxcbi5hcnRpY2xlLWNvbnRlbnQgLmFsaWdubGVmdCA+IGltZyB7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLW1hcmdpbi1iZXR3ZWVuLXBhcmFncmFwaHMpO1xuICBtYXJnaW4tcmlnaHQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICBtYXJnaW4tdG9wOiB2YXIoLS1tYXJnaW4tYmV0d2Vlbi1wYXJhZ3JhcGhzKTtcbn1cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmFsaWdubGVmdCA+IGltZyArIGZpZ2NhcHRpb24sXG4uYXJ0aWNsZS1jb250ZW50IC5hbGlnbmxlZnQgPiBpbWcgKyBmaWdjYXB0aW9uIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmFsaWducmlnaHQgPiBpbWcsXG4uYXJ0aWNsZS1jb250ZW50IC5hbGlnbnJpZ2h0ID4gaW1nIHtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tbWFyZ2luLWJldHdlZW4tcGFyYWdyYXBocyk7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgbWFyZ2luLXRvcDogdmFyKC0tbWFyZ2luLWJldHdlZW4tcGFyYWdyYXBocyk7XG59XG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5hbGlnbnJpZ2h0ID4gaW1nICsgZmlnY2FwdGlvbixcbi5hcnRpY2xlLWNvbnRlbnQgLmFsaWducmlnaHQgPiBpbWcgKyBmaWdjYXB0aW9uIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmFsaWdud2lkZSxcbi5hcnRpY2xlLWNvbnRlbnQgLmFsaWdud2lkZSB7XG4gIG1heC13aWR0aDogMTIwMHB4O1xuICBwYWRkaW5nLWxlZnQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgd2lkdGg6IDEwMCU7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTI0MHB4KSB7XG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmFsaWdud2lkZSxcbi5hcnRpY2xlLWNvbnRlbnQgLmFsaWdud2lkZSB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gIH1cbn1cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmFsaWduZnVsbCxcbi5hcnRpY2xlLWNvbnRlbnQgLmFsaWduZnVsbCB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICB3aWR0aDogMTAwJTtcbn1cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmFsaWduZnVsbC53cC1ibG9jay1pbWFnZSBpbWcsXG4uYXJ0aWNsZS1jb250ZW50IC5hbGlnbmZ1bGwud3AtYmxvY2staW1hZ2UgaW1nIHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA4NDBweCkge1xuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5hbGlnbmZ1bGwsXG4uYXJ0aWNsZS1jb250ZW50IC5hbGlnbmZ1bGwge1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXBhZGRpbmctYmxvY2spO1xuICAgIG1hcmdpbi10b3A6IHZhcigtLXBhZGRpbmctYmxvY2spO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIGZpZ2NhcHRpb24sXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIGNpdGUsXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIHNtYWxsLFxuLmFydGljbGUtY29udGVudCBmaWdjYXB0aW9uLFxuLmFydGljbGUtY29udGVudCBjaXRlLFxuLmFydGljbGUtY29udGVudCBzbWFsbCB7XG4gIGJvcmRlcjogMDtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWNhcHRpb24pO1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1jYXB0aW9ucyk7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgbWFyZ2luLWJvdHRvbTogNnJlbTtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLXRvcDogM3JlbTtcbiAgbWF4LXdpZHRoOiA4MDBweDtcbiAgcGFkZGluZy1ib3R0b206IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7XG59XG5AbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciBmaWdjYXB0aW9uLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciBjaXRlLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciBzbWFsbCxcbi5hcnRpY2xlLWNvbnRlbnQgZmlnY2FwdGlvbixcbi5hcnRpY2xlLWNvbnRlbnQgY2l0ZSxcbi5hcnRpY2xlLWNvbnRlbnQgc21hbGwge1xuICAgIG1hcmdpbi10b3A6IDJyZW07XG4gIH1cbn1cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWltYWdlIGZpZ2NhcHRpb24sXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1pbWFnZSAuYWxpZ25yaWdodCA+IGZpZ2NhcHRpb24sXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1pbWFnZSAuYWxpZ25jZW50ZXIgPiBmaWdjYXB0aW9uLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2staW1hZ2UuaXMtcmVzaXplZCA+IGZpZ2NhcHRpb24sXG4uYXJ0aWNsZS1jb250ZW50IC53cC1ibG9jay1pbWFnZSBmaWdjYXB0aW9uLFxuLmFydGljbGUtY29udGVudCAud3AtYmxvY2staW1hZ2UgLmFsaWducmlnaHQgPiBmaWdjYXB0aW9uLFxuLmFydGljbGUtY29udGVudCAud3AtYmxvY2staW1hZ2UgLmFsaWduY2VudGVyID4gZmlnY2FwdGlvbixcbi5hcnRpY2xlLWNvbnRlbnQgLndwLWJsb2NrLWltYWdlLmlzLXJlc2l6ZWQgPiBmaWdjYXB0aW9uIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xufVxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciBjaXRlLFxuLmFydGljbGUtY29udGVudCBjaXRlIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciBpbWcsXG4uYXJ0aWNsZS1jb250ZW50IGltZyB7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbn1cblxua2JkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Ita2JkLWJhY2tncm91bmQpO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1rYmQtYm9yZGVyKTtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBib3gtc2hhZG93OiAwIDFweCAwIHJnYmEoMjIsIDIyLCAyMiwgMC4yKSwgMCAwIDAgMnB4IHZhcigtLWNvbG9yLXdoaXRlKSBpbnNldDtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXBhcmFncmFwaCk7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgcGFkZGluZzogMCAwLjVyZW07XG4gIHRleHQtc2hhZG93OiAwIDFweCAwIHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuYSB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1saW5rLXRleHQpO1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiB2YXIoLS1jb2xvci1saW5rLXRleHQpO1xuICB0ZXh0LXVuZGVybGluZS1vZmZzZXQ6IDZweDtcbiAgdHJhbnNpdGlvbjogYWxsIDE1MG1zO1xufVxuYTpob3ZlciwgYTpmb2N1cyB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1saW5rLXRleHQtaG92ZXIpO1xuICB0ZXh0LWRlY29yYXRpb24tY29sb3I6IHZhcigtLWNvbG9yLWxpbmstdGV4dC1ob3Zlcik7XG59XG5cbi5lbnRyeS1mb290ZXIgYSxcbi5zaXRlLWhlYWRlciBhLFxuLnNpdGUtZm9vdGVyIGEge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbnAge1xuICBjb2xvcjogdmFyKC0tY29sb3ItcGFyYWdyYXBoKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXBhcmFncmFwaCk7XG59IiwiLy8gQ3VzdG9tIHZlcnNpb24gb2Ygc2FuaXRpemVkLmNzcy5cblxuLyoqXG4gKiAxLiBBZGQgYm9yZGVyIGJveCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKiAyLiBCYWNrZ3JvdW5kcyBkbyBub3QgcmVwZWF0IGJ5IGRlZmF1bHQgKG9waW5pb25hdGVkKS5cbiAqL1xuXG4qLFxuOjpiZWZvcmUsXG46OmFmdGVyIHtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDsgLyogMiAqL1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovXG59XG5cbi8qKlxuICAgKiAxLiBBZGQgdGV4dCBkZWNvcmF0aW9uIGluaGVyaXRhbmNlIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgKiAyLiBBZGQgdmVydGljYWwgYWxpZ25tZW50IGluaGVyaXRhbmNlIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgKi9cblxuOjpiZWZvcmUsXG46OmFmdGVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpbmhlcml0OyAvKiAxICovXG4gIHZlcnRpY2FsLWFsaWduOiBpbmhlcml0OyAvKiAyICovXG59XG5cbi8qKlxuICAgKiAxLiBVc2UgdGhlIGRlZmF1bHQgY3Vyc29yIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgKiAyLiBDaGFuZ2UgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgKiAzLiBCcmVha3Mgd29yZHMgdG8gcHJldmVudCBvdmVyZmxvdyBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAgICogNC4gVXNlIGEgNC1zcGFjZSB0YWIgd2lkdGggaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAqIDUuIFJlbW92ZSB0aGUgZ3JleSBoaWdobGlnaHQgb24gbGlua3MgaW4gaU9TIChvcGluaW9uYXRlZCkuXG4gICAqIDYuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW4gaU9TLlxuICAgKi9cblxuOndoZXJlKDpyb290KSB7XG4gIGN1cnNvcjogZGVmYXVsdDsgLyogMSAqL1xuICBsaW5lLWhlaWdodDogMS41OyAvKiAyICovXG4gIG92ZXJmbG93LXdyYXA6IGJyZWFrLXdvcmQ7IC8qIDMgKi9cbiAgdGFiLXNpemU6IDQ7IC8qIDQgKi9cbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDsgLyogNSAqL1xuICB0ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiA2ICovXG59XG5cbi8qIFNlY3Rpb25zXG4gICAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICAgKiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAgICovXG5cbjp3aGVyZShib2R5KSB7XG4gIG1hcmdpbjogMDtcbn1cblxuLyoqXG4gICAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIG9mIGJvcmRlciBjb2xvciBpbiBGaXJlZm94LlxuICAgKiAyLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBGaXJlZm94LlxuICAgKi9cblxuOndoZXJlKGhyKSB7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZVxuICBjb2xvcjogaW5oZXJpdDsgLyogMSAqL1xuICBoZWlnaHQ6IDA7IC8qIDIgKi9cbn1cblxuLyoqXG4gICAqIFJlbW92ZSB0aGUgbGlzdCBzdHlsZSBvbiBuYXZpZ2F0aW9uIGxpc3RzIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgKi9cblxuOndoZXJlKG5hdikgOndoZXJlKG9sLCB1bCkge1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi8qKlxuICAgKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICAgKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gICAqIDMuIFByZXZlbnQgb3ZlcmZsb3cgb2YgdGhlIGNvbnRhaW5lciBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAgICovXG5cbjp3aGVyZShwcmUpIHtcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lXG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLyogMSAqL1xuICBmb250LXNpemU6IDFlbTsgLyogMiAqL1xuICBvdmVyZmxvdzogYXV0bzsgLyogMyAqL1xufVxuXG4vKipcbiAgICogQ2hhbmdlIHRoZSBmaWxsIGNvbG9yIHRvIG1hdGNoIHRoZSB0ZXh0IGNvbG9yIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgKi9cblxuOndoZXJlKHN2Zzpub3QoW2ZpbGxdKSkge1xuICBmaWxsOiBjdXJyZW50Q29sb3I7XG59XG5cbi8qIEZvcm1zXG4gICAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICAgKiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgYnV0dG9ucyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAgICovXG5cbjp3aGVyZShidXR0b24sIFt0eXBlPVwiYnV0dG9uXCIgaV0sIFt0eXBlPVwicmVzZXRcIiBpXSwgW3R5cGU9XCJzdWJtaXRcIiBpXSkge1xuICBhcHBlYXJhbmNlOiBidXR0b247XG59XG5cbi8qKlxuICAgKiAxLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmkuXG4gICAqIDMuIENoYW5nZSB0aGUgcmVzaXplIGRpcmVjdGlvbiBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAgICovXG5cbjp3aGVyZSh0ZXh0YXJlYSkge1xuICBtYXJnaW46IDA7IC8qIDEgKi9cbiAgcmVzaXplOiB2ZXJ0aWNhbDsgLyogMyAqL1xufVxuXG4vKipcbiAgICogMS4gQ29ycmVjdCB0aGUgb2RkIGFwcGVhcmFuY2UgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuICAgKiAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cbiAgICovXG5cbjp3aGVyZShbdHlwZT1cInNlYXJjaFwiIGldKSB7XG4gIGFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLyogMSAqL1xuICBvdXRsaW5lLW9mZnNldDogLTJweDsgLyogMiAqL1xufVxuXG4vKipcbiAgICogQ29ycmVjdCB0aGUgY3Vyc29yIHN0eWxlIG9mIGluY3JlbWVudCBhbmQgZGVjcmVtZW50IGJ1dHRvbnMgaW4gU2FmYXJpLlxuICAgKi9cblxuOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vKipcbiAgICogQ29ycmVjdCB0aGUgdGV4dCBzdHlsZSBvZiBwbGFjZWhvbGRlcnMgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuICAgKi9cblxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lXG46OmlucHV0LXBsYWNlaG9sZGVyIHtcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lXG4gIGNvbG9yOiBpbmhlcml0O1xuICBvcGFjaXR5OiAuNTQ7XG59XG5cbi8qKlxuICAgKiBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpIG9uIG1hY09TLlxuICAgKi9cblxuOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLyoqXG4gICAqIDEuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSB1cGxvYWQgYnV0dG9ucyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAgICogMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuICAgKi9cblxuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gIGFwcGVhcmFuY2U6IGJ1dHRvbjsgLyogMSAqL1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmVcbiAgZm9udDogaW5oZXJpdDsgLyogMiAqL1xufVxuXG4vKlxuICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBTYWZhcmkuXG4gICAqL1xuXG46d2hlcmUoZGV0YWlscyA+IHN1bW1hcnk6Zmlyc3Qtb2YtdHlwZSkge1xuICBkaXNwbGF5OiBsaXN0LWl0ZW07XG59XG5cbi8qIEFjY2Vzc2liaWxpdHlcbiAgICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gICAqIENoYW5nZSB0aGUgY3Vyc29yIG9uIGJ1c3kgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAqL1xuXG46d2hlcmUoW2FyaWEtYnVzeT1cInRydWVcIiBpXSkge1xuICBjdXJzb3I6IHByb2dyZXNzO1xufVxuXG4vKlxuICAgKiBDaGFuZ2UgdGhlIGN1cnNvciBvbiBkaXNhYmxlZCwgbm90LWVkaXRhYmxlLCBvciBvdGhlcndpc2VcbiAgICogaW5vcGVyYWJsZSBlbGVtZW50cyBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAgICovXG5cbjp3aGVyZShbYXJpYS1kaXNhYmxlZD1cInRydWVcIiBpXSwgW2Rpc2FibGVkXSkge1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuXG4vKlxuICAgKiBDaGFuZ2UgdGhlIGRpc3BsYXkgb24gdmlzdWFsbHkgaGlkZGVuIGFjY2Vzc2libGUgZWxlbWVudHNcbiAgICogaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAqL1xuXG46d2hlcmUoW2FyaWEtaGlkZGVuPVwiZmFsc2VcIiBpXVtoaWRkZW5dKSB7XG4gIGRpc3BsYXk6IGluaXRpYWw7XG59XG5cbjp3aGVyZShbYXJpYS1oaWRkZW49XCJmYWxzZVwiIGldW2hpZGRlbl06bm90KDpmb2N1cykpIHtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xufVxuIiwiLypcbiAqIDEuIFJlbW92ZSBhbmltYXRpb25zIHdoZW4gbW90aW9uIGlzIHJlZHVjZWQgKG9waW5pb25hdGVkKS5cbiAqIDIuIFJlbW92ZSBmaXhlZCBiYWNrZ3JvdW5kIGF0dGFjaG1lbnRzIHdoZW4gbW90aW9uIGlzIHJlZHVjZWQgKG9waW5pb25hdGVkKS5cbiAqIDMuIFJlbW92ZSB0aW1lZCBzY3JvbGxpbmcgYmVoYXZpb3JzIHdoZW4gbW90aW9uIGlzIHJlZHVjZWQgKG9waW5pb25hdGVkKS5cbiAqIDQuIFJlbW92ZSB0cmFuc2l0aW9ucyB3aGVuIG1vdGlvbiBpcyByZWR1Y2VkIChvcGluaW9uYXRlZCkuXG4gKi9cblxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgKixcbiAgOjpiZWZvcmUsXG4gIDo6YWZ0ZXIge1xuICAgIGFuaW1hdGlvbi1kZWxheTogLTFtcyAhaW1wb3J0YW50OyAvKiAxICovXG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxbXMgIWltcG9ydGFudDsgLyogMSAqL1xuICAgIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IDEgIWltcG9ydGFudDsgLyogMSAqL1xuICAgIGJhY2tncm91bmQtYXR0YWNobWVudDogaW5pdGlhbCAhaW1wb3J0YW50OyAvKiAyICovXG4gICAgc2Nyb2xsLWJlaGF2aW9yOiBhdXRvICFpbXBvcnRhbnQ7IC8qIDMgKi9cbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwcyAhaW1wb3J0YW50OyAvKiA0ICovXG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHMgIWltcG9ydGFudDsgLyogNCAqL1xuICB9XG59XG4iLCIvLyBBIG5hdHVyYWwgYm94IGxheW91dCBtb2RlbCB0byBhbGwgZWxlbWVudHNcbi8vIFVwZGF0ZTogaHR0cDovL2Nzcy10cmlja3MuY29tL2luaGVyaXRpbmctYm94LXNpemluZy1wcm9iYWJseS1zbGlnaHRseS1iZXR0ZXItYmVzdC1wcmFjdGljZS9cbmh0bWwsXG4qLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuICAvKiBhdXRvcHJlZml4ZXI6IGlnbm9yZSBuZXh0ICovXG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbmltZyB7XG4gIC8qIGF1dG9wcmVmaXhlcjogaWdub3JlIG5leHQgKi9cbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG59XG4iLCIvLyBTdHlsaW5nIGJhY2tncm91bmQtaW1hZ2VzXG4vLyBGb3IgY3VzdG9tIHNpemVkIGltYWdlIGJhY2tncm91bmQsIHVzZTogY2xhc3M9XCJpbWFnZSBpbWFnZS1iYWNrZ3JvdW5kXCJcbi8vIEZvciBiZyBhcyBsYXllciwgdXNlOiBjbGFzcz1cImltYWdlIGltYWdlLWJhY2tncm91bmQgaW1hZ2UtYmFja2dyb3VuZC1sYXllclwiXG4uaW1hZ2UtYmFja2dyb3VuZCA+IGltZyB7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xufVxuXG4uaW1hZ2UtYmFja2dyb3VuZCB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmltYWdlLWJhY2tncm91bmQgPiBpbWcsXG4uaW1hZ2UtYmFja2dyb3VuZC1sYXllciB7XG4gIGhlaWdodDogMTAwJTtcbiAgbGVmdDogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiAwO1xufVxuIiwiLy8gQ1NTIHZhcmlhYmxlc1xuLy8gRGVmaW5lIG5hbWVzOlxuLy8gRm9yIEFBQTogaHR0cHM6Ly93d3cuY29sb3ItYmxpbmRuZXNzLmNvbS9jb2xvci1uYW1lLWh1ZS9cbi8vIEZvciBBQTogaHR0cHM6Ly9jaGlyLmFnL3Byb2plY3RzL25hbWUtdGhhdC1jb2xvci9cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuOnJvb3Qge1xuICAvLyBCcmFuZCBjb2xvciBwb29sXG4gIC0tY29sb3ItYmxhY2s6ICMyMjI7XG4gIC0tY29sb3ItYmxhY2stcm9jazogIzJiMzAzYztcbiAgLS1jb2xvci1ibHVlLWNoYWxrOiAjZWNlNmYyO1xuICAtLWNvbG9yLWVhc3QtYmF5OiAjNTQ1NzczO1xuICAtLWNvbG9yLXBhdHRlbnMtYmx1ZTogI2VhZjFmODtcbiAgLS1jb2xvci1zY2llbmNlLWJsdWU6ICMwMDQ5ZDE7XG4gIC0tY29sb3Itc2NvcnBpb246ICM1ZjVmNWY7XG4gIC0tY29sb3ItdmFsaGFsbGE6ICMyYTJkM2U7XG4gIC0tY29sb3Itd2hpdGU6ICNmZmY7XG5cbiAgLy8gTWFpbiBlbGVtZW50IGNvbG9yc1xuICAtLWNvbG9yLWhlYWRpbmc6IHZhcigtLWNvbG9yLW1haW4pO1xuICAtLWNvbG9yLW1haW46IHZhcigtLWNvbG9yLXZhbGhhbGxhKTtcbiAgLS1jb2xvci1wYXJhZ3JhcGg6IHZhcigtLWNvbG9yLWVhc3QtYmF5KTtcblxuICAvLyBNb2Rlcm4gbGlua1xuICAtLWNvbG9yLWxpbmstYm9yZGVyLWJvdHRvbTogdmFyKC0tY29sb3Itc2NpZW5jZS1ibHVlKTtcbiAgLS1jb2xvci1saW5rLWJvcmRlci1mb2N1czogdmFyKC0tY29sb3ItYmxhY2spO1xuICAtLWNvbG9yLWxpbmstY29tbWVudDogdmFyKC0tY29sb3Itc2NvcnBpb24pO1xuICAtLWNvbG9yLWxpbmstY29tbWVudC10aW1lLWFuY2hvcjogdmFyKC0tY29sb3ItZWFzdC1iYXkpO1xuICAtLWNvbG9yLWxpbmstZWRpdC1iYWNrZ3JvdW5kLWhvdmVyOiB2YXIoLS1jb2xvci1wYXR0ZW5zLWJsdWUpO1xuICAtLWNvbG9yLWxpbmstZWRpdC1ib3JkZXI6IHZhcigtLWNvbG9yLXBhdHRlbnMtYmx1ZSk7XG4gIC0tY29sb3ItbGluay1lZGl0LXRleHQ6IGNvbG9yLmFkanVzdCgjZWFmMWY4LCAtMjAlKTtcbiAgLS1jb2xvci1saW5rLWVkaXQtdGV4dC1ob3ZlcjogdmFyKC0tY29sb3ItZWFzdC1iYXkpO1xuICAtLWNvbG9yLWxpbmstdGV4dDogdmFyKC0tY29sb3Itc2NpZW5jZS1ibHVlKTtcbiAgLS1jb2xvci1saW5rLXRleHQtZm9jdXM6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgLS1jb2xvci1saW5rLXRleHQtaG92ZXI6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgLS1jb2xvci1saW5rLWJhY2tncm91bmQtaG92ZXI6IHZhcigtLWNvbG9yLWxpbmstdGV4dCk7XG5cbiAgLy8gRWxlbWVudCBjb2xvcnNcbiAgLS1jb2xvci1iYWNrZ3JvdW5kLWNvZGUtYmxvY2s6IHZhcigtLWNvbG9yLWJsYWNrLXJvY2spO1xuICAtLWNvbG9yLWJhY2tncm91bmQtY29kZS1pbmxpbmU6ICNmOWYyZjQ7XG4gIC0tY29sb3ItYmFja2dyb3VuZC1kZWZhdWx0OiAjZjBmMGYwO1xuICAtLWNvbG9yLWJhY2tncm91bmQtc2hhZGU6ICMwMzA2MWI7XG4gIC0tY29sb3ItYmFja2dyb3VuZC10YWJsZS1jZWxsLW9kZDogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAtLWNvbG9yLWJhY2tncm91bmQtdGFibGUtY2VsbC1ldmVuOiAjZjNmM2YzO1xuICAtLWNvbG9yLWJhY2tncm91bmQtdG9wOiAjZjVmNWY1O1xuICAtLWNvbG9yLWJhY2tncm91bmQtdG9wLWhvdmVyOiAjZjBmMGYwO1xuICAtLWNvbG9yLWJhY2tncm91bmQtdGFnOiB2YXIoLS1jb2xvci1wYXR0ZW5zLWJsdWUpO1xuICAtLWNvbG9yLWJsb2NrcXVvdGU6IHZhcigtLWNvbG9yLXNjaWVuY2UtYmx1ZSk7XG4gIC0tY29sb3ItY29tbWVudC10ZXh0OiB2YXIoLS1jb2xvci1lYXN0LWJheSk7XG4gIC0tY29sb3ItY29tbWVudC1hdXRob3ItdGV4dDogdmFyKC0tY29sb3ItZWFzdC1iYXkpO1xuICAtLWNvbG9yLXRhZy1ib3JkZXI6IHJnYig2IDIyIDQxIC8gLjEpO1xuICAtLWNvbG9yLXRhZy1ib3JkZXItaG92ZXI6IHJnYig2IDIyIDQxIC8gLjQpO1xuICAtLWNvbG9yLXRhZy10ZXh0OiB2YXIoLS1jb2xvci1ibGFjayk7XG4gIC0tY29sb3ItY2F0ZWdvcnktYm9yZGVyOiAjY2RjZmQ0O1xuICAtLWNvbG9yLWNhdGVnb3J5LXRleHQ6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgLS1jb2xvci1jYXB0aW9uOiAjNWM1YzZhO1xuICAtLWNvbG9yLWNvZGUtYmxvY2s6ICNjNzI1NGU7XG4gIC0tY29sb3ItY29kZS10ZXh0OiAjZjVmNWY1O1xuICAtLWNvbG9yLWtiZC1ib3JkZXI6ICNjY2M7XG4gIC0tY29sb3Ita2JkLWJhY2tncm91bmQ6IHZhcigtLWNvbG9yLXBhdHRlbnMtYmx1ZSk7XG4gIC0tY29sb3ItcGFnaW5hdGlvbi10ZXh0OiB2YXIoLS1jb2xvci12YWxoYWxsYSk7XG4gIC0tY29sb3ItcGFnaW5hdGlvbi1iYWNrZ3JvdW5kLWhvdmVyOiB2YXIoLS1jb2xvci12YWxoYWxsYSk7XG4gIC0tY29sb3ItcGFnaW5hdGlvbi1ib3JkZXItaG92ZXI6IHZhcigtLWNvbG9yLXZhbGhhbGxhKTtcbiAgLS1jb2xvci1wYWdpbmF0aW9uLXRleHQtaG92ZXI6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgLS1jb2xvci1wYWdpbmF0aW9uLWJhY2tncm91bmQtY3VycmVudDogdmFyKC0tY29sb3ItdmFsaGFsbGEpO1xuICAtLWNvbG9yLXBhZ2luYXRpb24tYm9yZGVyLWN1cnJlbnQ6IHZhcigtLWNvbG9yLXZhbGhhbGxhKTtcbiAgLS1jb2xvci1wYWdpbmF0aW9uLXRleHQtY3VycmVudDogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAtLWNvbG9yLXRvcC1hcnJvdy1kYXJrOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gIC0tY29sb3ItdG9wLWFycm93LWxpZ2h0OiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIC0tY29sb3ItZXJyb3ItYmxvY2stYm9yZGVyOiAjYWRiMmFkOyAvLyBDb2xvciBwaWNrZWQgZnJvbSBBQ0ZcbiAgLS1jb2xvci1lcnJvci1ibG9jay1iYWNrZ3JvdW5kOiAjZjlmOWY5OyAvLyBDb2xvciBwaWNrZWQgZnJvbSBBQ0ZcblxuICAvLyBFbGVtZW50IHN0YXRlc1xuICAtLWNvbG9yLWVycm9yOiAjY2MyZTJlO1xuICAtLWNvbG9yLXN1Y2Nlc3M6ICMyMWFhMTQ7XG4gIC0tY29sb3Itd2FybmluZzogI2NjNzUyZTtcbiAgLS1jb2xvci1mb2N1cy1vdXRsaW5lOiAjN2I0NmUxO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgbWF4LWxpbmUtbGVuZ3RoXG4vLyBGb250IGZhbWlseSBzZXR0aW5nc1xuLy8gWW91IGNhbiBkZWZpbmUgeW91ciBvd24gZm9udCBmYW1pbGllcyBoZXJlLCBsaWtlIC0tZm9udC1iYXJsb3dcbi8vIGFuZCB0aGVuIGF0dGFjaCB0aGVtIHRvIGVsZW1lbnRzOiAtLWZvbnQtcGFyYWdyYXBoOiB2YXIoLS1mb250LWJhcmxvdylcbjpyb290IHtcbiAgLS1mb250LXNlcmlmOiBzYW5zLXNlcmlmO1xuICAtLWZvbnQtc2FuczogJ0ludGVyJywgLWFwcGxlLXN5c3RlbSwgJ0JsaW5rTWFjU3lzdGVtRm9udCcsICdTZWdvZSBVSScsICdSb2JvdG8nLCAnT3h5Z2VuLVNhbnMnLCAnVWJ1bnR1JywgJ0NhbnRhcmVsbCcsICdIZWx2ZXRpY2EgTmV1ZScsIHNhbnMtc2VyaWY7XG4gIC0tZm9udC1tb25vc3BhY2U6ICdJbmNvbnNvbGF0YScsICdNZW5sbycsICdNb25hY28nLCAnQ29uc29sYXMnLCAnQW5kYWxlIE1vbm8nLCAnQml0c3RyZWFtIFZlcmEgU2FucyBNb25vJywgJ0NvdXJpZXIgTmV3JywgbW9ub3NwYWNlO1xuXG4gIC8vIEZvbnRzIGluIHVzZSBmb3IgY29udGVudFxuICAtLWZvbnQtcGFyYWdyYXBoOiB2YXIoLS1mb250LXNhbnMpO1xuICAtLWZvbnQtaGVhZGluZzogdmFyKC0tZm9udC1zYW5zKTtcbn1cbiIsIi8vIENTUyBWYXJpYWJsZXMgZm9yIHJlc3BvbnNpdmUgZm9udHNcbjpyb290IHtcbiAgLy8gSGVhZGluZyBmb250IHNpemVzXG4gIC0tZm9udC1zaXplLWhlcm86IDUycHg7XG4gIC0tZm9udC1zaXplLWgxOiA0MHB4O1xuICAtLWZvbnQtc2l6ZS1oMjogMzBweDtcbiAgLS1mb250LXNpemUtaDM6IDI0cHg7XG4gIC0tZm9udC1zaXplLWg0OiAyMHB4O1xuICAtLWZvbnQtc2l6ZS1oNTogMTZweDtcbiAgLS1mb250LXNpemUtaDY6IDE0cHg7XG5cbiAgLy8gUGFyYWdyYXBoIGZvbnQgc2l6ZXNcbiAgLS1mb250LXNpemUtMTQ6IDE0cHg7XG4gIC0tZm9udC1zaXplLTE1OiAxNXB4O1xuICAtLWZvbnQtc2l6ZS0xNjogMTZweDtcbiAgLS1mb250LXNpemUtMTc6IDE3cHg7XG4gIC0tZm9udC1zaXplLTE4OiAxOHB4O1xuICAtLWZvbnQtc2l6ZS0yMDogMjBweDtcbiAgLS1mb250LXNpemUtMjI6IDIycHg7XG5cbiAgLy8gRWxlbWVudCBmb250IHNpemVzXG4gIC0tZm9udC1zaXplLXBhcmFncmFwaDogdmFyKC0tZm9udC1zaXplLTE4KTtcbiAgLS1mb250LXNpemUtbmF2LXRvZ2dsZS1sYWJlbDogMTVweDtcbiAgLS1mb250LXNpemUtY2FwdGlvbnM6IDE1cHg7XG5cbiAgLy8gTGluZS1oZWlnaHRzXG4gIC0tbGluZS1oZWlnaHQtaGVhZGluZ3M6IDEuNTtcbiAgLS1saW5lLWhlaWdodC1jb3JlLWhlYWRpbmc6IDEuMjM7XG4gIC0tbGluZS1oZWlnaHQtcGFyYWdyYXBoOiAxLjc7XG5cbiAgLy8gRm9udCB3ZWlnaHRzXG4gIC0tZm9udC13ZWlnaHQtcmVndWxhcjogNDAwO1xuICAtLWZvbnQtd2VpZ2h0LW1lZGl1bTogNTAwO1xuICAtLWZvbnQtd2VpZ2h0LXNlbWlib2xkOiA2MDA7XG4gIC0tZm9udC13ZWlnaHQtYm9sZDogNzAwO1xuICAtLWZvbnQtd2VpZ2h0LXBhcmFncmFwaDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIC0tZm9udC13ZWlnaHQtaGVhZGluZ3M6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xuXG4gIC8vIEhlYWRpbmcgZm9udCBzaXplcyBpbiBtb2JpbGVcbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRjb250YWluZXItbW9iaWxlKSB7XG4gICAgLS1mb250LXNpemUtaGVybzogMzhweDtcbiAgICAtLWZvbnQtc2l6ZS1oMTogMzJweDtcbiAgICAtLWZvbnQtc2l6ZS1oMjogMjRweDtcbiAgICAtLWZvbnQtc2l6ZS1oMzogMjFweDtcbiAgICAtLWZvbnQtc2l6ZS1oNDogMThweDtcbiAgICAtLWZvbnQtc2l6ZS1oNTogMTRweDtcbiAgICAtLWZvbnQtc2l6ZS1oNjogMTJweDtcbiAgICAtLWZvbnQtc2l6ZS1wYXJhZ3JhcGg6IDE2cHg7XG4gIH1cblxuICAvLyBFbGVtZW50IGZvbnQgc2l6ZXMgaW4gdGlueSBwaG9uZXMgbGlrZSBpUGhvbmUgNVNcbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQyMHB4KSB7XG4gICAgLS1mb250LXNpemUtMTY6IDE0cHg7XG4gICAgLS1mb250LXNpemUtbmF2LXRvZ2dsZS1sYWJlbDogMTNweDtcbiAgfVxufVxuIiwiQHVzZSAnc2FzczptYXRoJztcblxuLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tcHJvcGVydHktdW5pdC1hbGxvd2VkLWxpc3QsIG1heC1saW5lLWxlbmd0aFxuLy8gSGVscGVyIG1peGluIGZvciBzZWxmLWhvc3RlZCBmb250c1xuQG1peGluIGZvbnRmYWNlKCRmYW1pbHksICRzcmMsICR3ZWlnaHQ6IG5vcm1hbCwgJHN0eWxlOiBub3JtYWwpIHtcbiAgQGZvbnQtZmFjZSB7XG4gICAgLy8gQGxpbmsgaHR0cHM6Ly9jc3MtdHJpY2tzLmNvbS9hbG1hbmFjL3Byb3BlcnRpZXMvZi9mb250LWRpc3BsYXkvXG4gICAgZm9udC1kaXNwbGF5OiBhdXRvO1xuICAgIGZvbnQtZmFtaWx5OiAkZmFtaWx5O1xuICAgIGZvbnQtc3R5bGU6ICRzdHlsZTtcbiAgICBmb250LXdlaWdodDogJHdlaWdodDtcblxuICAgIC8vIFNsaWdodGx5IERlZXBlciBCcm93c2VyIFN1cHBvcnRcbiAgICAvLyBAc291cmNlIGh0dHBzOi8vY3NzLXRyaWNrcy5jb20vc25pcHBldHMvY3NzL3VzaW5nLWZvbnQtZmFjZS8jc2xpZ2h0bHktZGVlcGVyLWJyb3dzZXItc3VwcG9ydFxuICAgIHNyYzogdXJsKCcjeyRzcmN9LndvZmYnKSBmb3JtYXQoJ3dvZmYnKSwgdXJsKCcjeyRzcmN9LndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLCB1cmwoJyN7JHNyY30udHRmJykgZm9ybWF0KCd0cnVldHlwZScpO1xuICB9XG59XG4iLCIvLyBTZWxmLWhvc3RlZCBmb250c1xuLy8gUmVtZW1iZXIgdG8gYWRkIHRoZXNlIGFsc28gdG8gZ3V0ZW5iZXJnL3ZhcmlhYmxlcy9fZm9udC1mYW1pbHkuc2Nzc1xuLy8gd2l0aCBjb3JyZWN0IHBhdGhzXG5AaW5jbHVkZSBmb250ZmFjZSgnSW50ZXInLCAnLi4vLi4vZm9udHMvaW50ZXItNDAwJywgNDAwKTtcbkBpbmNsdWRlIGZvbnRmYWNlKCdJbnRlcicsICcuLi8uLi9mb250cy9pbnRlci00MDAtaXRhbGljJywgNDAwLCBpdGFsaWMpO1xuQGluY2x1ZGUgZm9udGZhY2UoJ0ludGVyJywgJy4uLy4uL2ZvbnRzL2ludGVyLTUwMCcsIDUwMCk7XG5AaW5jbHVkZSBmb250ZmFjZSgnSW50ZXInLCAnLi4vLi4vZm9udHMvaW50ZXItNjAwJywgNjAwKTtcbkBpbmNsdWRlIGZvbnRmYWNlKCdJbnRlcicsICcuLi8uLi9mb250cy9pbnRlci03MDAnLCA3MDApO1xuIiwiLy8gQ1NTIFZhcmlhYmxlcyBmb3IgcmFkaW9zIGFuZCBjaGVja2JveGVzXG46cm9vdCB7XG4gIC8vIEZvcm0gZWxlbWVudCBjb2xvcnNcbiAgLS1jb2xvci1iYWNrZ3JvdW5kLWlucHV0LWZpZWxkOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIC0tY29sb3ItZm9ybS10ZXh0OiB2YXIoLS1jb2xvci1wYXJhZ3JhcGgpO1xuICAtLWNvbG9yLWZvcm0tbGFiZWwtdGV4dDogdmFyKC0tY29sb3ItZm9ybS10ZXh0KTtcbiAgLS1jb2xvci1yZXF1aXJlZC1sYWJlbC10ZXh0OiB2YXIoLS1jb2xvci1mb3JtLXRleHQpO1xuICAtLWNvbG9yLWJvcmRlci1mb3JtczogdmFyKC0tY29sb3ItcGFyYWdyYXBoKTtcbiAgLS1jb2xvci1ib3JkZXItZm9ybXMtZm9jdXM6IHZhcigtLWNvbG9yLXBhcmFncmFwaCk7XG4gIC0tY29sb3ItYnV0dG9uOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIC0tY29sb3ItYnV0dG9uLWhvdmVyOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIC0tY29sb3ItYnV0dG9uLWJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWVhc3QtYmF5KTtcbiAgLS1jb2xvci1idXR0b24tYmFja2dyb3VuZC1ob3ZlcjogdmFyKC0tY29sb3ItdmFsaGFsbGEpO1xuICAtLWNvbG9yLWNoZWNrYm94OiB2YXIoLS1jb2xvci1lYXN0LWJheSk7XG4gIC0tY29sb3ItY2hlY2tib3gtb3V0bGluZTogMCAwIDAgM3B4IHJnYig4NCA4NyAxMTUgLyAuMik7XG4gIC0tY29sb3ItY2hlY2tib3gtYm9yZGVyLWhvdmVyOiBjb2xvci5hZGp1c3QoIzU0NTc3MywgMTUlKTtcbiAgLS1jb2xvci1jaGVja2JveC1jaGVja2VkOiB2YXIoLS1jb2xvci1mb3JtLWxhYmVsLXRleHQpO1xuICAtLWNvbG9yLXBsYWNlaG9sZGVyOiB2YXIoLS1jb2xvci1wYXJhZ3JhcGgpO1xuICAtLWNvbG9yLXBsYWNlaG9sZGVyLWZvY3VzOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gIC0tb3BhY2l0eS1wbGFjZWhvbGRlcjogLjQ7XG4gIC0tb3BhY2l0eS1wbGFjZWhvbGRlci1mb2N1czogLjg7XG5cbiAgLy8gRm9ybSBlbGVtZW50IHNldHRpbmdzXG4gIC0tYm9yZGVyLXJhZGl1cy1jaGVja2JveDogM3B4O1xuICAtLWJvcmRlci1yYWRpdXMtaW5wdXQtZmllbGQ6IDNweDtcbiAgLS1ib3JkZXItcmFkaXVzLXNlbGVjdDogM3B4O1xuICAtLWJvcmRlci13aWR0aC1jaGVja2JveDogMXB4O1xuICAtLWJvcmRlci13aWR0aC1pbnB1dC1maWVsZDogMXB4O1xuICAtLWZvbnQtc2l6ZS1pbnB1dC1maWVsZHM6IHZhcigtLWZvbnQtc2l6ZS0xNyk7XG4gIC0tZm9udC1zaXplLWlucHV0LWxhYmVsczogdmFyKC0tZm9udC1zaXplLWlucHV0LWZpZWxkcyk7XG4gIC0tZm9udC1zaXplLXJlcXVpcmVkLXRleHQtbGFiZWw6IHZhcigtLWZvbnQtc2l6ZS1pbnB1dC1maWVsZHMpO1xuICAtLWZvbnQtc2l6ZS1yZXF1aXJlZC1hc3Rlcmlzay1sYWJlbDogMjJweDtcbiAgLS1mb3JtLWNvbHVtbi1nYXA6IDJyZW07XG4gIC0tZm9ybS1yb3ctZ2FwOiAycmVtO1xuICAtLWZvcm0tcmVxdWlyZWQtZ2FwOiAuNXJlbTtcbiAgLS1mb3JtLWxpbmUtaGVpZ2h0OiAyNHB4O1xuICAtLWZvcm0tcGFkZGluZy12ZXJ0aWNhbDogMXJlbTtcbiAgLS1mb3JtLXBhZGRpbmctaG9yaXpvbnRhbDogMS41cmVtO1xuICAtLWdhcC1jaGVja2JveDogMTBweDtcbiAgLS1nYXAtc2VsZWN0LWljb246IDEuNXJlbTtcbiAgLS1zaXplLWNoZWNrYm94OiAyLjJyZW07XG4gIC0tc2l6ZS1jaGVja2JveC1tYXJrZXI6IDEycHg7XG4gIC0tc2l6ZS1yYWRpby1idXR0b246IDE2cHg7XG4gIC0tc2l6ZS1yYWRpby1idXR0b24tbWFya2VyOiA4cHg7XG59XG4iLCIvLyBDU1MgVmFyaWFibGVzIGZvciByZXNwb25zaXZlIHBhZGRpbmdzIGFuZCBtYXJnaW5zXG46cm9vdCB7XG4gIC8vIEdhcHNcbiAgLS1ncmlkLWdhcDogNC44cmVtO1xuXG4gIC8vIFBhZGRpbmdzXG4gIC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbDogMnJlbTtcbiAgLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsLWxhcmdlOiA2LjRyZW07XG4gIC0tcGFkZGluZy1jb250YWluZXItdmVydGljYWw6IDYuNHJlbTtcbiAgLS1wYWRkaW5nLXNpdGUtaGVhZGVyLXZlcnRpY2FsOiAycmVtO1xuICAtLXBhZGRpbmctYmxvY2s6IDhyZW07XG5cbiAgLy8gTWFyZ2luc1xuICAtLW1hcmdpbi1iZXR3ZWVuLXRleHQtZWxlbWVudHM6IDRyZW07XG4gIC0tbWFyZ2luLXdwLWJsb2NrLWltYWdlOiA0cmVtO1xuICAtLW1hcmdpbi1iZXR3ZWVuLXBhcmFncmFwaHM6IDIuN3JlbTtcblxuICAvLyBNaWQtc2l6ZWQgc2NyZWVuc1xuICBAbWVkaWEgKG1heC13aWR0aDogJHdpZHRoLWdyaWQtYmFzZSArIDE1MHB4KSB7XG4gICAgLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsOiA2LjRyZW07XG4gIH1cblxuICAvLyBXaGVuIHRoZXJlJ3Mgbm8gbG9uZ2VyIHJvb20gZm9yIGNvbnRhaW5lciB0byBmaXQgd2l0aCB3aWRlciB3aGl0ZSBzcGFjZVxuICBAbWVkaWEgKG1heC13aWR0aDogNzAwcHgpIHtcbiAgICAtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWw6IDJyZW07XG4gIH1cblxuICAvLyBXaGVuIG5hdmlnYXRpb24gdHJhbnNmb3JtcyB0byBhIHJlc3BvbnNpdmUgaGFtYnVyZ2VyIG1lbnVcbiAgQG1lZGlhIChtYXgtd2lkdGg6ICR3aWR0aC1tYXgtbW9iaWxlKSB7XG4gICAgLS1wYWRkaW5nLXNpdGUtaGVhZGVyLXZlcnRpY2FsOiAycmVtO1xuICB9XG5cbiAgLy8gaVBhZFxuICBAbWVkaWEgKG1heC13aWR0aDogJGNvbnRhaW5lci1pcGFkLWxhbmRzY2FwZSkge1xuICAgIC0tZ3JpZC1nYXA6IDMuMnJlbTtcbiAgfVxuXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkY29udGFpbmVyLWlwYWQpIHtcbiAgICAtLWdyaWQtZ2FwOiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgICAtLXBhZGRpbmctY29udGFpbmVyLXZlcnRpY2FsOiA1cmVtO1xuICB9XG5cbiAgLy8gQmV0d2VlbiBpUGFkIGFuZCBhIG1vYmlsZSBwaG9uZVxuICBAbWVkaWEgKG1heC13aWR0aDogNjAwcHgpIHtcbiAgICAtLXBhZGRpbmctYmxvY2s6IDZyZW07XG4gIH1cblxuICAvLyBWYXJzIGluIG1vYmlsZVxuICBAbWVkaWEgKG1heC13aWR0aDogJGNvbnRhaW5lci1tb2JpbGUpIHtcbiAgICAtLXBhZGRpbmctY29udGFpbmVyLXZlcnRpY2FsOiA0cmVtO1xuICB9XG59XG4iLCIvLyBBIGhpZGRlbiBzY3JlZW4gcmVhZGVyIHRleHRzIGZvciByZWFkZXJzLCBmb2N1cyBlbGVtZW50cyBmb3Jcbi8vIHZpc2lvbiBpbXBhaXJlZCBhbmQgb3RoZXIgdXNlZnVsIGExMXkgQ1NTIGhhY2tzLlxuXG4vLyBUZXh0IG1lYW50IG9ubHkgZm9yIHNjcmVlbiByZWFkZXJzLlxuQG1peGluIHNjcmVlbi1yZWFkZXItdGV4dCgpIHtcbiAgYm9yZGVyOiAwO1xuICBjbGlwOiByZWN0KDFweCwgMXB4LCAxcHgsIDFweCk7XG5cbiAgLy8gZG9pdXNlLWRpc2FibGVcbiAgY2xpcC1wYXRoOiBpbnNldCg1MCUpO1xuICBoZWlnaHQ6IDFweDtcbiAgbWFyZ2luOiAtMXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nOiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7XG5cbiAgLy8gTWFueSBzY3JlZW4gcmVhZGVyIGFuZCBicm93c2VyIGNvbWJpbmF0aW9ucyBhbm5vdW5jZSBicm9rZW4gd29yZHMgYXMgdGhleSB3b3VsZCBhcHBlYXIgdmlzdWFsbHkuXG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnQsIG1heC1saW5lLWxlbmd0aFxuICB3b3JkLXdyYXA6IG5vcm1hbCAhaW1wb3J0YW50O1xuXG4gICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGJveC1zaGFkb3c6IDAgMCAycHggMnB4IHJnYigyMiAyMiAyMiAvIC42KTtcbiAgICBjbGlwOiBhdXRvO1xuICAgIGNsaXAtcGF0aDogbm9uZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6IDEuN3JlbTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDVweDtcbiAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgIHBhZGRpbmc6IDE1cHggMjNweCAxNHB4O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB0b3A6IDVweDtcbiAgICB3aWR0aDogYXV0bztcbiAgICB6LWluZGV4OiAxMDAwMDA7IC8vIEFib3ZlIFdQIHRvb2xiYXIuXG4gIH1cbn1cblxuLnNjcmVlbi1yZWFkZXItdGV4dCB7XG4gIEBpbmNsdWRlIHNjcmVlbi1yZWFkZXItdGV4dCgpO1xuXG4gICYuc2tpcC1saW5rIHtcbiAgICBtYXJnaW46IDVweDtcblxuICAgICY6Zm9jdXMge1xuICAgICAgY29sb3I6IGN1cnJlbnRDb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLy8gU3VwcHJlc3MgZm9jdXMgcmluZyBvbiBmb3IgbW91c2UgYW5kIHRvdWNoIHVzZXJzIGZvciB2aXN1YWwgcmVhc29uc1xuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGExMXkvbm8tb3V0bGluZS1ub25lXG5bZGF0YS13aGF0aW5wdXQ9XCJtb3VzZVwiXSAqOmZvY3VzLFxuW2RhdGEtd2hhdGlucHV0PVwidG91Y2hcIl0gKjpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5cbi8vIFZpc3VhbGx5IGRpc3RpbmN0IGZvY3VzIGNvbG9yIG9uIGtleWJvYXJkXG5bZGF0YS13aGF0aW5wdXQ9XCJrZXlib2FyZFwiXSB7XG4gIC8vIE1ha2Ugc3VyZSBldmVyeSBmb2N1c2FibGUgZWxlbWVudCBoYXMgb3BhY2l0eSAxMDAlXG4gIGE6Zm9jdXMsXG4gIGlucHV0OmZvY3VzLFxuICBidXR0b246Zm9jdXMsXG4gIHNlbGVjdDpmb2N1cyxcbiAgdGV4dGFyZWE6Zm9jdXMsXG4gIGRpdlt0YWJpbmRleF06Zm9jdXMge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgb3V0bGluZS1jb2xvcjogdmFyKC0tY29sb3ItZm9jdXMtb3V0bGluZSk7XG4gICAgb3V0bGluZS1vZmZzZXQ6IDhweDtcbiAgICBvdXRsaW5lLXdpZHRoOiAycHg7XG4gIH1cbn1cblxuLy8gRGVmaW5lIGhlcmUgdGhlIHVwc2VsbCBibG9ja3MgdGhhdCBoYXZlIG92ZXJsYXkgbGluayBhcmVhc1xuLy8gaW5zaWRlIHRoZW1cbi8vIFRoZXNlIHNob3VsZCBhbHdheXMgaGF2ZSBvdmVyZmxvdyB2aXNpYmxlLCBiZWNhdXNlIG90aGVyd2lzZVxuLy8gdGhlIG91dGxpbmUgd2lsbCBub3QgYmUgdmlzaWJsZSBvdXRzaWRlIHRoZSBlbGVtZW50XG4vLyAuYmxvY2suYmxvY2stdGhyZWUtdXBzZWxscyAuY29udGFpbmVyLFxuLy8gYm9keSAuYmxvY2sgLmNvbnRhaW5lciAuY29sIHtcbi8vICAgb3ZlcmZsb3c6IHZpc2libGU7XG4vLyB9XG5cbi8vIE1ha2UgZm9jdXMgYSBsaXR0bGUgbW9yZSBlbmdhZ2luZ1xuLy8gQHNvdXJjZSBodHRwczovL3R3aXR0ZXIuY29tL2FyZ3lsZWluay9zdGF0dXMvMTM4NzA3MjA5NTE1OTQwNjU5NlxuLy8gQGxpbmsgaHR0cHM6Ly9jb2RlcGVuLmlvL2FyZ3lsZWluay9wZW4vSmpFemVMcFxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiBuby1wcmVmZXJlbmNlKSB7XG4gIDpmb2N1cyxcbiAgKjpmb2N1cyxcbiAgW2RhdGEtd2hhdGlucHV0PVwia2V5Ym9hcmRcIl0gOmZvY3VzLFxuICBbZGF0YS13aGF0aW5wdXQ9XCJrZXlib2FyZFwiXSBhOmZvY3VzIHtcbiAgICB0cmFuc2l0aW9uOiBvdXRsaW5lLW9mZnNldCAuMjVzIGVhc2U7XG4gIH1cbn1cblxuLy8gRXh0ZXJuYWwgbGluayBpY29uXG4uZXh0ZXJuYWwtbGluay1pY29uIHtcbiAgbWFyZ2luLWxlZnQ6IC43cmVtO1xuICBtYXJnaW4tcmlnaHQ6IC4ycmVtO1xuXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkY29udGFpbmVyLW1vYmlsZSkge1xuICAgIGhlaWdodDogMTJweDtcbiAgICBtYXJnaW4tbGVmdDogLjRyZW07XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDFweCk7XG4gICAgd2lkdGg6IDEycHg7XG4gIH1cbn1cbiIsIi8vIFNpdGUgbmF2aWdhdGlvbiBkZXNrdG9wIGxheW91dFxuLy8gVGhlIG1haW4gbGF5b3V0IGZvciB0aGUgd2Vic2l0ZSBuYXZpZ2F0aW9uLCBmb3IgYSBkZXNrdG9wIGRldmljZXMgb25seS5cblxuLy8gRGlzYWJsZSBzb21lIHJ1bGVzIHRoYXQgYXJlIG5vdCBuZWVkZWQgaGVyZVxuLy8gc3R5bGVsaW50LWRpc2FibGUgbm8tZGVzY2VuZGluZy1zcGVjaWZpY2l0eVxuXG4vLyBTZXR0aW5nc1xuJGFic29sdXRlLW5hdmlnYXRpb246IHRydWU7XG4kdXNlLWRyb3Bkb3duLXRvZ2dsZS1hbmltYXRpb246IHRydWU7XG5cbi8vIENTUyB2YXJpYWJsZXNcbi8vIFRoZXNlIGNhbiBiZSBhZGp1c3RlZCB3aXRoIG1lZGlhIHF1ZXJpZXMgZm9yIGluLWJldHdlZW4gYnJlYWtwb2ludHNcbjpyb290IHtcbiAgLy8gRGltZW5zaW9ucywgZ2FwcyBhbmQgc3BhY2luZ3NcbiAgLS1ib3JkZXItcmFkaXVzLXN1Yi1tZW51OiAwO1xuICAtLWRyb3Bkb3duLXRvZ2dsZS1zaXplOiAxMnB4O1xuICAtLWdhcC1kcm9wZG93bjogMXJlbTtcbiAgLS1nYXAtYmV0d2Vlbi1kcm9wZG93bi10b2dnbGU6IDEuNXJlbTtcbiAgLS1nYXAtbWFpbi1sZXZlbC1ob3Jpem9udGFsOiAyLjVyZW07XG4gIC0tcGFkZGluZy1tYWluLWxldmVsLWhvcml6b250YWw6IDA7XG4gIC0tcGFkZGluZy1tYWluLWxldmVsLXZlcnRpY2FsOiAuNnJlbTtcbiAgLS1wYWRkaW5nLXN1Yi1tZW51LXZlcnRpY2FsOiAuNnJlbTtcbiAgLS1wYWRkaW5nLXN1Yi1tZW51LWxpbmstdmVydGljYWw6IC42cmVtO1xuICAtLXBhZGRpbmctc3ViLW1lbnUtbGluay1ob3Jpem9udGFsOiAxLjVyZW07XG4gIC0td2lkdGgtc3ViLW1lbnU6IDIycmVtO1xuXG4gIC8vIENvbG9yc1xuICAtLWNvbG9yLWJhY2tncm91bmQtbmF2LWRlc2t0b3A6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgLS1jb2xvci1iYWNrZ3JvdW5kLXN1Yi1tZW51OiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIC0tY29sb3ItZHJvcGRvd24tdG9nZ2xlOiB2YXIoLS1jb2xvci12YWxoYWxsYSk7XG4gIC0tY29sb3Itc3ViLW1lbnU6IHZhcigtLWNvbG9yLXZhbGhhbGxhKTtcbiAgLS1jb2xvci1ob3Zlci1tYWluLWxldmVsOiB2YXIoLS1jb2xvci1saW5rLXRleHQpO1xuICAtLWNvbG9yLWhvdmVyLXN1Yi1tZW51OiB2YXIoLS1jb2xvci12YWxoYWxsYSk7XG4gIC0tY29sb3ItbWFpbi1sZXZlbDogdmFyKC0tY29sb3ItYmxhY2spO1xuICAtLWNvbG9yLWN1cnJlbnQ6IHZhcigtLWNvbG9yLWxpbmstdGV4dCk7XG5cbiAgLy8gRm9udCBzdHlsZXNcbiAgLS1mb250LXNpemUtbWFpbi1sZXZlbDogdmFyKC0tZm9udC1zaXplLTE2KTtcbiAgLS1mb250LXNpemUtc3ViLW1lbnU6IHZhcigtLWZvbnQtc2l6ZS0xNik7XG4gIC0tZm9udC13ZWlnaHQtbWFpbi1sZXZlbDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XG4gIC0tZm9udC13ZWlnaHQtc3ViLW1lbnU6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xufVxuXG4vLyBHZW5lcmFsIG5hdmlnYXRpb24gcmVzZXRzXG4uc2l0ZS1oZWFkZXIgdWwge1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICR3aWR0aC1tYXgtbW9iaWxlKSB7XG4gIC5uYXYtY29udGFpbmVyIHtcbiAgICBAaWYgJGFic29sdXRlLW5hdmlnYXRpb24gPT0gZmFsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmFja2dyb3VuZC1uYXYtZGVza3RvcCk7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB6LWluZGV4OiAyMjI7XG4gICAgfVxuXG4gICAgQGlmICRhYnNvbHV0ZS1uYXZpZ2F0aW9uID09IHRydWUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cblxuICAvLyBOZWVkIHRvIHVzZSBkaXNwbGF5OiBub25lIGhlcmUgdG8gbWFrZSBzdXJlIG1vYmlsZSBuYXYtdG9nZ2xlIGlzIHZpc3VhbGx5IGhpZGRlbiBvbiBkZXNrdG9wXG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBhMTF5L25vLWRpc3BsYXktbm9uZVxuICAubmF2LXRvZ2dsZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC8vIE5hdmlnYXRpb24gd3JhcHBlclxuICAubmF2LXByaW1hcnkge1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICB9XG5cbiAgLy8gTmF2aWdhdGlvbiB1bm9yZGVyZWQgbGlzdCB3cmFwcGVyIGVsZW1lbnRcbiAgLm1lbnUtaXRlbXMge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBnYXA6IHZhcigtLWdhcC1tYWluLWxldmVsLWhvcml6b250YWwpO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuXG4gIC8vIE5hdmlnYXRpb24gbGlzdCBpdGVtXG4gIC5tZW51LWl0ZW0ge1xuICAgIG1hcmdpbjogMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cblxuICAvLyBNZW51IGl0ZW1zXG4gIC5tZW51LWl0ZW0gPiBhIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1tYWluLWxldmVsKTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1tYWluLWxldmVsKTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWFpbi1sZXZlbCk7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1wYWRkaW5nLW1haW4tbGV2ZWwtdmVydGljYWwpO1xuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tcGFkZGluZy1tYWluLWxldmVsLWhvcml6b250YWwpO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXBhZGRpbmctbWFpbi1sZXZlbC1ob3Jpem9udGFsKTtcbiAgICBwYWRkaW5nLXRvcDogdmFyKC0tcGFkZGluZy1tYWluLWxldmVsLXZlcnRpY2FsKTtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB9XG5cbiAgLm1lbnUtaXRlbSAuc3ViLW1lbnUgYSB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBjb2xvcjogdmFyKC0tY29sb3Itc3ViLW1lbnUpO1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXN1Yi1tZW51KTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtc3ViLW1lbnUpO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgcGFkZGluZy1ib3R0b206IHZhcigtLXBhZGRpbmctc3ViLW1lbnUtbGluay12ZXJ0aWNhbCk7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1wYWRkaW5nLXN1Yi1tZW51LWxpbmstaG9yaXpvbnRhbCk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKC0tcGFkZGluZy1zdWItbWVudS1saW5rLWhvcml6b250YWwpO1xuICAgIHBhZGRpbmctdG9wOiB2YXIoLS1wYWRkaW5nLXN1Yi1tZW51LWxpbmstdmVydGljYWwpO1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIH1cblxuICAvLyBDdXJyZW50IG1lbnUgaXRlbSBjb2xvclxuICAubWVudS1pdGVtLmN1cnJlbnQtbWVudS1wYXJlbnQgPiBhLFxuICAubWVudS1pdGVtLmN1cnJlbnQtbWVudS1pdGVtID4gYSB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWN1cnJlbnQpO1xuICB9XG5cbiAgLy8gTGV0J3MgbWFrZSBzcGFjZSBmb3IgdGhlIG5hdi10b2dnbGUvYXJyb3dcbiAgLm1lbnUtaXRlbS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuIGEge1xuICAgIHRyYW5zaXRpb246IHBhZGRpbmcgLjJzIGN1YmljLWJlemllciguMTksIDEsIC4yMiwgMSksIGJhY2tncm91bmQtY29sb3IgLjJzIGN1YmljLWJlemllciguMTksIDEsIC4yMiwgMSk7XG4gIH1cblxuICAubWVudS1pdGVtID4gYTpob3ZlcixcbiAgLm1lbnUtaXRlbSA+IGE6Zm9jdXMge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1ob3Zlci1tYWluLWxldmVsKTtcbiAgfVxuXG4gIC5tZW51LWl0ZW0gLnN1Yi1tZW51IGE6aG92ZXIsXG4gIC5tZW51LWl0ZW0gLnN1Yi1tZW51IGE6Zm9jdXMge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1ob3Zlci1zdWItbWVudSk7XG4gIH1cblxuICAvLyBDcmVhdGUgYW5pbWF0aW9uIGlsbHVzaW9uXG4gIC5zdWItbWVudS50b2dnbGVkLW9uIGEsXG4gIC5zdWItbWVudS50b2dnbGVkLW9uIC5zdWItbWVudSBhLFxuICAubWVudS1pdGVtLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4uaG92ZXItaW50ZW50IC5zdWItbWVudSBhLFxuICAubWVudS1pdGVtLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW46Zm9jdXMgLnN1Yi1tZW51IGEge1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1wYWRkaW5nLXN1Yi1tZW51LWxpbmstdmVydGljYWwpO1xuICAgIHBhZGRpbmctdG9wOiB2YXIoLS1wYWRkaW5nLXN1Yi1tZW51LWxpbmstdmVydGljYWwpO1xuICB9XG5cbiAgLnN1Yi1tZW51LnRvZ2dsZWQtb24sXG4gIC5zdWItbWVudS50b2dnbGVkLW9uIC5zdWItbWVudSxcbiAgLm1lbnUtaXRlbS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuLmhvdmVyLWludGVudCAuc3ViLW1lbnUsXG4gIC5tZW51LWl0ZW0ubWVudS1pdGVtLWhhcy1jaGlsZHJlbjpmb2N1cyAuc3ViLW1lbnUge1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1wYWRkaW5nLXN1Yi1tZW51LXZlcnRpY2FsKTtcbiAgICBwYWRkaW5nLXRvcDogdmFyKC0tcGFkZGluZy1zdWItbWVudS12ZXJ0aWNhbCk7XG4gIH1cblxuICAubmF2LXByaW1hcnkgPiB1bDpmaXJzdC1vZi10eXBlID4gLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW46Zm9jdXM6OmJlZm9yZSxcbiAgLm5hdi1wcmltYXJ5ID4gdWw6Zmlyc3Qtb2YtdHlwZSA+IC5tZW51LWl0ZW0taGFzLWNoaWxkcmVuOmhvdmVyOjpiZWZvcmUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgdHJhbnNpdGlvbjogYWxsIC4ycyBjdWJpYy1iZXppZXIoLjE5LCAxLCAuMjIsIDEpO1xuICB9XG5cbiAgLy8gRHJvcGRvd25zXG4gIC5zdWItbWVudSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmFja2dyb3VuZC1zdWItbWVudSk7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zdWItbWVudSk7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc3ViLW1lbnUpO1xuICAgIGxlZnQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXRvcDogdmFyKC0tZ2FwLWRyb3Bkb3duKTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDEwMCU7XG4gICAgdHJhbnNpdGlvbjogYWxsIC4ycyBjdWJpYy1iZXppZXIoLjE5LCAxLCAuMjIsIDEpO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB3aWR0aDogdmFyKC0td2lkdGgtc3ViLW1lbnUpO1xuICAgIHotaW5kZXg6IDk7XG5cbiAgICAvLyBJZiBkcm9wZG93biBpcyBvdXQgb2Ygdmlld3BvcnQgZnJvbSB0aGUgcmlnaHQsIG1vdmUgaXQgdG8gdGhlIGxlZnRcbiAgICAmLmlzLW91dC1vZi12aWV3cG9ydCB7XG4gICAgICBsZWZ0OiB1bnNldDtcbiAgICAgIHJpZ2h0OiAwO1xuXG4gICAgICAvLyBBbGwgZHJvcGRvd25zIGluIGxldmVsIDIgYW5kIGFmdGVyXG4gICAgICAuc3ViLW1lbnUge1xuICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICAgICAgcmlnaHQ6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gSWYgbWFpbiBsZXZlbCBpcyBub3Qgb3V0IG9mIHZpZXdwb3J0IGJ1dCBpZiBzdWItbWVudSB1bmRlciBpdCBpc1xuICAgIC5zdWItbWVudS5pcy1vdXQtb2Ytdmlld3BvcnQge1xuICAgICAgbGVmdDogdW5zZXQ7XG4gICAgICByaWdodDogMTAwJTtcbiAgICB9XG5cbiAgICAvLyBBbGwgZHJvcGRvd25zIGluIGxldmVsIDIgYW5kIGFmdGVyXG4gICAgLnN1Yi1tZW51IHtcbiAgICAgIGxlZnQ6IDEwMCU7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIG1hcmdpbi10b3A6IGNhbGMoLTEgKiB2YXIoLS1wYWRkaW5nLXN1Yi1tZW51LXZlcnRpY2FsKSk7XG4gICAgICB0b3A6IDA7XG4gICAgfVxuXG4gICAgbGkge1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIHdpZHRoOiB2YXIoLS13aWR0aC1zdWItbWVudSk7XG4gICAgfVxuICB9XG5cbiAgLy8gVGhpcyBpcyB3aGVyZSB0aGUgbWFnaWMgaGFwcGVuc1xuICAubWVudS1pdGVtLWhhcy1jaGlsZHJlbiA+IC5zdWItbWVudS50b2dnbGVkLW9uLFxuICAubWVudS1pdGVtLWhhcy1jaGlsZHJlbjpmb2N1cyA+IC5zdWItbWVudSxcbiAgLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4uaG92ZXItaW50ZW50ID4gLnN1Yi1tZW51IHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwJSk7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgfVxuXG4gIC5tZW51LWl0ZW0taGFzLWNoaWxkcmVuIC5zdWItbWVudS50b2dnbGVkLW9uIC5zdWItbWVudSxcbiAgLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gLnN1Yi1tZW51IC5zdWItbWVudS50b2dnbGVkLW9uLFxuICAubWVudS1pdGVtLWhhcy1jaGlsZHJlbjpmb2N1cyAuc3ViLW1lbnUgLnN1Yi1tZW51LFxuICAubWVudS1pdGVtLWhhcy1jaGlsZHJlbi5ob3Zlci1pbnRlbnQgLnN1Yi1tZW51IC5zdWItbWVudSB7XG4gICAgbWFyZ2luLXRvcDogY2FsYygtMSAqIHZhcigtLXBhZGRpbmctc3ViLW1lbnUtdmVydGljYWwpKTtcbiAgICB0b3A6IDA7XG4gICAgei1pbmRleDogMTA7XG4gIH1cblxuICAvLyBTdWIgbWVudSBpdGVtcyB0aGF0IGhhdmUgaXRlbXMgdW5kZXIgdGhlbVxuICAubWVudS1pdGVtLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4ge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBnYXA6IHZhcigtLWdhcC1iZXR3ZWVuLWRyb3Bkb3duLXRvZ2dsZSk7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIC8vIEFkZCBhIFwic2FmZSBhcmVhXCIgcHNldWRvIGVsZW1lbnQgdG8gZmlsbCB0aGUgZ2FwXG4gICAgLy8gYmV0d2VlbiBtZW51IGl0ZW0gYW5kIHN1YiBtZW51IHRvIGhlbHAgaG92ZXJpbmdcbiAgICAmOjphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgaGVpZ2h0OiB2YXIoLS1nYXAtZHJvcGRvd24pO1xuICAgICAgbWF4LXdpZHRoOiB2YXIoLS13aWR0aC1zdWItbWVudSk7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDEwMCU7XG4gICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cblxuICAvLyBFbnN1cmUgXCJzYWZlIGFyZWFcIiBpcyB2aXNpYmxlIG9ubHkgYWZ0ZXIgdHJpZ2dlcmluZyBzdWJtZW51IHdpdGggbW91c2VcbiAgLm1lbnUtaXRlbS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuLmhvdmVyLWludGVudDo6YWZ0ZXIge1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG5cbiAgICAvLyBNYWtlIHN1cmUgaXQncyBvbiB0b3Agb2YgZXZlcnl0aGluZ1xuICAgIHotaW5kZXg6IDk5OTk5OTk7XG4gIH1cblxuICAvLyBUb2dnbGUgaWNvbiBkaW1lbnNpb25zIG9uIGRlc2t0b3BcbiAgLmRyb3Bkb3duLXRvZ2dsZSBzdmcge1xuICAgIGhlaWdodDogdmFyKC0tZHJvcGRvd24tdG9nZ2xlLXNpemUpO1xuICAgIHdpZHRoOiB2YXIoLS1kcm9wZG93bi10b2dnbGUtc2l6ZSk7XG5cbiAgICBAaWYgJHVzZS1kcm9wZG93bi10b2dnbGUtYW5pbWF0aW9uID09IHRydWUge1xuICAgICAgdHJhbnNpdGlvbjogYWxsIC4zNXMgY3ViaWMtYmV6aWVyKC4xOSwgMSwgLjIyLCAxKTtcbiAgICB9XG4gIH1cblxuICAvLyBNYWluIGxldmVsIHRvZ2dsZSBpY29uXG4gIC5kcm9wZG93bi10b2dnbGUudG9nZ2xlZC1vbiBzdmcge1xuICAgIHRyYW5zZm9ybTogcm90YXRlWCgxODBkZWcpO1xuICB9XG5cbiAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IDA7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWRyb3Bkb3duLXRvZ2dsZSk7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgcGFkZGluZzogMDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgfVxuXG4gIC8vIFN1Yi1tZW51IHRvZ2dsZSBpY29uXG4gIC5zdWItbWVudSAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICB3aWR0aDogM3JlbTtcbiAgfVxuXG4gIC5zdWItbWVudSAuZHJvcGRvd24tdG9nZ2xlIHN2ZyB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKSByb3RhdGVYKDBkZWcpO1xuICB9XG5cbiAgLnN1Yi1tZW51IC5kcm9wZG93bi10b2dnbGUudG9nZ2xlZC1vbiBzdmcge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZykgcm90YXRlWCgxODBkZWcpO1xuICB9XG5cbiAgLy8gRG9uJ3QgdXNlIGdhcCBmaWxsZXIgaW4gc3ViIG1lbnUgaXRlbXNcbiAgLy8gQWNjZXB0YWJsZSB1c2Ugb2YgZGlzcGxheTogbm9uZSBoZXJlLCBmb3IgdmlzdWFsL3RlY2huaWNhbCBwdXJwb3Nlc1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgYTExeS9uby1kaXNwbGF5LW5vbmVcbiAgLnN1Yi1tZW51IC5tZW51LWl0ZW0taGFzLWNoaWxkcmVuOjphZnRlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHdpZHRoLW1heC1tb2JpbGUpIHtcbiAgICB1bCBsaTpmb2N1cyA+IHVsLFxuICAgIHVsIGxpOmhvdmVyID4gdWwge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG5cbiAgLy8gRGlzYWJsZSBhbmltYXRpb25zIG9uIElFMTAgKyBJRTExXG4gIEBtZWRpYSBzY3JlZW4gYW5kICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7XG4gICAgLy8gRW5hYmxlIGhvdmVyc1xuICAgIHVsIGxpOmZvY3VzID4gdWwsXG4gICAgdWwgbGk6aG92ZXIgPiB1bCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cblxuICAvLyBTbW9vdGggYW5pbWF0aW9uXG4gIEBpZiAkdXNlLWRyb3Bkb3duLXRvZ2dsZS1hbmltYXRpb24gPT0gdHJ1ZSB7XG4gICAgLm1lbnUtaXRlbS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuID4gLmRyb3Bkb3duLXRvZ2dsZS50b2dnbGVkLW9uIHN2ZyxcbiAgICAubWVudS1pdGVtLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW46aG92ZXIgPiAuZHJvcGRvd24tdG9nZ2xlIHN2ZyxcbiAgICAubWVudS1pdGVtLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW46Zm9jdXMgPiAuZHJvcGRvd24tdG9nZ2xlIHN2ZyB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpIHJvdGF0ZSgxODBkZWcpO1xuICAgIH1cblxuICAgIC8vIFNtb290aCBhbmltYXRpb25cbiAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3ItbWF4LXNwZWNpZmljaXR5LCBzZWxlY3Rvci1tYXgtY2xhc3NcbiAgICAubWVudS1pdGVtLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gLm1lbnUtaXRlbS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuID4gLmRyb3Bkb3duLXRvZ2dsZS50b2dnbGVkLW9uIHN2ZyxcbiAgICAubWVudS1pdGVtLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gLm1lbnUtaXRlbS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuOmhvdmVyID4gLmRyb3Bkb3duLXRvZ2dsZSBzdmcsXG4gICAgLm1lbnUtaXRlbS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuIC5tZW51LWl0ZW0ubWVudS1pdGVtLWhhcy1jaGlsZHJlbjpmb2N1cyA+IC5kcm9wZG93bi10b2dnbGUgc3ZnIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwJSkgcm90YXRlKDkwZGVnKTtcbiAgICB9XG4gIH1cbn0gLy8gQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkd2lkdGgtbWF4LW1vYmlsZSlcbiIsIi8vIFNpdGUgbmF2aWdhdGlvbiBtb2JpbGUgbGF5b3V0XG4vLyBUaGUgbWFpbiBsYXlvdXQgZm9yIHRoZSB3ZWJzaXRlIG5hdmlnYXRpb24sIGZvciB0aGUgbW9iaWxlIHZlcnNpb24gb25seS5cblxuLy8gU2V0dGluZ3NcbiRhYnNvbHV0ZS1uYXZpZ2F0aW9uLW1vYmlsZTogdHJ1ZTtcbiRuYXYtc2xpZGUtYW5pbWF0aW9uOiB0cnVlO1xuXG4vLyBTZXR0aW5ncyBmb3Igam9uc3VoL2hhbWJ1cmdlcnNcbi8vIFRoZXNlIG5lZWQgdG8gYmUgU0NTUyB2YXJpYWJsZXNcbiRoYW1idXJnZXItcGFkZGluZy14OiAxLjVyZW07XG4kaGFtYnVyZ2VyLXBhZGRpbmcteTogNHJlbTtcbiRoYW1idXJnZXItbGF5ZXItd2lkdGg6IDNyZW07XG4kaGFtYnVyZ2VyLWxheWVyLWhlaWdodDogLjJyZW07XG4kaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmc6IC41cmVtO1xuJGhhbWJ1cmdlci1sYXllci1jb2xvcjogdmFyKC0tY29sb3ItaGFtYnVyZ2VyKTtcbiRoYW1idXJnZXItbGF5ZXItYm9yZGVyLXJhZGl1czogMDtcbiRoYW1idXJnZXItaG92ZXItb3BhY2l0eTogLjg7XG4kaGFtYnVyZ2VyLWhvdmVyLXRyYW5zaXRpb24tZHVyYXRpb246IC4xNXM7XG4kaGFtYnVyZ2VyLWhvdmVyLXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG5cbi8vIENTUyB2YXJpYWJsZXNcbi8vIFRoZXNlIGNhbiBiZSBhZGp1c3RlZCB3aXRoIG1lZGlhIHF1ZXJpZXMgZm9yIGluLWJldHdlZW4gYnJlYWtwb2ludHNcbjpyb290IHtcbiAgLy8gRGltZW5zaW9ucywgZ2FwcyBhbmQgc3BhY2luZ3NcbiAgLS1mb250LXNpemUtbWFpbi1sZXZlbC1tb2JpbGU6IDE3cHg7XG4gIC0tZm9udC1zaXplLXN1Yi1tZW51LW1vYmlsZTogMTdweDtcbiAgLS1mb250LXdlaWdodC1tYWluLWxldmVsLW1vYmlsZTogNjAwO1xuICAtLWZvbnQtd2VpZ2h0LXN1Yi1tZW51LW1vYmlsZTogNjAwO1xuICAtLWRyb3Bkb3duLXRvZ2dsZS1zaXplLW1vYmlsZTogMTJweDtcbiAgLS1oZWlnaHQtbmF2aWdhdGlvbi1tb2JpbGU6IDcycHg7XG4gIC0tbWFyZ2luLWxlZnQtc3ViLW1lbnU6IDJyZW07XG4gIC0tcGFkZGluZy1tYWluLWxldmVsLXZlcnRpY2FsLW1vYmlsZTogMS4ycmVtO1xuICAtLXBhZGRpbmctc3ViLW1lbnUtdmVydGljYWwtbW9iaWxlOiAuOHJlbTtcbiAgLS1wYWRkaW5nLXN1Yi1tZW51LWhvcml6b250YWwtbW9iaWxlOiAyLjVyZW07XG5cbiAgLy8gQ29sb3JzXG4gIC0tY29sb3ItYWN0aXZlLW1haW4tbGV2ZWwtbW9iaWxlOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIC0tY29sb3ItYmFja2dyb3VuZC1uYXYtbW9iaWxlLWhlYWRlcjogdmFyKC0tY29sb3ItbWFpbik7XG4gIC0tY29sb3ItYmFja2dyb3VuZC1uYXYtbW9iaWxlLWhlYWRlci1hY3RpdmU6IHZhcigtLWNvbG9yLW1haW4pO1xuICAtLWNvbG9yLWJhY2tncm91bmQtbmF2LW1vYmlsZS1sYXllcjogdmFyKC0tY29sb3ItbWFpbik7XG4gIC0tY29sb3ItYmFja2dyb3VuZC1uYXYtbW9iaWxlLWxheWVyLWFjdGl2ZTogdmFyKC0tY29sb3ItbWFpbik7XG4gIC0tY29sb3ItY3VycmVudC1tb2JpbGU6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgLS1jb2xvci1kcm9wZG93bi10b2dnbGUtbW9iaWxlOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIC0tY29sb3ItaGFtYnVyZ2VyLWFjdGl2ZTogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAtLWNvbG9yLWhhbWJ1cmdlcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAtLWNvbG9yLW1haW4tbGV2ZWwtbW9iaWxlOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIC0tY29sb3Itc2VwYXJhdG9yLW5hdi1tb2JpbGU6IHJnYigyNTUgMjU1IDI1NSAvIC4xKTtcbiAgLS1jb2xvci1zdWItbWVudS1tb2JpbGU6IHJnYigyNTUgMjU1IDI1NSAvIC44KTtcbn1cblxuLy8gSW5pdCBUYXN0eSBIYW1idXJnZXIgbmF2aWdhdGlvbiB0b2dnbGVcbkBpbXBvcnQgJ2hhbWJ1cmdlcnMvX3Nhc3MvaGFtYnVyZ2Vycy9oYW1idXJnZXJzJztcblxuLy8gSW5pdCBoYW1idXJnZXIgYW5pbWF0aW9uXG4vLyBDaG9vc2UgZnJvbSBhbmltYXRpb25zOiBodHRwczovL2pvbnN1aC5jb20vaGFtYnVyZ2Vycy9cbi5oYW1idXJnZXIge1xuICAvLyBUaGlzIGNvbWVzIGZyb20gbm9kZSBtb2R1bGUgc28gY2FuJ3QgZG8gYW55dGhpbmcgYWJvdXQgdGhlIHNlbGVjdG9yXG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZVxuICBAZXh0ZW5kIC5oYW1idXJnZXItLWNvbGxhcHNlO1xufVxuXG4vLyBOYXZpZ2F0aW9uIGNvcmUgZnVuY3Rpb25hbGl0eVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkd2lkdGgtbWF4LW1vYmlsZSkge1xuICAvLyBGdW5jdGlvbmFsaXR5IG5lZWRzIGRpc3BsYXk6IG5vbmUgaGVyZSBmb3IgdmlzdWFsIHJlYXNvbnNcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGExMXkvbm8tZGlzcGxheS1ub25lXG4gIC5qcyAubWVudS1pdGVtcyB1bCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR3aWR0aC1tYXgtbW9iaWxlKSB7XG4gIC5qcyB1bCAuc3ViLW1lbnUudG9nZ2xlZC1vbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuLy8gTW9iaWxlIHN0eWxlc1xuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHdpZHRoLW1heC1tb2JpbGUgLSAxcHgpIHtcblxuICAvLyBMZXQncyBlbnN1cmUgc2l0ZS1oZWFkZXIgbG9hZHMgcHJvcGVybHkgYW5kIGRvZXNuJ3QgbGVhdmUgZW1wdHkgc3BhY2VzXG4gIC5uYXYtY29udGFpbmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1iYWNrZ3JvdW5kLW5hdi1tb2JpbGUtaGVhZGVyKTtcblxuICAgIEBpZiAkYWJzb2x1dGUtbmF2aWdhdGlvbi1tb2JpbGUgPT0gZmFsc2Uge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgei1pbmRleDogMjIyO1xuICAgIH1cblxuICAgIEBpZiAkYWJzb2x1dGUtbmF2aWdhdGlvbi1tb2JpbGUgPT0gdHJ1ZSB7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgLy8gR2VuZXJhbCBuYXZpZ2F0aW9uIHJlc2V0cyBmb3IgbW9iaWxlXG4gIC5zaXRlLWhlYWRlciB1bCxcbiAgLnNpdGUtaGVhZGVyIGxpLFxuICAuc2l0ZS1oZWFkZXIgYSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG5cbiAgLm1haW4tbmF2aWdhdGlvbi13cmFwcGVyIHtcbiAgICBvcmRlcjogNjtcbiAgICB6LWluZGV4OiA5OTk7XG4gIH1cblxuICAvLyBVc2VycyB0aGF0IGRvbid0IGhhdmUgSmF2YXNjcmlwdCBlbmFibGVkXG4gIC5uby1qcyAuc2l0ZS1oZWFkZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJhY2tncm91bmQtbmF2LW1vYmlsZS1oZWFkZXIpO1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gIH1cblxuICAvLyBEaXNhYmxlIHNjcm9sbCBvbiBodG1sIGJvZHkgd2hlbiBtZW51IGlzIG9wZW5lZC5cbiAgLmRpc2FibGUtc2Nyb2xsIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG5cbiAgLm5hdi1wcmltYXJ5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1iYWNrZ3JvdW5kLW5hdi1tb2JpbGUtbGF5ZXIpO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogY2FsYygxMDB2aCAtIHZhcigtLWhlaWdodC1uYXZpZ2F0aW9uLW1vYmlsZSkpO1xuICAgIG1hcmdpbjogMDtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cblxuICAvLyBQcmV2ZW50IGZsaWNrZXJpbmcgYmVmb3JlIEpTIGhhcyBiZWVuIGxvYWRlZFxuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgYTExeS9uby1kaXNwbGF5LW5vbmVcbiAgLm5vLWpzIC5uYXYtcHJpbWFyeSB7XG4gICAgLy8gV2UgY2FuJ3Qgc3VwcG9ydCBub24tSlMgdmVyc2lvbnMgYXQgdGhpcyB0aW1lXG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC5tZW51LWl0ZW1zIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMnJlbSAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLy8gTWFpbiBsZXZlbCBtb2JpbGUgbmF2aWdhdGlvbiBsaW5rc1xuICAubWVudS1pdGVtIGEge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1zZXBhcmF0b3ItbmF2LW1vYmlsZSk7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLW1haW4tbGV2ZWwtbW9iaWxlKTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1tYWluLWxldmVsLW1vYmlsZSk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW1haW4tbGV2ZWwtbW9iaWxlKTtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IHZhcigtLXBhZGRpbmctbWFpbi1sZXZlbC12ZXJ0aWNhbC1tb2JpbGUpO1xuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tcGFkZGluZy1zdWItbWVudS1ob3Jpem9udGFsLW1vYmlsZSk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKC0tcGFkZGluZy1zdWItbWVudS1ob3Jpem9udGFsLW1vYmlsZSk7XG4gICAgcGFkZGluZy10b3A6IHZhcigtLXBhZGRpbmctbWFpbi1sZXZlbC12ZXJ0aWNhbC1tb2JpbGUpO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgei1pbmRleDogMDtcbiAgfVxuXG4gIC8vIFN1YiBtZW51IGl0ZW1zXG4gIC5zdWItbWVudSBhIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3Itc3ViLW1lbnUtbW9iaWxlKTtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zdWItbWVudS1tb2JpbGUpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1zdWItbWVudS1tb2JpbGUpO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1wYWRkaW5nLXN1Yi1tZW51LXZlcnRpY2FsLW1vYmlsZSk7XG4gICAgcGFkZGluZy1sZWZ0OiBjYWxjKHZhcigtLXBhZGRpbmctc3ViLW1lbnUtaG9yaXpvbnRhbC1tb2JpbGUpICsgdmFyKC0tbWFyZ2luLWxlZnQtc3ViLW1lbnUpKTtcbiAgICBwYWRkaW5nLXRvcDogdmFyKC0tcGFkZGluZy1zdWItbWVudS12ZXJ0aWNhbC1tb2JpbGUpO1xuICB9XG5cbiAgLnN1Yi1tZW51IHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cblxuICAuc3ViLW1lbnUgLnN1Yi1tZW51IGEge1xuICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBtYXgtbGluZS1sZW5ndGhcbiAgICBwYWRkaW5nLWxlZnQ6IGNhbGModmFyKC0tcGFkZGluZy1zdWItbWVudS1ob3Jpem9udGFsLW1vYmlsZSkgKyB2YXIoLS1tYXJnaW4tbGVmdC1zdWItbWVudSkgKyB2YXIoLS1tYXJnaW4tbGVmdC1zdWItbWVudSkpO1xuICB9XG5cbiAgLm1lbnUtaXRlbSBhOmhvdmVyLFxuICAubWVudS1pdGVtIGE6Zm9jdXMge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1hY3RpdmUtbWFpbi1sZXZlbC1tb2JpbGUpO1xuICB9XG5cbiAgLy8gQ3VycmVudCBtZW51IGl0ZW0gY29sb3JcbiAgLm1lbnUtaXRlbS5jdXJyZW50LW1lbnUtcGFyZW50ID4gYSxcbiAgLm1lbnUtaXRlbS5jdXJyZW50LW1lbnUtaXRlbSA+IGEge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1jdXJyZW50LW1vYmlsZSk7XG4gIH1cblxuICAvLyBEcm9wZG93biB0b2dnbGVcbiAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblxuICAgIC8vIEFsdGVybmF0aXZlICsgYW5kIG1pbnVzIGVmZmVjdFxuICAgIC8vIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vLi4vc3ZnL25hdi1vcGVuLnN2ZycpO1xuICAgIC8vIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAvLyBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIC8vIGJhY2tncm91bmQtc2l6ZTogdmFyKC0tZHJvcGRvd24tdG9nZ2xlLXNpemUtbW9iaWxlKSB2YXIoLS1kcm9wZG93bi10b2dnbGUtc2l6ZS1tb2JpbGUpO1xuICAgIGJvcmRlcjogMDtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItZHJvcGRvd24tdG9nZ2xlLW1vYmlsZSk7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXgtaGVpZ2h0OiA1MnB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcGFkZGluZy1ib3R0b206IHZhcigtLXBhZGRpbmctc3ViLW1lbnUtdmVydGljYWwtbW9iaWxlKTtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXBhZGRpbmctc3ViLW1lbnUtaG9yaXpvbnRhbC1tb2JpbGUpO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXBhZGRpbmctc3ViLW1lbnUtaG9yaXpvbnRhbC1tb2JpbGUpO1xuICAgIHBhZGRpbmctdG9wOiB2YXIoLS1wYWRkaW5nLXN1Yi1tZW51LXZlcnRpY2FsLW1vYmlsZSk7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogMnB4O1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICAgIHRyYW5zaXRpb246IGFsbCAkdHJhbnNpdGlvbi1kdXJhdGlvbjtcbiAgICB6LWluZGV4OiA5OTk5O1xuICB9XG5cbiAgLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7XG4gICAgei1pbmRleDogMTAwMDA7XG4gIH1cblxuICAuc3ViLW1lbnUgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLXN1Yi1tZW51LW1vYmlsZSk7XG4gIH1cblxuICAvLyBIaWRlIGRlc2t0b3AgdG9nZ2xlc1xuICAuZHJvcGRvd24tdG9nZ2xlIHN2ZyB7XG4gICAgaGVpZ2h0OiB2YXIoLS1kcm9wZG93bi10b2dnbGUtc2l6ZS1tb2JpbGUpO1xuICAgIHdpZHRoOiB2YXIoLS1kcm9wZG93bi10b2dnbGUtc2l6ZS1tb2JpbGUpO1xuICAgIC8vIEVuYWJsZSBmb3IgYWx0ZXJuYXRpdmUgKyBhbmQgbWludXMgZWZmZWN0XG4gICAgLy8gTmVlZCB0byB1c2UgZGlzcGxheTogbm9uZSBoZXJlIHRvIG1ha2Ugc3VyZSB0aGVyZSBhcmUgdmlzdWFsbHkgbm8gZG91YmxlIHRvZ2dsZXNcbiAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgYTExeS9uby1kaXNwbGF5LW5vbmVcbiAgICAvLyBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLmRyb3Bkb3duLXRvZ2dsZS50b2dnbGVkLW9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblxuICAgIC8vIEFsdGVybmF0aXZlICsgYW5kIG1pbnVzIGVmZmVjdFxuICAgIC8vIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vLi4vc3ZnL25hdi1jbG9zZS5zdmcnKTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTE4MGRlZyk7XG4gIH1cblxuICAvLyBNb2JpbGUgbmF2aWdhdGlvbiBjb3JlIGZ1bmN0aW9uYWxpdHlcbiAgLmpzIC5uYXYtcHJpbWFyeSB7XG4gICAgbGVmdDogMDtcbiAgICAvLyBIaWRlIG1vYmlsZSBuYXZpZ2F0aW9uIGJ5IGRlZmF1bHQgd2hpbGUgZW5hYmxpbmcgdXNlIG9mIGFuaW1hdGlvbnNcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG5cbiAgICAvLyBEZWZhdWx0IHBvc2l0aW9uLCBzb21lIGJyb3dzZXJzIG5lZWQgdGhpc1xuICAgIHRvcDogdmFyKC0taGVpZ2h0LW5hdmlnYXRpb24tbW9iaWxlKTtcbiAgICB6LWluZGV4OiA1O1xuXG4gICAgLm1lbnUtaXRlbXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmFja2dyb3VuZC1uYXYtbW9iaWxlLWxheWVyKTtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuICB9XG5cbiAgLmpzLmpzLW5hdi1hY3RpdmUge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAubmF2LXByaW1hcnkge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBhbGw7XG4gICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIH1cblxuICAgIC5tZW51LWl0ZW1zIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJhY2tncm91bmQtbmF2LW1vYmlsZS1sYXllci1hY3RpdmUpO1xuICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG5cbiAgICAubmF2LWNvbnRhaW5lciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1iYWNrZ3JvdW5kLW5hdi1tb2JpbGUtaGVhZGVyLWFjdGl2ZSk7XG4gICAgfVxuXG4gICAgLy8gaU9TIG9ubHk6IGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0NTUy8td2Via2l0LXRvdWNoLWNhbGxvdXRcbiAgICBAc3VwcG9ydHMgKC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZSkge1xuICAgICAgLm1haW4tbmF2aWdhdGlvbi13cmFwcGVyIHtcbiAgICAgICAgd2lkdGg6IHVuc2V0O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIGlPUyBvbmx5OiBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9DU1MvLXdlYmtpdC10b3VjaC1jYWxsb3V0XG4gIC8vIEZpeCB3ZWlyZCBpT1MgYnVnIHdoZXJlIHdyYXBwZXIgdGFrZXMgdG9vIG11Y2ggc3BhY2UsIElzc3VlICMxMzRcbiAgQHN1cHBvcnRzICgtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmUpIHtcbiAgICAuanMgLm1haW4tbmF2aWdhdGlvbi13cmFwcGVyIHtcbiAgICAgIHdpZHRoOiAkaGFtYnVyZ2VyLWxheWVyLXdpZHRoO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkYWJzb2x1dGUtbmF2aWdhdGlvbi1tb2JpbGUgPT0gdHJ1ZSB7XG4gICAgLnNpdGUge1xuICAgICAgcGFkZGluZy10b3A6IHZhcigtLWhlaWdodC1uYXZpZ2F0aW9uLW1vYmlsZSk7XG4gICAgfVxuICB9XG5cbiAgQGlmICRuYXYtc2xpZGUtYW5pbWF0aW9uID09IHRydWUge1xuICAgIC8vIFNsaWRlIGFuaW1hdGlvbiBmcm9tIHJpZ2h0XG4gICAgLm5hdi1wcmltYXJ5IHtcbiAgICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMjUwbXMgZWFzZS1pbi1vdXQ7XG4gICAgICB3aWR0aDogMTAwdnc7XG4gICAgfVxuXG4gICAgLmpzLmpzLW5hdi1hY3RpdmUgLm5hdi1wcmltYXJ5IHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgfVxuXG4gICAgLnNpdGUtbWFpbiB7XG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMjUwbXMgZWFzZS1pbi1vdXQ7XG4gICAgfVxuXG4gICAgLy8gUHVzaCBzaXRlIGNvbnRlbnQgdG8gdGhlIGxlZnRcbiAgICAuanMuanMtbmF2LWFjdGl2ZSAuc2l0ZS1tYWluIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTMxMHB4LCAwLCAwKTtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIC8vIEZhZGUgYW5pbWF0aW9uXG4gICAgLm1lbnUtaXRlbXMge1xuICAgICAgb3BhY2l0eTogMDtcbiAgICB9XG5cbiAgICAubmF2LXByaW1hcnkge1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAkdHJhbnNpdGlvbi1kdXJhdGlvbjtcbiAgICAgIHdpZHRoOiAxMDB2dztcbiAgICB9XG5cbiAgICAuanMuanMtbmF2LWFjdGl2ZSAubWVudS1pdGVtcyxcbiAgICAuanMuanMtbmF2LWFjdGl2ZSAubmF2LXByaW1hcnkge1xuICAgICAgb3BhY2l0eTogMTtcblxuICAgICAgLy8gaU9TIG9ubHk6IGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0NTUy8td2Via2l0LXRvdWNoLWNhbGxvdXRcbiAgICAgIEBzdXBwb3J0cyAoLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lKSB7XG4gICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSB2YWx1ZS1uby12ZW5kb3ItcHJlZml4XG4gICAgICAgIGhlaWdodDogLXdlYmtpdC1maWxsLWF2YWlsYWJsZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gSGFtYnVyZ2VyIG1lbnUgaWNvbiBzcGVjaWZpY1xuLmhhbWJ1cmdlci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcixcbi5oYW1idXJnZXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSxcbi5oYW1idXJnZXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItaGFtYnVyZ2VyLWFjdGl2ZSk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1oYW1idXJnZXItYWN0aXZlKTtcbn1cblxuLm5hdi10b2dnbGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xuICBjb2xvcjogdmFyKC0tY29sb3ItaGFtYnVyZ2VyKTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtc2VtaWJvbGQpO1xuICBtYXJnaW46IDA7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBwYWRkaW5nOiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdG9wOiAwO1xuICAvLyBkb2l1c2UtZGlzYWJsZVxuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgei1pbmRleDogMTAwMDAwO1xuXG4gIC8vIE1vZGVybiBzdHVmZiAoOjphZnRlciBpcyBmaXJzdCBsaW5lLCB3aXRob3V0IDo6YWZ0ZXIgaXMgZmlyc3QpXG4gICY6bm90KC50b2dnbGVkLW9uKSAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICB0cmFuc2l0aW9uOiB3aWR0aCAkdHJhbnNpdGlvbi1kdXJhdGlvbjtcbiAgICB3aWR0aDogMThweDtcbiAgfVxuXG4gICYuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIsXG4gICY6bm90KC5pcy1hY3RpdmUpOmhvdmVyIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyLFxuICAmOm5vdCguaXMtYWN0aXZlKTpmb2N1cyAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICB3aWR0aDogJGhhbWJ1cmdlci1sYXllci13aWR0aDtcbiAgfVxuXG4gIHNwYW4ge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1oYW1idXJnZXIpO1xuICAgIGZvbnQtc2l6ZTogMS4yZW07XG4gIH1cblxuICAmLmlzLWFjdGl2ZSBzcGFuIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItaGFtYnVyZ2VyLWFjdGl2ZSk7XG4gIH1cblxuICAmOmhvdmVyLFxuICAmOmFjdGl2ZSB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWhhbWJ1cmdlcik7XG5cbiAgICBzcGFuIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1oYW1idXJnZXIpO1xuICAgIH1cbiAgfVxuXG4gIC8vIEFsdGVybmF0aXZlIGZvY3VzIGZvciBtb2JpbGUgbmF2XG4gICY6Zm9jdXMge1xuICAgIHNwYW4gc3BhbiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1oYW1idXJnZXIpO1xuICAgIH1cblxuICAgIHNwYW4gc3Bhbjo6YmVmb3JlLFxuICAgIHNwYW4gc3Bhbjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItaGFtYnVyZ2VyKTtcbiAgICB9XG4gIH1cblxuICAvLyBXZSBhbHJlYWR5IGhhdmUgYXJpYS1sYWJlbCBmb3IgYnV0dG9uXG4gIC8vIEJ1dCB3ZSB3YW50IHRvIHNob3cgbmF2LXRvZ2dsZSB2aXN1YWxseSBmb3Igc2VlaW5nIHVzZXJzXG4gIC8vIFNvIHdlJ2xsIGFkZCBoYXMtdmlzaWJsZS1sYWJlbCB0byBuYXYtdG9nZ2xlIGluIGhlYWRlci5waHBcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGExMXkvbm8tZGlzcGxheS1ub25lXG4gICY6bm90KC5oYXMtdmlzaWJsZS1sYWJlbCkgLm5hdi10b2dnbGUtbGFiZWwge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAvLyBTZXBhcmF0ZSBhY3RpdmUgY29sb3JzIGZvciBvcGVuZWQgc3RhdGVcbiAgJi5pcy1hY3RpdmUge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1oYW1idXJnZXItYWN0aXZlKTtcbiAgfVxuXG4gICYuaXMtYWN0aXZlIC5oYW1idXJnZXItYm94IHtcbiAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWhhbWJ1cmdlci1hY3RpdmUpO1xuICAgIH1cblxuICAgIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWhhbWJ1cmdlci1hY3RpdmUpO1xuICAgIH1cbiAgfVxuXG4gICYuaXMtYWN0aXZlIC5mb2N1cyxcbiAgJi5pcy1hY3RpdmUgc3Bhbjpmb2N1cyB7XG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1oYW1idXJnZXItYWN0aXZlKTtcbiAgICB9XG5cbiAgICAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1oYW1idXJnZXItYWN0aXZlKTtcbiAgICB9XG4gIH1cblxuICAmLmlzLWFjdGl2ZSBzcGFuOmZvY3VzLFxuICAmLmlzLWFjdGl2ZSBzcGFuOmhvdmVyLFxuICAmLmlzLWFjdGl2ZSBzcGFuOmFjdGl2ZSB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWhhbWJ1cmdlci1hY3RpdmUpO1xuXG4gICAgc3BhbiB7XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItaGFtYnVyZ2VyLWFjdGl2ZSk7XG4gICAgfVxuICB9XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICR3aWR0aC1tYXgtbW9iaWxlKSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkd2lkdGgtbWF4LW1vYmlsZSAtIDFweCkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgJi5oYXMtdmlzaWJsZS1sYWJlbCB7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICB9XG5cbiAgICAmLmhhcy12aXNpYmxlLWxhYmVsIC5uYXYtdG9nZ2xlLWxhYmVsIHtcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLW5hdi10b2dnbGUtbGFiZWwpO1xuXG4gICAgICAvLyBIaWRlIG9uIHNtYWxsZXN0IHBob25lc1xuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDQxMHB4KSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDQxMXB4KSB7XG4gICAgICAmLmhhcy12aXNpYmxlLWxhYmVsIHtcbiAgICAgICAgZ2FwOiAxLjVyZW07XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG4vKiFcbiAqIEhhbWJ1cmdlcnNcbiAqIEBkZXNjcmlwdGlvbiBUYXN0eSBDU1MtYW5pbWF0ZWQgaGFtYnVyZ2Vyc1xuICogQGF1dGhvciBKb25hdGhhbiBTdWggQGpvbnN1aFxuICogQHNpdGUgaHR0cHM6Ly9qb25zdWguY29tL2hhbWJ1cmdlcnNcbiAqIEBsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9qb25zdWgvaGFtYnVyZ2Vyc1xuICovXG5cbi8vIFNldHRpbmdzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuJGhhbWJ1cmdlci1wYWRkaW5nLXggICAgICAgICAgIDogMTVweCAhZGVmYXVsdDtcbiRoYW1idXJnZXItcGFkZGluZy15ICAgICAgICAgICA6IDE1cHggIWRlZmF1bHQ7XG4kaGFtYnVyZ2VyLWxheWVyLXdpZHRoICAgICAgICAgOiA0MHB4ICFkZWZhdWx0O1xuJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgICAgICAgIDogNHB4ICFkZWZhdWx0O1xuJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nICAgICAgIDogNnB4ICFkZWZhdWx0O1xuJGhhbWJ1cmdlci1sYXllci1jb2xvciAgICAgICAgIDogIzAwMCAhZGVmYXVsdDtcbiRoYW1idXJnZXItbGF5ZXItYm9yZGVyLXJhZGl1cyA6IDRweCAhZGVmYXVsdDtcbiRoYW1idXJnZXItaG92ZXItb3BhY2l0eSAgICAgICA6IDAuNyAhZGVmYXVsdDtcbiRoYW1idXJnZXItYWN0aXZlLWxheWVyLWNvbG9yICA6ICRoYW1idXJnZXItbGF5ZXItY29sb3IgIWRlZmF1bHQ7XG4kaGFtYnVyZ2VyLWFjdGl2ZS1ob3Zlci1vcGFjaXR5OiAkaGFtYnVyZ2VyLWhvdmVyLW9wYWNpdHkgIWRlZmF1bHQ7XG5cbi8vIFRvIHVzZSBDU1MgZmlsdGVycyBhcyB0aGUgaG92ZXIgZWZmZWN0IGluc3RlYWQgb2Ygb3BhY2l0eSxcbi8vIHNldCAkaGFtYnVyZ2VyLWhvdmVyLXVzZS1maWx0ZXIgYXMgdHJ1ZSBhbmRcbi8vIGNoYW5nZSB0aGUgdmFsdWUgb2YgJGhhbWJ1cmdlci1ob3Zlci1maWx0ZXIgYWNjb3JkaW5nbHkuXG4kaGFtYnVyZ2VyLWhvdmVyLXVzZS1maWx0ZXIgICA6IGZhbHNlICFkZWZhdWx0O1xuJGhhbWJ1cmdlci1ob3Zlci1maWx0ZXIgICAgICAgOiBvcGFjaXR5KDUwJSkgIWRlZmF1bHQ7XG4kaGFtYnVyZ2VyLWFjdGl2ZS1ob3Zlci1maWx0ZXI6ICRoYW1idXJnZXItaG92ZXItZmlsdGVyICFkZWZhdWx0O1xuXG4vLyBUeXBlcyAoUmVtb3ZlIG9yIGNvbW1lbnQgb3V0IHdoYXQgeW91IGRvbuKAmXQgbmVlZClcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4kaGFtYnVyZ2VyLXR5cGVzOiAoXG4gIDNkeCxcbiAgM2R4LXIsXG4gIDNkeSxcbiAgM2R5LXIsXG4gIDNkeHksXG4gIDNkeHktcixcbiAgYXJyb3csXG4gIGFycm93LXIsXG4gIGFycm93YWx0LFxuICBhcnJvd2FsdC1yLFxuICBhcnJvd3R1cm4sXG4gIGFycm93dHVybi1yLFxuICBib3JpbmcsXG4gIGNvbGxhcHNlLFxuICBjb2xsYXBzZS1yLFxuICBlbGFzdGljLFxuICBlbGFzdGljLXIsXG4gIGVtcGhhdGljLFxuICBlbXBoYXRpYy1yLFxuICBtaW51cyxcbiAgc2xpZGVyLFxuICBzbGlkZXItcixcbiAgc3BpbixcbiAgc3Bpbi1yLFxuICBzcHJpbmcsXG4gIHNwcmluZy1yLFxuICBzdGFuZCxcbiAgc3RhbmQtcixcbiAgc3F1ZWV6ZSxcbiAgdm9ydGV4LFxuICB2b3J0ZXgtclxuKSAhZGVmYXVsdDtcblxuLy8gQmFzZSBIYW1idXJnZXIgKFdlIG5lZWQgdGhpcylcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5AaW1wb3J0IFwiYmFzZVwiO1xuXG4vLyBIYW1idXJnZXIgdHlwZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5AaW1wb3J0IFwidHlwZXMvM2R4XCI7XG5AaW1wb3J0IFwidHlwZXMvM2R4LXJcIjtcbkBpbXBvcnQgXCJ0eXBlcy8zZHlcIjtcbkBpbXBvcnQgXCJ0eXBlcy8zZHktclwiO1xuQGltcG9ydCBcInR5cGVzLzNkeHlcIjtcbkBpbXBvcnQgXCJ0eXBlcy8zZHh5LXJcIjtcbkBpbXBvcnQgXCJ0eXBlcy9hcnJvd1wiO1xuQGltcG9ydCBcInR5cGVzL2Fycm93LXJcIjtcbkBpbXBvcnQgXCJ0eXBlcy9hcnJvd2FsdFwiO1xuQGltcG9ydCBcInR5cGVzL2Fycm93YWx0LXJcIjtcbkBpbXBvcnQgXCJ0eXBlcy9hcnJvd3R1cm5cIjtcbkBpbXBvcnQgXCJ0eXBlcy9hcnJvd3R1cm4tclwiO1xuQGltcG9ydCBcInR5cGVzL2JvcmluZ1wiO1xuQGltcG9ydCBcInR5cGVzL2NvbGxhcHNlXCI7XG5AaW1wb3J0IFwidHlwZXMvY29sbGFwc2UtclwiO1xuQGltcG9ydCBcInR5cGVzL2VsYXN0aWNcIjtcbkBpbXBvcnQgXCJ0eXBlcy9lbGFzdGljLXJcIjtcbkBpbXBvcnQgXCJ0eXBlcy9lbXBoYXRpY1wiO1xuQGltcG9ydCBcInR5cGVzL2VtcGhhdGljLXJcIjtcbkBpbXBvcnQgXCJ0eXBlcy9taW51c1wiO1xuQGltcG9ydCBcInR5cGVzL3NsaWRlclwiO1xuQGltcG9ydCBcInR5cGVzL3NsaWRlci1yXCI7XG5AaW1wb3J0IFwidHlwZXMvc3BpblwiO1xuQGltcG9ydCBcInR5cGVzL3NwaW4tclwiO1xuQGltcG9ydCBcInR5cGVzL3NwcmluZ1wiO1xuQGltcG9ydCBcInR5cGVzL3NwcmluZy1yXCI7XG5AaW1wb3J0IFwidHlwZXMvc3RhbmRcIjtcbkBpbXBvcnQgXCJ0eXBlcy9zdGFuZC1yXCI7XG5AaW1wb3J0IFwidHlwZXMvc3F1ZWV6ZVwiO1xuQGltcG9ydCBcInR5cGVzL3ZvcnRleFwiO1xuQGltcG9ydCBcInR5cGVzL3ZvcnRleC1yXCI7XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBDb29raW5nIHVwIGFkZGl0aW9uYWwgdHlwZXM6XG4vL1xuLy8gVGhlIFNhc3MgZm9yIGVhY2ggaGFtYnVyZ2VyIHR5cGUgc2hvdWxkIGJlIG5lc3RlZFxuLy8gaW5zaWRlIGFuIEBpZiBkaXJlY3RpdmUgdG8gY2hlY2sgd2hldGhlciBvciBub3Rcbi8vIGl0IGV4aXN0cyBpbiAkaGFtYnVyZ2VyLXR5cGVzIHNvIG9ubHkgdGhlIENTUyBmb3Jcbi8vIGluY2x1ZGVkIHR5cGVzIGFyZSBnZW5lcmF0ZWQuXG4vL1xuLy8gZS5nLiBoYW1idXJnZXJzL3R5cGVzL19uZXctdHlwZS5zY3NzXG4vL1xuLy8gQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIG5ldy10eXBlKSB7XG4vLyAgIC5oYW1idXJnZXItLW5ldy10eXBlIHtcbi8vICAgICAuLi5cbi8vICAgfVxuLy8gfVxuIiwiQHVzZSBcInNhc3M6bWF0aFwiO1xuXG4vLyBIYW1idXJnZXJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4uaGFtYnVyZ2VyIHtcbiAgcGFkZGluZzogJGhhbWJ1cmdlci1wYWRkaW5nLXkgJGhhbWJ1cmdlci1wYWRkaW5nLXg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHksIGZpbHRlcjtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4xNXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG5cbiAgLy8gTm9ybWFsaXplICg8YnV0dG9uPilcbiAgZm9udDogaW5oZXJpdDtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xuICBtYXJnaW46IDA7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuXG4gICY6aG92ZXIge1xuICAgIEBpZiAkaGFtYnVyZ2VyLWhvdmVyLXVzZS1maWx0ZXIgPT0gdHJ1ZSB7XG4gICAgICBmaWx0ZXI6ICRoYW1idXJnZXItaG92ZXItZmlsdGVyO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBvcGFjaXR5OiAkaGFtYnVyZ2VyLWhvdmVyLW9wYWNpdHk7XG4gICAgfVxuICB9XG5cbiAgJi5pcy1hY3RpdmUge1xuICAgICY6aG92ZXIge1xuICAgICAgQGlmICRoYW1idXJnZXItaG92ZXItdXNlLWZpbHRlciA9PSB0cnVlIHtcbiAgICAgICAgZmlsdGVyOiAkaGFtYnVyZ2VyLWFjdGl2ZS1ob3Zlci1maWx0ZXI7XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIG9wYWNpdHk6ICRoYW1idXJnZXItYWN0aXZlLWhvdmVyLW9wYWNpdHk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmhhbWJ1cmdlci1pbm5lcixcbiAgICAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUsXG4gICAgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGhhbWJ1cmdlci1hY3RpdmUtbGF5ZXItY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5oYW1idXJnZXItYm94IHtcbiAgd2lkdGg6ICRoYW1idXJnZXItbGF5ZXItd2lkdGg7XG4gIGhlaWdodDogJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgKiAzICsgJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nICogMjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5oYW1idXJnZXItaW5uZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgdG9wOiA1MCU7XG4gIG1hcmdpbi10b3A6IG1hdGguZGl2KCRoYW1idXJnZXItbGF5ZXItaGVpZ2h0LCAtMik7XG5cbiAgJixcbiAgJjo6YmVmb3JlLFxuICAmOjphZnRlciB7XG4gICAgd2lkdGg6ICRoYW1idXJnZXItbGF5ZXItd2lkdGg7XG4gICAgaGVpZ2h0OiAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaGFtYnVyZ2VyLWxheWVyLWNvbG9yO1xuICAgIGJvcmRlci1yYWRpdXM6ICRoYW1idXJnZXItbGF5ZXItYm9yZGVyLXJhZGl1cztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMTVzO1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlO1xuICB9XG5cbiAgJjo6YmVmb3JlLFxuICAmOjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gICY6OmJlZm9yZSB7XG4gICAgdG9wOiAoJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nICsgJGhhbWJ1cmdlci1sYXllci1oZWlnaHQpICogLTE7XG4gIH1cblxuICAmOjphZnRlciB7XG4gICAgYm90dG9tOiAoJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nICsgJGhhbWJ1cmdlci1sYXllci1oZWlnaHQpICogLTE7XG4gIH1cbn1cbiIsIkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCAzZHgpIHtcbiAgLypcbiAgICogM0RYXG4gICAqL1xuICAuaGFtYnVyZ2VyLS0zZHgge1xuICAgIC5oYW1idXJnZXItYm94IHtcbiAgICAgIHBlcnNwZWN0aXZlOiAkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogMjtcbiAgICB9XG5cbiAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSksXG4gICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yIDBzIDAuMXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpO1xuXG4gICAgICAmOjpiZWZvcmUsXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwcyAwLjFzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVZKDE4MGRlZyk7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0ICsgJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nLCAwKSByb3RhdGUoNDVkZWcpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgKCRoYW1idXJnZXItbGF5ZXItaGVpZ2h0ICsgJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nKSAqIC0xLCAwKSByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIDNkeC1yKSB7XG4gIC8qXG4gICAqIDNEWCBSZXZlcnNlXG4gICAqL1xuICAuaGFtYnVyZ2VyLS0zZHgtciB7XG4gICAgLmhhbWJ1cmdlci1ib3gge1xuICAgICAgcGVyc3BlY3RpdmU6ICRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAyO1xuICAgIH1cblxuICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKSxcbiAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3IgMHMgMC4xcyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSk7XG5cbiAgICAgICY6OmJlZm9yZSxcbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDBzIDAuMXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVkoLTE4MGRlZyk7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0ICsgJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nLCAwKSByb3RhdGUoNDVkZWcpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgKCRoYW1idXJnZXItbGF5ZXItaGVpZ2h0ICsgJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nKSAqIC0xLCAwKSByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIDNkeSkge1xuICAvKlxuICAgKiAzRFlcbiAgICovXG4gIC5oYW1idXJnZXItLTNkeSB7XG4gICAgLmhhbWJ1cmdlci1ib3gge1xuICAgICAgcGVyc3BlY3RpdmU6ICRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAyO1xuICAgIH1cblxuICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKSxcbiAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3IgMHMgMC4xcyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSk7XG5cbiAgICAgICY6OmJlZm9yZSxcbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDBzIDAuMXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVgoLTE4MGRlZyk7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0ICsgJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nLCAwKSByb3RhdGUoNDVkZWcpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgKCRoYW1idXJnZXItbGF5ZXItaGVpZ2h0ICsgJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nKSAqIC0xLCAwKSByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIDNkeS1yKSB7XG4gIC8qXG4gICAqIDNEWSBSZXZlcnNlXG4gICAqL1xuICAuaGFtYnVyZ2VyLS0zZHktciB7XG4gICAgLmhhbWJ1cmdlci1ib3gge1xuICAgICAgcGVyc3BlY3RpdmU6ICRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAyO1xuICAgIH1cblxuICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKSxcbiAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3IgMHMgMC4xcyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSk7XG5cbiAgICAgICY6OmJlZm9yZSxcbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDBzIDAuMXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVgoMTgwZGVnKTtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgKyAkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcsIDApIHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAoJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgKyAkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcpICogLTEsIDApIHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgM2R4eSkge1xuICAvKlxuICAgKiAzRFhZXG4gICAqL1xuICAuaGFtYnVyZ2VyLS0zZHh5IHtcbiAgICAuaGFtYnVyZ2VyLWJveCB7XG4gICAgICBwZXJzcGVjdGl2ZTogJGhhbWJ1cmdlci1sYXllci13aWR0aCAqIDI7XG4gICAgfVxuXG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpLFxuICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvciAwcyAwLjFzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKTtcblxuICAgICAgJjo6YmVmb3JlLFxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMHMgMC4xcyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlWCgxODBkZWcpIHJvdGF0ZVkoMTgwZGVnKTtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgKyAkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcsIDApIHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAoJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgKyAkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcpICogLTEsIDApIHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgM2R4eS1yKSB7XG4gIC8qXG4gICAqIDNEWFkgUmV2ZXJzZVxuICAgKi9cbiAgLmhhbWJ1cmdlci0tM2R4eS1yIHtcbiAgICAuaGFtYnVyZ2VyLWJveCB7XG4gICAgICBwZXJzcGVjdGl2ZTogJGhhbWJ1cmdlci1sYXllci13aWR0aCAqIDI7XG4gICAgfVxuXG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpLFxuICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvciAwcyAwLjFzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKTtcblxuICAgICAgJjo6YmVmb3JlLFxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMHMgMC4xcyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlWCgxODBkZWcpIHJvdGF0ZVkoMTgwZGVnKSByb3RhdGVaKC0xODBkZWcpO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCArICRoYW1idXJnZXItbGF5ZXItc3BhY2luZywgMCkgcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsICgkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCArICRoYW1idXJnZXItbGF5ZXItc3BhY2luZykgKiAtMSwgMCkgcm90YXRlKC00NWRlZyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCBhcnJvdykge1xuICAvKlxuICAgKiBBcnJvd1xuICAgKi9cbiAgLmhhbWJ1cmdlci0tYXJyb3cuaXMtYWN0aXZlIHtcbiAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoJGhhbWJ1cmdlci1sYXllci13aWR0aCAqIC0wLjIsIDAsIDApIHJvdGF0ZSgtNDVkZWcpIHNjYWxlKDAuNywgMSk7XG4gICAgICB9XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogLTAuMiwgMCwgMCkgcm90YXRlKDQ1ZGVnKSBzY2FsZSgwLjcsIDEpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIGFycm93LXIpIHtcbiAgLypcbiAgICogQXJyb3cgUmlnaHRcbiAgICovXG4gIC5oYW1idXJnZXItLWFycm93LXIuaXMtYWN0aXZlIHtcbiAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoJGhhbWJ1cmdlci1sYXllci13aWR0aCAqIDAuMiwgMCwgMCkgcm90YXRlKDQ1ZGVnKSBzY2FsZSgwLjcsIDEpO1xuICAgICAgfVxuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoJGhhbWJ1cmdlci1sYXllci13aWR0aCAqIDAuMiwgMCwgMCkgcm90YXRlKC00NWRlZykgc2NhbGUoMC43LCAxKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCBhcnJvd2FsdCkge1xuICAvKlxuICAgKiBBcnJvdyBBbHRcbiAgICovXG4gIC5oYW1idXJnZXItLWFycm93YWx0IHtcbiAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjFzIDAuMXMgZWFzZSxcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMXMgY3ViaWMtYmV6aWVyKDAuMTY1LCAwLjg0LCAwLjQ0LCAxKTtcbiAgICAgIH1cblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICB0cmFuc2l0aW9uOiBib3R0b20gMC4xcyAwLjFzIGVhc2UsXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjFzIGN1YmljLWJlemllcigwLjE2NSwgMC44NCwgMC40NCwgMSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoJGhhbWJ1cmdlci1sYXllci13aWR0aCAqIC0wLjIsICRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAtMC4yNSwgMCkgcm90YXRlKC00NWRlZykgc2NhbGUoMC43LCAxKTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4xcyBlYXNlLFxuICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjFzIDAuMXMgY3ViaWMtYmV6aWVyKDAuODk1LCAwLjAzLCAwLjY4NSwgMC4yMik7XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoJGhhbWJ1cmdlci1sYXllci13aWR0aCAqIC0wLjIsICRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAwLjI1LCAwKSByb3RhdGUoNDVkZWcpIHNjYWxlKDAuNywgMSk7XG4gICAgICAgICAgdHJhbnNpdGlvbjogYm90dG9tIDAuMXMgZWFzZSxcbiAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4xcyAwLjFzIGN1YmljLWJlemllcigwLjg5NSwgMC4wMywgMC42ODUsIDAuMjIpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgYXJyb3dhbHQtcikge1xuICAvKlxuICAgKiBBcnJvdyBBbHQgUmlnaHRcbiAgICovXG4gIC5oYW1idXJnZXItLWFycm93YWx0LXIge1xuICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMXMgMC4xcyBlYXNlLFxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4xcyBjdWJpYy1iZXppZXIoMC4xNjUsIDAuODQsIDAuNDQsIDEpO1xuICAgICAgfVxuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHRyYW5zaXRpb246IGJvdHRvbSAwLjFzIDAuMXMgZWFzZSxcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMXMgY3ViaWMtYmV6aWVyKDAuMTY1LCAwLjg0LCAwLjQ0LCAxKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogMC4yLCAkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogLTAuMjUsIDApIHJvdGF0ZSg0NWRlZykgc2NhbGUoMC43LCAxKTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4xcyBlYXNlLFxuICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjFzIDAuMXMgY3ViaWMtYmV6aWVyKDAuODk1LCAwLjAzLCAwLjY4NSwgMC4yMik7XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoJGhhbWJ1cmdlci1sYXllci13aWR0aCAqIDAuMiwgJGhhbWJ1cmdlci1sYXllci13aWR0aCAqIDAuMjUsIDApIHJvdGF0ZSgtNDVkZWcpIHNjYWxlKDAuNywgMSk7XG4gICAgICAgICAgdHJhbnNpdGlvbjogYm90dG9tIDAuMXMgZWFzZSxcbiAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4xcyAwLjFzIGN1YmljLWJlemllcigwLjg5NSwgMC4wMywgMC42ODUsIDAuMjIpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgYXJyb3d0dXJuKSB7XG4gIC8qXG4gICAqIEFycm93IFR1cm5cbiAgICovXG4gIC5oYW1idXJnZXItLWFycm93dHVybi5pcy1hY3RpdmUge1xuICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTE4MGRlZyk7XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoOHB4LCAwLCAwKSByb3RhdGUoNDVkZWcpIHNjYWxlKDAuNywgMSk7XG4gICAgICB9XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCg4cHgsIDAsIDApIHJvdGF0ZSgtNDVkZWcpIHNjYWxlKDAuNywgMSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgYXJyb3d0dXJuLXIpIHtcbiAgLypcbiAgICogQXJyb3cgVHVybiBSaWdodFxuICAgKi9cbiAgLmhhbWJ1cmdlci0tYXJyb3d0dXJuLXIuaXMtYWN0aXZlIHtcbiAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKC0xODBkZWcpO1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC04cHgsIDAsIDApIHJvdGF0ZSgtNDVkZWcpIHNjYWxlKDAuNywgMSk7XG4gICAgICB9XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtOHB4LCAwLCAwKSByb3RhdGUoNDVkZWcpIHNjYWxlKDAuNywgMSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgYm9yaW5nKSB7XG4gIC8qXG4gICAqIEJvcmluZ1xuICAgKi9cbiAgLmhhbWJ1cmdlci0tYm9yaW5nIHtcbiAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgICYsXG4gICAgICAmOjpiZWZvcmUsXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgY29sbGFwc2UpIHtcbiAgLypcbiAgICogQ29sbGFwc2VcbiAgICovXG4gIC5oYW1idXJnZXItLWNvbGxhcHNlIHtcbiAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgIHRvcDogYXV0bztcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMTNzO1xuICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC4xM3M7XG4gICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdG9wOiAoJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nICogMiArICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0ICogMikgKiAtMTtcbiAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMnMgMC4ycyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMC42NjY2NywgMC42NjY2NywgMSksXG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHkgMC4xcyBsaW5lYXI7XG4gICAgICB9XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjEycyAwLjJzIGN1YmljLWJlemllcigwLjMzMzMzLCAwLjY2NjY3LCAwLjY2NjY3LCAxKSxcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMTNzIGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsICgkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKyAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCkgKiAtMSwgMCkgcm90YXRlKC00NWRlZyk7XG4gICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMjJzO1xuICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjJzIGN1YmljLWJlemllcigwLjMzMzMzLCAwLCAwLjY2NjY3LCAwLjMzMzMzKSxcbiAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5IDAuMXMgMC4yMnMgbGluZWFyO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4xcyAwLjE2cyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMCwgMC42NjY2NywgMC4zMzMzMyksXG4gICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMTNzIDAuMjVzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgY29sbGFwc2Utcikge1xuICAvKlxuICAgKiBDb2xsYXBzZSBSZXZlcnNlXG4gICAqL1xuICAuaGFtYnVyZ2VyLS1jb2xsYXBzZS1yIHtcbiAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgIHRvcDogYXV0bztcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMTNzO1xuICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC4xM3M7XG4gICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdG9wOiAoJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nICogMiArICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0ICogMikgKiAtMTtcbiAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMnMgMC4ycyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMC42NjY2NywgMC42NjY2NywgMSksXG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHkgMC4xcyBsaW5lYXI7XG4gICAgICB9XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjEycyAwLjJzIGN1YmljLWJlemllcigwLjMzMzMzLCAwLjY2NjY3LCAwLjY2NjY3LCAxKSxcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMTNzIGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsICgkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKyAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCkgKiAtMSwgMCkgcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC4yMnM7XG4gICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMnMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAsIDAuNjY2NjcsIDAuMzMzMzMpLFxuICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHkgMC4xcyAwLjIycyBsaW5lYXI7XG4gICAgICAgIH1cblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gICAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMXMgMC4xNnMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAsIDAuNjY2NjcsIDAuMzMzMzMpLFxuICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjEzcyAwLjI1cyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQHVzZSBcInNhc3M6bWF0aFwiO1xuXG5AaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgZWxhc3RpYykge1xuICAvKlxuICAgKiBFbGFzdGljXG4gICAqL1xuICAuaGFtYnVyZ2VyLS1lbGFzdGljIHtcbiAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgIHRvcDogbWF0aC5kaXYoJGhhbWJ1cmdlci1sYXllci1oZWlnaHQsIDIpO1xuICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4yNzVzO1xuICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjY4LCAtMC41NSwgMC4yNjUsIDEuNTUpO1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICB0b3A6ICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0ICsgJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nO1xuICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTI1cyAwLjI3NXMgZWFzZTtcbiAgICAgIH1cblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICB0b3A6ICgkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCAqIDIpICsgKCRoYW1idXJnZXItbGF5ZXItc3BhY2luZyAqIDIpO1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4yNzVzIGN1YmljLWJlemllcigwLjY4LCAtMC41NSwgMC4yNjUsIDEuNTUpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgICAkeS1vZmZzZXQ6ICRoYW1idXJnZXItbGF5ZXItc3BhY2luZyArICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0O1xuXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgJHktb2Zmc2V0LCAwKSByb3RhdGUoMTM1ZGVnKTtcbiAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC4wNzVzO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsICR5LW9mZnNldCAqIC0yLCAwKSByb3RhdGUoLTI3MGRlZyk7XG4gICAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC4wNzVzO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAdXNlIFwic2FzczptYXRoXCI7XG5cbkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCBlbGFzdGljLXIpIHtcbiAgLypcbiAgICogRWxhc3RpYyBSZXZlcnNlXG4gICAqL1xuICAuaGFtYnVyZ2VyLS1lbGFzdGljLXIge1xuICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgdG9wOiBtYXRoLmRpdigkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCwgMik7XG4gICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjI3NXM7XG4gICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNjgsIC0wLjU1LCAwLjI2NSwgMS41NSk7XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIHRvcDogJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgKyAkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmc7XG4gICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xMjVzIDAuMjc1cyBlYXNlO1xuICAgICAgfVxuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHRvcDogKCRoYW1idXJnZXItbGF5ZXItaGVpZ2h0ICogMikgKyAoJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nICogMik7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjI3NXMgY3ViaWMtYmV6aWVyKDAuNjgsIC0wLjU1LCAwLjI2NSwgMS41NSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICAgICR5LW9mZnNldDogJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nICsgJGhhbWJ1cmdlci1sYXllci1oZWlnaHQ7XG5cbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAkeS1vZmZzZXQsIDApIHJvdGF0ZSgtMTM1ZGVnKTtcbiAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC4wNzVzO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsICR5LW9mZnNldCAqIC0yLCAwKSByb3RhdGUoMjcwZGVnKTtcbiAgICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjA3NXM7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCBlbXBoYXRpYykge1xuICAvKlxuICAgKiBFbXBoYXRpY1xuICAgKi9cbiAgLmhhbWJ1cmdlci0tZW1waGF0aWMge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xMjVzIDAuMTc1cyBlYXNlLWluO1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xMjVzIGN1YmljLWJlemllcigwLjYsIDAuMDQsIDAuOTgsIDAuMzM1KSxcbiAgICAgICAgICAgICAgICAgICAgdG9wIDAuMDVzIDAuMTI1cyBsaW5lYXIsXG4gICAgICAgICAgICAgICAgICAgIGxlZnQgMC4xMjVzIDAuMTc1cyBlYXNlLWluO1xuICAgICAgfVxuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHRvcDogKCRoYW1idXJnZXItbGF5ZXItaGVpZ2h0KSArICgkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcpO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTI1cyBjdWJpYy1iZXppZXIoMC42LCAwLjA0LCAwLjk4LCAwLjMzNSksXG4gICAgICAgICAgICAgICAgICAgIHRvcCAwLjA1cyAwLjEyNXMgbGluZWFyLFxuICAgICAgICAgICAgICAgICAgICByaWdodCAwLjEyNXMgMC4xNzVzIGVhc2UtaW47XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzO1xuICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICBsZWZ0OiAkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogLTI7XG4gICAgICAgICAgdG9wOiAkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogLTI7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogMiwgJGhhbWJ1cmdlci1sYXllci13aWR0aCAqIDIsIDApIHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgICAgdHJhbnNpdGlvbjogbGVmdCAwLjEyNXMgZWFzZS1vdXQsXG4gICAgICAgICAgICAgICAgICAgICAgdG9wIDAuMDVzIDAuMTI1cyBsaW5lYXIsXG4gICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMTI1cyAwLjE3NXMgY3ViaWMtYmV6aWVyKDAuMDc1LCAwLjgyLCAwLjE2NSwgMSk7XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgcmlnaHQ6ICRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAtMjtcbiAgICAgICAgICB0b3A6ICRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAtMjtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKCRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAtMiwgJGhhbWJ1cmdlci1sYXllci13aWR0aCAqIDIsIDApIHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICAgIHRyYW5zaXRpb246IHJpZ2h0IDAuMTI1cyBlYXNlLW91dCxcbiAgICAgICAgICAgICAgICAgICAgICB0b3AgMC4wNXMgMC4xMjVzIGxpbmVhcixcbiAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4xMjVzIDAuMTc1cyBjdWJpYy1iZXppZXIoMC4wNzUsIDAuODIsIDAuMTY1LCAxKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIGVtcGhhdGljLXIpIHtcbiAgLypcbiAgICogRW1waGF0aWMgUmV2ZXJzZVxuICAgKi9cbiAgLmhhbWJ1cmdlci0tZW1waGF0aWMtciB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjEyNXMgMC4xNzVzIGVhc2UtaW47XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjEyNXMgY3ViaWMtYmV6aWVyKDAuNiwgMC4wNCwgMC45OCwgMC4zMzUpLFxuICAgICAgICAgICAgICAgICAgICB0b3AgMC4wNXMgMC4xMjVzIGxpbmVhcixcbiAgICAgICAgICAgICAgICAgICAgbGVmdCAwLjEyNXMgMC4xNzVzIGVhc2UtaW47XG4gICAgICB9XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdG9wOiAoJGhhbWJ1cmdlci1sYXllci1oZWlnaHQpICsgKCRoYW1idXJnZXItbGF5ZXItc3BhY2luZyk7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xMjVzIGN1YmljLWJlemllcigwLjYsIDAuMDQsIDAuOTgsIDAuMzM1KSxcbiAgICAgICAgICAgICAgICAgICAgdG9wIDAuMDVzIDAuMTI1cyBsaW5lYXIsXG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0IDAuMTI1cyAwLjE3NXMgZWFzZS1pbjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIGxlZnQ6ICRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAtMjtcbiAgICAgICAgICB0b3A6ICRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAyO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoJGhhbWJ1cmdlci1sYXllci13aWR0aCAqIDIsICRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAtMiwgMCkgcm90YXRlKC00NWRlZyk7XG4gICAgICAgICAgdHJhbnNpdGlvbjogbGVmdCAwLjEyNXMgZWFzZS1vdXQsXG4gICAgICAgICAgICAgICAgICAgICAgdG9wIDAuMDVzIDAuMTI1cyBsaW5lYXIsXG4gICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMTI1cyAwLjE3NXMgY3ViaWMtYmV6aWVyKDAuMDc1LCAwLjgyLCAwLjE2NSwgMSk7XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgcmlnaHQ6ICRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAtMjtcbiAgICAgICAgICB0b3A6ICRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAyO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoJGhhbWJ1cmdlci1sYXllci13aWR0aCAqIC0yLCAkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogLTIsIDApIHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgICAgdHJhbnNpdGlvbjogcmlnaHQgMC4xMjVzIGVhc2Utb3V0LFxuICAgICAgICAgICAgICAgICAgICAgIHRvcCAwLjA1cyAwLjEyNXMgbGluZWFyLFxuICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjEyNXMgMC4xNzVzIGN1YmljLWJlemllcigwLjA3NSwgMC44MiwgMC4xNjUsIDEpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgbWludXMpIHtcbiAgLypcbiAgICogTWludXNcbiAgICovXG4gIC5oYW1idXJnZXItLW1pbnVzIHtcbiAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgICY6OmJlZm9yZSxcbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdHJhbnNpdGlvbjogYm90dG9tIDAuMDhzIDBzIGVhc2Utb3V0LFxuICAgICAgICAgICAgICAgICAgICB0b3AgMC4wOHMgMHMgZWFzZS1vdXQsXG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHkgMHMgbGluZWFyO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgICAmOjpiZWZvcmUsXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgIHRyYW5zaXRpb246IGJvdHRvbSAwLjA4cyBlYXNlLW91dCxcbiAgICAgICAgICAgICAgICAgICAgICB0b3AgMC4wOHMgZWFzZS1vdXQsXG4gICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eSAwcyAwLjA4cyBsaW5lYXI7XG4gICAgICAgIH1cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAdXNlIFwic2FzczptYXRoXCI7XG5cbkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCBzbGlkZXIpIHtcbiAgLypcbiAgICogU2xpZGVyXG4gICAqL1xuICAuaGFtYnVyZ2VyLS1zbGlkZXIge1xuICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgdG9wOiBtYXRoLmRpdigkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCwgMik7XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIHRvcDogJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgKyAkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmc7XG4gICAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2U7XG4gICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMTVzO1xuICAgICAgfVxuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHRvcDogKCRoYW1idXJnZXItbGF5ZXItaGVpZ2h0ICogMikgKyAoJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nICogMik7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICAgICR5LW9mZnNldDogJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nICsgJGhhbWJ1cmdlci1sYXllci1oZWlnaHQ7XG5cbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAkeS1vZmZzZXQsIDApIHJvdGF0ZSg0NWRlZyk7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpIHRyYW5zbGF0ZTNkKG1hdGguZGl2KCRoYW1idXJnZXItbGF5ZXItd2lkdGgsIC03KSwgJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nICogLTEsIDApO1xuICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAkeS1vZmZzZXQgKiAtMiwgMCkgcm90YXRlKC05MGRlZyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkB1c2UgXCJzYXNzOm1hdGhcIjtcblxuQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIHNsaWRlci1yKSB7XG4gIC8qXG4gICAqIFNsaWRlciBSZXZlcnNlXG4gICAqL1xuICAuaGFtYnVyZ2VyLS1zbGlkZXItciB7XG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICB0b3A6IG1hdGguZGl2KCRoYW1idXJnZXItbGF5ZXItaGVpZ2h0LCAyKTtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgdG9wOiAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCArICRoYW1idXJnZXItbGF5ZXItc3BhY2luZztcbiAgICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZTtcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4xNXM7XG4gICAgICB9XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdG9wOiAoJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgKiAyKSArICgkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKiAyKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgICAgJHktb2Zmc2V0OiAkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKyAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodDtcblxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsICR5LW9mZnNldCwgMCkgcm90YXRlKC00NWRlZyk7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZykgdHJhbnNsYXRlM2QobWF0aC5kaXYoJGhhbWJ1cmdlci1sYXllci13aWR0aCwgNyksICRoYW1idXJnZXItbGF5ZXItc3BhY2luZyAqIC0xLCAwKTtcbiAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgJHktb2Zmc2V0ICogLTIsIDApIHJvdGF0ZSg5MGRlZyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCBzcGluKSB7XG4gIC8qXG4gICAqIFNwaW5cbiAgICovXG4gIC5oYW1idXJnZXItLXNwaW4ge1xuICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4yMnM7XG4gICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjFzIDAuMjVzIGVhc2UtaW4sXG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHkgMC4xcyBlYXNlLWluO1xuICAgICAgfVxuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHRyYW5zaXRpb246IGJvdHRvbSAwLjFzIDAuMjVzIGVhc2UtaW4sXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjIycyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMjI1ZGVnKTtcbiAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC4xMnM7XG4gICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjFzIGVhc2Utb3V0LFxuICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHkgMC4xcyAwLjEycyBlYXNlLW91dDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBib3R0b20gMC4xcyBlYXNlLW91dCxcbiAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4yMnMgMC4xMnMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCBzcGluLXIpIHtcbiAgLypcbiAgICogU3BpbiBSZXZlcnNlXG4gICAqL1xuICAuaGFtYnVyZ2VyLS1zcGluLXIge1xuICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4yMnM7XG4gICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjFzIDAuMjVzIGVhc2UtaW4sXG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHkgMC4xcyBlYXNlLWluO1xuICAgICAgfVxuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHRyYW5zaXRpb246IGJvdHRvbSAwLjFzIDAuMjVzIGVhc2UtaW4sXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjIycyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTIyNWRlZyk7XG4gICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMTJzO1xuICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4xcyBlYXNlLW91dCxcbiAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5IDAuMXMgMC4xMnMgZWFzZS1vdXQ7XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBib3R0b20gMC4xcyBlYXNlLW91dCxcbiAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4yMnMgMC4xMnMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkB1c2UgXCJzYXNzOm1hdGhcIjtcblxuQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIHNwcmluZykge1xuICAvKlxuICAgKiBTcHJpbmdcbiAgICovXG4gIC5oYW1idXJnZXItLXNwcmluZyB7XG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICB0b3A6IG1hdGguZGl2KCRoYW1idXJnZXItbGF5ZXItaGVpZ2h0LCAyKTtcbiAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMHMgMC4xM3MgbGluZWFyO1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICB0b3A6ICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0ICsgJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nO1xuICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4xcyAwLjJzIGN1YmljLWJlemllcigwLjMzMzMzLCAwLjY2NjY3LCAwLjY2NjY3LCAxKSxcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMTNzIGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xuICAgICAgfVxuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHRvcDogKCRoYW1idXJnZXItbGF5ZXItaGVpZ2h0ICogMikgKyAoJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nICogMik7XG4gICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjJzIDAuMnMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAuNjY2NjcsIDAuNjY2NjcsIDEpLFxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4xM3MgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMjJzO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjFzIDAuMTVzIGN1YmljLWJlemllcigwLjMzMzMzLCAwLCAwLjY2NjY3LCAwLjMzMzMzKSxcbiAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4xM3MgMC4yMnMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKyAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCwgMCkgcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMnMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAsIDAuNjY2NjcsIDAuMzMzMzMpLFxuICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjEzcyAwLjIycyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsICRoYW1idXJnZXItbGF5ZXItc3BhY2luZyArICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0LCAwKSByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIHNwcmluZy1yKSB7XG4gIC8qXG4gICAqIFNwcmluZyBSZXZlcnNlXG4gICAqL1xuICAuaGFtYnVyZ2VyLS1zcHJpbmctciB7XG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICB0b3A6IGF1dG87XG4gICAgICBib3R0b206IDA7XG4gICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjEzcztcbiAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzO1xuICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHRvcDogKCRoYW1idXJnZXItbGF5ZXItc3BhY2luZyAqIDIgKyAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCAqIDIpICogLTE7XG4gICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjJzIDAuMnMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAuNjY2NjcsIDAuNjY2NjcsIDEpLFxuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5IDBzIGxpbmVhcjtcbiAgICAgIH1cblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMXMgMC4ycyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMC42NjY2NywgMC42NjY2NywgMSksXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjEzcyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAoJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nICsgJGhhbWJ1cmdlci1sYXllci1oZWlnaHQpICogLTEsIDApIHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjIycztcbiAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4ycyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMCwgMC42NjY2NywgMC4zMzMzMyksXG4gICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eSAwcyAwLjIycyBsaW5lYXI7XG4gICAgICAgIH1cblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gICAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMXMgMC4xNXMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAsIDAuNjY2NjcsIDAuMzMzMzMpLFxuICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjEzcyAwLjIycyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIHN0YW5kKSB7XG4gIC8qXG4gICAqIFN0YW5kXG4gICAqL1xuICAuaGFtYnVyZ2VyLS1zdGFuZCB7XG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4wNzVzIDAuMTVzIGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpLFxuICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvciAwcyAwLjA3NXMgbGluZWFyO1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4wNzVzIDAuMDc1cyBlYXNlLWluLFxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4wNzVzIDBzIGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xuICAgICAgfVxuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHRyYW5zaXRpb246IGJvdHRvbSAwLjA3NXMgMC4wNzVzIGVhc2UtaW4sXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjA3NXMgMHMgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcblxuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4wNzVzIDBzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpLFxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yIDBzIDAuMTVzIGxpbmVhcjtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjA3NXMgMC4xcyBlYXNlLW91dCxcbiAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4wNzVzIDAuMTVzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgICAgdHJhbnNpdGlvbjogYm90dG9tIDAuMDc1cyAwLjFzIGVhc2Utb3V0LFxuICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjA3NXMgMC4xNXMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCBzdGFuZC1yKSB7XG4gIC8qXG4gICAqIFN0YW5kIFJldmVyc2VcbiAgICovXG4gIC5oYW1idXJnZXItLXN0YW5kLXIge1xuICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMDc1cyAwLjE1cyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KSxcbiAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3IgMHMgMC4wNzVzIGxpbmVhcjtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMDc1cyAwLjA3NXMgZWFzZS1pbixcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMDc1cyAwcyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcbiAgICAgIH1cblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICB0cmFuc2l0aW9uOiBib3R0b20gMC4wNzVzIDAuMDc1cyBlYXNlLWluLFxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4wNzVzIDBzIGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuXG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjA3NXMgMHMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSksXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3IgMHMgMC4xNXMgbGluZWFyO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gICAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMDc1cyAwLjFzIGVhc2Utb3V0LFxuICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjA3NXMgMC4xNXMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBib3R0b20gMC4wNzVzIDAuMXMgZWFzZS1vdXQsXG4gICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMDc1cyAwLjE1cyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIHNxdWVlemUpIHtcbiAgLypcbiAgICogU3F1ZWV6ZVxuICAgKi9cbiAgLmhhbWJ1cmdlci0tc3F1ZWV6ZSB7XG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjA3NXM7XG4gICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjA3NXMgMC4xMnMgZWFzZSxcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eSAwLjA3NXMgZWFzZTtcbiAgICAgIH1cblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICB0cmFuc2l0aW9uOiBib3R0b20gMC4wNzVzIDAuMTJzIGVhc2UsXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjA3NXMgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC4xMnM7XG4gICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjA3NXMgZWFzZSxcbiAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5IDAuMDc1cyAwLjEycyBlYXNlO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgICAgICAgIHRyYW5zaXRpb246IGJvdHRvbSAwLjA3NXMgZWFzZSxcbiAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4wNzVzIDAuMTJzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgdm9ydGV4KSB7XG4gIC8qXG4gICAqIFZvcnRleFxuICAgKi9cbiAgLmhhbWJ1cmdlci0tdm9ydGV4IHtcbiAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMnM7XG4gICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTksIDEsIDAuMjIsIDEpO1xuXG4gICAgICAmOjpiZWZvcmUsXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xuICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjFzO1xuICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICAgICAgfVxuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0b3AsIG9wYWNpdHk7XG4gICAgICB9XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogYm90dG9tLCB0cmFuc2Zvcm07XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDc2NWRlZyk7XG4gICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xOSwgMSwgMC4yMiwgMSk7XG5cbiAgICAgICAgJjo6YmVmb3JlLFxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gICAgICAgIH1cblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCB2b3J0ZXgtcikge1xuICAvKlxuICAgKiBWb3J0ZXggUmV2ZXJzZVxuICAgKi9cbiAgLmhhbWJ1cmdlci0tdm9ydGV4LXIge1xuICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4ycztcbiAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xOSwgMSwgMC4yMiwgMSk7XG5cbiAgICAgICY6OmJlZm9yZSxcbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XG4gICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMXM7XG4gICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gICAgICB9XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRvcCwgb3BhY2l0eTtcbiAgICAgIH1cblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBib3R0b20sIHRyYW5zZm9ybTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTc2NWRlZyk7XG4gICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xOSwgMSwgMC4yMiwgMSk7XG5cbiAgICAgICAgJjo6YmVmb3JlLFxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gICAgICAgIH1cblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBUaGlzIGZpbGUgaXMgbWVhbnQgZm9yIGdlbmVyYWwgc3R5bGVzIGFuZCBjb250YWluZXJzXG4vLyB0aGF0IGFwcGx5IGV2ZXJ5d2hlcmUgdGhyb3VnaG91dCB0aGUgd2Vic2l0ZS4gQWRkIG1vcmVcbi8vIGFsd2F5cyByZXBlYXRpbmcgZWxlbWVudHMgcmlnaHQgYmVsb3cuXG5cbi8vIERlZmF1bHQgc3RydWN0dXJhbCBlbGVtZW50XG4uYmxvY2sge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBtYXgtd2lkdGg6ICR3aWR0aC1tYXgtbGF5b3V0O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi8vIEJsb2NrIHBhZGRpbmcgZXhjZXB0aW9uc1xuLy8gVGhpcyBjbGFzcyBpcyB1c2VmdWwgd2hlbiB3ZSBoYXZlIG11bHRpcGxlIGJsb2NrcyBzdGFja2VkIHdpdGggc2FtZSBiYWNrZ3JvdW5kLWNvbG9yXG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3ItbWF4LWNsYXNzLCBzZWxlY3Rvci1tYXgtc3BlY2lmaWNpdHksIG5vLWRlc2NlbmRpbmctc3BlY2lmaWNpdHlcbi5ibG9jay5oYXMtdW5pZmllZC1wYWRkaW5nLWlmLXN0YWNrZWQgKyAuYmxvY2suaGFzLXVuaWZpZWQtcGFkZGluZy1pZi1zdGFja2VkIC5jb250YWluZXIge1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgcGFkZGluZy10b3A6IDA7XG59XG5cbi8vIERlZmF1bHQgc2hhZGUgb24gdG9wIG9mIGJsb2Nrc1xuLnNoYWRlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmFja2dyb3VuZC1zaGFkZSk7XG4gIGhlaWdodDogMTAwJTtcbiAgbGVmdDogMDtcbiAgb3BhY2l0eTogLjM1O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDA7XG59XG5cbi8vIEdsb2JhbCBsaW5rIGhlbHBlclxuLy8gVGhpcyBpcyB1c2VmdWwgaW4gc2VydmljZXMgLXR5cGUgb2YgYXJlYXMgd2hlcmUgdGhlIHdob2xlIGJsb2NrIGlzIGEgbGlua1xuLy8gUmVtZW1iZXIgdG8gZGVmaW5lIGFyaWEtbGFiZWwgb3Igc2NyZWVuLXJlYWRlci10ZXh0IGZvciBhY2Nlc3NpYmlsaXR5XG4uZ2xvYmFsLWxpbmsge1xuICBoZWlnaHQ6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgei1pbmRleDogMztcbn1cblxuLy8gU2l0ZSB3cmFwcGVyXG4uc2l0ZSB7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1heC13aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4vLyBDb250YWluZXJzXG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tZGVzY2VuZGluZy1zcGVjaWZpY2l0eVxuLmNvbnRhaW5lciB7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXgtd2lkdGg6ICR3aWR0aC1ncmlkLWJhc2U7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci12ZXJ0aWNhbCk7XG4gIHBhZGRpbmctbGVmdDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICBwYWRkaW5nLXRvcDogdmFyKC0tcGFkZGluZy1jb250YWluZXItdmVydGljYWwpO1xuXG4gIC8vIElmIGJhc2UgZ3JpZCBpcyBsYXJnZXIgdGhhbiBNYWNib29rIEFpciBzY3JlZW5cbiAgQGlmICR3aWR0aC1ncmlkLWJhc2UgPiAkY29udGFpbmVyLW1hY2Jvb2stYWlyIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJGNvbnRhaW5lci1pcGFkLWxhbmRzY2FwZSkgYW5kIChtYXgtd2lkdGg6ICRjb250YWluZXItbWFjYm9vay1haXIgKyA2LjRyZW0pIHtcbiAgICAgIHBhZGRpbmctbGVmdDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbC1sYXJnZSk7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsLWxhcmdlKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gQ2xlYXIgYmxvY2sgY29udGFpbmVycyBieSBkZWZhdWx0XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tZGVzY2VuZGluZy1zcGVjaWZpY2l0eVxuLnNpdGUtbWFpbiAuY29udGFpbmVyIHtcbiAgY2xlYXI6IGJvdGg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi8vIE1ldGEgYWN0aW9uc1xuLmVudHJ5LWZvb3RlciB7XG4gIGNsZWFyOiBib3RoO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIG1hcmdpbi10b3A6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLXZlcnRpY2FsKTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLy8gQmV0dGVyIGVkaXQgbGlua1xuLmVkaXQtbGluayB7XG4gIGNsZWFyOiBib3RoO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbWFyZ2luLXRvcDogMnJlbTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtaW4td2lkdGg6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHRyYW5zaXRpb246IGFsbCAkdHJhbnNpdGlvbi1kdXJhdGlvbjtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgYSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAgIGJvcmRlcjogMnB4IGRhc2hlZCB2YXIoLS1jb2xvci1saW5rLWVkaXQtYm9yZGVyKTtcbiAgICBjbGVhcjogYm90aDtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItbGluay1lZGl0LXRleHQpO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAycmVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgdHJhbnNpdGlvbjogYWxsICR0cmFuc2l0aW9uLWR1cmF0aW9uO1xuICB9XG5cbiAgJjpmb2N1cyxcbiAgYTpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItbGluay1lZGl0LWJhY2tncm91bmQtaG92ZXIpO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1saW5rLWVkaXQtdGV4dC1ob3Zlcik7XG4gIH1cbn1cblxuLy8gSGlkZS9zaG93IGhlbHBlcnNcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBhMTF5L25vLWRpc3BsYXktbm9uZVxuLmhpZGUtb24tZGVza3RvcCB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkY29udGFpbmVyLW1vYmlsZSkge1xuICAgIC8vIEZvcmNlZCB0byB1c2UgaW1wb3J0YW50IGhlcmUsIGJlY2F1c2UgbWFrZXMgbm8gc2Vuc2UgdG8gd3JpdGUgdG9vIHNwZWNpZmljIHNlbGVjdG9ycyBoZXJlXG4gICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLyBGb3JjZWQgdG8gdXNlIGltcG9ydGFudCBoZXJlLCBiZWNhdXNlIG1ha2VzIG5vIHNlbnNlIHRvIHdyaXRlIHRvbyBzcGVjaWZpYyBzZWxlY3RvcnMgaGVyZVxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGExMXkvbm8tZGlzcGxheS1ub25lXG4uaGlkZS1vbi1tb2JpbGUge1xuICBAbWVkaWEgKG1heC13aWR0aDogJGNvbnRhaW5lci1tb2JpbGUpIHtcbiAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8vIE9ubHkgZnVuY3Rpb24gb2YgdGhlc2UgaXMgdG8gZm9yY2UgaGlkZSBjb250ZW50IGJhc2VkIG9uIHRoZSB2aWV3XG4vLyBGb3JjZWQgdG8gdXNlIGltcG9ydGFudCBoZXJlLCBiZWNhdXNlIG1ha2VzIG5vIHNlbnNlIHRvIHdyaXRlIHRvbyBzcGVjaWZpYyBzZWxlY3RvcnMgaGVyZVxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGExMXkvbm8tZGlzcGxheS1ub25lXG4uaGlkZS1vbi1tb2JpbGUtbmF2LXZpZXcge1xuICBAbWVkaWEgKG1heC13aWR0aDogJHdpZHRoLW1heC1tb2JpbGUpIHtcbiAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8vIEZvcmNlZCB0byB1c2UgaW1wb3J0YW50IGhlcmUsIGJlY2F1c2UgbWFrZXMgbm8gc2Vuc2UgdG8gd3JpdGUgdG9vIHNwZWNpZmljIHNlbGVjdG9ycyBoZXJlXG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgYTExeS9uby1kaXNwbGF5LW5vbmVcbi5oaWRlLW9uLWRlc2t0b3AtbmF2LXZpZXcge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHdpZHRoLW1heC1tb2JpbGUpIHtcbiAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8vIEZvcmNlZCB0byB1c2UgaW1wb3J0YW50IGhlcmUsIGJlY2F1c2UgbWFrZXMgbm8gc2Vuc2UgdG8gd3JpdGUgdG9vIHNwZWNpZmljIHNlbGVjdG9ycyBoZXJlXG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgYTExeS9uby1kaXNwbGF5LW5vbmVcbi5oaWRlLWNvbXBsZXRlbHkge1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cbiIsIi8vIExheW91dCB3aWR0aHNcbiR3aWR0aC1tYXgtbGF5b3V0OiAxMDAlO1xuJHdpZHRoLW1heC1hcnRpY2xlOiA4MDBweDtcbiR3aWR0aC1ncmlkLWJhc2U6IDE0NDBweDtcblxuLy8gVGhpcyBpcyB0aGUgYnJlYWtwb2ludCBuYXZpZ2F0aW9uIHRyYW5zZm9ybXMgaW50byBtb2JpbGUgbWVudVxuLy8gTkIhIElNUE9SVEFOVCEgUmVtZW1iZXIgdG8gY2hhbmdlIGluIGpzL3NyYy9uYXZpZ2F0aW9uLmpzOlxuLy8gY29uc3QgcmVzcG9uc2l2ZW5hdiA9IDk2MDtcbi8vIElmIHRoZXNlIGFyZSBub3QgdGhlIHNhbWUsIG5hdmlnYXRpb24gdG9nZ2xlcyB3aWxsIG5vdCB3b3JrIHByb3Blcmx5LlxuJHdpZHRoLW1heC1tb2JpbGU6IDk2MHB4O1xuXG4vLyBCcmVha3BvaW50cyBmb3IgY29udGFpbmVyc1xuJGNvbnRhaW5lci1kZXNrdG9wOiAxMjAwcHg7XG4kY29udGFpbmVyLWlwYWQ6IDc3MHB4O1xuJGNvbnRhaW5lci1pcGFkLWxhbmRzY2FwZTogMTAyNHB4O1xuJGNvbnRhaW5lci1tYWNib29rLWFpcjogMTQ0MHB4O1xuJGNvbnRhaW5lci1tb2JpbGU6IDQ4MHB4O1xuXG4vLyBHdXRlbmJlcmcgd2lkdGhzXG4kd2lkdGgtd2lkZTogMTIwMHB4O1xuJHdpZHRoLWZ1bGw6IDEwMCU7XG4iLCIvLyBJdCBpcyBhY2NlcHRhYmxlIHRvIGhpZGUgdGhpbmdzIGZvciBwcmludFxuLy8gc3R5bGVsaW50LWRpc2FibGUgYTExeS9uby1kaXNwbGF5LW5vbmVcbkBtZWRpYSBwcmludCB7XG4gIC5uYXYtY29udGFpbmVyLFxuICAuc2l0ZS1mb290ZXIsXG4gIC5zaWRlLW5hdiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC8vIEFkZCBjb2xvcnMsIGRpc2FibGUgc3BhY2luZ3Mgb3IgaW1hZ2VzLFxuICAvLyBldGMuIGRlZmluZSBoZXJlXG4gIC8vICoge1xuICAvLyAgIGNvbG9yOiB2YXIoLS1jb2xvci1ibGFjaykgIWltcG9ydGFudDtcbiAgLy8gfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tcHJvcGVydHktdW5pdC1hbGxvd2VkLWxpc3QsIG5vLWRlc2NlbmRpbmctc3BlY2lmaWNpdHlcbi8vIEV2ZXJ5dGhpbmcgYXJvdW5kIGZvbnRzLCBmb250IHNpemUgZGVmaW5pdGlvbnMgYW5kIHR5cGVzZXRcbi8vIHByZXNldHMuIE5vIG1vZHVsYXIgc2NhbGUsIGJ1dCBhIHNvcGhpc3RpY2F0ZWQgdmlld3BvcnRcbi8vIGJhc2VkIHJlc3BvbnNpdmUgbWl4aW4gY2FuIGJlIGZvdW5kIGluIF9oZWxwZXJzLnNjc3NcblxuLy8gU2V0IHJvb3Qgc2l6ZSBmb3IgcmVtc1xuOnJvb3Qge1xuICBmb250LXNpemU6IDYyLjUlO1xufVxuXG4vLyBUeXBvZ3JhcGh5IHNldHRpbmdzXG4uaXMtcm9vdC1jb250YWluZXIsXG4uYWNmLWJsb2NrLXByZXZpZXcgLmJsb2NrLFxuYm9keSB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1wYXJhZ3JhcGgpO1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1wYXJhZ3JhcGgpO1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1wYXJhZ3JhcGgpO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXBhcmFncmFwaCk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1wYXJhZ3JhcGgpO1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgdmFsdWUta2V5d29yZC1jYXNlXG4gIHRleHQtcmVuZGVyaW5nOiBnZW9tZXRyaWNQcmVjaXNpb247XG59XG5cbi8vIEhlYWRpbmcgZGVmYXVsdHNcbmgxLFxuaDIsXG5oMyxcbmg0LFxuaDUsXG5oNiB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1oZWFkaW5nKTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtaGVhZGluZyk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1oZWFkaW5ncyk7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLW1hcmdpbi1iZXR3ZWVuLXBhcmFncmFwaHMpO1xuICBtYXJnaW4tdG9wOiB2YXIoLS1tYXJnaW4tYmV0d2Vlbi1wYXJhZ3JhcGhzKTtcbn1cblxuaDIsXG5oMyxcbmg0LFxuaDUsXG5oNiB7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1oZWFkaW5ncyk7XG59XG5cbi8vIERlZmluZSBoZWFkaW5nIHNjYWxlc1xuLy8gQ3VycmVudDogUGVyZmVjdCBmb3VydGg6IGh0dHBzOi8vdHlwZS1zY2FsZS5jb20vXG5oMSB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWgxKTtcbn1cblxuaDIge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oMik7XG59XG5cbmgzIHtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaDMpO1xufVxuXG5oNCB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWg0KTtcbn1cblxuaDUge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oNSk7XG59XG5cbmg2IHtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaDYpO1xufVxuXG5oMTpmaXJzdC1jaGlsZCxcbmgyOmZpcnN0LWNoaWxkLFxuaDM6Zmlyc3QtY2hpbGQsXG5oNDpmaXJzdC1jaGlsZCxcbmg1OmZpcnN0LWNoaWxkLFxuaDY6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuXG4vLyBCb2xkXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xufVxuXG4vLyBJdGFsaWNcbmVtLFxuaSB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuLy8gRGVmYXVsdCBwYXJhZ3JhcGhzXG5wIHtcbiAgbWFyZ2luLWJvdHRvbTogMi45cmVtO1xuICBtYXJnaW4tdG9wOiAyLjlyZW07XG59XG5cbnA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4iLCIvLyBUaGUgdmVyeSB0b3Agb2YgdGhlIHNpdGUsIGVsZW1lbnQgdGhhdCB1c3VhbGx5IGluY2x1ZGVzXG4vLyB0aGUgc2l0ZSBuYXZpZ2F0aW9uIGFuZCBzZWFyY2ggZm9yIGV4YW1wbGUuXG4uc2l0ZS1oZWFkZXIge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1heC13aWR0aDogJHdpZHRoLWdyaWQtYmFzZTtcbiAgcGFkZGluZy1ib3R0b206IHZhcigtLXBhZGRpbmctc2l0ZS1oZWFkZXItdmVydGljYWwpO1xuICBwYWRkaW5nLWxlZnQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgcGFkZGluZy10b3A6IHZhcigtLXBhZGRpbmctc2l0ZS1oZWFkZXItdmVydGljYWwpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE1O1xufVxuXG4uc2l0ZS10aXRsZSB7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBtYXJnaW46IDA7XG5cbiAgYSB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG59XG5cbi8vIE5hdiBjb250YWluZXIgdmlzaWJpbGl0eSBmaXhcbi5uYXYtY29udGFpbmVyIHtcbiAgei1pbmRleDogMTA7XG59XG5cbi8vIERlbGV0ZSB0aGUgZm9sbG93aW5nIHN0eWxlcyB3aGVuIHlvdSBzdGFydCEgKG1hcmtlZCB3aXRoIC0tY2xpcC0tKVxuLy8gLS1jbGlwLS1cbi5zaXRlLW1haW4ge1xuICBkaXNwbGF5OiBncmlkO1xufVxuXG4uc2l0ZS1tYWluOjphZnRlciB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZVxuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodmFyKC0tY29sb3ItYmxhY2spLCB2YXIoLS1jb2xvci1zY2llbmNlLWJsdWUpKSwgbGluZWFyLWdyYWRpZW50KHZhcigtLWNvbG9yLWJsYWNrKSwgdmFyKC0tY29sb3Itc2NpZW5jZS1ibHVlKSk7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgMCwgMTAwJSAwO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IDNweCAxMDAlO1xuICBib3JkZXItYm90dG9tOiAzcHggc29saWQgdmFyKC0tY29sb3Itc2NpZW5jZS1ibHVlKTtcbiAgYm9yZGVyLXRvcDogM3B4IHNvbGlkIHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgY29udGVudDogJ0J1aWxkIHlvdXIgd2Vic2l0ZSBoZXJlISAoUmVtb3ZlIHRoaXMgYml0IGluIHNhc3MvbGF5b3V0L19zaXRlLWhlYWRlci5zY3NzKSc7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZVxuICBmb250LXNpemU6IGNsYW1wKC41cmVtLCAzLjR2dywgM3JlbSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1zZW1pYm9sZCk7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci12ZXJ0aWNhbCk7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi10b3A6IGNhbGModmFyKC0tcGFkZGluZy1jb250YWluZXItdmVydGljYWwpICogMik7XG4gIG1heC13aWR0aDogJHdpZHRoLWdyaWQtYmFzZSAtIDQwcHg7XG4gIG9wYWNpdHk6IC43O1xuICBvcmRlcjogLTE7XG4gIHBhZGRpbmc6IDRyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aWR0aDogY2FsYygxMDAlIC0gNHJlbSk7XG59XG4vLyAtLWNsaXAtLVxuIiwiLy8gVGhlIHZlcnkgYm90dG9tIG9mIHRoZSBzaXRlLiBVc3VhbGx5IGNvbnRhaW5zIHN1cHBvcnRpbmdcbi8vIG9yIHNlY29uZGFyeSBuYXZpZ2F0aW9uLCBzb2NpYWwgbWVkaWEgaWNvbnMsIGNvbnRhY3QgZGV0YWlsc1xuLy8gYW5kIHN1Y2guXG5cbi8vIFBsZWFzZSBub3RlOiBUaGVzZSBhcmUgbW9zdGx5IGZvciBkZW1vIHB1cnBvc2VzXG4vLyBzbyBmZWVsIGZyZWUgdG8gcmVtb3ZlIGV2ZXJ5dGhpbmcgaW4gdGhpcyBmaWxlXG4vLyBhbmQgc3RhcnQgb3Zlci5cbi5zaXRlLWZvb3RlciB7XG4gIGNsZWFyOiBib3RoO1xuICBjb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nOiA2cmVtIDJyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICBwLFxuICBzcGFuIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICB9XG5cbiAgLndvcmRwcmVzcy1sb2dvIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgfVxuXG4gIHNwYW4ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuXG4gIHN2ZyB7XG4gICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG5cbiAgLnBvd2VyZWQtYnktd29yZHByZXNzIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXNlbWlib2xkKTtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuXG4gIC5naXRodWItbGluayB7XG4gICAgbWFyZ2luLWxlZnQ6IDhweDtcbiAgICBtYXJnaW4tdG9wOiA0cHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwYWRkaW5nLWJvdHRvbTogNHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuXG4gIGEge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAkdHJhbnNpdGlvbi1kdXJhdGlvbjtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAgICAgb3BhY2l0eTogLjU7XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgb3BhY2l0eTogLjI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnRoZW1lLWluZm8ge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICBpIHtcbiAgICAgIG1hcmdpbjogMCA1cHg7XG4gICAgfVxuICB9XG59XG4iLCIuc2l0ZS1tYWluLFxuLnNpdGUtZm9vdGVyIHtcblxuICAvLyBCdXR0b25zXG4gIC5idXR0b24td3JhcHBlciB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gIGJ1dHRvbixcbiAgLmJ1dHRvbixcbiAgaW5wdXRbdHlwZT1cInJlc2V0XCJdLFxuICBpbnB1dFt0eXBlPVwic3VibWl0XCJdLFxuICBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdIHtcbiAgICBAaW5jbHVkZSBidXR0b24oKTtcblxuICAgIC8vIEJ1dHRvbiBzaXplc1xuICAgICYuYnV0dG9uLXNtYWxsIHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbi1zaXplLXNtYWxsKCk7XG4gICAgfVxuXG4gICAgJi5idXR0b24tbGFyZ2Uge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uLXNpemUtbGFyZ2UoKTtcbiAgICB9XG5cbiAgICAvLyBCdXR0b24gc3R5bGVzXG4gICAgJi5idXR0b24tZ2hvc3Qge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uLXN0eWxlLWdob3N0KCk7XG4gICAgfVxuICB9XG59XG5cbi8vIExhYmVsc1xubGVnZW5kLFxubGFiZWwge1xuICBjb2xvcjogdmFyKC0tY29sb3ItZm9ybS1sYWJlbC10ZXh0KTtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaW5wdXQtZmllbGRzKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXNlbWlib2xkKTtcbn1cblxuLy8gVW5zZXQgY2hlY2tib3ggYW5kIHJhZGlvIGJ1dHRvbiBsYWJlbHNcbmlucHV0ICsgbGFiZWwge1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgZm9udC13ZWlnaHQtbm90YXRpb25cbiAgZm9udC13ZWlnaHQ6IHVuc2V0O1xufVxuXG4vLyBGb3JtIGlucHV0IGVsZW1lbnRzIGFuZCB0ZXh0YXJlYXNcbnRleHRhcmVhLFxuaW5wdXRbdHlwZT1cInRleHRcIl0sXG5pbnB1dFt0eXBlPVwidGVsXCJdLFxuaW5wdXRbdHlwZT1cInVybFwiXSxcbmlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSxcbmlucHV0W3R5cGU9XCJudW1iZXJcIl0sXG5pbnB1dFt0eXBlPVwibW9udGhcIl0sXG5pbnB1dFt0eXBlPVwid2Vla1wiXSxcbmlucHV0W3R5cGU9XCJlbWFpbFwiXSxcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1iYWNrZ3JvdW5kLWlucHV0LWZpZWxkKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1ib3JkZXItZm9ybXMpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWlucHV0LWZpZWxkKTtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXdpZHRoOiB2YXIoLS1ib3JkZXItd2lkdGgtaW5wdXQtZmllbGQpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItZm9ybS10ZXh0KTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtcGFyYWdyYXBoKTtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaW5wdXQtZmllbGRzKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWZvcm0tbGluZS1oZWlnaHQpO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tZm9ybS1wYWRkaW5nLXZlcnRpY2FsKTtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoLS1mb3JtLXBhZGRpbmctaG9yaXpvbnRhbCk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhcigtLWZvcm0tcGFkZGluZy1ob3Jpem9udGFsKTtcbiAgcGFkZGluZy10b3A6IHZhcigtLWZvcm0tcGFkZGluZy12ZXJ0aWNhbCk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIC41NXM7XG5cbiAgJjo6cGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1wbGFjZWhvbGRlcik7XG4gICAgb3BhY2l0eTogdmFyKC0tb3BhY2l0eS1wbGFjZWhvbGRlcik7XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1iYWNrZ3JvdW5kLWlucHV0LWZpZWxkKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWJvcmRlci1mb3Jtcy1mb2N1cyk7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWZvcm0tdGV4dCk7XG5cbiAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItcGxhY2Vob2xkZXItZm9jdXMpO1xuICAgICAgb3BhY2l0eTogdmFyKC0tb3BhY2l0eS1wbGFjZWhvbGRlci1mb2N1cyk7XG4gICAgfVxuICB9XG59XG5cbi8vIFNlbGVjdCBkcm9wIGRvd25zXG5zZWxlY3Qge1xuICAvLyBkb2l1c2UtZGlzYWJsZVxuICBhcHBlYXJhbmNlOiBub25lO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbCwgJTNDc3ZnIHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCI5XCIgdmlld0JveD1cIjAgMCAxMiA5XCIgZmlsbD1cIm5vbmVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIlM0UlM0NwYXRoIGQ9XCJNMi4wNDkgMS41NTJMNi4yMiA2LjI2OGEuMTg4LjE4OCAwIDAwLjI4IDBsNC4xNzMtNC43MTZcIiBzdHJva2U9XCIlMjMyMTIxMjFcIiBzdHJva2Utd2lkdGg9XCIxLjVcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIi8lM0UlM0NkZWZzJTNFJTNDcGF0aCBmaWxsPVwibm9uZVwiIHRyYW5zZm9ybT1cInRyYW5zbGF0ZSguODYxIC40NSlcIiBkPVwiTTAgMGgxMC41NDR2Ny45NUgwelwiLyUzRSUzQy9kZWZzJTNFJTNDL3N2ZyUzRSUwQScpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCB2YXIoLS1nYXAtc2VsZWN0LWljb24pIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiAxMXB4IGF1dG87XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItYm9yZGVyLWZvcm1zKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zZWxlY3QpO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IHZhcigtLWJvcmRlci13aWR0aC1pbnB1dC1maWVsZCk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1mb3JtLXRleHQpO1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1wYXJhZ3JhcGgpO1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1pbnB1dC1maWVsZHMpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tZm9ybS1saW5lLWhlaWdodCk7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWluLXdpZHRoOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tZm9ybS1wYWRkaW5nLXZlcnRpY2FsKTtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoLS1mb3JtLXBhZGRpbmctaG9yaXpvbnRhbCk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhcigtLWZvcm0tcGFkZGluZy1ob3Jpem9udGFsKTtcbiAgcGFkZGluZy10b3A6IHZhcigtLWZvcm0tcGFkZGluZy12ZXJ0aWNhbCk7XG4gIHRleHQtaW5kZW50OiAxcHg7XG4gIHRyYW5zaXRpb246IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vLyBDaGVja2JveGVzICYgcmFkaW8gYnV0dG9uc1xuLy8gTGVhcm4gYWJvdXQgdGhpcyB0ZWNobmlxdWU6XG4vLyBAbGluayBodHRwczovL21vZGVybmNzcy5kZXYvcHVyZS1jc3MtY3VzdG9tLWNoZWNrYm94LXN0eWxlL1xuaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmFja2dyb3VuZC1pbnB1dC1maWVsZCk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJvcmRlci1mb3Jtcyk7XG4gIGNvbG9yOiBjdXJyZW50Q29sb3I7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgZm9udDogaW5oZXJpdDtcbiAgaGVpZ2h0OiB2YXIoLS1zaXplLWNoZWNrYm94KTtcbiAgbWFyZ2luOiAwO1xuICBwbGFjZS1jb250ZW50OiBjZW50ZXI7XG4gIHdpZHRoOiB2YXIoLS1zaXplLWNoZWNrYm94KTtcbn1cblxuLy8gUm91bmQgc3R5bGUgcmFkaW8gYnV0dG9uc1xuaW5wdXRbdHlwZT1cInJhZGlvXCJdOjpiZWZvcmUsXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0ge1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG59XG5cbi8vIFNxdWFyZSBzdHlsZSBjaGVja2JveGVzXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06OmJlZm9yZSxcbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtY2hlY2tib3gpO1xufVxuXG5pbnB1dFt0eXBlPVwicmFkaW9cIl06OmJlZm9yZSxcbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXTo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItY2hlY2tib3gtY2hlY2tlZCk7XG4gIC8vIENoYW5nZSBjaGVja2JveCBjb2xvciBieSBjaGFuZ2luZyA3ZWZmZTEgdG8gc29tZXRoaW5nIGVsc2UgYmVsb3dcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWwsICUzQ3N2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIHdpZHRoPVwiMTZcIiBoZWlnaGc9XCIxNlwiJTNFJTNDZyBjbGFzcz1cIm5jLWljb24td3JhcHBlclwiIHN0cm9rZS13aWR0aD1cIjNcIiBmaWxsPVwiJTIzN2VmZmUxXCIgc3Ryb2tlPVwiJTIzN2VmZmUxXCIlM0UlM0Nwb2x5bGluZSBmaWxsPVwibm9uZVwiIHN0cm9rZT1cIiUyMzdlZmZlMVwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIHN0cm9rZS1taXRlcmxpbWl0PVwiMTBcIiBwb2ludHM9XCIxLCA5IDUsIDEzIDE1LCAzXCIgZGF0YS1jYXA9XCJidXR0XCIlM0UlM0MvcG9seWxpbmUlM0UlM0MvZyUzRSUzQy9zdmclM0UlMEEnKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IHZhcigtLXNpemUtY2hlY2tib3gtbWFya2VyKSB2YXIoLS1zaXplLWNoZWNrYm94LW1hcmtlcik7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWNoZWNrYm94LWNoZWNrZWQpO1xuICBjb250ZW50OiAnJztcbiAgaGVpZ2h0OiB2YXIoLS1zaXplLWNoZWNrYm94KTtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNmb3JtOiBzY2FsZSguOCk7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuMnM7XG4gIHdpZHRoOiB2YXIoLS1zaXplLWNoZWNrYm94KTtcbn1cblxuaW5wdXRbdHlwZT1cInJhZGlvXCJdOmNoZWNrZWQ6OmJlZm9yZSxcbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkOjpiZWZvcmUge1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xufVxuXG5pbnB1dFt0eXBlPVwicmFkaW9cIl06Y2hlY2tlZCxcbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkIHtcbiAgLy8gSGlkZSBlbGVtZW50IHZpc3VhbGx5IG9uIGNsaWNrIHNvIGl0IGNyZWF0ZXMgYSBib3VuY3kgYW5pbWF0aW9uIGlsbHVzaW9uXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG5pbnB1dFt0eXBlPVwicmFkaW9cIl06aG92ZXIsXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0gKyBsYWJlbDpob3ZlcixcbmlucHV0W3R5cGU9XCJyYWRpb1wiXTpmb2N1cyxcbmlucHV0W3R5cGU9XCJyYWRpb1wiXSArIGxhYmVsOmZvY3VzLFxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmhvdmVyLFxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdICsgbGFiZWw6aG92ZXIsXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Zm9jdXMsXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0gKyBsYWJlbDpmb2N1cyB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIG51bWJlci1tYXgtcHJlY2lzaW9uLCBtYXgtbGluZS1sZW5ndGhcbkBtaXhpbiBidXR0b24oJG1heC13aWR0aDogMjMwcHgsICRjb2xvcjogdmFyKC0tY29sb3ItYnV0dG9uKSwgJGhvdmVyOiB2YXIoLS1jb2xvci1idXR0b24taG92ZXIpLCAkYmFja2dyb3VuZDogdmFyKC0tY29sb3ItYnV0dG9uLWJhY2tncm91bmQpLCAkYmFja2dyb3VuZC1ob3ZlcjogdmFyKC0tY29sb3ItYnV0dG9uLWJhY2tncm91bmQtaG92ZXIpLCAkcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWlucHV0LWZpZWxkKSwgJGJvcmRlcjogdmFyKC0tYm9yZGVyLXdpZHRoLWlucHV0LWZpZWxkKSBzb2xpZCB2YXIoLS1jb2xvci1idXR0b24tYmFja2dyb3VuZCksICRib3JkZXItaG92ZXI6IHZhcigtLWJvcmRlci13aWR0aC1pbnB1dC1maWVsZCkgc29saWQgJGJhY2tncm91bmQtaG92ZXIsICR3ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXNlbWlib2xkKSwgJGFycm93OiBmYWxzZSwgJHRyYW5zaXRpb246IGFsbCAkdHJhbnNpdGlvbi1kdXJhdGlvbiBjdWJpYy1iZXppZXIoLjI1LCAuNDYsIC40NSwgLjk0KSkge1xuICAvLyBkb2l1c2UtZGlzYWJsZVxuICBhcHBlYXJhbmNlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgYm9yZGVyOiAkYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkcmFkaXVzO1xuICBjb2xvcjogJGNvbG9yO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtcGFyYWdyYXBoKTtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtMTYpO1xuICBmb250LXdlaWdodDogJHdlaWdodDtcbiAgbGluZS1oZWlnaHQ6IDE5LjYzNjRweDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbWF4LXdpZHRoOiAkbWF4LXdpZHRoO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nLWJvdHRvbTogY2FsYygxNHB4IC0gY2FsYyh2YXIoLS1ib3JkZXItd2lkdGgtaW5wdXQtZmllbGQpICogMikpO1xuICBwYWRkaW5nLWxlZnQ6IGNhbGMoMjFweCAtIGNhbGModmFyKC0tYm9yZGVyLXdpZHRoLWlucHV0LWZpZWxkKSAqIDIpKTtcbiAgcGFkZGluZy1yaWdodDogY2FsYygyMXB4IC0gY2FsYyh2YXIoLS1ib3JkZXItd2lkdGgtaW5wdXQtZmllbGQpICogMikpO1xuICBwYWRkaW5nLXRvcDogY2FsYygxNHB4IC0gY2FsYyh2YXIoLS1ib3JkZXItd2lkdGgtaW5wdXQtZmllbGQpICogMikpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB3aWR0aDogYXV0bztcblxuICAmLmZvY3VzLFxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZC1ob3ZlcjtcbiAgICBib3JkZXI6ICRib3JkZXItaG92ZXI7XG4gICAgY29sb3I6ICRob3ZlcjtcbiAgfVxuXG4gIC8vIEFycm93IGljb25cbiAgQGlmICRhcnJvdyB7XG4gICAgc3ZnIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAycmVtO1xuICAgIH1cbiAgfVxufVxuIiwiQG1peGluIGJ1dHRvbi1zaXplLXNtYWxsKCkge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0xNik7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBudW1iZXItbWF4LXByZWNpc2lvblxuICBsaW5lLWhlaWdodDogMjAuOTA5MXB4O1xuICBwYWRkaW5nLWJvdHRvbTogY2FsYygxMHB4IC0gY2FsYyh2YXIoLS1ib3JkZXItd2lkdGgtaW5wdXQtZmllbGQpICogMikpO1xuICBwYWRkaW5nLWxlZnQ6IGNhbGMoMjFweCAtIGNhbGModmFyKC0tYm9yZGVyLXdpZHRoLWlucHV0LWZpZWxkKSAqIDIpKTtcbiAgcGFkZGluZy1yaWdodDogY2FsYygyMXB4IC0gY2FsYyh2YXIoLS1ib3JkZXItd2lkdGgtaW5wdXQtZmllbGQpICogMikpO1xuICBwYWRkaW5nLXRvcDogY2FsYygxMHB4IC0gY2FsYyh2YXIoLS1ib3JkZXItd2lkdGgtaW5wdXQtZmllbGQpICogMikpO1xufVxuIiwiQG1peGluIGJ1dHRvbi1zaXplLWxhcmdlKCkge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0xOCk7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBudW1iZXItbWF4LXByZWNpc2lvblxuICBsaW5lLWhlaWdodDogMjMuMDkwOXB4O1xuICBwYWRkaW5nLWJvdHRvbTogY2FsYygxN3B4IC0gY2FsYyh2YXIoLS1ib3JkZXItd2lkdGgtaW5wdXQtZmllbGQpICogMikpO1xuICBwYWRkaW5nLWxlZnQ6IGNhbGMoMjFweCAtIGNhbGModmFyKC0tYm9yZGVyLXdpZHRoLWlucHV0LWZpZWxkKSAqIDIpKTtcbiAgcGFkZGluZy1yaWdodDogY2FsYygyMXB4IC0gY2FsYyh2YXIoLS1ib3JkZXItd2lkdGgtaW5wdXQtZmllbGQpICogMikpO1xuICBwYWRkaW5nLXRvcDogY2FsYygxN3B4IC0gY2FsYyh2YXIoLS1ib3JkZXItd2lkdGgtaW5wdXQtZmllbGQpICogMikpO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIG1heC1saW5lLWxlbmd0aFxuQG1peGluIGJ1dHRvbi1zdHlsZS1naG9zdCgkYmFja2dyb3VuZDogdHJhbnNwYXJlbnQsICRiYWNrZ3JvdW5kLWhvdmVyOiB2YXIoLS1jb2xvci1idXR0b24tYmFja2dyb3VuZCksICRjb2xvcjogdmFyKC0tY29sb3ItYnV0dG9uLWJhY2tncm91bmQpLCAkaG92ZXI6IHZhcigtLWNvbG9yLXdoaXRlKSwgJHJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1pbnB1dC1maWVsZCksICRib3JkZXI6IHZhcigtLWJvcmRlci13aWR0aC1pbnB1dC1maWVsZCkgc29saWQgdmFyKC0tY29sb3ItYnV0dG9uLWJhY2tncm91bmQpLCAkdHJhbnNpdGlvbjogYWxsICR0cmFuc2l0aW9uLWR1cmF0aW9uIGN1YmljLWJlemllciguMjUsIC40NiwgLjQ1LCAuOTQpKSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICBib3JkZXI6ICRib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRyYWRpdXM7XG4gIGNvbG9yOiAkY29sb3I7XG4gIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xuXG4gICYuZm9jdXMsXG4gICY6Zm9jdXMsXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kLWhvdmVyO1xuICAgIGJvcmRlci1jb2xvcjogJGJhY2tncm91bmQtaG92ZXI7XG4gICAgY29sb3I6ICRob3ZlcjtcbiAgfVxufVxuIiwiLy8gR2VuZXJhbCBibG9nIGluZGV4IGFuZCBzaW5nbGUgc3R5bGVzXG4vLyBzdHlsZWxpbnQtZGlzYWJsZSBuby1kZXNjZW5kaW5nLXNwZWNpZmljaXR5XG4vLyBDYXRlZ29yeSBsaXN0aW5nIHN0eWxlc1xuLmNhdCB7XG4gIG1hcmdpbi1ib3R0b206IC41cmVtO1xuICBtYXJnaW4tdG9wOiA0cmVtO1xuXG4gIGEge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItY2F0ZWdvcnktYm9yZGVyKTtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItd2lkdGg6IDFweCAxcHggMnB4O1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWNhdGVnb3J5LXRleHQpO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0xNik7XG4gICAgbWFyZ2luLWJvdHRvbTogLjVyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAuNWVtO1xuICAgIHBhZGRpbmc6IC4yZW0gLjZlbTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgJHRyYW5zaXRpb24tZHVyYXRpb247XG4gIH1cblxuICBhOmhvdmVyLFxuICBhOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLXRhZy1ib3JkZXItaG92ZXIpO1xuICB9XG59XG5cbi8vIEJsb2cgcG9zdCB0YWcgc3R5bGVzXG4udGFncyB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLW1hcmdpbi1iZXR3ZWVuLXRleHQtZWxlbWVudHMpO1xuICBtYXJnaW4tdG9wOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gIGxpIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxuXG4gIGEge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItdGFnLWJvcmRlcik7XG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXdpZHRoOiAxcHggMXB4IDJweDtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci10YWctdGV4dCk7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTE0KTtcbiAgICBtYXJnaW4tcmlnaHQ6IC40ZW07XG4gICAgcGFkZGluZzogLjJlbSAuNmVtO1xuICAgIHRyYW5zaXRpb246IGFsbCAkdHJhbnNpdGlvbi1kdXJhdGlvbjtcbiAgfVxuXG4gIGE6aG92ZXIsXG4gIGE6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItdGFnLWJvcmRlci1ob3Zlcik7XG4gIH1cbn1cblxuLy8gTmV4dC9QcmV2aW91cyBzaW5nbGUgcG9zdCBuYXZpZ2F0aW9uXG4ucG9zdC1uYXZpZ2F0aW9uIC5uYXYtbGlua3Mge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcbn1cbiIsIi8vIFRoZXNlIHN0eWxlcyBhcmUgcmVxdWlyZWQgYnkgV29yZFByZXNzLm9yZyBUaGVtZSBDaGVja1xuLy8gUkVRVUlSRUQ6IC5zdGlja3kgY3NzIGNsYXNzIGlzIG5lZWRlZCBpbiB5b3VyIHRoZW1lIGNzcy5cbi8vIFJFUVVJUkVEOiAuYnlwb3N0YXV0aG9yIGNzcyBjbGFzcyBpcyBuZWVkZWQgaW4geW91ciB0aGVtZSBjc3MuXG46cm9vdCB7XG4gIC0tY29sb3ItYm9yZGVyLXN0aWNreTogI2Q3ZTRmMjtcbiAgLS1jb2xvci1ieXBvc3RhdXRob3I6IHJnYig0MiA0NSA2MiAvIC41KTtcbn1cblxuLnN0aWNreSB7XG4gIGJvcmRlcjogMXB4IGRhc2hlZCB2YXIoLS1jb2xvci1ib3JkZXItc3RpY2t5KTtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgcGFkZGluZzogMnJlbTtcbn1cblxuLmNvbW1lbnQtbGlzdCBsaS5ieXBvc3RhdXRob3IsXG4uYnlwb3N0YXV0aG9yIHtcbiAgYm9yZGVyOiAxcHggZGFzaGVkIHZhcigtLWNvbG9yLWJ5cG9zdGF1dGhvcik7XG4gIHBhZGRpbmc6IDJyZW07XG59XG5cbi8vIFdvcmRQcmVzcyBjYXB0aW9uc1xuLy8gUkVRVUlSRUQ6IC53cC1jYXB0aW9uIGNzcyBjbGFzcyBpcyBuZWVkZWQgaW4geW91ciB0aGVtZSBjc3MuXG4vLyBSRVFVSVJFRDogLndwLWNhcHRpb24tdGV4dCBjc3MgY2xhc3MgaXMgbmVlZGVkIGluIHlvdXIgdGhlbWUgY3NzLlxuLndwLWNhcHRpb24ge1xuICBtYXgtd2lkdGg6IDEwMCU7XG5cbiAgaW1nW2NsYXNzKj1cIndwLWltYWdlLVwiXSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gIH1cblxuICAud3AtY2FwdGlvbi10ZXh0IHtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICBwYWRkaW5nOiAxcmVtIDA7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxufVxuIiwiLy8gVGhlIG9uZSBhbmQgb25seSBhbmNob3IgbGluayB0aGF0IGJyaW5ncyB1c2VyIGJhY2sgdG8gdG9wXG4udG9wIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmFja2dyb3VuZC10b3ApO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIGJvdHRvbTogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtMTYpO1xuICBoZWlnaHQ6IDNyZW07XG4gIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICBvcGFjaXR5OiAwO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHJpZ2h0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRyYW5zaXRpb246IDUwMG1zIG9wYWNpdHk7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgd2lkdGg6IDNyZW07XG4gIHotaW5kZXg6IDE7XG5cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmFja2dyb3VuZC10b3AtaG92ZXIpO1xuICB9XG5cbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmFja2dyb3VuZC10b3ApO1xuICB9XG59XG5cbi50b3AuaXMtdmlzaWJsZSB7XG4gIG9wYWNpdHk6IDE7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG59XG4iLCIvLyBDbGFzc2ljIFdvcmRQcmVzcyBnYWxsZXJpZXNcbi8vIEBzb3VyY2UgaHR0cHM6Ly9naXRodWIuY29tL0F1dG9tYXR0aWMvX3MvYmxvYi81MGNlOTNjN2NkNDc4ODcxYzlhZTc1MDRmMGVmNDc0OGY1ZGU0NDlmL3Nhc3MvbWVkaWEvX2dhbGxlcmllcy5zY3NzXG4uZ2FsbGVyeSB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtZ2FwOiAxLjVlbTtcbiAgbWFyZ2luLWJvdHRvbTogMS41ZW07XG59XG5cbi5nYWxsZXJ5LWl0ZW0ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbkBmb3IgJGkgZnJvbSAyIHRocm91Z2ggOSB7XG4gIC5nYWxsZXJ5LWNvbHVtbnMtI3skaX0ge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KCRpLCAxZnIpO1xuICB9XG59XG5cbi5nYWxsZXJ5LWNhcHRpb24ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbiIsIi8vIEFsdGVybmF0aXZlIHN0eWxlOiBodHRwczovL2kuaW1ndXIuY29tL0E4Z1V5dTIucG5nXG4vLyBzdHlsZWxpbnQtZGlzYWJsZSBhMTF5L2ZvbnQtc2l6ZS1pcy1yZWFkYWJsZVxuLm5hdmlnYXRpb246bm90KC5wb3N0LW5hdmlnYXRpb24pIC5uYXYtbGlua3Mge1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgZGlzcGxheTogZmxleDtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtaGVhZGluZyk7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICBtYXJnaW4tdG9wOiA0cmVtO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB3aWR0aDogMTAwJTtcblxuICBhIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbn1cblxuLnBhZ2UtbnVtYmVycyB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIHZhcigtLWNvbG9yLWJsdWUtY2hhbGspO1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJsdWUtY2hhbGspO1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ibHVlLWNoYWxrKTtcbiAgYm9yZGVyLXRvcDogMnB4IHNvbGlkIHZhcigtLWNvbG9yLWJsdWUtY2hhbGspO1xuICBjb2xvcjogdmFyKC0tY29sb3ItcGFnaW5hdGlvbi10ZXh0KTtcbiAgZGlzcGxheTogZmxleDtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW1lZGl1bSk7XG4gIGhlaWdodDogMzVweDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIHRyYW5zaXRpb246IGFsbCAkdHJhbnNpdGlvbi1kdXJhdGlvbjtcbiAgd2lkdGg6IDM1cHg7XG5cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiA0cHg7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogNHB4O1xuICB9XG5cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogNHB4O1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDRweDtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgfVxuXG4gIEBtZWRpYSAobWF4LXdpZHRoOiA2MDBweCkge1xuICAgIGhlaWdodDogMjZweDtcbiAgICB3aWR0aDogMjZweDtcbiAgfVxufVxuXG5hLnBhZ2UtbnVtYmVyczpob3ZlcixcbmEucGFnZS1udW1iZXJzOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItcGFnaW5hdGlvbi1iYWNrZ3JvdW5kLWhvdmVyKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1wYWdpbmF0aW9uLWJvcmRlci1ob3Zlcik7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1wYWdpbmF0aW9uLXRleHQtaG92ZXIpO1xufVxuXG4ucGFnZS1udW1iZXJzLmN1cnJlbnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1wYWdpbmF0aW9uLWJhY2tncm91bmQtY3VycmVudCk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItcGFnaW5hdGlvbi1ib3JkZXItY3VycmVudCk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1wYWdpbmF0aW9uLXRleHQtY3VycmVudCk7XG59XG5cbi8vIFJlbW92ZSB0aGlzIGlmIHlvdSBhcmUgdXNpbmcgdmVyc2lvbiB3aXRoIG5leHQvcHJldlxuLnBhZ2UtbnVtYmVycy5uZXh0LFxuLnBhZ2UtbnVtYmVycy5wcmV2IHtcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICB3aWR0aDogYXV0bztcblxuICBAbWVkaWEgKG1heC13aWR0aDogNjAwcHgpIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgfVxufVxuIiwiLy8gR3Jhdml0eSBmb3JtcyBzdHlsZXMgPj0gMi41XG4vLyBQbGVhc2UgZGlzYWJsZSBDU1MgaW4gL2FkbWluLnBocD9wYWdlPWdmX3NldHRpbmdzXG5cbi8vIFdDQUcgMi4wIGVycm9yc1xuLy8gc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3ItY2xhc3MtcGF0dGVyblxuZGl2LnZhbGlkYXRpb25fZXJyb3Ige1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1lcnJvcik7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTE3KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1mb3JtLXJvdy1nYXApO1xuICBwYWRkaW5nOiAycmVtO1xuXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIH1cbn1cblxuYm9keSAqW2FyaWEtaW52YWxpZD1cInRydWVcIl0ge1xuICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWVycm9yKTtcbn1cblxuLnZhbGlkYXRpb25fbWVzc2FnZSB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1lcnJvcik7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTE2KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xufVxuXG4udmFsaWRhdGlvbl9saXN0IHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tZm9ybS1yb3ctZ2FwKTtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIHBhZGRpbmc6IDA7XG5cbiAgYSB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWVycm9yKTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICBsaSB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWVycm9yKTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XG4gIH1cbn1cblxuLy8gRm9ybSBzY3JlZW4gcmVhZGVyIHRleHRzXG4uZ2Zvcm1fcmVxdWlyZWRfbGVnZW5kLFxuLnNyLW9ubHkge1xuICBAaW5jbHVkZSBzY3JlZW4tcmVhZGVyLXRleHQoKTtcbn1cblxuLy8gRGVmYXVsdCByZXF1aXJlZCBsYWJlbFxuLmdmaWVsZF9yZXF1aXJlZC5nZmllbGRfcmVxdWlyZWRfYXN0ZXJpc2sge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1yZXF1aXJlZC1hc3Rlcmlzay1sYWJlbCk7XG59XG5cbi5nZmllbGRfcmVxdWlyZWQuZ2ZpZWxkX3JlcXVpcmVkX2FzdGVyaXNrLFxuLmdmaWVsZF9yZXF1aXJlZC5nZmllbGRfcmVxdWlyZWRfdGV4dCB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1yZXF1aXJlZC1sYWJlbC10ZXh0KTtcbn1cblxuLmdmaWVsZF9yZXF1aXJlZC5nZmllbGRfcmVxdWlyZWRfdGV4dCB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXJlcXVpcmVkLXRleHQtbGFiZWwpO1xufVxuXG4vLyBHcmF2aXR5IGZvcm1zIG1pbmltYWwgZGVmYXVsdCBzdHlsZXNcbi5nZm9ybV93cmFwcGVyID4gZm9ybSB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtY29sdW1uLWdhcDogdmFyKC0tZm9ybS1jb2x1bW4tZ2FwKTtcbiAgZ3JpZC1yb3ctZ2FwOiB2YXIoLS1mb3JtLXJvdy1nYXApO1xufVxuXG4uZ2Zvcm0tYm9keSB7XG4gIHVsIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgdGV4dGFyZWEsXG4gIGlucHV0Om5vdChbdHlwZT1cImNoZWNrYm94XCJdKTpub3QoW3R5cGU9XCJyYWRpb1wiXSkge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLy8gRml4IHRleHRhcmVhIG5vdCBmdWxsIHdpZHRoXG4gIC5naW5wdXRfY29udGFpbmVyLmdpbnB1dF9jb250YWluZXJfdGV4dGFyZWEge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cblxuICAvLyBDaGVja2JveGVzICYgcmFkaW8gYnV0dG9uc1xuICAuZ2ZpZWxkX3JhZGlvLFxuICAuZ2ZpZWxkX2NoZWNrYm94IHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdhcDogMXJlbTtcbiAgfVxuXG4gIC5nY2hvaWNlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGdhcDogMXJlbTtcbiAgfVxuXG4gIC5nZmllbGRfbGFiZWwge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGdhcDogdmFyKC0tZm9ybS1yZXF1aXJlZC1nYXApO1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICBwYWRkaW5nLWlubGluZS1lbmQ6IDA7XG4gICAgcGFkZGluZy1pbmxpbmUtc3RhcnQ6IDA7XG4gIH1cblxuICAvLyAyLjUgYnVpbHQtaW4gbXVsdGkgY29sdW1uIHN1cHBvcnRcbiAgLmdmb3JtX2ZpZWxkcyB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLWNvbHVtbi1nYXA6IHZhcigtLWZvcm0tY29sdW1uLWdhcCk7XG4gICAgZ3JpZC1yb3ctZ2FwOiB2YXIoLS1mb3JtLXJvdy1nYXApO1xuICAgIC8vIGRvaXVzZS1kaXNhYmxlXG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMTIsIDFmcik7XG4gICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiByZXBlYXQoYXV0by1maWxsLCBhdXRvKTtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC5nZmllbGQge1xuICAgIGJvcmRlcjogMDtcbiAgICBncmlkLWNvbHVtbjogMSAvIC0xO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICAuZ2ZpZWxkLmdmaWVsZC0td2lkdGgtZnVsbCB7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gMTI7XG4gIH1cblxuICAuZ2ZpZWxkLmdmaWVsZC0td2lkdGgtZWxldmVuLXR3ZWxmdGhzIHtcbiAgICBncmlkLWNvbHVtbjogc3BhbiAxMTtcbiAgfVxuXG4gIC5nZmllbGQuZ2ZpZWxkLS13aWR0aC1maXZlLXNpeHRocyB7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gMTA7XG4gIH1cblxuICAuZ2ZpZWxkLmdmaWVsZC0td2lkdGgtdGhyZWUtcXVhcnRlciB7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gOTtcbiAgfVxuXG4gIC5nZmllbGQuZ2ZpZWxkLS13aWR0aC10d28tdGhpcmRzIHtcbiAgICBncmlkLWNvbHVtbjogc3BhbiA4O1xuICB9XG5cbiAgLmdmaWVsZC5nZmllbGQtLXdpZHRoLXNldmVuLXR3ZWxmdGhzIHtcbiAgICBncmlkLWNvbHVtbjogc3BhbiA3O1xuICB9XG5cbiAgLmdmaWVsZC5nZmllbGQtLXdpZHRoLWhhbGYge1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDY7XG4gIH1cblxuICAuZ2ZpZWxkLmdmaWVsZC0td2lkdGgtZml2ZS10d2VsZnRocyB7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gNTtcbiAgfVxuXG4gIC5nZmllbGQuZ2ZpZWxkLS13aWR0aC10aGlyZCB7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gNDtcbiAgfVxuXG4gIC5nZmllbGQuZ2ZpZWxkLS13aWR0aC1xdWFydGVyIHtcbiAgICBncmlkLWNvbHVtbjogc3BhbiAzO1xuICB9XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDY0MHB4KSB7XG4gICAgLmdmb3JtX2ZpZWxkcyB7XG4gICAgICBncmlkLWNvbHVtbi1nYXA6IDA7XG4gICAgfVxuXG4gICAgLmdmaWVsZDpub3QoLmdmaWVsZC0td2lkdGgtZnVsbCkge1xuICAgICAgZ3JpZC1jb2x1bW46IDEgLyAtMTtcbiAgICB9XG4gIH1cbn1cblxuLy8gSGlkZSBTUEFNIEhvbmV5cG90IGZpZWxkc1xuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGExMXkvbm8tZGlzcGxheS1ub25lXG4uZ2Zvcm1fdmFsaWRhdGlvbl9jb250YWluZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vLyBEZWZhdWx0IGNvbmZpcm1hdGlvbiBtZXNzYWdlIHN0eWxlc1xuLmdmb3JtX2NvbmZpcm1hdGlvbl9tZXNzYWdlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLWNvbG9yLXN1Y2Nlc3MpO1xuICBjb2xvcjogdmFyKC0tY29sb3Itc3VjY2Vzcyk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXBhcmFncmFwaCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1zZW1pYm9sZCk7XG4gIHBhZGRpbmc6IDJyZW07XG59XG4iLCIvLyBTZWFyY2hcbi5ibG9jay1zZWFyY2gsXG4uYmxvY2stc2VhcmNoLXJlc3VsdHMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG59XG5cbi5ibG9jay1zZWFyY2ggZm9ybSB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIC8qIGF1dG9wcmVmaXhlcjogb2ZmICovXG4gIGdyaWQtZ2FwOiAxcmVtO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDlmciAxZnI7XG5cbiAgaW5wdXQsXG4gIGxhYmVsIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG4uYmxvY2stc2VhcmNoLXJlc3VsdHMge1xuICA+IC5jb250YWluZXIge1xuICAgIHBhZGRpbmctdG9wOiAwO1xuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRjb250YWluZXItaXBhZC1sYW5kc2NhcGUpIHtcbiAgICAgIC8vIE1ha2UgYSBDU1MgZ3JpZCBmb3IgbXVsdGlwbGUgY29sdW1ucyBpZiB5b3UgdXNlIG90aGVyIHBvc3QgdHlwZSByZXN1bHRzXG4gICAgICBkaXNwbGF5OiBncmlkO1xuICAgIH1cbiAgfVxuXG4gIC5yb3ctcmVzdWx0IHtcbiAgICBib3JkZXItdG9wOiAycHggc29saWQgdmFyKC0tY29sb3ItYm9yZGVyLWZvcm1zKTtcbiAgICBwYWRkaW5nOiAycmVtIDA7XG5cbiAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgdmFyKC0tY29sb3ItYm9yZGVyLWZvcm1zKTtcbiAgICB9XG4gIH1cblxuICBoMyB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaDQpO1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIH1cblxuICBwIHtcbiAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICB9XG5cbiAgLnRhZ3MgYSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmFja2dyb3VuZC10YWcpO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1tYWluKTtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1tYWluKTtcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1iYWNrZ3JvdW5kLXRhZyk7XG4gICAgfVxuICB9XG59XG4iLCIvLyBFcnJvciA0MDQgdGl0bGVcbi5ibG9jay1lcnJvci00MDQge1xuICAuY29udGFpbmVyIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJGNvbnRhaW5lci1tb2JpbGUpIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxMCU7XG4gICAgICBwYWRkaW5nLXRvcDogMTAlO1xuICAgIH1cbiAgfVxuXG4gIGgxIHtcbiAgICBmb250LXNpemU6IGNsYW1wLWNhbGMoJGNvbnRhaW5lci1tb2JpbGUsIDE2MDBweCwgNDJweCwgMjAwcHgpO1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gIH1cbn1cbiIsIi8vIFdvcmRQcmVzcyBidWlsdC1pbiBjb21tZW50cyB3aXRoIGNvbW1lbnRfZm9ybSgpLlxuLy8gQ3VzdG9tIGNvbW1lbnQgdGVtcGxhdGUgY2FuIGJlIGZvdW5kIGluIGluYy9jb21tZW50cy5waHBcbi5jb21tZW50cy1hcmVhIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbWFyZ2luLXRvcDogNTBweDtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi5jb21tZW50LWxpc3Qge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG5cbiAgLy8gTWFrZSBzdXJlIGNoaWxkcmVuIGRvbid0IGhhdmUgbGlzdCBidWxsZXRzXG4gIC5jaGlsZHJlbiB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgfVxuXG4gIGxpIHtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0xNCk7XG4gICAgbWFyZ2luLWJvdHRvbTogNzBweDtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICBwIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItY29tbWVudC10ZXh0KTtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0xNCk7XG4gIH1cblxuICAuYXZhdGFyIHtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG5cbiAgLmNvbW1lbnQtYXV0aG9yIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItY29tbWVudC1hdXRob3ItdGV4dCk7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaDQpO1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgYSxcbiAgLmNvbW1lbnRzLWxpbmsgYSB7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItbGluay1jb21tZW50KTtcbiAgfVxuXG4gIC5jb21tZW50LWF1dGhvciBhIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItcGFyYWdyYXBoKTtcbiAgfVxuXG4gIC5jb21tZW50LXRpbWUge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTE0KTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgIGEge1xuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWxpbmstY29tbWVudC10aW1lLWFuY2hvcik7XG4gICAgfVxuXG4gICAgJjpmb2N1cyxcbiAgICAmOmhvdmVyIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICB9XG5cbiAgLmNvbW1lbnQtdGltZSBzdmcge1xuICAgIGZpbGw6IHZhcigtLWNvbG9yLWxpbmstY29tbWVudC10aW1lLWFuY2hvcik7XG4gICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMnB4O1xuICB9XG59XG5cbi5jb21tZW50cy1saW5rIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTE0KTtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG5cbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWRlc2NlbmRpbmctc3BlY2lmaWNpdHlcbiAgYSB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWxpbmstY29tbWVudCk7XG4gIH1cblxuICAmOmhvdmVyLFxuICAmOmZvY3VzLFxuICBhOmhvdmVyLFxuICBhOmZvY3VzIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItYmxhY2spO1xuICB9XG5cbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWRlc2NlbmRpbmctc3BlY2lmaWNpdHlcbiAgc3ZnIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDdweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAtMXB4O1xuICB9XG59XG5cbi8vIENvbW1lbnQgZm9ybSBncmlkXG4uY29tbWVudC1mb3JtIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRjb250YWluZXItbW9iaWxlKSB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLWdhcDogMWVtO1xuICAgIC8vIGRvaXVzZS1kaXNhYmxlXG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xuXG4gICAgLyogYXV0b3ByZWZpeGVyOiBvZmYgKi9cbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgIC8vIE1ha2UgdGhlc2UgZnVsbCB3aWR0aFxuICAgIC5jb21tZW50LW5vdGVzLFxuICAgIC5jb21tZW50LWZvcm0tY29tbWVudCxcbiAgICAuZm9ybS1zdWJtaXQge1xuICAgICAgZ3JpZC1jb2x1bW46IDEgLyBzcGFuIDI7XG4gICAgfVxuICB9XG59XG5cbi5jb21tZW50LXJlc3BvbmQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcblxuICBpbnB1dCB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRjb250YWluZXItbW9iaWxlKSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cblxuICAuY29tbWVudC1mb3JtLWF1dGhvciB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICBtYXJnaW4tdG9wOiAwO1xuXG4gICAgaW5wdXQge1xuICAgICAgYm9yZGVyLXdpZHRoOiAxcHg7XG4gICAgICBwYWRkaW5nOiAxNXB4O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgLmNvbW1lbnQtZm9ybS1lbWFpbCB7XG4gICAgY2xlYXI6IHJpZ2h0O1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi10b3A6IDA7XG5cbiAgICBpbnB1dCB7XG4gICAgICBib3JkZXItd2lkdGg6IDFweDtcbiAgICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cblxuICAuY29tbWVudC1mb3JtLXVybCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIGlucHV0IHtcbiAgICAgIGJvcmRlci13aWR0aDogMXB4O1xuICAgICAgcGFkZGluZzogMTVweDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxuXG4gIC5mb3JtLXN1Ym1pdCB7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG5cbiAgLmNvbW1lbnQtZm9ybS1jb21tZW50IHtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICB9XG5cbiAgdGV4dGFyZWEge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4iLCIvLyBHdXRlbmJlcmcgY29udGVudFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlcixcbi5hcnRpY2xlLWNvbnRlbnQge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoLS1wYWRkaW5nLWJsb2NrKTtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBwYWRkaW5nLXRvcDogdmFyKC0tcGFkZGluZy1ibG9jayk7XG59XG5cbi8vIEd1dGVuYmVyZyBjb3JlIG1hZ2ljXG4uYXJ0aWNsZS1jb250ZW50ID4gW2NsYXNzXj0nd3AtYmxvY2stJ10sXG4uaXMtcm9vdC1jb250YWluZXIgPiAqLFxuLmFydGljbGUtY29udGVudCA+ICoge1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtcGFyYWdyYXBoKTtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWF4LXdpZHRoOiAkd2lkdGgtbWF4LWFydGljbGU7XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6ICR3aWR0aC1tYXgtYXJ0aWNsZSArIDQwcHgpIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuXG4gICAgJi5hbGlnbmZ1bGwge1xuICAgICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIGNhbGModmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCkgKiAyKSk7XG4gICAgfVxuICB9XG59XG4iLCIvLyBDb3JlL2Jsb2NrcXVvdGUgYmxvY2tcbmJsb2NrcXVvdGUgKyBjaXRlLFxuYmxvY2txdW90ZSArIHAgPiBjaXRlIHtcbiAgbWFyZ2luLWJvdHRvbTogNHJlbTtcbn1cblxuLy8gR2VuZXJhbCBibG9ja3F1b3RlIHN0eWxlc1xuYmxvY2txdW90ZSB7XG4gIGJvcmRlcjogMCBub25lO1xuICBjbGVhcjogYm90aDtcbiAgcGFkZGluZy1ib3R0b206IDNyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICBwIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItYmxvY2txdW90ZSk7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1zZW1pYm9sZCk7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cblxuICBAbWVkaWEgKG1pbi13aWR0aDogJGNvbnRhaW5lci1pcGFkKSB7XG4gICAgbWFyZ2luLXRvcDogNHJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogNHJlbTtcbiAgfVxufVxuXG4ud3AtYmxvY2stcXVvdGUge1xuICBib3JkZXItbGVmdDogMnB4IHNvbGlkIHZhcigtLWNvbG9yLWJsb2NrcXVvdGUpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtcGFyYWdyYXBoKTtcbiAgbWFyZ2luLWJvdHRvbTogNHJlbTtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLXRvcDogNHJlbTtcbiAgcGFkZGluZzogMy41cmVtIDZyZW07XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAxMnJlbSk7XG5cbiAgPiBwIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItYmxvY2txdW90ZSk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXBhcmFncmFwaCk7XG4gIH1cblxuICBAbWVkaWEgKG1heC13aWR0aDogJHdpZHRoLW1heC1hcnRpY2xlICsgNDBweCkge1xuICAgIHBhZGRpbmc6IDMuNXJlbSAycmVtO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSBjYWxjKHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpICogMikpO1xuICB9XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRjb250YWluZXItbW9iaWxlKSB7XG4gICAgcGFkZGluZzogNHJlbSA0cmVtIDRyZW0gMnJlbTtcbiAgfVxufVxuXG4ud3AtYmxvY2stYmxvY2txdW90ZS5hbGlnbndpZGUsXG4ud3AtYmxvY2stYmxvY2txdW90ZS5hbGlnbmZ1bGwge1xuICBwYWRkaW5nLWxlZnQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIGNhbGModmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCkgKiAyKSk7XG59XG5cbi53cC1ibG9jay1ibG9ja3F1b3RlIGJsb2NrcXVvdGUge1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbn1cbiIsIi53cC1ibG9jay1idXR0b25fX2xpbmsge1xuICBAaW5jbHVkZSBidXR0b24oKTtcbn1cbiIsIi8vIENvZGUgYmxvY2tcbi53cC1ibG9jay1jb2RlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmFja2dyb3VuZC1jb2RlLWJsb2NrKTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItYmFja2dyb3VuZC1jb2RlLWJsb2NrKTtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBjb2xvcjogdmFyKC0tY29sb3ItY29kZS10ZXh0KTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LW1vbm9zcGFjZSk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTE2KTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXBhcmFncmFwaCk7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLW1hcmdpbi1iZXR3ZWVuLXRleHQtZWxlbWVudHMpO1xuICBtYXJnaW4tdG9wOiB2YXIoLS1tYXJnaW4tYmV0d2Vlbi10ZXh0LWVsZW1lbnRzKTtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIHBhZGRpbmc6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdoaXRlLXNwYWNlOiBwcmU7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcblxuICA+IGNvZGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWNvZGUtdGV4dCk7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkd2lkdGgtZ3JpZC1iYXNlICsgNDBweCkge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSBjYWxjKHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpICogNCkpO1xuICB9XG59XG4iLCIvLyBDb3JlL2NvbHVtbnMgYmxvY2tcbi8vIExvb3BzIHRvIGVudW1lcmF0ZSB0aGUgY2xhc3NlcyBmb3IgY29sdW1ucy5cbkBmb3IgJGkgZnJvbSAxIHRocm91Z2ggOSB7XG4gIC53cC1ibG9jay1jb2x1bW5zLmhhcy0jeyRpfS1jb2x1bW5zLmFsaWduZnVsbCB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC53cC1ibG9jay1jb2x1bW5zLmhhcy0jeyRpfS1jb2x1bW5zIHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogOTAwcHgpIHtcbiAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICBncmlkLWdhcDogMWVtO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoJGksIDFmcik7XG4gICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgLndwLWJsb2NrLWNvbHVtbiB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRjb250YWluZXItbW9iaWxlKSB7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgxLCAxZnIpO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gQ29yZS9jb3ZlciBibG9ja1xuLndwLWJsb2NrLWNvdmVyX19pbm5lci1jb250YWluZXIge1xuICBwYWRkaW5nLWxlZnQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcblxuICBwIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1jb3JlLWhlYWRpbmcpO1xuICB9XG59XG4iLCIvLyBDb3JlL2VtYmVkIGJsb2NrXG4ud3AtYmxvY2stZW1iZWQgaWZyYW1lLFxuLndwLWJsb2NrLWVtYmVkIHZpZGVvIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6ICR3aWR0aC1ncmlkLWJhc2UgKyA0MHB4KSB7XG4gIC53cC1ibG9jay1lbWJlZC5hbGlnbndpZGUsXG4gIC53cC1ibG9jay1lbWJlZC5hbGlnbmZ1bGwge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSBjYWxjKHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpICogMikpO1xuICB9XG59XG5cbi53cC1ibG9jay1lbWJlZC5hbGlnbmZ1bGwge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgd2lkdGg6IDEwMCU7XG59XG4iLCIvLyBDb3JlL3NlcGFyYXRvciBibG9ja1xuaHIsXG4ud3AtYmxvY2stc2VwYXJhdG9yIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgcmdiKDAgMCAwIC8gMCkgNTAlLCByZ2IoMCAwIDAgLyAuMykgNTAlKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCA1MCU7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgYmFja2dyb3VuZC1zaXplOiAycHggMnB4O1xuICBib3JkZXI6IDA7XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luLWJvdHRvbTogY2FsYyh2YXIoLS1tYXJnaW4tYmV0d2Vlbi1wYXJhZ3JhcGhzKSAqIDIpO1xuICBtYXJnaW4tdG9wOiBjYWxjKHZhcigtLW1hcmdpbi1iZXR3ZWVuLXBhcmFncmFwaHMpICogMik7XG4gIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICBwYWRkaW5nLXRvcDogMXJlbTtcbn1cblxuLndwLWJsb2NrLXNlcGFyYXRvci5pcy1zdHlsZS1kZWZhdWx0IHtcbiAgbWF4LXdpZHRoOiAkd2lkdGgtbWF4LWFydGljbGU7XG59XG5cbi53cC1ibG9jay1zZXBhcmF0b3I6bm90KC5pcy1zdHlsZS13aWRlKTpub3QoLmlzLXN0eWxlLWRvdHMpIHtcbiAgbWFyZ2luLWJvdHRvbTogY2FsYyh2YXIoLS1tYXJnaW4tYmV0d2Vlbi1wYXJhZ3JhcGhzKSAqIDIpO1xuICBtYXJnaW4tdG9wOiBjYWxjKHZhcigtLW1hcmdpbi1iZXR3ZWVuLXBhcmFncmFwaHMpICogMik7XG4gIG9wYWNpdHk6IC40O1xuICB3aWR0aDogMTAwcHg7XG59XG4iLCIvLyBDb3JlL2hlYWRpbmcgYmxvY2tcblxuLy8gVGl0bGUgbGluZS1oZWlnaHRzXG5oMSxcbmgyLFxuaDMsXG5oNCxcbmg1IHtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWNvcmUtaGVhZGluZyk7XG59XG5cbi8vIERvbid0IGFkZCBleHRyYSBtYXJnaW4gb24gdG9wIG9mIGZpcnN0IHRpdGxlXG5oMSxcbmgyLFxuaDMsXG5oNCxcbmg1LFxuaDYge1xuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG59XG4iLCIvLyBJbWFnZSBibG9ja1xuLndwLWJsb2NrLWltYWdlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLW1hcmdpbi13cC1ibG9jay1pbWFnZSk7XG4gIG1hcmdpbi10b3A6IHZhcigtLW1hcmdpbi13cC1ibG9jay1pbWFnZSk7XG5cbiAgJi5hbGlnbndpZGUsXG4gICYuYWxpZ25mdWxsIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgfVxuXG4gIC5hbGlnbndpZGUgaW1nLFxuICAuYWxpZ25mdWxsIGltZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAvLyBObyBib3JkZXIgcmFkaXVzIG9uIGZ1bGwgd2lkdGggaW1hZ2UgYW5kIHdpZGUgb24gc21hbGwgc2NyZWVuc1xuICAuYWxpZ25mdWxsIGltZyB7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgfVxuXG4gID4gZmlndXJlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogYXV0bztcblxuICAgICYuYWxpZ25sZWZ0LFxuICAgICYuYWxpZ25yaWdodCB7XG4gICAgICAvLyBIYWNrIGZvciBrZWVwaW5nIGZpZ2NhcHRpb24gZnJvbSBmbG93aW5nIG92ZXIgZmxvYXRlZCBpbWFnZVxuICAgICAgLy8gVGhpcyB2YXJpYWJsZSBpcyBzZXQgaW5saW5lIHRvIHRoZSBjb3JyZXNwb25kaW5nIGZpZ3VyZSB3aXRoIGd1dGVuYmVyZy1oZWxwZXJzLmpzXG4gICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgY3NzdG9vbHMvdmFsdWUtbm8tdW5rbm93bi1jdXN0b20tcHJvcGVydGllc1xuICAgICAgbWF4LXdpZHRoOiB2YXIoLS13aWR0aC1jaGlsZC1pbWcpO1xuICAgIH1cbiAgfVxuXG4gIGZpZ2NhcHRpb24ge1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gIH1cblxuICAuYWxpZ25jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuXG4gIC5hbGlnbmNlbnRlciBpbWcge1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgfVxuXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkd2lkdGgtZ3JpZC1iYXNlICsgNDBweCkge1xuICAgICYuYWxpZ253aWRlIHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSBjYWxjKHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpICogMikpO1xuICAgIH1cbiAgfVxuXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkY29udGFpbmVyLW1vYmlsZSkge1xuICAgICYuYWxpZ25sZWZ0IGltZyxcbiAgICAmLmFsaWducmlnaHQgaW1nLFxuICAgICYuYWxpZ25jZW50ZXIgaW1nIHtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBuby1kZXNjZW5kaW5nLXNwZWNpZmljaXR5XG4vLyBEZWZhdWx0IGxpc3QgYmxvY2tcbnVsLFxub2wge1xuICBsaXN0LXN0eWxlLXBvc2l0aW9uOiBvdXRzaWRlO1xuICB3aWR0aDogY2FsYygoMTAwJSAtIGNhbGModmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCkgKiAyKSkpO1xufVxuXG51bCB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogJ1xcMjAyMiAgJztcbiAgcGFkZGluZy1pbmxpbmUtc3RhcnQ6IDFlbTtcbn1cblxub2wge1xuICBwYWRkaW5nLWlubGluZS1zdGFydDogMS4yNWVtO1xufVxuXG4vLyBDb2xvcml6ZWQgbWFya2Vyc1xubGk6Om1hcmtlciB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1saW5rLXRleHQpO1xuICBmb250LXNpemU6IGluaGVyaXQ7XG59XG4iLCIvLyBDb3JlL3BhcmFncmFwaCBibG9ja1xuLmhhcy1sYXJnZXItZm9udC1zaXplLFxuLmhhcy1sYXJnZS1mb250LXNpemUge1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtaGVhZGluZ3MpO1xufVxuXG4uaGFzLWxhcmdlLWZvbnQtc2l6ZSB7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkY29udGFpbmVyLW1vYmlsZSkge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTE4KTtcbiAgfVxufVxuXG4uaGFzLWxhcmdlci1mb250LXNpemUge1xuICBAbWVkaWEgKG1heC13aWR0aDogJGNvbnRhaW5lci1tb2JpbGUpIHtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0yMik7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6ICR3aWR0aC1ncmlkLWJhc2UgKyA0MHB4KSB7XG4gIC5oYXMtYmFja2dyb3VuZCB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIGNhbGModmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCkgKiAyKSk7XG4gIH1cbn1cbiIsIi8vIFByZWZvcm1hdHRlZCB0ZXh0XG4ud3AtYmxvY2stcHJlZm9ybWF0dGVkIHtcbiAgQG1lZGlhIChtYXgtd2lkdGg6ICR3aWR0aC1ncmlkLWJhc2UgKyA0MHB4KSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIGNhbGModmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCkgKiA0KSk7XG4gIH1cbn1cbiIsIi8vIENvcmUvcHVsbHF1b3RlIGJsb2NrXG4ud3AtYmxvY2stcHVsbHF1b3RlIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1ibG9ja3F1b3RlKTtcbiAgYm9yZGVyLXdpZHRoOiAzcHg7XG4gIGRpc3BsYXk6IGdyaWQ7XG5cbiAgW2FyaWEtbGFiZWw9XCJQdWxscXVvdGUgY2l0YXRpb24gdGV4dFwiXSxcbiAgY2l0ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLXRvcDogM3JlbTtcbiAgfVxuXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkd2lkdGgtZ3JpZC1iYXNlICsgNDBweCkge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSBjYWxjKHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpICogMikpO1xuICB9XG59XG5cbi53cC1ibG9jay1wdWxscXVvdGUuYWxpZ253aWRlLFxuLndwLWJsb2NrLXB1bGxxdW90ZS5hbGlnbmZ1bGwge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG5cbiAgYmxvY2txdW90ZSB7XG4gICAganVzdGlmeS1zZWxmOiBjZW50ZXI7XG4gIH1cblxuICBAbWVkaWEgKG1heC13aWR0aDogJHdpZHRoLWdyaWQtYmFzZSArIDQwcHgpIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgfVxufVxuXG4ud3AtYmxvY2stcHVsbHF1b3RlLmFsaWduZnVsbCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIGNhbGModmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCkgKiAyKSk7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBuby1kZXNjZW5kaW5nLXNwZWNpZmljaXR5XG4vLyBDb3JlL3RhYmxlIGJsb2NrXG4vLyBUYWJsZSBoZWFkaW5nIGNlbGxzXG50aCB7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itc2NvcnBpb24pO1xuICBjb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbnRkIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTtcbn1cblxudGQsXG50aCxcbi53cC1ibG9jay10YWJsZSB0ZCxcbi53cC1ibG9jay10YWJsZSB0aCB7XG4gIGJvcmRlcjogMDtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtcGFyYWdyYXBoKTtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtMTQpO1xuICBoZWlnaHQ6IDJyZW07XG4gIHBhZGRpbmc6IC42cmVtIDEuNXJlbTtcbn1cblxudHI6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmFja2dyb3VuZC10YWJsZS1jZWxsLWV2ZW4pO1xufVxuXG50cjpudGgtY2hpbGQob2RkKSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJhY2tncm91bmQtdGFibGUtY2VsbC1vZGQpO1xufVxuXG50aGVhZCxcbi53cC1ibG9jay10YWJsZSB0aGVhZCB7XG4gIGJvcmRlcjogMDtcblxuICB0aDpmaXJzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogOHB4O1xuICB9XG5cbiAgdGg6bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDhweDtcbiAgfVxufVxuXG4vLyBEZWZhdWx0c1xudGFibGUge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICBib3JkZXItc3BhY2luZzogMDtcbn1cblxuLndwLWJsb2NrLXRhYmxlIHtcbiAgQG1lZGlhIChtYXgtd2lkdGg6ICR3aWR0aC1ncmlkLWJhc2UgKyA0MHB4KSB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIGNhbGModmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCkgKiAyKSk7XG4gIH1cbn1cblxuLndwLWJsb2NrLXRhYmxlLmFsaWduZnVsbCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIGNhbGModmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCkgKiAyKSk7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAkd2lkdGgtZ3JpZC1iYXNlICsgNDBweCkge1xuICAud3AtYmxvY2stdGFibGUuYWxpZ253aWRlIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gY2FsYyh2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKSAqIDIpKTtcbiAgfVxufVxuIiwiLy8gQ29yZS92ZXJzZSBibG9ja1xuLndwLWJsb2NrLXZlcnNlIHtcbiAgQG1lZGlhIChtYXgtd2lkdGg6ICR3aWR0aC1ncmlkLWJhc2UgKyA0MHB4KSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIGNhbGModmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCkgKiA0KSk7XG4gIH1cbn1cbiIsIi8vIENvcmUvdmlkZW8gYmxvY2tcbi53cC1ibG9jay12aWRlbyB2aWRlbyB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAkd2lkdGgtZ3JpZC1iYXNlICsgNDBweCkge1xuICAud3AtYmxvY2stdmlkZW8uYWxpZ253aWRlIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gY2FsYyh2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKSAqIDIpKTtcbiAgfVxufVxuXG4ud3AtYmxvY2stdmlkZW8uYWxpZ253aWRlIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xufVxuXG4ud3AtYmxvY2stdmlkZW8uYWxpZ25mdWxsIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xufVxuIiwiLy8gQm94ZWQgYmxvY2sgc3R5bGVcbi53cC1ibG9jay5pcy1zdHlsZS1ib3hlZCxcbi5pcy1zdHlsZS1ib3hlZCB7XG4gIGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLWNvbG9yLXBhcmFncmFwaCk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1wYXJhZ3JhcGgpO1xuICBmb250LXNpemU6IDE3cHg7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW1lZGl1bSk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1wYXJhZ3JhcGgpO1xuICBwYWRkaW5nOiAycmVtO1xuICB3aWR0aDogY2FsYygxMDAlIC0gNHJlbSk7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAkd2lkdGgtbWF4LWFydGljbGUgKyA0MHB4KSB7XG4gIC5pcy1zdHlsZS1ib3hlZCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMnJlbSwgMCk7XG4gIH1cbn1cbiIsIi53cC1ibG9jay1maWxlIC53cC1ibG9jay1maWxlX19idXR0b24ge1xuICBAaW5jbHVkZSBidXR0b24tc2l6ZS1zbWFsbCgpO1xuICBmb250LXNpemU6IC44ZW07XG4gIHBhZGRpbmc6IC4zZW0gLjhlbTtcbn1cbiIsIi5ibG9jay1lcnJvciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWVycm9yLWJsb2NrLWJhY2tncm91bmQpO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1lcnJvci1ibG9jay1ib3JkZXIpO1xuICBib3JkZXItbGVmdDogMTBweCBzb2xpZCB2YXIoLS1jb2xvci1lcnJvcik7XG5cbiAgLmNvbnRhaW5lciB7XG4gICAgcGFkZGluZy1ib3R0b206IDJyZW07XG4gICAgcGFkZGluZy10b3A6IDJyZW07XG4gIH1cblxuICBwIHtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0xNCk7XG4gIH1cblxuICBwLmVycm9yLW1lc3NhZ2Uge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTE2KTtcbiAgfVxuXG4gIGgyIHtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oNCk7XG4gIH1cbn1cbiIsIi8vIEFsaWdubWVudHNcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIsXG4uYXJ0aWNsZS1jb250ZW50IHtcbiAgLmFsaWdubGVmdCA+ICoge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG5cbiAgLmFsaWducmlnaHQgPiAqIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cblxuICAuYWxpZ25sZWZ0ID4gaW1nIHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1tYXJnaW4tYmV0d2Vlbi1wYXJhZ3JhcGhzKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICAgIG1hcmdpbi10b3A6IHZhcigtLW1hcmdpbi1iZXR3ZWVuLXBhcmFncmFwaHMpO1xuXG4gICAgKyBmaWdjYXB0aW9uIHtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgfVxuICB9XG5cbiAgLmFsaWducmlnaHQgPiBpbWcge1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLW1hcmdpbi1iZXR3ZWVuLXBhcmFncmFwaHMpO1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS1tYXJnaW4tYmV0d2Vlbi1wYXJhZ3JhcGhzKTtcblxuICAgICsgZmlnY2FwdGlvbiB7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cbiAgfVxuXG4gIC5hbGlnbndpZGUge1xuICAgIG1heC13aWR0aDogJHdpZHRoLXdpZGU7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkd2lkdGgtd2lkZSArIDQwcHgpIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgfVxuICB9XG5cbiAgLmFsaWduZnVsbCB7XG4gICAgbWF4LXdpZHRoOiAkd2lkdGgtZnVsbDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICB3aWR0aDogJHdpZHRoLWZ1bGw7XG5cbiAgICAmLndwLWJsb2NrLWltYWdlIGltZyB7XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIH1cblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkd2lkdGgtbWF4LWFydGljbGUgKyA0MHB4KSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1wYWRkaW5nLWJsb2NrKTtcbiAgICAgIG1hcmdpbi10b3A6IHZhcigtLXBhZGRpbmctYmxvY2spO1xuICAgICAgbWF4LXdpZHRoOiAkd2lkdGgtZnVsbDtcbiAgICAgIHdpZHRoOiAkd2lkdGgtZnVsbDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIENhcHRpb25zXG4vLyBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1tYXgtY29tYmluYXRvcnMsIHNlbGVjdG9yLW1heC1jb21wb3VuZC1zZWxlY3RvcnNcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIsXG4uYXJ0aWNsZS1jb250ZW50IHtcbiAgZmlnY2FwdGlvbixcbiAgY2l0ZSxcbiAgc21hbGwge1xuICAgIGJvcmRlcjogMDtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItY2FwdGlvbik7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtY2FwdGlvbnMpO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBtYXJnaW4tYm90dG9tOiA2cmVtO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tdG9wOiAzcmVtO1xuICAgIG1heC13aWR0aDogJHdpZHRoLW1heC1hcnRpY2xlO1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkY29udGFpbmVyLW1vYmlsZSkge1xuICAgICAgbWFyZ2luLXRvcDogMnJlbTtcbiAgICB9XG4gIH1cblxuICAud3AtYmxvY2staW1hZ2UgZmlnY2FwdGlvbixcbiAgLndwLWJsb2NrLWltYWdlIC5hbGlnbnJpZ2h0ID4gZmlnY2FwdGlvbixcbiAgLndwLWJsb2NrLWltYWdlIC5hbGlnbmNlbnRlciA+IGZpZ2NhcHRpb24sXG4gIC53cC1ibG9jay1pbWFnZS5pcy1yZXNpemVkID4gZmlnY2FwdGlvbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICBjaXRlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG4iLCIvLyBJbWFnZSBmb3JtYXR0aW5nIG9wdGlvbnNcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIsXG4uYXJ0aWNsZS1jb250ZW50IHtcbiAgaW1nIHtcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIH1cbn1cbiIsImtiZCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWtiZC1iYWNrZ3JvdW5kKTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3Ita2JkLWJvcmRlcik7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgYm94LXNoYWRvdzogMCAxcHggMCByZ2IoMjIgMjIgMjIgLyAuMiksIDAgMCAwIDJweCB2YXIoLS1jb2xvci13aGl0ZSkgaW5zZXQ7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1wYXJhZ3JhcGgpO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIHBhZGRpbmc6IDAgLjVyZW07XG4gIHRleHQtc2hhZG93OiAwIDFweCAwIHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbiIsIi8vIERlZmF1bHQgbGlua3MgZXZlcnl3aGVyZVxuYSB7XG4gIEBpbmNsdWRlIGxpbmsoKTtcbn1cblxuLy8gRGVmaW5lIGVsZW1lbnRzIHdoZXJlIHlvdSBkbyBub3Qgd2FudCB0byB1c2UgZGVmYXVsdCBsaW5rIHN0eWxlc1xuLmVudHJ5LWZvb3Rlcixcbi5zaXRlLWhlYWRlcixcbi5zaXRlLWZvb3RlciB7XG4gIGEge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxufVxuIiwiLy8gTGlua3Mgd2l0aGluIGNvbnRlbnQgbXVzdCBiZSB2aXN1YWxseSB1bmRlcmxpbmVkXG4vLyBAbGluayBodHRwczovL21ha2Uud29yZHByZXNzLm9yZy90aGVtZXMvaGFuZGJvb2svcmV2aWV3L2FjY2Vzc2liaWxpdHkvcmVxdWlyZWQvI2NvbnRlbnQtbGlua3NcbkBtaXhpbiBsaW5rKCkge1xuICBjb2xvcjogdmFyKC0tY29sb3ItbGluay10ZXh0KTtcbiAgLy8gQ3JlYXRlIHlvdXIgb3duIGRlZmF1bHQgY29udGVudCBsaW5rIHN0eWxlcyBoZXJlXG4gIC8vIGZvciBwYWdlcyBhbmQgYXJ0aWNsZXNcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIHRleHQtZGVjb3JhdGlvbi1jb2xvcjogdmFyKC0tY29sb3ItbGluay10ZXh0KTtcbiAgdGV4dC11bmRlcmxpbmUtb2Zmc2V0OiA2cHg7XG4gIHRyYW5zaXRpb246IGFsbCAkdHJhbnNpdGlvbi1kdXJhdGlvbjtcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItbGluay10ZXh0LWhvdmVyKTtcbiAgICB0ZXh0LWRlY29yYXRpb24tY29sb3I6IHZhcigtLWNvbG9yLWxpbmstdGV4dC1ob3Zlcik7XG4gIH1cbn1cbiIsIi8vIEdlbmVyYWwgcGFyYWdyYXBoc1xucCB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1wYXJhZ3JhcGgpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtcGFyYWdyYXBoKTtcbn1cbiJdfQ== */