/* Document * ========================================================================== */ /** * Add border box sizing in all browsers (opinionated). */ *, ::before, ::after { box-sizing: border-box; } /** * 1. Add text decoration inheritance in all browsers (opinionated). * 2. Add vertical alignment inheritance in all browsers (opinionated). */ ::before, ::after { 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. Use a 4-space tab width in all browsers (opinionated). * 4. Remove the grey highlight on links in iOS (opinionated). * 5. Prevent adjustments of font size after orientation changes in * IE on Windows Phone and in iOS. * 6. Breaks words to prevent overflow in all browsers (opinionated). */ html { cursor: default; /* 1 */ line-height: 1.5; /* 2 */ -moz-tab-size: 4; /* 3 */ tab-size: 4; /* 3 */ -webkit-tap-highlight-color: transparent; -ms-text-size-adjust: 100%; /* 5 */ -webkit-text-size-adjust: 100%; /* 5 */ word-break: break-word; /* 6 */ } /* Sections * ========================================================================== */ /** * Remove the margin in all browsers (opinionated). */ body { margin: 0; } /** * Correct the font size and margin on `h1` elements within `section` and * `article` contexts in Chrome, Edge, Firefox, and Safari. */ h1 { font-size: 2em; margin: 0.67em 0; } /* Grouping content * ========================================================================== */ /** * Remove the margin on nested lists in Chrome, Edge, IE, and Safari. */ dl dl, dl ol, dl ul, ol dl, ul dl { margin: 0; } /** * Remove the margin on nested lists in Edge 18- and IE. */ ol ol, ol ul, ul ol, ul ul { margin: 0; } /** * 1. Correct the inheritance of border color in Firefox. * 2. Add the correct box sizing in Firefox. * 3. Show the overflow in Edge 18- and IE. */ hr { color: inherit; /* 1 */ height: 0; /* 2 */ overflow: visible; /* 3 */ } /** * Add the correct display in IE. */ main { display: block; } /** * Remove the list style on navigation lists in all browsers (opinionated). */ nav ol, nav ul { list-style: none; padding: 0; } /** * Prevent VoiceOver from ignoring list semantics in Safari (opinionated). */ nav li::before { content: "\200B"; } /** * 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). */ pre { font-family: monospace, monospace; /* 1 */ font-size: 1em; /* 2 */ overflow: auto; /* 3 */ -ms-overflow-style: scrollbar; /* 3 */ } /* Text-level semantics * ========================================================================== */ /** * Remove the gray background on active links in IE 10. */ a { background-color: transparent; } /** * Add the correct text decoration in Edge 18-, IE, and Safari. */ abbr[title] { text-decoration: underline; -webkit-text-decoration: underline dotted; text-decoration: underline dotted; } /** * Add the correct font weight in Chrome, Edge, and Safari. */ b, strong { font-weight: bolder; } /** * 1. Correct the inheritance and scaling of font size in all browsers. * 2. Correct the odd `em` font sizing in all browsers. */ code, kbd, samp { font-family: monospace, monospace; /* 1 */ font-size: 1em; /* 2 */ } /** * Add the correct font size in all browsers. */ small { font-size: 80%; } /* Embedded content * ========================================================================== */ /* * Change the alignment on media elements in all browsers (opinionated). */ audio, canvas, iframe, img, svg, video { vertical-align: middle; } /** * Add the correct display in IE 9-. */ audio, video { display: inline-block; } /** * Add the correct display in iOS 4-7. */ audio:not([controls]) { display: none; height: 0; } /** * Remove the border on iframes in all browsers (opinionated). */ iframe { border-style: none; } /** * Remove the border on images within links in IE 10-. */ img { border-style: none; } /** * Change the fill color to match the text color in all browsers (opinionated). */ svg:not([fill]) { fill: currentColor; } /** * Hide the overflow in IE. */ svg:not(:root) { overflow: hidden; } /* Tabular data * ========================================================================== */ /** * 1. Collapse border spacing in all browsers (opinionated). * 2. Correct table border color inheritance in all Chrome, Edge, and Safari. * 3. Remove text indentation from table contents in Chrome, Edge, and Safari. */ table { border-collapse: collapse; /* 1 */ border-color: inherit; /* 2 */ text-indent: 0; /* 3 */ } /* Forms * ========================================================================== */ /** * Remove the margin on controls in Safari. */ button, input, select { margin: 0; } /** * 1. Show the overflow in IE. * 2. Remove the inheritance of text transform in Edge 18-, Firefox, and IE. */ button { overflow: visible; /* 1 */ text-transform: none; /* 2 */ } /** * Correct the inability to style buttons in iOS and Safari. */ button, [type="button"], [type="reset"], [type="submit"] { -webkit-appearance: button; } /** * 1. Change the inconsistent appearance in all browsers (opinionated). * 2. Correct the padding in Firefox. */ fieldset { border: 1px solid #a0a0a0; /* 1 */ padding: 0.35em 0.75em 0.625em; /* 2 */ } /** * Show the overflow in Edge 18- and IE. */ input { overflow: visible; } /** * 1. Correct the text wrapping in Edge 18- and IE. * 2. Correct the color inheritance from `fieldset` elements in IE. */ legend { color: inherit; /* 2 */ display: table; /* 1 */ max-width: 100%; /* 1 */ white-space: normal; /* 1 */ } /** * 1. Add the correct display in Edge 18- and IE. * 2. Add the correct vertical alignment in Chrome, Edge, and Firefox. */ progress { display: inline-block; /* 1 */ vertical-align: baseline; /* 2 */ } /** * Remove the inheritance of text transform in Firefox. */ select { text-transform: none; } /** * 1. Remove the margin in Firefox and Safari. * 2. Remove the default vertical scrollbar in IE. * 3. Change the resize direction in all browsers (opinionated). */ textarea { margin: 0; /* 1 */ overflow: auto; /* 2 */ resize: vertical; /* 3 */ resize: block; /* 3 */ } /** * Remove the padding in IE 10-. */ [type="checkbox"], [type="radio"] { padding: 0; } /** * 1. Correct the odd appearance in Chrome, Edge, and Safari. * 2. Correct the outline style in Safari. */ [type="search"] { -webkit-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. */ ::-webkit-input-placeholder { color: inherit; opacity: 0.54; } /** * Remove the inner padding in Chrome, Edge, and Safari on macOS. */ ::-webkit-search-decoration { -webkit-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; /* 1 */ font: inherit; /* 2 */ } /** * Remove the inner border and padding of focus outlines in Firefox. */ ::-moz-focus-inner { border-style: none; padding: 0; } /** * Restore the focus outline styles unset by the previous rule in Firefox. */ :-moz-focusring { outline: 1px dotted ButtonText; } /** * Remove the additional :invalid styles in Firefox. */ :-moz-ui-invalid { box-shadow: none; } /* Interactive * ========================================================================== */ /* * Add the correct display in Edge 18- and IE. */ details { display: block; } /* * Add the correct styles in Edge 18-, IE, and Safari. */ dialog { background-color: white; border: solid; color: black; display: block; height: -moz-fit-content; height: -webkit-fit-content; height: fit-content; left: 0; margin: auto; padding: 1em; position: absolute; right: 0; width: -moz-fit-content; width: -webkit-fit-content; width: fit-content; } dialog:not([open]) { display: none; } /* * Add the correct display in all browsers. */ summary { display: list-item; } /* Scripting * ========================================================================== */ /** * Add the correct display in IE 9-. */ canvas { display: inline-block; } /** * Add the correct display in IE. */ template { display: none; } /* User interaction * ========================================================================== */ /* * Remove the tapping delay in IE 10. */ a, area, button, input, label, select, summary, textarea, [tabindex] { -ms-touch-action: manipulation; } /** * Add the correct display in IE 10-. */ [hidden] { display: none; } /* Accessibility * ========================================================================== */ /** * Change the cursor on busy elements in all browsers (opinionated). */ [aria-busy="true"] { cursor: progress; } /* * Change the cursor on control elements in all browsers (opinionated). */ [aria-controls] { cursor: pointer; } /* * Change the cursor on disabled, not-editable, or otherwise * inoperable elements in all browsers (opinionated). */ [aria-disabled="true"], [disabled] { cursor: not-allowed; } /* * Change the display on visually hidden accessible elements * in all browsers (opinionated). */ [aria-hidden="false"][hidden] { display: initial; } [aria-hidden="false"][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) { *, ::before, ::after { -webkit-animation-delay: -1ms !important; animation-delay: -1ms !important; /* 1 */ -webkit-animation-duration: 1ms !important; animation-duration: 1ms !important; /* 1 */ -webkit-animation-iteration-count: 1 !important; 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 */ } } /** * Convert hex color to RGB color format */ /* stylelint-disable declaration-property-unit-allowed-list */ /* stylelint-enable declaration-property-unit-allowed-list */ :root { --color-black: #222; --color-black-rock: #2b303c; --color-blue-chalk: #ece6f2; --color-east-bay: #545773; --color-pattens-blue: #eaf1f8; --color-science-blue: #0049d1; --color-scropion: #5f5f5f; --color-valhalla: #2a2d3e; --color-white: #fff; --color-heading: var(--color-main); --color-main: var(--color-valhalla); --color-paragraph: var(--color-east-bay); --color-link-border-bottom: var(--color-science-blue); --color-link-border-focus: var(--color-black); --color-link-comment: var(--color-scropion); --color-link-comment-time-anchor: var(--color-east-bay); --color-link-edit-background-hover: var(--color-pattens-blue); --color-link-edit-border: var(--color-pattens-blue); --color-link-edit-text: darken(#eaf1f8, 20%); --color-link-edit-text-hover: var(--color-east-bay); --color-link-text: var(--color-science-blue); --color-link-text-focus: var(--color-black); --color-link-text-hover: var(--color-white); --color-link-background-hover: var(--color-link-text); --color-background-code-block: var(--color-black-rock); --color-background-code-inline: #f9f2f4; --color-background-default: #f0f0f0; --color-background-shade: #03061b; --color-background-table-cell-odd: var(--color-white); --color-background-table-cell-even: #f3f3f3; --color-background-tag: var(--color-pattens-blue); --color-blockquote: var(--color-science-blue); --color-comment-text: var(--color-east-bay); --color-comment-author-text: var(--color-east-bay); --color-tag-border: rgba(6, 22, 41, .1); --color-tag-border-hover: rgba(6, 22, 41, .4); --color-tag-text: var(--color-black); --color-category-border: #cdcfd4; --color-category-text: var(--color-black); --color-caption: #5c5c6a; --color-code-block: #c7254e; --color-code-text: #f5f5f5; --color-error: #e1b3b2; --color-kbd-border: #ccc; --color-kbd-background: var(--color-pattens-blue); --color-outline-overlay-items: #ff848a; --color-pagination-text: var(--color-valhalla); --color-pagination-background-hover: var(--color-valhalla); --color-pagination-border-hover: var(--color-valhalla); --color-pagination-text-hover: var(--color-white); --color-pagination-background-current: var(--color-valhalla); --color-pagination-border-current: var(--color-valhalla); --color-pagination-text-current: var(--color-white); --color-success: #8ed185; --color-top-arrow-dark: var(--color-black); --color-top-arrow-light: var(--color-white); --color-warning: #f4aa71; --color-error-block-border: #adb2ad; --color-error-block-background: #f9f9f9; } @font-face { font-display: auto; font-family: "Inter"; font-style: normal; font-weight: 400; src: url("../../fonts/Inter-Regular.woff") format("woff"), url("../../fonts/Inter-Regular.woff2") format("woff2"), url("../../fonts/Inter-Regular.ttf") format("truetype"); } @font-face { font-display: auto; font-family: "Inter"; font-style: italic; font-weight: 400; src: url("../../fonts/Inter-Italic.woff") format("woff"), url("../../fonts/Inter-Italic.woff2") format("woff2"), url("../../fonts/Inter-Italic.ttf") format("truetype"); } @font-face { font-display: auto; font-family: "Inter"; font-style: normal; font-weight: 700; src: url("../../fonts/Inter-Bold.woff") format("woff"), url("../../fonts/Inter-Bold.woff2") format("woff2"), url("../../fonts/Inter-Bold.ttf") format("truetype"); } :root { --font-serif: sans-serif; --font-sans: 'Inter', -apple-system, 'BlinkMacSystemFont', 'Segoe UI', 'Roboto', 'Oxygen-Sans', 'Ubuntu', 'Cantarell', 'Helvetica Neue', sans-serif; --font-monospace: 'Inconsolata', 'Menlo', 'Monaco', 'Consolas', 'Andale Mono', 'Bitstream Vera Sans Mono', 'Courier New', monospace; --font-paragraph: var(--font-sans); --font-heading: var(--font-sans); } :root { --font-size-hero: 52px; --font-size-h1: 40px; --font-size-h2: 30px; --font-size-h3: 24px; --font-size-h4: 20px; --font-size-h5: 16px; --font-size-h6: 14px; --font-size-14: 14px; --font-size-15: 15px; --font-size-16: 16px; --font-size-17: 17px; --font-size-18: 18px; --font-size-20: 20px; --font-size-22: 22px; --font-size-default: var(--font-size-17); --font-size-paragraphs: var(--font-size-18); --font-size-nav-toggle-label: 15px; --font-size-captions: 15px; --line-height-headings: 1.5; --line-height-core-heading: 1.23; --line-height-paragraphs: 1.7; --line-height-paragraphs-blog: 1.77; --font-weight-regular: 400; --font-weight-medium: 500; --font-weight-semibold: 600; --font-weight-bold: 700; --font-weight-paragraphs: var(--font-weight-regular); --font-weight-headings: var(--font-weight-bold); } @media (max-width: 480px) { :root { --font-size-hero: 38px; --font-size-h1: 32px; --font-size-h2: 24px; --font-size-h3: 21px; --font-size-h4: 18px; --font-size-h5: 14px; --font-size-h6: 12px; } } @media (max-width: 420px) { :root { --font-size-16: 14px; } } @media (max-width: 480px) { :root { --font-size-paragraphs: 16px; --font-size-default: 16px; } } @media (max-width: 420px) { :root { --font-size-nav-toggle-label: 13px; } } :root { --color-background-input-field: var(--color-white); --color-border-forms: #d9d9d9; --color-border-forms-focus: rgba(42, 45, 62, .3); --color-button: var(--color-white); --color-button-hover: var(--color-white); --color-button-background: var(--color-east-bay); --color-button-background-hover: var(--color-valhalla); --color-checkbox: var(--color-east-bay); --color-checkbox-outline: 0 0 0 3px rgba(84, 87, 115, .2); --color-checkbox-border-hover: lighten(#545773, 15%); --color-placeholder: var(--color-paragraph); --color-placeholder-focus: var(--color-black); --opacity-placeholder: .4; --opacity-placeholder-focus: .8; --border-radius-checkbox: 4px; --border-radius-input-field: 4px; --border-radius-select: 0; --border-width-checkbox: 2px; --border-width-input-field: 2px; --gap-checkbox: 10px; --line-height-checkbox: var(--line-height-paragraphs); --size-checkbox-marker: 12px; --size-radio-button: 16px; --size-radio-button-marker: 8px; } :root { --padding-container-horizontal: 2rem; --padding-container-horizontal-large: 6.4rem; --padding-container-vertical: 6.4rem; --padding-site-header-vertical: 2rem; --padding-block: 8rem; --margin-between-text-elements: 4rem; --margin-wp-block-image: 4rem; --margin-between-paragraphs: 2.7rem; } @media (max-width: 1590px) { :root { --padding-container-horizontal: 2rem; } } @media (max-width: 960px) { :root { --padding-site-header-vertical: 2rem; } } @media (max-width: 770px) { :root { --padding-container-vertical: 5rem; } } @media (max-width: 600px) { :root { --padding-block: 6rem; } } @media (max-width: 480px) { :root { --padding-container-vertical: 4rem; } } /* stylelint-disable number-max-precision */ /* stylelint-disable number-max-precision */ /* stylelint-disable number-max-precision */ .heading-hero { font-size: var(--font-size-hero); } .screen-reader-text, .gform_body .gform_validation_container { border: 0; clip: rect(1px, 1px, 1px, 1px); -webkit-clip-path: inset(50%); clip-path: inset(50%); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; /* stylelint-disable declaration-no-important */ word-wrap: normal !important; /* stylelint-enable declaration-no-important */ } .screen-reader-text.skip-link, .gform_body .skip-link.gform_validation_container { margin: 5px; } .screen-reader-text.skip-link:focus, .gform_body .skip-link.gform_validation_container:focus { color: var(--color-black); } .screen-reader-text:focus, .gform_body .gform_validation_container:focus { background-color: var(--color-white); border-radius: 0; box-shadow: 0 0 2px 2px rgba(22, 22, 22, 0.6); clip: auto; -webkit-clip-path: none; clip-path: none; display: block; font-size: 1.7rem; font-weight: var(--font-weight-bold); height: auto; left: 5px; line-height: normal; padding: 15px 23px 14px; text-decoration: none; top: 5px; width: auto; z-index: 100000; } /* stylelint-disable a11y/no-outline-none */ [data-whatinput="mouse"] *:focus, [data-whatinput="touch"] *:focus { outline: none; } /* stylelint-enable a11y/no-outline-none */ [data-whatinput="keyboard"] a:focus, [data-whatinput="keyboard"] input:focus, [data-whatinput="keyboard"] button:focus, [data-whatinput="keyboard"] select:focus, [data-whatinput="keyboard"] textarea:focus, [data-whatinput="keyboard"] div[tabindex]:focus { opacity: 1; } [data-whatinput="keyboard"] .global-link { transition: none; } [data-whatinput="keyboard"] a.global-link:focus { outline-color: var(--color-outline-overlay-items); outline-offset: -1px; outline-style: solid; outline-width: 4px; } a.is-external-link { align-items: center; display: inline-flex; justify-content: space-between; } a.is-external-link::after { background-image: url("../../svg/external-link.svg"); background-position: right center; background-repeat: no-repeat; background-size: 14px 14px; content: ''; display: inline-flex; height: 14px; margin-left: 5px; margin-right: 2px; position: relative; right: 0; top: 0; transition: all .18s ease-in-out; width: 14px; } /* stylelint-disable a11y/no-display-none */ a.is-external-link.global-link::after, a.is-external-link.no-external-link-indicator::after { display: none; } /* stylelint-enable a11y/no-display-none */ @media (prefers-reduced-motion: no-preference) { :focus, *:focus, [data-whatinput="keyboard"] :focus, [data-whatinput="keyboard"] a:focus { outline-offset: 5px; transition: outline-offset .25s ease; } } :root { --border-radius-sub-menu: 0; --box-shadow-navigation-static: 0 0 10px rgba(84, 87, 115, .1); --dropdown-toggle-size: 12px; --gap-dropdown: 1rem; --gap-between-dropdown-toggle: 1.5rem; --padding-main-level-vertical: .6rem; --padding-main-level-horizontal: 2rem; --padding-sub-menu-vertical: .6rem; --padding-sub-menu-horizontal: 1.5rem; --width-sub-menu: 22rem; --color-background-nav-desktop: var(--color-white); --color-background-sub-menu: var(--color-white); --color-border-sub-menu: rgba(41, 44, 61, .05); --color-dropdown-toggle: var(--color-valhalla); --color-sub-menu: var(--color-valhalla); --color-hover-main-level: var(--color-white); --color-hover-sub-menu: var(--color-valhalla); --color-main-level: var(--color-white); --color-current: var(--color-main); --font-size-main-level: 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%; } } @media only screen and (min-width: 960px) and (max-width: 960px) { ul li:focus > ul, ul li:hover > ul { display: block; } } @media only screen and (min-width: 960px) and (-ms-high-contrast: active), only screen and (min-width: 960px) and (-ms-high-contrast: none) { ul li:focus > ul, ul li:hover > ul { display: block; } } @media only screen and (min-width: 960px) { /* stylelint-disable a11y/no-display-none */ .nav-toggle { display: none; } /* stylelint-enable */ .nav-primary { padding-bottom: 0; padding-top: 0; } .menu-items { align-items: center; background-color: transparent; display: flex; margin: 0; padding: 0; position: relative; } .menu-item { margin: 0; position: relative; } .menu-item > a { align-items: center; color: var(--color-main-level); display: inline-flex; font-size: var(--font-size-main-level); font-weight: var(--font-weight-main-level); padding-bottom: var(--padding-main-level-vertical); padding-left: var(--padding-main-level-horizontal); padding-right: var(--padding-main-level-horizontal); padding-top: var(--padding-main-level-vertical); } .menu-item .sub-menu a { align-items: center; color: var(--color-sub-menu); display: inline-flex; font-size: var(--font-size-sub-menu); font-weight: var(--font-weight-sub-menu); line-height: 1.5; padding-bottom: var(--padding-sub-menu-vertical); padding-left: var(--padding-sub-menu-horizontal); padding-right: var(--padding-sub-menu-horizontal); padding-top: var(--padding-sub-menu-vertical); } .menu-item.current-menu-parent > a, .menu-item.current-menu-item > a { color: var(--color-current); } .menu-item.menu-item-has-children a { padding-bottom: 0; padding-right: var(--gap-between-dropdown-toggle); padding-top: 0; transition: padding 0.2s cubic-bezier(0.19, 1, 0.22, 1), background-color 0.2s cubic-bezier(0.19, 1, 0.22, 1); } .menu-item > a:hover, .menu-item > a:focus { color: var(--color-hover-main-level); } .menu-item .sub-menu a:hover, .menu-item .sub-menu a:focus { color: var(--color-hover-sub-menu); } /* stylelint-disable no-descending-specificity */ .sub-menu.toggled-on a, .sub-menu.toggled-on .sub-menu a, .menu-item.menu-item-has-children:hover .sub-menu a, .menu-item.menu-item-has-children:focus .sub-menu a { padding-bottom: var(--padding-sub-menu-vertical); padding-top: var(--padding-sub-menu-vertical); } /* stylelint-enable */ .nav-primary > ul:first-of-type > .menu-item-has-children:focus::before, .nav-primary > ul:first-of-type > .menu-item-has-children:hover::before { transform: scale(1); transition: all 0.2s cubic-bezier(0.19, 1, 0.22, 1); } .sub-menu { background-color: var(--color-background-sub-menu); border-bottom: 1px solid var(--color-border-sub-menu); border-bottom-left-radius: var(--border-radius-sub-menu); border-bottom-right-radius: var(--border-radius-sub-menu); border-left: 1px solid var(--color-border-sub-menu); border-right: 1px solid var(--color-border-sub-menu); border-top-left-radius: var(--border-radius-sub-menu); border-top-right-radius: var(--border-radius-sub-menu); box-shadow: 0 25px 20px -10px rgba(5, 4, 25, 0.05); left: 5%; margin-left: 0; margin-top: var(--gap-dropdown); opacity: 0; padding-bottom: .5rem; padding-left: 0; padding-top: .5rem; position: absolute; top: -9999px; transition: padding 0.2s cubic-bezier(0.19, 1, 0.22, 1); visibility: hidden; width: var(--width-sub-menu); z-index: 9; } .sub-menu .sub-menu { left: 100%; margin-left: 0; margin-top: -5px; top: 0; } .sub-menu li { float: none; padding: 0; width: var(--width-sub-menu); } .menu-item-has-children > .sub-menu.toggled-on, .menu-item-has-children:focus > .sub-menu, .menu-item-has-children:hover > .sub-menu { opacity: 1; top: 100%; transform: translateY(0%); visibility: visible; z-index: 1; } .menu-item-has-children .sub-menu.toggled-on .sub-menu, .menu-item-has-children .sub-menu .sub-menu.toggled-on, .menu-item-has-children:focus .sub-menu .sub-menu, .menu-item-has-children:hover .sub-menu .sub-menu { margin-top: -5px; top: 0; z-index: 10; } .menu-item.menu-item-has-children { align-items: center; display: flex; justify-content: space-between; margin-right: .8rem; position: relative; } .menu-item.menu-item-has-children::after { content: ''; display: block; height: var(--gap-dropdown); position: absolute; top: 100%; width: 100%; } .dropdown-toggle svg { height: var(--dropdown-toggle-size); width: var(--dropdown-toggle-size); transition: all 0.35s cubic-bezier(0.19, 1, 0.22, 1); } .dropdown-toggle.toggled-on svg { transform: rotateX(180deg); } .dropdown-toggle { align-items: center; background-color: transparent; border: 0; color: var(--color-dropdown-toggle); display: inline-flex; justify-content: center; padding: 0; } .sub-menu .dropdown-toggle { width: 3rem; } .sub-menu .dropdown-toggle svg { transform: rotate(-90deg) rotateX(0deg); } .sub-menu .dropdown-toggle.toggled-on svg { transform: rotate(-90deg) rotateX(180deg); } .menu-item.menu-item-has-children > .dropdown-toggle.toggled-on svg, .menu-item.menu-item-has-children:hover > .dropdown-toggle svg, .menu-item.menu-item-has-children:focus > .dropdown-toggle svg { transform: translateY(0%) rotate(180deg); } /* stylelint-disable selector-max-specificity, selector-max-class */ .menu-item.menu-item-has-children .menu-item.menu-item-has-children > .dropdown-toggle.toggled-on svg, .menu-item.menu-item-has-children .menu-item.menu-item-has-children:hover > .dropdown-toggle svg, .menu-item.menu-item-has-children .menu-item.menu-item-has-children:focus > .dropdown-toggle svg { transform: translateY(0%) rotate(90deg); } /* stylelint-enable */ /* stylelint-disable a11y/no-display-none */ .sub-menu .menu-item-has-children::after { display: none; } /* stylelint-enable */ .menu-item-has-children::before { /* stylelint-disable sh-waqar/declaration-use-variable */ border-color: transparent transparent var(--color-white); border-style: solid; border-width: 0 5px 5px; /* stylelint-enable */ bottom: -10px; content: ''; display: block; height: 0; left: 50%; margin-left: -20px; position: absolute; transform: scale(0); transform-origin: center bottom; transition: none; width: 0; } } :root { --font-size-main-level-mobile: 17px; --font-size-sub-menu-mobile: 17px; --font-weight-main-level-mobile: 600; --font-weight-sub-menu-mobile: 600; --dropdown-toggle-size-mobile: 12px; --height-navigation-mobile: 72px; --margin-left-sub-menu: 2rem; --padding-sub-menu-vertical-mobile: 1.2rem; --padding-sub-menu-horizontal-mobile: 2.5rem; --color-active-main-level-mobile: var(--color-white); --color-background-nav-mobile-header: var(--color-main); --color-background-nav-mobile-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: rgba(255, 255, 255, .1); --color-sub-menu-mobile: rgba(255, 255, 255, .8); } /*! * Hamburgers * @description Tasty CSS-animated hamburgers * @author Jonathan Suh @jonsuh * @site https://jonsuh.com/hamburgers * @link https://github.com/jonsuh/hamburgers */ .hamburger { padding: 4rem 1.5rem; display: inline-block; cursor: pointer; transition-property: opacity, filter; transition-duration: 0.15s; transition-timing-function: linear; font: inherit; color: inherit; text-transform: none; background-color: transparent; border: 0; margin: 0; overflow: visible; } .hamburger:hover { opacity: 0.8; } .hamburger.is-active:hover { opacity: 0.8; } .hamburger.is-active .hamburger-inner, .hamburger.is-active .hamburger-inner::before, .hamburger.is-active .hamburger-inner::after { background-color: var(--color-hamburger); } .hamburger-box { width: 3rem; height: 1.6rem; display: inline-block; position: relative; } .hamburger-inner { display: block; top: 50%; margin-top: -0.1rem; } .hamburger-inner, .hamburger-inner::before, .hamburger-inner::after { width: 3rem; height: 0.2rem; background-color: var(--color-hamburger); border-radius: 0; position: absolute; transition-property: transform; transition-duration: 0.15s; transition-timing-function: ease; } .hamburger-inner::before, .hamburger-inner::after { content: ""; display: block; } .hamburger-inner::before { top: -0.7rem; } .hamburger-inner::after { bottom: -0.7rem; } /* * 3DX */ .hamburger--3dx .hamburger-box { perspective: 6rem; } .hamburger--3dx .hamburger-inner { transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); } .hamburger--3dx .hamburger-inner::before, .hamburger--3dx .hamburger-inner::after { transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); } .hamburger--3dx.is-active .hamburger-inner { background-color: transparent !important; transform: rotateY(180deg); } .hamburger--3dx.is-active .hamburger-inner::before { transform: translate3d(0, 0.7rem, 0) rotate(45deg); } .hamburger--3dx.is-active .hamburger-inner::after { transform: translate3d(0, -0.7rem, 0) rotate(-45deg); } /* * 3DX Reverse */ .hamburger--3dx-r .hamburger-box { perspective: 6rem; } .hamburger--3dx-r .hamburger-inner { transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); } .hamburger--3dx-r .hamburger-inner::before, .hamburger--3dx-r .hamburger-inner::after { transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); } .hamburger--3dx-r.is-active .hamburger-inner { background-color: transparent !important; transform: rotateY(-180deg); } .hamburger--3dx-r.is-active .hamburger-inner::before { transform: translate3d(0, 0.7rem, 0) rotate(45deg); } .hamburger--3dx-r.is-active .hamburger-inner::after { transform: translate3d(0, -0.7rem, 0) rotate(-45deg); } /* * 3DY */ .hamburger--3dy .hamburger-box { perspective: 6rem; } .hamburger--3dy .hamburger-inner { transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); } .hamburger--3dy .hamburger-inner::before, .hamburger--3dy .hamburger-inner::after { transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); } .hamburger--3dy.is-active .hamburger-inner { background-color: transparent !important; transform: rotateX(-180deg); } .hamburger--3dy.is-active .hamburger-inner::before { transform: translate3d(0, 0.7rem, 0) rotate(45deg); } .hamburger--3dy.is-active .hamburger-inner::after { transform: translate3d(0, -0.7rem, 0) rotate(-45deg); } /* * 3DY Reverse */ .hamburger--3dy-r .hamburger-box { perspective: 6rem; } .hamburger--3dy-r .hamburger-inner { transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); } .hamburger--3dy-r .hamburger-inner::before, .hamburger--3dy-r .hamburger-inner::after { transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); } .hamburger--3dy-r.is-active .hamburger-inner { background-color: transparent !important; transform: rotateX(180deg); } .hamburger--3dy-r.is-active .hamburger-inner::before { transform: translate3d(0, 0.7rem, 0) rotate(45deg); } .hamburger--3dy-r.is-active .hamburger-inner::after { transform: translate3d(0, -0.7rem, 0) rotate(-45deg); } /* * 3DXY */ .hamburger--3dxy .hamburger-box { perspective: 6rem; } .hamburger--3dxy .hamburger-inner { transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); } .hamburger--3dxy .hamburger-inner::before, .hamburger--3dxy .hamburger-inner::after { transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); } .hamburger--3dxy.is-active .hamburger-inner { background-color: transparent !important; transform: rotateX(180deg) rotateY(180deg); } .hamburger--3dxy.is-active .hamburger-inner::before { transform: translate3d(0, 0.7rem, 0) rotate(45deg); } .hamburger--3dxy.is-active .hamburger-inner::after { transform: translate3d(0, -0.7rem, 0) rotate(-45deg); } /* * 3DXY Reverse */ .hamburger--3dxy-r .hamburger-box { perspective: 6rem; } .hamburger--3dxy-r .hamburger-inner { transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); } .hamburger--3dxy-r .hamburger-inner::before, .hamburger--3dxy-r .hamburger-inner::after { transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); } .hamburger--3dxy-r.is-active .hamburger-inner { background-color: transparent !important; transform: rotateX(180deg) rotateY(180deg) rotateZ(-180deg); } .hamburger--3dxy-r.is-active .hamburger-inner::before { transform: translate3d(0, 0.7rem, 0) rotate(45deg); } .hamburger--3dxy-r.is-active .hamburger-inner::after { transform: translate3d(0, -0.7rem, 0) rotate(-45deg); } /* * Arrow */ .hamburger--arrow.is-active .hamburger-inner::before { transform: translate3d(-0.6rem, 0, 0) rotate(-45deg) scale(0.7, 1); } .hamburger--arrow.is-active .hamburger-inner::after { transform: translate3d(-0.6rem, 0, 0) rotate(45deg) scale(0.7, 1); } /* * Arrow Right */ .hamburger--arrow-r.is-active .hamburger-inner::before { transform: translate3d(0.6rem, 0, 0) rotate(45deg) scale(0.7, 1); } .hamburger--arrow-r.is-active .hamburger-inner::after { transform: translate3d(0.6rem, 0, 0) rotate(-45deg) scale(0.7, 1); } /* * Arrow Alt */ .hamburger--arrowalt .hamburger-inner::before { transition: top 0.1s 0.1s ease, transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1); } .hamburger--arrowalt .hamburger-inner::after { transition: bottom 0.1s 0.1s ease, transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1); } .hamburger--arrowalt.is-active .hamburger-inner::before { top: 0; transform: translate3d(-0.6rem, -0.75rem, 0) rotate(-45deg) scale(0.7, 1); transition: top 0.1s ease, transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22); } .hamburger--arrowalt.is-active .hamburger-inner::after { bottom: 0; transform: translate3d(-0.6rem, 0.75rem, 0) rotate(45deg) scale(0.7, 1); transition: bottom 0.1s ease, transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22); } /* * Arrow Alt Right */ .hamburger--arrowalt-r .hamburger-inner::before { transition: top 0.1s 0.1s ease, transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1); } .hamburger--arrowalt-r .hamburger-inner::after { transition: bottom 0.1s 0.1s ease, transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1); } .hamburger--arrowalt-r.is-active .hamburger-inner::before { top: 0; transform: translate3d(0.6rem, -0.75rem, 0) rotate(45deg) scale(0.7, 1); transition: top 0.1s ease, transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22); } .hamburger--arrowalt-r.is-active .hamburger-inner::after { bottom: 0; transform: translate3d(0.6rem, 0.75rem, 0) rotate(-45deg) scale(0.7, 1); transition: bottom 0.1s ease, transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22); } /* * Arrow Turn */ .hamburger--arrowturn.is-active .hamburger-inner { transform: rotate(-180deg); } .hamburger--arrowturn.is-active .hamburger-inner::before { transform: translate3d(8px, 0, 0) rotate(45deg) scale(0.7, 1); } .hamburger--arrowturn.is-active .hamburger-inner::after { transform: translate3d(8px, 0, 0) rotate(-45deg) scale(0.7, 1); } /* * Arrow Turn Right */ .hamburger--arrowturn-r.is-active .hamburger-inner { transform: rotate(-180deg); } .hamburger--arrowturn-r.is-active .hamburger-inner::before { transform: translate3d(-8px, 0, 0) rotate(-45deg) scale(0.7, 1); } .hamburger--arrowturn-r.is-active .hamburger-inner::after { transform: translate3d(-8px, 0, 0) rotate(45deg) scale(0.7, 1); } /* * Boring */ .hamburger--boring .hamburger-inner, .hamburger--boring .hamburger-inner::before, .hamburger--boring .hamburger-inner::after { transition-property: none; } .hamburger--boring.is-active .hamburger-inner { transform: rotate(45deg); } .hamburger--boring.is-active .hamburger-inner::before { top: 0; opacity: 0; } .hamburger--boring.is-active .hamburger-inner::after { bottom: 0; transform: rotate(-90deg); } /* * Collapse */ .hamburger--collapse .hamburger-inner, .hamburger .hamburger-inner { top: auto; bottom: 0; transition-duration: 0.13s; transition-delay: 0.13s; transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); } .hamburger--collapse .hamburger-inner::after, .hamburger .hamburger-inner::after { top: -1.4rem; transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), opacity 0.1s linear; } .hamburger--collapse .hamburger-inner::before, .hamburger .hamburger-inner::before { transition: top 0.12s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19); } .hamburger--collapse.is-active .hamburger-inner, .is-active.hamburger .hamburger-inner { transform: translate3d(0, -0.7rem, 0) rotate(-45deg); transition-delay: 0.22s; transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); } .hamburger--collapse.is-active .hamburger-inner::after, .is-active.hamburger .hamburger-inner::after { top: 0; opacity: 0; transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), opacity 0.1s 0.22s linear; } .hamburger--collapse.is-active .hamburger-inner::before, .is-active.hamburger .hamburger-inner::before { top: 0; transform: rotate(-90deg); transition: top 0.1s 0.16s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.25s cubic-bezier(0.215, 0.61, 0.355, 1); } /* * Collapse Reverse */ .hamburger--collapse-r .hamburger-inner { top: auto; bottom: 0; transition-duration: 0.13s; transition-delay: 0.13s; transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); } .hamburger--collapse-r .hamburger-inner::after { top: -1.4rem; transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), opacity 0.1s linear; } .hamburger--collapse-r .hamburger-inner::before { transition: top 0.12s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19); } .hamburger--collapse-r.is-active .hamburger-inner { transform: translate3d(0, -0.7rem, 0) rotate(45deg); transition-delay: 0.22s; transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); } .hamburger--collapse-r.is-active .hamburger-inner::after { top: 0; opacity: 0; transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), opacity 0.1s 0.22s linear; } .hamburger--collapse-r.is-active .hamburger-inner::before { top: 0; transform: rotate(90deg); transition: top 0.1s 0.16s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.25s cubic-bezier(0.215, 0.61, 0.355, 1); } /* * Elastic */ .hamburger--elastic .hamburger-inner { top: 0.1rem; transition-duration: 0.275s; transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55); } .hamburger--elastic .hamburger-inner::before { top: 0.7rem; transition: opacity 0.125s 0.275s ease; } .hamburger--elastic .hamburger-inner::after { top: 1.4rem; transition: transform 0.275s cubic-bezier(0.68, -0.55, 0.265, 1.55); } .hamburger--elastic.is-active .hamburger-inner { transform: translate3d(0, 0.7rem, 0) rotate(135deg); transition-delay: 0.075s; } .hamburger--elastic.is-active .hamburger-inner::before { transition-delay: 0s; opacity: 0; } .hamburger--elastic.is-active .hamburger-inner::after { transform: translate3d(0, -1.4rem, 0) rotate(-270deg); transition-delay: 0.075s; } /* * Elastic Reverse */ .hamburger--elastic-r .hamburger-inner { top: 0.1rem; transition-duration: 0.275s; transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55); } .hamburger--elastic-r .hamburger-inner::before { top: 0.7rem; transition: opacity 0.125s 0.275s ease; } .hamburger--elastic-r .hamburger-inner::after { top: 1.4rem; transition: transform 0.275s cubic-bezier(0.68, -0.55, 0.265, 1.55); } .hamburger--elastic-r.is-active .hamburger-inner { transform: translate3d(0, 0.7rem, 0) rotate(-135deg); transition-delay: 0.075s; } .hamburger--elastic-r.is-active .hamburger-inner::before { transition-delay: 0s; opacity: 0; } .hamburger--elastic-r.is-active .hamburger-inner::after { transform: translate3d(0, -1.4rem, 0) rotate(270deg); transition-delay: 0.075s; } /* * Emphatic */ .hamburger--emphatic { overflow: hidden; } .hamburger--emphatic .hamburger-inner { transition: background-color 0.125s 0.175s ease-in; } .hamburger--emphatic .hamburger-inner::before { left: 0; transition: transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335), top 0.05s 0.125s linear, left 0.125s 0.175s ease-in; } .hamburger--emphatic .hamburger-inner::after { top: 0.7rem; right: 0; transition: transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335), top 0.05s 0.125s linear, right 0.125s 0.175s ease-in; } .hamburger--emphatic.is-active .hamburger-inner { transition-delay: 0s; transition-timing-function: ease-out; background-color: transparent !important; } .hamburger--emphatic.is-active .hamburger-inner::before { left: -6rem; top: -6rem; transform: translate3d(6rem, 6rem, 0) rotate(45deg); transition: left 0.125s ease-out, top 0.05s 0.125s linear, transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1); } .hamburger--emphatic.is-active .hamburger-inner::after { right: -6rem; top: -6rem; transform: translate3d(-6rem, 6rem, 0) rotate(-45deg); transition: right 0.125s ease-out, top 0.05s 0.125s linear, transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1); } /* * Emphatic Reverse */ .hamburger--emphatic-r { overflow: hidden; } .hamburger--emphatic-r .hamburger-inner { transition: background-color 0.125s 0.175s ease-in; } .hamburger--emphatic-r .hamburger-inner::before { left: 0; transition: transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335), top 0.05s 0.125s linear, left 0.125s 0.175s ease-in; } .hamburger--emphatic-r .hamburger-inner::after { top: 0.7rem; right: 0; transition: transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335), top 0.05s 0.125s linear, right 0.125s 0.175s ease-in; } .hamburger--emphatic-r.is-active .hamburger-inner { transition-delay: 0s; transition-timing-function: ease-out; background-color: transparent !important; } .hamburger--emphatic-r.is-active .hamburger-inner::before { left: -6rem; top: 6rem; transform: translate3d(6rem, -6rem, 0) rotate(-45deg); transition: left 0.125s ease-out, top 0.05s 0.125s linear, transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1); } .hamburger--emphatic-r.is-active .hamburger-inner::after { right: -6rem; top: 6rem; transform: translate3d(-6rem, -6rem, 0) rotate(45deg); transition: right 0.125s ease-out, top 0.05s 0.125s linear, transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1); } /* * Minus */ .hamburger--minus .hamburger-inner::before, .hamburger--minus .hamburger-inner::after { transition: bottom 0.08s 0s ease-out, top 0.08s 0s ease-out, opacity 0s linear; } .hamburger--minus.is-active .hamburger-inner::before, .hamburger--minus.is-active .hamburger-inner::after { opacity: 0; transition: bottom 0.08s ease-out, top 0.08s ease-out, opacity 0s 0.08s linear; } .hamburger--minus.is-active .hamburger-inner::before { top: 0; } .hamburger--minus.is-active .hamburger-inner::after { bottom: 0; } /* * Slider */ .hamburger--slider .hamburger-inner { top: 0.1rem; } .hamburger--slider .hamburger-inner::before { top: 0.7rem; transition-property: transform, opacity; transition-timing-function: ease; transition-duration: 0.15s; } .hamburger--slider .hamburger-inner::after { top: 1.4rem; } .hamburger--slider.is-active .hamburger-inner { transform: translate3d(0, 0.7rem, 0) rotate(45deg); } .hamburger--slider.is-active .hamburger-inner::before { transform: rotate(-45deg) translate3d(-0.42857rem, -0.5rem, 0); opacity: 0; } .hamburger--slider.is-active .hamburger-inner::after { transform: translate3d(0, -1.4rem, 0) rotate(-90deg); } /* * Slider Reverse */ .hamburger--slider-r .hamburger-inner { top: 0.1rem; } .hamburger--slider-r .hamburger-inner::before { top: 0.7rem; transition-property: transform, opacity; transition-timing-function: ease; transition-duration: 0.15s; } .hamburger--slider-r .hamburger-inner::after { top: 1.4rem; } .hamburger--slider-r.is-active .hamburger-inner { transform: translate3d(0, 0.7rem, 0) rotate(-45deg); } .hamburger--slider-r.is-active .hamburger-inner::before { transform: rotate(45deg) translate3d(0.42857rem, -0.5rem, 0); opacity: 0; } .hamburger--slider-r.is-active .hamburger-inner::after { transform: translate3d(0, -1.4rem, 0) rotate(90deg); } /* * Spin */ .hamburger--spin .hamburger-inner { transition-duration: 0.22s; transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); } .hamburger--spin .hamburger-inner::before { transition: top 0.1s 0.25s ease-in, opacity 0.1s ease-in; } .hamburger--spin .hamburger-inner::after { transition: bottom 0.1s 0.25s ease-in, transform 0.22s cubic-bezier(0.55, 0.055, 0.675, 0.19); } .hamburger--spin.is-active .hamburger-inner { transform: rotate(225deg); transition-delay: 0.12s; transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); } .hamburger--spin.is-active .hamburger-inner::before { top: 0; opacity: 0; transition: top 0.1s ease-out, opacity 0.1s 0.12s ease-out; } .hamburger--spin.is-active .hamburger-inner::after { bottom: 0; transform: rotate(-90deg); transition: bottom 0.1s ease-out, transform 0.22s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1); } /* * Spin Reverse */ .hamburger--spin-r .hamburger-inner { transition-duration: 0.22s; transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); } .hamburger--spin-r .hamburger-inner::before { transition: top 0.1s 0.25s ease-in, opacity 0.1s ease-in; } .hamburger--spin-r .hamburger-inner::after { transition: bottom 0.1s 0.25s ease-in, transform 0.22s cubic-bezier(0.55, 0.055, 0.675, 0.19); } .hamburger--spin-r.is-active .hamburger-inner { transform: rotate(-225deg); transition-delay: 0.12s; transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); } .hamburger--spin-r.is-active .hamburger-inner::before { top: 0; opacity: 0; transition: top 0.1s ease-out, opacity 0.1s 0.12s ease-out; } .hamburger--spin-r.is-active .hamburger-inner::after { bottom: 0; transform: rotate(90deg); transition: bottom 0.1s ease-out, transform 0.22s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1); } /* * Spring */ .hamburger--spring .hamburger-inner { top: 0.1rem; transition: background-color 0s 0.13s linear; } .hamburger--spring .hamburger-inner::before { top: 0.7rem; transition: top 0.1s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19); } .hamburger--spring .hamburger-inner::after { top: 1.4rem; transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19); } .hamburger--spring.is-active .hamburger-inner { transition-delay: 0.22s; background-color: transparent !important; } .hamburger--spring.is-active .hamburger-inner::before { top: 0; transition: top 0.1s 0.15s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1); transform: translate3d(0, 0.7rem, 0) rotate(45deg); } .hamburger--spring.is-active .hamburger-inner::after { top: 0; transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1); transform: translate3d(0, 0.7rem, 0) rotate(-45deg); } /* * Spring Reverse */ .hamburger--spring-r .hamburger-inner { top: auto; bottom: 0; transition-duration: 0.13s; transition-delay: 0s; transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); } .hamburger--spring-r .hamburger-inner::after { top: -1.4rem; transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), opacity 0s linear; } .hamburger--spring-r .hamburger-inner::before { transition: top 0.1s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19); } .hamburger--spring-r.is-active .hamburger-inner { transform: translate3d(0, -0.7rem, 0) rotate(-45deg); transition-delay: 0.22s; transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); } .hamburger--spring-r.is-active .hamburger-inner::after { top: 0; opacity: 0; transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), opacity 0s 0.22s linear; } .hamburger--spring-r.is-active .hamburger-inner::before { top: 0; transform: rotate(90deg); transition: top 0.1s 0.15s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1); } /* * Stand */ .hamburger--stand .hamburger-inner { transition: transform 0.075s 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19), background-color 0s 0.075s linear; } .hamburger--stand .hamburger-inner::before { transition: top 0.075s 0.075s ease-in, transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19); } .hamburger--stand .hamburger-inner::after { transition: bottom 0.075s 0.075s ease-in, transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19); } .hamburger--stand.is-active .hamburger-inner { transform: rotate(90deg); background-color: transparent !important; transition: transform 0.075s 0s cubic-bezier(0.215, 0.61, 0.355, 1), background-color 0s 0.15s linear; } .hamburger--stand.is-active .hamburger-inner::before { top: 0; transform: rotate(-45deg); transition: top 0.075s 0.1s ease-out, transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1); } .hamburger--stand.is-active .hamburger-inner::after { bottom: 0; transform: rotate(45deg); transition: bottom 0.075s 0.1s ease-out, transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1); } /* * Stand Reverse */ .hamburger--stand-r .hamburger-inner { transition: transform 0.075s 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19), background-color 0s 0.075s linear; } .hamburger--stand-r .hamburger-inner::before { transition: top 0.075s 0.075s ease-in, transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19); } .hamburger--stand-r .hamburger-inner::after { transition: bottom 0.075s 0.075s ease-in, transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19); } .hamburger--stand-r.is-active .hamburger-inner { transform: rotate(-90deg); background-color: transparent !important; transition: transform 0.075s 0s cubic-bezier(0.215, 0.61, 0.355, 1), background-color 0s 0.15s linear; } .hamburger--stand-r.is-active .hamburger-inner::before { top: 0; transform: rotate(-45deg); transition: top 0.075s 0.1s ease-out, transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1); } .hamburger--stand-r.is-active .hamburger-inner::after { bottom: 0; transform: rotate(45deg); transition: bottom 0.075s 0.1s ease-out, transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1); } /* * Squeeze */ .hamburger--squeeze .hamburger-inner { transition-duration: 0.075s; transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); } .hamburger--squeeze .hamburger-inner::before { transition: top 0.075s 0.12s ease, opacity 0.075s ease; } .hamburger--squeeze .hamburger-inner::after { transition: bottom 0.075s 0.12s ease, transform 0.075s cubic-bezier(0.55, 0.055, 0.675, 0.19); } .hamburger--squeeze.is-active .hamburger-inner { transform: rotate(45deg); transition-delay: 0.12s; transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); } .hamburger--squeeze.is-active .hamburger-inner::before { top: 0; opacity: 0; transition: top 0.075s ease, opacity 0.075s 0.12s ease; } .hamburger--squeeze.is-active .hamburger-inner::after { bottom: 0; transform: rotate(-90deg); transition: bottom 0.075s ease, transform 0.075s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1); } /* * Vortex */ .hamburger--vortex .hamburger-inner { transition-duration: 0.2s; transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1); } .hamburger--vortex .hamburger-inner::before, .hamburger--vortex .hamburger-inner::after { transition-duration: 0s; transition-delay: 0.1s; transition-timing-function: linear; } .hamburger--vortex .hamburger-inner::before { transition-property: top, opacity; } .hamburger--vortex .hamburger-inner::after { transition-property: bottom, transform; } .hamburger--vortex.is-active .hamburger-inner { transform: rotate(765deg); transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1); } .hamburger--vortex.is-active .hamburger-inner::before, .hamburger--vortex.is-active .hamburger-inner::after { transition-delay: 0s; } .hamburger--vortex.is-active .hamburger-inner::before { top: 0; opacity: 0; } .hamburger--vortex.is-active .hamburger-inner::after { bottom: 0; transform: rotate(90deg); } /* * Vortex Reverse */ .hamburger--vortex-r .hamburger-inner { transition-duration: 0.2s; transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1); } .hamburger--vortex-r .hamburger-inner::before, .hamburger--vortex-r .hamburger-inner::after { transition-duration: 0s; transition-delay: 0.1s; transition-timing-function: linear; } .hamburger--vortex-r .hamburger-inner::before { transition-property: top, opacity; } .hamburger--vortex-r .hamburger-inner::after { transition-property: bottom, transform; } .hamburger--vortex-r.is-active .hamburger-inner { transform: rotate(-765deg); transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1); } .hamburger--vortex-r.is-active .hamburger-inner::before, .hamburger--vortex-r.is-active .hamburger-inner::after { transition-delay: 0s; } .hamburger--vortex-r.is-active .hamburger-inner::before { top: 0; opacity: 0; } .hamburger--vortex-r.is-active .hamburger-inner::after { bottom: 0; transform: rotate(-90deg); } @media only screen and (max-width: 960px) { /* stylelint-disable a11y/no-display-none */ .js .menu-items ul { display: none; } /* stylelint-enable */ } @media only screen and (max-width: 960px) { .js ul .sub-menu.toggled-on { display: block; } } @media (max-width: 960px) { .nav-container { background-color: var(--color-background-nav-mobile-header); left: 0; position: absolute; top: 0; width: 100%; } .site { padding-top: var(--height-navigation-mobile); } } @media screen and (max-width: 959px) { .site-header ul, .site-header li, .site-header a { position: relative; } .main-navigation-wrapper { order: 6; z-index: 999; } .no-js .site-header { background-color: var(--color-background-nav-mobile-header); position: static; } .disable-scroll { overflow: hidden; } .nav-primary { background-color: var(--color-background-nav-mobile-layer); display: block; height: calc(100vh - var(--height-navigation-mobile)); margin: 0; opacity: 0; overflow: auto; pointer-events: none; transition: all 0.18s ease-in-out; visibility: hidden; width: 100vw; } .menu-items { margin: 0; opacity: 0; padding: 2rem 0; width: 100%; } .menu-item a { border-top: 1px solid var(--color-separator-nav-mobile); color: var(--color-main-level-mobile); display: block; font-size: var(--font-size-main-level-mobile); font-weight: var(--font-weight-main-level-mobile); margin-left: 0; margin-right: 0; padding-bottom: var(--padding-sub-menu-vertical-mobile); padding-left: var(--padding-sub-menu-horizontal-mobile); padding-right: var(--padding-sub-menu-horizontal-mobile); padding-top: var(--padding-sub-menu-vertical-mobile); position: relative; text-decoration: none; z-index: 0; } .sub-menu a { color: var(--color-sub-menu-mobile); font-size: var(--font-size-sub-menu-mobile); font-weight: var(--font-weight-sub-menu-mobile); padding-left: calc(var(--padding-sub-menu-horizontal-mobile) + var(--margin-left-sub-menu)); } .sub-menu { margin-left: 0; padding-left: 0; } .sub-menu .sub-menu a { padding-left: calc(var(--padding-sub-menu-horizontal-mobile) + var(--margin-left-sub-menu) + var(--margin-left-sub-menu)); } .menu-item a:hover, .menu-item a:focus { color: var(--color-active-main-level-mobile); } .menu-item.current-menu-parent > a, .menu-item.current-menu-item > a { color: var(--color-current-mobile); } .dropdown-toggle { align-items: center; background-color: transparent; border: 0; color: var(--color-dropdown-toggle-mobile); display: inline-flex; height: 100%; left: auto; margin-top: 0; max-height: 52px; overflow: hidden; padding-bottom: var(--padding-sub-menu-vertical-mobile); padding-left: var(--padding-sub-menu-horizontal-mobile); padding-right: var(--padding-sub-menu-horizontal-mobile); padding-top: var(--padding-sub-menu-vertical-mobile); position: absolute; right: 0; top: 2px; transform: rotate(0); transition: all 0.18s; z-index: 9999; } .dropdown-toggle:focus { z-index: 10000; } .sub-menu .dropdown-toggle { color: var(--color-sub-menu-mobile); } .dropdown-toggle svg { height: var(--dropdown-toggle-size-mobile); width: var(--dropdown-toggle-size-mobile); /* stylelint-disable a11y/no-display-none */ /* stylelint-enable */ } .dropdown-toggle.toggled-on { background-color: transparent; cursor: pointer; transform: rotate(-180deg); } .js .nav-primary { left: 0; position: fixed; top: var(--height-navigation-mobile); z-index: 5; } .js .nav-primary .menu-items { background-color: var(--color-background-nav-mobile-layer); padding: 0; } .js.js-nav-active { overflow: hidden; } .js.js-nav-active .nav-primary { opacity: 1; pointer-events: all; visibility: visible; } .js.js-nav-active .menu-items { 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); } } .hamburger.is-active .hamburger-inner, .hamburger.is-active .hamburger-inner::before, .hamburger.is-active .hamburger-inner::after { background-color: var(--color-hamburger-active); color: var(--color-hamburger-active); } .nav-toggle { background-color: transparent; border: 0; color: var(--color-hamburger); cursor: pointer; font-weight: var(--font-weight-bold); margin: 0; overflow: visible; padding: 0; position: relative; text-decoration: none; top: 0; -webkit-user-select: none; -moz-user-select: none; user-select: none; z-index: 100000; /* stylelint-disable a11y/no-display-none */ /* stylelint-enable */ } @media (min-width: 960px) { .nav-toggle { display: none; } } .nav-toggle:not(.toggled-on) .hamburger-inner { transition: width 0.18s; width: 18px; } .nav-toggle.is-active .hamburger-inner, .nav-toggle:hover .hamburger-inner, .nav-toggle:focus .hamburger-inner { width: 3rem; } .nav-toggle span { color: var(--color-hamburger); font-size: 1.2em; } .nav-toggle.is-active span { color: var(--color-hamburger-active); } .nav-toggle:hover, .nav-toggle:active { color: var(--color-hamburger); } .nav-toggle:hover span, .nav-toggle:active span { color: var(--color-hamburger); } .nav-toggle:focus span span { background-color: var(--color-hamburger); } .nav-toggle:focus span span::before, .nav-toggle:focus span span::after { background-color: var(--color-hamburger); } .nav-toggle:not(.has-visible-label) .nav-toggle-label { display: none; } @media (max-width: 959px) { .nav-toggle { display: block; } .nav-toggle.has-visible-label { align-items: center; display: flex; } .nav-toggle.has-visible-label .nav-toggle-label { font-size: var(--font-size-nav-toggle-label); } } @media (max-width: 959px) and (max-width: 410px) { .nav-toggle.has-visible-label .nav-toggle-label { display: none; } } @media (max-width: 959px) and (min-width: 411px) { .nav-toggle.has-visible-label .hamburger-box { margin-right: 2rem; } } .nav-toggle.is-active { color: var(--color-hamburger-active); } .nav-toggle.is-active .hamburger-box .hamburger-inner { background-color: var(--color-hamburger-active); } .nav-toggle.is-active .hamburger-box .hamburger-inner::after { background-color: var(--color-hamburger-active); } .nav-toggle.is-active .focus .hamburger-inner, .nav-toggle.is-active span:focus .hamburger-inner { background-color: var(--color-hamburger-active); } .nav-toggle.is-active .focus .hamburger-inner::after, .nav-toggle.is-active span:focus .hamburger-inner::after { background-color: var(--color-hamburger-active); } .nav-toggle.is-active span:focus, .nav-toggle.is-active span:hover, .nav-toggle.is-active span:active { color: var(--color-hamburger-active); } .nav-toggle.is-active span:focus span, .nav-toggle.is-active span:hover span, .nav-toggle.is-active span:active span { color: var(--color-hamburger-active); } .block { background-color: var(--color-white); background-position: center; background-repeat: no-repeat; background-size: cover; margin: 0 auto; max-width: 100%; position: relative; } .shade { background-color: var(--color-background-shade); height: 100%; left: 0; opacity: .35; position: absolute; top: 0; width: 100%; z-index: 0; } .global-link { height: 100%; left: 0; position: absolute; top: 0; width: 100%; z-index: 3; } .site { margin-left: auto; margin-right: auto; max-width: 100%; overflow: hidden; position: relative; } .container { margin: 0 auto; margin-left: auto; margin-right: auto; max-width: 1440px; padding-bottom: var(--padding-container-vertical); padding-left: var(--padding-container-horizontal); padding-right: var(--padding-container-horizontal); padding-top: var(--padding-container-vertical); } .site-main .container { clear: both; overflow: hidden; } .entry-footer { clear: both; display: flex; justify-content: space-between; margin-top: var(--padding-container-vertical); overflow: hidden; } .edit-link { clear: both; display: block; margin-bottom: 0; margin-top: 2rem; max-width: 100%; min-width: 0; overflow: hidden; text-align: left; transition: all 0.18s; width: 100%; } .edit-link a { background-color: var(--color-white); border: 2px dashed var(--color-link-edit-border); clear: both; color: var(--color-link-edit-text); display: block; margin: 0; padding: 2rem; text-align: center; text-decoration: none; transition: all 0.18s; } .edit-link:focus, .edit-link a:hover { background-color: var(--color-link-edit-background-hover); color: var(--color-link-edit-text-hover); } @media (min-width: 480px) { .hide-on-desktop { /* stylelint-disable declaration-no-important */ display: none !important; /* stylelint-enable */ } } /* stylelint-disable declaration-no-important, a11y/no-display-none */ @media (max-width: 480px) { .hide-on-mobile { display: none !important; } } /* stylelint-enable */ /* stylelint-disable declaration-no-important, a11y/no-display-none */ @media (max-width: 960px) { .hide-on-mobile-nav-view { display: none !important; } } /* stylelint-enable */ /* stylelint-disable declaration-no-important, a11y/no-display-none */ @media (min-width: 960px) { .hide-on-desktop-nav-view { display: none !important; } } /* stylelint-enable */ /* stylelint-disable declaration-no-important, a11y/no-display-none */ .hide-completely { display: none !important; } /* stylelint-enable */ /* stylelint-disable a11y/no-display-none */ @media print { .nav-container, .site-footer, .side-nav { display: none; } } /* stylelint-disable declaration-property-unit-allowed-list, no-descending-specificity */ :root { font-size: 62.5%; } body { color: var(--color-paragraph); font-family: var(--font-paragraph); font-size: var(--font-size-default); -moz-osx-font-smoothing: grayscale; -webkit-font-smoothing: antialiased; font-weight: var(--font-weight-paragraphs); text-rendering: geometricPrecision; } html p, html dd, html dt, html figcaption, html hr, html small, html ol, html ul, html li, html blockquote, html kbd, html pre, html samp, html code, html th, html td, html table, html tr, html textarea, html select, html input[type="text"], html input[type="tel"], html input[type="url"], html input[type="password"], html input[type="number"], html input[type="month"], html input[type="week"], html input[type="email"], html input[type="search"], .editor-styles-wrapper p, .editor-styles-wrapper dd, .editor-styles-wrapper dt, .editor-styles-wrapper figcaption, .editor-styles-wrapper hr, .editor-styles-wrapper small, .editor-styles-wrapper ol, .editor-styles-wrapper ul, .editor-styles-wrapper li, .editor-styles-wrapper blockquote, .editor-styles-wrapper kbd, .editor-styles-wrapper pre, .editor-styles-wrapper samp, .editor-styles-wrapper code, .editor-styles-wrapper th, .editor-styles-wrapper td, .editor-styles-wrapper table, .editor-styles-wrapper tr, .editor-styles-wrapper textarea, .editor-styles-wrapper select, .editor-styles-wrapper input[type="text"], .editor-styles-wrapper input[type="tel"], .editor-styles-wrapper input[type="url"], .editor-styles-wrapper input[type="password"], .editor-styles-wrapper input[type="number"], .editor-styles-wrapper input[type="month"], .editor-styles-wrapper input[type="week"], .editor-styles-wrapper input[type="email"], .editor-styles-wrapper input[type="search"] { font-size: var(--font-size-paragraphs); line-height: var(--line-height-paragraphs); } html h1, html h2, html h3, html h4, html h5, html h6, .editor-styles-wrapper h1, .editor-styles-wrapper h2, .editor-styles-wrapper h3, .editor-styles-wrapper h4, .editor-styles-wrapper h5, .editor-styles-wrapper 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); } html h2, html h3, html h4, html h5, html h6, .editor-styles-wrapper h2, .editor-styles-wrapper h3, .editor-styles-wrapper h4, .editor-styles-wrapper h5, .editor-styles-wrapper h6 { line-height: var(--line-height-headings); } html h1, .editor-styles-wrapper h1 { font-size: var(--font-size-h1); } html h2, .editor-styles-wrapper h2 { font-size: var(--font-size-h2); } html h3, .editor-styles-wrapper h3 { font-size: var(--font-size-h3); } html h4, .editor-styles-wrapper h4 { font-size: var(--font-size-h4); } html h5, .editor-styles-wrapper h5 { font-size: var(--font-size-h5); } html h6, .editor-styles-wrapper h6 { font-size: var(--font-size-h6); } html h1:first-child, html h2:first-child, html h3:first-child, html h4:first-child, html h5:first-child, html 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; } html ul, .editor-styles-wrapper ul { list-style: disc outside; padding-left: 1.9rem; } html ul li, .editor-styles-wrapper ul li { padding-left: 0; } html ol, .editor-styles-wrapper ol { padding-left: 1.9rem; } html b, html strong, .editor-styles-wrapper b, .editor-styles-wrapper strong { font-weight: var(--font-weight-bold); } html em, html i, .editor-styles-wrapper em, .editor-styles-wrapper i { font-style: italic; } html small, .editor-styles-wrapper small { font-size: .87em; } html p, .editor-styles-wrapper p { margin-bottom: 2.9rem; margin-top: 2.9rem; } html blockquote, .editor-styles-wrapper blockquote { border: 0 none; clear: both; margin: 0; padding-bottom: 3rem; position: relative; } html blockquote p, .editor-styles-wrapper blockquote p { color: var(--color-blockquote); font-style: italic; margin-bottom: 0; overflow: visible; position: relative; } @media (min-width: 770px) { html blockquote, .editor-styles-wrapper blockquote { margin-top: 4rem; padding-bottom: 4rem; } } html blockquote::before, .editor-styles-wrapper blockquote::before { content: ''; display: block; height: 4px; left: 0; max-width: 147px; position: absolute; top: 0; } @media (min-width: 480px) { html blockquote::before, .editor-styles-wrapper blockquote::before { width: 30%; } } html cite, .editor-styles-wrapper cite { display: block; font-style: italic; } html p:last-child, .editor-styles-wrapper p:last-child { margin-bottom: 0; } html img, .editor-styles-wrapper img { height: auto; max-width: 100%; vertical-align: middle; } html figure, .editor-styles-wrapper figure { margin-bottom: 1rem; margin-left: 0; margin-right: 0; margin-top: 0; position: relative; } html figcaption, .editor-styles-wrapper figcaption { font-style: normal; font-weight: var(--font-weight-paragraphs); margin-top: 0; } html kbd, html pre, html samp, .editor-styles-wrapper kbd, .editor-styles-wrapper pre, .editor-styles-wrapper samp { font-family: var(--font-monospace); } html code, .editor-styles-wrapper code { background-color: var(--color-background-code-inline); border-radius: .3rem; color: var(--color-code-block); font-family: var(--font-monospace); font-size: inherit; padding: .37rem .5rem; } pre html code, pre .editor-styles-wrapper code { display: inline-block; padding: 1.15rem 1rem .85rem; } html pre, .editor-styles-wrapper pre { border-radius: .3rem; display: block; margin-bottom: 2rem; white-space: pre-wrap; word-break: break-all; word-wrap: break-word; } .site-header { align-items: center; display: flex; justify-content: space-between; margin-left: auto; margin-right: auto; max-width: 1440px; padding-bottom: var(--padding-site-header-vertical); padding-left: var(--padding-container-horizontal); padding-right: var(--padding-container-horizontal); padding-top: var(--padding-site-header-vertical); position: relative; z-index: 15; } .site-title { line-height: 0; margin: 0; } .site-title a { align-items: center; display: flex; } .nav-container { z-index: 10; } .site-footer { clear: both; color: var(--color-white); overflow: hidden; padding: 6rem 2rem; text-align: center; /* stylelint-disable a11y/no-display-none */ /* stylelint-enable */ } .site-footer p, .site-footer span { color: var(--color-white); } .site-footer .wordpress-logo { display: block; margin-bottom: 2rem; margin-left: auto; margin-right: auto; } .site-footer span { display: block; text-align: center; } .site-footer svg { margin-right: 5px; position: relative; } .site-footer .is-external-link::after { display: none; } .site-footer .powered-by-wordpress { display: inline-block; font-weight: var(--font-weight-semibold); margin-bottom: 1rem; text-align: center; } .site-footer .github-link { margin-left: 8px; margin-top: 4px; overflow: hidden; padding-bottom: 4px; position: relative; } .site-footer .github-link.is-external-link::after { background-color: var(--color-white); bottom: 0; content: ''; display: block; height: 1px; opacity: .4; position: absolute; top: auto; transition: opacity 0.18s; width: 100%; } .site-footer a { color: var(--color-white); transition: opacity 0.18s; } .site-footer a:hover, .site-footer a:focus { color: var(--color-white); opacity: .5; } .site-footer a:hover::after, .site-footer a:focus::after { opacity: .2; } .site-footer .theme-info { align-items: center; display: flex; flex-wrap: wrap; justify-content: center; line-height: 1.5; margin: 0 auto; text-align: center; } .site-footer .theme-info i { margin: 0 5px; } .button-wrapper { margin-bottom: 0; } .site-main button, .site-main .button, .site-main input[type="reset"], .site-main input[type="submit"], .site-main input[type="button"], .site-footer button, .site-footer .button, .site-footer input[type="reset"], .site-footer input[type="submit"], .site-footer input[type="button"] { -webkit-appearance: none; -moz-appearance: none; appearance: none; background-color: var(--color-button-background); border: var(--border-width-input-field) solid var(--color-button-background); border-radius: var(--border-radius-input-field); color: var(--color-button); cursor: pointer; display: inline-block; font-family: var(--font-paragraph); font-size: var(--font-size-16); font-weight: var(--font-weight-semibold); line-height: 19.6364px; margin-bottom: 0; max-width: 230px; overflow: hidden; padding-bottom: calc(14px - calc(var(--border-width-input-field) * 2)); padding-left: calc(21px - calc(var(--border-width-input-field) * 2)); padding-right: calc(21px - calc(var(--border-width-input-field) * 2)); padding-top: calc(14px - calc(var(--border-width-input-field) * 2)); position: relative; text-decoration: none; text-overflow: ellipsis; transition: all 0.08s cubic-bezier(0.25, 0.46, 0.45, 0.94); white-space: nowrap; width: auto; /* stylelint-disable a11y/no-display-none */ /* stylelint-enable */ } .site-main button.is-external-link::after, .site-main .button.is-external-link::after, .site-main input[type="reset"].is-external-link::after, .site-main input[type="submit"].is-external-link::after, .site-main input[type="button"].is-external-link::after, .site-footer button.is-external-link::after, .site-footer .button.is-external-link::after, .site-footer input[type="reset"].is-external-link::after, .site-footer input[type="submit"].is-external-link::after, .site-footer input[type="button"].is-external-link::after { display: none; } .site-main button.focus, .site-main button:hover, .site-main button:focus, .site-main .button.focus, .site-main .button:hover, .site-main .button:focus, .site-main input[type="reset"].focus, .site-main input[type="reset"]:hover, .site-main input[type="reset"]:focus, .site-main input[type="submit"].focus, .site-main input[type="submit"]:hover, .site-main input[type="submit"]:focus, .site-main input[type="button"].focus, .site-main input[type="button"]:hover, .site-main input[type="button"]:focus, .site-footer button.focus, .site-footer button:hover, .site-footer button:focus, .site-footer .button.focus, .site-footer .button:hover, .site-footer .button:focus, .site-footer input[type="reset"].focus, .site-footer input[type="reset"]:hover, .site-footer input[type="reset"]:focus, .site-footer input[type="submit"].focus, .site-footer input[type="submit"]:hover, .site-footer input[type="submit"]:focus, .site-footer input[type="button"].focus, .site-footer input[type="button"]:hover, .site-footer input[type="button"]:focus { background-color: var(--color-button-background-hover); border: var(--border-width-input-field) solid var(--color-button-background-hover); color: var(--color-button-hover); } .site-main button.button-small, .site-main .button.button-small, .site-main input[type="reset"].button-small, .site-main input[type="submit"].button-small, .site-main input[type="button"].button-small, .site-footer button.button-small, .site-footer .button.button-small, .site-footer input[type="reset"].button-small, .site-footer input[type="submit"].button-small, .site-footer input[type="button"].button-small { font-size: var(--font-size-16); line-height: 20.9091px; padding-bottom: calc(10px - calc(var(--border-width-input-field) * 2)); padding-left: calc(21px - calc(var(--border-width-input-field) * 2)); padding-right: calc(21px - calc(var(--border-width-input-field) * 2)); padding-top: calc(10px - calc(var(--border-width-input-field) * 2)); } .site-main button.button-large, .site-main .button.button-large, .site-main input[type="reset"].button-large, .site-main input[type="submit"].button-large, .site-main input[type="button"].button-large, .site-footer button.button-large, .site-footer .button.button-large, .site-footer input[type="reset"].button-large, .site-footer input[type="submit"].button-large, .site-footer input[type="button"].button-large { font-size: var(--font-size-18); line-height: 23.0909px; padding-bottom: calc(17px - calc(var(--border-width-input-field) * 2)); padding-left: calc(21px - calc(var(--border-width-input-field) * 2)); padding-right: calc(21px - calc(var(--border-width-input-field) * 2)); padding-top: calc(17px - calc(var(--border-width-input-field) * 2)); } .site-main button.button-ghost, .site-main .button.button-ghost, .site-main input[type="reset"].button-ghost, .site-main input[type="submit"].button-ghost, .site-main input[type="button"].button-ghost, .site-footer button.button-ghost, .site-footer .button.button-ghost, .site-footer input[type="reset"].button-ghost, .site-footer input[type="submit"].button-ghost, .site-footer input[type="button"].button-ghost { background-color: transparent; border: var(--border-width-input-field) solid var(--color-button-background); border-radius: var(--border-radius-input-field); color: var(--color-button-background); transition: all 0.08s cubic-bezier(0.25, 0.46, 0.45, 0.94); } .site-main button.button-ghost.focus, .site-main button.button-ghost:focus, .site-main button.button-ghost:hover, .site-main .button.button-ghost.focus, .site-main .button.button-ghost:focus, .site-main .button.button-ghost:hover, .site-main input[type="reset"].button-ghost.focus, .site-main input[type="reset"].button-ghost:focus, .site-main input[type="reset"].button-ghost:hover, .site-main input[type="submit"].button-ghost.focus, .site-main input[type="submit"].button-ghost:focus, .site-main input[type="submit"].button-ghost:hover, .site-main input[type="button"].button-ghost.focus, .site-main input[type="button"].button-ghost:focus, .site-main input[type="button"].button-ghost:hover, .site-footer button.button-ghost.focus, .site-footer button.button-ghost:focus, .site-footer button.button-ghost:hover, .site-footer .button.button-ghost.focus, .site-footer .button.button-ghost:focus, .site-footer .button.button-ghost:hover, .site-footer input[type="reset"].button-ghost.focus, .site-footer input[type="reset"].button-ghost:focus, .site-footer input[type="reset"].button-ghost:hover, .site-footer input[type="submit"].button-ghost.focus, .site-footer input[type="submit"].button-ghost:focus, .site-footer input[type="submit"].button-ghost:hover, .site-footer input[type="button"].button-ghost.focus, .site-footer input[type="button"].button-ghost:focus, .site-footer input[type="button"].button-ghost:hover { background-color: var(--color-button-background); border-color: var(--color-button-background); color: var(--color-white); } select { -webkit-appearance: none; -moz-appearance: none; appearance: none; background-image: url("../../svg/select.svg"); background-position: right 0 center; background-repeat: no-repeat; background-size: 40px auto; border-color: var(--color-border-forms); border-radius: var(--border-radius-select); border-style: solid; border-width: var(--border-width-input-field); color: var(--color-paragraph); font-size: var(--font-size-17); line-height: 24px; max-width: 100%; min-width: 0; padding: 15px; text-indent: 1px; transition: none; width: 100%; } textarea, select, input[type="text"], input[type="tel"], input[type="url"], input[type="password"], input[type="number"], input[type="month"], input[type="week"], input[type="email"], input[type="search"] { background-color: var(--color-background-input-field); border-color: var(--color-border-forms); border-radius: var(--border-radius-input-field); border-style: solid; border-width: var(--border-width-input-field); font-family: var(--font-paragraph); font-size: var(--font-size-17); line-height: 24px; margin-bottom: 0; padding: 15px; position: relative; text-decoration: none; transition: background .55s; } textarea::-moz-placeholder, select::-moz-placeholder, input[type="text"]::-moz-placeholder, input[type="tel"]::-moz-placeholder, input[type="url"]::-moz-placeholder, input[type="password"]::-moz-placeholder, input[type="number"]::-moz-placeholder, input[type="month"]::-moz-placeholder, input[type="week"]::-moz-placeholder, input[type="email"]::-moz-placeholder, input[type="search"]::-moz-placeholder { color: var(--color-placeholder); opacity: var(--opacity-placeholder); } textarea::placeholder, select::placeholder, input[type="text"]::placeholder, input[type="tel"]::placeholder, input[type="url"]::placeholder, input[type="password"]::placeholder, input[type="number"]::placeholder, input[type="month"]::placeholder, input[type="week"]::placeholder, input[type="email"]::placeholder, input[type="search"]::placeholder { color: var(--color-placeholder); opacity: var(--opacity-placeholder); } textarea:focus, select:focus, input[type="text"]:focus, input[type="tel"]:focus, input[type="url"]:focus, input[type="password"]:focus, input[type="number"]:focus, input[type="month"]:focus, input[type="week"]:focus, input[type="email"]:focus, input[type="search"]:focus { background-color: var(--color-background-input-field); border-color: var(--color-border-forms-focus); } textarea:focus::-moz-placeholder, select:focus::-moz-placeholder, input[type="text"]:focus::-moz-placeholder, input[type="tel"]:focus::-moz-placeholder, input[type="url"]:focus::-moz-placeholder, input[type="password"]:focus::-moz-placeholder, input[type="number"]:focus::-moz-placeholder, input[type="month"]:focus::-moz-placeholder, input[type="week"]:focus::-moz-placeholder, input[type="email"]:focus::-moz-placeholder, input[type="search"]:focus::-moz-placeholder { color: var(--color-placeholder-focus); opacity: var(--opacity-placeholder-focus); } textarea:focus::placeholder, select:focus::placeholder, input[type="text"]:focus::placeholder, input[type="tel"]:focus::placeholder, input[type="url"]:focus::placeholder, input[type="password"]:focus::placeholder, input[type="number"]:focus::placeholder, input[type="month"]:focus::placeholder, input[type="week"]:focus::placeholder, input[type="email"]:focus::placeholder, input[type="search"]:focus::placeholder { color: var(--color-placeholder-focus); opacity: var(--opacity-placeholder-focus); } input[type="radio"], input[type="checkbox"] { height: var(--size-radio-button); margin: 0; margin-top: calc((1em * var(--line-height-checkbox) - var(--size-radio-button)) / 2); opacity: 0; padding: 0; pointer-events: none; position: absolute; width: var(--size-radio-button); } input[type="radio"] + label, input[type="checkbox"] + label { align-items: flex-start; cursor: pointer; display: inline-flex; line-height: var(--line-height-checkbox); } input[type="radio"] + label::before, input[type="checkbox"] + label::before { align-self: center; background-color: var(--color-white); background-position: center; background-repeat: no-repeat; border-color: var(--color-checkbox); border-style: solid; border-width: var(--border-width-checkbox); content: ''; display: inline-flex; flex-shrink: 0; height: var(--size-radio-button); margin-right: var(--gap-checkbox); position: relative; top: calc(var(--border-width-checkbox) / 2); transition: transform .2s, border .2s; width: var(--size-radio-button); } input[type="radio"] + label::before { border-radius: 50%; } input[type="checkbox"] + label::before { border-radius: var(--border-radius-checkbox); } input[type="radio"]:checked + label::before, input[type="checkbox"]:checked + label::before { background-color: var(--color-checkbox); border-color: var(--color-checkbox); box-shadow: none; transition: transform .2s; } input[type="radio"]:active + label::before, input[type="checkbox"]:active + label::before { transform: scale(0.8); transition: transform .2s; } input[type="radio"]:checked + label::before { background-image: url("data:image/svg+xml;charset=utf8, %3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cg class='nc-icon-wrapper' fill='%23ffffff'%3E%3Ccircle cx='8' cy='8' r='8' fill='%23ffffff'%3E%3C/circle%3E%3C/g%3E%3C/svg%3E"); background-size: var(--size-radio-button-marker); } input[type="checkbox"]:checked + label::before { background-image: url("data:image/svg+xml, %3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpolyline points='1 6.5 4 9.5 11 2.5' fill='none' stroke='%23FFFFFF' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'/%3E%3C/svg%3E"); background-size: var(--size-checkbox-marker); } input[type="radio"]:focus + label::before, input[type="checkbox"]:focus + label::before, input[type="radio"]:checked:active + label::before, input[type="checkbox"]:checked:active + label::before { border-color: var(--color-checkbox); box-shadow: var(--color-checkbox-outline); } input[type="radio"]:checked:active + label::before, input[type="checkbox"]:checked:active + label::before { transform: none; transition: none; } /* stylelint-disable selector-max-pseudo-class */ input[type="radio"]:not(:checked):not(:focus) + label:hover::before, input[type="checkbox"]:not(:checked):not(:focus) + label:hover::before { border-color: var(--color-checkbox-border-hover); } /* stylelint-enable selector-max-pseudo-class */ /* stylelint-disable no-descending-specificity */ .cat { margin-bottom: .5rem; margin-top: 4rem; } .cat a { background-color: transparent; border-color: var(--color-category-border); border-radius: 5px; border-style: solid; border-width: 1px 1px 2px; box-shadow: none; color: var(--color-category-text); display: inline-block; font-size: var(--font-size-16); margin-bottom: .5rem; margin-right: .5em; padding: .2em .6em; transition: all 0.18s; } .cat a:hover, .cat a:focus { border-color: var(--color-tag-border-hover); } .tags { list-style: none; margin-bottom: var(--margin-between-text-elements); margin-top: 0; overflow: hidden; } .tags li { float: left; margin-bottom: 10px; margin-left: 0; margin-right: 10px; margin-top: 0; padding-left: 0; } .tags a { background-color: transparent; border-color: var(--color-tag-border); border-radius: 5px; border-style: solid; border-width: 1px 1px 2px; box-shadow: none; color: var(--color-tag-text); display: inline-block; font-size: var(--font-size-14); margin-right: .4em; padding: .2em .6em; transition: all 0.18s; } .tags a:hover, .tags a:focus { border-color: var(--color-tag-border-hover); } .post-navigation .nav-links { display: flex; flex-wrap: wrap; justify-content: space-between; } :root { --color-border-sticky: #d7e4f2; --color-bypostauthor: rgba(42, 45, 62, .5); } .sticky { border: 1px dashed var(--color-border-sticky); margin-bottom: 2rem; padding: 2rem; } .comment-list li.bypostauthor, .bypostauthor { border: 1px dashed var(--color-bypostauthor); padding: 2rem; } .wp-caption { max-width: 100%; } .wp-caption img[class*="wp-image-"] { display: block; margin: 0 auto; } .wp-caption .wp-caption-text { font-style: italic; margin-bottom: 20px; padding: 1rem 0; text-align: left; } .site-footer .top { background-color: transparent; padding: 16px; } .site-footer .top svg { align-items: center; display: flex; fill: var(--color-top-arrow-dark); height: 18px; justify-content: center; margin: 0; opacity: .8; transition: all .3s ease; width: 18px; } @media (max-width: 480px) { .site-footer .top svg { height: 15px; width: 15px; } } .site-footer .top:hover, .site-footer .top:focus, .site-footer .top:active { opacity: 1; } .site-footer .top:hover svg, .site-footer .top:focus svg, .site-footer .top:active svg { transform: translateY(-0.5rem); } .site-footer .back-to-top { align-items: center; bottom: 1rem; display: flex; justify-content: center; margin: 0; opacity: 0; position: fixed; right: 1rem; text-decoration: none; transition: opacity 0.18s 0s, visibility 0s 0.18s; z-index: 9999; } .site-footer .back-to-top.has-light-bg svg { fill: var(--color-top-arrow-dark); } .site-footer .back-to-top.has-dark-bg svg { fill: var(--color-top-arrow-light); } .site-footer .back-to-top.is-visible, .site-footer .back-to-top.fade-out { transition: opacity 0.18s 0s, visibility 0s 0s; } .site-footer .back-to-top.is-visible { opacity: 1; } .site-footer .back-to-top.fade-out { opacity: 1; } .site-footer .back-to-top.fade-out:focus, .site-footer .back-to-top.fade-out:hover { opacity: 1; } .gallery { display: grid; grid-gap: 1.5em; margin-bottom: 1.5em; } .gallery-item { display: inline-block; text-align: center; width: 100%; } .gallery-columns-2 { grid-template-columns: repeat(2, 1fr); } .gallery-columns-3 { grid-template-columns: repeat(3, 1fr); } .gallery-columns-4 { grid-template-columns: repeat(4, 1fr); } .gallery-columns-5 { grid-template-columns: repeat(5, 1fr); } .gallery-columns-6 { grid-template-columns: repeat(6, 1fr); } .gallery-columns-7 { grid-template-columns: repeat(7, 1fr); } .gallery-columns-8 { grid-template-columns: repeat(8, 1fr); } .gallery-columns-9 { grid-template-columns: repeat(9, 1fr); } .gallery-caption { display: block; } div.lazy { background-position: center; background-size: cover; height: 100%; left: 0; position: absolute; top: 0; width: 100%; z-index: 0; } .has-lazyload { overflow: hidden; position: relative; } /* stylelint-disable a11y/font-size-is-readable */ .navigation:not(.post-navigation) .nav-links { align-items: flex-start; display: flex; font-family: var(--font-heading); font-size: 14px; justify-content: flex-start; margin-top: 4rem; overflow: hidden; text-align: left; width: 100%; } .navigation:not(.post-navigation) .nav-links a { text-decoration: none; } /* stylelint-enable */ .page-numbers { align-items: center; background-color: var(--color-white); border-bottom: 2px solid var(--color-blue-chalk); border-left: 1px solid var(--color-blue-chalk); border-right: 1px solid var(--color-blue-chalk); border-top: 2px solid var(--color-blue-chalk); color: var(--color-pagination-text); display: flex; font-weight: var(--font-weight-medium); height: 35px; justify-content: center; margin-left: 0; margin-right: 0; transition: all 0.18s; width: 35px; } @media (max-width: 600px) { .page-numbers { height: 26px; width: 26px; } } .page-numbers:last-child { border-bottom-left-radius: 0; border-bottom-right-radius: 4px; border-top-left-radius: 0; border-top-right-radius: 4px; } .page-numbers:first-child { border-bottom-left-radius: 4px; border-bottom-right-radius: 0; border-top-left-radius: 4px; border-top-right-radius: 0; } a.page-numbers:hover, a.page-numbers:focus { background-color: var(--color-pagination-background-hover); border-color: var(--color-pagination-border-hover); color: var(--color-pagination-text-hover); } .page-numbers.current { background-color: var(--color-pagination-background-current); border-color: var(--color-pagination-border-current); color: var(--color-pagination-text-current); } .page-numbers.next, .page-numbers.prev { padding-left: 20px; padding-right: 20px; width: auto; } @media (max-width: 600px) { .page-numbers.next, .page-numbers.prev { padding-left: 10px; padding-right: 10px; } } /* stylelint-disable selector-class-pattern */ div.validation_error { background-color: var(--color-error); color: var(--color-white); font-size: var(--font-size-17); font-weight: var(--font-weight-bold); margin-bottom: 2rem; padding: 2rem; } div.validation_error:focus { color: var(--color-white); } body *[aria-invalid="true"] { border-color: var(--color-error); } .validation_message { color: var(--color-error); font-size: var(--font-size-16); font-weight: var(--font-weight-regular); } .validation_list { list-style: none; margin-bottom: 2rem; margin-left: 0; padding: 0; } .validation_list a { color: var(--color-error); text-decoration: none; } .validation_list li { color: var(--color-error); font-weight: var(--font-weight-bold); } .gform_body .gfield_required { color: var(--color-main); font-size: var(--font-size-22); position: relative; top: 3px; } .gform_body ul { list-style: none; margin: 0; padding: 0; } .gform_body .gform_fields li { margin-bottom: 1rem; margin-top: 1rem; } .gform_body .gfield_radio li, .gform_body .gfield_checkbox li { margin-bottom: 0; margin-top: 0; } .gform_body .gfieldset li { align-items: center; display: inline-flex; flex-wrap: wrap; justify-content: flex-start; margin: 0; width: 100%; } .gform_body .gform_fields li:last-child { margin-bottom: 0; } .gform_body .gfield_label, .gform_body .ginput_container label { display: inline-block; font-weight: var(--font-weight-bold); margin-bottom: 1rem; margin-top: 1rem; } .gform_body input[type="radio"], .gform_body input[type="checkbox"] { margin-right: 1rem; } .gform_body .gfield_radio li label, .gform_body .gfield_checkbox li label { margin-bottom: 0; margin-top: 0; } .gform_body input:not([type="radio"]):not([type="checkbox"]), .gform_body textarea { width: 100%; } @media (min-width: 480px) { .gform_body .ginput_full { display: block; width: 100%; } .gform_body .ginput_complex { display: flex; flex-wrap: wrap; margin-left: -.5rem; margin-right: -.5rem; } .gform_body .ginput_complex span { margin-left: .5rem; margin-right: .5rem; } .gform_body .ginput_left, .gform_body .ginput_right { display: inline-flex; flex-wrap: wrap; width: calc(50% - 1rem); } .gform_body .ginput_left > label, .gform_body .ginput_left input, .gform_body .ginput_right > label, .gform_body .ginput_right input { font-size: var(--font-size-16); width: 100%; } } /* stylelint-enable selector-class-pattern */ .block-search, .block-search-results { background-color: var(--color-white); } .block-search form { display: grid; /* autoprefixer: off */ grid-gap: 1rem; grid-template-columns: 9fr 1fr; } .block-search form input, .block-search form label { width: 100%; } .block-search-results > .container { padding-top: 0; } @media (min-width: 1024px) { .block-search-results > .container { display: grid; grid-auto-rows: minmax(0, auto); grid-gap: 16px; grid-row-gap: 16px; grid-template-columns: repeat(1, minmax(0, 1fr)); } @supports not (display: grid) { .block-search-results > .container { display: flex; flex-wrap: wrap; overflow: hidden; } .block-search-results > .container > div { margin-bottom: 16px; margin-right: 16px; width: calc(100% - 16px); } .block-search-results > .container > div:nth-child(1n+1) { margin-right: 0; } } } @media all and (min-width: 1024px) and (-ms-high-contrast: none), (min-width: 1024px) and (-ms-high-contrast: active) { .block-search-results > .container { display: flex; flex-wrap: wrap; overflow: hidden; } .block-search-results > .container > div { margin-bottom: 16px; margin-right: 16px; width: calc(100% - 16px); } .block-search-results > .container > div:nth-child(1n+1) { margin-right: 0; } } @media (min-width: 1024px) { @supports (-ms-ime-align: auto) { .block-search-results > .container { display: flex; flex-wrap: wrap; overflow: hidden; } .block-search-results > .container > div { margin-bottom: 16px; margin-right: 16px; width: calc(100% - 16px); } .block-search-results > .container > div:nth-child(1n+1) { margin-right: 0; } } } .block-search-results .row-result { border-top: 2px solid var(--color-border-forms); padding: 2rem 0; } .block-search-results .row-result:last-of-type { border-bottom: 2px solid var(--color-border-forms); } .block-search-results h3 { font-size: var(--font-size-h4); margin-bottom: 1rem; } .block-search-results p { margin-top: 1rem; } .block-search-results .tags a { background-color: var(--color-background-tag); color: var(--color-main); } .block-search-results .tags a:hover, .block-search-results .tags a:focus { background-color: var(--color-main); color: var(--color-background-tag); } @media (min-width: 480px) { .block-error-404 .container { padding-bottom: 10%; padding-top: 10%; } } .block-error-404 h1 { font-size: 42px; margin-bottom: 2rem; } @media screen and (min-width: 320px) { .block-error-404 h1 { font-size: calc(42px + 158 * ((100vw - 320px) / 1600)); } } @media screen and (min-width: 1920px) { .block-error-404 h1 { font-size: 200px; } } /* stylelint-disable no-descending-specificity */ .comments-area { margin-bottom: 0; margin-top: 50px; overflow: visible; } .comment-list { list-style: none; margin: 0; padding: 0; } .comment-list .children { list-style: none; } .comment-list li { font-size: var(--font-size-14); margin-bottom: 70px; margin-top: 0; padding: 0; } .comment-list p { color: var(--color-comment-text); font-size: var(--font-size-14); } .comment-list .avatar { border-radius: 50%; float: right; } .comment-list .comment-author { color: var(--color-comment-author-text); font-size: var(--font-size-h4); margin-bottom: 10px; margin-top: 0; padding: 0; } .comment-list a, .comment-list .comments-link a { box-shadow: none; color: var(--color-link-comment); } .comment-list .comment-author a { color: var(--color-paragraph); } .comment-list .comment-time { font-size: var(--font-size-14); margin: 0; padding: 0; } .comment-list .comment-time a { color: var(--color-link-comment-time-anchor); } .comment-list .comment-time:focus, .comment-list .comment-time:hover { opacity: 1; } .comment-list .comment-time svg { fill: var(--color-link-comment-time-anchor); margin-right: 5px; position: relative; top: 2px; } .comments-link { align-items: center; display: inline-flex; font-size: var(--font-size-14); text-align: right; } .comments-link a { color: var(--color-link-comment); } .comments-link:hover, .comments-link:focus, .comments-link a:hover, .comments-link a:focus { color: var(--color-black); } .comments-link svg { margin-right: 7px; position: relative; top: -1px; } @media (min-width: 480px) { .comment-form { display: grid; grid-gap: 1em; grid-template-columns: 1fr 1fr; /* autoprefixer: off */ justify-content: center; } .comment-form .comment-notes, .comment-form .comment-form-comment, .comment-form .form-submit { grid-column: 1 / span 2; } } .comment-respond { margin-bottom: 0; overflow: visible; } @media (max-width: 480px) { .comment-respond input { width: 100%; } } .comment-respond .comment-form-author { margin-bottom: 20px; margin-top: 0; } .comment-respond .comment-form-author input { border-width: 1px; padding: 15px; width: 100%; } .comment-respond .comment-form-email { clear: right; margin-bottom: 20px; margin-right: 0; margin-top: 0; } .comment-respond .comment-form-email input { border-width: 1px; padding: 15px; width: 100%; } .comment-respond .comment-form-url { margin-bottom: 30px; margin-top: 0; position: relative; } .comment-respond .comment-form-url input { border-width: 1px; padding: 15px; width: 100%; } .comment-respond .form-submit { clear: both; display: block; margin-bottom: 0; margin-top: 0; } .comment-respond .comment-form-comment { margin-bottom: 20px; } .comment-respond textarea { width: 100%; } /* stylelint-enable no-descending-specificity */ .editor-styles-wrapper, .gutenberg-content { max-width: 100%; padding-bottom: var(--padding-block); padding-left: 0; padding-right: 0; padding-top: var(--padding-block); } .gutenberg-content > * { line-height: var(--line-height-paragraphs-blog); margin-left: auto; margin-right: auto; max-width: 800px; padding-left: 0; padding-right: 0; width: 100%; } @media (max-width: 840px) { .gutenberg-content > * { padding-left: var(--padding-container-horizontal); padding-right: var(--padding-container-horizontal); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } .gutenberg-content > *.alignfull { padding-left: var(--padding-container-horizontal); padding-right: var(--padding-container-horizontal); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } } .editor-styles-wrapper, .gutenberg-content, .site-main { /* stylelint-disable no-descending-specificity */ } .editor-styles-wrapper blockquote + cite, .editor-styles-wrapper blockquote + p > cite, .gutenberg-content blockquote + cite, .gutenberg-content blockquote + p > cite, .site-main blockquote + cite, .site-main blockquote + p > cite { margin-bottom: 4rem; } .editor-styles-wrapper blockquote, .editor-styles-wrapper blockquote.wp-block-quote, .gutenberg-content blockquote, .gutenberg-content blockquote.wp-block-quote, .site-main blockquote, .site-main blockquote.wp-block-quote { border-left: 2px solid var(--color-blockquote); line-height: var(--line-height-paragraphs-blog); margin-bottom: 4rem; margin-left: auto; margin-right: auto; margin-top: 4rem; padding: 3.5rem 6rem; width: calc(100% - 12rem); } @media (max-width: 840px) { .editor-styles-wrapper blockquote, .editor-styles-wrapper blockquote.wp-block-quote, .gutenberg-content blockquote, .gutenberg-content blockquote.wp-block-quote, .site-main blockquote, .site-main blockquote.wp-block-quote { padding: 3.5rem 2rem; width: calc(100% - 4rem); } } @media (max-width: 480px) { .editor-styles-wrapper blockquote, .editor-styles-wrapper blockquote.wp-block-quote, .gutenberg-content blockquote, .gutenberg-content blockquote.wp-block-quote, .site-main blockquote, .site-main blockquote.wp-block-quote { padding: 4rem 4rem 4rem 2rem; } } .editor-styles-wrapper blockquote > p, .editor-styles-wrapper blockquote.wp-block-quote > p, .gutenberg-content blockquote > p, .gutenberg-content blockquote.wp-block-quote > p, .site-main blockquote > p, .site-main blockquote.wp-block-quote > p { color: var(--color-blockquote); line-height: var(--line-height-paragraphs-blog); } .editor-styles-wrapper .wp-block-blockquote.alignwide, .editor-styles-wrapper .wp-block-blockquote.alignfull, .gutenberg-content .wp-block-blockquote.alignwide, .gutenberg-content .wp-block-blockquote.alignfull, .site-main .wp-block-blockquote.alignwide, .site-main .wp-block-blockquote.alignfull { padding-left: var(--padding-container-horizontal); padding-right: var(--padding-container-horizontal); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } .editor-styles-wrapper .wp-block-blockquote blockquote, .gutenberg-content .wp-block-blockquote blockquote, .site-main .wp-block-blockquote blockquote { padding-bottom: 0; } .editor-styles-wrapper pre, .gutenberg-content pre, .site-main pre { background-color: var(--color-background-code-block); border: 1px solid var(--color-background-code-block); border-radius: 4px; color: var(--color-code-text); display: block; font-family: var(--font-monospace); font-size: var(--font-size-16); line-height: var(--line-height-paragraphs-blog); margin-bottom: var(--margin-between-text-elements); margin-top: var(--margin-between-text-elements); overflow: auto; padding: 15px 16px 14px; position: relative; white-space: pre; word-wrap: break-word; } .editor-styles-wrapper pre code, .gutenberg-content pre code, .site-main pre code { background-color: transparent; border-radius: 4px; color: var(--color-code-text); } @media (max-width: 1480px) { .editor-styles-wrapper .wp-block-code, .gutenberg-content .wp-block-code, .site-main .wp-block-code { margin-left: var(--padding-container-horizontal); margin-right: var(--padding-container-horizontal); width: calc(100% - calc(var(--padding-container-horizontal) * 4)); } } .editor-styles-wrapper .wp-block-code pre, .gutenberg-content .wp-block-code pre, .site-main .wp-block-code pre { padding-left: var(--padding-container-horizontal); padding-right: var(--padding-container-horizontal); } .editor-styles-wrapper .wp-block-columns.alignfull, .gutenberg-content .wp-block-columns.alignfull, .site-main .wp-block-columns.alignfull { padding-left: var(--padding-container-horizontal); padding-right: var(--padding-container-horizontal); } .editor-styles-wrapper .wp-block-columns.columns-1.alignfull, .gutenberg-content .wp-block-columns.columns-1.alignfull, .site-main .wp-block-columns.columns-1.alignfull { padding-left: var(--padding-container-horizontal); padding-right: var(--padding-container-horizontal); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } @media (max-width: 900px) { .editor-styles-wrapper .wp-block-columns.columns-1, .gutenberg-content .wp-block-columns.columns-1, .site-main .wp-block-columns.columns-1 { display: grid; grid-gap: 1em; grid-template-columns: repeat(2, 1fr); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } .editor-styles-wrapper .wp-block-columns.columns-1 .wp-block-column, .gutenberg-content .wp-block-columns.columns-1 .wp-block-column, .site-main .wp-block-columns.columns-1 .wp-block-column { margin: 0; width: 100%; } } @media (max-width: 480px) { .editor-styles-wrapper .wp-block-columns.columns-1, .gutenberg-content .wp-block-columns.columns-1, .site-main .wp-block-columns.columns-1 { grid-template-columns: repeat(1, 1fr); } } .editor-styles-wrapper .wp-block-columns.columns-2.alignfull, .gutenberg-content .wp-block-columns.columns-2.alignfull, .site-main .wp-block-columns.columns-2.alignfull { padding-left: var(--padding-container-horizontal); padding-right: var(--padding-container-horizontal); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } @media (max-width: 900px) { .editor-styles-wrapper .wp-block-columns.columns-2, .gutenberg-content .wp-block-columns.columns-2, .site-main .wp-block-columns.columns-2 { display: grid; grid-gap: 1em; grid-template-columns: repeat(2, 1fr); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } .editor-styles-wrapper .wp-block-columns.columns-2 .wp-block-column, .gutenberg-content .wp-block-columns.columns-2 .wp-block-column, .site-main .wp-block-columns.columns-2 .wp-block-column { margin: 0; width: 100%; } } @media (max-width: 480px) { .editor-styles-wrapper .wp-block-columns.columns-2, .gutenberg-content .wp-block-columns.columns-2, .site-main .wp-block-columns.columns-2 { grid-template-columns: repeat(1, 1fr); } } .editor-styles-wrapper .wp-block-columns.columns-3.alignfull, .gutenberg-content .wp-block-columns.columns-3.alignfull, .site-main .wp-block-columns.columns-3.alignfull { padding-left: var(--padding-container-horizontal); padding-right: var(--padding-container-horizontal); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } @media (max-width: 900px) { .editor-styles-wrapper .wp-block-columns.columns-3, .gutenberg-content .wp-block-columns.columns-3, .site-main .wp-block-columns.columns-3 { display: grid; grid-gap: 1em; grid-template-columns: repeat(2, 1fr); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } .editor-styles-wrapper .wp-block-columns.columns-3 .wp-block-column, .gutenberg-content .wp-block-columns.columns-3 .wp-block-column, .site-main .wp-block-columns.columns-3 .wp-block-column { margin: 0; width: 100%; } } @media (max-width: 480px) { .editor-styles-wrapper .wp-block-columns.columns-3, .gutenberg-content .wp-block-columns.columns-3, .site-main .wp-block-columns.columns-3 { grid-template-columns: repeat(1, 1fr); } } .editor-styles-wrapper .wp-block-columns.columns-4.alignfull, .gutenberg-content .wp-block-columns.columns-4.alignfull, .site-main .wp-block-columns.columns-4.alignfull { padding-left: var(--padding-container-horizontal); padding-right: var(--padding-container-horizontal); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } @media (max-width: 900px) { .editor-styles-wrapper .wp-block-columns.columns-4, .gutenberg-content .wp-block-columns.columns-4, .site-main .wp-block-columns.columns-4 { display: grid; grid-gap: 1em; grid-template-columns: repeat(2, 1fr); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } .editor-styles-wrapper .wp-block-columns.columns-4 .wp-block-column, .gutenberg-content .wp-block-columns.columns-4 .wp-block-column, .site-main .wp-block-columns.columns-4 .wp-block-column { margin: 0; width: 100%; } } @media (max-width: 480px) { .editor-styles-wrapper .wp-block-columns.columns-4, .gutenberg-content .wp-block-columns.columns-4, .site-main .wp-block-columns.columns-4 { grid-template-columns: repeat(1, 1fr); } } .editor-styles-wrapper .wp-block-columns.columns-5.alignfull, .gutenberg-content .wp-block-columns.columns-5.alignfull, .site-main .wp-block-columns.columns-5.alignfull { padding-left: var(--padding-container-horizontal); padding-right: var(--padding-container-horizontal); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } @media (max-width: 900px) { .editor-styles-wrapper .wp-block-columns.columns-5, .gutenberg-content .wp-block-columns.columns-5, .site-main .wp-block-columns.columns-5 { display: grid; grid-gap: 1em; grid-template-columns: repeat(2, 1fr); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } .editor-styles-wrapper .wp-block-columns.columns-5 .wp-block-column, .gutenberg-content .wp-block-columns.columns-5 .wp-block-column, .site-main .wp-block-columns.columns-5 .wp-block-column { margin: 0; width: 100%; } } @media (max-width: 480px) { .editor-styles-wrapper .wp-block-columns.columns-5, .gutenberg-content .wp-block-columns.columns-5, .site-main .wp-block-columns.columns-5 { grid-template-columns: repeat(1, 1fr); } } .editor-styles-wrapper .wp-block-columns.columns-6.alignfull, .gutenberg-content .wp-block-columns.columns-6.alignfull, .site-main .wp-block-columns.columns-6.alignfull { padding-left: var(--padding-container-horizontal); padding-right: var(--padding-container-horizontal); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } @media (max-width: 900px) { .editor-styles-wrapper .wp-block-columns.columns-6, .gutenberg-content .wp-block-columns.columns-6, .site-main .wp-block-columns.columns-6 { display: grid; grid-gap: 1em; grid-template-columns: repeat(2, 1fr); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } .editor-styles-wrapper .wp-block-columns.columns-6 .wp-block-column, .gutenberg-content .wp-block-columns.columns-6 .wp-block-column, .site-main .wp-block-columns.columns-6 .wp-block-column { margin: 0; width: 100%; } } @media (max-width: 480px) { .editor-styles-wrapper .wp-block-columns.columns-6, .gutenberg-content .wp-block-columns.columns-6, .site-main .wp-block-columns.columns-6 { grid-template-columns: repeat(1, 1fr); } } .editor-styles-wrapper .wp-block-columns.columns-7.alignfull, .gutenberg-content .wp-block-columns.columns-7.alignfull, .site-main .wp-block-columns.columns-7.alignfull { padding-left: var(--padding-container-horizontal); padding-right: var(--padding-container-horizontal); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } @media (max-width: 900px) { .editor-styles-wrapper .wp-block-columns.columns-7, .gutenberg-content .wp-block-columns.columns-7, .site-main .wp-block-columns.columns-7 { display: grid; grid-gap: 1em; grid-template-columns: repeat(2, 1fr); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } .editor-styles-wrapper .wp-block-columns.columns-7 .wp-block-column, .gutenberg-content .wp-block-columns.columns-7 .wp-block-column, .site-main .wp-block-columns.columns-7 .wp-block-column { margin: 0; width: 100%; } } @media (max-width: 480px) { .editor-styles-wrapper .wp-block-columns.columns-7, .gutenberg-content .wp-block-columns.columns-7, .site-main .wp-block-columns.columns-7 { grid-template-columns: repeat(1, 1fr); } } .editor-styles-wrapper .wp-block-columns.columns-8.alignfull, .gutenberg-content .wp-block-columns.columns-8.alignfull, .site-main .wp-block-columns.columns-8.alignfull { padding-left: var(--padding-container-horizontal); padding-right: var(--padding-container-horizontal); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } @media (max-width: 900px) { .editor-styles-wrapper .wp-block-columns.columns-8, .gutenberg-content .wp-block-columns.columns-8, .site-main .wp-block-columns.columns-8 { display: grid; grid-gap: 1em; grid-template-columns: repeat(2, 1fr); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } .editor-styles-wrapper .wp-block-columns.columns-8 .wp-block-column, .gutenberg-content .wp-block-columns.columns-8 .wp-block-column, .site-main .wp-block-columns.columns-8 .wp-block-column { margin: 0; width: 100%; } } @media (max-width: 480px) { .editor-styles-wrapper .wp-block-columns.columns-8, .gutenberg-content .wp-block-columns.columns-8, .site-main .wp-block-columns.columns-8 { grid-template-columns: repeat(1, 1fr); } } .editor-styles-wrapper .wp-block-columns.columns-9.alignfull, .gutenberg-content .wp-block-columns.columns-9.alignfull, .site-main .wp-block-columns.columns-9.alignfull { padding-left: var(--padding-container-horizontal); padding-right: var(--padding-container-horizontal); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } @media (max-width: 900px) { .editor-styles-wrapper .wp-block-columns.columns-9, .gutenberg-content .wp-block-columns.columns-9, .site-main .wp-block-columns.columns-9 { display: grid; grid-gap: 1em; grid-template-columns: repeat(2, 1fr); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } .editor-styles-wrapper .wp-block-columns.columns-9 .wp-block-column, .gutenberg-content .wp-block-columns.columns-9 .wp-block-column, .site-main .wp-block-columns.columns-9 .wp-block-column { margin: 0; width: 100%; } } @media (max-width: 480px) { .editor-styles-wrapper .wp-block-columns.columns-9, .gutenberg-content .wp-block-columns.columns-9, .site-main .wp-block-columns.columns-9 { grid-template-columns: repeat(1, 1fr); } } .editor-styles-wrapper .wp-block-cover__inner-container, .gutenberg-content .wp-block-cover__inner-container, .site-main .wp-block-cover__inner-container { padding-left: var(--padding-container-horizontal); padding-right: var(--padding-container-horizontal); } .editor-styles-wrapper .wp-block-cover__inner-container p, .gutenberg-content .wp-block-cover__inner-container p, .site-main .wp-block-cover__inner-container p { line-height: var(--line-height-core-heading); } .editor-styles-wrapper .wp-block-embed iframe, .editor-styles-wrapper .wp-block-embed video, .gutenberg-content .wp-block-embed iframe, .gutenberg-content .wp-block-embed video, .site-main .wp-block-embed iframe, .site-main .wp-block-embed video { max-width: 100%; width: 100%; } @media (max-width: 1480px) { .editor-styles-wrapper .wp-block-embed.alignwide, .editor-styles-wrapper .wp-block-embed.alignfull, .gutenberg-content .wp-block-embed.alignwide, .gutenberg-content .wp-block-embed.alignfull, .site-main .wp-block-embed.alignwide, .site-main .wp-block-embed.alignfull { width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } } .editor-styles-wrapper .wp-block-embed.alignfull, .gutenberg-content .wp-block-embed.alignfull, .site-main .wp-block-embed.alignfull { margin-left: 0; margin-right: 0; max-width: 100%; padding-left: 0; padding-right: 0; width: 100%; } .editor-styles-wrapper .is-grid, .editor-styles-wrapper .wp-block-gallery, .gutenberg-content .is-grid, .gutenberg-content .wp-block-gallery, .site-main .is-grid, .site-main .wp-block-gallery { overflow: hidden; } .editor-styles-wrapper .is-grid figcaption, .editor-styles-wrapper .wp-block-gallery figcaption, .gutenberg-content .is-grid figcaption, .gutenberg-content .wp-block-gallery figcaption, .site-main .is-grid figcaption, .site-main .wp-block-gallery figcaption { color: var(--color-white); font-size: var(--font-size-16); line-height: 1.55; margin-bottom: var(--margin-between-text-elements); width: 100%; } .editor-styles-wrapper .is-grid img, .editor-styles-wrapper .wp-block-gallery img, .gutenberg-content .is-grid img, .gutenberg-content .wp-block-gallery img, .site-main .is-grid img, .site-main .wp-block-gallery img { margin-bottom: 0; } .editor-styles-wrapper .is-grid.alignwide, .editor-styles-wrapper .wp-block-gallery.alignwide, .gutenberg-content .is-grid.alignwide, .gutenberg-content .wp-block-gallery.alignwide, .site-main .is-grid.alignwide, .site-main .wp-block-gallery.alignwide { padding-left: var(--padding-container-horizontal); padding-right: var(--padding-container-horizontal); } .editor-styles-wrapper .is-grid.alignfull, .editor-styles-wrapper .wp-block-gallery.alignfull, .gutenberg-content .is-grid.alignfull, .gutenberg-content .wp-block-gallery.alignfull, .site-main .is-grid.alignfull, .site-main .wp-block-gallery.alignfull { padding-left: var(--padding-container-horizontal); padding-right: var(--padding-container-horizontal); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } .editor-styles-wrapper .is-grid, .editor-styles-wrapper .blocks-gallery-grid, .gutenberg-content .is-grid, .gutenberg-content .blocks-gallery-grid, .site-main .is-grid, .site-main .blocks-gallery-grid { display: grid; padding-left: 0; } .editor-styles-wrapper .is-grid .blocks-gallery-item, .editor-styles-wrapper .blocks-gallery-grid .blocks-gallery-item, .gutenberg-content .is-grid .blocks-gallery-item, .gutenberg-content .blocks-gallery-grid .blocks-gallery-item, .site-main .is-grid .blocks-gallery-item, .site-main .blocks-gallery-grid .blocks-gallery-item { margin: 0; width: 100%; } .editor-styles-wrapper .is-grid.columns-2, .editor-styles-wrapper .columns-2 .blocks-gallery-grid, .gutenberg-content .is-grid.columns-2, .gutenberg-content .columns-2 .blocks-gallery-grid, .site-main .is-grid.columns-2, .site-main .columns-2 .blocks-gallery-grid { grid-gap: 3rem; grid-template-columns: repeat(2, 1fr); } @media (max-width: 1000px) { .editor-styles-wrapper .is-grid.columns-2, .editor-styles-wrapper .columns-2 .blocks-gallery-grid, .gutenberg-content .is-grid.columns-2, .gutenberg-content .columns-2 .blocks-gallery-grid, .site-main .is-grid.columns-2, .site-main .columns-2 .blocks-gallery-grid { grid-template-columns: repeat(3, 1fr); } } @media (max-width: 670px) { .editor-styles-wrapper .is-grid.columns-2, .editor-styles-wrapper .columns-2 .blocks-gallery-grid, .gutenberg-content .is-grid.columns-2, .gutenberg-content .columns-2 .blocks-gallery-grid, .site-main .is-grid.columns-2, .site-main .columns-2 .blocks-gallery-grid { grid-gap: 2rem; grid-template-columns: repeat(2, 1fr); } } .editor-styles-wrapper .is-grid.columns-3, .editor-styles-wrapper .columns-3 .blocks-gallery-grid, .gutenberg-content .is-grid.columns-3, .gutenberg-content .columns-3 .blocks-gallery-grid, .site-main .is-grid.columns-3, .site-main .columns-3 .blocks-gallery-grid { grid-gap: 3rem; grid-template-columns: repeat(3, 1fr); } @media (max-width: 1000px) { .editor-styles-wrapper .is-grid.columns-3, .editor-styles-wrapper .columns-3 .blocks-gallery-grid, .gutenberg-content .is-grid.columns-3, .gutenberg-content .columns-3 .blocks-gallery-grid, .site-main .is-grid.columns-3, .site-main .columns-3 .blocks-gallery-grid { grid-template-columns: repeat(3, 1fr); } } @media (max-width: 670px) { .editor-styles-wrapper .is-grid.columns-3, .editor-styles-wrapper .columns-3 .blocks-gallery-grid, .gutenberg-content .is-grid.columns-3, .gutenberg-content .columns-3 .blocks-gallery-grid, .site-main .is-grid.columns-3, .site-main .columns-3 .blocks-gallery-grid { grid-gap: 2rem; grid-template-columns: repeat(2, 1fr); } } .editor-styles-wrapper .is-grid.columns-4, .editor-styles-wrapper .columns-4 .blocks-gallery-grid, .gutenberg-content .is-grid.columns-4, .gutenberg-content .columns-4 .blocks-gallery-grid, .site-main .is-grid.columns-4, .site-main .columns-4 .blocks-gallery-grid { grid-gap: 3rem; grid-template-columns: repeat(4, 1fr); } @media (max-width: 1000px) { .editor-styles-wrapper .is-grid.columns-4, .editor-styles-wrapper .columns-4 .blocks-gallery-grid, .gutenberg-content .is-grid.columns-4, .gutenberg-content .columns-4 .blocks-gallery-grid, .site-main .is-grid.columns-4, .site-main .columns-4 .blocks-gallery-grid { grid-template-columns: repeat(3, 1fr); } } @media (max-width: 670px) { .editor-styles-wrapper .is-grid.columns-4, .editor-styles-wrapper .columns-4 .blocks-gallery-grid, .gutenberg-content .is-grid.columns-4, .gutenberg-content .columns-4 .blocks-gallery-grid, .site-main .is-grid.columns-4, .site-main .columns-4 .blocks-gallery-grid { grid-gap: 2rem; grid-template-columns: repeat(2, 1fr); } } .editor-styles-wrapper .is-grid.columns-5, .editor-styles-wrapper .columns-5 .blocks-gallery-grid, .gutenberg-content .is-grid.columns-5, .gutenberg-content .columns-5 .blocks-gallery-grid, .site-main .is-grid.columns-5, .site-main .columns-5 .blocks-gallery-grid { grid-gap: 3rem; grid-template-columns: repeat(5, 1fr); } @media (max-width: 1000px) { .editor-styles-wrapper .is-grid.columns-5, .editor-styles-wrapper .columns-5 .blocks-gallery-grid, .gutenberg-content .is-grid.columns-5, .gutenberg-content .columns-5 .blocks-gallery-grid, .site-main .is-grid.columns-5, .site-main .columns-5 .blocks-gallery-grid { grid-template-columns: repeat(3, 1fr); } } @media (max-width: 670px) { .editor-styles-wrapper .is-grid.columns-5, .editor-styles-wrapper .columns-5 .blocks-gallery-grid, .gutenberg-content .is-grid.columns-5, .gutenberg-content .columns-5 .blocks-gallery-grid, .site-main .is-grid.columns-5, .site-main .columns-5 .blocks-gallery-grid { grid-gap: 2rem; grid-template-columns: repeat(2, 1fr); } } .editor-styles-wrapper .is-grid.columns-6, .editor-styles-wrapper .columns-6 .blocks-gallery-grid, .gutenberg-content .is-grid.columns-6, .gutenberg-content .columns-6 .blocks-gallery-grid, .site-main .is-grid.columns-6, .site-main .columns-6 .blocks-gallery-grid { grid-gap: 3rem; grid-template-columns: repeat(6, 1fr); } @media (max-width: 1000px) { .editor-styles-wrapper .is-grid.columns-6, .editor-styles-wrapper .columns-6 .blocks-gallery-grid, .gutenberg-content .is-grid.columns-6, .gutenberg-content .columns-6 .blocks-gallery-grid, .site-main .is-grid.columns-6, .site-main .columns-6 .blocks-gallery-grid { grid-template-columns: repeat(3, 1fr); } } @media (max-width: 670px) { .editor-styles-wrapper .is-grid.columns-6, .editor-styles-wrapper .columns-6 .blocks-gallery-grid, .gutenberg-content .is-grid.columns-6, .gutenberg-content .columns-6 .blocks-gallery-grid, .site-main .is-grid.columns-6, .site-main .columns-6 .blocks-gallery-grid { grid-gap: 2rem; grid-template-columns: repeat(2, 1fr); } } .editor-styles-wrapper .is-grid.columns-7, .editor-styles-wrapper .columns-7 .blocks-gallery-grid, .gutenberg-content .is-grid.columns-7, .gutenberg-content .columns-7 .blocks-gallery-grid, .site-main .is-grid.columns-7, .site-main .columns-7 .blocks-gallery-grid { grid-gap: 3rem; grid-template-columns: repeat(7, 1fr); } @media (max-width: 1000px) { .editor-styles-wrapper .is-grid.columns-7, .editor-styles-wrapper .columns-7 .blocks-gallery-grid, .gutenberg-content .is-grid.columns-7, .gutenberg-content .columns-7 .blocks-gallery-grid, .site-main .is-grid.columns-7, .site-main .columns-7 .blocks-gallery-grid { grid-template-columns: repeat(3, 1fr); } } @media (max-width: 670px) { .editor-styles-wrapper .is-grid.columns-7, .editor-styles-wrapper .columns-7 .blocks-gallery-grid, .gutenberg-content .is-grid.columns-7, .gutenberg-content .columns-7 .blocks-gallery-grid, .site-main .is-grid.columns-7, .site-main .columns-7 .blocks-gallery-grid { grid-gap: 2rem; grid-template-columns: repeat(2, 1fr); } } .editor-styles-wrapper .is-grid.columns-8, .editor-styles-wrapper .columns-8 .blocks-gallery-grid, .gutenberg-content .is-grid.columns-8, .gutenberg-content .columns-8 .blocks-gallery-grid, .site-main .is-grid.columns-8, .site-main .columns-8 .blocks-gallery-grid { grid-gap: 3rem; grid-template-columns: repeat(8, 1fr); } @media (max-width: 1000px) { .editor-styles-wrapper .is-grid.columns-8, .editor-styles-wrapper .columns-8 .blocks-gallery-grid, .gutenberg-content .is-grid.columns-8, .gutenberg-content .columns-8 .blocks-gallery-grid, .site-main .is-grid.columns-8, .site-main .columns-8 .blocks-gallery-grid { grid-template-columns: repeat(3, 1fr); } } @media (max-width: 670px) { .editor-styles-wrapper .is-grid.columns-8, .editor-styles-wrapper .columns-8 .blocks-gallery-grid, .gutenberg-content .is-grid.columns-8, .gutenberg-content .columns-8 .blocks-gallery-grid, .site-main .is-grid.columns-8, .site-main .columns-8 .blocks-gallery-grid { grid-gap: 2rem; grid-template-columns: repeat(2, 1fr); } } .editor-styles-wrapper .is-grid.columns-9, .editor-styles-wrapper .columns-9 .blocks-gallery-grid, .gutenberg-content .is-grid.columns-9, .gutenberg-content .columns-9 .blocks-gallery-grid, .site-main .is-grid.columns-9, .site-main .columns-9 .blocks-gallery-grid { grid-gap: 3rem; grid-template-columns: repeat(9, 1fr); } @media (max-width: 1000px) { .editor-styles-wrapper .is-grid.columns-9, .editor-styles-wrapper .columns-9 .blocks-gallery-grid, .gutenberg-content .is-grid.columns-9, .gutenberg-content .columns-9 .blocks-gallery-grid, .site-main .is-grid.columns-9, .site-main .columns-9 .blocks-gallery-grid { grid-template-columns: repeat(3, 1fr); } } @media (max-width: 670px) { .editor-styles-wrapper .is-grid.columns-9, .editor-styles-wrapper .columns-9 .blocks-gallery-grid, .gutenberg-content .is-grid.columns-9, .gutenberg-content .columns-9 .blocks-gallery-grid, .site-main .is-grid.columns-9, .site-main .columns-9 .blocks-gallery-grid { grid-gap: 2rem; grid-template-columns: repeat(2, 1fr); } } .editor-styles-wrapper .blocks-gallery-item > figure figcaption, .gutenberg-content .blocks-gallery-item > figure figcaption, .site-main .blocks-gallery-item > figure figcaption { margin-bottom: 0; } .editor-styles-wrapper hr, .editor-styles-wrapper .wp-block-separator, .gutenberg-content hr, .gutenberg-content .wp-block-separator, .site-main hr, .site-main .wp-block-separator { margin-bottom: calc(var(--margin-between-paragraphs) * 2); margin-top: calc(var(--margin-between-paragraphs) * 2); } .editor-styles-wrapper .wp-block-separator.is-style-default, .gutenberg-content .wp-block-separator.is-style-default, .site-main .wp-block-separator.is-style-default { max-width: 800px; } .editor-styles-wrapper h1, .editor-styles-wrapper h2, .editor-styles-wrapper h3, .editor-styles-wrapper h4, .editor-styles-wrapper h5, .gutenberg-content h1, .gutenberg-content h2, .gutenberg-content h3, .gutenberg-content h4, .gutenberg-content h5, .site-main h1, .site-main h2, .site-main h3, .site-main h4, .site-main h5 { line-height: var(--line-height-core-heading); } .editor-styles-wrapper h1:first-child, .editor-styles-wrapper h2:first-child, .editor-styles-wrapper h3:first-child, .editor-styles-wrapper h4:first-child, .editor-styles-wrapper h5:first-child, .editor-styles-wrapper h6:first-child, .gutenberg-content h1:first-child, .gutenberg-content h2:first-child, .gutenberg-content h3:first-child, .gutenberg-content h4:first-child, .gutenberg-content h5:first-child, .gutenberg-content h6:first-child, .site-main h1:first-child, .site-main h2:first-child, .site-main h3:first-child, .site-main h4:first-child, .site-main h5:first-child, .site-main h6:first-child { margin-top: 0; } .editor-styles-wrapper .wp-block-image, .gutenberg-content .wp-block-image, .site-main .wp-block-image { display: block; margin-bottom: var(--margin-wp-block-image); margin-top: var(--margin-wp-block-image); } .editor-styles-wrapper .wp-block-image.alignfull, .gutenberg-content .wp-block-image.alignfull, .site-main .wp-block-image.alignfull { padding-left: 0; padding-right: 0; } @media (min-width: 1480px) { .editor-styles-wrapper .wp-block-image.alignwide, .gutenberg-content .wp-block-image.alignwide, .site-main .wp-block-image.alignwide { padding-left: 0; padding-right: 0; } } @media (max-width: 1480px) { .editor-styles-wrapper .wp-block-image.alignwide, .gutenberg-content .wp-block-image.alignwide, .site-main .wp-block-image.alignwide { width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } } .editor-styles-wrapper .wp-block-image .alignwide img, .editor-styles-wrapper .wp-block-image .alignfull img, .gutenberg-content .wp-block-image .alignwide img, .gutenberg-content .wp-block-image .alignfull img, .site-main .wp-block-image .alignwide img, .site-main .wp-block-image .alignfull img { width: 100%; } .editor-styles-wrapper .wp-block-image .alignfull img, .gutenberg-content .wp-block-image .alignfull img, .site-main .wp-block-image .alignfull img { border-radius: 0; } .editor-styles-wrapper .wp-block-image > figure, .gutenberg-content .wp-block-image > figure, .site-main .wp-block-image > figure { display: block; width: auto; } .editor-styles-wrapper .wp-block-image > figure.alignleft, .editor-styles-wrapper .wp-block-image > figure.alignright, .gutenberg-content .wp-block-image > figure.alignleft, .gutenberg-content .wp-block-image > figure.alignright, .site-main .wp-block-image > figure.alignleft, .site-main .wp-block-image > figure.alignright { /* stylelint-disable csstools/value-no-unknown-custom-properties */ max-width: var(--width-child-img); /* stylelint-enable */ } .editor-styles-wrapper .wp-block-image figcaption, .gutenberg-content .wp-block-image figcaption, .site-main .wp-block-image figcaption { margin-bottom: 2rem; } @media (max-width: 480px) { .editor-styles-wrapper .wp-block-image.alignleft img, .editor-styles-wrapper .wp-block-image.alignright img, .editor-styles-wrapper .wp-block-image.aligncenter img, .gutenberg-content .wp-block-image.alignleft img, .gutenberg-content .wp-block-image.alignright img, .gutenberg-content .wp-block-image.aligncenter img, .site-main .wp-block-image.alignleft img, .site-main .wp-block-image.alignright img, .site-main .wp-block-image.aligncenter img { float: none; height: auto; width: 100%; } } .editor-styles-wrapper .wp-block-image .aligncenter, .gutenberg-content .wp-block-image .aligncenter, .site-main .wp-block-image .aligncenter { text-align: center; } .editor-styles-wrapper .wp-block-image .aligncenter img, .gutenberg-content .wp-block-image .aligncenter img, .site-main .wp-block-image .aligncenter img { margin-left: auto; margin-right: auto; } .editor-styles-wrapper .wp-block-categories-list, .editor-styles-wrapper ol:not([class]), .editor-styles-wrapper ul:not([class]), .gutenberg-content .wp-block-categories-list, .gutenberg-content ol:not([class]), .gutenberg-content ul:not([class]), .site-main .wp-block-categories-list, .site-main ol:not([class]), .site-main ul:not([class]) { padding-left: calc(2rem + var(--margin-between-paragraphs)); } .editor-styles-wrapper .has-larger-font-size, .editor-styles-wrapper .has-large-font-size, .gutenberg-content .has-larger-font-size, .gutenberg-content .has-large-font-size, .site-main .has-larger-font-size, .site-main .has-large-font-size { line-height: var(--line-height-headings); } @media (max-width: 480px) { .editor-styles-wrapper .has-large-font-size, .gutenberg-content .has-large-font-size, .site-main .has-large-font-size { font-size: var(--font-size-18); } } @media (max-width: 480px) { .editor-styles-wrapper .has-larger-font-size, .gutenberg-content .has-larger-font-size, .site-main .has-larger-font-size { font-size: var(--font-size-22); } } @media (max-width: 1480px) { .editor-styles-wrapper .has-background, .gutenberg-content .has-background, .site-main .has-background { width: calc(100% - calc(2.375em * 2)); } } @media (max-width: 1480px) { .editor-styles-wrapper .wp-block-preformatted, .gutenberg-content .wp-block-preformatted, .site-main .wp-block-preformatted { margin-left: var(--padding-container-horizontal); margin-right: var(--padding-container-horizontal); width: calc(100% - calc(var(--padding-container-horizontal) * 4)); } } .editor-styles-wrapper .wp-block-pullquote.alignwide, .editor-styles-wrapper .wp-block-pullquote.alignfull, .gutenberg-content .wp-block-pullquote.alignwide, .gutenberg-content .wp-block-pullquote.alignfull, .site-main .wp-block-pullquote.alignwide, .site-main .wp-block-pullquote.alignfull { padding-left: 0; padding-right: 0; } @media (max-width: 1480px) { .editor-styles-wrapper .wp-block-pullquote.alignwide, .editor-styles-wrapper .wp-block-pullquote.alignfull, .gutenberg-content .wp-block-pullquote.alignwide, .gutenberg-content .wp-block-pullquote.alignfull, .site-main .wp-block-pullquote.alignwide, .site-main .wp-block-pullquote.alignfull { margin-left: var(--padding-container-horizontal); margin-right: var(--padding-container-horizontal); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } } .editor-styles-wrapper .wp-block-pullquote.alignfull, .gutenberg-content .wp-block-pullquote.alignfull, .site-main .wp-block-pullquote.alignfull { margin-left: var(--padding-container-horizontal); margin-right: var(--padding-container-horizontal); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } .editor-styles-wrapper th, .gutenberg-content th, .site-main th { -webkit-backface-visibility: hidden; backface-visibility: hidden; background-color: var(--color-scropion); color: var(--color-white); font-weight: var(--font-weight-bold); overflow: hidden; text-align: left; } .editor-styles-wrapper td, .gutenberg-content td, .site-main td { color: var(--color-black); } .editor-styles-wrapper td, .editor-styles-wrapper th, .editor-styles-wrapper .wp-block-table td, .editor-styles-wrapper .wp-block-table th, .gutenberg-content td, .gutenberg-content th, .gutenberg-content .wp-block-table td, .gutenberg-content .wp-block-table th, .site-main td, .site-main th, .site-main .wp-block-table td, .site-main .wp-block-table th { border: 0; font-family: var(--font-paragraph); font-size: var(--font-size-14); height: 2rem; padding: .6rem 1.5rem; } .editor-styles-wrapper tr:nth-child(even), .gutenberg-content tr:nth-child(even), .site-main tr:nth-child(even) { background-color: var(--color-background-table-cell-even); } .editor-styles-wrapper tr:nth-child(odd), .gutenberg-content tr:nth-child(odd), .site-main tr:nth-child(odd) { background-color: var(--color-background-table-cell-odd); } .editor-styles-wrapper thead, .editor-styles-wrapper .wp-block-table thead, .gutenberg-content thead, .gutenberg-content .wp-block-table thead, .site-main thead, .site-main .wp-block-table thead { border: 0; } .editor-styles-wrapper thead th:first-child, .editor-styles-wrapper .wp-block-table thead th:first-child, .gutenberg-content thead th:first-child, .gutenberg-content .wp-block-table thead th:first-child, .site-main thead th:first-child, .site-main .wp-block-table thead th:first-child { border-top-left-radius: 8px; } .editor-styles-wrapper thead th:last-child, .editor-styles-wrapper .wp-block-table thead th:last-child, .gutenberg-content thead th:last-child, .gutenberg-content .wp-block-table thead th:last-child, .site-main thead th:last-child, .site-main .wp-block-table thead th:last-child { border-top-right-radius: 8px; } .editor-styles-wrapper table, .gutenberg-content table, .site-main table { border-collapse: collapse; border-spacing: 0; } .editor-styles-wrapper .wp-block-table.alignfull, .gutenberg-content .wp-block-table.alignfull, .site-main .wp-block-table.alignfull { margin-left: var(--padding-container-horizontal); margin-right: var(--padding-container-horizontal); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } @media (max-width: 1480px) { .editor-styles-wrapper .wp-block-table.alignwide, .gutenberg-content .wp-block-table.alignwide, .site-main .wp-block-table.alignwide { margin-left: var(--padding-container-horizontal); margin-right: var(--padding-container-horizontal); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } } .editor-styles-wrapper .wp-block-text-columns.alignfull, .gutenberg-content .wp-block-text-columns.alignfull, .site-main .wp-block-text-columns.alignfull { padding-left: var(--padding-container-horizontal); padding-right: var(--padding-container-horizontal); } .editor-styles-wrapper .wp-block-text-columns.columns-1.alignfull, .gutenberg-content .wp-block-text-columns.columns-1.alignfull, .site-main .wp-block-text-columns.columns-1.alignfull { padding-left: var(--padding-container-horizontal); padding-right: var(--padding-container-horizontal); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } @media (max-width: 900px) { .editor-styles-wrapper .wp-block-text-columns.columns-1, .gutenberg-content .wp-block-text-columns.columns-1, .site-main .wp-block-text-columns.columns-1 { display: grid; grid-gap: 1em; grid-template-columns: repeat(2, 1fr); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } .editor-styles-wrapper .wp-block-text-columns.columns-1 .wp-block-column, .gutenberg-content .wp-block-text-columns.columns-1 .wp-block-column, .site-main .wp-block-text-columns.columns-1 .wp-block-column { margin: 0; width: 100%; } } @media (max-width: 480px) { .editor-styles-wrapper .wp-block-text-columns.columns-1, .gutenberg-content .wp-block-text-columns.columns-1, .site-main .wp-block-text-columns.columns-1 { grid-template-columns: repeat(1, 1fr); } } .editor-styles-wrapper .wp-block-text-columns.columns-2.alignfull, .gutenberg-content .wp-block-text-columns.columns-2.alignfull, .site-main .wp-block-text-columns.columns-2.alignfull { padding-left: var(--padding-container-horizontal); padding-right: var(--padding-container-horizontal); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } @media (max-width: 900px) { .editor-styles-wrapper .wp-block-text-columns.columns-2, .gutenberg-content .wp-block-text-columns.columns-2, .site-main .wp-block-text-columns.columns-2 { display: grid; grid-gap: 1em; grid-template-columns: repeat(2, 1fr); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } .editor-styles-wrapper .wp-block-text-columns.columns-2 .wp-block-column, .gutenberg-content .wp-block-text-columns.columns-2 .wp-block-column, .site-main .wp-block-text-columns.columns-2 .wp-block-column { margin: 0; width: 100%; } } @media (max-width: 480px) { .editor-styles-wrapper .wp-block-text-columns.columns-2, .gutenberg-content .wp-block-text-columns.columns-2, .site-main .wp-block-text-columns.columns-2 { grid-template-columns: repeat(1, 1fr); } } .editor-styles-wrapper .wp-block-text-columns.columns-3.alignfull, .gutenberg-content .wp-block-text-columns.columns-3.alignfull, .site-main .wp-block-text-columns.columns-3.alignfull { padding-left: var(--padding-container-horizontal); padding-right: var(--padding-container-horizontal); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } @media (max-width: 900px) { .editor-styles-wrapper .wp-block-text-columns.columns-3, .gutenberg-content .wp-block-text-columns.columns-3, .site-main .wp-block-text-columns.columns-3 { display: grid; grid-gap: 1em; grid-template-columns: repeat(2, 1fr); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } .editor-styles-wrapper .wp-block-text-columns.columns-3 .wp-block-column, .gutenberg-content .wp-block-text-columns.columns-3 .wp-block-column, .site-main .wp-block-text-columns.columns-3 .wp-block-column { margin: 0; width: 100%; } } @media (max-width: 480px) { .editor-styles-wrapper .wp-block-text-columns.columns-3, .gutenberg-content .wp-block-text-columns.columns-3, .site-main .wp-block-text-columns.columns-3 { grid-template-columns: repeat(1, 1fr); } } .editor-styles-wrapper .wp-block-text-columns.columns-4.alignfull, .gutenberg-content .wp-block-text-columns.columns-4.alignfull, .site-main .wp-block-text-columns.columns-4.alignfull { padding-left: var(--padding-container-horizontal); padding-right: var(--padding-container-horizontal); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } @media (max-width: 900px) { .editor-styles-wrapper .wp-block-text-columns.columns-4, .gutenberg-content .wp-block-text-columns.columns-4, .site-main .wp-block-text-columns.columns-4 { display: grid; grid-gap: 1em; grid-template-columns: repeat(2, 1fr); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } .editor-styles-wrapper .wp-block-text-columns.columns-4 .wp-block-column, .gutenberg-content .wp-block-text-columns.columns-4 .wp-block-column, .site-main .wp-block-text-columns.columns-4 .wp-block-column { margin: 0; width: 100%; } } @media (max-width: 480px) { .editor-styles-wrapper .wp-block-text-columns.columns-4, .gutenberg-content .wp-block-text-columns.columns-4, .site-main .wp-block-text-columns.columns-4 { grid-template-columns: repeat(1, 1fr); } } .editor-styles-wrapper .wp-block-text-columns.columns-5.alignfull, .gutenberg-content .wp-block-text-columns.columns-5.alignfull, .site-main .wp-block-text-columns.columns-5.alignfull { padding-left: var(--padding-container-horizontal); padding-right: var(--padding-container-horizontal); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } @media (max-width: 900px) { .editor-styles-wrapper .wp-block-text-columns.columns-5, .gutenberg-content .wp-block-text-columns.columns-5, .site-main .wp-block-text-columns.columns-5 { display: grid; grid-gap: 1em; grid-template-columns: repeat(2, 1fr); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } .editor-styles-wrapper .wp-block-text-columns.columns-5 .wp-block-column, .gutenberg-content .wp-block-text-columns.columns-5 .wp-block-column, .site-main .wp-block-text-columns.columns-5 .wp-block-column { margin: 0; width: 100%; } } @media (max-width: 480px) { .editor-styles-wrapper .wp-block-text-columns.columns-5, .gutenberg-content .wp-block-text-columns.columns-5, .site-main .wp-block-text-columns.columns-5 { grid-template-columns: repeat(1, 1fr); } } .editor-styles-wrapper .wp-block-text-columns.columns-6.alignfull, .gutenberg-content .wp-block-text-columns.columns-6.alignfull, .site-main .wp-block-text-columns.columns-6.alignfull { padding-left: var(--padding-container-horizontal); padding-right: var(--padding-container-horizontal); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } @media (max-width: 900px) { .editor-styles-wrapper .wp-block-text-columns.columns-6, .gutenberg-content .wp-block-text-columns.columns-6, .site-main .wp-block-text-columns.columns-6 { display: grid; grid-gap: 1em; grid-template-columns: repeat(2, 1fr); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } .editor-styles-wrapper .wp-block-text-columns.columns-6 .wp-block-column, .gutenberg-content .wp-block-text-columns.columns-6 .wp-block-column, .site-main .wp-block-text-columns.columns-6 .wp-block-column { margin: 0; width: 100%; } } @media (max-width: 480px) { .editor-styles-wrapper .wp-block-text-columns.columns-6, .gutenberg-content .wp-block-text-columns.columns-6, .site-main .wp-block-text-columns.columns-6 { grid-template-columns: repeat(1, 1fr); } } .editor-styles-wrapper .wp-block-text-columns.columns-7.alignfull, .gutenberg-content .wp-block-text-columns.columns-7.alignfull, .site-main .wp-block-text-columns.columns-7.alignfull { padding-left: var(--padding-container-horizontal); padding-right: var(--padding-container-horizontal); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } @media (max-width: 900px) { .editor-styles-wrapper .wp-block-text-columns.columns-7, .gutenberg-content .wp-block-text-columns.columns-7, .site-main .wp-block-text-columns.columns-7 { display: grid; grid-gap: 1em; grid-template-columns: repeat(2, 1fr); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } .editor-styles-wrapper .wp-block-text-columns.columns-7 .wp-block-column, .gutenberg-content .wp-block-text-columns.columns-7 .wp-block-column, .site-main .wp-block-text-columns.columns-7 .wp-block-column { margin: 0; width: 100%; } } @media (max-width: 480px) { .editor-styles-wrapper .wp-block-text-columns.columns-7, .gutenberg-content .wp-block-text-columns.columns-7, .site-main .wp-block-text-columns.columns-7 { grid-template-columns: repeat(1, 1fr); } } .editor-styles-wrapper .wp-block-text-columns.columns-8.alignfull, .gutenberg-content .wp-block-text-columns.columns-8.alignfull, .site-main .wp-block-text-columns.columns-8.alignfull { padding-left: var(--padding-container-horizontal); padding-right: var(--padding-container-horizontal); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } @media (max-width: 900px) { .editor-styles-wrapper .wp-block-text-columns.columns-8, .gutenberg-content .wp-block-text-columns.columns-8, .site-main .wp-block-text-columns.columns-8 { display: grid; grid-gap: 1em; grid-template-columns: repeat(2, 1fr); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } .editor-styles-wrapper .wp-block-text-columns.columns-8 .wp-block-column, .gutenberg-content .wp-block-text-columns.columns-8 .wp-block-column, .site-main .wp-block-text-columns.columns-8 .wp-block-column { margin: 0; width: 100%; } } @media (max-width: 480px) { .editor-styles-wrapper .wp-block-text-columns.columns-8, .gutenberg-content .wp-block-text-columns.columns-8, .site-main .wp-block-text-columns.columns-8 { grid-template-columns: repeat(1, 1fr); } } .editor-styles-wrapper .wp-block-text-columns.columns-9.alignfull, .gutenberg-content .wp-block-text-columns.columns-9.alignfull, .site-main .wp-block-text-columns.columns-9.alignfull { padding-left: var(--padding-container-horizontal); padding-right: var(--padding-container-horizontal); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } @media (max-width: 900px) { .editor-styles-wrapper .wp-block-text-columns.columns-9, .gutenberg-content .wp-block-text-columns.columns-9, .site-main .wp-block-text-columns.columns-9 { display: grid; grid-gap: 1em; grid-template-columns: repeat(2, 1fr); width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } .editor-styles-wrapper .wp-block-text-columns.columns-9 .wp-block-column, .gutenberg-content .wp-block-text-columns.columns-9 .wp-block-column, .site-main .wp-block-text-columns.columns-9 .wp-block-column { margin: 0; width: 100%; } } @media (max-width: 480px) { .editor-styles-wrapper .wp-block-text-columns.columns-9, .gutenberg-content .wp-block-text-columns.columns-9, .site-main .wp-block-text-columns.columns-9 { grid-template-columns: repeat(1, 1fr); } } @media (max-width: 1480px) { .editor-styles-wrapper .wp-block-verse, .gutenberg-content .wp-block-verse, .site-main .wp-block-verse { margin-left: var(--padding-container-horizontal); margin-right: var(--padding-container-horizontal); width: calc(100% - calc(var(--padding-container-horizontal) * 4)); } } .editor-styles-wrapper .wp-block-video video, .gutenberg-content .wp-block-video video, .site-main .wp-block-video video { max-width: 100%; width: 100%; } @media (max-width: 1480px) { .editor-styles-wrapper .wp-block-video.alignwide, .editor-styles-wrapper .wp-block-video.alignfull, .gutenberg-content .wp-block-video.alignwide, .gutenberg-content .wp-block-video.alignfull, .site-main .wp-block-video.alignwide, .site-main .wp-block-video.alignfull { width: calc(100% - calc(var(--padding-container-horizontal) * 2)); } } .editor-styles-wrapper .wp-block-video.alignfull, .gutenberg-content .wp-block-video.alignfull, .site-main .wp-block-video.alignfull { margin-left: 0; margin-right: 0; max-width: 100%; padding-left: 0; padding-right: 0; width: 100%; } .editor-styles-wrapper .wp-block.is-style-boxed, .editor-styles-wrapper .is-style-boxed, .gutenberg-content .wp-block.is-style-boxed, .gutenberg-content .is-style-boxed, .site-main .wp-block.is-style-boxed, .site-main .is-style-boxed { border: 2px solid var(--color-paragraph); color: var(--color-paragraph); font-size: 17px; font-style: normal; font-weight: var(--font-weight-medium); line-height: var(--line-height-paragraphs-blog); padding: 2rem; width: calc(100% - 4rem); } @media (min-width: 840px) { .editor-styles-wrapper .is-style-boxed, .gutenberg-content .is-style-boxed, .site-main .is-style-boxed { transform: translate(2rem, 0); } } .editor-styles-wrapper .wp-block-button__link, .gutenberg-content .wp-block-button__link, .site-main .wp-block-button__link { -webkit-appearance: none; -moz-appearance: none; appearance: none; background-color: var(--color-button-background); border: var(--border-width-input-field) solid var(--color-button-background); border-radius: var(--border-radius-input-field); color: var(--color-button); cursor: pointer; display: inline-block; font-family: var(--font-paragraph); font-size: var(--font-size-16); font-weight: var(--font-weight-semibold); line-height: 19.6364px; margin-bottom: 0; max-width: 230px; overflow: hidden; padding-bottom: calc(14px - calc(var(--border-width-input-field) * 2)); padding-left: calc(21px - calc(var(--border-width-input-field) * 2)); padding-right: calc(21px - calc(var(--border-width-input-field) * 2)); padding-top: calc(14px - calc(var(--border-width-input-field) * 2)); position: relative; text-decoration: none; text-overflow: ellipsis; transition: all 0.08s cubic-bezier(0.25, 0.46, 0.45, 0.94); white-space: nowrap; width: auto; /* stylelint-disable a11y/no-display-none */ /* stylelint-enable */ } .editor-styles-wrapper .wp-block-button__link.is-external-link::after, .gutenberg-content .wp-block-button__link.is-external-link::after, .site-main .wp-block-button__link.is-external-link::after { display: none; } .editor-styles-wrapper .wp-block-button__link.focus, .editor-styles-wrapper .wp-block-button__link:hover, .editor-styles-wrapper .wp-block-button__link:focus, .gutenberg-content .wp-block-button__link.focus, .gutenberg-content .wp-block-button__link:hover, .gutenberg-content .wp-block-button__link:focus, .site-main .wp-block-button__link.focus, .site-main .wp-block-button__link:hover, .site-main .wp-block-button__link:focus { background-color: var(--color-button-background-hover); border: var(--border-width-input-field) solid var(--color-button-background-hover); color: var(--color-button-hover); } .editor-styles-wrapper .wp-block-file .wp-block-file__button, .gutenberg-content .wp-block-file .wp-block-file__button, .site-main .wp-block-file .wp-block-file__button { font-size: var(--font-size-16); line-height: 20.9091px; padding-bottom: calc(10px - calc(var(--border-width-input-field) * 2)); padding-left: calc(21px - calc(var(--border-width-input-field) * 2)); padding-right: calc(21px - calc(var(--border-width-input-field) * 2)); padding-top: calc(10px - calc(var(--border-width-input-field) * 2)); font-size: .8em; padding: .3em .8em; } .editor-styles-wrapper .block-error, .gutenberg-content .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, .gutenberg-content .block-error .container, .site-main .block-error .container { padding-bottom: 2rem; padding-top: 2rem; } .editor-styles-wrapper .block-error p, .gutenberg-content .block-error p, .site-main .block-error p { font-size: var(--font-size-14); } .editor-styles-wrapper .block-error p.error-message, .gutenberg-content .block-error p.error-message, .site-main .block-error p.error-message { font-size: var(--font-size-16); } .editor-styles-wrapper .block-error h2, .gutenberg-content .block-error h2, .site-main .block-error h2 { font-size: var(--font-size-h4); } .editor-styles-wrapper .alignleft > *, .gutenberg-content .alignleft > * { float: left; } .editor-styles-wrapper .alignright > *, .gutenberg-content .alignright > * { float: right; } .editor-styles-wrapper .alignleft > img, .gutenberg-content .alignleft > img { margin-bottom: var(--margin-between-paragraphs); margin-right: var(--padding-container-horizontal); margin-top: var(--margin-between-paragraphs); } .editor-styles-wrapper .alignleft > img + figcaption, .gutenberg-content .alignleft > img + figcaption { margin-top: 0; } .editor-styles-wrapper .alignright > img, .gutenberg-content .alignright > img { margin-bottom: var(--margin-between-paragraphs); margin-left: var(--padding-container-horizontal); margin-top: var(--margin-between-paragraphs); } .editor-styles-wrapper .alignright > img + figcaption, .gutenberg-content .alignright > img + figcaption { margin-top: 0; } @media (min-width: 1480px) { .editor-styles-wrapper .alignwide, .gutenberg-content .alignwide { max-width: 1200px; width: 100%; } } @media (min-width: 1480px) { .editor-styles-wrapper .alignfull, .gutenberg-content .alignfull { margin-bottom: var(--padding-block); margin-top: var(--padding-block); max-width: 100%; width: 100%; } } .editor-styles-wrapper .alignfull.wp-block-image img, .gutenberg-content .alignfull.wp-block-image img { border-radius: 0; } /* stylelint-disable selector-max-combinators, selector-max-compound-selectors */ .editor-styles-wrapper figcaption, .editor-styles-wrapper cite, .editor-styles-wrapper small, .gutenberg-content figcaption, .gutenberg-content cite, .gutenberg-content small { border: 0; color: var(--color-caption); font-size: var(--font-size-captions); font-style: normal; margin-bottom: 6rem; margin-left: auto; margin-right: auto; margin-top: 3rem; max-width: 800px; padding-bottom: 0; text-align: center; width: 100%; } @media (max-width: 480px) { .editor-styles-wrapper figcaption, .editor-styles-wrapper cite, .editor-styles-wrapper small, .gutenberg-content figcaption, .gutenberg-content cite, .gutenberg-content small { margin-top: 2rem; } } .editor-styles-wrapper .wp-block-image figcaption, .editor-styles-wrapper .wp-block-image .alignright > figcaption, .editor-styles-wrapper .wp-block-image .aligncenter > figcaption, .editor-styles-wrapper .wp-block-image.is-resized > figcaption, .gutenberg-content .wp-block-image figcaption, .gutenberg-content .wp-block-image .alignright > figcaption, .gutenberg-content .wp-block-image .aligncenter > figcaption, .gutenberg-content .wp-block-image.is-resized > figcaption { display: block; width: 100%; } .editor-styles-wrapper cite, .gutenberg-content cite { margin-bottom: 0; } .editor-styles-wrapper img, .gutenberg-content img { border-radius: 4px; } kbd { background-color: var(--color-kbd-background); border: 1px solid var(--color-kbd-border); border-radius: 4px; box-shadow: 0 1px 0 rgba(22, 22, 22, 0.2), 0 0 0 2px var(--color-white) inset; color: var(--color-paragraph); display: inline-block; line-height: 1.4; padding: 0 .5rem; text-shadow: 0 1px 0 var(--color-white); white-space: nowrap; } /* stylelint-disable a11y/no-display-none, no-descending-specificity, selector-max-pseudo-class */ a { color: var(--color-link-text); text-decoration: none; } a:hover, a:focus { color: var(--color-link-text); } .editor-styles-wrapper li > a::after, .gutenberg-content li > a::after { display: none; } .editor-styles-wrapper [data-type="core/paragraph"] > a, .editor-styles-wrapper li > a, .editor-styles-wrapper p > strong > a, .editor-styles-wrapper p > em > a, .editor-styles-wrapper p:not([class]) > a:not([class]), .editor-styles-wrapper p.has-text-align-left > a, .editor-styles-wrapper p.has-text-align-center > a, .editor-styles-wrapper p.has-text-align-right > a, .editor-styles-wrapper p.has-small-font-size > a, .editor-styles-wrapper figcaption > a, .editor-styles-wrapper p:not([class]) > a.is-external-link, .gutenberg-content [data-type="core/paragraph"] > a, .gutenberg-content li > a, .gutenberg-content p > strong > a, .gutenberg-content p > em > a, .gutenberg-content p:not([class]) > a:not([class]), .gutenberg-content p.has-text-align-left > a, .gutenberg-content p.has-text-align-center > a, .gutenberg-content p.has-text-align-right > a, .gutenberg-content p.has-small-font-size > a, .gutenberg-content figcaption > a, .gutenberg-content p:not([class]) > a.is-external-link { border-bottom: 1px solid var(--color-link-border-bottom); box-shadow: inset 0 0 0 var(--color-link-background-hover); color: var(--color-link-text); display: inline; text-decoration: none; transition: box-shadow 0.1s cubic-bezier(0.19, 1, 0.22, 1), color 0.1s cubic-bezier(0.19, 1, 0.22, 1); } .editor-styles-wrapper [data-type="core/paragraph"] > a::after, .editor-styles-wrapper li > a::after, .editor-styles-wrapper p > strong > a::after, .editor-styles-wrapper p > em > a::after, .editor-styles-wrapper p:not([class]) > a:not([class])::after, .editor-styles-wrapper p.has-text-align-left > a::after, .editor-styles-wrapper p.has-text-align-center > a::after, .editor-styles-wrapper p.has-text-align-right > a::after, .editor-styles-wrapper p.has-small-font-size > a::after, .editor-styles-wrapper figcaption > a::after, .editor-styles-wrapper p:not([class]) > a.is-external-link::after, .gutenberg-content [data-type="core/paragraph"] > a::after, .gutenberg-content li > a::after, .gutenberg-content p > strong > a::after, .gutenberg-content p > em > a::after, .gutenberg-content p:not([class]) > a:not([class])::after, .gutenberg-content p.has-text-align-left > a::after, .gutenberg-content p.has-text-align-center > a::after, .gutenberg-content p.has-text-align-right > a::after, .gutenberg-content p.has-small-font-size > a::after, .gutenberg-content figcaption > a::after, .gutenberg-content p:not([class]) > a.is-external-link::after { background-image: url("../../svg/external-link-styled-links.svg"); } .editor-styles-wrapper [data-type="core/paragraph"] > a:hover, .editor-styles-wrapper li > a:hover, .editor-styles-wrapper p > strong > a:hover, .editor-styles-wrapper p > em > a:hover, .editor-styles-wrapper p:not([class]) > a:not([class]):hover, .editor-styles-wrapper p.has-text-align-left > a:hover, .editor-styles-wrapper p.has-text-align-center > a:hover, .editor-styles-wrapper p.has-text-align-right > a:hover, .editor-styles-wrapper p.has-small-font-size > a:hover, .editor-styles-wrapper figcaption > a:hover, .editor-styles-wrapper p:not([class]) > a.is-external-link:hover, .gutenberg-content [data-type="core/paragraph"] > a:hover, .gutenberg-content li > a:hover, .gutenberg-content p > strong > a:hover, .gutenberg-content p > em > a:hover, .gutenberg-content p:not([class]) > a:not([class]):hover, .gutenberg-content p.has-text-align-left > a:hover, .gutenberg-content p.has-text-align-center > a:hover, .gutenberg-content p.has-text-align-right > a:hover, .gutenberg-content p.has-small-font-size > a:hover, .gutenberg-content figcaption > a:hover, .gutenberg-content p:not([class]) > a.is-external-link:hover { border-color: transparent; box-shadow: inset 0 -3.3rem 0 var(--color-link-background-hover); color: var(--color-link-text-hover); } .editor-styles-wrapper [data-type="core/paragraph"] > a:hover::after, .editor-styles-wrapper li > a:hover::after, .editor-styles-wrapper p > strong > a:hover::after, .editor-styles-wrapper p > em > a:hover::after, .editor-styles-wrapper p:not([class]) > a:not([class]):hover::after, .editor-styles-wrapper p.has-text-align-left > a:hover::after, .editor-styles-wrapper p.has-text-align-center > a:hover::after, .editor-styles-wrapper p.has-text-align-right > a:hover::after, .editor-styles-wrapper p.has-small-font-size > a:hover::after, .editor-styles-wrapper figcaption > a:hover::after, .editor-styles-wrapper p:not([class]) > a.is-external-link:hover::after, .gutenberg-content [data-type="core/paragraph"] > a:hover::after, .gutenberg-content li > a:hover::after, .gutenberg-content p > strong > a:hover::after, .gutenberg-content p > em > a:hover::after, .gutenberg-content p:not([class]) > a:not([class]):hover::after, .gutenberg-content p.has-text-align-left > a:hover::after, .gutenberg-content p.has-text-align-center > a:hover::after, .gutenberg-content p.has-text-align-right > a:hover::after, .gutenberg-content p.has-small-font-size > a:hover::after, .gutenberg-content figcaption > a:hover::after, .gutenberg-content p:not([class]) > a.is-external-link:hover::after { background-image: url("../../svg/external-link-white.svg"); } .editor-styles-wrapper [data-type="core/paragraph"] > a:focus, .editor-styles-wrapper li > a:focus, .editor-styles-wrapper p > strong > a:focus, .editor-styles-wrapper p > em > a:focus, .editor-styles-wrapper p:not([class]) > a:not([class]):focus, .editor-styles-wrapper p.has-text-align-left > a:focus, .editor-styles-wrapper p.has-text-align-center > a:focus, .editor-styles-wrapper p.has-text-align-right > a:focus, .editor-styles-wrapper p.has-small-font-size > a:focus, .editor-styles-wrapper figcaption > a:focus, .editor-styles-wrapper p:not([class]) > a.is-external-link:focus, .gutenberg-content [data-type="core/paragraph"] > a:focus, .gutenberg-content li > a:focus, .gutenberg-content p > strong > a:focus, .gutenberg-content p > em > a:focus, .gutenberg-content p:not([class]) > a:not([class]):focus, .gutenberg-content p.has-text-align-left > a:focus, .gutenberg-content p.has-text-align-center > a:focus, .gutenberg-content p.has-text-align-right > a:focus, .gutenberg-content p.has-small-font-size > a:focus, .gutenberg-content figcaption > a:focus, .gutenberg-content p:not([class]) > a.is-external-link:focus { background-color: transparent; border-color: var(--color-link-border-focus); box-shadow: none; color: var(--color-link-text-focus); text-decoration: none; } @media (prefers-reduced-motion: no-preference) { .editor-styles-wrapper [data-type="core/paragraph"] > a:focus, .editor-styles-wrapper li > a:focus, .editor-styles-wrapper p > strong > a:focus, .editor-styles-wrapper p > em > a:focus, .editor-styles-wrapper p:not([class]) > a:not([class]):focus, .editor-styles-wrapper p.has-text-align-left > a:focus, .editor-styles-wrapper p.has-text-align-center > a:focus, .editor-styles-wrapper p.has-text-align-right > a:focus, .editor-styles-wrapper p.has-small-font-size > a:focus, .editor-styles-wrapper figcaption > a:focus, .editor-styles-wrapper p:not([class]) > a.is-external-link:focus, .gutenberg-content [data-type="core/paragraph"] > a:focus, .gutenberg-content li > a:focus, .gutenberg-content p > strong > a:focus, .gutenberg-content p > em > a:focus, .gutenberg-content p:not([class]) > a:not([class]):focus, .gutenberg-content p.has-text-align-left > a:focus, .gutenberg-content p.has-text-align-center > a:focus, .gutenberg-content p.has-text-align-right > a:focus, .gutenberg-content p.has-small-font-size > a:focus, .gutenberg-content figcaption > a:focus, .gutenberg-content p:not([class]) > a.is-external-link:focus { outline-offset: 5px; transition: outline-offset .25s ease; } } .editor-styles-wrapper [data-type="core/paragraph"] > a:focus::after, .editor-styles-wrapper li > a:focus::after, .editor-styles-wrapper p > strong > a:focus::after, .editor-styles-wrapper p > em > a:focus::after, .editor-styles-wrapper p:not([class]) > a:not([class]):focus::after, .editor-styles-wrapper p.has-text-align-left > a:focus::after, .editor-styles-wrapper p.has-text-align-center > a:focus::after, .editor-styles-wrapper p.has-text-align-right > a:focus::after, .editor-styles-wrapper p.has-small-font-size > a:focus::after, .editor-styles-wrapper figcaption > a:focus::after, .editor-styles-wrapper p:not([class]) > a.is-external-link:focus::after, .gutenberg-content [data-type="core/paragraph"] > a:focus::after, .gutenberg-content li > a:focus::after, .gutenberg-content p > strong > a:focus::after, .gutenberg-content p > em > a:focus::after, .gutenberg-content p:not([class]) > a:not([class]):focus::after, .gutenberg-content p.has-text-align-left > a:focus::after, .gutenberg-content p.has-text-align-center > a:focus::after, .gutenberg-content p.has-text-align-right > a:focus::after, .gutenberg-content p.has-small-font-size > a:focus::after, .gutenberg-content figcaption > a:focus::after, .gutenberg-content p:not([class]) > a.is-external-link:focus::after { background-image: url("../../svg/external-link-black.svg"); } p { color: var(--color-paragraph); line-height: var(--line-height-paragraphs-blog); } /*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL25vZGVfbW9kdWxlcy9zYW5pdGl6ZS5jc3Mvc2FuaXRpemUuY3NzIiwiZ2xvYmFsLmNzcyIsIi4uL25vZGVfbW9kdWxlcy9zYW5pdGl6ZS5jc3MvcmVkdWNlLW1vdGlvbi5jc3MiLCJoZWxwZXJzL19oZXgtdG8tcmdiLnNjc3MiLCJoZWxwZXJzL190eXBvZ3JhcGh5LnNjc3MiLCJ2YXJpYWJsZXMvX2NvbG9ycy5zY3NzIiwidmFyaWFibGVzL19mb250LWZhY2Uuc2NzcyIsInZhcmlhYmxlcy9fZm9udC1mYW1pbHkuc2NzcyIsInZhcmlhYmxlcy9fZm9udC1zaXplcy5zY3NzIiwidmFyaWFibGVzL19mb3Jtcy5zY3NzIiwidmFyaWFibGVzL19zcGFjaW5ncy5zY3NzIiwiY29tcG9uZW50cy9fYnV0dG9uLnNjc3MiLCJjb21wb25lbnRzL19idXR0b24tc2l6ZS1zbWFsbC5zY3NzIiwiY29tcG9uZW50cy9fYnV0dG9uLXNpemUtbGFyZ2Uuc2NzcyIsImNvbXBvbmVudHMvX2hlYWRpbmctaGVyby5zY3NzIiwiYmFzZS9fYWNjZXNzaWJpbGl0eS5zY3NzIiwibmF2aWdhdGlvbi9fbmF2LWRlc2t0b3Auc2NzcyIsIm5hdmlnYXRpb24vX25hdi1tb2JpbGUuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9oYW1idXJnZXJzL19zYXNzL2hhbWJ1cmdlcnMvaGFtYnVyZ2Vycy5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2hhbWJ1cmdlcnMvX3Nhc3MvaGFtYnVyZ2Vycy9fYmFzZS5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2hhbWJ1cmdlcnMvX3Nhc3MvaGFtYnVyZ2Vycy90eXBlcy9fM2R4LnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvaGFtYnVyZ2Vycy9fc2Fzcy9oYW1idXJnZXJzL3R5cGVzL18zZHgtci5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2hhbWJ1cmdlcnMvX3Nhc3MvaGFtYnVyZ2Vycy90eXBlcy9fM2R5LnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvaGFtYnVyZ2Vycy9fc2Fzcy9oYW1idXJnZXJzL3R5cGVzL18zZHktci5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2hhbWJ1cmdlcnMvX3Nhc3MvaGFtYnVyZ2Vycy90eXBlcy9fM2R4eS5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2hhbWJ1cmdlcnMvX3Nhc3MvaGFtYnVyZ2Vycy90eXBlcy9fM2R4eS1yLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvaGFtYnVyZ2Vycy9fc2Fzcy9oYW1idXJnZXJzL3R5cGVzL19hcnJvdy5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2hhbWJ1cmdlcnMvX3Nhc3MvaGFtYnVyZ2Vycy90eXBlcy9fYXJyb3ctci5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2hhbWJ1cmdlcnMvX3Nhc3MvaGFtYnVyZ2Vycy90eXBlcy9fYXJyb3dhbHQuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9oYW1idXJnZXJzL19zYXNzL2hhbWJ1cmdlcnMvdHlwZXMvX2Fycm93YWx0LXIuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9oYW1idXJnZXJzL19zYXNzL2hhbWJ1cmdlcnMvdHlwZXMvX2Fycm93dHVybi5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2hhbWJ1cmdlcnMvX3Nhc3MvaGFtYnVyZ2Vycy90eXBlcy9fYXJyb3d0dXJuLXIuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9oYW1idXJnZXJzL19zYXNzL2hhbWJ1cmdlcnMvdHlwZXMvX2JvcmluZy5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2hhbWJ1cmdlcnMvX3Nhc3MvaGFtYnVyZ2Vycy90eXBlcy9fY29sbGFwc2Uuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9oYW1idXJnZXJzL19zYXNzL2hhbWJ1cmdlcnMvdHlwZXMvX2NvbGxhcHNlLXIuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9oYW1idXJnZXJzL19zYXNzL2hhbWJ1cmdlcnMvdHlwZXMvX2VsYXN0aWMuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9oYW1idXJnZXJzL19zYXNzL2hhbWJ1cmdlcnMvdHlwZXMvX2VsYXN0aWMtci5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2hhbWJ1cmdlcnMvX3Nhc3MvaGFtYnVyZ2Vycy90eXBlcy9fZW1waGF0aWMuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9oYW1idXJnZXJzL19zYXNzL2hhbWJ1cmdlcnMvdHlwZXMvX2VtcGhhdGljLXIuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9oYW1idXJnZXJzL19zYXNzL2hhbWJ1cmdlcnMvdHlwZXMvX21pbnVzLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvaGFtYnVyZ2Vycy9fc2Fzcy9oYW1idXJnZXJzL3R5cGVzL19zbGlkZXIuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9oYW1idXJnZXJzL19zYXNzL2hhbWJ1cmdlcnMvdHlwZXMvX3NsaWRlci1yLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvaGFtYnVyZ2Vycy9fc2Fzcy9oYW1idXJnZXJzL3R5cGVzL19zcGluLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvaGFtYnVyZ2Vycy9fc2Fzcy9oYW1idXJnZXJzL3R5cGVzL19zcGluLXIuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9oYW1idXJnZXJzL19zYXNzL2hhbWJ1cmdlcnMvdHlwZXMvX3NwcmluZy5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2hhbWJ1cmdlcnMvX3Nhc3MvaGFtYnVyZ2Vycy90eXBlcy9fc3ByaW5nLXIuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9oYW1idXJnZXJzL19zYXNzL2hhbWJ1cmdlcnMvdHlwZXMvX3N0YW5kLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvaGFtYnVyZ2Vycy9fc2Fzcy9oYW1idXJnZXJzL3R5cGVzL19zdGFuZC1yLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvaGFtYnVyZ2Vycy9fc2Fzcy9oYW1idXJnZXJzL3R5cGVzL19zcXVlZXplLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvaGFtYnVyZ2Vycy9fc2Fzcy9oYW1idXJnZXJzL3R5cGVzL192b3J0ZXguc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9oYW1idXJnZXJzL19zYXNzL2hhbWJ1cmdlcnMvdHlwZXMvX3ZvcnRleC1yLnNjc3MiLCJoZWxwZXJzL19hbmltYXRpb25zLnNjc3MiLCJsYXlvdXQvX2dlbmVyYWwuc2NzcyIsInZhcmlhYmxlcy9fYnJlYWtwb2ludHMuc2NzcyIsImxheW91dC9fcHJpbnQuc2NzcyIsImxheW91dC9fdHlwb2dyYXBoeS5zY3NzIiwibGF5b3V0L19zaXRlLWhlYWRlci5zY3NzIiwibGF5b3V0L19zaXRlLWZvb3Rlci5zY3NzIiwibGF5b3V0L19mb3Jtcy5zY3NzIiwiY29tcG9uZW50cy9fYnV0dG9uLXN0eWxlLWdob3N0LnNjc3MiLCJsYXlvdXQvX2Jsb2cuc2NzcyIsImxheW91dC9fd29yZHByZXNzLnNjc3MiLCJmZWF0dXJlcy9fdG9wLnNjc3MiLCJmZWF0dXJlcy9fZ2FsbGVyeS5zY3NzIiwiZmVhdHVyZXMvX2xhenlsb2FkLnNjc3MiLCJmZWF0dXJlcy9fcGFnaW5hdGlvbi5zY3NzIiwiZmVhdHVyZXMvX2dyYXZpdHktZm9ybXMuc2NzcyIsInZpZXdzL19zZWFyY2guc2NzcyIsImhlbHBlcnMvX2dyaWQuc2NzcyIsInZpZXdzL180MDQuc2NzcyIsInZpZXdzL19jb21tZW50cy5zY3NzIiwiZ3V0ZW5iZXJnL2xheW91dC9fY29udGVudC5zY3NzIiwiZ3V0ZW5iZXJnL19ibG9ja3Muc2NzcyIsImd1dGVuYmVyZy9ibG9ja3MvX2NvcmUtdGFibGUuc2NzcyIsImd1dGVuYmVyZy9ibG9ja3MvX2NvcmUtYmxvY2txdW90ZS5zY3NzIiwiZ3V0ZW5iZXJnL2Jsb2Nrcy9fY29yZS1jb2RlLnNjc3MiLCJndXRlbmJlcmcvYmxvY2tzL19jb3JlLWNvbHVtbnMuc2NzcyIsImd1dGVuYmVyZy9ibG9ja3MvX2NvcmUtY292ZXIuc2NzcyIsImd1dGVuYmVyZy9ibG9ja3MvX2NvcmUtZW1iZWQuc2NzcyIsImd1dGVuYmVyZy9ibG9ja3MvX2NvcmUtZ2FsbGVyeS5zY3NzIiwiZ3V0ZW5iZXJnL2Jsb2Nrcy9fY29yZS1zZXBhcmF0b3Iuc2NzcyIsImd1dGVuYmVyZy9ibG9ja3MvX2NvcmUtaGVhZGluZy5zY3NzIiwiZ3V0ZW5iZXJnL2Jsb2Nrcy9fY29yZS1pbWFnZS5zY3NzIiwiZ3V0ZW5iZXJnL2Jsb2Nrcy9fY29yZS1saXN0LnNjc3MiLCJndXRlbmJlcmcvYmxvY2tzL19jb3JlLXBhcmFncmFwaC5zY3NzIiwiZ3V0ZW5iZXJnL2Jsb2Nrcy9fY29yZS1wcmVmb3JtYXR0ZWQuc2NzcyIsImd1dGVuYmVyZy9ibG9ja3MvX2NvcmUtcHVsbHF1b3RlLnNjc3MiLCJndXRlbmJlcmcvYmxvY2tzL19jb3JlLXRleHQtY29sdW1ucy5zY3NzIiwiZ3V0ZW5iZXJnL2Jsb2Nrcy9fY29yZS12ZXJzZS5zY3NzIiwiZ3V0ZW5iZXJnL2Jsb2Nrcy9fY29yZS12aWRlby5zY3NzIiwiZ3V0ZW5iZXJnL2Jsb2Nrcy9fYm94ZWQuc2NzcyIsImd1dGVuYmVyZy9ibG9ja3MvX2J1dHRvbi1maWxlLnNjc3MiLCJndXRlbmJlcmcvYmxvY2tzL19lcnJvci5zY3NzIiwiZ3V0ZW5iZXJnL2Zvcm1hdHRpbmcvX2FsaWduLnNjc3MiLCJndXRlbmJlcmcvZm9ybWF0dGluZy9fY2FwdGlvbi5zY3NzIiwiZ3V0ZW5iZXJnL2Zvcm1hdHRpbmcvX2ltZy5zY3NzIiwiZ3V0ZW5iZXJnL2Zvcm1hdHRpbmcvX2tiZC5zY3NzIiwiZ3V0ZW5iZXJnL2Zvcm1hdHRpbmcvX2xpbmsuc2NzcyIsImNvbXBvbmVudHMvX2xpbmsuc2NzcyIsImd1dGVuYmVyZy9mb3JtYXR0aW5nL19wYXJhZ3JhcGguc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTsrRUNDK0U7QURFL0U7O0VDQ0U7QURHRjs7O0VBR0Usc0JBQXNCLEVBQUE7O0FBR3hCOzs7RUNBRTtBREtGOztFQUVFLHdCQUF3QjtFQUFFLE1BQUE7RUFDMUIsdUJBQXVCO0VBQUUsTUFBQSxFQUFPOztBQUdsQzs7Ozs7Ozs7RUNLRTtBREtGO0VBQ0UsZUFBZTtFQUFFLE1BQUE7RUFDakIsZ0JBQWdCO0VBQUUsTUFBQTtFQUNsQixnQkFBZ0I7RUFBRSxNQUFBO0VBQ2xCLFdBQVc7RUFBRSxNQUFBO0VBQ2Isd0NBQXdDO0VBQ3hDLDBCQUEwQjtFQUFFLE1BQUE7RUFDNUIsOEJBQThCO0VBQUUsTUFBQTtFQUNoQyxzQkFBc0I7RUFBRSxNQUFBLEVBQU87O0FBR2pDOytFQ0crRTtBREEvRTs7RUNHRTtBRENGO0VBQ0UsU0FBUyxFQUFBOztBQUdYOzs7RUNFRTtBREdGO0VBQ0UsY0FBYztFQUNkLGdCQUFnQixFQUFBOztBQUdsQjsrRUNGK0U7QURLL0U7O0VDRkU7QURNRjs7Ozs7RUFLRSxTQUFTLEVBQUE7O0FBR1g7O0VDSkU7QURRRjs7OztFQUlFLFNBQVMsRUFBQTs7QUFHWDs7OztFQ0pFO0FEVUY7RUFDRSxjQUFjO0VBQUUsTUFBQTtFQUNoQixTQUFTO0VBQUUsTUFBQTtFQUNYLGlCQUFpQjtFQUFFLE1BQUEsRUFBTzs7QUFHNUI7O0VDTEU7QURTRjtFQUNFLGNBQWMsRUFBQTs7QUFHaEI7O0VDUEU7QURXRjs7RUFFRSxnQkFBZ0I7RUFDaEIsVUFBVSxFQUFBOztBQUdaOztFQ1RFO0FEYUY7RUFDRSxnQkFBZ0IsRUFBQTs7QUFHbEI7Ozs7RUNURTtBRGVGO0VBQ0UsaUNBQWlDO0VBQUUsTUFBQTtFQUNuQyxjQUFjO0VBQUUsTUFBQTtFQUNoQixjQUFjO0VBQUUsTUFBQTtFQUNoQiw2QkFBNkI7RUFBRSxNQUFBLEVBQU87O0FBR3hDOytFQ1YrRTtBRGEvRTs7RUNWRTtBRGNGO0VBQ0UsNkJBQTZCLEVBQUE7O0FBRy9COztFQ1pFO0FEZ0JGO0VBQ0UsMEJBQTBCO0VBQzFCLHlDQUFpQztVQUFqQyxpQ0FBaUMsRUFBQTs7QUFHbkM7O0VDZEU7QURrQkY7O0VBRUUsbUJBQW1CLEVBQUE7O0FBR3JCOzs7RUNmRTtBRG9CRjs7O0VBR0UsaUNBQWlDO0VBQUUsTUFBQTtFQUNuQyxjQUFjO0VBQUUsTUFBQSxFQUFPOztBQUd6Qjs7RUNoQkU7QURvQkY7RUFDRSxjQUFjLEVBQUE7O0FBR2hCOytFQ25CK0U7QURzQi9FOztFQ25CRTtBRHVCRjs7Ozs7O0VBTUUsc0JBQXNCLEVBQUE7O0FBR3hCOztFQ3JCRTtBRHlCRjs7RUFFRSxxQkFBcUIsRUFBQTs7QUFHdkI7O0VDdkJFO0FEMkJGO0VBQ0UsYUFBYTtFQUNiLFNBQVMsRUFBQTs7QUFHWDs7RUN6QkU7QUQ2QkY7RUFDRSxrQkFBa0IsRUFBQTs7QUFHcEI7O0VDM0JFO0FEK0JGO0VBQ0Usa0JBQWtCLEVBQUE7O0FBR3BCOztFQzdCRTtBRGlDRjtFQUNFLGtCQUFrQixFQUFBOztBQUdwQjs7RUMvQkU7QURtQ0Y7RUFDRSxnQkFBZ0IsRUFBQTs7QUFHbEI7K0VDbEMrRTtBRHFDL0U7Ozs7RUNoQ0U7QURzQ0Y7RUFDRSx5QkFBeUI7RUFBRSxNQUFBO0VBQzNCLHFCQUFxQjtFQUFFLE1BQUE7RUFDdkIsY0FBYztFQUFFLE1BQUEsRUFBTzs7QUFHekI7K0VDbEMrRTtBRHFDL0U7O0VDbENFO0FEc0NGOzs7RUFHRSxTQUFTLEVBQUE7O0FBR1g7OztFQ25DRTtBRHdDRjtFQUNFLGlCQUFpQjtFQUFFLE1BQUE7RUFDbkIsb0JBQW9CO0VBQUUsTUFBQSxFQUFPOztBQUcvQjs7RUNwQ0U7QUR3Q0Y7Ozs7RUFJRSwwQkFBMEIsRUFBQTs7QUFHNUI7OztFQ3JDRTtBRDBDRjtFQUNFLHlCQUF5QjtFQUFFLE1BQUE7RUFDM0IsOEJBQThCO0VBQUUsTUFBQSxFQUFPOztBQUd6Qzs7RUN0Q0U7QUQwQ0Y7RUFDRSxpQkFBaUIsRUFBQTs7QUFHbkI7OztFQ3ZDRTtBRDRDRjtFQUNFLGNBQWM7RUFBRSxNQUFBO0VBQ2hCLGNBQWM7RUFBRSxNQUFBO0VBQ2hCLGVBQWU7RUFBRSxNQUFBO0VBQ2pCLG1CQUFtQjtFQUFFLE1BQUEsRUFBTzs7QUFHOUI7OztFQ3JDRTtBRDBDRjtFQUNFLHFCQUFxQjtFQUFFLE1BQUE7RUFDdkIsd0JBQXdCO0VBQUUsTUFBQSxFQUFPOztBQUduQzs7RUN0Q0U7QUQwQ0Y7RUFDRSxvQkFBb0IsRUFBQTs7QUFHdEI7Ozs7RUN0Q0U7QUQ0Q0Y7RUFDRSxTQUFTO0VBQUUsTUFBQTtFQUNYLGNBQWM7RUFBRSxNQUFBO0VBQ2hCLGdCQUFnQjtFQUFFLE1BQUE7RUFDbEIsYUFBYTtFQUFFLE1BQUEsRUFBTzs7QUFHeEI7O0VDdENFO0FBQ0Y7O0VEMkNFLFVBQVUsRUFBQTs7QUFHWjs7O0VDdkNFO0FBQ0Y7RUQ0Q0UsNkJBQTZCO0VBQUUsTUFBQTtFQUMvQixvQkFBb0I7RUFBRSxNQUFBLEVBQU87O0FBRy9COztFQ3hDRTtBRDRDRjs7RUFFRSxZQUFZLEVBQUE7O0FBR2Q7O0VDMUNFO0FEOENGO0VBQ0UsY0FBYztFQUNkLGFBQWEsRUFBQTs7QUFHZjs7RUM1Q0U7QURnREY7RUFDRSx3QkFBd0IsRUFBQTs7QUFHMUI7OztFQzdDRTtBRGtERjtFQUNFLDBCQUEwQjtFQUFFLE1BQUE7RUFDNUIsYUFBYTtFQUFFLE1BQUEsRUFBTzs7QUFHeEI7O0VDOUNFO0FEa0RGO0VBQ0Usa0JBQWtCO0VBQ2xCLFVBQVUsRUFBQTs7QUFHWjs7RUNoREU7QURvREY7RUFDRSw4QkFBOEIsRUFBQTs7QUFHaEM7O0VDbERFO0FEc0RGO0VBQ0UsZ0JBQWdCLEVBQUE7O0FBR2xCOytFQ3JEK0U7QUR3RC9FOztFQ3JERTtBRHlERjtFQUNFLGNBQWMsRUFBQTs7QUFHaEI7O0VDdkRFO0FEMkRGO0VBQ0UsdUJBQXVCO0VBQ3ZCLGFBQWE7RUFDYixZQUFZO0VBQ1osY0FBYztFQUNkLHdCQUF3QjtFQUN4QiwyQkFBMkI7RUFDM0IsbUJBQW1CO0VBQ25CLE9BQU87RUFDUCxZQUFZO0VBQ1osWUFBWTtFQUNaLGtCQUFrQjtFQUNsQixRQUFRO0VBQ1IsdUJBQXVCO0VBQ3ZCLDBCQUEwQjtFQUMxQixrQkFBa0IsRUFBQTs7QUFHcEI7RUFDRSxhQUFhLEVBQUE7O0FBR2Y7O0VDMURFO0FEOERGO0VBQ0Usa0JBQWtCLEVBQUE7O0FBR3BCOytFQzdEK0U7QURnRS9FOztFQzdERTtBRGlFRjtFQUNFLHFCQUFxQixFQUFBOztBQUd2Qjs7RUMvREU7QURtRUY7RUFDRSxhQUFhLEVBQUE7O0FBR2Y7K0VDbEUrRTtBRHFFL0U7O0VDbEVFO0FEc0VGOzs7Ozs7Ozs7RUFTRSw4QkFBOEIsRUFBQTs7QUFHaEM7O0VDcEVFO0FBQ0Y7RUR3RUUsYUFBYSxFQUFBOztBQUdmOytFQ3ZFK0U7QUQwRS9FOztFQ3ZFRTtBQUNGO0VEMkVFLGdCQUFnQixFQUFBOztBQUdsQjs7RUN6RUU7QUFDRjtFRDZFRSxlQUFlLEVBQUE7O0FBR2pCOzs7RUMxRUU7QUFDRjs7RURnRkUsbUJBQW1CLEVBQUE7O0FBR3JCOzs7RUM1RUU7QUFDRjtFRGlGRSxnQkFBZ0IsRUFBQTs7QUM5RWxCO0VEa0ZFLHNCQUFzQjtFQUN0QixrQkFBa0IsRUFBQTs7QUVua0JwQjs7Ozs7Q0R5ZkM7QUNsZkQ7RUZBQTs7O0lFSUksd0NBQWdDO1lBQWhDLGdDQUFnQztJQUFFLE1BQUE7SUFDbEMsMENBQWtDO1lBQWxDLGtDQUFrQztJQUFFLE1BQUE7SUFDcEMsK0NBQXVDO1lBQXZDLHVDQUF1QztJQUFFLE1BQUE7SUFDekMseUNBQXlDO0lBQUUsTUFBQTtJQUMzQyxnQ0FBZ0M7SUFBRSxNQUFBO0lBQ2xDLCtCQUErQjtJQUFFLE1BQUE7SUFDakMsa0NBQWtDO0lBQUUsTUFBQSxFQUFPLEVBQzVDOztBQ2xCSDs7RUYrZ0JFO0FHN2dCRiw2REFBQTtBQW1DQSw0REFBQTtBSnlORztFS3ZQRCxtQkFBYztFQUNkLDJCQUFtQjtFQUNuQiwyQkFBbUI7RUFDbkIseUJBQWlCO0VBQ2pCLDZCQUFxQjtFQUNyQiw2QkFBcUI7RUFDckIseUJBQWlCO0VBQ2pCLHlCQUFpQjtFQUNqQixtQkFBYztFQUdkLGtDQUFnQjtFQUNoQixtQ0FBYTtFQUNiLHdDQUFrQjtFQUdsQixxREFBMkI7RUFDM0IsNkNBQTBCO0VBQzFCLDJDQUFxQjtFQUNyQix1REFBaUM7RUFDakMsNkRBQW1DO0VBQ25DLG1EQUF5QjtFQUN6Qiw0Q0FBdUI7RUFDdkIsbURBQTZCO0VBQzdCLDRDQUFrQjtFQUNsQiwyQ0FBd0I7RUFDeEIsMkNBQXdCO0VBQ3hCLHFEQUE4QjtFQUc5QixzREFBOEI7RUFDOUIsdUNBQStCO0VBQy9CLG1DQUEyQjtFQUMzQixpQ0FBeUI7RUFDekIscURBQWtDO0VBQ2xDLDJDQUFtQztFQUNuQyxpREFBdUI7RUFDdkIsNkNBQW1CO0VBQ25CLDJDQUFxQjtFQUNyQixrREFBNEI7RUFDNUIsdUNBQW1CO0VBQ25CLDZDQUF5QjtFQUN6QixvQ0FBaUI7RUFDakIsZ0NBQXdCO0VBQ3hCLHlDQUFzQjtFQUN0Qix3QkFBZ0I7RUFDaEIsMkJBQW1CO0VBQ25CLDBCQUFrQjtFQUNsQixzQkFBYztFQUNkLHdCQUFtQjtFQUNuQixpREFBdUI7RUFDdkIsc0NBQThCO0VBQzlCLDhDQUF3QjtFQUN4QiwwREFBb0M7RUFDcEMsc0RBQWdDO0VBQ2hDLGlEQUE4QjtFQUM5Qiw0REFBc0M7RUFDdEMsd0RBQWtDO0VBQ2xDLG1EQUFnQztFQUNoQyx3QkFBZ0I7RUFDaEIsMENBQXVCO0VBQ3ZCLDJDQUF3QjtFQUN4Qix3QkFBZ0I7RUFDaEIsbUNBQTJCO0VBQzNCLHVDQUErQixFQUFBOztBRGxFL0I7RUFFRSxrQkFBa0I7RUFDbEIsb0JFTHFCO0VGTXJCLGtCQUwwRDtFQU0xRCxnQkVQdUQ7RUZXdkQsMEtBQW9ILEVBQUE7O0FBVHRIO0VBRUUsa0JBQWtCO0VBQ2xCLG9CRUpxQjtFRktyQixrQkVMOEQ7RUZNOUQsZ0JFTnNEO0VGVXRELHVLQUFvSCxFQUFBOztBQVR0SDtFQUVFLGtCQUFrQjtFQUNsQixvQkVIcUI7RUZJckIsa0JBTDBEO0VBTTFELGdCRUxvRDtFRlNwRCxpS0FBb0gsRUFBQTs7QUpnUHJIO0VPMVBELHdCQUFhO0VBQ2IsbUpBQVk7RUFDWixtSUFBaUI7RUFHakIsa0NBQWlCO0VBQ2pCLGdDQUFlLEVBQUE7O0FQb1BkO0VRM1BELHNCQUFpQjtFQUNqQixvQkFBZTtFQUNmLG9CQUFlO0VBQ2Ysb0JBQWU7RUFDZixvQkFBZTtFQUNmLG9CQUFlO0VBQ2Ysb0JBQWU7RUFjZixvQkFBZTtFQUNmLG9CQUFlO0VBQ2Ysb0JBQWU7RUFDZixvQkFBZTtFQUNmLG9CQUFlO0VBQ2Ysb0JBQWU7RUFDZixvQkFBZTtFQVFmLHdDQUFvQjtFQUNwQiwyQ0FBdUI7RUFDdkIsa0NBQTZCO0VBQzdCLDBCQUFxQjtFQWNyQiwyQkFBdUI7RUFDdkIsZ0NBQTJCO0VBQzNCLDZCQUF5QjtFQUN6QixtQ0FBOEI7RUFHOUIsMEJBQXNCO0VBQ3RCLHlCQUFxQjtFQUNyQiwyQkFBdUI7RUFDdkIsdUJBQW1CO0VBQ25CLG9EQUF5QjtFQUN6QiwrQ0FBdUIsRUFBQTtFQXJEdkI7SVJrUEM7TVFqUEMsc0JBQWlCO01BQ2pCLG9CQUFlO01BQ2Ysb0JBQWU7TUFDZixvQkFBZTtNQUNmLG9CQUFlO01BQ2Ysb0JBQWU7TUFDZixvQkFBZSxFQUFBLEVBK0NsQjtFQWxDQztJUjhOQztNUTdOQyxvQkFBZSxFQUFBLEVBaUNsQjtFQXZCQztJUm1OQztNUWxOQyw0QkFBdUI7TUFDdkIseUJBQW9CLEVBQUEsRUFxQnZCO0VBakJDO0lSNk1DO01RNU1DLGtDQUE2QixFQUFBLEVBZ0JoQzs7QVI0TEU7RVMzUEQsa0RBQStCO0VBQy9CLDZCQUFxQjtFQUNyQixnREFBMkI7RUFDM0Isa0NBQWU7RUFDZix3Q0FBcUI7RUFDckIsZ0RBQTBCO0VBQzFCLHNEQUFnQztFQUNoQyx1Q0FBaUI7RUFDakIseURBQXlCO0VBQ3pCLG9EQUE4QjtFQUM5QiwyQ0FBb0I7RUFDcEIsNkNBQTBCO0VBQzFCLHlCQUFzQjtFQUN0QiwrQkFBNEI7RUFHNUIsNkJBQXlCO0VBQ3pCLGdDQUE0QjtFQUM1Qix5QkFBdUI7RUFDdkIsNEJBQXdCO0VBQ3hCLCtCQUEyQjtFQUMzQixvQkFBZTtFQUNmLHFEQUF1QjtFQUN2Qiw0QkFBdUI7RUFDdkIseUJBQW9CO0VBQ3BCLCtCQUEyQixFQUFBOztBVGtPMUI7RVUzUEQsb0NBQStCO0VBQy9CLDRDQUFxQztFQUNyQyxvQ0FBNkI7RUFDN0Isb0NBQStCO0VBQy9CLHFCQUFnQjtFQUdoQixvQ0FBK0I7RUFDL0IsNkJBQXdCO0VBQ3hCLG1DQUE0QixFQUFBO0VBRzVCO0lWK09DO01VOU9DLG9DQUErQixFQUFBLEVBc0JsQztFQWxCQztJVjBPQztNVXpPQyxvQ0FBK0IsRUFBQSxFQWlCbEM7RUFiQztJVnFPQztNVXBPQyxrQ0FBNkIsRUFBQSxFQVloQztFQVJDO0lWZ09DO01VL05DLHFCQUFnQixFQUFBLEVBT25CO0VBSEM7SVYyTkM7TVUxTkMsa0NBQTZCLEVBQUEsRUFFaEM7O0FDdENELDJDQUFBO0FDQUEsMkNBQUE7QUNBQSwyQ0FBQTtBQ0lBO0VBSEUsZ0NBQWdDLEVBQUE7O0FDS2xDO0VBQ0UsU0FBUztFQUNULDhCQUE4QjtFQUM5Qiw2QkFBcUI7VUFBckIscUJBQXFCO0VBQ3JCLFdBQVc7RUFDWCxZQUFZO0VBQ1osZ0JBQWdCO0VBQ2hCLFVBQVU7RUFDVixrQkFBa0I7RUFDbEIsVUFBVTtFQUVWLCtDQUFBO0VBQ0EsNEJBQTRCO0VBQzVCLDhDQUFBLEVBQStDO0VBYmpEO0lBZ0JJLFdBQVcsRUFBQTtJQWhCZjtNQW1CTSx5QkFBeUIsRUFBQTtFQW5CL0I7SUF3Qkksb0NBQW9DO0lBQ3BDLGdCQUFnQjtJQUNoQiw2Q0FBNEM7SUFDNUMsVUFBVTtJQUNWLHVCQUFlO1lBQWYsZUFBZTtJQUNmLGNBQWM7SUFDZCxpQkFBaUI7SUFDakIsb0NBQW9DO0lBQ3BDLFlBQVk7SUFDWixTQUFTO0lBQ1QsbUJBQW1CO0lBQ25CLHVCQUF1QjtJQUN2QixxQkFBcUI7SUFDckIsUUFBUTtJQUNSLFdBQVc7SUFDWCxlQUFlLEVBQUE7O0FBS25CLDJDQUFBO0FkdXNCQTs7RWNwc0JFLGFBQWEsRUFBQTs7QUFFZiwwQ0FBQTtBZHVzQkE7Ozs7OztFYzNyQkksVUFBVSxFQUFBOztBZG1zQmQ7RWMvckJJLGdCQUFnQixFQUFBOztBZGtzQnBCO0VjN3JCSSxpREFBaUQ7RUFDakQsb0JBQW9CO0VBQ3BCLG9CQUFvQjtFQUNwQixrQkFBa0IsRUFBQTs7QUFLdEI7RUFDRSxtQkFBbUI7RUFDbkIsb0JBQW9CO0VBQ3BCLDhCQUE4QixFQUFBO0VBSGhDO0lBTUksb0RBQW9EO0lBQ3BELGlDQUFpQztJQUNqQyw0QkFBNEI7SUFDNUIsMEJBQTBCO0lBQzFCLFdBQVc7SUFDWCxvQkFBb0I7SUFDcEIsWUFBWTtJQUNaLGdCQUFnQjtJQUNoQixpQkFBaUI7SUFDakIsa0JBQWtCO0lBQ2xCLFFBQVE7SUFDUixNQUFNO0lBQ04sZ0NBQWdDO0lBQ2hDLFdBQVcsRUFBQTs7QUFLZiwyQ0FBQTtBQUNBOztFQUVFLGFBQWEsRUFBQTs7QUFFZiwwQ0FBQTtBQWNBO0VBQ0U7Ozs7SUFJRSxtQkFBbUI7SUFDbkIsb0NBQW9DLEVBQUEsRUFDckM7O0Fmd0hBO0VnQmxQRCwyQkFBeUI7RUFDekIsOERBQStCO0VBQy9CLDRCQUF1QjtFQUN2QixvQkFBZTtFQUNmLHFDQUE4QjtFQUM5QixvQ0FBOEI7RUFDOUIscUNBQWdDO0VBQ2hDLGtDQUE0QjtFQUM1QixxQ0FBOEI7RUFDOUIsdUJBQWlCO0VBR2pCLGtEQUErQjtFQUMvQiwrQ0FBNEI7RUFDNUIsOENBQXdCO0VBQ3hCLDhDQUF3QjtFQUN4Qix1Q0FBaUI7RUFDakIsNENBQXlCO0VBQ3pCLDZDQUF1QjtFQUN2QixzQ0FBbUI7RUFDbkIsa0NBQWdCO0VBR2hCLDJDQUF1QjtFQUN2Qix5Q0FBcUI7RUFDckIsaURBQXlCO0VBQ3pCLGtEQUF1QixFQUFBOztBQUl6QjtFQUNFLGdCQUFnQixFQUFBOztBQUdsQjtFQUNFO0lBU0ksNkJBQTZCO0lBQzdCLGtCQUFrQjtJQUNsQixXQUFXLEVBQUEsRUFFZDs7QUFFRDtFQUNFOztJQUVFLGNBQWMsRUFBQSxFQUNmOztBQUlIO0VBUEU7O0lBV0UsY0FBYyxFQUFBLEVBQ2Y7O0FBN0JMO0VBaUNFLDJDQUFBO0VBQ0E7SUFDRSxhQUFhLEVBQUE7RUFFZixxQkFBQTtFQUdBO0lBQ0UsaUJBQWlCO0lBQ2pCLGNBQWMsRUFBQTtFQUloQjtJQUNFLG1CQUFtQjtJQUNuQiw2QkFBNkI7SUFDN0IsYUFBYTtJQUNiLFNBQVM7SUFDVCxVQUFVO0lBQ1Ysa0JBQWtCLEVBQUE7RUFJcEI7SUFDRSxTQUFTO0lBQ1Qsa0JBQWtCLEVBQUE7RUFJcEI7SUFDRSxtQkFBbUI7SUFDbkIsOEJBQThCO0lBQzlCLG9CQUFvQjtJQUNwQixzQ0FBc0M7SUFDdEMsMENBQTBDO0lBQzFDLGtEQUFrRDtJQUNsRCxrREFBa0Q7SUFDbEQsbURBQW1EO0lBQ25ELCtDQUErQyxFQUFBO0VBR2pEO0lBQ0UsbUJBQW1CO0lBQ25CLDRCQUE0QjtJQUM1QixvQkFBb0I7SUFDcEIsb0NBQW9DO0lBQ3BDLHdDQUF3QztJQUN4QyxnQkFBZ0I7SUFDaEIsZ0RBQWdEO0lBQ2hELGdEQUFnRDtJQUNoRCxpREFBaUQ7SUFDakQsNkNBQTZDLEVBQUE7RUFJL0M7O0lBRUUsMkJBQTJCLEVBQUE7RUFJN0I7SUFDRSxpQkFBaUI7SUFDakIsaURBQWlEO0lBQ2pELGNBQWM7SUFDZCw2R0FBdUcsRUFBQTtFQUd6Rzs7SUFFRSxvQ0FBb0MsRUFBQTtFQUd0Qzs7SUFFRSxrQ0FBa0MsRUFBQTtFQUlwQyxnREFBQTtFQUNBOzs7O0lBSUUsZ0RBQWdEO0lBQ2hELDZDQUE2QyxFQUFBO0VBRS9DLHFCQUFBO0VBRUE7O0lBRUUsbUJBQW1CO0lBQ25CLG1EQUFnRCxFQUFBO0VBSWxEO0lBQ0Usa0RBQWtEO0lBQ2xELHFEQUFxRDtJQUNyRCx3REFBd0Q7SUFDeEQseURBQXlEO0lBQ3pELG1EQUFtRDtJQUNuRCxvREFBb0Q7SUFDcEQscURBQXFEO0lBQ3JELHNEQUFzRDtJQUN0RCxrREFBaUQ7SUFDakQsUUFBUTtJQUNSLGNBQWM7SUFDZCwrQkFBK0I7SUFDL0IsVUFBVTtJQUNWLHFCQUFxQjtJQUNyQixlQUFlO0lBQ2Ysa0JBQWtCO0lBQ2xCLGtCQUFrQjtJQUNsQixZQUFZO0lBQ1osdURBQW9EO0lBQ3BELGtCQUFrQjtJQUNsQiw0QkFBNEI7SUFDNUIsVUFBVSxFQUFBO0lBdEJaO01BMEJJLFVBQVU7TUFDVixjQUFjO01BQ2QsZ0JBQWdCO01BQ2hCLE1BQU0sRUFBQTtJQTdCVjtNQWlDSSxXQUFXO01BQ1gsVUFBVTtNQUNWLDRCQUE0QixFQUFBO0VBS2hDOzs7SUFLRSxVQUFVO0lBQ1YsU0FBUztJQUNULHlCQUF5QjtJQUN6QixtQkFBbUI7SUFDbkIsVUFBVSxFQUFBO0VBR1o7Ozs7SUFJRSxnQkFBZ0I7SUFDaEIsTUFBTTtJQUNOLFdBQVcsRUFBQTtFQUliO0lBQ0UsbUJBQW1CO0lBQ25CLGFBQWE7SUFDYiw4QkFBOEI7SUFDOUIsbUJBQW1CO0lBQ25CLGtCQUFrQixFQUFBO0lBTHBCO01BVUksV0FBVztNQUNYLGNBQWM7TUFDZCwyQkFBMkI7TUFDM0Isa0JBQWtCO01BQ2xCLFNBQVM7TUFDVCxXQUFXLEVBQUE7RUFLZjtJQUNFLG1DQUFtQztJQUNuQyxrQ0FBa0M7SUFHaEMsb0RBQWlELEVBQUE7RUFLckQ7SUFDRSwwQkFBMEIsRUFBQTtFQUc1QjtJQUNFLG1CQUFtQjtJQUNuQiw2QkFBNkI7SUFDN0IsU0FBUztJQUNULG1DQUFtQztJQUNuQyxvQkFBb0I7SUFDcEIsdUJBQXVCO0lBQ3ZCLFVBQVUsRUFBQTtFQUlaO0lBQ0UsV0FBVyxFQUFBO0VBR2I7SUFDRSx1Q0FBdUMsRUFBQTtFQUd6QztJQUNFLHlDQUF5QyxFQUFBO0VBS3pDOzs7SUFHRSx3Q0FBd0MsRUFBQTtFQUkxQyxtRUFBQTtFQUNBOzs7SUFHRSx1Q0FBdUMsRUFBQTtFQUV6QyxxQkFBQTtFQUtGLDJDQUFBO0VBQ0E7SUFDRSxhQUFhLEVBQUE7RUFFZixxQkFBQTtFQUlFO0lBRUUsd0RBQUE7SUFDQSx3REFBd0Q7SUFDeEQsbUJBQW1CO0lBQ25CLHVCQUF1QjtJQUN2QixxQkFBQTtJQUNBLGFBQWE7SUFDYixXQUFXO0lBQ1gsY0FBYztJQUNkLFNBQVM7SUFDVCxTQUFTO0lBQ1Qsa0JBQWtCO0lBQ2xCLGtCQUFrQjtJQUNsQixtQkFBbUI7SUFDbkIsK0JBQStCO0lBQy9CLGdCQUFnQjtJQUNoQixRQUFRLEVBQUEsRUFDVDs7QWhCdEZGO0VpQnRPRCxtQ0FBOEI7RUFDOUIsaUNBQTRCO0VBQzVCLG9DQUFnQztFQUNoQyxrQ0FBOEI7RUFDOUIsbUNBQThCO0VBQzlCLGdDQUEyQjtFQUMzQiw0QkFBdUI7RUFDdkIsMENBQW1DO0VBQ25DLDRDQUFxQztFQUdyQyxvREFBaUM7RUFDakMsdURBQXFDO0VBQ3JDLDhEQUE0QztFQUM1QyxzREFBb0M7RUFDcEMsNkRBQTJDO0VBQzNDLDBDQUF1QjtFQUN2QixrREFBK0I7RUFDL0IsNENBQXlCO0VBQ3pCLHFDQUFrQjtFQUNsQiw2Q0FBMEI7RUFDMUIscURBQTZCO0VBQzdCLGdEQUF3QixFQUFBOztBQzdDMUI7Ozs7OztFakIwaUNFO0FrQnppQ0Y7RUFDRSxvQkZLMEI7RUVKMUIscUJBQXFCO0VBQ3JCLGVBQWU7RUFFZixvQ0FBb0M7RUFDcEMsMEJBQTBCO0VBQzFCLGtDQUFrQztFQUdsQyxhQUFhO0VBQ2IsY0FBYztFQUNkLG9CQUFvQjtFQUNwQiw2QkFBNkI7RUFDN0IsU0FBUztFQUNULFNBQVM7RUFDVCxpQkFBaUIsRUFBQTtFQWhCbkI7SUF1Qk0sWUZWc0IsRUFBQTtFRWI1QjtJQWlDUSxZRnBCb0IsRUFBQTtFRWI1Qjs7O0lBd0NNLHdDRjdCd0MsRUFBQTs7QUVrQzlDO0VBQ0UsV0Z0QzBCO0VFdUMxQixjQUFrRTtFQUNsRSxxQkFBcUI7RUFDckIsa0JBQWtCLEVBQUE7O0FBR3BCO0VBQ0UsY0FBYztFQUNkLFFBQVE7RUFDUixtQkFBd0MsRUFBQTtFQUgxQztJQVFJLFdGcER3QjtJRXFEeEIsY0ZwRDBCO0lFcUQxQix3Q0ZuRDBDO0lFb0QxQyxnQkZuRDZCO0lFb0Q3QixrQkFBa0I7SUFDbEIsOEJBQThCO0lBQzlCLDBCQUEwQjtJQUMxQixnQ0FBZ0MsRUFBQTtFQWZwQztJQW9CSSxXQUFXO0lBQ1gsY0FBYyxFQUFBO0VBckJsQjtJQXlCSSxZQUE4RCxFQUFBO0VBekJsRTtJQTZCSSxlQUFpRSxFQUFBOztBQ2xGbkU7O0luQitsQ0U7QW1CNWxDRjtFQUVJLGlCQUF1QyxFQUFBOztBQUYzQztFQU1JLCtIQUN5RSxFQUFBO0VBUDdFO0lBV00sa0VBQWtFLEVBQUE7O0FBWHhFO0VBaUJNLHdDQUF3QztFQUN4QywwQkFBMEIsRUFBQTtFQWxCaEM7SUFxQlEsa0RBQThGLEVBQUE7RUFyQnRHO0lBeUJRLG9EQUFzRyxFQUFBOztBQzVCOUc7O0lwQmtuQ0U7QW9CL21DRjtFQUVJLGlCQUF1QyxFQUFBOztBQUYzQztFQU1JLCtIQUN5RSxFQUFBO0VBUDdFO0lBV00sa0VBQWtFLEVBQUE7O0FBWHhFO0VBaUJNLHdDQUF3QztFQUN4QywyQkFBMkIsRUFBQTtFQWxCakM7SUFxQlEsa0RBQThGLEVBQUE7RUFyQnRHO0lBeUJRLG9EQUFzRyxFQUFBOztBQzVCOUc7O0lyQnFvQ0U7QXFCbG9DRjtFQUVJLGlCQUF1QyxFQUFBOztBQUYzQztFQU1JLCtIQUN5RSxFQUFBO0VBUDdFO0lBV00sa0VBQWtFLEVBQUE7O0FBWHhFO0VBaUJNLHdDQUF3QztFQUN4QywyQkFBMkIsRUFBQTtFQWxCakM7SUFxQlEsa0RBQThGLEVBQUE7RUFyQnRHO0lBeUJRLG9EQUFzRyxFQUFBOztBQzVCOUc7O0l0QndwQ0U7QXNCcnBDRjtFQUVJLGlCQUF1QyxFQUFBOztBQUYzQztFQU1JLCtIQUN5RSxFQUFBO0VBUDdFO0lBV00sa0VBQWtFLEVBQUE7O0FBWHhFO0VBaUJNLHdDQUF3QztFQUN4QywwQkFBMEIsRUFBQTtFQWxCaEM7SUFxQlEsa0RBQThGLEVBQUE7RUFyQnRHO0lBeUJRLG9EQUFzRyxFQUFBOztBQzVCOUc7O0l2QjJxQ0U7QXVCeHFDRjtFQUVJLGlCQUF1QyxFQUFBOztBQUYzQztFQU1JLCtIQUN5RSxFQUFBO0VBUDdFO0lBV00sa0VBQWtFLEVBQUE7O0FBWHhFO0VBaUJNLHdDQUF3QztFQUN4QywwQ0FBMEMsRUFBQTtFQWxCaEQ7SUFxQlEsa0RBQThGLEVBQUE7RUFyQnRHO0lBeUJRLG9EQUFzRyxFQUFBOztBQzVCOUc7O0l4QjhyQ0U7QXdCM3JDRjtFQUVJLGlCQUF1QyxFQUFBOztBQUYzQztFQU1JLCtIQUN5RSxFQUFBO0VBUDdFO0lBV00sa0VBQWtFLEVBQUE7O0FBWHhFO0VBaUJNLHdDQUF3QztFQUN4QywyREFBMkQsRUFBQTtFQWxCakU7SUFxQlEsa0RBQThGLEVBQUE7RUFyQnRHO0lBeUJRLG9EQUFzRyxFQUFBOztBQzVCOUc7O0l6Qml0Q0U7QXlCOXNDRjtFQUdNLGtFQUF3RixFQUFBOztBQUg5RjtFQU9NLGlFQUF1RixFQUFBOztBQ1Y3Rjs7STFCMHRDRTtBMEJ2dENGO0VBR00sZ0VBQXNGLEVBQUE7O0FBSDVGO0VBT00saUVBQXVGLEVBQUE7O0FDVjdGOztJM0JtdUNFO0EyQmh1Q0Y7RUFHTSxpRkFDNkQsRUFBQTs7QUFKbkU7RUFRTSxvRkFDNkQsRUFBQTs7QUFUbkU7RUFnQlEsTUFBTTtFQUNOLHlFQUFxSDtFQUNySCxxRkFDc0UsRUFBQTs7QUFuQjlFO0VBdUJRLFNBQVM7RUFDVCx1RUFBbUg7RUFDbkgsd0ZBQ3NFLEVBQUE7O0FDN0I5RTs7STVCc3ZDRTtBNEJudkNGO0VBR00saUZBQzZELEVBQUE7O0FBSm5FO0VBUU0sb0ZBQzZELEVBQUE7O0FBVG5FO0VBZ0JRLE1BQU07RUFDTix1RUFBbUg7RUFDbkgscUZBQ3NFLEVBQUE7O0FBbkI5RTtFQXVCUSxTQUFTO0VBQ1QsdUVBQW1IO0VBQ25ILHdGQUNzRSxFQUFBOztBQzdCOUU7O0k3Qnl3Q0U7QTZCdHdDRjtFQUVJLDBCQUEwQixFQUFBO0VBRjlCO0lBS00sNkRBQTZELEVBQUE7RUFMbkU7SUFTTSw4REFBOEQsRUFBQTs7QUNacEU7O0k5Qm14Q0U7QThCaHhDRjtFQUVJLDBCQUEwQixFQUFBO0VBRjlCO0lBS00sK0RBQStELEVBQUE7RUFMckU7SUFTTSw4REFBOEQsRUFBQTs7QUNacEU7O0kvQjZ4Q0U7QStCMXhDRjtFQUtNLHlCQUF5QixFQUFBOztBQUwvQjtFQVdNLHdCQUF3QixFQUFBO0VBWDlCO0lBY1EsTUFBTTtJQUNOLFVBQVUsRUFBQTtFQWZsQjtJQW1CUSxTQUFTO0lBQ1QseUJBQXlCLEVBQUE7O0FDdkJqQzs7SWhDNHlDRTtBZ0N6eUNGO0VBRUksU0FBUztFQUNULFNBQVM7RUFDVCwwQkFBMEI7RUFDMUIsdUJBQXVCO0VBQ3ZCLGtFQUFrRSxFQUFBO0VBTnRFO0lBU00sWUFBc0U7SUFDdEUseUZBQytCLEVBQUE7RUFYckM7SUFlTSw2SEFDa0UsRUFBQTs7QUFoQnhFO0VBc0JNLG9EQUFzRztFQUN0Ryx1QkFBdUI7RUFDdkIsK0RBQStELEVBQUE7RUF4QnJFO0lBMkJRLE1BQU07SUFDTixVQUFVO0lBQ1YsMEZBQ3FDLEVBQUE7RUE5QjdDO0lBa0NRLE1BQU07SUFDTix5QkFBeUI7SUFDekIsZ0lBQ3FFLEVBQUE7O0FDeEM3RTs7SWpDdzBDRTtBaUNyMENGO0VBRUksU0FBUztFQUNULFNBQVM7RUFDVCwwQkFBMEI7RUFDMUIsdUJBQXVCO0VBQ3ZCLGtFQUFrRSxFQUFBO0VBTnRFO0lBU00sWUFBc0U7SUFDdEUseUZBQytCLEVBQUE7RUFYckM7SUFlTSw2SEFDa0UsRUFBQTs7QUFoQnhFO0VBc0JNLG1EQUFxRztFQUNyRyx1QkFBdUI7RUFDdkIsK0RBQStELEVBQUE7RUF4QnJFO0lBMkJRLE1BQU07SUFDTixVQUFVO0lBQ1YsMEZBQ3FDLEVBQUE7RUE5QjdDO0lBa0NRLE1BQU07SUFDTix3QkFBd0I7SUFDeEIsZ0lBQ3FFLEVBQUE7O0FDeEM3RTs7SWxDbzJDRTtBa0NqMkNGO0VBRUksV0FBZ0M7RUFDaEMsMkJBQTJCO0VBQzNCLGtFQUFrRSxFQUFBO0VBSnRFO0lBT00sV0FBdUQ7SUFDdkQsc0NBQXNDLEVBQUE7RUFSNUM7SUFZTSxXQUFtRTtJQUNuRSxtRUFBbUUsRUFBQTs7QUFiekU7RUFxQk0sbURBQXNEO0VBQ3RELHdCQUF3QixFQUFBO0VBdEI5QjtJQXlCUSxvQkFBb0I7SUFDcEIsVUFBVSxFQUFBO0VBMUJsQjtJQThCUSxxREFBNEQ7SUFDNUQsd0JBQXdCLEVBQUE7O0FDbENoQzs7SW5DNDNDRTtBbUN6M0NGO0VBRUksV0FBZ0M7RUFDaEMsMkJBQTJCO0VBQzNCLGtFQUFrRSxFQUFBO0VBSnRFO0lBT00sV0FBdUQ7SUFDdkQsc0NBQXNDLEVBQUE7RUFSNUM7SUFZTSxXQUFtRTtJQUNuRSxtRUFBbUUsRUFBQTs7QUFiekU7RUFxQk0sb0RBQXVEO0VBQ3ZELHdCQUF3QixFQUFBO0VBdEI5QjtJQXlCUSxvQkFBb0I7SUFDcEIsVUFBVSxFQUFBO0VBMUJsQjtJQThCUSxvREFBMkQ7SUFDM0Qsd0JBQXdCLEVBQUE7O0FDbENoQzs7SXBDbzVDRTtBb0NqNUNGO0VBQ0UsZ0JBQWdCLEVBQUE7RUFEbEI7SUFJSSxrREFBa0QsRUFBQTtJQUp0RDtNQU9NLE9BQU87TUFDUCxzSEFFc0MsRUFBQTtJQVY1QztNQWNNLFdBQTJEO01BQzNELFFBQVE7TUFDUix1SEFFdUMsRUFBQTtFQWxCN0M7SUF3Qk0sb0JBQW9CO0lBQ3BCLG9DQUFvQztJQUNwQyx3Q0FBd0MsRUFBQTtJQTFCOUM7TUE2QlEsV0FBaUM7TUFDakMsVUFBZ0M7TUFDaEMsbURBQStGO01BQy9GLHNIQUV1RSxFQUFBO0lBbEMvRTtNQXNDUSxZQUFrQztNQUNsQyxVQUFnQztNQUNoQyxxREFBaUc7TUFDakcsdUhBRXVFLEVBQUE7O0FDOUMvRTs7SXJDaTdDRTtBcUM5NkNGO0VBQ0UsZ0JBQWdCLEVBQUE7RUFEbEI7SUFJSSxrREFBa0QsRUFBQTtJQUp0RDtNQU9NLE9BQU87TUFDUCxzSEFFc0MsRUFBQTtJQVY1QztNQWNNLFdBQTJEO01BQzNELFFBQVE7TUFDUix1SEFFdUMsRUFBQTtFQWxCN0M7SUF3Qk0sb0JBQW9CO0lBQ3BCLG9DQUFvQztJQUNwQyx3Q0FBd0MsRUFBQTtJQTFCOUM7TUE2QlEsV0FBaUM7TUFDakMsU0FBK0I7TUFDL0IscURBQWlHO01BQ2pHLHNIQUV1RSxFQUFBO0lBbEMvRTtNQXNDUSxZQUFrQztNQUNsQyxTQUErQjtNQUMvQixxREFBaUc7TUFDakcsdUhBRXVFLEVBQUE7O0FDOUMvRTs7SXRDODhDRTtBc0MzOENGO0VBSU0sOEVBRTZCLEVBQUE7O0FBTm5DO0VBY1EsVUFBVTtFQUNWLDhFQUVtQyxFQUFBOztBQWpCM0M7RUFvQlEsTUFBTSxFQUFBOztBQXBCZDtFQXdCUSxTQUFTLEVBQUE7O0FDM0JqQjs7SXZDODlDRTtBdUMzOUNGO0VBRUksV0FBZ0MsRUFBQTtFQUZwQztJQUtNLFdBQXVEO0lBQ3ZELHVDQUF1QztJQUN2QyxnQ0FBZ0M7SUFDaEMsMEJBQTBCLEVBQUE7RUFSaEM7SUFZTSxXQUFtRSxFQUFBOztBQVp6RTtFQW9CTSxrREFBcUQsRUFBQTtFQXBCM0Q7SUF1QlEsOERBQW9HO0lBQ3BHLFVBQVUsRUFBQTtFQXhCbEI7SUE0QlEsb0RBQTJELEVBQUE7O0FDL0JuRTs7SXhDbS9DRTtBd0NoL0NGO0VBRUksV0FBZ0MsRUFBQTtFQUZwQztJQUtNLFdBQXVEO0lBQ3ZELHVDQUF1QztJQUN2QyxnQ0FBZ0M7SUFDaEMsMEJBQTBCLEVBQUE7RUFSaEM7SUFZTSxXQUFtRSxFQUFBOztBQVp6RTtFQW9CTSxtREFBc0QsRUFBQTtFQXBCNUQ7SUF1QlEsNERBQWtHO0lBQ2xHLFVBQVUsRUFBQTtFQXhCbEI7SUE0QlEsbURBQTBELEVBQUE7O0FDL0JsRTs7SXpDd2dERTtBeUNyZ0RGO0VBRUksMEJBQTBCO0VBQzFCLGtFQUFrRSxFQUFBO0VBSHRFO0lBTU0sd0RBQ2dDLEVBQUE7RUFQdEM7SUFXTSw2RkFDa0UsRUFBQTs7QUFaeEU7RUFrQk0seUJBQXlCO0VBQ3pCLHVCQUF1QjtFQUN2QiwrREFBK0QsRUFBQTtFQXBCckU7SUF1QlEsTUFBTTtJQUNOLFVBQVU7SUFDViwwREFDdUMsRUFBQTtFQTFCL0M7SUE4QlEsU0FBUztJQUNULHlCQUF5QjtJQUN6QiwyRkFDcUUsRUFBQTs7QUNwQzdFOztJMUNnaURFO0EwQzdoREY7RUFFSSwwQkFBMEI7RUFDMUIsa0VBQWtFLEVBQUE7RUFIdEU7SUFNTSx3REFDZ0MsRUFBQTtFQVB0QztJQVdNLDZGQUNrRSxFQUFBOztBQVp4RTtFQWtCTSwwQkFBMEI7RUFDMUIsdUJBQXVCO0VBQ3ZCLCtEQUErRCxFQUFBO0VBcEJyRTtJQXVCUSxNQUFNO0lBQ04sVUFBVTtJQUNWLDBEQUN1QyxFQUFBO0VBMUIvQztJQThCUSxTQUFTO0lBQ1Qsd0JBQXdCO0lBQ3hCLDJGQUNxRSxFQUFBOztBQ3BDN0U7O0kzQ3dqREU7QTJDcmpERjtFQUVJLFdBQWdDO0VBQ2hDLDRDQUE0QyxFQUFBO0VBSGhEO0lBTU0sV0FBdUQ7SUFDdkQsNEhBQ2tFLEVBQUE7RUFSeEU7SUFZTSxXQUFtRTtJQUNuRSw0SEFDa0UsRUFBQTs7QUFkeEU7RUFvQk0sdUJBQXVCO0VBQ3ZCLHdDQUF3QyxFQUFBO0VBckI5QztJQXdCUSxNQUFNO0lBQ04sZ0lBQ3FFO0lBQ3JFLGtEQUE4RixFQUFBO0VBM0J0RztJQStCUSxNQUFNO0lBQ04sMEhBQ3FFO0lBQ3JFLG1EQUErRixFQUFBOztBQ3JDdkc7O0k1Q2lsREU7QTRDOWtERjtFQUVJLFNBQVM7RUFDVCxTQUFTO0VBQ1QsMEJBQTBCO0VBQzFCLG9CQUFvQjtFQUNwQixrRUFBa0UsRUFBQTtFQU50RTtJQVNNLFlBQXNFO0lBQ3RFLHVGQUM2QixFQUFBO0VBWG5DO0lBZU0sNEhBQ2tFLEVBQUE7O0FBaEJ4RTtFQXNCTSxvREFBc0c7RUFDdEcsdUJBQXVCO0VBQ3ZCLCtEQUErRCxFQUFBO0VBeEJyRTtJQTJCUSxNQUFNO0lBQ04sVUFBVTtJQUNWLHdGQUNtQyxFQUFBO0VBOUIzQztJQWtDUSxNQUFNO0lBQ04sd0JBQXdCO0lBQ3hCLGdJQUNxRSxFQUFBOztBQ3hDN0U7O0k3QzZtREU7QTZDMW1ERjtFQUVJLDRHQUM2QyxFQUFBO0VBSGpEO0lBTU0saUdBQ3NFLEVBQUE7RUFQNUU7SUFXTSxvR0FDc0UsRUFBQTs7QUFaNUU7RUFrQk0sd0JBQXdCO0VBQ3hCLHdDQUF3QztFQUV4QyxxR0FDNEMsRUFBQTtFQXRCbEQ7SUF5QlEsTUFBTTtJQUNOLHlCQUF5QjtJQUN6QixnR0FDc0UsRUFBQTtFQTVCOUU7SUFnQ1EsU0FBUztJQUNULHdCQUF3QjtJQUN4QixtR0FDc0UsRUFBQTs7QUN0QzlFOztJOUNvb0RFO0E4Q2pvREY7RUFFSSw0R0FDNkMsRUFBQTtFQUhqRDtJQU1NLGlHQUNzRSxFQUFBO0VBUDVFO0lBV00sb0dBQ3NFLEVBQUE7O0FBWjVFO0VBa0JNLHlCQUF5QjtFQUN6Qix3Q0FBd0M7RUFFeEMscUdBQzRDLEVBQUE7RUF0QmxEO0lBeUJRLE1BQU07SUFDTix5QkFBeUI7SUFDekIsZ0dBQ3NFLEVBQUE7RUE1QjlFO0lBZ0NRLFNBQVM7SUFDVCx3QkFBd0I7SUFDeEIsbUdBQ3NFLEVBQUE7O0FDdEM5RTs7SS9DMnBERTtBK0N4cERGO0VBRUksMkJBQTJCO0VBQzNCLGtFQUFrRSxFQUFBO0VBSHRFO0lBTU0sc0RBQytCLEVBQUE7RUFQckM7SUFXTSw2RkFDbUUsRUFBQTs7QUFaekU7RUFrQk0sd0JBQXdCO0VBQ3hCLHVCQUF1QjtFQUN2QiwrREFBK0QsRUFBQTtFQXBCckU7SUF1QlEsTUFBTTtJQUNOLFVBQVU7SUFDVixzREFDcUMsRUFBQTtFQTFCN0M7SUE4QlEsU0FBUztJQUNULHlCQUF5QjtJQUN6QiwwRkFDc0UsRUFBQTs7QUNwQzlFOztJaERtckRFO0FnRGhyREY7RUFFSSx5QkFBeUI7RUFDekIsMERBQTBELEVBQUE7RUFIOUQ7SUFPTSx1QkFBdUI7SUFDdkIsc0JBQXNCO0lBQ3RCLGtDQUFrQyxFQUFBO0VBVHhDO0lBYU0saUNBQWlDLEVBQUE7RUFidkM7SUFpQk0sc0NBQXNDLEVBQUE7O0FBakI1QztFQXVCTSx5QkFBeUI7RUFDekIsMERBQTBELEVBQUE7RUF4QmhFO0lBNEJRLG9CQUFvQixFQUFBO0VBNUI1QjtJQWdDUSxNQUFNO0lBQ04sVUFBVSxFQUFBO0VBakNsQjtJQXFDUSxTQUFTO0lBQ1Qsd0JBQXdCLEVBQUE7O0FDekNoQzs7SWpEOHNERTtBaUQzc0RGO0VBRUkseUJBQXlCO0VBQ3pCLDBEQUEwRCxFQUFBO0VBSDlEO0lBT00sdUJBQXVCO0lBQ3ZCLHNCQUFzQjtJQUN0QixrQ0FBa0MsRUFBQTtFQVR4QztJQWFNLGlDQUFpQyxFQUFBO0VBYnZDO0lBaUJNLHNDQUFzQyxFQUFBOztBQWpCNUM7RUF1Qk0sMEJBQTBCO0VBQzFCLDBEQUEwRCxFQUFBO0VBeEJoRTtJQTRCUSxvQkFBb0IsRUFBQTtFQTVCNUI7SUFnQ1EsTUFBTTtJQUNOLFVBQVUsRUFBQTtFQWpDbEI7SUFxQ1EsU0FBUztJQUNULHlCQUF5QixFQUFBOztBakNpQm5DO0VBRUUsMkNBQUE7RUFDQTtJQUNFLGFBQWEsRUFBQTtFQUVmLHFCQUFBLEVBQXNCOztBQUd4QjtFQUNFO0lBQ0UsY0FBYyxFQUFBLEVBQ2Y7O0FBSUg7RUQ1QkU7SUM4QkUsMkRBQTJEO0lBUXpELE9BQU87SUFDUCxrQkFBa0I7SUFDbEIsTUFBTTtJQUNOLFdBQVcsRUFBQTtFQUtiO0lBQ0UsNENBQTRDLEVBQUEsRUFDN0M7O0FBS0w7RUFFRTs7O0lBR0Usa0JBQWtCLEVBQUE7RUFHcEI7SUFDRSxRQUFRO0lBQ1IsWUFBWSxFQUFBO0VBSWQ7SUFDRSwyREFBMkQ7SUFDM0QsZ0JBQWdCLEVBQUE7RUFJbEI7SUFDRSxnQkFBZ0IsRUFBQTtFRG5DbEI7SUN1Q0UsMERBQTBEO0lBQzFELGNBQWM7SUFDZCxxREFBcUQ7SUFDckQsU0FBUztJQUNULFVBQVU7SUFDVixjQUFjO0lBQ2Qsb0JBQW9CO0lBQ3BCLGlDQUFnRDtJQUNoRCxrQkFBa0I7SUFDbEIsWUFBWSxFQUFBO0VEMUNkO0lDOENFLFNBQVM7SUFDVCxVQUFVO0lBQ1YsZUFBZTtJQUNmLFdBQVcsRUFBQTtFQUliO0lBQ0UsdURBQXVEO0lBQ3ZELHFDQUFxQztJQUNyQyxjQUFjO0lBQ2QsNkNBQTZDO0lBQzdDLGlEQUFpRDtJQUNqRCxjQUFjO0lBQ2QsZUFBZTtJQUNmLHVEQUF1RDtJQUN2RCx1REFBdUQ7SUFDdkQsd0RBQXdEO0lBQ3hELG9EQUFvRDtJQUNwRCxrQkFBa0I7SUFDbEIscUJBQXFCO0lBQ3JCLFVBQVUsRUFBQTtFQUlaO0lBQ0UsbUNBQW1DO0lBQ25DLDJDQUEyQztJQUMzQywrQ0FBK0M7SUFDL0MsMkZBQTJGLEVBQUE7RURRN0Y7SUNKRSxjQUFjO0lBQ2QsZUFBZSxFQUFBO0VBR2pCO0lBQ0UseUhBQXlILEVBQUE7RUFHM0g7O0lBRUUsNENBQTRDLEVBQUE7RUQvQzlDOztJQ3FERSxrQ0FBa0MsRUFBQTtFRG9GcEM7SUMvRUUsbUJBQW1CO0lBQ25CLDZCQUE2QjtJQU83QixTQUFTO0lBQ1QsMENBQTBDO0lBQzFDLG9CQUFvQjtJQUNwQixZQUFZO0lBQ1osVUFBVTtJQUNWLGFBQWE7SUFDYixnQkFBZ0I7SUFDaEIsZ0JBQWdCO0lBQ2hCLHVEQUF1RDtJQUN2RCx1REFBdUQ7SUFDdkQsd0RBQXdEO0lBQ3hELG9EQUFvRDtJQUNwRCxrQkFBa0I7SUFDbEIsUUFBUTtJQUNSLFFBQVE7SUFDUixvQkFBb0I7SUFDcEIscUJrQ3ZOc0I7SWxDd050QixhQUFhLEVBQUE7RUFHZjtJQUNFLGNBQWMsRUFBQTtFRDZEaEI7SUN6REUsbUNBQW1DLEVBQUE7RURnQ3JDO0lDM0JFLDBDQUEwQztJQUMxQyx5Q0FBeUM7SUFHekMsMkNBQUE7SUFFQSxxQkFBQSxFQUFzQjtFQUd4QjtJQUNFLDZCQUE2QjtJQUk3QixlQUFlO0lBQ2YsMEJBQTBCLEVBQUE7RUFJNUI7SUFDRSxPQUFPO0lBRVAsZUFBZTtJQUdmLG9DQUFvQztJQUNwQyxVQUFVLEVBQUE7SUFQWjtNQVVJLDBEQUEwRDtNQUMxRCxVQUFVLEVBQUE7RUFLZDtJQUNFLGdCQUFnQixFQUFBO0lBRGxCO01BSUksVUFBVTtNQUNWLG1CQUFtQjtNQUNuQixtQkFBbUIsRUFBQTtJQU52QjtNQVVJLGlFQUFpRTtNQUNqRSxVQUFVLEVBQUE7SUFYZDtNQWVJLGtFQUFrRSxFQUFBLEVBQ25FOztBRXZSTDs7O0VGK1JFLCtDQUErQztFQUMvQyxvQ0FBb0MsRUFBQTs7QURsTnBDO0VDc05BLDZCQUE2QjtFQUM3QixTQUFTO0VBQ1QsNkJBQTZCO0VBQzdCLGVBQWU7RUFDZixvQ0FBb0M7RUFDcEMsU0FBUztFQUNULGlCQUFpQjtFQUNqQixVQUFVO0VBQ1Ysa0JBQWtCO0VBQ2xCLHFCQUFxQjtFQUNyQixNQUFNO0VBQ04seUJBQWlCO0tBQWpCLHNCQUFpQjtVQUFqQixpQkFBaUI7RUFDakIsZUFBZTtFQW1EZiwyQ0FBQTtFQUlBLHFCQUFBLEVBQXNCO0VBckR0QjtJRHBPQTtNQ3FPRSxhQUFhLEVBQUEsRUFpSGhCO0VBaklEO0lBcUJJLHVCa0N6VHNCO0lsQzBUdEIsV0FBVyxFQUFBO0VBdEJmOzs7SUE0QkksV0F2VHdCLEVBQUE7RUEyUjVCO0lBZ0NJLDZCQUE2QjtJQUM3QixnQkFBZ0IsRUFBQTtFQWpDcEI7SUFxQ0ksb0NBQW9DLEVBQUE7RUFyQ3hDO0lBMENJLDZCQUE2QixFQUFBO0lBMUNqQztNQTZDTSw2QkFBNkIsRUFBQTtFQTdDbkM7SUFvRE0sd0NBQXdDLEVBQUE7RUFwRDlDOztJQXlETSx3Q0FBd0MsRUFBQTtFQXpEOUM7SUFrRUksYUFBYSxFQUFBO0VBSWY7SUQzUkE7TUM0UkUsY0FBYyxFQUFBO01BdkVsQjtRQTBFTSxtQkFBbUI7UUFDbkIsYUFBYSxFQUFBO01BM0VuQjtRQStFTSw0Q0FBNEMsRUFBQSxFQU03QztJQUhDO01BbEZOO1FBbUZRLGFBQWEsRUFBQSxFQUVoQjtFQUVEO0lBdkZKO01BeUZRLGtCQUFrQixFQUFBLEVBQ25CO0VBMUZQO0lBZ0dJLG9DQUFvQyxFQUFBO0VBaEd4QztJQXFHTSwrQ0FBK0MsRUFBQTtFQXJHckQ7SUF5R00sK0NBQStDLEVBQUE7RUF6R3JEOztJQWdITSwrQ0FBK0MsRUFBQTtFQWhIckQ7O0lBb0hNLCtDQUErQyxFQUFBO0VBcEhyRDs7O0lBMkhJLG9DQUFvQyxFQUFBO0lBM0h4Qzs7O01BOEhNLG9DQUFvQyxFQUFBOztBbUM1WjFDO0VBQ0Usb0NBQW9DO0VBQ3BDLDJCQUEyQjtFQUMzQiw0QkFBNEI7RUFDNUIsc0JBQXNCO0VBQ3RCLGNBQWM7RUFDZCxlQ1pxQjtFRGFyQixrQkFBa0IsRUFBQTs7QUFJcEI7RUFDRSwrQ0FBK0M7RUFDL0MsWUFBWTtFQUNaLE9BQU87RUFDUCxZQUFZO0VBQ1osa0JBQWtCO0VBQ2xCLE1BQU07RUFDTixXQUFXO0VBQ1gsVUFBVSxFQUFBOztBQU1aO0VBQ0UsWUFBWTtFQUNaLE9BQU87RUFDUCxrQkFBa0I7RUFDbEIsTUFBTTtFQUNOLFdBQVc7RUFDWCxVQUFVLEVBQUE7O0FuQ3VEUjtFbUNsREYsaUJBQWlCO0VBQ2pCLGtCQUFrQjtFQUNsQixlQUFlO0VBQ2YsZ0JBQWdCO0VBQ2hCLGtCQUFrQixFQUFBOztBQUlwQjtFQUNFLGNBQWM7RUFDZCxpQkFBaUI7RUFDakIsa0JBQWtCO0VBQ2xCLGlCQ3BEc0I7RURxRHRCLGlEQUFpRDtFQUNqRCxpREFBaUQ7RUFDakQsa0RBQWtEO0VBQ2xELDhDQUE4QyxFQUFBOztBQVloRDtFQUNFLFdBQVc7RUFDWCxnQkFBZ0IsRUFBQTs7QUFJbEI7RUFDRSxXQUFXO0VBQ1gsYUFBYTtFQUNiLDhCQUE4QjtFQUM5Qiw2Q0FBNkM7RUFDN0MsZ0JBQWdCLEVBQUE7O0FBSWxCO0VBQ0UsV0FBVztFQUNYLGNBQWM7RUFDZCxnQkFBZ0I7RUFDaEIsZ0JBQWdCO0VBQ2hCLGVBQWU7RUFDZixZQUFZO0VBQ1osZ0JBQWdCO0VBQ2hCLGdCQUFnQjtFQUNoQixxQkQ5RndCO0VDK0Z4QixXQUFXLEVBQUE7RUFWYjtJQWFJLG9DQUFvQztJQUNwQyxnREFBZ0Q7SUFDaEQsV0FBVztJQUNYLGtDQUFrQztJQUNsQyxjQUFjO0lBQ2QsU0FBUztJQUNULGFBQWE7SUFDYixrQkFBa0I7SUFDbEIscUJBQXFCO0lBQ3JCLHFCRDNHc0IsRUFBQTtFQ3FGMUI7O0lBMkJJLHlEQUF5RDtJQUN6RCx3Q0FBd0MsRUFBQTs7QUFNMUM7RUFERjtJQUdJLCtDQUFBO0lBQ0Esd0JBQXdCO0lBQ3hCLHFCQUFBLEVBQXNCLEVBRXpCOztBQUdELHFFQUFBO0FBRUU7RUFERjtJQUVJLHdCQUF3QixFQUFBLEVBRTNCOztBQUNELHFCQUFBO0FBSUEscUVBQUE7QUFFRTtFQURGO0lBRUksd0JBQXdCLEVBQUEsRUFFM0I7O0FBQ0QscUJBQUE7QUFFQSxxRUFBQTtBQUVFO0VBREY7SUFFSSx3QkFBd0IsRUFBQSxFQUUzQjs7QUFDRCxxQkFBQTtBQUdBLHFFQUFBO0FBQ0E7RUFDRSx3QkFBd0IsRUFBQTs7QUFFMUIscUJBQUE7QUUvSkEsMkNBQUE7QUFDQTtFQUNFOzs7SUFHRSxhQUFhLEVBQUEsRUFDZDs7QUNQSCx3RkFBQTtBdkQ4UEc7RXVEclBELGdCQUFnQixFQUFBOztBdkQyQ2xCO0V1RHRDRSw2QkFBNkI7RUFDN0Isa0NBQWtDO0VBQ2xDLG1DQUFtQztFQUNuQyxrQ0FBa0M7RUFDbEMsbUNBQW1DO0VBQ25DLDBDQUEwQztFQUMxQyxrQ0FBa0MsRUFBQTs7QUFJcEM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFxQkksc0NBQXNDO0VBQ3RDLDBDQUEwQyxFQUFBOztBQXRCOUM7Ozs7Ozs7Ozs7OztFQWdDSSwyQkFBMkI7RUFDM0IsZ0NBQWdDO0VBQ2hDLHdDQUF3QztFQUN4QywrQ0FBK0M7RUFDL0MsNENBQTRDLEVBQUE7O0FBcENoRDs7Ozs7Ozs7OztFQTRDSSx3Q0FBd0MsRUFBQTs7QUE1QzVDOztFQWtESSw4QkFBOEIsRUFBQTs7QUFsRGxDOztFQXNESSw4QkFBOEIsRUFBQTs7QUF0RGxDOztFQTBESSw4QkFBOEIsRUFBQTs7QUExRGxDOztFQThESSw4QkFBOEIsRUFBQTs7QUE5RGxDOztFQWtFSSw4QkFBOEIsRUFBQTs7QUFsRWxDOztFQXNFSSw4QkFBOEIsRUFBQTs7QUF0RWxDOzs7Ozs7Ozs7Ozs7RUErRUksYUFBYSxFQUFBOztBQS9FakI7O0VBb0ZJLHdCQUF3QjtFQUN4QixvQkFBb0IsRUFBQTtFQXJGeEI7O0lBd0ZNLGVBQWUsRUFBQTs7QUF4RnJCOztFQTZGSSxvQkFBb0IsRUFBQTs7QUE3RnhCOzs7O0VBbUdJLG9DQUFvQyxFQUFBOztBQW5HeEM7Ozs7RUF5R0ksa0JBQWtCLEVBQUE7O0FBekd0Qjs7RUE4R0ksZ0JBQWdCLEVBQUE7O0FBOUdwQjs7RUFtSEkscUJBQXFCO0VBQ3JCLGtCQUFrQixFQUFBOztBQXBIdEI7O0VBeUhJLGNBQWM7RUFDZCxXQUFXO0VBQ1gsU0FBUztFQUNULG9CQUFvQjtFQUNwQixrQkFBa0IsRUFBQTtFQTdIdEI7O0lBZ0lNLDhCQUE4QjtJQUM5QixrQkFBa0I7SUFDbEIsZ0JBQWdCO0lBQ2hCLGlCQUFpQjtJQUNqQixrQkFBa0IsRUFBQTtFQUdwQjtJQXZJSjs7TUF3SU0sZ0JBQWdCO01BQ2hCLG9CQUFvQixFQUFBLEVBZ0J2QjtFQXpKSDs7SUE2SU0sV0FBVztJQUNYLGNBQWM7SUFDZCxXQUFXO0lBQ1gsT0FBTztJQUNQLGdCQUFnQjtJQUNoQixrQkFBa0I7SUFDbEIsTUFBTSxFQUFBO0lBRU47TUFySk47O1FBc0pRLFVBQVUsRUFBQSxFQUViOztBQXhKTDs7RUE0SkksY0FBYztFQUNkLGtCQUFrQixFQUFBOztBQTdKdEI7O0VBaUtJLGdCQUFnQixFQUFBOztBQWpLcEI7O0VBc0tJLFlBQVk7RUFDWixlQUFlO0VBQ2Ysc0JBQXNCLEVBQUE7O0FBeEsxQjs7RUE2S0ksbUJBQW1CO0VBQ25CLGNBQWM7RUFDZCxlQUFlO0VBQ2YsYUFBYTtFQUNiLGtCQUFrQixFQUFBOztBQWpMdEI7O0VBc0xJLGtCQUFrQjtFQUNsQiwwQ0FBMEM7RUFDMUMsYUFBYSxFQUFBOztBQXhMakI7Ozs7OztFQThMSSxrQ0FBa0MsRUFBQTs7QUE5THRDOztFQW1NSSxxREFBcUQ7RUFDckQsb0JBQW9CO0VBQ3BCLDhCQUE4QjtFQUM5QixrQ0FBa0M7RUFDbEMsa0JBQWtCO0VBQ2xCLHFCQUFxQixFQUFBO0VBRXJCOztJQUNFLHFCQUFxQjtJQUNyQiw0QkFBNEIsRUFBQTs7QUE1TWxDOztFQWtOSSxvQkFBb0I7RUFDcEIsY0FBYztFQUNkLG1CQUFtQjtFQUNuQixxQkFBcUI7RUFDckIscUJBQXFCO0VBQ3JCLHFCQUFxQixFQUFBOztBQzFPekI7RUFDRSxtQkFBbUI7RUFDbkIsYUFBYTtFQUNiLDhCQUE4QjtFQUM5QixpQkFBaUI7RUFDakIsa0JBQWtCO0VBQ2xCLGlCSFJzQjtFR1N0QixtREFBbUQ7RUFDbkQsaURBQWlEO0VBQ2pELGtEQUFrRDtFQUNsRCxnREFBZ0Q7RUFDaEQsa0JBQWtCO0VBQ2xCLFdBQVcsRUFBQTs7QUFHYjtFQUNFLGNBQWM7RUFDZCxTQUFTLEVBQUE7RUFGWDtJQUtJLG1CQUFtQjtJQUNuQixhQUFhLEVBQUE7O0F4Q3FCZjtFd0NmQSxXQUFXLEVBQUE7O0FDdEJiO0VBQ0UsV0FBVztFQUNYLHlCQUF5QjtFQUN6QixnQkFBZ0I7RUFDaEIsa0JBQWtCO0VBQ2xCLGtCQUFrQjtFQXlCbEIsMkNBQUE7RUFJQSxxQkFBQSxFQUFzQjtFQWxDeEI7O0lBU0kseUJBQXlCLEVBQUE7RUFUN0I7SUFhSSxjQUFjO0lBQ2QsbUJBQW1CO0lBQ25CLGlCQUFpQjtJQUNqQixrQkFBa0IsRUFBQTtFQWhCdEI7SUFvQkksY0FBYztJQUNkLGtCQUFrQixFQUFBO0VBckJ0QjtJQXlCSSxpQkFBaUI7SUFDakIsa0JBQWtCLEVBQUE7RUExQnRCO0lBZ0NJLGFBQWEsRUFBQTtFQWhDakI7SUFxQ0kscUJBQXFCO0lBQ3JCLHdDQUF3QztJQUN4QyxtQkFBbUI7SUFDbkIsa0JBQWtCLEVBQUE7RUF4Q3RCO0lBNENJLGdCQUFnQjtJQUNoQixlQUFlO0lBQ2YsZ0JBQWdCO0lBQ2hCLG1CQUFtQjtJQUNuQixrQkFBa0IsRUFBQTtJQWhEdEI7TUFtRE0sb0NBQW9DO01BQ3BDLFNBQVM7TUFDVCxXQUFXO01BQ1gsY0FBYztNQUNkLFdBQVc7TUFDWCxXQUFXO01BQ1gsa0JBQWtCO01BQ2xCLFNBQVM7TUFDVCx5Qk5wRW9CO01NcUVwQixXQUFXLEVBQUE7RUE1RGpCO0lBaUVJLHlCQUF5QjtJQUN6Qix5Qk4zRXNCLEVBQUE7SU1TMUI7TUFzRU0seUJBQXlCO01BQ3pCLFdBQVcsRUFBQTtNQXZFakI7UUEwRVEsV0FBVyxFQUFBO0VBMUVuQjtJQWdGSSxtQkFBbUI7SUFDbkIsYUFBYTtJQUNiLGVBQWU7SUFDZix1QkFBdUI7SUFDdkIsZ0JBQWdCO0lBQ2hCLGNBQWM7SUFDZCxrQkFBa0IsRUFBQTtJQXRGdEI7TUF5Rk0sYUFBYSxFQUFBOztBQzdGbkI7RUFDRSxnQkFBZ0IsRUFBQTs7QUFJbEI7Ozs7Ozs7Ozs7RS9DVEUsd0JBQWdCO0tBQWhCLHFCQUFnQjtVQUFoQixnQkFBZ0I7RUFDaEIsZ0RBRjBJO0VBRzFJLDRFQUg2VDtFQUk3VCwrQ0FKOE87RUFLOU8sMEJBTDBEO0VBTTFELGVBQWU7RUFDZixxQkFBcUI7RUFDckIsa0NBQWtDO0VBQ2xDLDhCQUE4QjtFQUM5Qix3Q0FWMmE7RUFXM2Esc0JBQXNCO0VBQ3RCLGdCQUFnQjtFQUNoQixnQkFiNkI7RUFjN0IsZ0JBQWdCO0VBQ2hCLHNFQUFzRTtFQUN0RSxvRUFBb0U7RUFDcEUscUVBQXFFO0VBQ3JFLG1FQUFtRTtFQUNuRSxrQkFBa0I7RUFDbEIscUJBQXFCO0VBQ3JCLHVCQUF1QjtFQUN2QiwwREF0QmtmO0VBdUJsZixtQkFBbUI7RUFDbkIsV0FBVztFQUdYLDJDQUFBO0VBSUEscUJBQUEsRUFBc0I7RUFIdEI7Ozs7Ozs7Ozs7SUFDRSxhQUFhLEVBQUE7RUFXZjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztJQUdFLHNEQTNDaU07SUE0Q2pNLGtGQTVDaU07SUE2Q2pNLGdDQTdDMkYsRUFBQTtFK0NVL0Y7Ozs7Ozs7Ozs7STlDVEUsOEJBQThCO0lBQzlCLHNCQUFzQjtJQUN0QixzRUFBc0U7SUFDdEUsb0VBQW9FO0lBQ3BFLHFFQUFxRTtJQUNyRSxtRUFBbUUsRUFBQTtFOENJckU7Ozs7Ozs7Ozs7STdDVEUsOEJBQThCO0lBQzlCLHNCQUFzQjtJQUN0QixzRUFBc0U7SUFDdEUsb0VBQW9FO0lBQ3BFLHFFQUFxRTtJQUNyRSxtRUFBbUUsRUFBQTtFNkNJckU7Ozs7Ozs7Ozs7SUNWRSw2QkFEZ0Q7SUFFaEQsNEVBRmlTO0lBR2pTLCtDQUhrTjtJQUlsTixxQ0FKMkk7SUFLM0ksMERBTHlWLEVBQUE7SUFPelY7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7TUFHRSxnREFWaUc7TUFXakcsNENBWGlHO01BWWpHLHlCQVpxSyxFQUFBOztBM0QrVnpLO0UwRHpURSx3QkFBZ0I7S0FBaEIscUJBQWdCO1VBQWhCLGdCQUFnQjtFQUNoQiw2Q0FBNkM7RUFDN0MsbUNBQW1DO0VBQ25DLDRCQUE0QjtFQUM1QiwwQkFBMEI7RUFDMUIsdUNBQXVDO0VBQ3ZDLDBDQUEwQztFQUMxQyxtQkFBbUI7RUFDbkIsNkNBQTZDO0VBQzdDLDZCQUE2QjtFQUM3Qiw4QkFBOEI7RUFDOUIsaUJBQWlCO0VBQ2pCLGVBQWU7RUFDZixZQUFZO0VBQ1osYUFBYTtFQUNiLGdCQUFnQjtFQUNoQixnQkFBZ0I7RUFDaEIsV0FBVyxFQUFBOztBQUliOzs7Ozs7Ozs7OztFQVlFLHFEQUFxRDtFQUNyRCx1Q0FBdUM7RUFDdkMsK0NBQStDO0VBQy9DLG1CQUFtQjtFQUNuQiw2Q0FBNkM7RUFDN0Msa0NBQWtDO0VBQ2xDLDhCQUE4QjtFQUM5QixpQkFBaUI7RUFDakIsZ0JBQWdCO0VBQ2hCLGFBQWE7RUFDYixrQkFBa0I7RUFDbEIscUJBQXFCO0VBQ3JCLDJCQUEyQixFQUFBO0VBeEI3QjtJQTJCSSwrQkFBK0I7SUFDL0IsbUNBQW1DLEVBQUE7RUE1QnZDOzs7Ozs7Ozs7OztJQTJCSSwrQkFBK0I7SUFDL0IsbUNBQW1DLEVBQUE7RUE1QnZDOzs7Ozs7Ozs7OztJQWdDSSxxREFBcUQ7SUFDckQsNkNBQTZDLEVBQUE7SUFqQ2pEO01Bb0NNLHFDQUFxQztNQUNyQyx5Q0FBeUMsRUFBQTtJQXJDL0M7Ozs7Ozs7Ozs7O01Bb0NNLHFDQUFxQztNQUNyQyx5Q0FBeUMsRUFBQTs7QUFNL0M7O0VBRUUsZ0NBQWdDO0VBQ2hDLFNBQVM7RUFDVCxvRkFBb0Y7RUFDcEYsVUFBVTtFQUNWLFVBQVU7RUFDVixvQkFBb0I7RUFFcEIsa0JBQWtCO0VBQ2xCLCtCQUErQixFQUFBOztBQUlqQzs7RUFFRSx1QkFBdUI7RUFDdkIsZUFBZTtFQUNmLG9CQUFvQjtFQUNwQix3Q0FBd0MsRUFBQTs7QUFJMUM7O0VBRUUsa0JBQWtCO0VBQ2xCLG9DQUFvQztFQUNwQywyQkFBMkI7RUFDM0IsNEJBQTRCO0VBQzVCLG1DQUFtQztFQUNuQyxtQkFBbUI7RUFDbkIsMENBQTBDO0VBQzFDLFdBQVc7RUFDWCxvQkFBb0I7RUFDcEIsY0FBYztFQUNkLGdDQUFnQztFQUNoQyxpQ0FBaUM7RUFDakMsa0JBQWtCO0VBQ2xCLDJDQUEyQztFQUMzQyxxQ0FBcUM7RUFDckMsK0JBQStCLEVBQUE7O0FBSWpDO0VBQ0Usa0JBQWtCLEVBQUE7O0FBSXBCO0VBQ0UsNENBQTRDLEVBQUE7O0FBSTlDOztFQUVFLHVDQUF1QztFQUN2QyxtQ0FBbUM7RUFDbkMsZ0JBQWdCO0VBQ2hCLHlCQUF5QixFQUFBOztBQUkzQjs7RUFFRSxxQkFBb0I7RUFDcEIseUJBQXlCLEVBQUE7O0FBSTNCO0VBQ0UsMFBBQTBQO0VBQzFQLGdEQUFnRCxFQUFBOztBQUlsRDtFQUNFLHdSQUF3UjtFQUN4Uiw0Q0FBNEMsRUFBQTs7QUFJOUM7Ozs7RUFJRSxtQ0FBbUM7RUFDbkMseUNBQXlDLEVBQUE7O0FBSTNDOztFQUVFLGVBQWU7RUFDZixnQkFBZ0IsRUFBQTs7QUFJbEIsZ0RBQUE7QUFDQTs7RUFFRSxnREFBZ0QsRUFBQTs7QUFFbEQsK0NBQUE7QUU1TUEsZ0RBQUE7QUFFQTtFQUNFLG9CQUFvQjtFQUNwQixnQkFBZ0IsRUFBQTtFQUZsQjtJQUtJLDZCQUE2QjtJQUM3QiwwQ0FBMEM7SUFDMUMsa0JBQWtCO0lBQ2xCLG1CQUFtQjtJQUNuQix5QkFBeUI7SUFDekIsZ0JBQWdCO0lBQ2hCLGlDQUFpQztJQUNqQyxxQkFBcUI7SUFDckIsOEJBQThCO0lBQzlCLG9CQUFvQjtJQUNwQixrQkFBa0I7SUFDbEIsa0JBQWtCO0lBQ2xCLHFCVG5Cc0IsRUFBQTtFU0UxQjs7SUFzQkksMkNBQTJDLEVBQUE7O0FBSy9DO0VBQ0UsZ0JBQWdCO0VBQ2hCLGtEQUFrRDtFQUNsRCxhQUFhO0VBQ2IsZ0JBQWdCLEVBQUE7RUFKbEI7SUFPSSxXQUFXO0lBQ1gsbUJBQW1CO0lBQ25CLGNBQWM7SUFDZCxrQkFBa0I7SUFDbEIsYUFBYTtJQUNiLGVBQWUsRUFBQTtFQVpuQjtJQWdCSSw2QkFBNkI7SUFDN0IscUNBQXFDO0lBQ3JDLGtCQUFrQjtJQUNsQixtQkFBbUI7SUFDbkIseUJBQXlCO0lBQ3pCLGdCQUFnQjtJQUNoQiw0QkFBNEI7SUFDNUIscUJBQXFCO0lBQ3JCLDhCQUE4QjtJQUM5QixrQkFBa0I7SUFDbEIsa0JBQWtCO0lBQ2xCLHFCVHhEc0IsRUFBQTtFUzZCMUI7O0lBZ0NJLDJDQUEyQyxFQUFBOztBQUsvQztFQUNFLGFBQWE7RUFDYixlQUFlO0VBQ2YsOEJBQThCLEVBQUE7O0E1RHdMN0I7RTZEMVBELDhCQUFzQjtFQUN0QiwwQ0FBcUIsRUFBQTs7QUFHdkI7RUFDRSw2Q0FBNkM7RUFDN0MsbUJBQW1CO0VBQ25CLGFBQWEsRUFBQTs7QUFHZjs7RUFFRSw0Q0FBNEM7RUFDNUMsYUFBYSxFQUFBOztBQU1mO0VBQ0UsZUFBZSxFQUFBO0VBRGpCO0lBSUksY0FBYztJQUNkLGNBQWMsRUFBQTtFQUxsQjtJQVNJLGtCQUFrQjtJQUNsQixtQkFBbUI7SUFDbkIsZUFBZTtJQUNmLGdCQUFnQixFQUFBOztBQzlCcEI7RUFDRSw2QkFBNkI7RUFHN0IsYUFBYSxFQUFBO0VBSmY7SUFPSSxtQkFBbUI7SUFDbkIsYUFBYTtJQUNiLGlDQUFpQztJQUNqQyxZQUFZO0lBQ1osdUJBQXVCO0lBQ3ZCLFNBQVM7SUFDVCxXQUFXO0lBQ1gsd0JBQXdCO0lBQ3hCLFdBQVcsRUFBQTtJQUVYO01BakJKO1FBa0JNLFlBQVk7UUFDWixXQUFXLEVBQUEsRUFFZDtFQXJCSDtJQTBCSSxVQUFVLEVBQUE7SUExQmQ7TUE2Qk0sOEJBQTZCLEVBQUE7O0FBS25DO0VBQ0UsbUJBQW1CO0VBQ25CLFlBQVk7RUFDWixhQUFhO0VBQ2IsdUJBQXVCO0VBQ3ZCLFNBQVM7RUFDVCxVQUFVO0VBQ1YsZUFBZTtFQUNmLFdBQVc7RUFDWCxxQkFBcUI7RUFDckIsaURYaER3QjtFV2lEeEIsYUFBYSxFQUFBO0VBWGY7SUFlSSxpQ0FBaUMsRUFBQTtFQWZyQztJQW1CSSxrQ0FBa0MsRUFBQTtFQW5CdEM7SUF3QkksOENBQTZELEVBQUE7RUF4QmpFO0lBNEJJLFVBQVUsRUFBQTtFQTVCZDtJQWdDSSxVQUFVLEVBQUE7SUFoQ2Q7TUFvQ00sVUFBVSxFQUFBOztBQ3pFaEI7RUFDRSxhQUFhO0VBQ2IsZUFBZTtFQUNmLG9CQUFvQixFQUFBOztBQUd0QjtFQUNFLHFCQUFxQjtFQUNyQixrQkFBa0I7RUFDbEIsV0FBVyxFQUFBOztBQUlYO0VBQ0UscUNBQXNDLEVBQUE7O0FBRHhDO0VBQ0UscUNBQXNDLEVBQUE7O0FBRHhDO0VBQ0UscUNBQXNDLEVBQUE7O0FBRHhDO0VBQ0UscUNBQXNDLEVBQUE7O0FBRHhDO0VBQ0UscUNBQXNDLEVBQUE7O0FBRHhDO0VBQ0UscUNBQXNDLEVBQUE7O0FBRHhDO0VBQ0UscUNBQXNDLEVBQUE7O0FBRHhDO0VBQ0UscUNBQXNDLEVBQUE7O0FBSTFDO0VBQ0UsY0FBYyxFQUFBOztBQ25CaEI7RUFDRSwyQkFBMkI7RUFDM0Isc0JBQXNCO0VBQ3RCLFlBQVk7RUFDWixPQUFPO0VBQ1Asa0JBQWtCO0VBQ2xCLE1BQU07RUFDTixXQUFXO0VBQ1gsVUFBVSxFQUFBOztBQUlaO0VBQ0UsZ0JBQWdCO0VBQ2hCLGtCQUFrQixFQUFBOztBQ2ZwQixpREFBQTtBQUNBO0VBQ0UsdUJBQXVCO0VBQ3ZCLGFBQWE7RUFDYixnQ0FBZ0M7RUFDaEMsZUFBZTtFQUNmLDJCQUEyQjtFQUMzQixnQkFBZ0I7RUFDaEIsZ0JBQWdCO0VBQ2hCLGdCQUFnQjtFQUNoQixXQUFXLEVBQUE7RUFUYjtJQVlJLHFCQUFxQixFQUFBOztBQUd6QixxQkFBQTtBQUVBO0VBQ0UsbUJBQW1CO0VBQ25CLG9DQUFvQztFQUNwQyxnREFBZ0Q7RUFDaEQsOENBQThDO0VBQzlDLCtDQUErQztFQUMvQyw2Q0FBNkM7RUFDN0MsbUNBQW1DO0VBQ25DLGFBQWE7RUFDYixzQ0FBc0M7RUFDdEMsWUFBWTtFQUNaLHVCQUF1QjtFQUN2QixjQUFjO0VBQ2QsZUFBZTtFQUNmLHFCZGhDd0I7RWNpQ3hCLFdBQVcsRUFBQTtFQUVYO0lBakJGO01Ba0JJLFlBQVk7TUFDWixXQUFXLEVBQUEsRUFnQmQ7RUFuQ0Q7SUF1QkksNEJBQTRCO0lBQzVCLCtCQUErQjtJQUMvQix5QkFBeUI7SUFDekIsNEJBQTRCLEVBQUE7RUExQmhDO0lBOEJJLDhCQUE4QjtJQUM5Qiw2QkFBNkI7SUFDN0IsMkJBQTJCO0lBQzNCLDBCQUEwQixFQUFBOztBQUk5Qjs7RUFFRSwwREFBMEQ7RUFDMUQsa0RBQWtEO0VBQ2xELHlDQUF5QyxFQUFBOztBQUczQztFQUNFLDREQUE0RDtFQUM1RCxvREFBb0Q7RUFDcEQsMkNBQTJDLEVBQUE7O0FBSTdDOztFQUVFLGtCQUFrQjtFQUNsQixtQkFBbUI7RUFDbkIsV0FBVyxFQUFBO0VBRVg7SUFORjs7TUFPSSxrQkFBa0I7TUFDbEIsbUJBQW1CLEVBQUEsRUFFdEI7O0FDNUVELDZDQUFBO0FBQ0E7RUFDRSxvQ0FBb0M7RUFDcEMseUJBQXlCO0VBQ3pCLDhCQUE4QjtFQUM5QixvQ0FBb0M7RUFDcEMsbUJBQW1CO0VBQ25CLGFBQWEsRUFBQTtFQU5mO0lBU0kseUJBQXlCLEVBQUE7O0FBSTdCO0VBQ0UsZ0NBQWdDLEVBQUE7O0FBR2xDO0VBQ0UseUJBQXlCO0VBQ3pCLDhCQUE4QjtFQUM5Qix1Q0FBdUMsRUFBQTs7QUFHekM7RUFDRSxnQkFBZ0I7RUFDaEIsbUJBQW1CO0VBQ25CLGNBQWM7RUFDZCxVQUFVLEVBQUE7RUFKWjtJQU9JLHlCQUF5QjtJQUN6QixxQkFBcUIsRUFBQTtFQVJ6QjtJQVlJLHlCQUF5QjtJQUN6QixvQ0FBb0MsRUFBQTs7QUFLeEM7RUFHSSx3QkFBd0I7RUFDeEIsOEJBQThCO0VBQzlCLGtCQUFrQjtFQUNsQixRQUFRLEVBQUE7O0FBTlo7RUFlSSxnQkFBZ0I7RUFDaEIsU0FBUztFQUNULFVBQVUsRUFBQTs7QUFqQmQ7RUFxQkksbUJBQW1CO0VBQ25CLGdCQUFnQixFQUFBOztBQXRCcEI7O0VBMkJJLGdCQUFnQjtFQUNoQixhQUFhLEVBQUE7O0FBNUJqQjtFQWdDSSxtQkFBbUI7RUFDbkIsb0JBQW9CO0VBQ3BCLGVBQWU7RUFDZiwyQkFBMkI7RUFDM0IsU0FBUztFQUNULFdBQVcsRUFBQTs7QUFyQ2Y7RUF5Q0ksZ0JBQWdCLEVBQUE7O0FBekNwQjs7RUE4Q0kscUJBQXFCO0VBQ3JCLG9DQUFvQztFQUNwQyxtQkFBbUI7RUFDbkIsZ0JBQWdCLEVBQUE7O0FBakRwQjs7RUFzREksa0JBQWtCLEVBQUE7O0FBdER0Qjs7RUEyREksZ0JBQWdCO0VBQ2hCLGFBQWEsRUFBQTs7QUE1RGpCOztFQWlFSSxXQUFXLEVBQUE7O0FBR2I7RUFwRUY7SUF1RU0sY0FBYztJQUNkLFdBQVcsRUFBQTtFQXhFakI7SUE0RU0sYUFBYTtJQUNiLGVBQWU7SUFDZixtQkFBbUI7SUFDbkIsb0JBQW9CLEVBQUE7SUEvRTFCO01Ba0ZRLGtCQUFrQjtNQUNsQixtQkFBbUIsRUFBQTtFQW5GM0I7O0lBeUZNLG9CQUFvQjtJQUNwQixlQUFlO0lBQ2YsdUJBQXVCLEVBQUE7SUEzRjdCOzs7O01BK0ZRLDhCQUE4QjtNQUM5QixXQUFXLEVBQUEsRUFDWjs7QUFJUCw0Q0FBQTtBQ2pKQTs7RUFFRSxvQ0FBb0MsRUFBQTs7QUFHdEM7RUFDRSxhQUFhO0VBQ2Isc0JBQUE7RUFDQSxjQUFjO0VBQ2QsOEJBQThCLEVBQUE7RUFKaEM7O0lBUUksV0FBVyxFQUFBOztBQUlmO0VBRUksY0FBYyxFQUFBO0VBRWQ7SUFKSjtNQ2pCRSxhQUFhO01BQ2IsK0JBQWdEO01BQ2hELGNBSHNHO01BSXRHLGtCQUp1SDtNQUt2SCxnREFBdUUsRUFBQTtNQUcxQztRRFUvQjtVQ1RJLGFBQWE7VUFDYixlQUFlO1VBQ2YsZ0JBQWdCLEVBQUE7VUFFaEI7WUFFRSxtQkFmbUg7WUFnQm5ILGtCQWhCa0c7WUFpQmxHLHdCQUEwQyxFQUFBO1lBRTFDO2NBQ0UsZUFBZSxFQUFBLEVBQ2hCLEVBQUE7RUFLTDtJRFJGO01DU0ksYUFBYTtNQUNiLGVBQWU7TUFDZixnQkFBZ0IsRUFBQTtNQWhCaEI7UUFvQkUsbUJBakNtSDtRQWtDbkgsa0JBbENrRztRQW1DbEcsd0JBQTBDLEVBQUE7UUFoQjFDO1VBbUJFLGVBQWUsRUFBQSxFQUNoQjtFRGpCSDtNQ3NCNkI7UUQxQmpDO1VDMkJJLGFBQWE7VUFDYixlQUFlO1VBQ2YsZ0JBQWdCLEVBQUE7VUFsQ2hCO1lBc0NFLG1CQW5EbUg7WUFvRG5ILGtCQXBEa0c7WUFxRGxHLHdCQUEwQyxFQUFBO1lBbEMxQztjQXFDRSxlQUFlLEVBQUEsRUFDaEIsRUFBQTs7QUR2Q1A7RUFXSSwrQ0FBK0M7RUFDL0MsZUFBZSxFQUFBO0VBWm5CO0lBZU0sa0RBQWtELEVBQUE7O0FBZnhEO0VBb0JJLDhCQUE4QjtFQUM5QixtQkFBbUIsRUFBQTs7QUFyQnZCO0VBeUJJLGdCQUFnQixFQUFBOztBQXpCcEI7RUE2QkksNkNBQTZDO0VBQzdDLHdCQUF3QixFQUFBO0VBOUI1QjtJQWtDTSxtQ0FBbUM7SUFDbkMsa0NBQWtDLEVBQUE7O0FFbkRwQztFQUZKO0lBR00sbUJBQW1CO0lBQ25CLGdCQUFnQixFQUFBLEVBRW5COztBQU5IO0VqRXlCSSxlaUVoQjZCO0VBQzdCLG1CQUFtQixFQUFBO0VqRWlCbkI7SWlFM0JKO01qRTRCTSxzREFBK0ksRUFBQSxFaUVqQmxKO0VqRW9CQztJaUUvQko7TWpFZ0NNLGdCaUV2QmtDLEVBQUEsRUFFckM7O0FDUkgsZ0RBQUE7QUFDQTtFQUNFLGdCQUFnQjtFQUNoQixnQkFBZ0I7RUFDaEIsaUJBQWlCLEVBQUE7O0FBR25CO0VBQ0UsZ0JBQWdCO0VBQ2hCLFNBQVM7RUFDVCxVQUFVLEVBQUE7RUFIWjtJQU9JLGdCQUFnQixFQUFBO0VBUHBCO0lBV0ksOEJBQThCO0lBQzlCLG1CQUFtQjtJQUNuQixhQUFhO0lBQ2IsVUFBVSxFQUFBO0VBZGQ7SUFrQkksZ0NBQWdDO0lBQ2hDLDhCQUE4QixFQUFBO0VBbkJsQztJQXVCSSxrQkFBa0I7SUFDbEIsWUFBWSxFQUFBO0VBeEJoQjtJQTRCSSx1Q0FBdUM7SUFDdkMsOEJBQThCO0lBQzlCLG1CQUFtQjtJQUNuQixhQUFhO0lBQ2IsVUFBVSxFQUFBO0VBaENkOztJQXFDSSxnQkFBZ0I7SUFDaEIsZ0NBQWdDLEVBQUE7RUF0Q3BDO0lBMENJLDZCQUE2QixFQUFBO0VBMUNqQztJQThDSSw4QkFBOEI7SUFDOUIsU0FBUztJQUNULFVBQVUsRUFBQTtJQWhEZDtNQW1ETSw0Q0FBNEMsRUFBQTtJQW5EbEQ7TUF3RE0sVUFBVSxFQUFBO0VBeERoQjtJQTZESSwyQ0FBMkM7SUFDM0MsaUJBQWlCO0lBQ2pCLGtCQUFrQjtJQUNsQixRQUFRLEVBQUE7O0FBSVo7RUFDRSxtQkFBbUI7RUFDbkIsb0JBQW9CO0VBQ3BCLDhCQUE4QjtFQUM5QixpQkFBaUIsRUFBQTtFQUpuQjtJQU9JLGdDQUFnQyxFQUFBO0VBUHBDOzs7SUFjSSx5QkFBeUIsRUFBQTtFQWQ3QjtJQWtCSSxpQkFBaUI7SUFDakIsa0JBQWtCO0lBQ2xCLFNBQVMsRUFBQTs7QUFNWDtFQURGO0lBRUksYUFBYTtJQUNiLGFBQWE7SUFDYiw4QkFBOEI7SUFFOUIsc0JBQUE7SUFDQSx1QkFBdUIsRUFBQTtJQVAzQjs7O01BYU0sdUJBQXVCLEVBQUEsRUFDeEI7O0FBSUw7RUFDRSxnQkFBZ0I7RUFDaEIsaUJBQWlCLEVBQUE7RUFHZjtJQUxKO01BTU0sV0FBVyxFQUFBLEVBRWQ7RUFSSDtJQVdJLG1CQUFtQjtJQUNuQixhQUFhLEVBQUE7SUFaakI7TUFlTSxpQkFBaUI7TUFDakIsYUFBYTtNQUNiLFdBQVcsRUFBQTtFQWpCakI7SUFzQkksWUFBWTtJQUNaLG1CQUFtQjtJQUNuQixlQUFlO0lBQ2YsYUFBYSxFQUFBO0lBekJqQjtNQTRCTSxpQkFBaUI7TUFDakIsYUFBYTtNQUNiLFdBQVcsRUFBQTtFQTlCakI7SUFtQ0ksbUJBQW1CO0lBQ25CLGFBQWE7SUFDYixrQkFBa0IsRUFBQTtJQXJDdEI7TUF3Q00saUJBQWlCO01BQ2pCLGFBQWE7TUFDYixXQUFXLEVBQUE7RUExQ2pCO0lBK0NJLFdBQVc7SUFDWCxjQUFjO0lBQ2QsZ0JBQWdCO0lBQ2hCLGFBQWEsRUFBQTtFQWxEakI7SUFzREksbUJBQW1CLEVBQUE7RUF0RHZCO0lBMERJLFdBQVcsRUFBQTs7QUFHZiwrQ0FBQTtBQ3RMQTs7RUFFRSxlQUFlO0VBQ2Ysb0NBQW9DO0VBQ3BDLGVBQWU7RUFDZixnQkFBZ0I7RUFDaEIsaUNBQWlDLEVBQUE7O0FBSW5DO0VBQ0UsK0NBQStDO0VBQy9DLGlCQUFpQjtFQUNqQixrQkFBa0I7RUFDbEIsZ0JsQmJ1QjtFa0JjdkIsZUFBZTtFQUNmLGdCQUFnQjtFQUNoQixXQUFXLEVBQUE7RUFFWDtJQVRGO01BVUksaURBQWlEO01BQ2pELGtEQUFrRDtNQUNsRCxpRUFBaUUsRUFBQTtNQVpyRTtRQWVNLGlEQUFpRDtRQUNqRCxrREFBa0Q7UUFDbEQsaUVBQWlFLEVBQUEsRUFDbEU7O0FDM0JMOzs7RUNGQSxnREFBQSxFQUFpRDtFREVqRDs7Ozs7O0lFRUUsbUJBQW1CLEVBQUE7RUZGckI7Ozs7OztJRU9FLDhDQUE4QztJQUM5QywrQ0FBK0M7SUFDL0MsbUJBQW1CO0lBQ25CLGlCQUFpQjtJQUNqQixrQkFBa0I7SUFDbEIsZ0JBQWdCO0lBQ2hCLG9CQUFvQjtJQUNwQix5QkFBeUIsRUFBQTtJQUV6QjtNRmhCRjs7Ozs7O1FFaUJJLG9CQUFvQjtRQUNwQix3QkFBd0IsRUFBQSxFQVczQjtJQVJDO01GckJGOzs7Ozs7UUVzQkksNEJBQTRCLEVBQUEsRUFPL0I7SUY3QkQ7Ozs7OztNRTBCSSw4QkFBOEI7TUFDOUIsK0NBQStDLEVBQUE7RUYzQm5EOzs7Ozs7SUVpQ0UsaURBQWlEO0lBQ2pELGtEQUFrRDtJQUNsRCxpRUFBaUUsRUFBQTtFRm5DbkU7OztJRXVDRSxpQkFBaUIsRUFBQTtFRnZDbkI7OztJR0FFLG9EQUFvRDtJQUNwRCxvREFBb0Q7SUFDcEQsa0JBQWtCO0lBQ2xCLDZCQUE2QjtJQUM3QixjQUFjO0lBQ2Qsa0NBQWtDO0lBQ2xDLDhCQUE4QjtJQUM5QiwrQ0FBK0M7SUFDL0Msa0RBQWtEO0lBQ2xELCtDQUErQztJQUMvQyxjQUFjO0lBQ2QsdUJBQXVCO0lBQ3ZCLGtCQUFrQjtJQUNsQixnQkFBZ0I7SUFDaEIscUJBQXFCLEVBQUE7SUhkdkI7OztNR2lCSSw2QkFBNkI7TUFDN0Isa0JBQWtCO01BQ2xCLDZCQUE2QixFQUFBO0VBTS9CO0lIekJGOzs7TUcwQkksZ0RBQWdEO01BQ2hELGlEQUFpRDtNQUNqRCxpRUFBaUUsRUFBQSxFQU9wRTtFSG5DRDs7O0lHZ0NJLGlEQUFpRDtJQUNqRCxrREFBa0QsRUFBQTtFSGpDdEQ7OztJSUFFLGlEQUFpRDtJQUNqRCxrREFBa0QsRUFBQTtFSkRwRDs7O0lJT0ksaURBQWlEO0lBQ2pELGtEQUFrRDtJQUNsRCxpRUFBaUUsRUFBQTtFQUlqRTtJSmJKOzs7TUljTSxhQUFhO01BQ2IsYUFBYTtNQUNiLHFDQUFxQztNQUNyQyxpRUFBaUUsRUFBQTtNSmpCdkU7OztRSW9CUSxTQUFTO1FBQ1QsV0FBVyxFQUFBLEVBQ1o7RUFHSDtJSnpCSjs7O01JMEJNLHFDQUFxQyxFQUFBLEVBRXhDO0VKNUJIOzs7SUlPSSxpREFBaUQ7SUFDakQsa0RBQWtEO0lBQ2xELGlFQUFpRSxFQUFBO0VBSWpFO0lKYko7OztNSWNNLGFBQWE7TUFDYixhQUFhO01BQ2IscUNBQXFDO01BQ3JDLGlFQUFpRSxFQUFBO01KakJ2RTs7O1FJb0JRLFNBQVM7UUFDVCxXQUFXLEVBQUEsRUFDWjtFQUdIO0lKekJKOzs7TUkwQk0scUNBQXFDLEVBQUEsRUFFeEM7RUo1Qkg7OztJSU9JLGlEQUFpRDtJQUNqRCxrREFBa0Q7SUFDbEQsaUVBQWlFLEVBQUE7RUFJakU7SUpiSjs7O01JY00sYUFBYTtNQUNiLGFBQWE7TUFDYixxQ0FBcUM7TUFDckMsaUVBQWlFLEVBQUE7TUpqQnZFOzs7UUlvQlEsU0FBUztRQUNULFdBQVcsRUFBQSxFQUNaO0VBR0g7SUp6Qko7OztNSTBCTSxxQ0FBcUMsRUFBQSxFQUV4QztFSjVCSDs7O0lJT0ksaURBQWlEO0lBQ2pELGtEQUFrRDtJQUNsRCxpRUFBaUUsRUFBQTtFQUlqRTtJSmJKOzs7TUljTSxhQUFhO01BQ2IsYUFBYTtNQUNiLHFDQUFxQztNQUNyQyxpRUFBaUUsRUFBQTtNSmpCdkU7OztRSW9CUSxTQUFTO1FBQ1QsV0FBVyxFQUFBLEVBQ1o7RUFHSDtJSnpCSjs7O01JMEJNLHFDQUFxQyxFQUFBLEVBRXhDO0VKNUJIOzs7SUlPSSxpREFBaUQ7SUFDakQsa0RBQWtEO0lBQ2xELGlFQUFpRSxFQUFBO0VBSWpFO0lKYko7OztNSWNNLGFBQWE7TUFDYixhQUFhO01BQ2IscUNBQXFDO01BQ3JDLGlFQUFpRSxFQUFBO01KakJ2RTs7O1FJb0JRLFNBQVM7UUFDVCxXQUFXLEVBQUEsRUFDWjtFQUdIO0lKekJKOzs7TUkwQk0scUNBQXFDLEVBQUEsRUFFeEM7RUo1Qkg7OztJSU9JLGlEQUFpRDtJQUNqRCxrREFBa0Q7SUFDbEQsaUVBQWlFLEVBQUE7RUFJakU7SUpiSjs7O01JY00sYUFBYTtNQUNiLGFBQWE7TUFDYixxQ0FBcUM7TUFDckMsaUVBQWlFLEVBQUE7TUpqQnZFOzs7UUlvQlEsU0FBUztRQUNULFdBQVcsRUFBQSxFQUNaO0VBR0g7SUp6Qko7OztNSTBCTSxxQ0FBcUMsRUFBQSxFQUV4QztFSjVCSDs7O0lJT0ksaURBQWlEO0lBQ2pELGtEQUFrRDtJQUNsRCxpRUFBaUUsRUFBQTtFQUlqRTtJSmJKOzs7TUljTSxhQUFhO01BQ2IsYUFBYTtNQUNiLHFDQUFxQztNQUNyQyxpRUFBaUUsRUFBQTtNSmpCdkU7OztRSW9CUSxTQUFTO1FBQ1QsV0FBVyxFQUFBLEVBQ1o7RUFHSDtJSnpCSjs7O01JMEJNLHFDQUFxQyxFQUFBLEVBRXhDO0VKNUJIOzs7SUlPSSxpREFBaUQ7SUFDakQsa0RBQWtEO0lBQ2xELGlFQUFpRSxFQUFBO0VBSWpFO0lKYko7OztNSWNNLGFBQWE7TUFDYixhQUFhO01BQ2IscUNBQXFDO01BQ3JDLGlFQUFpRSxFQUFBO01KakJ2RTs7O1FJb0JRLFNBQVM7UUFDVCxXQUFXLEVBQUEsRUFDWjtFQUdIO0lKekJKOzs7TUkwQk0scUNBQXFDLEVBQUEsRUFFeEM7RUo1Qkg7OztJSU9JLGlEQUFpRDtJQUNqRCxrREFBa0Q7SUFDbEQsaUVBQWlFLEVBQUE7RUFJakU7SUpiSjs7O01JY00sYUFBYTtNQUNiLGFBQWE7TUFDYixxQ0FBcUM7TUFDckMsaUVBQWlFLEVBQUE7TUpqQnZFOzs7UUlvQlEsU0FBUztRQUNULFdBQVcsRUFBQSxFQUNaO0VBR0g7SUp6Qko7OztNSTBCTSxxQ0FBcUMsRUFBQSxFQUV4QztFSjVCSDs7O0lLQUUsaURBQWlEO0lBQ2pELGtEQUFrRCxFQUFBO0lMRHBEOzs7TUtJSSw0Q0FBNEMsRUFBQTtFTEpoRDs7Ozs7O0lNQ0UsZUFBZTtJQUNmLFdBQVcsRUFBQTtFQUdiO0lOTEE7Ozs7OztNTVFJLGlFQUFpRSxFQUFBLEVBQ2xFO0VOVEg7OztJTWFFLGNBQWM7SUFDZCxlQUFlO0lBQ2YsZUFBZTtJQUNmLGVBQWU7SUFDZixnQkFBZ0I7SUFDaEIsV0FBVyxFQUFBO0VObEJiOzs7Ozs7SU9DRSxnQkFBZ0IsRUFBQTtJUERsQjs7Ozs7O01PSUkseUJBQXlCO01BQ3pCLDhCQUE4QjtNQUM5QixpQkFBaUI7TUFDakIsa0RBQWtEO01BQ2xELFdBQVcsRUFBQTtJUFJmOzs7Ozs7TU9ZSSxnQkFBZ0IsRUFBQTtJUFpwQjs7Ozs7O01PZ0JJLGlEQUFpRDtNQUNqRCxrREFBa0QsRUFBQTtJUGpCdEQ7Ozs7OztNT3FCSSxpREFBaUQ7TUFDakQsa0RBQWtEO01BQ2xELGlFQUFpRSxFQUFBO0VQdkJyRTs7Ozs7O0lPNkJFLGFBQWE7SUFDYixlQUFlLEVBQUE7SVA5QmpCOzs7Ozs7TU9pQ0ksU0FBUztNQUNULFdBQVcsRUFBQTtFUGxDZjs7Ozs7O0lPMENJLGNBQWM7SUFDZCxxQ0FBc0MsRUFBQTtJQUV0QztNUDdDSjs7Ozs7O1FPOENNLHFDQUFxQyxFQUFBLEVBT3hDO0lBSkM7TVBqREo7Ozs7OztRT2tETSxjQUFjO1FBQ2QscUNBQXFDLEVBQUEsRUFFeEM7RVByREg7Ozs7OztJTzBDSSxjQUFjO0lBQ2QscUNBQXNDLEVBQUE7SUFFdEM7TVA3Q0o7Ozs7OztRTzhDTSxxQ0FBcUMsRUFBQSxFQU94QztJQUpDO01QakRKOzs7Ozs7UU9rRE0sY0FBYztRQUNkLHFDQUFxQyxFQUFBLEVBRXhDO0VQckRIOzs7Ozs7SU8wQ0ksY0FBYztJQUNkLHFDQUFzQyxFQUFBO0lBRXRDO01QN0NKOzs7Ozs7UU84Q00scUNBQXFDLEVBQUEsRUFPeEM7SUFKQztNUGpESjs7Ozs7O1FPa0RNLGNBQWM7UUFDZCxxQ0FBcUMsRUFBQSxFQUV4QztFUHJESDs7Ozs7O0lPMENJLGNBQWM7SUFDZCxxQ0FBc0MsRUFBQTtJQUV0QztNUDdDSjs7Ozs7O1FPOENNLHFDQUFxQyxFQUFBLEVBT3hDO0lBSkM7TVBqREo7Ozs7OztRT2tETSxjQUFjO1FBQ2QscUNBQXFDLEVBQUEsRUFFeEM7RVByREg7Ozs7OztJTzBDSSxjQUFjO0lBQ2QscUNBQXNDLEVBQUE7SUFFdEM7TVA3Q0o7Ozs7OztRTzhDTSxxQ0FBcUMsRUFBQSxFQU94QztJQUpDO01QakRKOzs7Ozs7UU9rRE0sY0FBYztRQUNkLHFDQUFxQyxFQUFBLEVBRXhDO0VQckRIOzs7Ozs7SU8wQ0ksY0FBYztJQUNkLHFDQUFzQyxFQUFBO0lBRXRDO01QN0NKOzs7Ozs7UU84Q00scUNBQXFDLEVBQUEsRUFPeEM7SUFKQztNUGpESjs7Ozs7O1FPa0RNLGNBQWM7UUFDZCxxQ0FBcUMsRUFBQSxFQUV4QztFUHJESDs7Ozs7O0lPMENJLGNBQWM7SUFDZCxxQ0FBc0MsRUFBQTtJQUV0QztNUDdDSjs7Ozs7O1FPOENNLHFDQUFxQyxFQUFBLEVBT3hDO0lBSkM7TVBqREo7Ozs7OztRT2tETSxjQUFjO1FBQ2QscUNBQXFDLEVBQUEsRUFFeEM7RVByREg7Ozs7OztJTzBDSSxjQUFjO0lBQ2QscUNBQXNDLEVBQUE7SUFFdEM7TVA3Q0o7Ozs7OztRTzhDTSxxQ0FBcUMsRUFBQSxFQU94QztJQUpDO01QakRKOzs7Ozs7UU9rRE0sY0FBYztRQUNkLHFDQUFxQyxFQUFBLEVBRXhDO0VQckRIOzs7SU95REUsZ0JBQWdCLEVBQUE7RVB6RGxCOzs7Ozs7SVFDRSx5REFBeUQ7SUFDekQsc0RBQXNELEVBQUE7RVJGeEQ7OztJUU1FLGdCM0JOdUIsRUFBQTtFbUJBekI7Ozs7Ozs7Ozs7Ozs7OztJU01FLDRDQUE0QyxFQUFBO0VUTjlDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7SVNpQkksYUFBYSxFQUFBO0VUakJqQjs7O0lVQUUsY0FBYztJQUNkLDJDQUEyQztJQUMzQyx3Q0FBd0MsRUFBQTtJVkYxQzs7O01VS0ksZUFBZTtNQUNmLGdCQUFnQixFQUFBO0lBR2xCO01WVEY7OztRVVdNLGVBQWU7UUFDZixnQkFBZ0IsRUFBQSxFQUNqQjtJQUdIO01WaEJGOzs7UVVrQk0saUVBQWlFLEVBQUEsRUFDbEU7SVZuQkw7Ozs7OztNVXdCSSxXQUFXLEVBQUE7SVZ4QmY7OztNVTZCSSxnQkFBZ0IsRUFBQTtJVjdCcEI7OztNVWlDSSxjQUFjO01BQ2QsV0FBVyxFQUFBO01WbENmOzs7OztRVXVDTSxrRUFBQTtRQUNBLGlDQUFpQztRQUNqQyxxQkFBQSxFQUFzQjtJVnpDNUI7OztNVThDSSxtQkFBbUIsRUFBQTtJQUdyQjtNVmpERjs7Ozs7Ozs7O1FVcURNLFdBQVc7UUFDWCxZQUFZO1FBQ1osV0FBVyxFQUFBLEVBQ1o7SVZ4REw7OztNVTRESSxrQkFBa0IsRUFBQTtJVjVEdEI7OztNVWdFSSxpQkFBaUI7TUFDakIsa0JBQWtCLEVBQUE7RVZqRXRCOzs7Ozs7Ozs7SVdFRSwyREFBMkQsRUFBQTtFWEY3RDs7Ozs7O0lZQ0Usd0NBQXdDLEVBQUE7RUFJeEM7SVpMRjs7O01ZTUksOEJBQThCLEVBQUEsRUFFakM7RUFHQztJWlhGOzs7TVlZSSw4QkFBOEIsRUFBQSxFQUVqQztFQUVEO0laaEJBOzs7TVlrQkkscUNBQXFDLEVBQUEsRUFDdEM7RUNuQkQ7SWJBRjs7O01hQ0ksZ0RBQWdEO01BQ2hELGlEQUFpRDtNQUNqRCxpRUFBaUUsRUFBQSxFQUVwRTtFYkxEOzs7Ozs7SWNDRSxlQUFlO0lBQ2YsZ0JBQWdCLEVBQUE7SUFFaEI7TWRKRjs7Ozs7O1FjS0ksZ0RBQWdEO1FBQ2hELGlEQUFpRDtRQUNqRCxpRUFBaUUsRUFBQSxFQUVwRTtFZFREOzs7SWNZRSxnREFBZ0Q7SUFDaEQsaURBQWlEO0lBQ2pELGlFQUFpRSxFQUFBO0VkZG5FOzs7SUNFRSxtQ0FBMkI7WUFBM0IsMkJBQTJCO0lBQzNCLHVDQUF1QztJQUN2Qyx5QkFBeUI7SUFDekIsb0NBQW9DO0lBQ3BDLGdCQUFnQjtJQUNoQixnQkFBZ0IsRUFBQTtFRFBsQjs7O0lDV0UseUJBQXlCLEVBQUE7RURYM0I7Ozs7Ozs7Ozs7OztJQ2tCRSxTQUFTO0lBQ1Qsa0NBQWtDO0lBQ2xDLDhCQUE4QjtJQUM5QixZQUFZO0lBQ1oscUJBQXFCLEVBQUE7RUR0QnZCOzs7SUMwQkUseURBQXlELEVBQUE7RUQxQjNEOzs7SUM4QkUsd0RBQXdELEVBQUE7RUQ5QjFEOzs7Ozs7SUNtQ0UsU0FBUyxFQUFBO0lEbkNYOzs7Ozs7TUNzQ0ksMkJBQTJCLEVBQUE7SUR0Qy9COzs7Ozs7TUMwQ0ksNEJBQTRCLEVBQUE7RUQxQ2hDOzs7SUNnREUseUJBQXlCO0lBQ3pCLGlCQUFpQixFQUFBO0VEakRuQjs7O0lDcURFLGdEQUFnRDtJQUNoRCxpREFBaUQ7SUFDakQsaUVBQWlFLEVBQUE7RUFHbkU7SUQxREE7OztNQzRESSxnREFBZ0Q7TUFDaEQsaURBQWlEO01BQ2pELGlFQUFpRSxFQUFBLEVBQ2xFO0VEL0RIOzs7SWVBRSxpREFBaUQ7SUFDakQsa0RBQWtELEVBQUE7RWZEcEQ7OztJZU9JLGlEQUFpRDtJQUNqRCxrREFBa0Q7SUFDbEQsaUVBQWlFLEVBQUE7RUFJakU7SWZiSjs7O01lY00sYUFBYTtNQUNiLGFBQWE7TUFDYixxQ0FBcUM7TUFDckMsaUVBQWlFLEVBQUE7TWZqQnZFOzs7UWVvQlEsU0FBUztRQUNULFdBQVcsRUFBQSxFQUNaO0VBR0g7SWZ6Qko7OztNZTBCTSxxQ0FBcUMsRUFBQSxFQUV4QztFZjVCSDs7O0llT0ksaURBQWlEO0lBQ2pELGtEQUFrRDtJQUNsRCxpRUFBaUUsRUFBQTtFQUlqRTtJZmJKOzs7TWVjTSxhQUFhO01BQ2IsYUFBYTtNQUNiLHFDQUFxQztNQUNyQyxpRUFBaUUsRUFBQTtNZmpCdkU7OztRZW9CUSxTQUFTO1FBQ1QsV0FBVyxFQUFBLEVBQ1o7RUFHSDtJZnpCSjs7O01lMEJNLHFDQUFxQyxFQUFBLEVBRXhDO0VmNUJIOzs7SWVPSSxpREFBaUQ7SUFDakQsa0RBQWtEO0lBQ2xELGlFQUFpRSxFQUFBO0VBSWpFO0lmYko7OztNZWNNLGFBQWE7TUFDYixhQUFhO01BQ2IscUNBQXFDO01BQ3JDLGlFQUFpRSxFQUFBO01makJ2RTs7O1Flb0JRLFNBQVM7UUFDVCxXQUFXLEVBQUEsRUFDWjtFQUdIO0lmekJKOzs7TWUwQk0scUNBQXFDLEVBQUEsRUFFeEM7RWY1Qkg7OztJZU9JLGlEQUFpRDtJQUNqRCxrREFBa0Q7SUFDbEQsaUVBQWlFLEVBQUE7RUFJakU7SWZiSjs7O01lY00sYUFBYTtNQUNiLGFBQWE7TUFDYixxQ0FBcUM7TUFDckMsaUVBQWlFLEVBQUE7TWZqQnZFOzs7UWVvQlEsU0FBUztRQUNULFdBQVcsRUFBQSxFQUNaO0VBR0g7SWZ6Qko7OztNZTBCTSxxQ0FBcUMsRUFBQSxFQUV4QztFZjVCSDs7O0llT0ksaURBQWlEO0lBQ2pELGtEQUFrRDtJQUNsRCxpRUFBaUUsRUFBQTtFQUlqRTtJZmJKOzs7TWVjTSxhQUFhO01BQ2IsYUFBYTtNQUNiLHFDQUFxQztNQUNyQyxpRUFBaUUsRUFBQTtNZmpCdkU7OztRZW9CUSxTQUFTO1FBQ1QsV0FBVyxFQUFBLEVBQ1o7RUFHSDtJZnpCSjs7O01lMEJNLHFDQUFxQyxFQUFBLEVBRXhDO0VmNUJIOzs7SWVPSSxpREFBaUQ7SUFDakQsa0RBQWtEO0lBQ2xELGlFQUFpRSxFQUFBO0VBSWpFO0lmYko7OztNZWNNLGFBQWE7TUFDYixhQUFhO01BQ2IscUNBQXFDO01BQ3JDLGlFQUFpRSxFQUFBO01makJ2RTs7O1Flb0JRLFNBQVM7UUFDVCxXQUFXLEVBQUEsRUFDWjtFQUdIO0lmekJKOzs7TWUwQk0scUNBQXFDLEVBQUEsRUFFeEM7RWY1Qkg7OztJZU9JLGlEQUFpRDtJQUNqRCxrREFBa0Q7SUFDbEQsaUVBQWlFLEVBQUE7RUFJakU7SWZiSjs7O01lY00sYUFBYTtNQUNiLGFBQWE7TUFDYixxQ0FBcUM7TUFDckMsaUVBQWlFLEVBQUE7TWZqQnZFOzs7UWVvQlEsU0FBUztRQUNULFdBQVcsRUFBQSxFQUNaO0VBR0g7SWZ6Qko7OztNZTBCTSxxQ0FBcUMsRUFBQSxFQUV4QztFZjVCSDs7O0llT0ksaURBQWlEO0lBQ2pELGtEQUFrRDtJQUNsRCxpRUFBaUUsRUFBQTtFQUlqRTtJZmJKOzs7TWVjTSxhQUFhO01BQ2IsYUFBYTtNQUNiLHFDQUFxQztNQUNyQyxpRUFBaUUsRUFBQTtNZmpCdkU7OztRZW9CUSxTQUFTO1FBQ1QsV0FBVyxFQUFBLEVBQ1o7RUFHSDtJZnpCSjs7O01lMEJNLHFDQUFxQyxFQUFBLEVBRXhDO0VmNUJIOzs7SWVPSSxpREFBaUQ7SUFDakQsa0RBQWtEO0lBQ2xELGlFQUFpRSxFQUFBO0VBSWpFO0lmYko7OztNZWNNLGFBQWE7TUFDYixhQUFhO01BQ2IscUNBQXFDO01BQ3JDLGlFQUFpRSxFQUFBO01makJ2RTs7O1Flb0JRLFNBQVM7UUFDVCxXQUFXLEVBQUEsRUFDWjtFQUdIO0lmekJKOzs7TWUwQk0scUNBQXFDLEVBQUEsRUFFeEM7RUM1QkQ7SWhCQUY7OztNZ0JDSSxnREFBZ0Q7TUFDaEQsaURBQWlEO01BQ2pELGlFQUFpRSxFQUFBLEVBRXBFO0VoQkxEOzs7SWlCQUUsZUFBZTtJQUNmLFdBQVcsRUFBQTtFQUdiO0lqQkpBOzs7Ozs7TWlCT0ksaUVBQWlFLEVBQUEsRUFDbEU7RWpCUkg7OztJaUJZRSxjQUFjO0lBQ2QsZUFBZTtJQUNmLGVBQWU7SUFDZixlQUFlO0lBQ2YsZ0JBQWdCO0lBQ2hCLFdBQVcsRUFBQTtFakJqQmI7Ozs7OztJa0JDRSx3Q0FBd0M7SUFDeEMsNkJBQTZCO0lBQzdCLGVBQWU7SUFDZixrQkFBa0I7SUFDbEIsc0NBQXNDO0lBQ3RDLCtDQUErQztJQUMvQyxhQUFhO0lBQ2Isd0JBQXdCLEVBQUE7RUFHMUI7SWxCWEE7OztNa0JhSSw2QkFBNkIsRUFBQSxFQUM5QjtFbEJkSDs7O0k3REFFLHdCQUFnQjtPQUFoQixxQkFBZ0I7WUFBaEIsZ0JBQWdCO0lBQ2hCLGdEQUYwSTtJQUcxSSw0RUFINlQ7SUFJN1QsK0NBSjhPO0lBSzlPLDBCQUwwRDtJQU0xRCxlQUFlO0lBQ2YscUJBQXFCO0lBQ3JCLGtDQUFrQztJQUNsQyw4QkFBOEI7SUFDOUIsd0NBVjJhO0lBVzNhLHNCQUFzQjtJQUN0QixnQkFBZ0I7SUFDaEIsZ0JBYjZCO0lBYzdCLGdCQUFnQjtJQUNoQixzRUFBc0U7SUFDdEUsb0VBQW9FO0lBQ3BFLHFFQUFxRTtJQUNyRSxtRUFBbUU7SUFDbkUsa0JBQWtCO0lBQ2xCLHFCQUFxQjtJQUNyQix1QkFBdUI7SUFDdkIsMERBdEJrZjtJQXVCbGYsbUJBQW1CO0lBQ25CLFdBQVc7SUFHWCwyQ0FBQTtJQUlBLHFCQUFBLEVBQXNCO0lBSHRCOzs7TUFDRSxhQUFhLEVBQUE7SUFXZjs7Ozs7OztNQUdFLHNEQTNDaU07TUE0Q2pNLGtGQTVDaU07TUE2Q2pNLGdDQTdDMkYsRUFBQTtFNkRDL0Y7OztJNURBRSw4QkFBOEI7SUFDOUIsc0JBQXNCO0lBQ3RCLHNFQUFzRTtJQUN0RSxvRUFBb0U7SUFDcEUscUVBQXFFO0lBQ3JFLG1FQUFtRTtJK0VMbkUsZUFBZTtJQUNmLGtCQUFrQixFQUFBO0VuQkRwQjs7O0lvQkRFLHFEQUFxRDtJQUNyRCxpREFBaUQ7SUFDakQsMENBQTBDLEVBQUE7SXBCRDVDOzs7TW9CSUksb0JBQW9CO01BQ3BCLGlCQUFpQixFQUFBO0lwQkxyQjs7O01vQlNJLDhCQUE4QixFQUFBO0lwQlRsQzs7O01vQmFJLDhCQUE4QixFQUFBO0lwQmJsQzs7O01vQmlCSSw4QkFBOEIsRUFBQTs7QUNsQmxDOztFQUdJLFdBQVcsRUFBQTs7QUFIZjs7RUFPSSxZQUFZLEVBQUE7O0FBUGhCOztFQVdJLCtDQUErQztFQUMvQyxpREFBaUQ7RUFDakQsNENBQTRDLEVBQUE7RUFiaEQ7O0lBZ0JNLGFBQWEsRUFBQTs7QUFoQm5COztFQXFCSSwrQ0FBK0M7RUFDL0MsZ0RBQWdEO0VBQ2hELDRDQUE0QyxFQUFBO0VBdkJoRDs7SUEwQk0sYUFBYSxFQUFBOztBQUtmO0VBL0JKOztJQWdDTSxpQnhDZGE7SXdDZWIsV0FBVyxFQUFBLEVBRWQ7O0FBR0M7RUF0Q0o7O0lBdUNNLG1DQUFtQztJQUNuQyxnQ0FBZ0M7SUFDaEMsZXhDdEJXO0l3Q3VCWCxXQUFXLEVBQUEsRUFNZDs7QUFoREg7O0VBOENNLGdCQUFnQixFQUFBOztBQzlDdEIsZ0ZBQUE7QUFDQTs7Ozs7O0VBS0ksU0FBUztFQUNULDJCQUEyQjtFQUMzQixvQ0FBb0M7RUFDcEMsa0JBQWtCO0VBQ2xCLG1CQUFtQjtFQUNuQixpQkFBaUI7RUFDakIsa0JBQWtCO0VBQ2xCLGdCQUFnQjtFQUNoQixnQnpDYnFCO0V5Q2NyQixpQkFBaUI7RUFDakIsa0JBQWtCO0VBQ2xCLFdBQVcsRUFBQTtFQUVYO0lBbEJKOzs7Ozs7TUFtQk0sZ0JBQWdCLEVBQUEsRUFFbkI7O0FBckJIOzs7Ozs7OztFQTJCSSxjQUFjO0VBQ2QsV0FBVyxFQUFBOztBQTVCZjs7RUFnQ0ksZ0JBQWdCLEVBQUE7O0FDakNwQjs7RUFHSSxrQkFBa0IsRUFBQTs7QUNKdEI7RUFDRSw2Q0FBNkM7RUFDN0MseUNBQXlDO0VBQ3pDLGtCQUFrQjtFQUNsQiw2RUFBNEU7RUFDNUUsNkJBQTZCO0VBQzdCLHFCQUFxQjtFQUNyQixnQkFBZ0I7RUFDaEIsZ0JBQWdCO0VBQ2hCLHVDQUF1QztFQUN2QyxtQkFBbUIsRUFBQTs7QUNWckIsaUdBQUE7QWpHc0pBO0VpR25KRSw2QkFBNkI7RUFDN0IscUJBQXFCLEVBQUE7RUFGdkI7SUFNSSw2QkFBNkIsRUFBQTs7QUFNakM7O0VBSUksYUFBYSxFQUFBOztBQUpqQjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQ1RFLHdEQUF3RDtFQUN4RCwwREFBMEQ7RUFDMUQsNkJBQTZCO0VBQzdCLGVBQWU7RUFDZixxQkFBcUI7RUFDckIscUdBQStGLEVBQUE7RUFFL0Y7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7SUFDRSxpRUFBaUUsRUFBQTtFQUduRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztJQUNFLHlCQUF5QjtJQUN6QixnRUFBZ0U7SUFDaEUsbUNBQW1DLEVBQUE7SUFFbkM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7TUFDRSwwREFBMEQsRUFBQTtFQUk5RDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztJQUNFLDZCQUE2QjtJQUM3Qiw0Q0FBNEM7SUFDNUMsZ0JBQWdCO0lBQ2hCLG1DQUFtQztJQUNuQyxxQkFBcUIsRUFBQTtJQUtyQjtNQVZGOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O1FBV0ksbUJBQW1CO1FBQ25CLG9DQUFvQyxFQUFBLEVBTXZDO0lBSEM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7TUFDRSwwREFBMEQsRUFBQTs7QUN6Q2hFO0VBQ0UsNkJBQTZCO0VBQzdCLCtDQUErQyxFQUFBIiwiZmlsZSI6Imdsb2JhbC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBEb2N1bWVudFxuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBBZGQgYm9yZGVyIGJveCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKi9cblxuKixcbjo6YmVmb3JlLFxuOjphZnRlciB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi8qKlxuICogMS4gQWRkIHRleHQgZGVjb3JhdGlvbiBpbmhlcml0YW5jZSBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqIDIuIEFkZCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW5oZXJpdGFuY2UgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKi9cblxuOjpiZWZvcmUsXG46OmFmdGVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpbmhlcml0OyAvKiAxICovXG4gIHZlcnRpY2FsLWFsaWduOiBpbmhlcml0OyAvKiAyICovXG59XG5cbi8qKlxuICogMS4gVXNlIHRoZSBkZWZhdWx0IGN1cnNvciBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqIDIuIENoYW5nZSB0aGUgbGluZSBoZWlnaHQgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKiAzLiBVc2UgYSA0LXNwYWNlIHRhYiB3aWR0aCBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqIDQuIFJlbW92ZSB0aGUgZ3JleSBoaWdobGlnaHQgb24gbGlua3MgaW4gaU9TIChvcGluaW9uYXRlZCkuXG4gKiA1LiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluXG4gKiAgICBJRSBvbiBXaW5kb3dzIFBob25lIGFuZCBpbiBpT1MuXG4gKiA2LiBCcmVha3Mgd29yZHMgdG8gcHJldmVudCBvdmVyZmxvdyBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqL1xuXG5odG1sIHtcbiAgY3Vyc29yOiBkZWZhdWx0OyAvKiAxICovXG4gIGxpbmUtaGVpZ2h0OiAxLjU7IC8qIDIgKi9cbiAgLW1vei10YWItc2l6ZTogNDsgLyogMyAqL1xuICB0YWItc2l6ZTogNDsgLyogMyAqL1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50IC8qIDQgKi87XG4gIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiA1ICovXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLyogNSAqL1xuICB3b3JkLWJyZWFrOiBicmVhay13b3JkOyAvKiA2ICovXG59XG5cbi8qIFNlY3Rpb25zXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICovXG5cbmJvZHkge1xuICBtYXJnaW46IDA7XG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgZm9udCBzaXplIGFuZCBtYXJnaW4gb24gYGgxYCBlbGVtZW50cyB3aXRoaW4gYHNlY3Rpb25gIGFuZFxuICogYGFydGljbGVgIGNvbnRleHRzIGluIENocm9tZSwgRWRnZSwgRmlyZWZveCwgYW5kIFNhZmFyaS5cbiAqL1xuXG5oMSB7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBtYXJnaW46IDAuNjdlbSAwO1xufVxuXG4vKiBHcm91cGluZyBjb250ZW50XG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFJlbW92ZSB0aGUgbWFyZ2luIG9uIG5lc3RlZCBsaXN0cyBpbiBDaHJvbWUsIEVkZ2UsIElFLCBhbmQgU2FmYXJpLlxuICovXG5cbmRsIGRsLFxuZGwgb2wsXG5kbCB1bCxcbm9sIGRsLFxudWwgZGwge1xuICBtYXJnaW46IDA7XG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBtYXJnaW4gb24gbmVzdGVkIGxpc3RzIGluIEVkZ2UgMTgtIGFuZCBJRS5cbiAqL1xuXG5vbCBvbCxcbm9sIHVsLFxudWwgb2wsXG51bCB1bCB7XG4gIG1hcmdpbjogMDtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBvZiBib3JkZXIgY29sb3IgaW4gRmlyZWZveC5cbiAqIDIuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIEZpcmVmb3guXG4gKiAzLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIDE4LSBhbmQgSUUuXG4gKi9cblxuaHIge1xuICBjb2xvcjogaW5oZXJpdDsgLyogMSAqL1xuICBoZWlnaHQ6IDA7IC8qIDIgKi9cbiAgb3ZlcmZsb3c6IHZpc2libGU7IC8qIDMgKi9cbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRS5cbiAqL1xuXG5tYWluIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBsaXN0IHN0eWxlIG9uIG5hdmlnYXRpb24gbGlzdHMgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKi9cblxubmF2IG9sLFxubmF2IHVsIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMDtcbn1cblxuLyoqXG4gKiBQcmV2ZW50IFZvaWNlT3ZlciBmcm9tIGlnbm9yaW5nIGxpc3Qgc2VtYW50aWNzIGluIFNhZmFyaSAob3BpbmlvbmF0ZWQpLlxuICovXG5cbm5hdiBsaTo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXDIwMEJcIjtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICogMy4gUHJldmVudCBvdmVyZmxvdyBvZiB0aGUgY29udGFpbmVyIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICovXG5cbnByZSB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLyogMSAqL1xuICBmb250LXNpemU6IDFlbTsgLyogMiAqL1xuICBvdmVyZmxvdzogYXV0bzsgLyogMyAqL1xuICAtbXMtb3ZlcmZsb3ctc3R5bGU6IHNjcm9sbGJhcjsgLyogMyAqL1xufVxuXG4vKiBUZXh0LWxldmVsIHNlbWFudGljc1xuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBvbiBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG4gKi9cblxuYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gRWRnZSAxOC0sIElFLCBhbmQgU2FmYXJpLlxuICovXG5cbmFiYnJbdGl0bGVdIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDtcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuICovXG5cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogYm9sZGVyO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuY29kZSxcbmtiZCxcbnNhbXAge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8qIDEgKi9cbiAgZm9udC1zaXplOiAxZW07IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlO1xufVxuXG4vKiBFbWJlZGRlZCBjb250ZW50XG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogQ2hhbmdlIHRoZSBhbGlnbm1lbnQgb24gbWVkaWEgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKi9cblxuYXVkaW8sXG5jYW52YXMsXG5pZnJhbWUsXG5pbWcsXG5zdmcsXG52aWRlbyB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gKi9cblxuYXVkaW8sXG52aWRlbyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBpT1MgNC03LlxuICovXG5cbmF1ZGlvOm5vdChbY29udHJvbHNdKSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGhlaWdodDogMDtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGJvcmRlciBvbiBpZnJhbWVzIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICovXG5cbmlmcmFtZSB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGJvcmRlciBvbiBpbWFnZXMgd2l0aGluIGxpbmtzIGluIElFIDEwLS5cbiAqL1xuXG5pbWcge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG59XG5cbi8qKlxuICogQ2hhbmdlIHRoZSBmaWxsIGNvbG9yIHRvIG1hdGNoIHRoZSB0ZXh0IGNvbG9yIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICovXG5cbnN2Zzpub3QoW2ZpbGxdKSB7XG4gIGZpbGw6IGN1cnJlbnRDb2xvcjtcbn1cblxuLyoqXG4gKiBIaWRlIHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAqL1xuXG5zdmc6bm90KDpyb290KSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi8qIFRhYnVsYXIgZGF0YVxuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBDb2xsYXBzZSBib3JkZXIgc3BhY2luZyBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqIDIuIENvcnJlY3QgdGFibGUgYm9yZGVyIGNvbG9yIGluaGVyaXRhbmNlIGluIGFsbCBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkuXG4gKiAzLiBSZW1vdmUgdGV4dCBpbmRlbnRhdGlvbiBmcm9tIHRhYmxlIGNvbnRlbnRzIGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaS5cbiAqL1xuXG50YWJsZSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7IC8qIDEgKi9cbiAgYm9yZGVyLWNvbG9yOiBpbmhlcml0OyAvKiAyICovXG4gIHRleHQtaW5kZW50OiAwOyAvKiAzICovXG59XG5cbi8qIEZvcm1zXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFJlbW92ZSB0aGUgbWFyZ2luIG9uIGNvbnRyb2xzIGluIFNhZmFyaS5cbiAqL1xuXG5idXR0b24sXG5pbnB1dCxcbnNlbGVjdCB7XG4gIG1hcmdpbjogMDtcbn1cblxuLyoqXG4gKiAxLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAqIDIuIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRWRnZSAxOC0sIEZpcmVmb3gsIGFuZCBJRS5cbiAqL1xuXG5idXR0b24ge1xuICBvdmVyZmxvdzogdmlzaWJsZTsgLyogMSAqL1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgLyogMiAqL1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBidXR0b25zIGluIGlPUyBhbmQgU2FmYXJpLlxuICovXG5cbmJ1dHRvbixcblt0eXBlPVwiYnV0dG9uXCJdLFxuW3R5cGU9XCJyZXNldFwiXSxcblt0eXBlPVwic3VibWl0XCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG59XG5cbi8qKlxuICogMS4gQ2hhbmdlIHRoZSBpbmNvbnNpc3RlbnQgYXBwZWFyYW5jZSBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqIDIuIENvcnJlY3QgdGhlIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAqL1xuXG5maWVsZHNldCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNhMGEwYTA7IC8qIDEgKi9cbiAgcGFkZGluZzogMC4zNWVtIDAuNzVlbSAwLjYyNWVtOyAvKiAyICovXG59XG5cbi8qKlxuICogU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZSAxOC0gYW5kIElFLlxuICovXG5cbmlucHV0IHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIDE4LSBhbmQgSUUuXG4gKiAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG4gKi9cblxubGVnZW5kIHtcbiAgY29sb3I6IGluaGVyaXQ7IC8qIDIgKi9cbiAgZGlzcGxheTogdGFibGU7IC8qIDEgKi9cbiAgbWF4LXdpZHRoOiAxMDAlOyAvKiAxICovXG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7IC8qIDEgKi9cbn1cblxuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBFZGdlIDE4LSBhbmQgSUUuXG4gKiAyLiBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRWRnZSwgYW5kIEZpcmVmb3guXG4gKi9cblxucHJvZ3Jlc3Mge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IC8qIDEgKi9cbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyAvKiAyICovXG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94LlxuICovXG5cbnNlbGVjdCB7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4vKipcbiAqIDEuIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaS5cbiAqIDIuIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUuXG4gKiAzLiBDaGFuZ2UgdGhlIHJlc2l6ZSBkaXJlY3Rpb24gaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKi9cblxudGV4dGFyZWEge1xuICBtYXJnaW46IDA7IC8qIDEgKi9cbiAgb3ZlcmZsb3c6IGF1dG87IC8qIDIgKi9cbiAgcmVzaXplOiB2ZXJ0aWNhbDsgLyogMyAqL1xuICByZXNpemU6IGJsb2NrOyAvKiAzICovXG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLS5cbiAqL1xuXG5bdHlwZT1cImNoZWNrYm94XCJdLFxuW3R5cGU9XCJyYWRpb1wiXSB7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgb2RkIGFwcGVhcmFuY2UgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuICogMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4gKi9cblxuW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLyogMSAqL1xuICBvdXRsaW5lLW9mZnNldDogLTJweDsgLyogMiAqL1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIFNhZmFyaS5cbiAqL1xuXG46Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG46Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgdGV4dCBzdHlsZSBvZiBwbGFjZWhvbGRlcnMgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuICovXG5cbjo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBvcGFjaXR5OiAwLjU0O1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkgb24gbWFjT1MuXG4gKi9cblxuOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSB1cGxvYWQgYnV0dG9ucyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAqIDIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIFNhZmFyaS5cbiAqL1xuXG46Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8qIDEgKi9cbiAgZm9udDogaW5oZXJpdDsgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIG9mIGZvY3VzIG91dGxpbmVzIGluIEZpcmVmb3guXG4gKi9cblxuOjotbW96LWZvY3VzLWlubmVyIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwO1xufVxuXG4vKipcbiAqIFJlc3RvcmUgdGhlIGZvY3VzIG91dGxpbmUgc3R5bGVzIHVuc2V0IGJ5IHRoZSBwcmV2aW91cyBydWxlIGluIEZpcmVmb3guXG4gKi9cblxuOi1tb3otZm9jdXNyaW5nIHtcbiAgb3V0bGluZTogMXB4IGRvdHRlZCBCdXR0b25UZXh0O1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgYWRkaXRpb25hbCA6aW52YWxpZCBzdHlsZXMgaW4gRmlyZWZveC5cbiAqL1xuXG46LW1vei11aS1pbnZhbGlkIHtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLyogSW50ZXJhY3RpdmVcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBFZGdlIDE4LSBhbmQgSUUuXG4gKi9cblxuZGV0YWlscyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKlxuICogQWRkIHRoZSBjb3JyZWN0IHN0eWxlcyBpbiBFZGdlIDE4LSwgSUUsIGFuZCBTYWZhcmkuXG4gKi9cblxuZGlhbG9nIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gIGJvcmRlcjogc29saWQ7XG4gIGNvbG9yOiBibGFjaztcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogLW1vei1maXQtY29udGVudDtcbiAgaGVpZ2h0OiAtd2Via2l0LWZpdC1jb250ZW50O1xuICBoZWlnaHQ6IGZpdC1jb250ZW50O1xuICBsZWZ0OiAwO1xuICBtYXJnaW46IGF1dG87XG4gIHBhZGRpbmc6IDFlbTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgd2lkdGg6IC1tb3otZml0LWNvbnRlbnQ7XG4gIHdpZHRoOiAtd2Via2l0LWZpdC1jb250ZW50O1xuICB3aWR0aDogZml0LWNvbnRlbnQ7XG59XG5cbmRpYWxvZzpub3QoW29wZW5dKSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTtcbn1cblxuLyogU2NyaXB0aW5nXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICovXG5cbmNhbnZhcyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRS5cbiAqL1xuXG50ZW1wbGF0ZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qIFVzZXIgaW50ZXJhY3Rpb25cbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBSZW1vdmUgdGhlIHRhcHBpbmcgZGVsYXkgaW4gSUUgMTAuXG4gKi9cblxuYSxcbmFyZWEsXG5idXR0b24sXG5pbnB1dCxcbmxhYmVsLFxuc2VsZWN0LFxuc3VtbWFyeSxcbnRleHRhcmVhLFxuW3RhYmluZGV4XSB7XG4gIC1tcy10b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjtcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMC0uXG4gKi9cblxuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKiBBY2Nlc3NpYmlsaXR5XG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIENoYW5nZSB0aGUgY3Vyc29yIG9uIGJ1c3kgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKi9cblxuW2FyaWEtYnVzeT1cInRydWVcIl0ge1xuICBjdXJzb3I6IHByb2dyZXNzO1xufVxuXG4vKlxuICogQ2hhbmdlIHRoZSBjdXJzb3Igb24gY29udHJvbCBlbGVtZW50cyBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqL1xuXG5bYXJpYS1jb250cm9sc10ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi8qXG4gKiBDaGFuZ2UgdGhlIGN1cnNvciBvbiBkaXNhYmxlZCwgbm90LWVkaXRhYmxlLCBvciBvdGhlcndpc2VcbiAqIGlub3BlcmFibGUgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKi9cblxuW2FyaWEtZGlzYWJsZWQ9XCJ0cnVlXCJdLFxuW2Rpc2FibGVkXSB7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG5cbi8qXG4gKiBDaGFuZ2UgdGhlIGRpc3BsYXkgb24gdmlzdWFsbHkgaGlkZGVuIGFjY2Vzc2libGUgZWxlbWVudHNcbiAqIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICovXG5cblthcmlhLWhpZGRlbj1cImZhbHNlXCJdW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBpbml0aWFsO1xufVxuXG5bYXJpYS1oaWRkZW49XCJmYWxzZVwiXVtoaWRkZW5dOm5vdCg6Zm9jdXMpIHtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xufVxuIiwiLyogRG9jdW1lbnRcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIEFkZCBib3JkZXIgYm94IHNpemluZyBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqL1xuKixcbjo6YmVmb3JlLFxuOjphZnRlciB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IH1cblxuLyoqXG4gKiAxLiBBZGQgdGV4dCBkZWNvcmF0aW9uIGluaGVyaXRhbmNlIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICogMi4gQWRkIHZlcnRpY2FsIGFsaWdubWVudCBpbmhlcml0YW5jZSBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqL1xuOjpiZWZvcmUsXG46OmFmdGVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpbmhlcml0O1xuICAvKiAxICovXG4gIHZlcnRpY2FsLWFsaWduOiBpbmhlcml0O1xuICAvKiAyICovIH1cblxuLyoqXG4gKiAxLiBVc2UgdGhlIGRlZmF1bHQgY3Vyc29yIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICogMi4gQ2hhbmdlIHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqIDMuIFVzZSBhIDQtc3BhY2UgdGFiIHdpZHRoIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICogNC4gUmVtb3ZlIHRoZSBncmV5IGhpZ2hsaWdodCBvbiBsaW5rcyBpbiBpT1MgKG9waW5pb25hdGVkKS5cbiAqIDUuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW5cbiAqICAgIElFIG9uIFdpbmRvd3MgUGhvbmUgYW5kIGluIGlPUy5cbiAqIDYuIEJyZWFrcyB3b3JkcyB0byBwcmV2ZW50IG92ZXJmbG93IGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICovXG5odG1sIHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICAvKiAxICovXG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIC8qIDIgKi9cbiAgLW1vei10YWItc2l6ZTogNDtcbiAgLyogMyAqL1xuICB0YWItc2l6ZTogNDtcbiAgLyogMyAqL1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAtbXMtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgLyogNSAqL1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gIC8qIDUgKi9cbiAgd29yZC1icmVhazogYnJlYWstd29yZDtcbiAgLyogNiAqLyB9XG5cbi8qIFNlY3Rpb25zXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqL1xuYm9keSB7XG4gIG1hcmdpbjogMDsgfVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGZvbnQgc2l6ZSBhbmQgbWFyZ2luIG9uIGBoMWAgZWxlbWVudHMgd2l0aGluIGBzZWN0aW9uYCBhbmRcbiAqIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEVkZ2UsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXG4gKi9cbmgxIHtcbiAgZm9udC1zaXplOiAyZW07XG4gIG1hcmdpbjogMC42N2VtIDA7IH1cblxuLyogR3JvdXBpbmcgY29udGVudFxuICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogUmVtb3ZlIHRoZSBtYXJnaW4gb24gbmVzdGVkIGxpc3RzIGluIENocm9tZSwgRWRnZSwgSUUsIGFuZCBTYWZhcmkuXG4gKi9cbmRsIGRsLFxuZGwgb2wsXG5kbCB1bCxcbm9sIGRsLFxudWwgZGwge1xuICBtYXJnaW46IDA7IH1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIG1hcmdpbiBvbiBuZXN0ZWQgbGlzdHMgaW4gRWRnZSAxOC0gYW5kIElFLlxuICovXG5vbCBvbCxcbm9sIHVsLFxudWwgb2wsXG51bCB1bCB7XG4gIG1hcmdpbjogMDsgfVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIG9mIGJvcmRlciBjb2xvciBpbiBGaXJlZm94LlxuICogMi4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAqIDMuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgMTgtIGFuZCBJRS5cbiAqL1xuaHIge1xuICBjb2xvcjogaW5oZXJpdDtcbiAgLyogMSAqL1xuICBoZWlnaHQ6IDA7XG4gIC8qIDIgKi9cbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIC8qIDMgKi8gfVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFLlxuICovXG5tYWluIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGxpc3Qgc3R5bGUgb24gbmF2aWdhdGlvbiBsaXN0cyBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqL1xubmF2IG9sLFxubmF2IHVsIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMDsgfVxuXG4vKipcbiAqIFByZXZlbnQgVm9pY2VPdmVyIGZyb20gaWdub3JpbmcgbGlzdCBzZW1hbnRpY3MgaW4gU2FmYXJpIChvcGluaW9uYXRlZCkuXG4gKi9cbm5hdiBsaTo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXDIwMEJcIjsgfVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gKiAzLiBQcmV2ZW50IG92ZXJmbG93IG9mIHRoZSBjb250YWluZXIgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKi9cbnByZSB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgLyogMSAqL1xuICBmb250LXNpemU6IDFlbTtcbiAgLyogMiAqL1xuICBvdmVyZmxvdzogYXV0bztcbiAgLyogMyAqL1xuICAtbXMtb3ZlcmZsb3ctc3R5bGU6IHNjcm9sbGJhcjtcbiAgLyogMyAqLyB9XG5cbi8qIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBvbiBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG4gKi9cbmEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gRWRnZSAxOC0sIElFLCBhbmQgU2FmYXJpLlxuICovXG5hYmJyW3RpdGxlXSB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IH1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuICovXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGRlcjsgfVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbmNvZGUsXG5rYmQsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlO1xuICAvKiAxICovXG4gIGZvbnQtc2l6ZTogMWVtO1xuICAvKiAyICovIH1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqL1xuc21hbGwge1xuICBmb250LXNpemU6IDgwJTsgfVxuXG4vKiBFbWJlZGRlZCBjb250ZW50XG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAqIENoYW5nZSB0aGUgYWxpZ25tZW50IG9uIG1lZGlhIGVsZW1lbnRzIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICovXG5hdWRpbyxcbmNhbnZhcyxcbmlmcmFtZSxcbmltZyxcbnN2ZyxcbnZpZGVvIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICovXG5hdWRpbyxcbnZpZGVvIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gaU9TIDQtNy5cbiAqL1xuYXVkaW86bm90KFtjb250cm9sc10pIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgaGVpZ2h0OiAwOyB9XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBib3JkZXIgb24gaWZyYW1lcyBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqL1xuaWZyYW1lIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lOyB9XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIHdpdGhpbiBsaW5rcyBpbiBJRSAxMC0uXG4gKi9cbmltZyB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTsgfVxuXG4vKipcbiAqIENoYW5nZSB0aGUgZmlsbCBjb2xvciB0byBtYXRjaCB0aGUgdGV4dCBjb2xvciBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqL1xuc3ZnOm5vdChbZmlsbF0pIHtcbiAgZmlsbDogY3VycmVudENvbG9yOyB9XG5cbi8qKlxuICogSGlkZSB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gKi9cbnN2Zzpub3QoOnJvb3QpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4vKiBUYWJ1bGFyIGRhdGFcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIDEuIENvbGxhcHNlIGJvcmRlciBzcGFjaW5nIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICogMi4gQ29ycmVjdCB0YWJsZSBib3JkZXIgY29sb3IgaW5oZXJpdGFuY2UgaW4gYWxsIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaS5cbiAqIDMuIFJlbW92ZSB0ZXh0IGluZGVudGF0aW9uIGZyb20gdGFibGUgY29udGVudHMgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuICovXG50YWJsZSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIC8qIDEgKi9cbiAgYm9yZGVyLWNvbG9yOiBpbmhlcml0O1xuICAvKiAyICovXG4gIHRleHQtaW5kZW50OiAwO1xuICAvKiAzICovIH1cblxuLyogRm9ybXNcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIFJlbW92ZSB0aGUgbWFyZ2luIG9uIGNvbnRyb2xzIGluIFNhZmFyaS5cbiAqL1xuYnV0dG9uLFxuaW5wdXQsXG5zZWxlY3Qge1xuICBtYXJnaW46IDA7IH1cblxuLyoqXG4gKiAxLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAqIDIuIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRWRnZSAxOC0sIEZpcmVmb3gsIGFuZCBJRS5cbiAqL1xuYnV0dG9uIHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIC8qIDEgKi9cbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBidXR0b25zIGluIGlPUyBhbmQgU2FmYXJpLlxuICovXG5idXR0b24sXG5bdHlwZT1cImJ1dHRvblwiXSxcblt0eXBlPVwicmVzZXRcIl0sXG5bdHlwZT1cInN1Ym1pdFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyB9XG5cbi8qKlxuICogMS4gQ2hhbmdlIHRoZSBpbmNvbnNpc3RlbnQgYXBwZWFyYW5jZSBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqIDIuIENvcnJlY3QgdGhlIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAqL1xuZmllbGRzZXQge1xuICBib3JkZXI6IDFweCBzb2xpZCAjYTBhMGEwO1xuICAvKiAxICovXG4gIHBhZGRpbmc6IDAuMzVlbSAwLjc1ZW0gMC42MjVlbTtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICogU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZSAxOC0gYW5kIElFLlxuICovXG5pbnB1dCB7XG4gIG92ZXJmbG93OiB2aXNpYmxlOyB9XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIDE4LSBhbmQgSUUuXG4gKiAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG4gKi9cbmxlZ2VuZCB7XG4gIGNvbG9yOiBpbmhlcml0O1xuICAvKiAyICovXG4gIGRpc3BsYXk6IHRhYmxlO1xuICAvKiAxICovXG4gIG1heC13aWR0aDogMTAwJTtcbiAgLyogMSAqL1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICAvKiAxICovIH1cblxuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBFZGdlIDE4LSBhbmQgSUUuXG4gKiAyLiBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRWRnZSwgYW5kIEZpcmVmb3guXG4gKi9cbnByb2dyZXNzIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAvKiAxICovXG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94LlxuICovXG5zZWxlY3Qge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgfVxuXG4vKipcbiAqIDEuIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaS5cbiAqIDIuIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUuXG4gKiAzLiBDaGFuZ2UgdGhlIHJlc2l6ZSBkaXJlY3Rpb24gaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKi9cbnRleHRhcmVhIHtcbiAgbWFyZ2luOiAwO1xuICAvKiAxICovXG4gIG92ZXJmbG93OiBhdXRvO1xuICAvKiAyICovXG4gIHJlc2l6ZTogdmVydGljYWw7XG4gIC8qIDMgKi9cbiAgcmVzaXplOiBibG9jaztcbiAgLyogMyAqLyB9XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLS5cbiAqL1xuW3R5cGU9XCJjaGVja2JveFwiXSxcblt0eXBlPVwicmFkaW9cIl0ge1xuICBwYWRkaW5nOiAwOyB9XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgb2RkIGFwcGVhcmFuY2UgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuICogMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4gKi9cblt0eXBlPVwic2VhcmNoXCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7XG4gIC8qIDEgKi9cbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIFNhZmFyaS5cbiAqL1xuOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvOyB9XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgdGV4dCBzdHlsZSBvZiBwbGFjZWhvbGRlcnMgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuICovXG46Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICBjb2xvcjogaW5oZXJpdDtcbiAgb3BhY2l0eTogMC41NDsgfVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkgb24gbWFjT1MuXG4gKi9cbjo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsgfVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSB1cGxvYWQgYnV0dG9ucyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAqIDIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIFNhZmFyaS5cbiAqL1xuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xuICAvKiAxICovXG4gIGZvbnQ6IGluaGVyaXQ7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIG9mIGZvY3VzIG91dGxpbmVzIGluIEZpcmVmb3guXG4gKi9cbjo6LW1vei1mb2N1cy1pbm5lciB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMDsgfVxuXG4vKipcbiAqIFJlc3RvcmUgdGhlIGZvY3VzIG91dGxpbmUgc3R5bGVzIHVuc2V0IGJ5IHRoZSBwcmV2aW91cyBydWxlIGluIEZpcmVmb3guXG4gKi9cbjotbW96LWZvY3VzcmluZyB7XG4gIG91dGxpbmU6IDFweCBkb3R0ZWQgQnV0dG9uVGV4dDsgfVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgYWRkaXRpb25hbCA6aW52YWxpZCBzdHlsZXMgaW4gRmlyZWZveC5cbiAqL1xuOi1tb3otdWktaW52YWxpZCB7XG4gIGJveC1zaGFkb3c6IG5vbmU7IH1cblxuLyogSW50ZXJhY3RpdmVcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gRWRnZSAxOC0gYW5kIElFLlxuICovXG5kZXRhaWxzIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLypcbiAqIEFkZCB0aGUgY29ycmVjdCBzdHlsZXMgaW4gRWRnZSAxOC0sIElFLCBhbmQgU2FmYXJpLlxuICovXG5kaWFsb2cge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgYm9yZGVyOiBzb2xpZDtcbiAgY29sb3I6IGJsYWNrO1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAtbW96LWZpdC1jb250ZW50O1xuICBoZWlnaHQ6IC13ZWJraXQtZml0LWNvbnRlbnQ7XG4gIGhlaWdodDogZml0LWNvbnRlbnQ7XG4gIGxlZnQ6IDA7XG4gIG1hcmdpbjogYXV0bztcbiAgcGFkZGluZzogMWVtO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICB3aWR0aDogLW1vei1maXQtY29udGVudDtcbiAgd2lkdGg6IC13ZWJraXQtZml0LWNvbnRlbnQ7XG4gIHdpZHRoOiBmaXQtY29udGVudDsgfVxuXG5kaWFsb2c6bm90KFtvcGVuXSkge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi8qXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbnN1bW1hcnkge1xuICBkaXNwbGF5OiBsaXN0LWl0ZW07IH1cblxuLyogU2NyaXB0aW5nXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAqL1xuY2FudmFzIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUuXG4gKi9cbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4vKiBVc2VyIGludGVyYWN0aW9uXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAqIFJlbW92ZSB0aGUgdGFwcGluZyBkZWxheSBpbiBJRSAxMC5cbiAqL1xuYSxcbmFyZWEsXG5idXR0b24sXG5pbnB1dCxcbmxhYmVsLFxuc2VsZWN0LFxuc3VtbWFyeSxcbnRleHRhcmVhLFxuW3RhYmluZGV4XSB7XG4gIC1tcy10b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjsgfVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwLS5cbiAqL1xuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi8qIEFjY2Vzc2liaWxpdHlcbiAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIENoYW5nZSB0aGUgY3Vyc29yIG9uIGJ1c3kgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKi9cblthcmlhLWJ1c3k9XCJ0cnVlXCJdIHtcbiAgY3Vyc29yOiBwcm9ncmVzczsgfVxuXG4vKlxuICogQ2hhbmdlIHRoZSBjdXJzb3Igb24gY29udHJvbCBlbGVtZW50cyBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqL1xuW2FyaWEtY29udHJvbHNdIHtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbi8qXG4gKiBDaGFuZ2UgdGhlIGN1cnNvciBvbiBkaXNhYmxlZCwgbm90LWVkaXRhYmxlLCBvciBvdGhlcndpc2VcbiAqIGlub3BlcmFibGUgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKi9cblthcmlhLWRpc2FibGVkPVwidHJ1ZVwiXSxcbltkaXNhYmxlZF0ge1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG5cbi8qXG4gKiBDaGFuZ2UgdGhlIGRpc3BsYXkgb24gdmlzdWFsbHkgaGlkZGVuIGFjY2Vzc2libGUgZWxlbWVudHNcbiAqIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICovXG5bYXJpYS1oaWRkZW49XCJmYWxzZVwiXVtoaWRkZW5dIHtcbiAgZGlzcGxheTogaW5pdGlhbDsgfVxuXG5bYXJpYS1oaWRkZW49XCJmYWxzZVwiXVtoaWRkZW5dOm5vdCg6Zm9jdXMpIHtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgcG9zaXRpb246IGFic29sdXRlOyB9XG5cbi8qXG4qIDEuIFJlbW92ZSBhbmltYXRpb25zIHdoZW4gbW90aW9uIGlzIHJlZHVjZWQgKG9waW5pb25hdGVkKS5cbiogMi4gUmVtb3ZlIGZpeGVkIGJhY2tncm91bmQgYXR0YWNobWVudHMgd2hlbiBtb3Rpb24gaXMgcmVkdWNlZCAob3BpbmlvbmF0ZWQpLlxuKiAzLiBSZW1vdmUgdGltZWQgc2Nyb2xsaW5nIGJlaGF2aW9ycyB3aGVuIG1vdGlvbiBpcyByZWR1Y2VkIChvcGluaW9uYXRlZCkuXG4qIDQuIFJlbW92ZSB0cmFuc2l0aW9ucyB3aGVuIG1vdGlvbiBpcyByZWR1Y2VkIChvcGluaW9uYXRlZCkuXG4qL1xuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgKixcbiAgOjpiZWZvcmUsXG4gIDo6YWZ0ZXIge1xuICAgIGFuaW1hdGlvbi1kZWxheTogLTFtcyAhaW1wb3J0YW50O1xuICAgIC8qIDEgKi9cbiAgICBhbmltYXRpb24tZHVyYXRpb246IDFtcyAhaW1wb3J0YW50O1xuICAgIC8qIDEgKi9cbiAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxICFpbXBvcnRhbnQ7XG4gICAgLyogMSAqL1xuICAgIGJhY2tncm91bmQtYXR0YWNobWVudDogaW5pdGlhbCAhaW1wb3J0YW50O1xuICAgIC8qIDIgKi9cbiAgICBzY3JvbGwtYmVoYXZpb3I6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiAzICovXG4gICAgdHJhbnNpdGlvbi1kZWxheTogMHMgIWltcG9ydGFudDtcbiAgICAvKiA0ICovXG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHMgIWltcG9ydGFudDtcbiAgICAvKiA0ICovIH0gfVxuXG4vKipcbiAqIENvbnZlcnQgaGV4IGNvbG9yIHRvIFJHQiBjb2xvciBmb3JtYXRcbiAqL1xuLyogc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tcHJvcGVydHktdW5pdC1hbGxvd2VkLWxpc3QgKi9cbi8qIHN0eWxlbGludC1lbmFibGUgZGVjbGFyYXRpb24tcHJvcGVydHktdW5pdC1hbGxvd2VkLWxpc3QgKi9cbjpyb290IHtcbiAgLS1jb2xvci1ibGFjazogIzIyMjtcbiAgLS1jb2xvci1ibGFjay1yb2NrOiAjMmIzMDNjO1xuICAtLWNvbG9yLWJsdWUtY2hhbGs6ICNlY2U2ZjI7XG4gIC0tY29sb3ItZWFzdC1iYXk6ICM1NDU3NzM7XG4gIC0tY29sb3ItcGF0dGVucy1ibHVlOiAjZWFmMWY4O1xuICAtLWNvbG9yLXNjaWVuY2UtYmx1ZTogIzAwNDlkMTtcbiAgLS1jb2xvci1zY3JvcGlvbjogIzVmNWY1ZjtcbiAgLS1jb2xvci12YWxoYWxsYTogIzJhMmQzZTtcbiAgLS1jb2xvci13aGl0ZTogI2ZmZjtcbiAgLS1jb2xvci1oZWFkaW5nOiB2YXIoLS1jb2xvci1tYWluKTtcbiAgLS1jb2xvci1tYWluOiB2YXIoLS1jb2xvci12YWxoYWxsYSk7XG4gIC0tY29sb3ItcGFyYWdyYXBoOiB2YXIoLS1jb2xvci1lYXN0LWJheSk7XG4gIC0tY29sb3ItbGluay1ib3JkZXItYm90dG9tOiB2YXIoLS1jb2xvci1zY2llbmNlLWJsdWUpO1xuICAtLWNvbG9yLWxpbmstYm9yZGVyLWZvY3VzOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gIC0tY29sb3ItbGluay1jb21tZW50OiB2YXIoLS1jb2xvci1zY3JvcGlvbik7XG4gIC0tY29sb3ItbGluay1jb21tZW50LXRpbWUtYW5jaG9yOiB2YXIoLS1jb2xvci1lYXN0LWJheSk7XG4gIC0tY29sb3ItbGluay1lZGl0LWJhY2tncm91bmQtaG92ZXI6IHZhcigtLWNvbG9yLXBhdHRlbnMtYmx1ZSk7XG4gIC0tY29sb3ItbGluay1lZGl0LWJvcmRlcjogdmFyKC0tY29sb3ItcGF0dGVucy1ibHVlKTtcbiAgLS1jb2xvci1saW5rLWVkaXQtdGV4dDogZGFya2VuKCNlYWYxZjgsIDIwJSk7XG4gIC0tY29sb3ItbGluay1lZGl0LXRleHQtaG92ZXI6IHZhcigtLWNvbG9yLWVhc3QtYmF5KTtcbiAgLS1jb2xvci1saW5rLXRleHQ6IHZhcigtLWNvbG9yLXNjaWVuY2UtYmx1ZSk7XG4gIC0tY29sb3ItbGluay10ZXh0LWZvY3VzOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gIC0tY29sb3ItbGluay10ZXh0LWhvdmVyOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIC0tY29sb3ItbGluay1iYWNrZ3JvdW5kLWhvdmVyOiB2YXIoLS1jb2xvci1saW5rLXRleHQpO1xuICAtLWNvbG9yLWJhY2tncm91bmQtY29kZS1ibG9jazogdmFyKC0tY29sb3ItYmxhY2stcm9jayk7XG4gIC0tY29sb3ItYmFja2dyb3VuZC1jb2RlLWlubGluZTogI2Y5ZjJmNDtcbiAgLS1jb2xvci1iYWNrZ3JvdW5kLWRlZmF1bHQ6ICNmMGYwZjA7XG4gIC0tY29sb3ItYmFja2dyb3VuZC1zaGFkZTogIzAzMDYxYjtcbiAgLS1jb2xvci1iYWNrZ3JvdW5kLXRhYmxlLWNlbGwtb2RkOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIC0tY29sb3ItYmFja2dyb3VuZC10YWJsZS1jZWxsLWV2ZW46ICNmM2YzZjM7XG4gIC0tY29sb3ItYmFja2dyb3VuZC10YWc6IHZhcigtLWNvbG9yLXBhdHRlbnMtYmx1ZSk7XG4gIC0tY29sb3ItYmxvY2txdW90ZTogdmFyKC0tY29sb3Itc2NpZW5jZS1ibHVlKTtcbiAgLS1jb2xvci1jb21tZW50LXRleHQ6IHZhcigtLWNvbG9yLWVhc3QtYmF5KTtcbiAgLS1jb2xvci1jb21tZW50LWF1dGhvci10ZXh0OiB2YXIoLS1jb2xvci1lYXN0LWJheSk7XG4gIC0tY29sb3ItdGFnLWJvcmRlcjogcmdiYSg2LCAyMiwgNDEsIC4xKTtcbiAgLS1jb2xvci10YWctYm9yZGVyLWhvdmVyOiByZ2JhKDYsIDIyLCA0MSwgLjQpO1xuICAtLWNvbG9yLXRhZy10ZXh0OiB2YXIoLS1jb2xvci1ibGFjayk7XG4gIC0tY29sb3ItY2F0ZWdvcnktYm9yZGVyOiAjY2RjZmQ0O1xuICAtLWNvbG9yLWNhdGVnb3J5LXRleHQ6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgLS1jb2xvci1jYXB0aW9uOiAjNWM1YzZhO1xuICAtLWNvbG9yLWNvZGUtYmxvY2s6ICNjNzI1NGU7XG4gIC0tY29sb3ItY29kZS10ZXh0OiAjZjVmNWY1O1xuICAtLWNvbG9yLWVycm9yOiAjZTFiM2IyO1xuICAtLWNvbG9yLWtiZC1ib3JkZXI6ICNjY2M7XG4gIC0tY29sb3Ita2JkLWJhY2tncm91bmQ6IHZhcigtLWNvbG9yLXBhdHRlbnMtYmx1ZSk7XG4gIC0tY29sb3Itb3V0bGluZS1vdmVybGF5LWl0ZW1zOiAjZmY4NDhhO1xuICAtLWNvbG9yLXBhZ2luYXRpb24tdGV4dDogdmFyKC0tY29sb3ItdmFsaGFsbGEpO1xuICAtLWNvbG9yLXBhZ2luYXRpb24tYmFja2dyb3VuZC1ob3ZlcjogdmFyKC0tY29sb3ItdmFsaGFsbGEpO1xuICAtLWNvbG9yLXBhZ2luYXRpb24tYm9yZGVyLWhvdmVyOiB2YXIoLS1jb2xvci12YWxoYWxsYSk7XG4gIC0tY29sb3ItcGFnaW5hdGlvbi10ZXh0LWhvdmVyOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIC0tY29sb3ItcGFnaW5hdGlvbi1iYWNrZ3JvdW5kLWN1cnJlbnQ6IHZhcigtLWNvbG9yLXZhbGhhbGxhKTtcbiAgLS1jb2xvci1wYWdpbmF0aW9uLWJvcmRlci1jdXJyZW50OiB2YXIoLS1jb2xvci12YWxoYWxsYSk7XG4gIC0tY29sb3ItcGFnaW5hdGlvbi10ZXh0LWN1cnJlbnQ6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgLS1jb2xvci1zdWNjZXNzOiAjOGVkMTg1O1xuICAtLWNvbG9yLXRvcC1hcnJvdy1kYXJrOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gIC0tY29sb3ItdG9wLWFycm93LWxpZ2h0OiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIC0tY29sb3Itd2FybmluZzogI2Y0YWE3MTtcbiAgLS1jb2xvci1lcnJvci1ibG9jay1ib3JkZXI6ICNhZGIyYWQ7XG4gIC0tY29sb3ItZXJyb3ItYmxvY2stYmFja2dyb3VuZDogI2Y5ZjlmOTsgfVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1kaXNwbGF5OiBhdXRvO1xuICBmb250LWZhbWlseTogXCJJbnRlclwiO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHNyYzogdXJsKFwiLi4vLi4vZm9udHMvSW50ZXItUmVndWxhci53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcIi4uLy4uL2ZvbnRzL0ludGVyLVJlZ3VsYXIud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uLy4uL2ZvbnRzL0ludGVyLVJlZ3VsYXIudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpOyB9XG5cbkBmb250LWZhY2Uge1xuICBmb250LWRpc3BsYXk6IGF1dG87XG4gIGZvbnQtZmFtaWx5OiBcIkludGVyXCI7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgc3JjOiB1cmwoXCIuLi8uLi9mb250cy9JbnRlci1JdGFsaWMud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCIuLi8uLi9mb250cy9JbnRlci1JdGFsaWMud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uLy4uL2ZvbnRzL0ludGVyLUl0YWxpYy50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIik7IH1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZGlzcGxheTogYXV0bztcbiAgZm9udC1mYW1pbHk6IFwiSW50ZXJcIjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNzAwO1xuICBzcmM6IHVybChcIi4uLy4uL2ZvbnRzL0ludGVyLUJvbGQud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCIuLi8uLi9mb250cy9JbnRlci1Cb2xkLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi8uLi9mb250cy9JbnRlci1Cb2xkLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTsgfVxuXG46cm9vdCB7XG4gIC0tZm9udC1zZXJpZjogc2Fucy1zZXJpZjtcbiAgLS1mb250LXNhbnM6ICdJbnRlcicsIC1hcHBsZS1zeXN0ZW0sICdCbGlua01hY1N5c3RlbUZvbnQnLCAnU2Vnb2UgVUknLCAnUm9ib3RvJywgJ094eWdlbi1TYW5zJywgJ1VidW50dScsICdDYW50YXJlbGwnLCAnSGVsdmV0aWNhIE5ldWUnLCBzYW5zLXNlcmlmO1xuICAtLWZvbnQtbW9ub3NwYWNlOiAnSW5jb25zb2xhdGEnLCAnTWVubG8nLCAnTW9uYWNvJywgJ0NvbnNvbGFzJywgJ0FuZGFsZSBNb25vJywgJ0JpdHN0cmVhbSBWZXJhIFNhbnMgTW9ubycsICdDb3VyaWVyIE5ldycsIG1vbm9zcGFjZTtcbiAgLS1mb250LXBhcmFncmFwaDogdmFyKC0tZm9udC1zYW5zKTtcbiAgLS1mb250LWhlYWRpbmc6IHZhcigtLWZvbnQtc2Fucyk7IH1cblxuOnJvb3Qge1xuICAtLWZvbnQtc2l6ZS1oZXJvOiA1MnB4O1xuICAtLWZvbnQtc2l6ZS1oMTogNDBweDtcbiAgLS1mb250LXNpemUtaDI6IDMwcHg7XG4gIC0tZm9udC1zaXplLWgzOiAyNHB4O1xuICAtLWZvbnQtc2l6ZS1oNDogMjBweDtcbiAgLS1mb250LXNpemUtaDU6IDE2cHg7XG4gIC0tZm9udC1zaXplLWg2OiAxNHB4O1xuICAtLWZvbnQtc2l6ZS0xNDogMTRweDtcbiAgLS1mb250LXNpemUtMTU6IDE1cHg7XG4gIC0tZm9udC1zaXplLTE2OiAxNnB4O1xuICAtLWZvbnQtc2l6ZS0xNzogMTdweDtcbiAgLS1mb250LXNpemUtMTg6IDE4cHg7XG4gIC0tZm9udC1zaXplLTIwOiAyMHB4O1xuICAtLWZvbnQtc2l6ZS0yMjogMjJweDtcbiAgLS1mb250LXNpemUtZGVmYXVsdDogdmFyKC0tZm9udC1zaXplLTE3KTtcbiAgLS1mb250LXNpemUtcGFyYWdyYXBoczogdmFyKC0tZm9udC1zaXplLTE4KTtcbiAgLS1mb250LXNpemUtbmF2LXRvZ2dsZS1sYWJlbDogMTVweDtcbiAgLS1mb250LXNpemUtY2FwdGlvbnM6IDE1cHg7XG4gIC0tbGluZS1oZWlnaHQtaGVhZGluZ3M6IDEuNTtcbiAgLS1saW5lLWhlaWdodC1jb3JlLWhlYWRpbmc6IDEuMjM7XG4gIC0tbGluZS1oZWlnaHQtcGFyYWdyYXBoczogMS43O1xuICAtLWxpbmUtaGVpZ2h0LXBhcmFncmFwaHMtYmxvZzogMS43NztcbiAgLS1mb250LXdlaWdodC1yZWd1bGFyOiA0MDA7XG4gIC0tZm9udC13ZWlnaHQtbWVkaXVtOiA1MDA7XG4gIC0tZm9udC13ZWlnaHQtc2VtaWJvbGQ6IDYwMDtcbiAgLS1mb250LXdlaWdodC1ib2xkOiA3MDA7XG4gIC0tZm9udC13ZWlnaHQtcGFyYWdyYXBoczogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7XG4gIC0tZm9udC13ZWlnaHQtaGVhZGluZ3M6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAgIDpyb290IHtcbiAgICAgIC0tZm9udC1zaXplLWhlcm86IDM4cHg7XG4gICAgICAtLWZvbnQtc2l6ZS1oMTogMzJweDtcbiAgICAgIC0tZm9udC1zaXplLWgyOiAyNHB4O1xuICAgICAgLS1mb250LXNpemUtaDM6IDIxcHg7XG4gICAgICAtLWZvbnQtc2l6ZS1oNDogMThweDtcbiAgICAgIC0tZm9udC1zaXplLWg1OiAxNHB4O1xuICAgICAgLS1mb250LXNpemUtaDY6IDEycHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDIwcHgpIHtcbiAgICA6cm9vdCB7XG4gICAgICAtLWZvbnQtc2l6ZS0xNjogMTRweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAgIDpyb290IHtcbiAgICAgIC0tZm9udC1zaXplLXBhcmFncmFwaHM6IDE2cHg7XG4gICAgICAtLWZvbnQtc2l6ZS1kZWZhdWx0OiAxNnB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQyMHB4KSB7XG4gICAgOnJvb3Qge1xuICAgICAgLS1mb250LXNpemUtbmF2LXRvZ2dsZS1sYWJlbDogMTNweDsgfSB9XG5cbjpyb290IHtcbiAgLS1jb2xvci1iYWNrZ3JvdW5kLWlucHV0LWZpZWxkOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIC0tY29sb3ItYm9yZGVyLWZvcm1zOiAjZDlkOWQ5O1xuICAtLWNvbG9yLWJvcmRlci1mb3Jtcy1mb2N1czogcmdiYSg0MiwgNDUsIDYyLCAuMyk7XG4gIC0tY29sb3ItYnV0dG9uOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIC0tY29sb3ItYnV0dG9uLWhvdmVyOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIC0tY29sb3ItYnV0dG9uLWJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWVhc3QtYmF5KTtcbiAgLS1jb2xvci1idXR0b24tYmFja2dyb3VuZC1ob3ZlcjogdmFyKC0tY29sb3ItdmFsaGFsbGEpO1xuICAtLWNvbG9yLWNoZWNrYm94OiB2YXIoLS1jb2xvci1lYXN0LWJheSk7XG4gIC0tY29sb3ItY2hlY2tib3gtb3V0bGluZTogMCAwIDAgM3B4IHJnYmEoODQsIDg3LCAxMTUsIC4yKTtcbiAgLS1jb2xvci1jaGVja2JveC1ib3JkZXItaG92ZXI6IGxpZ2h0ZW4oIzU0NTc3MywgMTUlKTtcbiAgLS1jb2xvci1wbGFjZWhvbGRlcjogdmFyKC0tY29sb3ItcGFyYWdyYXBoKTtcbiAgLS1jb2xvci1wbGFjZWhvbGRlci1mb2N1czogdmFyKC0tY29sb3ItYmxhY2spO1xuICAtLW9wYWNpdHktcGxhY2Vob2xkZXI6IC40O1xuICAtLW9wYWNpdHktcGxhY2Vob2xkZXItZm9jdXM6IC44O1xuICAtLWJvcmRlci1yYWRpdXMtY2hlY2tib3g6IDRweDtcbiAgLS1ib3JkZXItcmFkaXVzLWlucHV0LWZpZWxkOiA0cHg7XG4gIC0tYm9yZGVyLXJhZGl1cy1zZWxlY3Q6IDA7XG4gIC0tYm9yZGVyLXdpZHRoLWNoZWNrYm94OiAycHg7XG4gIC0tYm9yZGVyLXdpZHRoLWlucHV0LWZpZWxkOiAycHg7XG4gIC0tZ2FwLWNoZWNrYm94OiAxMHB4O1xuICAtLWxpbmUtaGVpZ2h0LWNoZWNrYm94OiB2YXIoLS1saW5lLWhlaWdodC1wYXJhZ3JhcGhzKTtcbiAgLS1zaXplLWNoZWNrYm94LW1hcmtlcjogMTJweDtcbiAgLS1zaXplLXJhZGlvLWJ1dHRvbjogMTZweDtcbiAgLS1zaXplLXJhZGlvLWJ1dHRvbi1tYXJrZXI6IDhweDsgfVxuXG46cm9vdCB7XG4gIC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbDogMnJlbTtcbiAgLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsLWxhcmdlOiA2LjRyZW07XG4gIC0tcGFkZGluZy1jb250YWluZXItdmVydGljYWw6IDYuNHJlbTtcbiAgLS1wYWRkaW5nLXNpdGUtaGVhZGVyLXZlcnRpY2FsOiAycmVtO1xuICAtLXBhZGRpbmctYmxvY2s6IDhyZW07XG4gIC0tbWFyZ2luLWJldHdlZW4tdGV4dC1lbGVtZW50czogNHJlbTtcbiAgLS1tYXJnaW4td3AtYmxvY2staW1hZ2U6IDRyZW07XG4gIC0tbWFyZ2luLWJldHdlZW4tcGFyYWdyYXBoczogMi43cmVtOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAxNTkwcHgpIHtcbiAgICA6cm9vdCB7XG4gICAgICAtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWw6IDJyZW07IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogOTYwcHgpIHtcbiAgICA6cm9vdCB7XG4gICAgICAtLXBhZGRpbmctc2l0ZS1oZWFkZXItdmVydGljYWw6IDJyZW07IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzcwcHgpIHtcbiAgICA6cm9vdCB7XG4gICAgICAtLXBhZGRpbmctY29udGFpbmVyLXZlcnRpY2FsOiA1cmVtOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDYwMHB4KSB7XG4gICAgOnJvb3Qge1xuICAgICAgLS1wYWRkaW5nLWJsb2NrOiA2cmVtOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgOnJvb3Qge1xuICAgICAgLS1wYWRkaW5nLWNvbnRhaW5lci12ZXJ0aWNhbDogNHJlbTsgfSB9XG5cbi8qIHN0eWxlbGludC1kaXNhYmxlIG51bWJlci1tYXgtcHJlY2lzaW9uICovXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBudW1iZXItbWF4LXByZWNpc2lvbiAqL1xuLyogc3R5bGVsaW50LWRpc2FibGUgbnVtYmVyLW1heC1wcmVjaXNpb24gKi9cbi5oZWFkaW5nLWhlcm8ge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oZXJvKTsgfVxuXG4uc2NyZWVuLXJlYWRlci10ZXh0LCAuZ2Zvcm1fYm9keSAuZ2Zvcm1fdmFsaWRhdGlvbl9jb250YWluZXIge1xuICBib3JkZXI6IDA7XG4gIGNsaXA6IHJlY3QoMXB4LCAxcHgsIDFweCwgMXB4KTtcbiAgY2xpcC1wYXRoOiBpbnNldCg1MCUpO1xuICBoZWlnaHQ6IDFweDtcbiAgbWFyZ2luOiAtMXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nOiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7XG4gIC8qIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudCAqL1xuICB3b3JkLXdyYXA6IG5vcm1hbCAhaW1wb3J0YW50O1xuICAvKiBzdHlsZWxpbnQtZW5hYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudCAqLyB9XG4gIC5zY3JlZW4tcmVhZGVyLXRleHQuc2tpcC1saW5rLCAuZ2Zvcm1fYm9keSAuc2tpcC1saW5rLmdmb3JtX3ZhbGlkYXRpb25fY29udGFpbmVyIHtcbiAgICBtYXJnaW46IDVweDsgfVxuICAgIC5zY3JlZW4tcmVhZGVyLXRleHQuc2tpcC1saW5rOmZvY3VzLCAuZ2Zvcm1fYm9keSAuc2tpcC1saW5rLmdmb3JtX3ZhbGlkYXRpb25fY29udGFpbmVyOmZvY3VzIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1ibGFjayk7IH1cbiAgLnNjcmVlbi1yZWFkZXItdGV4dDpmb2N1cywgLmdmb3JtX2JvZHkgLmdmb3JtX3ZhbGlkYXRpb25fY29udGFpbmVyOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBib3gtc2hhZG93OiAwIDAgMnB4IDJweCByZ2JhKDIyLCAyMiwgMjIsIDAuNik7XG4gICAgY2xpcDogYXV0bztcbiAgICBjbGlwLXBhdGg6IG5vbmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiAxLjdyZW07XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBsZWZ0OiA1cHg7XG4gICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgICBwYWRkaW5nOiAxNXB4IDIzcHggMTRweDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgdG9wOiA1cHg7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgei1pbmRleDogMTAwMDAwOyB9XG5cbi8qIHN0eWxlbGludC1kaXNhYmxlIGExMXkvbm8tb3V0bGluZS1ub25lICovXG5bZGF0YS13aGF0aW5wdXQ9XCJtb3VzZVwiXSAqOmZvY3VzLFxuW2RhdGEtd2hhdGlucHV0PVwidG91Y2hcIl0gKjpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7IH1cblxuLyogc3R5bGVsaW50LWVuYWJsZSBhMTF5L25vLW91dGxpbmUtbm9uZSAqL1xuW2RhdGEtd2hhdGlucHV0PVwia2V5Ym9hcmRcIl0gYTpmb2N1cyxcbltkYXRhLXdoYXRpbnB1dD1cImtleWJvYXJkXCJdIGlucHV0OmZvY3VzLFxuW2RhdGEtd2hhdGlucHV0PVwia2V5Ym9hcmRcIl0gYnV0dG9uOmZvY3VzLFxuW2RhdGEtd2hhdGlucHV0PVwia2V5Ym9hcmRcIl0gc2VsZWN0OmZvY3VzLFxuW2RhdGEtd2hhdGlucHV0PVwia2V5Ym9hcmRcIl0gdGV4dGFyZWE6Zm9jdXMsXG5bZGF0YS13aGF0aW5wdXQ9XCJrZXlib2FyZFwiXSBkaXZbdGFiaW5kZXhdOmZvY3VzIHtcbiAgb3BhY2l0eTogMTsgfVxuXG5bZGF0YS13aGF0aW5wdXQ9XCJrZXlib2FyZFwiXSAuZ2xvYmFsLWxpbmsge1xuICB0cmFuc2l0aW9uOiBub25lOyB9XG5cbltkYXRhLXdoYXRpbnB1dD1cImtleWJvYXJkXCJdIGEuZ2xvYmFsLWxpbms6Zm9jdXMge1xuICBvdXRsaW5lLWNvbG9yOiB2YXIoLS1jb2xvci1vdXRsaW5lLW92ZXJsYXktaXRlbXMpO1xuICBvdXRsaW5lLW9mZnNldDogLTFweDtcbiAgb3V0bGluZS1zdHlsZTogc29saWQ7XG4gIG91dGxpbmUtd2lkdGg6IDRweDsgfVxuXG5hLmlzLWV4dGVybmFsLWxpbmsge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG4gIGEuaXMtZXh0ZXJuYWwtbGluazo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uLy4uL3N2Zy9leHRlcm5hbC1saW5rLnN2Z1wiKTtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDE0cHggMTRweDtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDJweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIHRyYW5zaXRpb246IGFsbCAuMThzIGVhc2UtaW4tb3V0O1xuICAgIHdpZHRoOiAxNHB4OyB9XG5cbi8qIHN0eWxlbGludC1kaXNhYmxlIGExMXkvbm8tZGlzcGxheS1ub25lICovXG5hLmlzLWV4dGVybmFsLWxpbmsuZ2xvYmFsLWxpbms6OmFmdGVyLFxuYS5pcy1leHRlcm5hbC1saW5rLm5vLWV4dGVybmFsLWxpbmstaW5kaWNhdG9yOjphZnRlciB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLyogc3R5bGVsaW50LWVuYWJsZSBhMTF5L25vLWRpc3BsYXktbm9uZSAqL1xuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiBuby1wcmVmZXJlbmNlKSB7XG4gIDpmb2N1cyxcbiAgKjpmb2N1cyxcbiAgW2RhdGEtd2hhdGlucHV0PVwia2V5Ym9hcmRcIl0gOmZvY3VzLFxuICBbZGF0YS13aGF0aW5wdXQ9XCJrZXlib2FyZFwiXSBhOmZvY3VzIHtcbiAgICBvdXRsaW5lLW9mZnNldDogNXB4O1xuICAgIHRyYW5zaXRpb246IG91dGxpbmUtb2Zmc2V0IC4yNXMgZWFzZTsgfSB9XG5cbjpyb290IHtcbiAgLS1ib3JkZXItcmFkaXVzLXN1Yi1tZW51OiAwO1xuICAtLWJveC1zaGFkb3ctbmF2aWdhdGlvbi1zdGF0aWM6IDAgMCAxMHB4IHJnYmEoODQsIDg3LCAxMTUsIC4xKTtcbiAgLS1kcm9wZG93bi10b2dnbGUtc2l6ZTogMTJweDtcbiAgLS1nYXAtZHJvcGRvd246IDFyZW07XG4gIC0tZ2FwLWJldHdlZW4tZHJvcGRvd24tdG9nZ2xlOiAxLjVyZW07XG4gIC0tcGFkZGluZy1tYWluLWxldmVsLXZlcnRpY2FsOiAuNnJlbTtcbiAgLS1wYWRkaW5nLW1haW4tbGV2ZWwtaG9yaXpvbnRhbDogMnJlbTtcbiAgLS1wYWRkaW5nLXN1Yi1tZW51LXZlcnRpY2FsOiAuNnJlbTtcbiAgLS1wYWRkaW5nLXN1Yi1tZW51LWhvcml6b250YWw6IDEuNXJlbTtcbiAgLS13aWR0aC1zdWItbWVudTogMjJyZW07XG4gIC0tY29sb3ItYmFja2dyb3VuZC1uYXYtZGVza3RvcDogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAtLWNvbG9yLWJhY2tncm91bmQtc3ViLW1lbnU6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgLS1jb2xvci1ib3JkZXItc3ViLW1lbnU6IHJnYmEoNDEsIDQ0LCA2MSwgLjA1KTtcbiAgLS1jb2xvci1kcm9wZG93bi10b2dnbGU6IHZhcigtLWNvbG9yLXZhbGhhbGxhKTtcbiAgLS1jb2xvci1zdWItbWVudTogdmFyKC0tY29sb3ItdmFsaGFsbGEpO1xuICAtLWNvbG9yLWhvdmVyLW1haW4tbGV2ZWw6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgLS1jb2xvci1ob3Zlci1zdWItbWVudTogdmFyKC0tY29sb3ItdmFsaGFsbGEpO1xuICAtLWNvbG9yLW1haW4tbGV2ZWw6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgLS1jb2xvci1jdXJyZW50OiB2YXIoLS1jb2xvci1tYWluKTtcbiAgLS1mb250LXNpemUtbWFpbi1sZXZlbDogdmFyKC0tZm9udC1zaXplLTE2KTtcbiAgLS1mb250LXNpemUtc3ViLW1lbnU6IHZhcigtLWZvbnQtc2l6ZS0xNik7XG4gIC0tZm9udC13ZWlnaHQtbWFpbi1sZXZlbDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XG4gIC0tZm9udC13ZWlnaHQtc3ViLW1lbnU6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpOyB9XG5cbi5zaXRlLWhlYWRlciB1bCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5NjBweCkge1xuICAubmF2LWNvbnRhaW5lciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5NjBweCkgYW5kIChtYXgtd2lkdGg6IDk2MHB4KSB7XG4gIHVsIGxpOmZvY3VzID4gdWwsXG4gIHVsIGxpOmhvdmVyID4gdWwge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5NjBweCkgYW5kICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSwgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk2MHB4KSBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7XG4gIHVsIGxpOmZvY3VzID4gdWwsXG4gIHVsIGxpOmhvdmVyID4gdWwge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5NjBweCkge1xuICAvKiBzdHlsZWxpbnQtZGlzYWJsZSBhMTF5L25vLWRpc3BsYXktbm9uZSAqL1xuICAubmF2LXRvZ2dsZSB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAvKiBzdHlsZWxpbnQtZW5hYmxlICovXG4gIC5uYXYtcHJpbWFyeSB7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgcGFkZGluZy10b3A6IDA7IH1cbiAgLm1lbnUtaXRlbXMge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLm1lbnUtaXRlbSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAubWVudS1pdGVtID4gYSB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbi1sZXZlbCk7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbWFpbi1sZXZlbCk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW1haW4tbGV2ZWwpO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1wYWRkaW5nLW1haW4tbGV2ZWwtdmVydGljYWwpO1xuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tcGFkZGluZy1tYWluLWxldmVsLWhvcml6b250YWwpO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXBhZGRpbmctbWFpbi1sZXZlbC1ob3Jpem9udGFsKTtcbiAgICBwYWRkaW5nLXRvcDogdmFyKC0tcGFkZGluZy1tYWluLWxldmVsLXZlcnRpY2FsKTsgfVxuICAubWVudS1pdGVtIC5zdWItbWVudSBhIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1zdWItbWVudSk7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtc3ViLW1lbnUpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1zdWItbWVudSk7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tcGFkZGluZy1zdWItbWVudS12ZXJ0aWNhbCk7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1wYWRkaW5nLXN1Yi1tZW51LWhvcml6b250YWwpO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXBhZGRpbmctc3ViLW1lbnUtaG9yaXpvbnRhbCk7XG4gICAgcGFkZGluZy10b3A6IHZhcigtLXBhZGRpbmctc3ViLW1lbnUtdmVydGljYWwpOyB9XG4gIC5tZW51LWl0ZW0uY3VycmVudC1tZW51LXBhcmVudCA+IGEsXG4gIC5tZW51LWl0ZW0uY3VycmVudC1tZW51LWl0ZW0gPiBhIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItY3VycmVudCk7IH1cbiAgLm1lbnUtaXRlbS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuIGEge1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLWdhcC1iZXR3ZWVuLWRyb3Bkb3duLXRvZ2dsZSk7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgdHJhbnNpdGlvbjogcGFkZGluZyAwLjJzIGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKSwgYmFja2dyb3VuZC1jb2xvciAwLjJzIGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKTsgfVxuICAubWVudS1pdGVtID4gYTpob3ZlcixcbiAgLm1lbnUtaXRlbSA+IGE6Zm9jdXMge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1ob3Zlci1tYWluLWxldmVsKTsgfVxuICAubWVudS1pdGVtIC5zdWItbWVudSBhOmhvdmVyLFxuICAubWVudS1pdGVtIC5zdWItbWVudSBhOmZvY3VzIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItaG92ZXItc3ViLW1lbnUpOyB9XG4gIC8qIHN0eWxlbGludC1kaXNhYmxlIG5vLWRlc2NlbmRpbmctc3BlY2lmaWNpdHkgKi9cbiAgLnN1Yi1tZW51LnRvZ2dsZWQtb24gYSxcbiAgLnN1Yi1tZW51LnRvZ2dsZWQtb24gLnN1Yi1tZW51IGEsXG4gIC5tZW51LWl0ZW0ubWVudS1pdGVtLWhhcy1jaGlsZHJlbjpob3ZlciAuc3ViLW1lbnUgYSxcbiAgLm1lbnUtaXRlbS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuOmZvY3VzIC5zdWItbWVudSBhIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tcGFkZGluZy1zdWItbWVudS12ZXJ0aWNhbCk7XG4gICAgcGFkZGluZy10b3A6IHZhcigtLXBhZGRpbmctc3ViLW1lbnUtdmVydGljYWwpOyB9XG4gIC8qIHN0eWxlbGludC1lbmFibGUgKi9cbiAgLm5hdi1wcmltYXJ5ID4gdWw6Zmlyc3Qtb2YtdHlwZSA+IC5tZW51LWl0ZW0taGFzLWNoaWxkcmVuOmZvY3VzOjpiZWZvcmUsXG4gIC5uYXYtcHJpbWFyeSA+IHVsOmZpcnN0LW9mLXR5cGUgPiAubWVudS1pdGVtLWhhcy1jaGlsZHJlbjpob3Zlcjo6YmVmb3JlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKTsgfVxuICAuc3ViLW1lbnUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJhY2tncm91bmQtc3ViLW1lbnUpO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ib3JkZXItc3ViLW1lbnUpO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc3ViLW1lbnUpO1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXN1Yi1tZW51KTtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJvcmRlci1zdWItbWVudSk7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgdmFyKC0tY29sb3ItYm9yZGVyLXN1Yi1tZW51KTtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXN1Yi1tZW51KTtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zdWItbWVudSk7XG4gICAgYm94LXNoYWRvdzogMCAyNXB4IDIwcHggLTEwcHggcmdiYSg1LCA0LCAyNSwgMC4wNSk7XG4gICAgbGVmdDogNSU7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXRvcDogdmFyKC0tZ2FwLWRyb3Bkb3duKTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAuNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy10b3A6IC41cmVtO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IC05OTk5cHg7XG4gICAgdHJhbnNpdGlvbjogcGFkZGluZyAwLjJzIGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKTtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgd2lkdGg6IHZhcigtLXdpZHRoLXN1Yi1tZW51KTtcbiAgICB6LWluZGV4OiA5OyB9XG4gICAgLnN1Yi1tZW51IC5zdWItbWVudSB7XG4gICAgICBsZWZ0OiAxMDAlO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBtYXJnaW4tdG9wOiAtNXB4O1xuICAgICAgdG9wOiAwOyB9XG4gICAgLnN1Yi1tZW51IGxpIHtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIHdpZHRoOiB2YXIoLS13aWR0aC1zdWItbWVudSk7IH1cbiAgLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gPiAuc3ViLW1lbnUudG9nZ2xlZC1vbixcbiAgLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW46Zm9jdXMgPiAuc3ViLW1lbnUsXG4gIC5tZW51LWl0ZW0taGFzLWNoaWxkcmVuOmhvdmVyID4gLnN1Yi1tZW51IHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRvcDogMTAwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgei1pbmRleDogMTsgfVxuICAubWVudS1pdGVtLWhhcy1jaGlsZHJlbiAuc3ViLW1lbnUudG9nZ2xlZC1vbiAuc3ViLW1lbnUsXG4gIC5tZW51LWl0ZW0taGFzLWNoaWxkcmVuIC5zdWItbWVudSAuc3ViLW1lbnUudG9nZ2xlZC1vbixcbiAgLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW46Zm9jdXMgLnN1Yi1tZW51IC5zdWItbWVudSxcbiAgLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW46aG92ZXIgLnN1Yi1tZW51IC5zdWItbWVudSB7XG4gICAgbWFyZ2luLXRvcDogLTVweDtcbiAgICB0b3A6IDA7XG4gICAgei1pbmRleDogMTA7IH1cbiAgLm1lbnUtaXRlbS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIG1hcmdpbi1yaWdodDogLjhyZW07XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLm1lbnUtaXRlbS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuOjphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgaGVpZ2h0OiB2YXIoLS1nYXAtZHJvcGRvd24pO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAxMDAlO1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgLmRyb3Bkb3duLXRvZ2dsZSBzdmcge1xuICAgIGhlaWdodDogdmFyKC0tZHJvcGRvd24tdG9nZ2xlLXNpemUpO1xuICAgIHdpZHRoOiB2YXIoLS1kcm9wZG93bi10b2dnbGUtc2l6ZSk7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMzVzIGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKTsgfVxuICAuZHJvcGRvd24tdG9nZ2xlLnRvZ2dsZWQtb24gc3ZnIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZVgoMTgwZGVnKTsgfVxuICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogMDtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItZHJvcGRvd24tdG9nZ2xlKTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAwOyB9XG4gIC5zdWItbWVudSAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICB3aWR0aDogM3JlbTsgfVxuICAuc3ViLW1lbnUgLmRyb3Bkb3duLXRvZ2dsZSBzdmcge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZykgcm90YXRlWCgwZGVnKTsgfVxuICAuc3ViLW1lbnUgLmRyb3Bkb3duLXRvZ2dsZS50b2dnbGVkLW9uIHN2ZyB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKSByb3RhdGVYKDE4MGRlZyk7IH1cbiAgLm1lbnUtaXRlbS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuID4gLmRyb3Bkb3duLXRvZ2dsZS50b2dnbGVkLW9uIHN2ZyxcbiAgLm1lbnUtaXRlbS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuOmhvdmVyID4gLmRyb3Bkb3duLXRvZ2dsZSBzdmcsXG4gIC5tZW51LWl0ZW0ubWVudS1pdGVtLWhhcy1jaGlsZHJlbjpmb2N1cyA+IC5kcm9wZG93bi10b2dnbGUgc3ZnIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpIHJvdGF0ZSgxODBkZWcpOyB9XG4gIC8qIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW1heC1zcGVjaWZpY2l0eSwgc2VsZWN0b3ItbWF4LWNsYXNzICovXG4gIC5tZW51LWl0ZW0ubWVudS1pdGVtLWhhcy1jaGlsZHJlbiAubWVudS1pdGVtLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gPiAuZHJvcGRvd24tdG9nZ2xlLnRvZ2dsZWQtb24gc3ZnLFxuICAubWVudS1pdGVtLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gLm1lbnUtaXRlbS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuOmhvdmVyID4gLmRyb3Bkb3duLXRvZ2dsZSBzdmcsXG4gIC5tZW51LWl0ZW0ubWVudS1pdGVtLWhhcy1jaGlsZHJlbiAubWVudS1pdGVtLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW46Zm9jdXMgPiAuZHJvcGRvd24tdG9nZ2xlIHN2ZyB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAlKSByb3RhdGUoOTBkZWcpOyB9XG4gIC8qIHN0eWxlbGludC1lbmFibGUgKi9cbiAgLyogc3R5bGVsaW50LWRpc2FibGUgYTExeS9uby1kaXNwbGF5LW5vbmUgKi9cbiAgLnN1Yi1tZW51IC5tZW51LWl0ZW0taGFzLWNoaWxkcmVuOjphZnRlciB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAvKiBzdHlsZWxpbnQtZW5hYmxlICovXG4gIC5tZW51LWl0ZW0taGFzLWNoaWxkcmVuOjpiZWZvcmUge1xuICAgIC8qIHN0eWxlbGludC1kaXNhYmxlIHNoLXdhcWFyL2RlY2xhcmF0aW9uLXVzZS12YXJpYWJsZSAqL1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdmFyKC0tY29sb3Itd2hpdGUpO1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXdpZHRoOiAwIDVweCA1cHg7XG4gICAgLyogc3R5bGVsaW50LWVuYWJsZSAqL1xuICAgIGJvdHRvbTogLTEwcHg7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGxlZnQ6IDUwJTtcbiAgICBtYXJnaW4tbGVmdDogLTIwcHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGJvdHRvbTtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHdpZHRoOiAwOyB9IH1cblxuOnJvb3Qge1xuICAtLWZvbnQtc2l6ZS1tYWluLWxldmVsLW1vYmlsZTogMTdweDtcbiAgLS1mb250LXNpemUtc3ViLW1lbnUtbW9iaWxlOiAxN3B4O1xuICAtLWZvbnQtd2VpZ2h0LW1haW4tbGV2ZWwtbW9iaWxlOiA2MDA7XG4gIC0tZm9udC13ZWlnaHQtc3ViLW1lbnUtbW9iaWxlOiA2MDA7XG4gIC0tZHJvcGRvd24tdG9nZ2xlLXNpemUtbW9iaWxlOiAxMnB4O1xuICAtLWhlaWdodC1uYXZpZ2F0aW9uLW1vYmlsZTogNzJweDtcbiAgLS1tYXJnaW4tbGVmdC1zdWItbWVudTogMnJlbTtcbiAgLS1wYWRkaW5nLXN1Yi1tZW51LXZlcnRpY2FsLW1vYmlsZTogMS4ycmVtO1xuICAtLXBhZGRpbmctc3ViLW1lbnUtaG9yaXpvbnRhbC1tb2JpbGU6IDIuNXJlbTtcbiAgLS1jb2xvci1hY3RpdmUtbWFpbi1sZXZlbC1tb2JpbGU6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgLS1jb2xvci1iYWNrZ3JvdW5kLW5hdi1tb2JpbGUtaGVhZGVyOiB2YXIoLS1jb2xvci1tYWluKTtcbiAgLS1jb2xvci1iYWNrZ3JvdW5kLW5hdi1tb2JpbGUtaGVhZGVyLWFjdGl2ZTogdmFyKC0tY29sb3ItbWFpbik7XG4gIC0tY29sb3ItYmFja2dyb3VuZC1uYXYtbW9iaWxlLWxheWVyOiB2YXIoLS1jb2xvci1tYWluKTtcbiAgLS1jb2xvci1iYWNrZ3JvdW5kLW5hdi1tb2JpbGUtbGF5ZXItYWN0aXZlOiB2YXIoLS1jb2xvci1tYWluKTtcbiAgLS1jb2xvci1jdXJyZW50LW1vYmlsZTogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAtLWNvbG9yLWRyb3Bkb3duLXRvZ2dsZS1tb2JpbGU6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgLS1jb2xvci1oYW1idXJnZXItYWN0aXZlOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIC0tY29sb3ItaGFtYnVyZ2VyOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIC0tY29sb3ItbWFpbi1sZXZlbC1tb2JpbGU6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgLS1jb2xvci1zZXBhcmF0b3ItbmF2LW1vYmlsZTogcmdiYSgyNTUsIDI1NSwgMjU1LCAuMSk7XG4gIC0tY29sb3Itc3ViLW1lbnUtbW9iaWxlOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC44KTsgfVxuXG4vKiFcbiAqIEhhbWJ1cmdlcnNcbiAqIEBkZXNjcmlwdGlvbiBUYXN0eSBDU1MtYW5pbWF0ZWQgaGFtYnVyZ2Vyc1xuICogQGF1dGhvciBKb25hdGhhbiBTdWggQGpvbnN1aFxuICogQHNpdGUgaHR0cHM6Ly9qb25zdWguY29tL2hhbWJ1cmdlcnNcbiAqIEBsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9qb25zdWgvaGFtYnVyZ2Vyc1xuICovXG4uaGFtYnVyZ2VyIHtcbiAgcGFkZGluZzogNHJlbSAxLjVyZW07XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5LCBmaWx0ZXI7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMTVzO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICBmb250OiBpbmhlcml0O1xuICBjb2xvcjogaW5oZXJpdDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG4gIG1hcmdpbjogMDtcbiAgb3ZlcmZsb3c6IHZpc2libGU7IH1cbiAgLmhhbWJ1cmdlcjpob3ZlciB7XG4gICAgb3BhY2l0eTogMC44OyB9XG4gIC5oYW1idXJnZXIuaXMtYWN0aXZlOmhvdmVyIHtcbiAgICBvcGFjaXR5OiAwLjg7IH1cbiAgLmhhbWJ1cmdlci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcixcbiAgLmhhbWJ1cmdlci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlLFxuICAuaGFtYnVyZ2VyLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItaGFtYnVyZ2VyKTsgfVxuXG4uaGFtYnVyZ2VyLWJveCB7XG4gIHdpZHRoOiAzcmVtO1xuICBoZWlnaHQ6IDEuNnJlbTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLmhhbWJ1cmdlci1pbm5lciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0b3A6IDUwJTtcbiAgbWFyZ2luLXRvcDogLTAuMXJlbTsgfVxuICAuaGFtYnVyZ2VyLWlubmVyLCAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUsIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICB3aWR0aDogM3JlbTtcbiAgICBoZWlnaHQ6IDAuMnJlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1oYW1idXJnZXIpO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjE1cztcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZTsgfVxuICAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUsIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gICAgdG9wOiAtMC43cmVtOyB9XG4gIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICBib3R0b206IC0wLjdyZW07IH1cblxuLypcbiAgICogM0RYXG4gICAqL1xuLmhhbWJ1cmdlci0tM2R4IC5oYW1idXJnZXItYm94IHtcbiAgcGVyc3BlY3RpdmU6IDZyZW07IH1cblxuLmhhbWJ1cmdlci0tM2R4IC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpLCBiYWNrZ3JvdW5kLWNvbG9yIDBzIDAuMXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpOyB9XG4gIC5oYW1idXJnZXItLTNkeCAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUsIC5oYW1idXJnZXItLTNkeCAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDBzIDAuMXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpOyB9XG5cbi5oYW1idXJnZXItLTNkeC5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIHRyYW5zZm9ybTogcm90YXRlWSgxODBkZWcpOyB9XG4gIC5oYW1idXJnZXItLTNkeC5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAuN3JlbSwgMCkgcm90YXRlKDQ1ZGVnKTsgfVxuICAuaGFtYnVyZ2VyLS0zZHguaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0wLjdyZW0sIDApIHJvdGF0ZSgtNDVkZWcpOyB9XG5cbi8qXG4gICAqIDNEWCBSZXZlcnNlXG4gICAqL1xuLmhhbWJ1cmdlci0tM2R4LXIgLmhhbWJ1cmdlci1ib3gge1xuICBwZXJzcGVjdGl2ZTogNnJlbTsgfVxuXG4uaGFtYnVyZ2VyLS0zZHgtciAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKSwgYmFja2dyb3VuZC1jb2xvciAwcyAwLjFzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKTsgfVxuICAuaGFtYnVyZ2VyLS0zZHgtciAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUsIC5oYW1idXJnZXItLTNkeC1yIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMHMgMC4xcyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSk7IH1cblxuLmhhbWJ1cmdlci0tM2R4LXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICB0cmFuc2Zvcm06IHJvdGF0ZVkoLTE4MGRlZyk7IH1cbiAgLmhhbWJ1cmdlci0tM2R4LXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLjdyZW0sIDApIHJvdGF0ZSg0NWRlZyk7IH1cbiAgLmhhbWJ1cmdlci0tM2R4LXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0wLjdyZW0sIDApIHJvdGF0ZSgtNDVkZWcpOyB9XG5cbi8qXG4gICAqIDNEWVxuICAgKi9cbi5oYW1idXJnZXItLTNkeSAuaGFtYnVyZ2VyLWJveCB7XG4gIHBlcnNwZWN0aXZlOiA2cmVtOyB9XG5cbi5oYW1idXJnZXItLTNkeSAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKSwgYmFja2dyb3VuZC1jb2xvciAwcyAwLjFzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKTsgfVxuICAuaGFtYnVyZ2VyLS0zZHkgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlLCAuaGFtYnVyZ2VyLS0zZHkgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwcyAwLjFzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKTsgfVxuXG4uaGFtYnVyZ2VyLS0zZHkuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICB0cmFuc2Zvcm06IHJvdGF0ZVgoLTE4MGRlZyk7IH1cbiAgLmhhbWJ1cmdlci0tM2R5LmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMC43cmVtLCAwKSByb3RhdGUoNDVkZWcpOyB9XG4gIC5oYW1idXJnZXItLTNkeS5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTAuN3JlbSwgMCkgcm90YXRlKC00NWRlZyk7IH1cblxuLypcbiAgICogM0RZIFJldmVyc2VcbiAgICovXG4uaGFtYnVyZ2VyLS0zZHktciAuaGFtYnVyZ2VyLWJveCB7XG4gIHBlcnNwZWN0aXZlOiA2cmVtOyB9XG5cbi5oYW1idXJnZXItLTNkeS1yIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpLCBiYWNrZ3JvdW5kLWNvbG9yIDBzIDAuMXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpOyB9XG4gIC5oYW1idXJnZXItLTNkeS1yIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSwgLmhhbWJ1cmdlci0tM2R5LXIgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwcyAwLjFzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKTsgfVxuXG4uaGFtYnVyZ2VyLS0zZHktci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIHRyYW5zZm9ybTogcm90YXRlWCgxODBkZWcpOyB9XG4gIC5oYW1idXJnZXItLTNkeS1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMC43cmVtLCAwKSByb3RhdGUoNDVkZWcpOyB9XG4gIC5oYW1idXJnZXItLTNkeS1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMC43cmVtLCAwKSByb3RhdGUoLTQ1ZGVnKTsgfVxuXG4vKlxuICAgKiAzRFhZXG4gICAqL1xuLmhhbWJ1cmdlci0tM2R4eSAuaGFtYnVyZ2VyLWJveCB7XG4gIHBlcnNwZWN0aXZlOiA2cmVtOyB9XG5cbi5oYW1idXJnZXItLTNkeHkgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSksIGJhY2tncm91bmQtY29sb3IgMHMgMC4xcyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSk7IH1cbiAgLmhhbWJ1cmdlci0tM2R4eSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUsIC5oYW1idXJnZXItLTNkeHkgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwcyAwLjFzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKTsgfVxuXG4uaGFtYnVyZ2VyLS0zZHh5LmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgdHJhbnNmb3JtOiByb3RhdGVYKDE4MGRlZykgcm90YXRlWSgxODBkZWcpOyB9XG4gIC5oYW1idXJnZXItLTNkeHkuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLjdyZW0sIDApIHJvdGF0ZSg0NWRlZyk7IH1cbiAgLmhhbWJ1cmdlci0tM2R4eS5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTAuN3JlbSwgMCkgcm90YXRlKC00NWRlZyk7IH1cblxuLypcbiAgICogM0RYWSBSZXZlcnNlXG4gICAqL1xuLmhhbWJ1cmdlci0tM2R4eS1yIC5oYW1idXJnZXItYm94IHtcbiAgcGVyc3BlY3RpdmU6IDZyZW07IH1cblxuLmhhbWJ1cmdlci0tM2R4eS1yIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpLCBiYWNrZ3JvdW5kLWNvbG9yIDBzIDAuMXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpOyB9XG4gIC5oYW1idXJnZXItLTNkeHktciAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUsIC5oYW1idXJnZXItLTNkeHktciAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDBzIDAuMXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpOyB9XG5cbi5oYW1idXJnZXItLTNkeHktci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIHRyYW5zZm9ybTogcm90YXRlWCgxODBkZWcpIHJvdGF0ZVkoMTgwZGVnKSByb3RhdGVaKC0xODBkZWcpOyB9XG4gIC5oYW1idXJnZXItLTNkeHktci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAuN3JlbSwgMCkgcm90YXRlKDQ1ZGVnKTsgfVxuICAuaGFtYnVyZ2VyLS0zZHh5LXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0wLjdyZW0sIDApIHJvdGF0ZSgtNDVkZWcpOyB9XG5cbi8qXG4gICAqIEFycm93XG4gICAqL1xuLmhhbWJ1cmdlci0tYXJyb3cuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTAuNnJlbSwgMCwgMCkgcm90YXRlKC00NWRlZykgc2NhbGUoMC43LCAxKTsgfVxuXG4uaGFtYnVyZ2VyLS1hcnJvdy5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0wLjZyZW0sIDAsIDApIHJvdGF0ZSg0NWRlZykgc2NhbGUoMC43LCAxKTsgfVxuXG4vKlxuICAgKiBBcnJvdyBSaWdodFxuICAgKi9cbi5oYW1idXJnZXItLWFycm93LXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMC42cmVtLCAwLCAwKSByb3RhdGUoNDVkZWcpIHNjYWxlKDAuNywgMSk7IH1cblxuLmhhbWJ1cmdlci0tYXJyb3ctci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAuNnJlbSwgMCwgMCkgcm90YXRlKC00NWRlZykgc2NhbGUoMC43LCAxKTsgfVxuXG4vKlxuICAgKiBBcnJvdyBBbHRcbiAgICovXG4uaGFtYnVyZ2VyLS1hcnJvd2FsdCAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICB0cmFuc2l0aW9uOiB0b3AgMC4xcyAwLjFzIGVhc2UsIHRyYW5zZm9ybSAwLjFzIGN1YmljLWJlemllcigwLjE2NSwgMC44NCwgMC40NCwgMSk7IH1cblxuLmhhbWJ1cmdlci0tYXJyb3dhbHQgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICB0cmFuc2l0aW9uOiBib3R0b20gMC4xcyAwLjFzIGVhc2UsIHRyYW5zZm9ybSAwLjFzIGN1YmljLWJlemllcigwLjE2NSwgMC44NCwgMC40NCwgMSk7IH1cblxuLmhhbWJ1cmdlci0tYXJyb3dhbHQuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gIHRvcDogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMC42cmVtLCAtMC43NXJlbSwgMCkgcm90YXRlKC00NWRlZykgc2NhbGUoMC43LCAxKTtcbiAgdHJhbnNpdGlvbjogdG9wIDAuMXMgZWFzZSwgdHJhbnNmb3JtIDAuMXMgMC4xcyBjdWJpYy1iZXppZXIoMC44OTUsIDAuMDMsIDAuNjg1LCAwLjIyKTsgfVxuXG4uaGFtYnVyZ2VyLS1hcnJvd2FsdC5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICBib3R0b206IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTAuNnJlbSwgMC43NXJlbSwgMCkgcm90YXRlKDQ1ZGVnKSBzY2FsZSgwLjcsIDEpO1xuICB0cmFuc2l0aW9uOiBib3R0b20gMC4xcyBlYXNlLCB0cmFuc2Zvcm0gMC4xcyAwLjFzIGN1YmljLWJlemllcigwLjg5NSwgMC4wMywgMC42ODUsIDAuMjIpOyB9XG5cbi8qXG4gICAqIEFycm93IEFsdCBSaWdodFxuICAgKi9cbi5oYW1idXJnZXItLWFycm93YWx0LXIgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgdHJhbnNpdGlvbjogdG9wIDAuMXMgMC4xcyBlYXNlLCB0cmFuc2Zvcm0gMC4xcyBjdWJpYy1iZXppZXIoMC4xNjUsIDAuODQsIDAuNDQsIDEpOyB9XG5cbi5oYW1idXJnZXItLWFycm93YWx0LXIgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICB0cmFuc2l0aW9uOiBib3R0b20gMC4xcyAwLjFzIGVhc2UsIHRyYW5zZm9ybSAwLjFzIGN1YmljLWJlemllcigwLjE2NSwgMC44NCwgMC40NCwgMSk7IH1cblxuLmhhbWJ1cmdlci0tYXJyb3dhbHQtci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgdG9wOiAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAuNnJlbSwgLTAuNzVyZW0sIDApIHJvdGF0ZSg0NWRlZykgc2NhbGUoMC43LCAxKTtcbiAgdHJhbnNpdGlvbjogdG9wIDAuMXMgZWFzZSwgdHJhbnNmb3JtIDAuMXMgMC4xcyBjdWJpYy1iZXppZXIoMC44OTUsIDAuMDMsIDAuNjg1LCAwLjIyKTsgfVxuXG4uaGFtYnVyZ2VyLS1hcnJvd2FsdC1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gIGJvdHRvbTogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLjZyZW0sIDAuNzVyZW0sIDApIHJvdGF0ZSgtNDVkZWcpIHNjYWxlKDAuNywgMSk7XG4gIHRyYW5zaXRpb246IGJvdHRvbSAwLjFzIGVhc2UsIHRyYW5zZm9ybSAwLjFzIDAuMXMgY3ViaWMtYmV6aWVyKDAuODk1LCAwLjAzLCAwLjY4NSwgMC4yMik7IH1cblxuLypcbiAgICogQXJyb3cgVHVyblxuICAgKi9cbi5oYW1idXJnZXItLWFycm93dHVybi5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRyYW5zZm9ybTogcm90YXRlKC0xODBkZWcpOyB9XG4gIC5oYW1idXJnZXItLWFycm93dHVybi5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDhweCwgMCwgMCkgcm90YXRlKDQ1ZGVnKSBzY2FsZSgwLjcsIDEpOyB9XG4gIC5oYW1idXJnZXItLWFycm93dHVybi5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoOHB4LCAwLCAwKSByb3RhdGUoLTQ1ZGVnKSBzY2FsZSgwLjcsIDEpOyB9XG5cbi8qXG4gICAqIEFycm93IFR1cm4gUmlnaHRcbiAgICovXG4uaGFtYnVyZ2VyLS1hcnJvd3R1cm4tci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRyYW5zZm9ybTogcm90YXRlKC0xODBkZWcpOyB9XG4gIC5oYW1idXJnZXItLWFycm93dHVybi1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLThweCwgMCwgMCkgcm90YXRlKC00NWRlZykgc2NhbGUoMC43LCAxKTsgfVxuICAuaGFtYnVyZ2VyLS1hcnJvd3R1cm4tci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLThweCwgMCwgMCkgcm90YXRlKDQ1ZGVnKSBzY2FsZSgwLjcsIDEpOyB9XG5cbi8qXG4gICAqIEJvcmluZ1xuICAgKi9cbi5oYW1idXJnZXItLWJvcmluZyAuaGFtYnVyZ2VyLWlubmVyLCAuaGFtYnVyZ2VyLS1ib3JpbmcgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlLCAuaGFtYnVyZ2VyLS1ib3JpbmcgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBub25lOyB9XG5cbi5oYW1idXJnZXItLWJvcmluZy5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTsgfVxuICAuaGFtYnVyZ2VyLS1ib3JpbmcuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gICAgdG9wOiAwO1xuICAgIG9wYWNpdHk6IDA7IH1cbiAgLmhhbWJ1cmdlci0tYm9yaW5nLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgYm90dG9tOiAwO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7IH1cblxuLypcbiAgICogQ29sbGFwc2VcbiAgICovXG4uaGFtYnVyZ2VyLS1jb2xsYXBzZSAuaGFtYnVyZ2VyLWlubmVyLCAuaGFtYnVyZ2VyIC5oYW1idXJnZXItaW5uZXIge1xuICB0b3A6IGF1dG87XG4gIGJvdHRvbTogMDtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4xM3M7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDAuMTNzO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7IH1cbiAgLmhhbWJ1cmdlci0tY29sbGFwc2UgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIsIC5oYW1idXJnZXIgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgIHRvcDogLTEuNHJlbTtcbiAgICB0cmFuc2l0aW9uOiB0b3AgMC4ycyAwLjJzIGN1YmljLWJlemllcigwLjMzMzMzLCAwLjY2NjY3LCAwLjY2NjY3LCAxKSwgb3BhY2l0eSAwLjFzIGxpbmVhcjsgfVxuICAuaGFtYnVyZ2VyLS1jb2xsYXBzZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUsIC5oYW1idXJnZXIgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgICB0cmFuc2l0aW9uOiB0b3AgMC4xMnMgMC4ycyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMC42NjY2NywgMC42NjY2NywgMSksIHRyYW5zZm9ybSAwLjEzcyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTsgfVxuXG4uaGFtYnVyZ2VyLS1jb2xsYXBzZS5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lciwgLmlzLWFjdGl2ZS5oYW1idXJnZXIgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTAuN3JlbSwgMCkgcm90YXRlKC00NWRlZyk7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDAuMjJzO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7IH1cbiAgLmhhbWJ1cmdlci0tY29sbGFwc2UuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyLCAuaXMtYWN0aXZlLmhhbWJ1cmdlciAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgdG9wOiAwO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbjogdG9wIDAuMnMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAsIDAuNjY2NjcsIDAuMzMzMzMpLCBvcGFjaXR5IDAuMXMgMC4yMnMgbGluZWFyOyB9XG4gIC5oYW1idXJnZXItLWNvbGxhcHNlLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUsIC5pcy1hY3RpdmUuaGFtYnVyZ2VyIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gICAgdG9wOiAwO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgdHJhbnNpdGlvbjogdG9wIDAuMXMgMC4xNnMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAsIDAuNjY2NjcsIDAuMzMzMzMpLCB0cmFuc2Zvcm0gMC4xM3MgMC4yNXMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7IH1cblxuLypcbiAgICogQ29sbGFwc2UgUmV2ZXJzZVxuICAgKi9cbi5oYW1idXJnZXItLWNvbGxhcHNlLXIgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRvcDogYXV0bztcbiAgYm90dG9tOiAwO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjEzcztcbiAgdHJhbnNpdGlvbi1kZWxheTogMC4xM3M7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTsgfVxuICAuaGFtYnVyZ2VyLS1jb2xsYXBzZS1yIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICB0b3A6IC0xLjRyZW07XG4gICAgdHJhbnNpdGlvbjogdG9wIDAuMnMgMC4ycyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMC42NjY2NywgMC42NjY2NywgMSksIG9wYWNpdHkgMC4xcyBsaW5lYXI7IH1cbiAgLmhhbWJ1cmdlci0tY29sbGFwc2UtciAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICAgIHRyYW5zaXRpb246IHRvcCAwLjEycyAwLjJzIGN1YmljLWJlemllcigwLjMzMzMzLCAwLjY2NjY3LCAwLjY2NjY3LCAxKSwgdHJhbnNmb3JtIDAuMTNzIGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpOyB9XG5cbi5oYW1idXJnZXItLWNvbGxhcHNlLXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0wLjdyZW0sIDApIHJvdGF0ZSg0NWRlZyk7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDAuMjJzO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7IH1cbiAgLmhhbWJ1cmdlci0tY29sbGFwc2Utci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgIHRvcDogMDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zaXRpb246IHRvcCAwLjJzIGN1YmljLWJlemllcigwLjMzMzMzLCAwLCAwLjY2NjY3LCAwLjMzMzMzKSwgb3BhY2l0eSAwLjFzIDAuMjJzIGxpbmVhcjsgfVxuICAuaGFtYnVyZ2VyLS1jb2xsYXBzZS1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICAgIHRvcDogMDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gICAgdHJhbnNpdGlvbjogdG9wIDAuMXMgMC4xNnMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAsIDAuNjY2NjcsIDAuMzMzMzMpLCB0cmFuc2Zvcm0gMC4xM3MgMC4yNXMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7IH1cblxuLypcbiAgICogRWxhc3RpY1xuICAgKi9cbi5oYW1idXJnZXItLWVsYXN0aWMgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRvcDogMC4xcmVtO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjI3NXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC42OCwgLTAuNTUsIDAuMjY1LCAxLjU1KTsgfVxuICAuaGFtYnVyZ2VyLS1lbGFzdGljIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gICAgdG9wOiAwLjdyZW07XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjEyNXMgMC4yNzVzIGVhc2U7IH1cbiAgLmhhbWJ1cmdlci0tZWxhc3RpYyAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgdG9wOiAxLjRyZW07XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMjc1cyBjdWJpYy1iZXppZXIoMC42OCwgLTAuNTUsIDAuMjY1LCAxLjU1KTsgfVxuXG4uaGFtYnVyZ2VyLS1lbGFzdGljLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLjdyZW0sIDApIHJvdGF0ZSgxMzVkZWcpO1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwLjA3NXM7IH1cbiAgLmhhbWJ1cmdlci0tZWxhc3RpYy5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwcztcbiAgICBvcGFjaXR5OiAwOyB9XG4gIC5oYW1idXJnZXItLWVsYXN0aWMuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xLjRyZW0sIDApIHJvdGF0ZSgtMjcwZGVnKTtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjA3NXM7IH1cblxuLypcbiAgICogRWxhc3RpYyBSZXZlcnNlXG4gICAqL1xuLmhhbWJ1cmdlci0tZWxhc3RpYy1yIC5oYW1idXJnZXItaW5uZXIge1xuICB0b3A6IDAuMXJlbTtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4yNzVzO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNjgsIC0wLjU1LCAwLjI2NSwgMS41NSk7IH1cbiAgLmhhbWJ1cmdlci0tZWxhc3RpYy1yIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gICAgdG9wOiAwLjdyZW07XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjEyNXMgMC4yNzVzIGVhc2U7IH1cbiAgLmhhbWJ1cmdlci0tZWxhc3RpYy1yIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICB0b3A6IDEuNHJlbTtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4yNzVzIGN1YmljLWJlemllcigwLjY4LCAtMC41NSwgMC4yNjUsIDEuNTUpOyB9XG5cbi5oYW1idXJnZXItLWVsYXN0aWMtci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMC43cmVtLCAwKSByb3RhdGUoLTEzNWRlZyk7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDAuMDc1czsgfVxuICAuaGFtYnVyZ2VyLS1lbGFzdGljLXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gICAgb3BhY2l0eTogMDsgfVxuICAuaGFtYnVyZ2VyLS1lbGFzdGljLXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xLjRyZW0sIDApIHJvdGF0ZSgyNzBkZWcpO1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMDc1czsgfVxuXG4vKlxuICAgKiBFbXBoYXRpY1xuICAgKi9cbi5oYW1idXJnZXItLWVtcGhhdGljIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAuaGFtYnVyZ2VyLS1lbXBoYXRpYyAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMTI1cyAwLjE3NXMgZWFzZS1pbjsgfVxuICAgIC5oYW1idXJnZXItLWVtcGhhdGljIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTI1cyBjdWJpYy1iZXppZXIoMC42LCAwLjA0LCAwLjk4LCAwLjMzNSksIHRvcCAwLjA1cyAwLjEyNXMgbGluZWFyLCBsZWZ0IDAuMTI1cyAwLjE3NXMgZWFzZS1pbjsgfVxuICAgIC5oYW1idXJnZXItLWVtcGhhdGljIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICAgIHRvcDogMC43cmVtO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xMjVzIGN1YmljLWJlemllcigwLjYsIDAuMDQsIDAuOTgsIDAuMzM1KSwgdG9wIDAuMDVzIDAuMTI1cyBsaW5lYXIsIHJpZ2h0IDAuMTI1cyAwLjE3NXMgZWFzZS1pbjsgfVxuICAuaGFtYnVyZ2VyLS1lbXBoYXRpYy5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7IH1cbiAgICAuaGFtYnVyZ2VyLS1lbXBoYXRpYy5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgICAgIGxlZnQ6IC02cmVtO1xuICAgICAgdG9wOiAtNnJlbTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoNnJlbSwgNnJlbSwgMCkgcm90YXRlKDQ1ZGVnKTtcbiAgICAgIHRyYW5zaXRpb246IGxlZnQgMC4xMjVzIGVhc2Utb3V0LCB0b3AgMC4wNXMgMC4xMjVzIGxpbmVhciwgdHJhbnNmb3JtIDAuMTI1cyAwLjE3NXMgY3ViaWMtYmV6aWVyKDAuMDc1LCAwLjgyLCAwLjE2NSwgMSk7IH1cbiAgICAuaGFtYnVyZ2VyLS1lbXBoYXRpYy5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgICAgcmlnaHQ6IC02cmVtO1xuICAgICAgdG9wOiAtNnJlbTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTZyZW0sIDZyZW0sIDApIHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgdHJhbnNpdGlvbjogcmlnaHQgMC4xMjVzIGVhc2Utb3V0LCB0b3AgMC4wNXMgMC4xMjVzIGxpbmVhciwgdHJhbnNmb3JtIDAuMTI1cyAwLjE3NXMgY3ViaWMtYmV6aWVyKDAuMDc1LCAwLjgyLCAwLjE2NSwgMSk7IH1cblxuLypcbiAgICogRW1waGF0aWMgUmV2ZXJzZVxuICAgKi9cbi5oYW1idXJnZXItLWVtcGhhdGljLXIge1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC5oYW1idXJnZXItLWVtcGhhdGljLXIgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjEyNXMgMC4xNzVzIGVhc2UtaW47IH1cbiAgICAuaGFtYnVyZ2VyLS1lbXBoYXRpYy1yIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTI1cyBjdWJpYy1iZXppZXIoMC42LCAwLjA0LCAwLjk4LCAwLjMzNSksIHRvcCAwLjA1cyAwLjEyNXMgbGluZWFyLCBsZWZ0IDAuMTI1cyAwLjE3NXMgZWFzZS1pbjsgfVxuICAgIC5oYW1idXJnZXItLWVtcGhhdGljLXIgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgICAgdG9wOiAwLjdyZW07XG4gICAgICByaWdodDogMDtcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjEyNXMgY3ViaWMtYmV6aWVyKDAuNiwgMC4wNCwgMC45OCwgMC4zMzUpLCB0b3AgMC4wNXMgMC4xMjVzIGxpbmVhciwgcmlnaHQgMC4xMjVzIDAuMTc1cyBlYXNlLWluOyB9XG4gIC5oYW1idXJnZXItLWVtcGhhdGljLXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzO1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50OyB9XG4gICAgLmhhbWJ1cmdlci0tZW1waGF0aWMtci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgICAgIGxlZnQ6IC02cmVtO1xuICAgICAgdG9wOiA2cmVtO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCg2cmVtLCAtNnJlbSwgMCkgcm90YXRlKC00NWRlZyk7XG4gICAgICB0cmFuc2l0aW9uOiBsZWZ0IDAuMTI1cyBlYXNlLW91dCwgdG9wIDAuMDVzIDAuMTI1cyBsaW5lYXIsIHRyYW5zZm9ybSAwLjEyNXMgMC4xNzVzIGN1YmljLWJlemllcigwLjA3NSwgMC44MiwgMC4xNjUsIDEpOyB9XG4gICAgLmhhbWJ1cmdlci0tZW1waGF0aWMtci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgICAgcmlnaHQ6IC02cmVtO1xuICAgICAgdG9wOiA2cmVtO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNnJlbSwgLTZyZW0sIDApIHJvdGF0ZSg0NWRlZyk7XG4gICAgICB0cmFuc2l0aW9uOiByaWdodCAwLjEyNXMgZWFzZS1vdXQsIHRvcCAwLjA1cyAwLjEyNXMgbGluZWFyLCB0cmFuc2Zvcm0gMC4xMjVzIDAuMTc1cyBjdWJpYy1iZXppZXIoMC4wNzUsIDAuODIsIDAuMTY1LCAxKTsgfVxuXG4vKlxuICAgKiBNaW51c1xuICAgKi9cbi5oYW1idXJnZXItLW1pbnVzIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSwgLmhhbWJ1cmdlci0tbWludXMgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICB0cmFuc2l0aW9uOiBib3R0b20gMC4wOHMgMHMgZWFzZS1vdXQsIHRvcCAwLjA4cyAwcyBlYXNlLW91dCwgb3BhY2l0eSAwcyBsaW5lYXI7IH1cblxuLmhhbWJ1cmdlci0tbWludXMuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSwgLmhhbWJ1cmdlci0tbWludXMuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbjogYm90dG9tIDAuMDhzIGVhc2Utb3V0LCB0b3AgMC4wOHMgZWFzZS1vdXQsIG9wYWNpdHkgMHMgMC4wOHMgbGluZWFyOyB9XG5cbi5oYW1idXJnZXItLW1pbnVzLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICB0b3A6IDA7IH1cblxuLmhhbWJ1cmdlci0tbWludXMuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgYm90dG9tOiAwOyB9XG5cbi8qXG4gICAqIFNsaWRlclxuICAgKi9cbi5oYW1idXJnZXItLXNsaWRlciAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdG9wOiAwLjFyZW07IH1cbiAgLmhhbWJ1cmdlci0tc2xpZGVyIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gICAgdG9wOiAwLjdyZW07XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlO1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMTVzOyB9XG4gIC5oYW1idXJnZXItLXNsaWRlciAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgdG9wOiAxLjRyZW07IH1cblxuLmhhbWJ1cmdlci0tc2xpZGVyLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLjdyZW0sIDApIHJvdGF0ZSg0NWRlZyk7IH1cbiAgLmhhbWJ1cmdlci0tc2xpZGVyLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZykgdHJhbnNsYXRlM2QoLTAuNDI4NTdyZW0sIC0wLjVyZW0sIDApO1xuICAgIG9wYWNpdHk6IDA7IH1cbiAgLmhhbWJ1cmdlci0tc2xpZGVyLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMS40cmVtLCAwKSByb3RhdGUoLTkwZGVnKTsgfVxuXG4vKlxuICAgKiBTbGlkZXIgUmV2ZXJzZVxuICAgKi9cbi5oYW1idXJnZXItLXNsaWRlci1yIC5oYW1idXJnZXItaW5uZXIge1xuICB0b3A6IDAuMXJlbTsgfVxuICAuaGFtYnVyZ2VyLS1zbGlkZXItciAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICAgIHRvcDogMC43cmVtO1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZTtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjE1czsgfVxuICAuaGFtYnVyZ2VyLS1zbGlkZXItciAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgdG9wOiAxLjRyZW07IH1cblxuLmhhbWJ1cmdlci0tc2xpZGVyLXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAuN3JlbSwgMCkgcm90YXRlKC00NWRlZyk7IH1cbiAgLmhhbWJ1cmdlci0tc2xpZGVyLXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpIHRyYW5zbGF0ZTNkKDAuNDI4NTdyZW0sIC0wLjVyZW0sIDApO1xuICAgIG9wYWNpdHk6IDA7IH1cbiAgLmhhbWJ1cmdlci0tc2xpZGVyLXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xLjRyZW0sIDApIHJvdGF0ZSg5MGRlZyk7IH1cblxuLypcbiAgICogU3BpblxuICAgKi9cbi5oYW1idXJnZXItLXNwaW4gLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMjJzO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7IH1cbiAgLmhhbWJ1cmdlci0tc3BpbiAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICAgIHRyYW5zaXRpb246IHRvcCAwLjFzIDAuMjVzIGVhc2UtaW4sIG9wYWNpdHkgMC4xcyBlYXNlLWluOyB9XG4gIC5oYW1idXJnZXItLXNwaW4gLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgIHRyYW5zaXRpb246IGJvdHRvbSAwLjFzIDAuMjVzIGVhc2UtaW4sIHRyYW5zZm9ybSAwLjIycyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTsgfVxuXG4uaGFtYnVyZ2VyLS1zcGluLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMjI1ZGVnKTtcbiAgdHJhbnNpdGlvbi1kZWxheTogMC4xMnM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTsgfVxuICAuaGFtYnVyZ2VyLS1zcGluLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICAgIHRvcDogMDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zaXRpb246IHRvcCAwLjFzIGVhc2Utb3V0LCBvcGFjaXR5IDAuMXMgMC4xMnMgZWFzZS1vdXQ7IH1cbiAgLmhhbWJ1cmdlci0tc3Bpbi5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgIGJvdHRvbTogMDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgIHRyYW5zaXRpb246IGJvdHRvbSAwLjFzIGVhc2Utb3V0LCB0cmFuc2Zvcm0gMC4yMnMgMC4xMnMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7IH1cblxuLypcbiAgICogU3BpbiBSZXZlcnNlXG4gICAqL1xuLmhhbWJ1cmdlci0tc3Bpbi1yIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjIycztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpOyB9XG4gIC5oYW1idXJnZXItLXNwaW4tciAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICAgIHRyYW5zaXRpb246IHRvcCAwLjFzIDAuMjVzIGVhc2UtaW4sIG9wYWNpdHkgMC4xcyBlYXNlLWluOyB9XG4gIC5oYW1idXJnZXItLXNwaW4tciAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgdHJhbnNpdGlvbjogYm90dG9tIDAuMXMgMC4yNXMgZWFzZS1pbiwgdHJhbnNmb3JtIDAuMjJzIGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpOyB9XG5cbi5oYW1idXJnZXItLXNwaW4tci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRyYW5zZm9ybTogcm90YXRlKC0yMjVkZWcpO1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwLjEycztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpOyB9XG4gIC5oYW1idXJnZXItLXNwaW4tci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgICB0b3A6IDA7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uOiB0b3AgMC4xcyBlYXNlLW91dCwgb3BhY2l0eSAwLjFzIDAuMTJzIGVhc2Utb3V0OyB9XG4gIC5oYW1idXJnZXItLXNwaW4tci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgIGJvdHRvbTogMDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gICAgdHJhbnNpdGlvbjogYm90dG9tIDAuMXMgZWFzZS1vdXQsIHRyYW5zZm9ybSAwLjIycyAwLjEycyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTsgfVxuXG4vKlxuICAgKiBTcHJpbmdcbiAgICovXG4uaGFtYnVyZ2VyLS1zcHJpbmcgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRvcDogMC4xcmVtO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDBzIDAuMTNzIGxpbmVhcjsgfVxuICAuaGFtYnVyZ2VyLS1zcHJpbmcgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgICB0b3A6IDAuN3JlbTtcbiAgICB0cmFuc2l0aW9uOiB0b3AgMC4xcyAwLjJzIGN1YmljLWJlemllcigwLjMzMzMzLCAwLjY2NjY3LCAwLjY2NjY3LCAxKSwgdHJhbnNmb3JtIDAuMTNzIGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpOyB9XG4gIC5oYW1idXJnZXItLXNwcmluZyAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgdG9wOiAxLjRyZW07XG4gICAgdHJhbnNpdGlvbjogdG9wIDAuMnMgMC4ycyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMC42NjY2NywgMC42NjY2NywgMSksIHRyYW5zZm9ybSAwLjEzcyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTsgfVxuXG4uaGFtYnVyZ2VyLS1zcHJpbmcuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwLjIycztcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDsgfVxuICAuaGFtYnVyZ2VyLS1zcHJpbmcuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gICAgdG9wOiAwO1xuICAgIHRyYW5zaXRpb246IHRvcCAwLjFzIDAuMTVzIGN1YmljLWJlemllcigwLjMzMzMzLCAwLCAwLjY2NjY3LCAwLjMzMzMzKSwgdHJhbnNmb3JtIDAuMTNzIDAuMjJzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMC43cmVtLCAwKSByb3RhdGUoNDVkZWcpOyB9XG4gIC5oYW1idXJnZXItLXNwcmluZy5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgIHRvcDogMDtcbiAgICB0cmFuc2l0aW9uOiB0b3AgMC4ycyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMCwgMC42NjY2NywgMC4zMzMzMyksIHRyYW5zZm9ybSAwLjEzcyAwLjIycyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAuN3JlbSwgMCkgcm90YXRlKC00NWRlZyk7IH1cblxuLypcbiAgICogU3ByaW5nIFJldmVyc2VcbiAgICovXG4uaGFtYnVyZ2VyLS1zcHJpbmctciAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdG9wOiBhdXRvO1xuICBib3R0b206IDA7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMTNzO1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpOyB9XG4gIC5oYW1idXJnZXItLXNwcmluZy1yIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICB0b3A6IC0xLjRyZW07XG4gICAgdHJhbnNpdGlvbjogdG9wIDAuMnMgMC4ycyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMC42NjY2NywgMC42NjY2NywgMSksIG9wYWNpdHkgMHMgbGluZWFyOyB9XG4gIC5oYW1idXJnZXItLXNwcmluZy1yIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gICAgdHJhbnNpdGlvbjogdG9wIDAuMXMgMC4ycyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMC42NjY2NywgMC42NjY2NywgMSksIHRyYW5zZm9ybSAwLjEzcyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTsgfVxuXG4uaGFtYnVyZ2VyLS1zcHJpbmctci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTAuN3JlbSwgMCkgcm90YXRlKC00NWRlZyk7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDAuMjJzO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7IH1cbiAgLmhhbWJ1cmdlci0tc3ByaW5nLXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICB0b3A6IDA7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uOiB0b3AgMC4ycyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMCwgMC42NjY2NywgMC4zMzMzMyksIG9wYWNpdHkgMHMgMC4yMnMgbGluZWFyOyB9XG4gIC5oYW1idXJnZXItLXNwcmluZy1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICAgIHRvcDogMDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gICAgdHJhbnNpdGlvbjogdG9wIDAuMXMgMC4xNXMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAsIDAuNjY2NjcsIDAuMzMzMzMpLCB0cmFuc2Zvcm0gMC4xM3MgMC4yMnMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7IH1cblxuLypcbiAgICogU3RhbmRcbiAgICovXG4uaGFtYnVyZ2VyLS1zdGFuZCAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMDc1cyAwLjE1cyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KSwgYmFja2dyb3VuZC1jb2xvciAwcyAwLjA3NXMgbGluZWFyOyB9XG4gIC5oYW1idXJnZXItLXN0YW5kIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gICAgdHJhbnNpdGlvbjogdG9wIDAuMDc1cyAwLjA3NXMgZWFzZS1pbiwgdHJhbnNmb3JtIDAuMDc1cyAwcyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTsgfVxuICAuaGFtYnVyZ2VyLS1zdGFuZCAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgdHJhbnNpdGlvbjogYm90dG9tIDAuMDc1cyAwLjA3NXMgZWFzZS1pbiwgdHJhbnNmb3JtIDAuMDc1cyAwcyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTsgfVxuXG4uaGFtYnVyZ2VyLS1zdGFuZC5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMDc1cyAwcyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKSwgYmFja2dyb3VuZC1jb2xvciAwcyAwLjE1cyBsaW5lYXI7IH1cbiAgLmhhbWJ1cmdlci0tc3RhbmQuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gICAgdG9wOiAwO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gICAgdHJhbnNpdGlvbjogdG9wIDAuMDc1cyAwLjFzIGVhc2Utb3V0LCB0cmFuc2Zvcm0gMC4wNzVzIDAuMTVzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpOyB9XG4gIC5oYW1idXJnZXItLXN0YW5kLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgYm90dG9tOiAwO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICB0cmFuc2l0aW9uOiBib3R0b20gMC4wNzVzIDAuMXMgZWFzZS1vdXQsIHRyYW5zZm9ybSAwLjA3NXMgMC4xNXMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7IH1cblxuLypcbiAgICogU3RhbmQgUmV2ZXJzZVxuICAgKi9cbi5oYW1idXJnZXItLXN0YW5kLXIgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjA3NXMgMC4xNXMgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSksIGJhY2tncm91bmQtY29sb3IgMHMgMC4wNzVzIGxpbmVhcjsgfVxuICAuaGFtYnVyZ2VyLS1zdGFuZC1yIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gICAgdHJhbnNpdGlvbjogdG9wIDAuMDc1cyAwLjA3NXMgZWFzZS1pbiwgdHJhbnNmb3JtIDAuMDc1cyAwcyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTsgfVxuICAuaGFtYnVyZ2VyLS1zdGFuZC1yIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICB0cmFuc2l0aW9uOiBib3R0b20gMC4wNzVzIDAuMDc1cyBlYXNlLWluLCB0cmFuc2Zvcm0gMC4wNzVzIDBzIGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpOyB9XG5cbi5oYW1idXJnZXItLXN0YW5kLXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4wNzVzIDBzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpLCBiYWNrZ3JvdW5kLWNvbG9yIDBzIDAuMTVzIGxpbmVhcjsgfVxuICAuaGFtYnVyZ2VyLS1zdGFuZC1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICAgIHRvcDogMDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICAgIHRyYW5zaXRpb246IHRvcCAwLjA3NXMgMC4xcyBlYXNlLW91dCwgdHJhbnNmb3JtIDAuMDc1cyAwLjE1cyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTsgfVxuICAuaGFtYnVyZ2VyLS1zdGFuZC1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgYm90dG9tOiAwO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICB0cmFuc2l0aW9uOiBib3R0b20gMC4wNzVzIDAuMXMgZWFzZS1vdXQsIHRyYW5zZm9ybSAwLjA3NXMgMC4xNXMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7IH1cblxuLypcbiAgICogU3F1ZWV6ZVxuICAgKi9cbi5oYW1idXJnZXItLXNxdWVlemUgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMDc1cztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpOyB9XG4gIC5oYW1idXJnZXItLXNxdWVlemUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgICB0cmFuc2l0aW9uOiB0b3AgMC4wNzVzIDAuMTJzIGVhc2UsIG9wYWNpdHkgMC4wNzVzIGVhc2U7IH1cbiAgLmhhbWJ1cmdlci0tc3F1ZWV6ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgdHJhbnNpdGlvbjogYm90dG9tIDAuMDc1cyAwLjEycyBlYXNlLCB0cmFuc2Zvcm0gMC4wNzVzIGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpOyB9XG5cbi5oYW1idXJnZXItLXNxdWVlemUuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDAuMTJzO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7IH1cbiAgLmhhbWJ1cmdlci0tc3F1ZWV6ZS5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgICB0b3A6IDA7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uOiB0b3AgMC4wNzVzIGVhc2UsIG9wYWNpdHkgMC4wNzVzIDAuMTJzIGVhc2U7IH1cbiAgLmhhbWJ1cmdlci0tc3F1ZWV6ZS5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgIGJvdHRvbTogMDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgIHRyYW5zaXRpb246IGJvdHRvbSAwLjA3NXMgZWFzZSwgdHJhbnNmb3JtIDAuMDc1cyAwLjEycyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTsgfVxuXG4vKlxuICAgKiBWb3J0ZXhcbiAgICovXG4uaGFtYnVyZ2VyLS12b3J0ZXggLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMnM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xOSwgMSwgMC4yMiwgMSk7IH1cbiAgLmhhbWJ1cmdlci0tdm9ydGV4IC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSwgLmhhbWJ1cmdlci0tdm9ydGV4IC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjFzO1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7IH1cbiAgLmhhbWJ1cmdlci0tdm9ydGV4IC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdG9wLCBvcGFjaXR5OyB9XG4gIC5oYW1idXJnZXItLXZvcnRleCAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogYm90dG9tLCB0cmFuc2Zvcm07IH1cblxuLmhhbWJ1cmdlci0tdm9ydGV4LmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoNzY1ZGVnKTtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKTsgfVxuICAuaGFtYnVyZ2VyLS12b3J0ZXguaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSwgLmhhbWJ1cmdlci0tdm9ydGV4LmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMHM7IH1cbiAgLmhhbWJ1cmdlci0tdm9ydGV4LmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICAgIHRvcDogMDtcbiAgICBvcGFjaXR5OiAwOyB9XG4gIC5oYW1idXJnZXItLXZvcnRleC5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgIGJvdHRvbTogMDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7IH1cblxuLypcbiAgICogVm9ydGV4IFJldmVyc2VcbiAgICovXG4uaGFtYnVyZ2VyLS12b3J0ZXgtciAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4ycztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKTsgfVxuICAuaGFtYnVyZ2VyLS12b3J0ZXgtciAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUsIC5oYW1idXJnZXItLXZvcnRleC1yIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjFzO1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7IH1cbiAgLmhhbWJ1cmdlci0tdm9ydGV4LXIgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0b3AsIG9wYWNpdHk7IH1cbiAgLmhhbWJ1cmdlci0tdm9ydGV4LXIgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IGJvdHRvbSwgdHJhbnNmb3JtOyB9XG5cbi5oYW1idXJnZXItLXZvcnRleC1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTc2NWRlZyk7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xOSwgMSwgMC4yMiwgMSk7IH1cbiAgLmhhbWJ1cmdlci0tdm9ydGV4LXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSwgLmhhbWJ1cmdlci0tdm9ydGV4LXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwczsgfVxuICAuaGFtYnVyZ2VyLS12b3J0ZXgtci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgICB0b3A6IDA7XG4gICAgb3BhY2l0eTogMDsgfVxuICAuaGFtYnVyZ2VyLS12b3J0ZXgtci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgIGJvdHRvbTogMDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpOyB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTYwcHgpIHtcbiAgLyogc3R5bGVsaW50LWRpc2FibGUgYTExeS9uby1kaXNwbGF5LW5vbmUgKi9cbiAgLmpzIC5tZW51LWl0ZW1zIHVsIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC8qIHN0eWxlbGludC1lbmFibGUgKi8gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk2MHB4KSB7XG4gIC5qcyB1bCAuc3ViLW1lbnUudG9nZ2xlZC1vbiB7XG4gICAgZGlzcGxheTogYmxvY2s7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTYwcHgpIHtcbiAgLm5hdi1jb250YWluZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJhY2tncm91bmQtbmF2LW1vYmlsZS1oZWFkZXIpO1xuICAgIGxlZnQ6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAuc2l0ZSB7XG4gICAgcGFkZGluZy10b3A6IHZhcigtLWhlaWdodC1uYXZpZ2F0aW9uLW1vYmlsZSk7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTlweCkge1xuICAuc2l0ZS1oZWFkZXIgdWwsXG4gIC5zaXRlLWhlYWRlciBsaSxcbiAgLnNpdGUtaGVhZGVyIGEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAubWFpbi1uYXZpZ2F0aW9uLXdyYXBwZXIge1xuICAgIG9yZGVyOiA2O1xuICAgIHotaW5kZXg6IDk5OTsgfVxuICAubm8tanMgLnNpdGUtaGVhZGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1iYWNrZ3JvdW5kLW5hdi1tb2JpbGUtaGVhZGVyKTtcbiAgICBwb3NpdGlvbjogc3RhdGljOyB9XG4gIC5kaXNhYmxlLXNjcm9sbCB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAubmF2LXByaW1hcnkge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJhY2tncm91bmQtbmF2LW1vYmlsZS1sYXllcik7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gdmFyKC0taGVpZ2h0LW5hdmlnYXRpb24tbW9iaWxlKSk7XG4gICAgbWFyZ2luOiAwO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMThzIGVhc2UtaW4tb3V0O1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB3aWR0aDogMTAwdnc7IH1cbiAgLm1lbnUtaXRlbXMge1xuICAgIG1hcmdpbjogMDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHBhZGRpbmc6IDJyZW0gMDtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAubWVudS1pdGVtIGEge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1zZXBhcmF0b3ItbmF2LW1vYmlsZSk7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLW1haW4tbGV2ZWwtbW9iaWxlKTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1tYWluLWxldmVsLW1vYmlsZSk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW1haW4tbGV2ZWwtbW9iaWxlKTtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IHZhcigtLXBhZGRpbmctc3ViLW1lbnUtdmVydGljYWwtbW9iaWxlKTtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXBhZGRpbmctc3ViLW1lbnUtaG9yaXpvbnRhbC1tb2JpbGUpO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXBhZGRpbmctc3ViLW1lbnUtaG9yaXpvbnRhbC1tb2JpbGUpO1xuICAgIHBhZGRpbmctdG9wOiB2YXIoLS1wYWRkaW5nLXN1Yi1tZW51LXZlcnRpY2FsLW1vYmlsZSk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB6LWluZGV4OiAwOyB9XG4gIC5zdWItbWVudSBhIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3Itc3ViLW1lbnUtbW9iaWxlKTtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zdWItbWVudS1tb2JpbGUpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1zdWItbWVudS1tb2JpbGUpO1xuICAgIHBhZGRpbmctbGVmdDogY2FsYyh2YXIoLS1wYWRkaW5nLXN1Yi1tZW51LWhvcml6b250YWwtbW9iaWxlKSArIHZhcigtLW1hcmdpbi1sZWZ0LXN1Yi1tZW51KSk7IH1cbiAgLnN1Yi1tZW51IHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cbiAgLnN1Yi1tZW51IC5zdWItbWVudSBhIHtcbiAgICBwYWRkaW5nLWxlZnQ6IGNhbGModmFyKC0tcGFkZGluZy1zdWItbWVudS1ob3Jpem9udGFsLW1vYmlsZSkgKyB2YXIoLS1tYXJnaW4tbGVmdC1zdWItbWVudSkgKyB2YXIoLS1tYXJnaW4tbGVmdC1zdWItbWVudSkpOyB9XG4gIC5tZW51LWl0ZW0gYTpob3ZlcixcbiAgLm1lbnUtaXRlbSBhOmZvY3VzIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItYWN0aXZlLW1haW4tbGV2ZWwtbW9iaWxlKTsgfVxuICAubWVudS1pdGVtLmN1cnJlbnQtbWVudS1wYXJlbnQgPiBhLFxuICAubWVudS1pdGVtLmN1cnJlbnQtbWVudS1pdGVtID4gYSB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWN1cnJlbnQtbW9iaWxlKTsgfVxuICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogMDtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItZHJvcGRvd24tdG9nZ2xlLW1vYmlsZSk7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXgtaGVpZ2h0OiA1MnB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcGFkZGluZy1ib3R0b206IHZhcigtLXBhZGRpbmctc3ViLW1lbnUtdmVydGljYWwtbW9iaWxlKTtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXBhZGRpbmctc3ViLW1lbnUtaG9yaXpvbnRhbC1tb2JpbGUpO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXBhZGRpbmctc3ViLW1lbnUtaG9yaXpvbnRhbC1tb2JpbGUpO1xuICAgIHBhZGRpbmctdG9wOiB2YXIoLS1wYWRkaW5nLXN1Yi1tZW51LXZlcnRpY2FsLW1vYmlsZSk7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogMnB4O1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjE4cztcbiAgICB6LWluZGV4OiA5OTk5OyB9XG4gIC5kcm9wZG93bi10b2dnbGU6Zm9jdXMge1xuICAgIHotaW5kZXg6IDEwMDAwOyB9XG4gIC5zdWItbWVudSAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3Itc3ViLW1lbnUtbW9iaWxlKTsgfVxuICAuZHJvcGRvd24tdG9nZ2xlIHN2ZyB7XG4gICAgaGVpZ2h0OiB2YXIoLS1kcm9wZG93bi10b2dnbGUtc2l6ZS1tb2JpbGUpO1xuICAgIHdpZHRoOiB2YXIoLS1kcm9wZG93bi10b2dnbGUtc2l6ZS1tb2JpbGUpO1xuICAgIC8qIHN0eWxlbGludC1kaXNhYmxlIGExMXkvbm8tZGlzcGxheS1ub25lICovXG4gICAgLyogc3R5bGVsaW50LWVuYWJsZSAqLyB9XG4gIC5kcm9wZG93bi10b2dnbGUudG9nZ2xlZC1vbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC0xODBkZWcpOyB9XG4gIC5qcyAubmF2LXByaW1hcnkge1xuICAgIGxlZnQ6IDA7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogdmFyKC0taGVpZ2h0LW5hdmlnYXRpb24tbW9iaWxlKTtcbiAgICB6LWluZGV4OiA1OyB9XG4gICAgLmpzIC5uYXYtcHJpbWFyeSAubWVudS1pdGVtcyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1iYWNrZ3JvdW5kLW5hdi1tb2JpbGUtbGF5ZXIpO1xuICAgICAgcGFkZGluZzogMDsgfVxuICAuanMuanMtbmF2LWFjdGl2ZSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAgIC5qcy5qcy1uYXYtYWN0aXZlIC5uYXYtcHJpbWFyeSB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgcG9pbnRlci1ldmVudHM6IGFsbDtcbiAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cbiAgICAuanMuanMtbmF2LWFjdGl2ZSAubWVudS1pdGVtcyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1iYWNrZ3JvdW5kLW5hdi1tb2JpbGUtbGF5ZXItYWN0aXZlKTtcbiAgICAgIG9wYWNpdHk6IDE7IH1cbiAgICAuanMuanMtbmF2LWFjdGl2ZSAubmF2LWNvbnRhaW5lciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1iYWNrZ3JvdW5kLW5hdi1tb2JpbGUtaGVhZGVyLWFjdGl2ZSk7IH0gfVxuXG4uaGFtYnVyZ2VyLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyLFxuLmhhbWJ1cmdlci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlLFxuLmhhbWJ1cmdlci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1oYW1idXJnZXItYWN0aXZlKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWhhbWJ1cmdlci1hY3RpdmUpOyB9XG5cbi5uYXYtdG9nZ2xlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWhhbWJ1cmdlcik7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xuICBtYXJnaW46IDA7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBwYWRkaW5nOiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdG9wOiAwO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgei1pbmRleDogMTAwMDAwO1xuICAvKiBzdHlsZWxpbnQtZGlzYWJsZSBhMTF5L25vLWRpc3BsYXktbm9uZSAqL1xuICAvKiBzdHlsZWxpbnQtZW5hYmxlICovIH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDk2MHB4KSB7XG4gICAgLm5hdi10b2dnbGUge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gIC5uYXYtdG9nZ2xlOm5vdCgudG9nZ2xlZC1vbikgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgdHJhbnNpdGlvbjogd2lkdGggMC4xOHM7XG4gICAgd2lkdGg6IDE4cHg7IH1cbiAgLm5hdi10b2dnbGUuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIsXG4gIC5uYXYtdG9nZ2xlOmhvdmVyIC5oYW1idXJnZXItaW5uZXIsXG4gIC5uYXYtdG9nZ2xlOmZvY3VzIC5oYW1idXJnZXItaW5uZXIge1xuICAgIHdpZHRoOiAzcmVtOyB9XG4gIC5uYXYtdG9nZ2xlIHNwYW4ge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1oYW1idXJnZXIpO1xuICAgIGZvbnQtc2l6ZTogMS4yZW07IH1cbiAgLm5hdi10b2dnbGUuaXMtYWN0aXZlIHNwYW4ge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1oYW1idXJnZXItYWN0aXZlKTsgfVxuICAubmF2LXRvZ2dsZTpob3ZlciwgLm5hdi10b2dnbGU6YWN0aXZlIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItaGFtYnVyZ2VyKTsgfVxuICAgIC5uYXYtdG9nZ2xlOmhvdmVyIHNwYW4sIC5uYXYtdG9nZ2xlOmFjdGl2ZSBzcGFuIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1oYW1idXJnZXIpOyB9XG4gIC5uYXYtdG9nZ2xlOmZvY3VzIHNwYW4gc3BhbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItaGFtYnVyZ2VyKTsgfVxuICAubmF2LXRvZ2dsZTpmb2N1cyBzcGFuIHNwYW46OmJlZm9yZSxcbiAgLm5hdi10b2dnbGU6Zm9jdXMgc3BhbiBzcGFuOjphZnRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItaGFtYnVyZ2VyKTsgfVxuICAubmF2LXRvZ2dsZTpub3QoLmhhcy12aXNpYmxlLWxhYmVsKSAubmF2LXRvZ2dsZS1sYWJlbCB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogOTU5cHgpIHtcbiAgICAubmF2LXRvZ2dsZSB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgICAgLm5hdi10b2dnbGUuaGFzLXZpc2libGUtbGFiZWwge1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBkaXNwbGF5OiBmbGV4OyB9XG4gICAgICAubmF2LXRvZ2dsZS5oYXMtdmlzaWJsZS1sYWJlbCAubmF2LXRvZ2dsZS1sYWJlbCB7XG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLW5hdi10b2dnbGUtbGFiZWwpOyB9IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogOTU5cHgpIGFuZCAobWF4LXdpZHRoOiA0MTBweCkge1xuICAgICAgLm5hdi10b2dnbGUuaGFzLXZpc2libGUtbGFiZWwgLm5hdi10b2dnbGUtbGFiZWwge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDk1OXB4KSBhbmQgKG1pbi13aWR0aDogNDExcHgpIHtcbiAgICAubmF2LXRvZ2dsZS5oYXMtdmlzaWJsZS1sYWJlbCAuaGFtYnVyZ2VyLWJveCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDJyZW07IH0gfVxuICAubmF2LXRvZ2dsZS5pcy1hY3RpdmUge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1oYW1idXJnZXItYWN0aXZlKTsgfVxuICAubmF2LXRvZ2dsZS5pcy1hY3RpdmUgLmhhbWJ1cmdlci1ib3ggLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItaGFtYnVyZ2VyLWFjdGl2ZSk7IH1cbiAgLm5hdi10b2dnbGUuaXMtYWN0aXZlIC5oYW1idXJnZXItYm94IC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1oYW1idXJnZXItYWN0aXZlKTsgfVxuICAubmF2LXRvZ2dsZS5pcy1hY3RpdmUgLmZvY3VzIC5oYW1idXJnZXItaW5uZXIsXG4gIC5uYXYtdG9nZ2xlLmlzLWFjdGl2ZSBzcGFuOmZvY3VzIC5oYW1idXJnZXItaW5uZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWhhbWJ1cmdlci1hY3RpdmUpOyB9XG4gIC5uYXYtdG9nZ2xlLmlzLWFjdGl2ZSAuZm9jdXMgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIsXG4gIC5uYXYtdG9nZ2xlLmlzLWFjdGl2ZSBzcGFuOmZvY3VzIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1oYW1idXJnZXItYWN0aXZlKTsgfVxuICAubmF2LXRvZ2dsZS5pcy1hY3RpdmUgc3Bhbjpmb2N1cyxcbiAgLm5hdi10b2dnbGUuaXMtYWN0aXZlIHNwYW46aG92ZXIsXG4gIC5uYXYtdG9nZ2xlLmlzLWFjdGl2ZSBzcGFuOmFjdGl2ZSB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWhhbWJ1cmdlci1hY3RpdmUpOyB9XG4gICAgLm5hdi10b2dnbGUuaXMtYWN0aXZlIHNwYW46Zm9jdXMgc3BhbixcbiAgICAubmF2LXRvZ2dsZS5pcy1hY3RpdmUgc3Bhbjpob3ZlciBzcGFuLFxuICAgIC5uYXYtdG9nZ2xlLmlzLWFjdGl2ZSBzcGFuOmFjdGl2ZSBzcGFuIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1oYW1idXJnZXItYWN0aXZlKTsgfVxuXG4uYmxvY2sge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIG1heC13aWR0aDogMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi5zaGFkZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJhY2tncm91bmQtc2hhZGUpO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIG9wYWNpdHk6IC4zNTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiAwOyB9XG5cbi5nbG9iYWwtbGluayB7XG4gIGhlaWdodDogMTAwJTtcbiAgbGVmdDogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiAzOyB9XG5cbi5zaXRlIHtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLmNvbnRhaW5lciB7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXgtd2lkdGg6IDE0NDBweDtcbiAgcGFkZGluZy1ib3R0b206IHZhcigtLXBhZGRpbmctY29udGFpbmVyLXZlcnRpY2FsKTtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gIHBhZGRpbmctdG9wOiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci12ZXJ0aWNhbCk7IH1cblxuLnNpdGUtbWFpbiAuY29udGFpbmVyIHtcbiAgY2xlYXI6IGJvdGg7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLmVudHJ5LWZvb3RlciB7XG4gIGNsZWFyOiBib3RoO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIG1hcmdpbi10b3A6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLXZlcnRpY2FsKTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4uZWRpdC1saW5rIHtcbiAgY2xlYXI6IGJvdGg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBtYXJnaW4tdG9wOiAycmVtO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1pbi13aWR0aDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMThzO1xuICB3aWR0aDogMTAwJTsgfVxuICAuZWRpdC1saW5rIGEge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgICBib3JkZXI6IDJweCBkYXNoZWQgdmFyKC0tY29sb3ItbGluay1lZGl0LWJvcmRlcik7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWxpbmstZWRpdC10ZXh0KTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMnJlbTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjE4czsgfVxuICAuZWRpdC1saW5rOmZvY3VzLFxuICAuZWRpdC1saW5rIGE6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWxpbmstZWRpdC1iYWNrZ3JvdW5kLWhvdmVyKTtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItbGluay1lZGl0LXRleHQtaG92ZXIpOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAuaGlkZS1vbi1kZXNrdG9wIHtcbiAgICAvKiBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnQgKi9cbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgLyogc3R5bGVsaW50LWVuYWJsZSAqLyB9IH1cblxuLyogc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50LCBhMTF5L25vLWRpc3BsYXktbm9uZSAqL1xuQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gIC5oaWRlLW9uLW1vYmlsZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuLyogc3R5bGVsaW50LWVuYWJsZSAqL1xuLyogc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50LCBhMTF5L25vLWRpc3BsYXktbm9uZSAqL1xuQG1lZGlhIChtYXgtd2lkdGg6IDk2MHB4KSB7XG4gIC5oaWRlLW9uLW1vYmlsZS1uYXYtdmlldyB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuLyogc3R5bGVsaW50LWVuYWJsZSAqL1xuLyogc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50LCBhMTF5L25vLWRpc3BsYXktbm9uZSAqL1xuQG1lZGlhIChtaW4td2lkdGg6IDk2MHB4KSB7XG4gIC5oaWRlLW9uLWRlc2t0b3AtbmF2LXZpZXcge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbi8qIHN0eWxlbGludC1lbmFibGUgKi9cbi8qIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudCwgYTExeS9uby1kaXNwbGF5LW5vbmUgKi9cbi5oaWRlLWNvbXBsZXRlbHkge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuLyogc3R5bGVsaW50LWVuYWJsZSAqL1xuLyogc3R5bGVsaW50LWRpc2FibGUgYTExeS9uby1kaXNwbGF5LW5vbmUgKi9cbkBtZWRpYSBwcmludCB7XG4gIC5uYXYtY29udGFpbmVyLFxuICAuc2l0ZS1mb290ZXIsXG4gIC5zaWRlLW5hdiB7XG4gICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbi8qIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLXByb3BlcnR5LXVuaXQtYWxsb3dlZC1saXN0LCBuby1kZXNjZW5kaW5nLXNwZWNpZmljaXR5ICovXG46cm9vdCB7XG4gIGZvbnQtc2l6ZTogNjIuNSU7IH1cblxuYm9keSB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1wYXJhZ3JhcGgpO1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1wYXJhZ3JhcGgpO1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1kZWZhdWx0KTtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1wYXJhZ3JhcGhzKTtcbiAgdGV4dC1yZW5kZXJpbmc6IGdlb21ldHJpY1ByZWNpc2lvbjsgfVxuXG5odG1sIHAsXG5odG1sIGRkLFxuaHRtbCBkdCxcbmh0bWwgZmlnY2FwdGlvbixcbmh0bWwgaHIsXG5odG1sIHNtYWxsLFxuaHRtbCBvbCxcbmh0bWwgdWwsXG5odG1sIGxpLFxuaHRtbCBibG9ja3F1b3RlLFxuaHRtbCBrYmQsXG5odG1sIHByZSxcbmh0bWwgc2FtcCxcbmh0bWwgY29kZSxcbmh0bWwgdGgsXG5odG1sIHRkLFxuaHRtbCB0YWJsZSxcbmh0bWwgdHIsXG5odG1sIHRleHRhcmVhLFxuaHRtbCBzZWxlY3QsXG5odG1sIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuaHRtbCBpbnB1dFt0eXBlPVwidGVsXCJdLFxuaHRtbCBpbnB1dFt0eXBlPVwidXJsXCJdLFxuaHRtbCBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0sXG5odG1sIGlucHV0W3R5cGU9XCJudW1iZXJcIl0sXG5odG1sIGlucHV0W3R5cGU9XCJtb250aFwiXSxcbmh0bWwgaW5wdXRbdHlwZT1cIndlZWtcIl0sXG5odG1sIGlucHV0W3R5cGU9XCJlbWFpbFwiXSxcbmh0bWwgaW5wdXRbdHlwZT1cInNlYXJjaFwiXSxcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgcCxcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgZGQsXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIGR0LFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciBmaWdjYXB0aW9uLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciBocixcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgc21hbGwsXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIG9sLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciB1bCxcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgbGksXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIGJsb2NrcXVvdGUsXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIGtiZCxcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgcHJlLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciBzYW1wLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciBjb2RlLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciB0aCxcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgdGQsXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIHRhYmxlLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciB0cixcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgdGV4dGFyZWEsXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIHNlbGVjdCxcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgaW5wdXRbdHlwZT1cInRleHRcIl0sXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIGlucHV0W3R5cGU9XCJ0ZWxcIl0sXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIGlucHV0W3R5cGU9XCJ1cmxcIl0sXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSxcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgaW5wdXRbdHlwZT1cIm51bWJlclwiXSxcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgaW5wdXRbdHlwZT1cIm1vbnRoXCJdLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciBpbnB1dFt0eXBlPVwid2Vla1wiXSxcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciBpbnB1dFt0eXBlPVwic2VhcmNoXCJdIHtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtcGFyYWdyYXBocyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1wYXJhZ3JhcGhzKTsgfVxuXG5odG1sIGgxLFxuaHRtbCBoMixcbmh0bWwgaDMsXG5odG1sIGg0LFxuaHRtbCBoNSxcbmh0bWwgaDYsXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIGgxLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciBoMixcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgaDMsXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIGg0LFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciBoNSxcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgaDYge1xuICBjb2xvcjogdmFyKC0tY29sb3ItaGVhZGluZyk7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWhlYWRpbmcpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtaGVhZGluZ3MpO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1tYXJnaW4tYmV0d2Vlbi1wYXJhZ3JhcGhzKTtcbiAgbWFyZ2luLXRvcDogdmFyKC0tbWFyZ2luLWJldHdlZW4tcGFyYWdyYXBocyk7IH1cblxuaHRtbCBoMixcbmh0bWwgaDMsXG5odG1sIGg0LFxuaHRtbCBoNSxcbmh0bWwgaDYsXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIGgyLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciBoMyxcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgaDQsXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIGg1LFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciBoNiB7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1oZWFkaW5ncyk7IH1cblxuaHRtbCBoMSxcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgaDEge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oMSk7IH1cblxuaHRtbCBoMixcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgaDIge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oMik7IH1cblxuaHRtbCBoMyxcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgaDMge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oMyk7IH1cblxuaHRtbCBoNCxcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgaDQge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oNCk7IH1cblxuaHRtbCBoNSxcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgaDUge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oNSk7IH1cblxuaHRtbCBoNixcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgaDYge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oNik7IH1cblxuaHRtbCBoMTpmaXJzdC1jaGlsZCxcbmh0bWwgaDI6Zmlyc3QtY2hpbGQsXG5odG1sIGgzOmZpcnN0LWNoaWxkLFxuaHRtbCBoNDpmaXJzdC1jaGlsZCxcbmh0bWwgaDU6Zmlyc3QtY2hpbGQsXG5odG1sIGg2OmZpcnN0LWNoaWxkLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciBoMTpmaXJzdC1jaGlsZCxcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgaDI6Zmlyc3QtY2hpbGQsXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIGgzOmZpcnN0LWNoaWxkLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciBoNDpmaXJzdC1jaGlsZCxcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgaDU6Zmlyc3QtY2hpbGQsXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIGg2OmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMDsgfVxuXG5odG1sIHVsLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciB1bCB7XG4gIGxpc3Qtc3R5bGU6IGRpc2Mgb3V0c2lkZTtcbiAgcGFkZGluZy1sZWZ0OiAxLjlyZW07IH1cbiAgaHRtbCB1bCBsaSxcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciB1bCBsaSB7XG4gICAgcGFkZGluZy1sZWZ0OiAwOyB9XG5cbmh0bWwgb2wsXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIG9sIHtcbiAgcGFkZGluZy1sZWZ0OiAxLjlyZW07IH1cblxuaHRtbCBiLFxuaHRtbCBzdHJvbmcsXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIGIsXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIHN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTsgfVxuXG5odG1sIGVtLFxuaHRtbCBpLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciBlbSxcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgaSB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYzsgfVxuXG5odG1sIHNtYWxsLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciBzbWFsbCB7XG4gIGZvbnQtc2l6ZTogLjg3ZW07IH1cblxuaHRtbCBwLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciBwIHtcbiAgbWFyZ2luLWJvdHRvbTogMi45cmVtO1xuICBtYXJnaW4tdG9wOiAyLjlyZW07IH1cblxuaHRtbCBibG9ja3F1b3RlLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciBibG9ja3F1b3RlIHtcbiAgYm9yZGVyOiAwIG5vbmU7XG4gIGNsZWFyOiBib3RoO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmctYm90dG9tOiAzcmVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgaHRtbCBibG9ja3F1b3RlIHAsXG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgYmxvY2txdW90ZSBwIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItYmxvY2txdW90ZSk7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NzBweCkge1xuICAgIGh0bWwgYmxvY2txdW90ZSxcbiAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIGJsb2NrcXVvdGUge1xuICAgICAgbWFyZ2luLXRvcDogNHJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA0cmVtOyB9IH1cbiAgaHRtbCBibG9ja3F1b3RlOjpiZWZvcmUsXG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgYmxvY2txdW90ZTo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDRweDtcbiAgICBsZWZ0OiAwO1xuICAgIG1heC13aWR0aDogMTQ3cHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAgICAgaHRtbCBibG9ja3F1b3RlOjpiZWZvcmUsXG4gICAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIGJsb2NrcXVvdGU6OmJlZm9yZSB7XG4gICAgICAgIHdpZHRoOiAzMCU7IH0gfVxuXG5odG1sIGNpdGUsXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIGNpdGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zdHlsZTogaXRhbGljOyB9XG5cbmh0bWwgcDpsYXN0LWNoaWxkLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciBwOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbmh0bWwgaW1nLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciBpbWcge1xuICBoZWlnaHQ6IGF1dG87XG4gIG1heC13aWR0aDogMTAwJTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuXG5odG1sIGZpZ3VyZSxcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgZmlndXJlIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLXRvcDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbmh0bWwgZmlnY2FwdGlvbixcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgZmlnY2FwdGlvbiB7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXBhcmFncmFwaHMpO1xuICBtYXJnaW4tdG9wOiAwOyB9XG5cbmh0bWwga2JkLFxuaHRtbCBwcmUsXG5odG1sIHNhbXAsXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIGtiZCxcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgcHJlLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciBzYW1wIHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtbW9ub3NwYWNlKTsgfVxuXG5odG1sIGNvZGUsXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIGNvZGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1iYWNrZ3JvdW5kLWNvZGUtaW5saW5lKTtcbiAgYm9yZGVyLXJhZGl1czogLjNyZW07XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1jb2RlLWJsb2NrKTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtbW9ub3NwYWNlKTtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xuICBwYWRkaW5nOiAuMzdyZW0gLjVyZW07IH1cbiAgcHJlIGh0bWwgY29kZSwgcHJlXG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgY29kZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmc6IDEuMTVyZW0gMXJlbSAuODVyZW07IH1cblxuaHRtbCBwcmUsXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIHByZSB7XG4gIGJvcmRlci1yYWRpdXM6IC4zcmVtO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgd2hpdGUtc3BhY2U6IHByZS13cmFwO1xuICB3b3JkLWJyZWFrOiBicmVhay1hbGw7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDsgfVxuXG4uc2l0ZS1oZWFkZXIge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1heC13aWR0aDogMTQ0MHB4O1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tcGFkZGluZy1zaXRlLWhlYWRlci12ZXJ0aWNhbCk7XG4gIHBhZGRpbmctbGVmdDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICBwYWRkaW5nLXRvcDogdmFyKC0tcGFkZGluZy1zaXRlLWhlYWRlci12ZXJ0aWNhbCk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTU7IH1cblxuLnNpdGUtdGl0bGUge1xuICBsaW5lLWhlaWdodDogMDtcbiAgbWFyZ2luOiAwOyB9XG4gIC5zaXRlLXRpdGxlIGEge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZGlzcGxheTogZmxleDsgfVxuXG4ubmF2LWNvbnRhaW5lciB7XG4gIHotaW5kZXg6IDEwOyB9XG5cbi5zaXRlLWZvb3RlciB7XG4gIGNsZWFyOiBib3RoO1xuICBjb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nOiA2cmVtIDJyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgLyogc3R5bGVsaW50LWRpc2FibGUgYTExeS9uby1kaXNwbGF5LW5vbmUgKi9cbiAgLyogc3R5bGVsaW50LWVuYWJsZSAqLyB9XG4gIC5zaXRlLWZvb3RlciBwLFxuICAuc2l0ZS1mb290ZXIgc3BhbiB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTsgfVxuICAuc2l0ZS1mb290ZXIgLndvcmRwcmVzcy1sb2dvIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAuc2l0ZS1mb290ZXIgc3BhbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5zaXRlLWZvb3RlciBzdmcge1xuICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuc2l0ZS1mb290ZXIgLmlzLWV4dGVybmFsLWxpbms6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5zaXRlLWZvb3RlciAucG93ZXJlZC1ieS13b3JkcHJlc3Mge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtc2VtaWJvbGQpO1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5zaXRlLWZvb3RlciAuZ2l0aHViLWxpbmsge1xuICAgIG1hcmdpbi1sZWZ0OiA4cHg7XG4gICAgbWFyZ2luLXRvcDogNHB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcGFkZGluZy1ib3R0b206IDRweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAuc2l0ZS1mb290ZXIgLmdpdGh1Yi1saW5rLmlzLWV4dGVybmFsLWxpbms6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBoZWlnaHQ6IDFweDtcbiAgICAgIG9wYWNpdHk6IC40O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiBhdXRvO1xuICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE4cztcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5zaXRlLWZvb3RlciBhIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xOHM7IH1cbiAgICAuc2l0ZS1mb290ZXIgYTpob3ZlciwgLnNpdGUtZm9vdGVyIGE6Zm9jdXMge1xuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgICAgIG9wYWNpdHk6IC41OyB9XG4gICAgICAuc2l0ZS1mb290ZXIgYTpob3Zlcjo6YWZ0ZXIsIC5zaXRlLWZvb3RlciBhOmZvY3VzOjphZnRlciB7XG4gICAgICAgIG9wYWNpdHk6IC4yOyB9XG4gIC5zaXRlLWZvb3RlciAudGhlbWUtaW5mbyB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBsaW5lLWhlaWdodDogMS41O1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgIC5zaXRlLWZvb3RlciAudGhlbWUtaW5mbyBpIHtcbiAgICAgIG1hcmdpbjogMCA1cHg7IH1cblxuLmJ1dHRvbi13cmFwcGVyIHtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4uc2l0ZS1tYWluIGJ1dHRvbixcbi5zaXRlLW1haW4gLmJ1dHRvbixcbi5zaXRlLW1haW4gaW5wdXRbdHlwZT1cInJlc2V0XCJdLFxuLnNpdGUtbWFpbiBpbnB1dFt0eXBlPVwic3VibWl0XCJdLFxuLnNpdGUtbWFpbiBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdLFxuLnNpdGUtZm9vdGVyIGJ1dHRvbixcbi5zaXRlLWZvb3RlciAuYnV0dG9uLFxuLnNpdGUtZm9vdGVyIGlucHV0W3R5cGU9XCJyZXNldFwiXSxcbi5zaXRlLWZvb3RlciBpbnB1dFt0eXBlPVwic3VibWl0XCJdLFxuLnNpdGUtZm9vdGVyIGlucHV0W3R5cGU9XCJidXR0b25cIl0ge1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1idXR0b24tYmFja2dyb3VuZCk7XG4gIGJvcmRlcjogdmFyKC0tYm9yZGVyLXdpZHRoLWlucHV0LWZpZWxkKSBzb2xpZCB2YXIoLS1jb2xvci1idXR0b24tYmFja2dyb3VuZCk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtaW5wdXQtZmllbGQpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnV0dG9uKTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXBhcmFncmFwaCk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTE2KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXNlbWlib2xkKTtcbiAgbGluZS1oZWlnaHQ6IDE5LjYzNjRweDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbWF4LXdpZHRoOiAyMzBweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZy1ib3R0b206IGNhbGMoMTRweCAtIGNhbGModmFyKC0tYm9yZGVyLXdpZHRoLWlucHV0LWZpZWxkKSAqIDIpKTtcbiAgcGFkZGluZy1sZWZ0OiBjYWxjKDIxcHggLSBjYWxjKHZhcigtLWJvcmRlci13aWR0aC1pbnB1dC1maWVsZCkgKiAyKSk7XG4gIHBhZGRpbmctcmlnaHQ6IGNhbGMoMjFweCAtIGNhbGModmFyKC0tYm9yZGVyLXdpZHRoLWlucHV0LWZpZWxkKSAqIDIpKTtcbiAgcGFkZGluZy10b3A6IGNhbGMoMTRweCAtIGNhbGModmFyKC0tYm9yZGVyLXdpZHRoLWlucHV0LWZpZWxkKSAqIDIpKTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4wOHMgY3ViaWMtYmV6aWVyKDAuMjUsIDAuNDYsIDAuNDUsIDAuOTQpO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB3aWR0aDogYXV0bztcbiAgLyogc3R5bGVsaW50LWRpc2FibGUgYTExeS9uby1kaXNwbGF5LW5vbmUgKi9cbiAgLyogc3R5bGVsaW50LWVuYWJsZSAqLyB9XG4gIC5zaXRlLW1haW4gYnV0dG9uLmlzLWV4dGVybmFsLWxpbms6OmFmdGVyLFxuICAuc2l0ZS1tYWluIC5idXR0b24uaXMtZXh0ZXJuYWwtbGluazo6YWZ0ZXIsXG4gIC5zaXRlLW1haW4gaW5wdXRbdHlwZT1cInJlc2V0XCJdLmlzLWV4dGVybmFsLWxpbms6OmFmdGVyLFxuICAuc2l0ZS1tYWluIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0uaXMtZXh0ZXJuYWwtbGluazo6YWZ0ZXIsXG4gIC5zaXRlLW1haW4gaW5wdXRbdHlwZT1cImJ1dHRvblwiXS5pcy1leHRlcm5hbC1saW5rOjphZnRlcixcbiAgLnNpdGUtZm9vdGVyIGJ1dHRvbi5pcy1leHRlcm5hbC1saW5rOjphZnRlcixcbiAgLnNpdGUtZm9vdGVyIC5idXR0b24uaXMtZXh0ZXJuYWwtbGluazo6YWZ0ZXIsXG4gIC5zaXRlLWZvb3RlciBpbnB1dFt0eXBlPVwicmVzZXRcIl0uaXMtZXh0ZXJuYWwtbGluazo6YWZ0ZXIsXG4gIC5zaXRlLWZvb3RlciBpbnB1dFt0eXBlPVwic3VibWl0XCJdLmlzLWV4dGVybmFsLWxpbms6OmFmdGVyLFxuICAuc2l0ZS1mb290ZXIgaW5wdXRbdHlwZT1cImJ1dHRvblwiXS5pcy1leHRlcm5hbC1saW5rOjphZnRlciB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAuc2l0ZS1tYWluIGJ1dHRvbi5mb2N1cywgLnNpdGUtbWFpbiBidXR0b246aG92ZXIsIC5zaXRlLW1haW4gYnV0dG9uOmZvY3VzLFxuICAuc2l0ZS1tYWluIC5idXR0b24uZm9jdXMsXG4gIC5zaXRlLW1haW4gLmJ1dHRvbjpob3ZlcixcbiAgLnNpdGUtbWFpbiAuYnV0dG9uOmZvY3VzLFxuICAuc2l0ZS1tYWluIGlucHV0W3R5cGU9XCJyZXNldFwiXS5mb2N1cyxcbiAgLnNpdGUtbWFpbiBpbnB1dFt0eXBlPVwicmVzZXRcIl06aG92ZXIsXG4gIC5zaXRlLW1haW4gaW5wdXRbdHlwZT1cInJlc2V0XCJdOmZvY3VzLFxuICAuc2l0ZS1tYWluIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0uZm9jdXMsXG4gIC5zaXRlLW1haW4gaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpob3ZlcixcbiAgLnNpdGUtbWFpbiBpbnB1dFt0eXBlPVwic3VibWl0XCJdOmZvY3VzLFxuICAuc2l0ZS1tYWluIGlucHV0W3R5cGU9XCJidXR0b25cIl0uZm9jdXMsXG4gIC5zaXRlLW1haW4gaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpob3ZlcixcbiAgLnNpdGUtbWFpbiBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOmZvY3VzLFxuICAuc2l0ZS1mb290ZXIgYnV0dG9uLmZvY3VzLFxuICAuc2l0ZS1mb290ZXIgYnV0dG9uOmhvdmVyLFxuICAuc2l0ZS1mb290ZXIgYnV0dG9uOmZvY3VzLFxuICAuc2l0ZS1mb290ZXIgLmJ1dHRvbi5mb2N1cyxcbiAgLnNpdGUtZm9vdGVyIC5idXR0b246aG92ZXIsXG4gIC5zaXRlLWZvb3RlciAuYnV0dG9uOmZvY3VzLFxuICAuc2l0ZS1mb290ZXIgaW5wdXRbdHlwZT1cInJlc2V0XCJdLmZvY3VzLFxuICAuc2l0ZS1mb290ZXIgaW5wdXRbdHlwZT1cInJlc2V0XCJdOmhvdmVyLFxuICAuc2l0ZS1mb290ZXIgaW5wdXRbdHlwZT1cInJlc2V0XCJdOmZvY3VzLFxuICAuc2l0ZS1mb290ZXIgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXS5mb2N1cyxcbiAgLnNpdGUtZm9vdGVyIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06aG92ZXIsXG4gIC5zaXRlLWZvb3RlciBpbnB1dFt0eXBlPVwic3VibWl0XCJdOmZvY3VzLFxuICAuc2l0ZS1mb290ZXIgaW5wdXRbdHlwZT1cImJ1dHRvblwiXS5mb2N1cyxcbiAgLnNpdGUtZm9vdGVyIGlucHV0W3R5cGU9XCJidXR0b25cIl06aG92ZXIsXG4gIC5zaXRlLWZvb3RlciBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1idXR0b24tYmFja2dyb3VuZC1ob3Zlcik7XG4gICAgYm9yZGVyOiB2YXIoLS1ib3JkZXItd2lkdGgtaW5wdXQtZmllbGQpIHNvbGlkIHZhcigtLWNvbG9yLWJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyKTtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItYnV0dG9uLWhvdmVyKTsgfVxuICAuc2l0ZS1tYWluIGJ1dHRvbi5idXR0b24tc21hbGwsXG4gIC5zaXRlLW1haW4gLmJ1dHRvbi5idXR0b24tc21hbGwsXG4gIC5zaXRlLW1haW4gaW5wdXRbdHlwZT1cInJlc2V0XCJdLmJ1dHRvbi1zbWFsbCxcbiAgLnNpdGUtbWFpbiBpbnB1dFt0eXBlPVwic3VibWl0XCJdLmJ1dHRvbi1zbWFsbCxcbiAgLnNpdGUtbWFpbiBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdLmJ1dHRvbi1zbWFsbCxcbiAgLnNpdGUtZm9vdGVyIGJ1dHRvbi5idXR0b24tc21hbGwsXG4gIC5zaXRlLWZvb3RlciAuYnV0dG9uLmJ1dHRvbi1zbWFsbCxcbiAgLnNpdGUtZm9vdGVyIGlucHV0W3R5cGU9XCJyZXNldFwiXS5idXR0b24tc21hbGwsXG4gIC5zaXRlLWZvb3RlciBpbnB1dFt0eXBlPVwic3VibWl0XCJdLmJ1dHRvbi1zbWFsbCxcbiAgLnNpdGUtZm9vdGVyIGlucHV0W3R5cGU9XCJidXR0b25cIl0uYnV0dG9uLXNtYWxsIHtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0xNik7XG4gICAgbGluZS1oZWlnaHQ6IDIwLjkwOTFweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogY2FsYygxMHB4IC0gY2FsYyh2YXIoLS1ib3JkZXItd2lkdGgtaW5wdXQtZmllbGQpICogMikpO1xuICAgIHBhZGRpbmctbGVmdDogY2FsYygyMXB4IC0gY2FsYyh2YXIoLS1ib3JkZXItd2lkdGgtaW5wdXQtZmllbGQpICogMikpO1xuICAgIHBhZGRpbmctcmlnaHQ6IGNhbGMoMjFweCAtIGNhbGModmFyKC0tYm9yZGVyLXdpZHRoLWlucHV0LWZpZWxkKSAqIDIpKTtcbiAgICBwYWRkaW5nLXRvcDogY2FsYygxMHB4IC0gY2FsYyh2YXIoLS1ib3JkZXItd2lkdGgtaW5wdXQtZmllbGQpICogMikpOyB9XG4gIC5zaXRlLW1haW4gYnV0dG9uLmJ1dHRvbi1sYXJnZSxcbiAgLnNpdGUtbWFpbiAuYnV0dG9uLmJ1dHRvbi1sYXJnZSxcbiAgLnNpdGUtbWFpbiBpbnB1dFt0eXBlPVwicmVzZXRcIl0uYnV0dG9uLWxhcmdlLFxuICAuc2l0ZS1tYWluIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0uYnV0dG9uLWxhcmdlLFxuICAuc2l0ZS1tYWluIGlucHV0W3R5cGU9XCJidXR0b25cIl0uYnV0dG9uLWxhcmdlLFxuICAuc2l0ZS1mb290ZXIgYnV0dG9uLmJ1dHRvbi1sYXJnZSxcbiAgLnNpdGUtZm9vdGVyIC5idXR0b24uYnV0dG9uLWxhcmdlLFxuICAuc2l0ZS1mb290ZXIgaW5wdXRbdHlwZT1cInJlc2V0XCJdLmJ1dHRvbi1sYXJnZSxcbiAgLnNpdGUtZm9vdGVyIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0uYnV0dG9uLWxhcmdlLFxuICAuc2l0ZS1mb290ZXIgaW5wdXRbdHlwZT1cImJ1dHRvblwiXS5idXR0b24tbGFyZ2Uge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTE4KTtcbiAgICBsaW5lLWhlaWdodDogMjMuMDkwOXB4O1xuICAgIHBhZGRpbmctYm90dG9tOiBjYWxjKDE3cHggLSBjYWxjKHZhcigtLWJvcmRlci13aWR0aC1pbnB1dC1maWVsZCkgKiAyKSk7XG4gICAgcGFkZGluZy1sZWZ0OiBjYWxjKDIxcHggLSBjYWxjKHZhcigtLWJvcmRlci13aWR0aC1pbnB1dC1maWVsZCkgKiAyKSk7XG4gICAgcGFkZGluZy1yaWdodDogY2FsYygyMXB4IC0gY2FsYyh2YXIoLS1ib3JkZXItd2lkdGgtaW5wdXQtZmllbGQpICogMikpO1xuICAgIHBhZGRpbmctdG9wOiBjYWxjKDE3cHggLSBjYWxjKHZhcigtLWJvcmRlci13aWR0aC1pbnB1dC1maWVsZCkgKiAyKSk7IH1cbiAgLnNpdGUtbWFpbiBidXR0b24uYnV0dG9uLWdob3N0LFxuICAuc2l0ZS1tYWluIC5idXR0b24uYnV0dG9uLWdob3N0LFxuICAuc2l0ZS1tYWluIGlucHV0W3R5cGU9XCJyZXNldFwiXS5idXR0b24tZ2hvc3QsXG4gIC5zaXRlLW1haW4gaW5wdXRbdHlwZT1cInN1Ym1pdFwiXS5idXR0b24tZ2hvc3QsXG4gIC5zaXRlLW1haW4gaW5wdXRbdHlwZT1cImJ1dHRvblwiXS5idXR0b24tZ2hvc3QsXG4gIC5zaXRlLWZvb3RlciBidXR0b24uYnV0dG9uLWdob3N0LFxuICAuc2l0ZS1mb290ZXIgLmJ1dHRvbi5idXR0b24tZ2hvc3QsXG4gIC5zaXRlLWZvb3RlciBpbnB1dFt0eXBlPVwicmVzZXRcIl0uYnV0dG9uLWdob3N0LFxuICAuc2l0ZS1mb290ZXIgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXS5idXR0b24tZ2hvc3QsXG4gIC5zaXRlLWZvb3RlciBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdLmJ1dHRvbi1naG9zdCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiB2YXIoLS1ib3JkZXItd2lkdGgtaW5wdXQtZmllbGQpIHNvbGlkIHZhcigtLWNvbG9yLWJ1dHRvbi1iYWNrZ3JvdW5kKTtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWlucHV0LWZpZWxkKTtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItYnV0dG9uLWJhY2tncm91bmQpO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjA4cyBjdWJpYy1iZXppZXIoMC4yNSwgMC40NiwgMC40NSwgMC45NCk7IH1cbiAgICAuc2l0ZS1tYWluIGJ1dHRvbi5idXR0b24tZ2hvc3QuZm9jdXMsIC5zaXRlLW1haW4gYnV0dG9uLmJ1dHRvbi1naG9zdDpmb2N1cywgLnNpdGUtbWFpbiBidXR0b24uYnV0dG9uLWdob3N0OmhvdmVyLFxuICAgIC5zaXRlLW1haW4gLmJ1dHRvbi5idXR0b24tZ2hvc3QuZm9jdXMsXG4gICAgLnNpdGUtbWFpbiAuYnV0dG9uLmJ1dHRvbi1naG9zdDpmb2N1cyxcbiAgICAuc2l0ZS1tYWluIC5idXR0b24uYnV0dG9uLWdob3N0OmhvdmVyLFxuICAgIC5zaXRlLW1haW4gaW5wdXRbdHlwZT1cInJlc2V0XCJdLmJ1dHRvbi1naG9zdC5mb2N1cyxcbiAgICAuc2l0ZS1tYWluIGlucHV0W3R5cGU9XCJyZXNldFwiXS5idXR0b24tZ2hvc3Q6Zm9jdXMsXG4gICAgLnNpdGUtbWFpbiBpbnB1dFt0eXBlPVwicmVzZXRcIl0uYnV0dG9uLWdob3N0OmhvdmVyLFxuICAgIC5zaXRlLW1haW4gaW5wdXRbdHlwZT1cInN1Ym1pdFwiXS5idXR0b24tZ2hvc3QuZm9jdXMsXG4gICAgLnNpdGUtbWFpbiBpbnB1dFt0eXBlPVwic3VibWl0XCJdLmJ1dHRvbi1naG9zdDpmb2N1cyxcbiAgICAuc2l0ZS1tYWluIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0uYnV0dG9uLWdob3N0OmhvdmVyLFxuICAgIC5zaXRlLW1haW4gaW5wdXRbdHlwZT1cImJ1dHRvblwiXS5idXR0b24tZ2hvc3QuZm9jdXMsXG4gICAgLnNpdGUtbWFpbiBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdLmJ1dHRvbi1naG9zdDpmb2N1cyxcbiAgICAuc2l0ZS1tYWluIGlucHV0W3R5cGU9XCJidXR0b25cIl0uYnV0dG9uLWdob3N0OmhvdmVyLFxuICAgIC5zaXRlLWZvb3RlciBidXR0b24uYnV0dG9uLWdob3N0LmZvY3VzLFxuICAgIC5zaXRlLWZvb3RlciBidXR0b24uYnV0dG9uLWdob3N0OmZvY3VzLFxuICAgIC5zaXRlLWZvb3RlciBidXR0b24uYnV0dG9uLWdob3N0OmhvdmVyLFxuICAgIC5zaXRlLWZvb3RlciAuYnV0dG9uLmJ1dHRvbi1naG9zdC5mb2N1cyxcbiAgICAuc2l0ZS1mb290ZXIgLmJ1dHRvbi5idXR0b24tZ2hvc3Q6Zm9jdXMsXG4gICAgLnNpdGUtZm9vdGVyIC5idXR0b24uYnV0dG9uLWdob3N0OmhvdmVyLFxuICAgIC5zaXRlLWZvb3RlciBpbnB1dFt0eXBlPVwicmVzZXRcIl0uYnV0dG9uLWdob3N0LmZvY3VzLFxuICAgIC5zaXRlLWZvb3RlciBpbnB1dFt0eXBlPVwicmVzZXRcIl0uYnV0dG9uLWdob3N0OmZvY3VzLFxuICAgIC5zaXRlLWZvb3RlciBpbnB1dFt0eXBlPVwicmVzZXRcIl0uYnV0dG9uLWdob3N0OmhvdmVyLFxuICAgIC5zaXRlLWZvb3RlciBpbnB1dFt0eXBlPVwic3VibWl0XCJdLmJ1dHRvbi1naG9zdC5mb2N1cyxcbiAgICAuc2l0ZS1mb290ZXIgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXS5idXR0b24tZ2hvc3Q6Zm9jdXMsXG4gICAgLnNpdGUtZm9vdGVyIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0uYnV0dG9uLWdob3N0OmhvdmVyLFxuICAgIC5zaXRlLWZvb3RlciBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdLmJ1dHRvbi1naG9zdC5mb2N1cyxcbiAgICAuc2l0ZS1mb290ZXIgaW5wdXRbdHlwZT1cImJ1dHRvblwiXS5idXR0b24tZ2hvc3Q6Zm9jdXMsXG4gICAgLnNpdGUtZm9vdGVyIGlucHV0W3R5cGU9XCJidXR0b25cIl0uYnV0dG9uLWdob3N0OmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJ1dHRvbi1iYWNrZ3JvdW5kKTtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItYnV0dG9uLWJhY2tncm91bmQpO1xuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTsgfVxuXG5zZWxlY3Qge1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi8uLi9zdmcvc2VsZWN0LnN2Z1wiKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgMCBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogNDBweCBhdXRvO1xuICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWJvcmRlci1mb3Jtcyk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc2VsZWN0KTtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXdpZHRoOiB2YXIoLS1ib3JkZXItd2lkdGgtaW5wdXQtZmllbGQpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItcGFyYWdyYXBoKTtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtMTcpO1xuICBsaW5lLWhlaWdodDogMjRweDtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtaW4td2lkdGg6IDA7XG4gIHBhZGRpbmc6IDE1cHg7XG4gIHRleHQtaW5kZW50OiAxcHg7XG4gIHRyYW5zaXRpb246IG5vbmU7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbnRleHRhcmVhLFxuc2VsZWN0LFxuaW5wdXRbdHlwZT1cInRleHRcIl0sXG5pbnB1dFt0eXBlPVwidGVsXCJdLFxuaW5wdXRbdHlwZT1cInVybFwiXSxcbmlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSxcbmlucHV0W3R5cGU9XCJudW1iZXJcIl0sXG5pbnB1dFt0eXBlPVwibW9udGhcIl0sXG5pbnB1dFt0eXBlPVwid2Vla1wiXSxcbmlucHV0W3R5cGU9XCJlbWFpbFwiXSxcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1iYWNrZ3JvdW5kLWlucHV0LWZpZWxkKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1ib3JkZXItZm9ybXMpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWlucHV0LWZpZWxkKTtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXdpZHRoOiB2YXIoLS1ib3JkZXItd2lkdGgtaW5wdXQtZmllbGQpO1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1wYXJhZ3JhcGgpO1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0xNyk7XG4gIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBwYWRkaW5nOiAxNXB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAuNTVzOyB9XG4gIHRleHRhcmVhOjpwbGFjZWhvbGRlcixcbiAgc2VsZWN0OjpwbGFjZWhvbGRlcixcbiAgaW5wdXRbdHlwZT1cInRleHRcIl06OnBsYWNlaG9sZGVyLFxuICBpbnB1dFt0eXBlPVwidGVsXCJdOjpwbGFjZWhvbGRlcixcbiAgaW5wdXRbdHlwZT1cInVybFwiXTo6cGxhY2Vob2xkZXIsXG4gIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXTo6cGxhY2Vob2xkZXIsXG4gIGlucHV0W3R5cGU9XCJudW1iZXJcIl06OnBsYWNlaG9sZGVyLFxuICBpbnB1dFt0eXBlPVwibW9udGhcIl06OnBsYWNlaG9sZGVyLFxuICBpbnB1dFt0eXBlPVwid2Vla1wiXTo6cGxhY2Vob2xkZXIsXG4gIGlucHV0W3R5cGU9XCJlbWFpbFwiXTo6cGxhY2Vob2xkZXIsXG4gIGlucHV0W3R5cGU9XCJzZWFyY2hcIl06OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItcGxhY2Vob2xkZXIpO1xuICAgIG9wYWNpdHk6IHZhcigtLW9wYWNpdHktcGxhY2Vob2xkZXIpOyB9XG4gIHRleHRhcmVhOmZvY3VzLFxuICBzZWxlY3Q6Zm9jdXMsXG4gIGlucHV0W3R5cGU9XCJ0ZXh0XCJdOmZvY3VzLFxuICBpbnB1dFt0eXBlPVwidGVsXCJdOmZvY3VzLFxuICBpbnB1dFt0eXBlPVwidXJsXCJdOmZvY3VzLFxuICBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl06Zm9jdXMsXG4gIGlucHV0W3R5cGU9XCJudW1iZXJcIl06Zm9jdXMsXG4gIGlucHV0W3R5cGU9XCJtb250aFwiXTpmb2N1cyxcbiAgaW5wdXRbdHlwZT1cIndlZWtcIl06Zm9jdXMsXG4gIGlucHV0W3R5cGU9XCJlbWFpbFwiXTpmb2N1cyxcbiAgaW5wdXRbdHlwZT1cInNlYXJjaFwiXTpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmFja2dyb3VuZC1pbnB1dC1maWVsZCk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1ib3JkZXItZm9ybXMtZm9jdXMpOyB9XG4gICAgdGV4dGFyZWE6Zm9jdXM6OnBsYWNlaG9sZGVyLFxuICAgIHNlbGVjdDpmb2N1czo6cGxhY2Vob2xkZXIsXG4gICAgaW5wdXRbdHlwZT1cInRleHRcIl06Zm9jdXM6OnBsYWNlaG9sZGVyLFxuICAgIGlucHV0W3R5cGU9XCJ0ZWxcIl06Zm9jdXM6OnBsYWNlaG9sZGVyLFxuICAgIGlucHV0W3R5cGU9XCJ1cmxcIl06Zm9jdXM6OnBsYWNlaG9sZGVyLFxuICAgIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXTpmb2N1czo6cGxhY2Vob2xkZXIsXG4gICAgaW5wdXRbdHlwZT1cIm51bWJlclwiXTpmb2N1czo6cGxhY2Vob2xkZXIsXG4gICAgaW5wdXRbdHlwZT1cIm1vbnRoXCJdOmZvY3VzOjpwbGFjZWhvbGRlcixcbiAgICBpbnB1dFt0eXBlPVwid2Vla1wiXTpmb2N1czo6cGxhY2Vob2xkZXIsXG4gICAgaW5wdXRbdHlwZT1cImVtYWlsXCJdOmZvY3VzOjpwbGFjZWhvbGRlcixcbiAgICBpbnB1dFt0eXBlPVwic2VhcmNoXCJdOmZvY3VzOjpwbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItcGxhY2Vob2xkZXItZm9jdXMpO1xuICAgICAgb3BhY2l0eTogdmFyKC0tb3BhY2l0eS1wbGFjZWhvbGRlci1mb2N1cyk7IH1cblxuaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgaGVpZ2h0OiB2YXIoLS1zaXplLXJhZGlvLWJ1dHRvbik7XG4gIG1hcmdpbjogMDtcbiAgbWFyZ2luLXRvcDogY2FsYygoMWVtICogdmFyKC0tbGluZS1oZWlnaHQtY2hlY2tib3gpIC0gdmFyKC0tc2l6ZS1yYWRpby1idXR0b24pKSAvIDIpO1xuICBvcGFjaXR5OiAwO1xuICBwYWRkaW5nOiAwO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogdmFyKC0tc2l6ZS1yYWRpby1idXR0b24pOyB9XG5cbmlucHV0W3R5cGU9XCJyYWRpb1wiXSArIGxhYmVsLFxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdICsgbGFiZWwge1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWNoZWNrYm94KTsgfVxuXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0gKyBsYWJlbDo6YmVmb3JlLFxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdICsgbGFiZWw6OmJlZm9yZSB7XG4gIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItY2hlY2tib3gpO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IHZhcigtLWJvcmRlci13aWR0aC1jaGVja2JveCk7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgZmxleC1zaHJpbms6IDA7XG4gIGhlaWdodDogdmFyKC0tc2l6ZS1yYWRpby1idXR0b24pO1xuICBtYXJnaW4tcmlnaHQ6IHZhcigtLWdhcC1jaGVja2JveCk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiBjYWxjKHZhcigtLWJvcmRlci13aWR0aC1jaGVja2JveCkgLyAyKTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4ycywgYm9yZGVyIC4ycztcbiAgd2lkdGg6IHZhcigtLXNpemUtcmFkaW8tYnV0dG9uKTsgfVxuXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0gKyBsYWJlbDo6YmVmb3JlIHtcbiAgYm9yZGVyLXJhZGl1czogNTAlOyB9XG5cbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSArIGxhYmVsOjpiZWZvcmUge1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWNoZWNrYm94KTsgfVxuXG5pbnB1dFt0eXBlPVwicmFkaW9cIl06Y2hlY2tlZCArIGxhYmVsOjpiZWZvcmUsXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCArIGxhYmVsOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1jaGVja2JveCk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItY2hlY2tib3gpO1xuICBib3gtc2hhZG93OiBub25lO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjJzOyB9XG5cbmlucHV0W3R5cGU9XCJyYWRpb1wiXTphY3RpdmUgKyBsYWJlbDo6YmVmb3JlLFxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmFjdGl2ZSArIGxhYmVsOjpiZWZvcmUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuOCk7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuMnM7IH1cblxuaW5wdXRbdHlwZT1cInJhZGlvXCJdOmNoZWNrZWQgKyBsYWJlbDo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwgJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDE2IDE2JyUzRSUzQ2cgY2xhc3M9J25jLWljb24td3JhcHBlcicgZmlsbD0nJTIzZmZmZmZmJyUzRSUzQ2NpcmNsZSBjeD0nOCcgY3k9JzgnIHI9JzgnIGZpbGw9JyUyM2ZmZmZmZiclM0UlM0MvY2lyY2xlJTNFJTNDL2clM0UlM0Mvc3ZnJTNFXCIpO1xuICBiYWNrZ3JvdW5kLXNpemU6IHZhcigtLXNpemUtcmFkaW8tYnV0dG9uLW1hcmtlcik7IH1cblxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQgKyBsYWJlbDo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCAlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMTInIGhlaWdodD0nMTInIHZpZXdCb3g9JzAgMCAxMiAxMiclM0UlM0Nwb2x5bGluZSBwb2ludHM9JzEgNi41IDQgOS41IDExIDIuNScgZmlsbD0nbm9uZScgc3Ryb2tlPSclMjNGRkZGRkYnIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgc3Ryb2tlLXdpZHRoPScyJy8lM0UlM0Mvc3ZnJTNFXCIpO1xuICBiYWNrZ3JvdW5kLXNpemU6IHZhcigtLXNpemUtY2hlY2tib3gtbWFya2VyKTsgfVxuXG5pbnB1dFt0eXBlPVwicmFkaW9cIl06Zm9jdXMgKyBsYWJlbDo6YmVmb3JlLFxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmZvY3VzICsgbGFiZWw6OmJlZm9yZSxcbmlucHV0W3R5cGU9XCJyYWRpb1wiXTpjaGVja2VkOmFjdGl2ZSArIGxhYmVsOjpiZWZvcmUsXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZDphY3RpdmUgKyBsYWJlbDo6YmVmb3JlIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1jaGVja2JveCk7XG4gIGJveC1zaGFkb3c6IHZhcigtLWNvbG9yLWNoZWNrYm94LW91dGxpbmUpOyB9XG5cbmlucHV0W3R5cGU9XCJyYWRpb1wiXTpjaGVja2VkOmFjdGl2ZSArIGxhYmVsOjpiZWZvcmUsXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZDphY3RpdmUgKyBsYWJlbDo6YmVmb3JlIHtcbiAgdHJhbnNmb3JtOiBub25lO1xuICB0cmFuc2l0aW9uOiBub25lOyB9XG5cbi8qIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW1heC1wc2V1ZG8tY2xhc3MgKi9cbmlucHV0W3R5cGU9XCJyYWRpb1wiXTpub3QoOmNoZWNrZWQpOm5vdCg6Zm9jdXMpICsgbGFiZWw6aG92ZXI6OmJlZm9yZSxcbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpub3QoOmNoZWNrZWQpOm5vdCg6Zm9jdXMpICsgbGFiZWw6aG92ZXI6OmJlZm9yZSB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItY2hlY2tib3gtYm9yZGVyLWhvdmVyKTsgfVxuXG4vKiBzdHlsZWxpbnQtZW5hYmxlIHNlbGVjdG9yLW1heC1wc2V1ZG8tY2xhc3MgKi9cbi8qIHN0eWxlbGludC1kaXNhYmxlIG5vLWRlc2NlbmRpbmctc3BlY2lmaWNpdHkgKi9cbi5jYXQge1xuICBtYXJnaW4tYm90dG9tOiAuNXJlbTtcbiAgbWFyZ2luLXRvcDogNHJlbTsgfVxuICAuY2F0IGEge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItY2F0ZWdvcnktYm9yZGVyKTtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItd2lkdGg6IDFweCAxcHggMnB4O1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWNhdGVnb3J5LXRleHQpO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0xNik7XG4gICAgbWFyZ2luLWJvdHRvbTogLjVyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAuNWVtO1xuICAgIHBhZGRpbmc6IC4yZW0gLjZlbTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4xOHM7IH1cbiAgLmNhdCBhOmhvdmVyLFxuICAuY2F0IGE6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItdGFnLWJvcmRlci1ob3Zlcik7IH1cblxuLnRhZ3Mge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1tYXJnaW4tYmV0d2Vlbi10ZXh0LWVsZW1lbnRzKTtcbiAgbWFyZ2luLXRvcDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAudGFncyBsaSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cbiAgLnRhZ3MgYSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci10YWctYm9yZGVyKTtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItd2lkdGg6IDFweCAxcHggMnB4O1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLXRhZy10ZXh0KTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtMTQpO1xuICAgIG1hcmdpbi1yaWdodDogLjRlbTtcbiAgICBwYWRkaW5nOiAuMmVtIC42ZW07XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMThzOyB9XG4gIC50YWdzIGE6aG92ZXIsXG4gIC50YWdzIGE6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItdGFnLWJvcmRlci1ob3Zlcik7IH1cblxuLnBvc3QtbmF2aWdhdGlvbiAubmF2LWxpbmtzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cblxuOnJvb3Qge1xuICAtLWNvbG9yLWJvcmRlci1zdGlja3k6ICNkN2U0ZjI7XG4gIC0tY29sb3ItYnlwb3N0YXV0aG9yOiByZ2JhKDQyLCA0NSwgNjIsIC41KTsgfVxuXG4uc3RpY2t5IHtcbiAgYm9yZGVyOiAxcHggZGFzaGVkIHZhcigtLWNvbG9yLWJvcmRlci1zdGlja3kpO1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICBwYWRkaW5nOiAycmVtOyB9XG5cbi5jb21tZW50LWxpc3QgbGkuYnlwb3N0YXV0aG9yLFxuLmJ5cG9zdGF1dGhvciB7XG4gIGJvcmRlcjogMXB4IGRhc2hlZCB2YXIoLS1jb2xvci1ieXBvc3RhdXRob3IpO1xuICBwYWRkaW5nOiAycmVtOyB9XG5cbi53cC1jYXB0aW9uIHtcbiAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gIC53cC1jYXB0aW9uIGltZ1tjbGFzcyo9XCJ3cC1pbWFnZS1cIl0ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMCBhdXRvOyB9XG4gIC53cC1jYXB0aW9uIC53cC1jYXB0aW9uLXRleHQge1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIHBhZGRpbmc6IDFyZW0gMDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG5cbi5zaXRlLWZvb3RlciAudG9wIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHBhZGRpbmc6IDE2cHg7IH1cbiAgLnNpdGUtZm9vdGVyIC50b3Agc3ZnIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmlsbDogdmFyKC0tY29sb3ItdG9wLWFycm93LWRhcmspO1xuICAgIGhlaWdodDogMThweDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBtYXJnaW46IDA7XG4gICAgb3BhY2l0eTogLjg7XG4gICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlO1xuICAgIHdpZHRoOiAxOHB4OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgICAuc2l0ZS1mb290ZXIgLnRvcCBzdmcge1xuICAgICAgICBoZWlnaHQ6IDE1cHg7XG4gICAgICAgIHdpZHRoOiAxNXB4OyB9IH1cbiAgLnNpdGUtZm9vdGVyIC50b3A6aG92ZXIsIC5zaXRlLWZvb3RlciAudG9wOmZvY3VzLCAuc2l0ZS1mb290ZXIgLnRvcDphY3RpdmUge1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgICAuc2l0ZS1mb290ZXIgLnRvcDpob3ZlciBzdmcsIC5zaXRlLWZvb3RlciAudG9wOmZvY3VzIHN2ZywgLnNpdGUtZm9vdGVyIC50b3A6YWN0aXZlIHN2ZyB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTAuNXJlbSk7IH1cblxuLnNpdGUtZm9vdGVyIC5iYWNrLXRvLXRvcCB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJvdHRvbTogMXJlbTtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIG1hcmdpbjogMDtcbiAgb3BhY2l0eTogMDtcbiAgcG9zaXRpb246IGZpeGVkO1xuICByaWdodDogMXJlbTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMThzIDBzLCB2aXNpYmlsaXR5IDBzIDAuMThzO1xuICB6LWluZGV4OiA5OTk5OyB9XG4gIC5zaXRlLWZvb3RlciAuYmFjay10by10b3AuaGFzLWxpZ2h0LWJnIHN2ZyB7XG4gICAgZmlsbDogdmFyKC0tY29sb3ItdG9wLWFycm93LWRhcmspOyB9XG4gIC5zaXRlLWZvb3RlciAuYmFjay10by10b3AuaGFzLWRhcmstYmcgc3ZnIHtcbiAgICBmaWxsOiB2YXIoLS1jb2xvci10b3AtYXJyb3ctbGlnaHQpOyB9XG4gIC5zaXRlLWZvb3RlciAuYmFjay10by10b3AuaXMtdmlzaWJsZSwgLnNpdGUtZm9vdGVyIC5iYWNrLXRvLXRvcC5mYWRlLW91dCB7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE4cyAwcywgdmlzaWJpbGl0eSAwcyAwczsgfVxuICAuc2l0ZS1mb290ZXIgLmJhY2stdG8tdG9wLmlzLXZpc2libGUge1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgLnNpdGUtZm9vdGVyIC5iYWNrLXRvLXRvcC5mYWRlLW91dCB7XG4gICAgb3BhY2l0eTogMTsgfVxuICAgIC5zaXRlLWZvb3RlciAuYmFjay10by10b3AuZmFkZS1vdXQ6Zm9jdXMsIC5zaXRlLWZvb3RlciAuYmFjay10by10b3AuZmFkZS1vdXQ6aG92ZXIge1xuICAgICAgb3BhY2l0eTogMTsgfVxuXG4uZ2FsbGVyeSB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtZ2FwOiAxLjVlbTtcbiAgbWFyZ2luLWJvdHRvbTogMS41ZW07IH1cblxuLmdhbGxlcnktaXRlbSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aWR0aDogMTAwJTsgfVxuXG4uZ2FsbGVyeS1jb2x1bW5zLTIge1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpOyB9XG5cbi5nYWxsZXJ5LWNvbHVtbnMtMyB7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7IH1cblxuLmdhbGxlcnktY29sdW1ucy00IHtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNCwgMWZyKTsgfVxuXG4uZ2FsbGVyeS1jb2x1bW5zLTUge1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg1LCAxZnIpOyB9XG5cbi5nYWxsZXJ5LWNvbHVtbnMtNiB7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDYsIDFmcik7IH1cblxuLmdhbGxlcnktY29sdW1ucy03IHtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNywgMWZyKTsgfVxuXG4uZ2FsbGVyeS1jb2x1bW5zLTgge1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg4LCAxZnIpOyB9XG5cbi5nYWxsZXJ5LWNvbHVtbnMtOSB7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDksIDFmcik7IH1cblxuLmdhbGxlcnktY2FwdGlvbiB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbmRpdi5sYXp5IHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgei1pbmRleDogMDsgfVxuXG4uaGFzLWxhenlsb2FkIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi8qIHN0eWxlbGludC1kaXNhYmxlIGExMXkvZm9udC1zaXplLWlzLXJlYWRhYmxlICovXG4ubmF2aWdhdGlvbjpub3QoLnBvc3QtbmF2aWdhdGlvbikgLm5hdi1saW5rcyB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBkaXNwbGF5OiBmbGV4O1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1oZWFkaW5nKTtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIG1hcmdpbi10b3A6IDRyZW07XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC5uYXZpZ2F0aW9uOm5vdCgucG9zdC1uYXZpZ2F0aW9uKSAubmF2LWxpbmtzIGEge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG4vKiBzdHlsZWxpbnQtZW5hYmxlICovXG4ucGFnZS1udW1iZXJzIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgdmFyKC0tY29sb3ItYmx1ZS1jaGFsayk7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgdmFyKC0tY29sb3ItYmx1ZS1jaGFsayk7XG4gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJsdWUtY2hhbGspO1xuICBib3JkZXItdG9wOiAycHggc29saWQgdmFyKC0tY29sb3ItYmx1ZS1jaGFsayk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1wYWdpbmF0aW9uLXRleHQpO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTtcbiAgaGVpZ2h0OiAzNXB4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMThzO1xuICB3aWR0aDogMzVweDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNjAwcHgpIHtcbiAgICAucGFnZS1udW1iZXJzIHtcbiAgICAgIGhlaWdodDogMjZweDtcbiAgICAgIHdpZHRoOiAyNnB4OyB9IH1cbiAgLnBhZ2UtbnVtYmVyczpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiA0cHg7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogNHB4OyB9XG4gIC5wYWdlLW51bWJlcnM6Zmlyc3QtY2hpbGQge1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDRweDtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiA0cHg7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7IH1cblxuYS5wYWdlLW51bWJlcnM6aG92ZXIsXG5hLnBhZ2UtbnVtYmVyczpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXBhZ2luYXRpb24tYmFja2dyb3VuZC1ob3Zlcik7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItcGFnaW5hdGlvbi1ib3JkZXItaG92ZXIpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItcGFnaW5hdGlvbi10ZXh0LWhvdmVyKTsgfVxuXG4ucGFnZS1udW1iZXJzLmN1cnJlbnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1wYWdpbmF0aW9uLWJhY2tncm91bmQtY3VycmVudCk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItcGFnaW5hdGlvbi1ib3JkZXItY3VycmVudCk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1wYWdpbmF0aW9uLXRleHQtY3VycmVudCk7IH1cblxuLnBhZ2UtbnVtYmVycy5uZXh0LFxuLnBhZ2UtbnVtYmVycy5wcmV2IHtcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICB3aWR0aDogYXV0bzsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNjAwcHgpIHtcbiAgICAucGFnZS1udW1iZXJzLm5leHQsXG4gICAgLnBhZ2UtbnVtYmVycy5wcmV2IHtcbiAgICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7IH0gfVxuXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1jbGFzcy1wYXR0ZXJuICovXG5kaXYudmFsaWRhdGlvbl9lcnJvciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWVycm9yKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtMTcpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG4gIHBhZGRpbmc6IDJyZW07IH1cbiAgZGl2LnZhbGlkYXRpb25fZXJyb3I6Zm9jdXMge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7IH1cblxuYm9keSAqW2FyaWEtaW52YWxpZD1cInRydWVcIl0ge1xuICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWVycm9yKTsgfVxuXG4udmFsaWRhdGlvbl9tZXNzYWdlIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWVycm9yKTtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtMTYpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtcmVndWxhcik7IH1cblxuLnZhbGlkYXRpb25fbGlzdCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBwYWRkaW5nOiAwOyB9XG4gIC52YWxpZGF0aW9uX2xpc3QgYSB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWVycm9yKTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgLnZhbGlkYXRpb25fbGlzdCBsaSB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWVycm9yKTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7IH1cblxuLmdmb3JtX2JvZHkgLmdmaWVsZF9yZXF1aXJlZCB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1tYWluKTtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtMjIpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogM3B4OyB9XG5cbi5nZm9ybV9ib2R5IHVsIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwOyB9XG5cbi5nZm9ybV9ib2R5IC5nZm9ybV9maWVsZHMgbGkge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBtYXJnaW4tdG9wOiAxcmVtOyB9XG5cbi5nZm9ybV9ib2R5IC5nZmllbGRfcmFkaW8gbGksXG4uZ2Zvcm1fYm9keSAuZ2ZpZWxkX2NoZWNrYm94IGxpIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbWFyZ2luLXRvcDogMDsgfVxuXG4uZ2Zvcm1fYm9keSAuZ2ZpZWxkc2V0IGxpIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICBtYXJnaW46IDA7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5nZm9ybV9ib2R5IC5nZm9ybV9maWVsZHMgbGk6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLmdmb3JtX2JvZHkgLmdmaWVsZF9sYWJlbCxcbi5nZm9ybV9ib2R5IC5naW5wdXRfY29udGFpbmVyIGxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIG1hcmdpbi10b3A6IDFyZW07IH1cblxuLmdmb3JtX2JvZHkgaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuLmdmb3JtX2JvZHkgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgbWFyZ2luLXJpZ2h0OiAxcmVtOyB9XG5cbi5nZm9ybV9ib2R5IC5nZmllbGRfcmFkaW8gbGkgbGFiZWwsXG4uZ2Zvcm1fYm9keSAuZ2ZpZWxkX2NoZWNrYm94IGxpIGxhYmVsIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbWFyZ2luLXRvcDogMDsgfVxuXG4uZ2Zvcm1fYm9keSBpbnB1dDpub3QoW3R5cGU9XCJyYWRpb1wiXSk6bm90KFt0eXBlPVwiY2hlY2tib3hcIl0pLFxuLmdmb3JtX2JvZHkgdGV4dGFyZWEge1xuICB3aWR0aDogMTAwJTsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLmdmb3JtX2JvZHkgLmdpbnB1dF9mdWxsIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTsgfVxuICAuZ2Zvcm1fYm9keSAuZ2lucHV0X2NvbXBsZXgge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIG1hcmdpbi1sZWZ0OiAtLjVyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAtLjVyZW07IH1cbiAgICAuZ2Zvcm1fYm9keSAuZ2lucHV0X2NvbXBsZXggc3BhbiB7XG4gICAgICBtYXJnaW4tbGVmdDogLjVyZW07XG4gICAgICBtYXJnaW4tcmlnaHQ6IC41cmVtOyB9XG4gIC5nZm9ybV9ib2R5IC5naW5wdXRfbGVmdCxcbiAgLmdmb3JtX2JvZHkgLmdpbnB1dF9yaWdodCB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDFyZW0pOyB9XG4gICAgLmdmb3JtX2JvZHkgLmdpbnB1dF9sZWZ0ID4gbGFiZWwsXG4gICAgLmdmb3JtX2JvZHkgLmdpbnB1dF9sZWZ0IGlucHV0LFxuICAgIC5nZm9ybV9ib2R5IC5naW5wdXRfcmlnaHQgPiBsYWJlbCxcbiAgICAuZ2Zvcm1fYm9keSAuZ2lucHV0X3JpZ2h0IGlucHV0IHtcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTE2KTtcbiAgICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuLyogc3R5bGVsaW50LWVuYWJsZSBzZWxlY3Rvci1jbGFzcy1wYXR0ZXJuICovXG4uYmxvY2stc2VhcmNoLFxuLmJsb2NrLXNlYXJjaC1yZXN1bHRzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpOyB9XG5cbi5ibG9jay1zZWFyY2ggZm9ybSB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIC8qIGF1dG9wcmVmaXhlcjogb2ZmICovXG4gIGdyaWQtZ2FwOiAxcmVtO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDlmciAxZnI7IH1cbiAgLmJsb2NrLXNlYXJjaCBmb3JtIGlucHV0LFxuICAuYmxvY2stc2VhcmNoIGZvcm0gbGFiZWwge1xuICAgIHdpZHRoOiAxMDAlOyB9XG5cbi5ibG9jay1zZWFyY2gtcmVzdWx0cyA+IC5jb250YWluZXIge1xuICBwYWRkaW5nLXRvcDogMDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgLmJsb2NrLXNlYXJjaC1yZXN1bHRzID4gLmNvbnRhaW5lciB7XG4gICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgZ3JpZC1hdXRvLXJvd3M6IG1pbm1heCgwLCBhdXRvKTtcbiAgICAgIGdyaWQtZ2FwOiAxNnB4O1xuICAgICAgZ3JpZC1yb3ctZ2FwOiAxNnB4O1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMSwgbWlubWF4KDAsIDFmcikpOyB9XG4gICAgICBAc3VwcG9ydHMgbm90IChkaXNwbGF5OiBncmlkKSB7XG4gICAgICAgIC5ibG9jay1zZWFyY2gtcmVzdWx0cyA+IC5jb250YWluZXIge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgICAgICAgICAuYmxvY2stc2VhcmNoLXJlc3VsdHMgPiAuY29udGFpbmVyID4gZGl2IHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE2cHg7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDE2cHg7XG4gICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMTZweCk7IH1cbiAgICAgICAgICAgIC5ibG9jay1zZWFyY2gtcmVzdWx0cyA+IC5jb250YWluZXIgPiBkaXY6bnRoLWNoaWxkKDFuKzEpIHtcbiAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH0gfVxuICBAbWVkaWEgYWxsIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpLCAobWluLXdpZHRoOiAxMDI0cHgpIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSkge1xuICAgIC5ibG9jay1zZWFyY2gtcmVzdWx0cyA+IC5jb250YWluZXIge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgICAgIC5ibG9jay1zZWFyY2gtcmVzdWx0cyA+IC5jb250YWluZXIgPiBkaXYge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNnB4O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDE2cHg7XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxNnB4KTsgfVxuICAgICAgICAuYmxvY2stc2VhcmNoLXJlc3VsdHMgPiAuY29udGFpbmVyID4gZGl2Om50aC1jaGlsZCgxbisxKSB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgQHN1cHBvcnRzICgtbXMtaW1lLWFsaWduOiBhdXRvKSB7XG4gICAgICAgIC5ibG9jay1zZWFyY2gtcmVzdWx0cyA+IC5jb250YWluZXIge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgICAgICAgICAuYmxvY2stc2VhcmNoLXJlc3VsdHMgPiAuY29udGFpbmVyID4gZGl2IHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE2cHg7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDE2cHg7XG4gICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMTZweCk7IH1cbiAgICAgICAgICAgIC5ibG9jay1zZWFyY2gtcmVzdWx0cyA+IC5jb250YWluZXIgPiBkaXY6bnRoLWNoaWxkKDFuKzEpIHtcbiAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH0gfVxuXG4uYmxvY2stc2VhcmNoLXJlc3VsdHMgLnJvdy1yZXN1bHQge1xuICBib3JkZXItdG9wOiAycHggc29saWQgdmFyKC0tY29sb3ItYm9yZGVyLWZvcm1zKTtcbiAgcGFkZGluZzogMnJlbSAwOyB9XG4gIC5ibG9jay1zZWFyY2gtcmVzdWx0cyAucm93LXJlc3VsdDpsYXN0LW9mLXR5cGUge1xuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCB2YXIoLS1jb2xvci1ib3JkZXItZm9ybXMpOyB9XG5cbi5ibG9jay1zZWFyY2gtcmVzdWx0cyBoMyB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWg0KTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuXG4uYmxvY2stc2VhcmNoLXJlc3VsdHMgcCB7XG4gIG1hcmdpbi10b3A6IDFyZW07IH1cblxuLmJsb2NrLXNlYXJjaC1yZXN1bHRzIC50YWdzIGEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1iYWNrZ3JvdW5kLXRhZyk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1tYWluKTsgfVxuICAuYmxvY2stc2VhcmNoLXJlc3VsdHMgLnRhZ3MgYTpob3ZlciwgLmJsb2NrLXNlYXJjaC1yZXN1bHRzIC50YWdzIGE6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLW1haW4pO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1iYWNrZ3JvdW5kLXRhZyk7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5ibG9jay1lcnJvci00MDQgLmNvbnRhaW5lciB7XG4gICAgcGFkZGluZy1ib3R0b206IDEwJTtcbiAgICBwYWRkaW5nLXRvcDogMTAlOyB9IH1cblxuLmJsb2NrLWVycm9yLTQwNCBoMSB7XG4gIGZvbnQtc2l6ZTogNDJweDtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMjBweCkge1xuICAgIC5ibG9jay1lcnJvci00MDQgaDEge1xuICAgICAgZm9udC1zaXplOiBjYWxjKDQycHggKyAxNTggKiAoKDEwMHZ3IC0gMzIwcHgpIC8gMTYwMCkpOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTkyMHB4KSB7XG4gICAgLmJsb2NrLWVycm9yLTQwNCBoMSB7XG4gICAgICBmb250LXNpemU6IDIwMHB4OyB9IH1cblxuLyogc3R5bGVsaW50LWRpc2FibGUgbm8tZGVzY2VuZGluZy1zcGVjaWZpY2l0eSAqL1xuLmNvbW1lbnRzLWFyZWEge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBtYXJnaW4tdG9wOiA1MHB4O1xuICBvdmVyZmxvdzogdmlzaWJsZTsgfVxuXG4uY29tbWVudC1saXN0IHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwOyB9XG4gIC5jb21tZW50LWxpc3QgLmNoaWxkcmVuIHtcbiAgICBsaXN0LXN0eWxlOiBub25lOyB9XG4gIC5jb21tZW50LWxpc3QgbGkge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTE0KTtcbiAgICBtYXJnaW4tYm90dG9tOiA3MHB4O1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgcGFkZGluZzogMDsgfVxuICAuY29tbWVudC1saXN0IHAge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1jb21tZW50LXRleHQpO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTE0KTsgfVxuICAuY29tbWVudC1saXN0IC5hdmF0YXIge1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBmbG9hdDogcmlnaHQ7IH1cbiAgLmNvbW1lbnQtbGlzdCAuY29tbWVudC1hdXRob3Ige1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1jb21tZW50LWF1dGhvci10ZXh0KTtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oNCk7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgLmNvbW1lbnQtbGlzdCBhLFxuICAuY29tbWVudC1saXN0IC5jb21tZW50cy1saW5rIGEge1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWxpbmstY29tbWVudCk7IH1cbiAgLmNvbW1lbnQtbGlzdCAuY29tbWVudC1hdXRob3IgYSB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLXBhcmFncmFwaCk7IH1cbiAgLmNvbW1lbnQtbGlzdCAuY29tbWVudC10aW1lIHtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0xNCk7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgICAuY29tbWVudC1saXN0IC5jb21tZW50LXRpbWUgYSB7XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItbGluay1jb21tZW50LXRpbWUtYW5jaG9yKTsgfVxuICAgIC5jb21tZW50LWxpc3QgLmNvbW1lbnQtdGltZTpmb2N1cywgLmNvbW1lbnQtbGlzdCAuY29tbWVudC10aW1lOmhvdmVyIHtcbiAgICAgIG9wYWNpdHk6IDE7IH1cbiAgLmNvbW1lbnQtbGlzdCAuY29tbWVudC10aW1lIHN2ZyB7XG4gICAgZmlsbDogdmFyKC0tY29sb3ItbGluay1jb21tZW50LXRpbWUtYW5jaG9yKTtcbiAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAycHg7IH1cblxuLmNvbW1lbnRzLWxpbmsge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtMTQpO1xuICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAuY29tbWVudHMtbGluayBhIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItbGluay1jb21tZW50KTsgfVxuICAuY29tbWVudHMtbGluazpob3ZlciwgLmNvbW1lbnRzLWxpbms6Zm9jdXMsXG4gIC5jb21tZW50cy1saW5rIGE6aG92ZXIsXG4gIC5jb21tZW50cy1saW5rIGE6Zm9jdXMge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1ibGFjayk7IH1cbiAgLmNvbW1lbnRzLWxpbmsgc3ZnIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDdweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAtMXB4OyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAuY29tbWVudC1mb3JtIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtZ2FwOiAxZW07XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xuICAgIC8qIGF1dG9wcmVmaXhlcjogb2ZmICovXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgICAuY29tbWVudC1mb3JtIC5jb21tZW50LW5vdGVzLFxuICAgIC5jb21tZW50LWZvcm0gLmNvbW1lbnQtZm9ybS1jb21tZW50LFxuICAgIC5jb21tZW50LWZvcm0gLmZvcm0tc3VibWl0IHtcbiAgICAgIGdyaWQtY29sdW1uOiAxIC8gc3BhbiAyOyB9IH1cblxuLmNvbW1lbnQtcmVzcG9uZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIG92ZXJmbG93OiB2aXNpYmxlOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAgIC5jb21tZW50LXJlc3BvbmQgaW5wdXQge1xuICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICAuY29tbWVudC1yZXNwb25kIC5jb21tZW50LWZvcm0tYXV0aG9yIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgICAuY29tbWVudC1yZXNwb25kIC5jb21tZW50LWZvcm0tYXV0aG9yIGlucHV0IHtcbiAgICAgIGJvcmRlci13aWR0aDogMXB4O1xuICAgICAgcGFkZGluZzogMTVweDtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5jb21tZW50LXJlc3BvbmQgLmNvbW1lbnQtZm9ybS1lbWFpbCB7XG4gICAgY2xlYXI6IHJpZ2h0O1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgICAuY29tbWVudC1yZXNwb25kIC5jb21tZW50LWZvcm0tZW1haWwgaW5wdXQge1xuICAgICAgYm9yZGVyLXdpZHRoOiAxcHg7XG4gICAgICBwYWRkaW5nOiAxNXB4O1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgLmNvbW1lbnQtcmVzcG9uZCAuY29tbWVudC1mb3JtLXVybCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC5jb21tZW50LXJlc3BvbmQgLmNvbW1lbnQtZm9ybS11cmwgaW5wdXQge1xuICAgICAgYm9yZGVyLXdpZHRoOiAxcHg7XG4gICAgICBwYWRkaW5nOiAxNXB4O1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgLmNvbW1lbnQtcmVzcG9uZCAuZm9ybS1zdWJtaXQge1xuICAgIGNsZWFyOiBib3RoO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgbWFyZ2luLXRvcDogMDsgfVxuICAuY29tbWVudC1yZXNwb25kIC5jb21tZW50LWZvcm0tY29tbWVudCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuICAuY29tbWVudC1yZXNwb25kIHRleHRhcmVhIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuXG4vKiBzdHlsZWxpbnQtZW5hYmxlIG5vLWRlc2NlbmRpbmctc3BlY2lmaWNpdHkgKi9cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIsXG4uZ3V0ZW5iZXJnLWNvbnRlbnQge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoLS1wYWRkaW5nLWJsb2NrKTtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBwYWRkaW5nLXRvcDogdmFyKC0tcGFkZGluZy1ibG9jayk7IH1cblxuLmd1dGVuYmVyZy1jb250ZW50ID4gKiB7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1wYXJhZ3JhcGhzLWJsb2cpO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXgtd2lkdGg6IDgwMHB4O1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA4NDBweCkge1xuICAgIC5ndXRlbmJlcmctY29udGVudCA+ICoge1xuICAgICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIGNhbGModmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCkgKiAyKSk7IH1cbiAgICAgIC5ndXRlbmJlcmctY29udGVudCA+ICouYWxpZ25mdWxsIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgICAgICAgcGFkZGluZy1yaWdodDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSBjYWxjKHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpICogMikpOyB9IH1cblxuLmVkaXRvci1zdHlsZXMtd3JhcHBlcixcbi5ndXRlbmJlcmctY29udGVudCxcbi5zaXRlLW1haW4ge1xuICAvKiBzdHlsZWxpbnQtZGlzYWJsZSBuby1kZXNjZW5kaW5nLXNwZWNpZmljaXR5ICovIH1cbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciBibG9ja3F1b3RlICsgY2l0ZSxcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciBibG9ja3F1b3RlICsgcCA+IGNpdGUsXG4gIC5ndXRlbmJlcmctY29udGVudCBibG9ja3F1b3RlICsgY2l0ZSxcbiAgLmd1dGVuYmVyZy1jb250ZW50IGJsb2NrcXVvdGUgKyBwID4gY2l0ZSxcbiAgLnNpdGUtbWFpbiBibG9ja3F1b3RlICsgY2l0ZSxcbiAgLnNpdGUtbWFpbiBibG9ja3F1b3RlICsgcCA+IGNpdGUge1xuICAgIG1hcmdpbi1ib3R0b206IDRyZW07IH1cbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciBibG9ja3F1b3RlLFxuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIGJsb2NrcXVvdGUud3AtYmxvY2stcXVvdGUsXG4gIC5ndXRlbmJlcmctY29udGVudCBibG9ja3F1b3RlLFxuICAuZ3V0ZW5iZXJnLWNvbnRlbnQgYmxvY2txdW90ZS53cC1ibG9jay1xdW90ZSxcbiAgLnNpdGUtbWFpbiBibG9ja3F1b3RlLFxuICAuc2l0ZS1tYWluIGJsb2NrcXVvdGUud3AtYmxvY2stcXVvdGUge1xuICAgIGJvcmRlci1sZWZ0OiAycHggc29saWQgdmFyKC0tY29sb3ItYmxvY2txdW90ZSk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXBhcmFncmFwaHMtYmxvZyk7XG4gICAgbWFyZ2luLWJvdHRvbTogNHJlbTtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLXRvcDogNHJlbTtcbiAgICBwYWRkaW5nOiAzLjVyZW0gNnJlbTtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMTJyZW0pOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDg0MHB4KSB7XG4gICAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIGJsb2NrcXVvdGUsXG4gICAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIGJsb2NrcXVvdGUud3AtYmxvY2stcXVvdGUsXG4gICAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgYmxvY2txdW90ZSxcbiAgICAgIC5ndXRlbmJlcmctY29udGVudCBibG9ja3F1b3RlLndwLWJsb2NrLXF1b3RlLFxuICAgICAgLnNpdGUtbWFpbiBibG9ja3F1b3RlLFxuICAgICAgLnNpdGUtbWFpbiBibG9ja3F1b3RlLndwLWJsb2NrLXF1b3RlIHtcbiAgICAgICAgcGFkZGluZzogMy41cmVtIDJyZW07XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA0cmVtKTsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIGJsb2NrcXVvdGUsXG4gICAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIGJsb2NrcXVvdGUud3AtYmxvY2stcXVvdGUsXG4gICAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgYmxvY2txdW90ZSxcbiAgICAgIC5ndXRlbmJlcmctY29udGVudCBibG9ja3F1b3RlLndwLWJsb2NrLXF1b3RlLFxuICAgICAgLnNpdGUtbWFpbiBibG9ja3F1b3RlLFxuICAgICAgLnNpdGUtbWFpbiBibG9ja3F1b3RlLndwLWJsb2NrLXF1b3RlIHtcbiAgICAgICAgcGFkZGluZzogNHJlbSA0cmVtIDRyZW0gMnJlbTsgfSB9XG4gICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciBibG9ja3F1b3RlID4gcCxcbiAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIGJsb2NrcXVvdGUud3AtYmxvY2stcXVvdGUgPiBwLFxuICAgIC5ndXRlbmJlcmctY29udGVudCBibG9ja3F1b3RlID4gcCxcbiAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgYmxvY2txdW90ZS53cC1ibG9jay1xdW90ZSA+IHAsXG4gICAgLnNpdGUtbWFpbiBibG9ja3F1b3RlID4gcCxcbiAgICAuc2l0ZS1tYWluIGJsb2NrcXVvdGUud3AtYmxvY2stcXVvdGUgPiBwIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1ibG9ja3F1b3RlKTtcbiAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1wYXJhZ3JhcGhzLWJsb2cpOyB9XG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWJsb2NrcXVvdGUuYWxpZ253aWRlLFxuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1ibG9ja3F1b3RlLmFsaWduZnVsbCxcbiAgLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay1ibG9ja3F1b3RlLmFsaWdud2lkZSxcbiAgLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay1ibG9ja3F1b3RlLmFsaWduZnVsbCxcbiAgLnNpdGUtbWFpbiAud3AtYmxvY2stYmxvY2txdW90ZS5hbGlnbndpZGUsXG4gIC5zaXRlLW1haW4gLndwLWJsb2NrLWJsb2NrcXVvdGUuYWxpZ25mdWxsIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSBjYWxjKHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpICogMikpOyB9XG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWJsb2NrcXVvdGUgYmxvY2txdW90ZSxcbiAgLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay1ibG9ja3F1b3RlIGJsb2NrcXVvdGUsXG4gIC5zaXRlLW1haW4gLndwLWJsb2NrLWJsb2NrcXVvdGUgYmxvY2txdW90ZSB7XG4gICAgcGFkZGluZy1ib3R0b206IDA7IH1cbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciBwcmUsXG4gIC5ndXRlbmJlcmctY29udGVudCBwcmUsXG4gIC5zaXRlLW1haW4gcHJlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1iYWNrZ3JvdW5kLWNvZGUtYmxvY2spO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJhY2tncm91bmQtY29kZS1ibG9jayk7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1jb2RlLXRleHQpO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LW1vbm9zcGFjZSk7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtMTYpO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1wYXJhZ3JhcGhzLWJsb2cpO1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLW1hcmdpbi1iZXR3ZWVuLXRleHQtZWxlbWVudHMpO1xuICAgIG1hcmdpbi10b3A6IHZhcigtLW1hcmdpbi1iZXR3ZWVuLXRleHQtZWxlbWVudHMpO1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIHBhZGRpbmc6IDE1cHggMTZweCAxNHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aGl0ZS1zcGFjZTogcHJlO1xuICAgIHdvcmQtd3JhcDogYnJlYWstd29yZDsgfVxuICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgcHJlIGNvZGUsXG4gICAgLmd1dGVuYmVyZy1jb250ZW50IHByZSBjb2RlLFxuICAgIC5zaXRlLW1haW4gcHJlIGNvZGUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItY29kZS10ZXh0KTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTQ4MHB4KSB7XG4gICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stY29kZSxcbiAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLWNvZGUsXG4gICAgLnNpdGUtbWFpbiAud3AtYmxvY2stY29kZSB7XG4gICAgICBtYXJnaW4tbGVmdDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIGNhbGModmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCkgKiA0KSk7IH0gfVxuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1jb2RlIHByZSxcbiAgLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay1jb2RlIHByZSxcbiAgLnNpdGUtbWFpbiAud3AtYmxvY2stY29kZSBwcmUge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7IH1cbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stY29sdW1ucy5hbGlnbmZ1bGwsXG4gIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stY29sdW1ucy5hbGlnbmZ1bGwsXG4gIC5zaXRlLW1haW4gLndwLWJsb2NrLWNvbHVtbnMuYWxpZ25mdWxsIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpOyB9XG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWNvbHVtbnMuY29sdW1ucy0xLmFsaWduZnVsbCxcbiAgLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay1jb2x1bW5zLmNvbHVtbnMtMS5hbGlnbmZ1bGwsXG4gIC5zaXRlLW1haW4gLndwLWJsb2NrLWNvbHVtbnMuY29sdW1ucy0xLmFsaWduZnVsbCB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gY2FsYyh2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKSAqIDIpKTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogOTAwcHgpIHtcbiAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1jb2x1bW5zLmNvbHVtbnMtMSxcbiAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLWNvbHVtbnMuY29sdW1ucy0xLFxuICAgIC5zaXRlLW1haW4gLndwLWJsb2NrLWNvbHVtbnMuY29sdW1ucy0xIHtcbiAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICBncmlkLWdhcDogMWVtO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSBjYWxjKHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpICogMikpOyB9XG4gICAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1jb2x1bW5zLmNvbHVtbnMtMSAud3AtYmxvY2stY29sdW1uLFxuICAgICAgLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay1jb2x1bW5zLmNvbHVtbnMtMSAud3AtYmxvY2stY29sdW1uLFxuICAgICAgLnNpdGUtbWFpbiAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTEgLndwLWJsb2NrLWNvbHVtbiB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1jb2x1bW5zLmNvbHVtbnMtMSxcbiAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLWNvbHVtbnMuY29sdW1ucy0xLFxuICAgIC5zaXRlLW1haW4gLndwLWJsb2NrLWNvbHVtbnMuY29sdW1ucy0xIHtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDEsIDFmcik7IH0gfVxuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1jb2x1bW5zLmNvbHVtbnMtMi5hbGlnbmZ1bGwsXG4gIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTIuYWxpZ25mdWxsLFxuICAuc2l0ZS1tYWluIC53cC1ibG9jay1jb2x1bW5zLmNvbHVtbnMtMi5hbGlnbmZ1bGwge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIGNhbGModmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCkgKiAyKSk7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDkwMHB4KSB7XG4gICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTIsXG4gICAgLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay1jb2x1bW5zLmNvbHVtbnMtMixcbiAgICAuc2l0ZS1tYWluIC53cC1ibG9jay1jb2x1bW5zLmNvbHVtbnMtMiB7XG4gICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgZ3JpZC1nYXA6IDFlbTtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gY2FsYyh2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKSAqIDIpKTsgfVxuICAgICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTIgLndwLWJsb2NrLWNvbHVtbixcbiAgICAgIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTIgLndwLWJsb2NrLWNvbHVtbixcbiAgICAgIC5zaXRlLW1haW4gLndwLWJsb2NrLWNvbHVtbnMuY29sdW1ucy0yIC53cC1ibG9jay1jb2x1bW4ge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTIsXG4gICAgLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay1jb2x1bW5zLmNvbHVtbnMtMixcbiAgICAuc2l0ZS1tYWluIC53cC1ibG9jay1jb2x1bW5zLmNvbHVtbnMtMiB7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgxLCAxZnIpOyB9IH1cbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTMuYWxpZ25mdWxsLFxuICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLWNvbHVtbnMuY29sdW1ucy0zLmFsaWduZnVsbCxcbiAgLnNpdGUtbWFpbiAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTMuYWxpZ25mdWxsIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSBjYWxjKHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpICogMikpOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5MDBweCkge1xuICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWNvbHVtbnMuY29sdW1ucy0zLFxuICAgIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTMsXG4gICAgLnNpdGUtbWFpbiAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTMge1xuICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgIGdyaWQtZ2FwOiAxZW07XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIGNhbGModmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCkgKiAyKSk7IH1cbiAgICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWNvbHVtbnMuY29sdW1ucy0zIC53cC1ibG9jay1jb2x1bW4sXG4gICAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLWNvbHVtbnMuY29sdW1ucy0zIC53cC1ibG9jay1jb2x1bW4sXG4gICAgICAuc2l0ZS1tYWluIC53cC1ibG9jay1jb2x1bW5zLmNvbHVtbnMtMyAud3AtYmxvY2stY29sdW1uIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB3aWR0aDogMTAwJTsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWNvbHVtbnMuY29sdW1ucy0zLFxuICAgIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTMsXG4gICAgLnNpdGUtbWFpbiAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTMge1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMSwgMWZyKTsgfSB9XG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWNvbHVtbnMuY29sdW1ucy00LmFsaWduZnVsbCxcbiAgLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay1jb2x1bW5zLmNvbHVtbnMtNC5hbGlnbmZ1bGwsXG4gIC5zaXRlLW1haW4gLndwLWJsb2NrLWNvbHVtbnMuY29sdW1ucy00LmFsaWduZnVsbCB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gY2FsYyh2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKSAqIDIpKTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogOTAwcHgpIHtcbiAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1jb2x1bW5zLmNvbHVtbnMtNCxcbiAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLWNvbHVtbnMuY29sdW1ucy00LFxuICAgIC5zaXRlLW1haW4gLndwLWJsb2NrLWNvbHVtbnMuY29sdW1ucy00IHtcbiAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICBncmlkLWdhcDogMWVtO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSBjYWxjKHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpICogMikpOyB9XG4gICAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1jb2x1bW5zLmNvbHVtbnMtNCAud3AtYmxvY2stY29sdW1uLFxuICAgICAgLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay1jb2x1bW5zLmNvbHVtbnMtNCAud3AtYmxvY2stY29sdW1uLFxuICAgICAgLnNpdGUtbWFpbiAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTQgLndwLWJsb2NrLWNvbHVtbiB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1jb2x1bW5zLmNvbHVtbnMtNCxcbiAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLWNvbHVtbnMuY29sdW1ucy00LFxuICAgIC5zaXRlLW1haW4gLndwLWJsb2NrLWNvbHVtbnMuY29sdW1ucy00IHtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDEsIDFmcik7IH0gfVxuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1jb2x1bW5zLmNvbHVtbnMtNS5hbGlnbmZ1bGwsXG4gIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTUuYWxpZ25mdWxsLFxuICAuc2l0ZS1tYWluIC53cC1ibG9jay1jb2x1bW5zLmNvbHVtbnMtNS5hbGlnbmZ1bGwge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIGNhbGModmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCkgKiAyKSk7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDkwMHB4KSB7XG4gICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTUsXG4gICAgLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay1jb2x1bW5zLmNvbHVtbnMtNSxcbiAgICAuc2l0ZS1tYWluIC53cC1ibG9jay1jb2x1bW5zLmNvbHVtbnMtNSB7XG4gICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgZ3JpZC1nYXA6IDFlbTtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gY2FsYyh2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKSAqIDIpKTsgfVxuICAgICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTUgLndwLWJsb2NrLWNvbHVtbixcbiAgICAgIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTUgLndwLWJsb2NrLWNvbHVtbixcbiAgICAgIC5zaXRlLW1haW4gLndwLWJsb2NrLWNvbHVtbnMuY29sdW1ucy01IC53cC1ibG9jay1jb2x1bW4ge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTUsXG4gICAgLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay1jb2x1bW5zLmNvbHVtbnMtNSxcbiAgICAuc2l0ZS1tYWluIC53cC1ibG9jay1jb2x1bW5zLmNvbHVtbnMtNSB7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgxLCAxZnIpOyB9IH1cbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTYuYWxpZ25mdWxsLFxuICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLWNvbHVtbnMuY29sdW1ucy02LmFsaWduZnVsbCxcbiAgLnNpdGUtbWFpbiAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTYuYWxpZ25mdWxsIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSBjYWxjKHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpICogMikpOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5MDBweCkge1xuICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWNvbHVtbnMuY29sdW1ucy02LFxuICAgIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTYsXG4gICAgLnNpdGUtbWFpbiAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTYge1xuICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgIGdyaWQtZ2FwOiAxZW07XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIGNhbGModmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCkgKiAyKSk7IH1cbiAgICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWNvbHVtbnMuY29sdW1ucy02IC53cC1ibG9jay1jb2x1bW4sXG4gICAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLWNvbHVtbnMuY29sdW1ucy02IC53cC1ibG9jay1jb2x1bW4sXG4gICAgICAuc2l0ZS1tYWluIC53cC1ibG9jay1jb2x1bW5zLmNvbHVtbnMtNiAud3AtYmxvY2stY29sdW1uIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB3aWR0aDogMTAwJTsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWNvbHVtbnMuY29sdW1ucy02LFxuICAgIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTYsXG4gICAgLnNpdGUtbWFpbiAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTYge1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMSwgMWZyKTsgfSB9XG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWNvbHVtbnMuY29sdW1ucy03LmFsaWduZnVsbCxcbiAgLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay1jb2x1bW5zLmNvbHVtbnMtNy5hbGlnbmZ1bGwsXG4gIC5zaXRlLW1haW4gLndwLWJsb2NrLWNvbHVtbnMuY29sdW1ucy03LmFsaWduZnVsbCB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gY2FsYyh2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKSAqIDIpKTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogOTAwcHgpIHtcbiAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1jb2x1bW5zLmNvbHVtbnMtNyxcbiAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLWNvbHVtbnMuY29sdW1ucy03LFxuICAgIC5zaXRlLW1haW4gLndwLWJsb2NrLWNvbHVtbnMuY29sdW1ucy03IHtcbiAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICBncmlkLWdhcDogMWVtO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSBjYWxjKHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpICogMikpOyB9XG4gICAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1jb2x1bW5zLmNvbHVtbnMtNyAud3AtYmxvY2stY29sdW1uLFxuICAgICAgLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay1jb2x1bW5zLmNvbHVtbnMtNyAud3AtYmxvY2stY29sdW1uLFxuICAgICAgLnNpdGUtbWFpbiAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTcgLndwLWJsb2NrLWNvbHVtbiB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1jb2x1bW5zLmNvbHVtbnMtNyxcbiAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLWNvbHVtbnMuY29sdW1ucy03LFxuICAgIC5zaXRlLW1haW4gLndwLWJsb2NrLWNvbHVtbnMuY29sdW1ucy03IHtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDEsIDFmcik7IH0gfVxuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1jb2x1bW5zLmNvbHVtbnMtOC5hbGlnbmZ1bGwsXG4gIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTguYWxpZ25mdWxsLFxuICAuc2l0ZS1tYWluIC53cC1ibG9jay1jb2x1bW5zLmNvbHVtbnMtOC5hbGlnbmZ1bGwge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIGNhbGModmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCkgKiAyKSk7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDkwMHB4KSB7XG4gICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTgsXG4gICAgLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay1jb2x1bW5zLmNvbHVtbnMtOCxcbiAgICAuc2l0ZS1tYWluIC53cC1ibG9jay1jb2x1bW5zLmNvbHVtbnMtOCB7XG4gICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgZ3JpZC1nYXA6IDFlbTtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gY2FsYyh2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKSAqIDIpKTsgfVxuICAgICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTggLndwLWJsb2NrLWNvbHVtbixcbiAgICAgIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTggLndwLWJsb2NrLWNvbHVtbixcbiAgICAgIC5zaXRlLW1haW4gLndwLWJsb2NrLWNvbHVtbnMuY29sdW1ucy04IC53cC1ibG9jay1jb2x1bW4ge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTgsXG4gICAgLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay1jb2x1bW5zLmNvbHVtbnMtOCxcbiAgICAuc2l0ZS1tYWluIC53cC1ibG9jay1jb2x1bW5zLmNvbHVtbnMtOCB7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgxLCAxZnIpOyB9IH1cbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTkuYWxpZ25mdWxsLFxuICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLWNvbHVtbnMuY29sdW1ucy05LmFsaWduZnVsbCxcbiAgLnNpdGUtbWFpbiAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTkuYWxpZ25mdWxsIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSBjYWxjKHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpICogMikpOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5MDBweCkge1xuICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWNvbHVtbnMuY29sdW1ucy05LFxuICAgIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTksXG4gICAgLnNpdGUtbWFpbiAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTkge1xuICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgIGdyaWQtZ2FwOiAxZW07XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIGNhbGModmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCkgKiAyKSk7IH1cbiAgICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWNvbHVtbnMuY29sdW1ucy05IC53cC1ibG9jay1jb2x1bW4sXG4gICAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLWNvbHVtbnMuY29sdW1ucy05IC53cC1ibG9jay1jb2x1bW4sXG4gICAgICAuc2l0ZS1tYWluIC53cC1ibG9jay1jb2x1bW5zLmNvbHVtbnMtOSAud3AtYmxvY2stY29sdW1uIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB3aWR0aDogMTAwJTsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWNvbHVtbnMuY29sdW1ucy05LFxuICAgIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTksXG4gICAgLnNpdGUtbWFpbiAud3AtYmxvY2stY29sdW1ucy5jb2x1bW5zLTkge1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMSwgMWZyKTsgfSB9XG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWNvdmVyX19pbm5lci1jb250YWluZXIsXG4gIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stY292ZXJfX2lubmVyLWNvbnRhaW5lcixcbiAgLnNpdGUtbWFpbiAud3AtYmxvY2stY292ZXJfX2lubmVyLWNvbnRhaW5lciB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTsgfVxuICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWNvdmVyX19pbm5lci1jb250YWluZXIgcCxcbiAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLWNvdmVyX19pbm5lci1jb250YWluZXIgcCxcbiAgICAuc2l0ZS1tYWluIC53cC1ibG9jay1jb3Zlcl9faW5uZXItY29udGFpbmVyIHAge1xuICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWNvcmUtaGVhZGluZyk7IH1cbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stZW1iZWQgaWZyYW1lLFxuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1lbWJlZCB2aWRlbyxcbiAgLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay1lbWJlZCBpZnJhbWUsXG4gIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stZW1iZWQgdmlkZW8sXG4gIC5zaXRlLW1haW4gLndwLWJsb2NrLWVtYmVkIGlmcmFtZSxcbiAgLnNpdGUtbWFpbiAud3AtYmxvY2stZW1iZWQgdmlkZW8ge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB3aWR0aDogMTAwJTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTQ4MHB4KSB7XG4gICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stZW1iZWQuYWxpZ253aWRlLFxuICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWVtYmVkLmFsaWduZnVsbCxcbiAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLWVtYmVkLmFsaWdud2lkZSxcbiAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLWVtYmVkLmFsaWduZnVsbCxcbiAgICAuc2l0ZS1tYWluIC53cC1ibG9jay1lbWJlZC5hbGlnbndpZGUsXG4gICAgLnNpdGUtbWFpbiAud3AtYmxvY2stZW1iZWQuYWxpZ25mdWxsIHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSBjYWxjKHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpICogMikpOyB9IH1cbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stZW1iZWQuYWxpZ25mdWxsLFxuICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLWVtYmVkLmFsaWduZnVsbCxcbiAgLnNpdGUtbWFpbiAud3AtYmxvY2stZW1iZWQuYWxpZ25mdWxsIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmlzLWdyaWQsXG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWdhbGxlcnksXG4gIC5ndXRlbmJlcmctY29udGVudCAuaXMtZ3JpZCxcbiAgLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay1nYWxsZXJ5LFxuICAuc2l0ZS1tYWluIC5pcy1ncmlkLFxuICAuc2l0ZS1tYWluIC53cC1ibG9jay1nYWxsZXJ5IHtcbiAgICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuaXMtZ3JpZCBmaWdjYXB0aW9uLFxuICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWdhbGxlcnkgZmlnY2FwdGlvbixcbiAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLmlzLWdyaWQgZmlnY2FwdGlvbixcbiAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLWdhbGxlcnkgZmlnY2FwdGlvbixcbiAgICAuc2l0ZS1tYWluIC5pcy1ncmlkIGZpZ2NhcHRpb24sXG4gICAgLnNpdGUtbWFpbiAud3AtYmxvY2stZ2FsbGVyeSBmaWdjYXB0aW9uIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0xNik7XG4gICAgICBsaW5lLWhlaWdodDogMS41NTtcbiAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLW1hcmdpbi1iZXR3ZWVuLXRleHQtZWxlbWVudHMpO1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5pcy1ncmlkIGltZyxcbiAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1nYWxsZXJ5IGltZyxcbiAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLmlzLWdyaWQgaW1nLFxuICAgIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stZ2FsbGVyeSBpbWcsXG4gICAgLnNpdGUtbWFpbiAuaXMtZ3JpZCBpbWcsXG4gICAgLnNpdGUtbWFpbiAud3AtYmxvY2stZ2FsbGVyeSBpbWcge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmlzLWdyaWQuYWxpZ253aWRlLFxuICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWdhbGxlcnkuYWxpZ253aWRlLFxuICAgIC5ndXRlbmJlcmctY29udGVudCAuaXMtZ3JpZC5hbGlnbndpZGUsXG4gICAgLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay1nYWxsZXJ5LmFsaWdud2lkZSxcbiAgICAuc2l0ZS1tYWluIC5pcy1ncmlkLmFsaWdud2lkZSxcbiAgICAuc2l0ZS1tYWluIC53cC1ibG9jay1nYWxsZXJ5LmFsaWdud2lkZSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICAgICAgcGFkZGluZy1yaWdodDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7IH1cbiAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5pcy1ncmlkLmFsaWduZnVsbCxcbiAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1nYWxsZXJ5LmFsaWduZnVsbCxcbiAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLmlzLWdyaWQuYWxpZ25mdWxsLFxuICAgIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stZ2FsbGVyeS5hbGlnbmZ1bGwsXG4gICAgLnNpdGUtbWFpbiAuaXMtZ3JpZC5hbGlnbmZ1bGwsXG4gICAgLnNpdGUtbWFpbiAud3AtYmxvY2stZ2FsbGVyeS5hbGlnbmZ1bGwge1xuICAgICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIGNhbGModmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCkgKiAyKSk7IH1cbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuaXMtZ3JpZCxcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuYmxvY2tzLWdhbGxlcnktZ3JpZCxcbiAgLmd1dGVuYmVyZy1jb250ZW50IC5pcy1ncmlkLFxuICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLmJsb2Nrcy1nYWxsZXJ5LWdyaWQsXG4gIC5zaXRlLW1haW4gLmlzLWdyaWQsXG4gIC5zaXRlLW1haW4gLmJsb2Nrcy1nYWxsZXJ5LWdyaWQge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuaXMtZ3JpZCAuYmxvY2tzLWdhbGxlcnktaXRlbSxcbiAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5ibG9ja3MtZ2FsbGVyeS1ncmlkIC5ibG9ja3MtZ2FsbGVyeS1pdGVtLFxuICAgIC5ndXRlbmJlcmctY29udGVudCAuaXMtZ3JpZCAuYmxvY2tzLWdhbGxlcnktaXRlbSxcbiAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLmJsb2Nrcy1nYWxsZXJ5LWdyaWQgLmJsb2Nrcy1nYWxsZXJ5LWl0ZW0sXG4gICAgLnNpdGUtbWFpbiAuaXMtZ3JpZCAuYmxvY2tzLWdhbGxlcnktaXRlbSxcbiAgICAuc2l0ZS1tYWluIC5ibG9ja3MtZ2FsbGVyeS1ncmlkIC5ibG9ja3MtZ2FsbGVyeS1pdGVtIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmlzLWdyaWQuY29sdW1ucy0yLFxuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5jb2x1bW5zLTIgLmJsb2Nrcy1nYWxsZXJ5LWdyaWQsXG4gIC5ndXRlbmJlcmctY29udGVudCAuaXMtZ3JpZC5jb2x1bW5zLTIsXG4gIC5ndXRlbmJlcmctY29udGVudCAuY29sdW1ucy0yIC5ibG9ja3MtZ2FsbGVyeS1ncmlkLFxuICAuc2l0ZS1tYWluIC5pcy1ncmlkLmNvbHVtbnMtMixcbiAgLnNpdGUtbWFpbiAuY29sdW1ucy0yIC5ibG9ja3MtZ2FsbGVyeS1ncmlkIHtcbiAgICBncmlkLWdhcDogM3JlbTtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDEwMDBweCkge1xuICAgICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuaXMtZ3JpZC5jb2x1bW5zLTIsXG4gICAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5jb2x1bW5zLTIgLmJsb2Nrcy1nYWxsZXJ5LWdyaWQsXG4gICAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLmlzLWdyaWQuY29sdW1ucy0yLFxuICAgICAgLmd1dGVuYmVyZy1jb250ZW50IC5jb2x1bW5zLTIgLmJsb2Nrcy1nYWxsZXJ5LWdyaWQsXG4gICAgICAuc2l0ZS1tYWluIC5pcy1ncmlkLmNvbHVtbnMtMixcbiAgICAgIC5zaXRlLW1haW4gLmNvbHVtbnMtMiAuYmxvY2tzLWdhbGxlcnktZ3JpZCB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA2NzBweCkge1xuICAgICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuaXMtZ3JpZC5jb2x1bW5zLTIsXG4gICAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5jb2x1bW5zLTIgLmJsb2Nrcy1nYWxsZXJ5LWdyaWQsXG4gICAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLmlzLWdyaWQuY29sdW1ucy0yLFxuICAgICAgLmd1dGVuYmVyZy1jb250ZW50IC5jb2x1bW5zLTIgLmJsb2Nrcy1nYWxsZXJ5LWdyaWQsXG4gICAgICAuc2l0ZS1tYWluIC5pcy1ncmlkLmNvbHVtbnMtMixcbiAgICAgIC5zaXRlLW1haW4gLmNvbHVtbnMtMiAuYmxvY2tzLWdhbGxlcnktZ3JpZCB7XG4gICAgICAgIGdyaWQtZ2FwOiAycmVtO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpOyB9IH1cbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuaXMtZ3JpZC5jb2x1bW5zLTMsXG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmNvbHVtbnMtMyAuYmxvY2tzLWdhbGxlcnktZ3JpZCxcbiAgLmd1dGVuYmVyZy1jb250ZW50IC5pcy1ncmlkLmNvbHVtbnMtMyxcbiAgLmd1dGVuYmVyZy1jb250ZW50IC5jb2x1bW5zLTMgLmJsb2Nrcy1nYWxsZXJ5LWdyaWQsXG4gIC5zaXRlLW1haW4gLmlzLWdyaWQuY29sdW1ucy0zLFxuICAuc2l0ZS1tYWluIC5jb2x1bW5zLTMgLmJsb2Nrcy1nYWxsZXJ5LWdyaWQge1xuICAgIGdyaWQtZ2FwOiAzcmVtO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogMTAwMHB4KSB7XG4gICAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5pcy1ncmlkLmNvbHVtbnMtMyxcbiAgICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmNvbHVtbnMtMyAuYmxvY2tzLWdhbGxlcnktZ3JpZCxcbiAgICAgIC5ndXRlbmJlcmctY29udGVudCAuaXMtZ3JpZC5jb2x1bW5zLTMsXG4gICAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLmNvbHVtbnMtMyAuYmxvY2tzLWdhbGxlcnktZ3JpZCxcbiAgICAgIC5zaXRlLW1haW4gLmlzLWdyaWQuY29sdW1ucy0zLFxuICAgICAgLnNpdGUtbWFpbiAuY29sdW1ucy0zIC5ibG9ja3MtZ2FsbGVyeS1ncmlkIHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDY3MHB4KSB7XG4gICAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5pcy1ncmlkLmNvbHVtbnMtMyxcbiAgICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmNvbHVtbnMtMyAuYmxvY2tzLWdhbGxlcnktZ3JpZCxcbiAgICAgIC5ndXRlbmJlcmctY29udGVudCAuaXMtZ3JpZC5jb2x1bW5zLTMsXG4gICAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLmNvbHVtbnMtMyAuYmxvY2tzLWdhbGxlcnktZ3JpZCxcbiAgICAgIC5zaXRlLW1haW4gLmlzLWdyaWQuY29sdW1ucy0zLFxuICAgICAgLnNpdGUtbWFpbiAuY29sdW1ucy0zIC5ibG9ja3MtZ2FsbGVyeS1ncmlkIHtcbiAgICAgICAgZ3JpZC1nYXA6IDJyZW07XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7IH0gfVxuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5pcy1ncmlkLmNvbHVtbnMtNCxcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuY29sdW1ucy00IC5ibG9ja3MtZ2FsbGVyeS1ncmlkLFxuICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLmlzLWdyaWQuY29sdW1ucy00LFxuICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLmNvbHVtbnMtNCAuYmxvY2tzLWdhbGxlcnktZ3JpZCxcbiAgLnNpdGUtbWFpbiAuaXMtZ3JpZC5jb2x1bW5zLTQsXG4gIC5zaXRlLW1haW4gLmNvbHVtbnMtNCAuYmxvY2tzLWdhbGxlcnktZ3JpZCB7XG4gICAgZ3JpZC1nYXA6IDNyZW07XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNCwgMWZyKTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMDAwcHgpIHtcbiAgICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmlzLWdyaWQuY29sdW1ucy00LFxuICAgICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuY29sdW1ucy00IC5ibG9ja3MtZ2FsbGVyeS1ncmlkLFxuICAgICAgLmd1dGVuYmVyZy1jb250ZW50IC5pcy1ncmlkLmNvbHVtbnMtNCxcbiAgICAgIC5ndXRlbmJlcmctY29udGVudCAuY29sdW1ucy00IC5ibG9ja3MtZ2FsbGVyeS1ncmlkLFxuICAgICAgLnNpdGUtbWFpbiAuaXMtZ3JpZC5jb2x1bW5zLTQsXG4gICAgICAuc2l0ZS1tYWluIC5jb2x1bW5zLTQgLmJsb2Nrcy1nYWxsZXJ5LWdyaWQge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCAxZnIpOyB9IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNjcwcHgpIHtcbiAgICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmlzLWdyaWQuY29sdW1ucy00LFxuICAgICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuY29sdW1ucy00IC5ibG9ja3MtZ2FsbGVyeS1ncmlkLFxuICAgICAgLmd1dGVuYmVyZy1jb250ZW50IC5pcy1ncmlkLmNvbHVtbnMtNCxcbiAgICAgIC5ndXRlbmJlcmctY29udGVudCAuY29sdW1ucy00IC5ibG9ja3MtZ2FsbGVyeS1ncmlkLFxuICAgICAgLnNpdGUtbWFpbiAuaXMtZ3JpZC5jb2x1bW5zLTQsXG4gICAgICAuc2l0ZS1tYWluIC5jb2x1bW5zLTQgLmJsb2Nrcy1nYWxsZXJ5LWdyaWQge1xuICAgICAgICBncmlkLWdhcDogMnJlbTtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTsgfSB9XG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmlzLWdyaWQuY29sdW1ucy01LFxuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5jb2x1bW5zLTUgLmJsb2Nrcy1nYWxsZXJ5LWdyaWQsXG4gIC5ndXRlbmJlcmctY29udGVudCAuaXMtZ3JpZC5jb2x1bW5zLTUsXG4gIC5ndXRlbmJlcmctY29udGVudCAuY29sdW1ucy01IC5ibG9ja3MtZ2FsbGVyeS1ncmlkLFxuICAuc2l0ZS1tYWluIC5pcy1ncmlkLmNvbHVtbnMtNSxcbiAgLnNpdGUtbWFpbiAuY29sdW1ucy01IC5ibG9ja3MtZ2FsbGVyeS1ncmlkIHtcbiAgICBncmlkLWdhcDogM3JlbTtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg1LCAxZnIpOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDEwMDBweCkge1xuICAgICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuaXMtZ3JpZC5jb2x1bW5zLTUsXG4gICAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5jb2x1bW5zLTUgLmJsb2Nrcy1nYWxsZXJ5LWdyaWQsXG4gICAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLmlzLWdyaWQuY29sdW1ucy01LFxuICAgICAgLmd1dGVuYmVyZy1jb250ZW50IC5jb2x1bW5zLTUgLmJsb2Nrcy1nYWxsZXJ5LWdyaWQsXG4gICAgICAuc2l0ZS1tYWluIC5pcy1ncmlkLmNvbHVtbnMtNSxcbiAgICAgIC5zaXRlLW1haW4gLmNvbHVtbnMtNSAuYmxvY2tzLWdhbGxlcnktZ3JpZCB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA2NzBweCkge1xuICAgICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuaXMtZ3JpZC5jb2x1bW5zLTUsXG4gICAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5jb2x1bW5zLTUgLmJsb2Nrcy1nYWxsZXJ5LWdyaWQsXG4gICAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLmlzLWdyaWQuY29sdW1ucy01LFxuICAgICAgLmd1dGVuYmVyZy1jb250ZW50IC5jb2x1bW5zLTUgLmJsb2Nrcy1nYWxsZXJ5LWdyaWQsXG4gICAgICAuc2l0ZS1tYWluIC5pcy1ncmlkLmNvbHVtbnMtNSxcbiAgICAgIC5zaXRlLW1haW4gLmNvbHVtbnMtNSAuYmxvY2tzLWdhbGxlcnktZ3JpZCB7XG4gICAgICAgIGdyaWQtZ2FwOiAycmVtO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpOyB9IH1cbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuaXMtZ3JpZC5jb2x1bW5zLTYsXG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmNvbHVtbnMtNiAuYmxvY2tzLWdhbGxlcnktZ3JpZCxcbiAgLmd1dGVuYmVyZy1jb250ZW50IC5pcy1ncmlkLmNvbHVtbnMtNixcbiAgLmd1dGVuYmVyZy1jb250ZW50IC5jb2x1bW5zLTYgLmJsb2Nrcy1nYWxsZXJ5LWdyaWQsXG4gIC5zaXRlLW1haW4gLmlzLWdyaWQuY29sdW1ucy02LFxuICAuc2l0ZS1tYWluIC5jb2x1bW5zLTYgLmJsb2Nrcy1nYWxsZXJ5LWdyaWQge1xuICAgIGdyaWQtZ2FwOiAzcmVtO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDYsIDFmcik7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogMTAwMHB4KSB7XG4gICAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5pcy1ncmlkLmNvbHVtbnMtNixcbiAgICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmNvbHVtbnMtNiAuYmxvY2tzLWdhbGxlcnktZ3JpZCxcbiAgICAgIC5ndXRlbmJlcmctY29udGVudCAuaXMtZ3JpZC5jb2x1bW5zLTYsXG4gICAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLmNvbHVtbnMtNiAuYmxvY2tzLWdhbGxlcnktZ3JpZCxcbiAgICAgIC5zaXRlLW1haW4gLmlzLWdyaWQuY29sdW1ucy02LFxuICAgICAgLnNpdGUtbWFpbiAuY29sdW1ucy02IC5ibG9ja3MtZ2FsbGVyeS1ncmlkIHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDY3MHB4KSB7XG4gICAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5pcy1ncmlkLmNvbHVtbnMtNixcbiAgICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmNvbHVtbnMtNiAuYmxvY2tzLWdhbGxlcnktZ3JpZCxcbiAgICAgIC5ndXRlbmJlcmctY29udGVudCAuaXMtZ3JpZC5jb2x1bW5zLTYsXG4gICAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLmNvbHVtbnMtNiAuYmxvY2tzLWdhbGxlcnktZ3JpZCxcbiAgICAgIC5zaXRlLW1haW4gLmlzLWdyaWQuY29sdW1ucy02LFxuICAgICAgLnNpdGUtbWFpbiAuY29sdW1ucy02IC5ibG9ja3MtZ2FsbGVyeS1ncmlkIHtcbiAgICAgICAgZ3JpZC1nYXA6IDJyZW07XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7IH0gfVxuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5pcy1ncmlkLmNvbHVtbnMtNyxcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuY29sdW1ucy03IC5ibG9ja3MtZ2FsbGVyeS1ncmlkLFxuICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLmlzLWdyaWQuY29sdW1ucy03LFxuICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLmNvbHVtbnMtNyAuYmxvY2tzLWdhbGxlcnktZ3JpZCxcbiAgLnNpdGUtbWFpbiAuaXMtZ3JpZC5jb2x1bW5zLTcsXG4gIC5zaXRlLW1haW4gLmNvbHVtbnMtNyAuYmxvY2tzLWdhbGxlcnktZ3JpZCB7XG4gICAgZ3JpZC1nYXA6IDNyZW07XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNywgMWZyKTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMDAwcHgpIHtcbiAgICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmlzLWdyaWQuY29sdW1ucy03LFxuICAgICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuY29sdW1ucy03IC5ibG9ja3MtZ2FsbGVyeS1ncmlkLFxuICAgICAgLmd1dGVuYmVyZy1jb250ZW50IC5pcy1ncmlkLmNvbHVtbnMtNyxcbiAgICAgIC5ndXRlbmJlcmctY29udGVudCAuY29sdW1ucy03IC5ibG9ja3MtZ2FsbGVyeS1ncmlkLFxuICAgICAgLnNpdGUtbWFpbiAuaXMtZ3JpZC5jb2x1bW5zLTcsXG4gICAgICAuc2l0ZS1tYWluIC5jb2x1bW5zLTcgLmJsb2Nrcy1nYWxsZXJ5LWdyaWQge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCAxZnIpOyB9IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNjcwcHgpIHtcbiAgICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmlzLWdyaWQuY29sdW1ucy03LFxuICAgICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuY29sdW1ucy03IC5ibG9ja3MtZ2FsbGVyeS1ncmlkLFxuICAgICAgLmd1dGVuYmVyZy1jb250ZW50IC5pcy1ncmlkLmNvbHVtbnMtNyxcbiAgICAgIC5ndXRlbmJlcmctY29udGVudCAuY29sdW1ucy03IC5ibG9ja3MtZ2FsbGVyeS1ncmlkLFxuICAgICAgLnNpdGUtbWFpbiAuaXMtZ3JpZC5jb2x1bW5zLTcsXG4gICAgICAuc2l0ZS1tYWluIC5jb2x1bW5zLTcgLmJsb2Nrcy1nYWxsZXJ5LWdyaWQge1xuICAgICAgICBncmlkLWdhcDogMnJlbTtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTsgfSB9XG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmlzLWdyaWQuY29sdW1ucy04LFxuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5jb2x1bW5zLTggLmJsb2Nrcy1nYWxsZXJ5LWdyaWQsXG4gIC5ndXRlbmJlcmctY29udGVudCAuaXMtZ3JpZC5jb2x1bW5zLTgsXG4gIC5ndXRlbmJlcmctY29udGVudCAuY29sdW1ucy04IC5ibG9ja3MtZ2FsbGVyeS1ncmlkLFxuICAuc2l0ZS1tYWluIC5pcy1ncmlkLmNvbHVtbnMtOCxcbiAgLnNpdGUtbWFpbiAuY29sdW1ucy04IC5ibG9ja3MtZ2FsbGVyeS1ncmlkIHtcbiAgICBncmlkLWdhcDogM3JlbTtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg4LCAxZnIpOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDEwMDBweCkge1xuICAgICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuaXMtZ3JpZC5jb2x1bW5zLTgsXG4gICAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5jb2x1bW5zLTggLmJsb2Nrcy1nYWxsZXJ5LWdyaWQsXG4gICAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLmlzLWdyaWQuY29sdW1ucy04LFxuICAgICAgLmd1dGVuYmVyZy1jb250ZW50IC5jb2x1bW5zLTggLmJsb2Nrcy1nYWxsZXJ5LWdyaWQsXG4gICAgICAuc2l0ZS1tYWluIC5pcy1ncmlkLmNvbHVtbnMtOCxcbiAgICAgIC5zaXRlLW1haW4gLmNvbHVtbnMtOCAuYmxvY2tzLWdhbGxlcnktZ3JpZCB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA2NzBweCkge1xuICAgICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuaXMtZ3JpZC5jb2x1bW5zLTgsXG4gICAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5jb2x1bW5zLTggLmJsb2Nrcy1nYWxsZXJ5LWdyaWQsXG4gICAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLmlzLWdyaWQuY29sdW1ucy04LFxuICAgICAgLmd1dGVuYmVyZy1jb250ZW50IC5jb2x1bW5zLTggLmJsb2Nrcy1nYWxsZXJ5LWdyaWQsXG4gICAgICAuc2l0ZS1tYWluIC5pcy1ncmlkLmNvbHVtbnMtOCxcbiAgICAgIC5zaXRlLW1haW4gLmNvbHVtbnMtOCAuYmxvY2tzLWdhbGxlcnktZ3JpZCB7XG4gICAgICAgIGdyaWQtZ2FwOiAycmVtO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpOyB9IH1cbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuaXMtZ3JpZC5jb2x1bW5zLTksXG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmNvbHVtbnMtOSAuYmxvY2tzLWdhbGxlcnktZ3JpZCxcbiAgLmd1dGVuYmVyZy1jb250ZW50IC5pcy1ncmlkLmNvbHVtbnMtOSxcbiAgLmd1dGVuYmVyZy1jb250ZW50IC5jb2x1bW5zLTkgLmJsb2Nrcy1nYWxsZXJ5LWdyaWQsXG4gIC5zaXRlLW1haW4gLmlzLWdyaWQuY29sdW1ucy05LFxuICAuc2l0ZS1tYWluIC5jb2x1bW5zLTkgLmJsb2Nrcy1nYWxsZXJ5LWdyaWQge1xuICAgIGdyaWQtZ2FwOiAzcmVtO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDksIDFmcik7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogMTAwMHB4KSB7XG4gICAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5pcy1ncmlkLmNvbHVtbnMtOSxcbiAgICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmNvbHVtbnMtOSAuYmxvY2tzLWdhbGxlcnktZ3JpZCxcbiAgICAgIC5ndXRlbmJlcmctY29udGVudCAuaXMtZ3JpZC5jb2x1bW5zLTksXG4gICAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLmNvbHVtbnMtOSAuYmxvY2tzLWdhbGxlcnktZ3JpZCxcbiAgICAgIC5zaXRlLW1haW4gLmlzLWdyaWQuY29sdW1ucy05LFxuICAgICAgLnNpdGUtbWFpbiAuY29sdW1ucy05IC5ibG9ja3MtZ2FsbGVyeS1ncmlkIHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDY3MHB4KSB7XG4gICAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5pcy1ncmlkLmNvbHVtbnMtOSxcbiAgICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmNvbHVtbnMtOSAuYmxvY2tzLWdhbGxlcnktZ3JpZCxcbiAgICAgIC5ndXRlbmJlcmctY29udGVudCAuaXMtZ3JpZC5jb2x1bW5zLTksXG4gICAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLmNvbHVtbnMtOSAuYmxvY2tzLWdhbGxlcnktZ3JpZCxcbiAgICAgIC5zaXRlLW1haW4gLmlzLWdyaWQuY29sdW1ucy05LFxuICAgICAgLnNpdGUtbWFpbiAuY29sdW1ucy05IC5ibG9ja3MtZ2FsbGVyeS1ncmlkIHtcbiAgICAgICAgZ3JpZC1nYXA6IDJyZW07XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7IH0gfVxuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5ibG9ja3MtZ2FsbGVyeS1pdGVtID4gZmlndXJlIGZpZ2NhcHRpb24sXG4gIC5ndXRlbmJlcmctY29udGVudCAuYmxvY2tzLWdhbGxlcnktaXRlbSA+IGZpZ3VyZSBmaWdjYXB0aW9uLFxuICAuc2l0ZS1tYWluIC5ibG9ja3MtZ2FsbGVyeS1pdGVtID4gZmlndXJlIGZpZ2NhcHRpb24ge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciBocixcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stc2VwYXJhdG9yLFxuICAuZ3V0ZW5iZXJnLWNvbnRlbnQgaHIsXG4gIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stc2VwYXJhdG9yLFxuICAuc2l0ZS1tYWluIGhyLFxuICAuc2l0ZS1tYWluIC53cC1ibG9jay1zZXBhcmF0b3Ige1xuICAgIG1hcmdpbi1ib3R0b206IGNhbGModmFyKC0tbWFyZ2luLWJldHdlZW4tcGFyYWdyYXBocykgKiAyKTtcbiAgICBtYXJnaW4tdG9wOiBjYWxjKHZhcigtLW1hcmdpbi1iZXR3ZWVuLXBhcmFncmFwaHMpICogMik7IH1cbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stc2VwYXJhdG9yLmlzLXN0eWxlLWRlZmF1bHQsXG4gIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stc2VwYXJhdG9yLmlzLXN0eWxlLWRlZmF1bHQsXG4gIC5zaXRlLW1haW4gLndwLWJsb2NrLXNlcGFyYXRvci5pcy1zdHlsZS1kZWZhdWx0IHtcbiAgICBtYXgtd2lkdGg6IDgwMHB4OyB9XG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgaDEsXG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgaDIsXG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgaDMsXG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgaDQsXG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgaDUsXG4gIC5ndXRlbmJlcmctY29udGVudCBoMSxcbiAgLmd1dGVuYmVyZy1jb250ZW50IGgyLFxuICAuZ3V0ZW5iZXJnLWNvbnRlbnQgaDMsXG4gIC5ndXRlbmJlcmctY29udGVudCBoNCxcbiAgLmd1dGVuYmVyZy1jb250ZW50IGg1LFxuICAuc2l0ZS1tYWluIGgxLFxuICAuc2l0ZS1tYWluIGgyLFxuICAuc2l0ZS1tYWluIGgzLFxuICAuc2l0ZS1tYWluIGg0LFxuICAuc2l0ZS1tYWluIGg1IHtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtY29yZS1oZWFkaW5nKTsgfVxuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIGgxOmZpcnN0LWNoaWxkLFxuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIGgyOmZpcnN0LWNoaWxkLFxuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIGgzOmZpcnN0LWNoaWxkLFxuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIGg0OmZpcnN0LWNoaWxkLFxuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIGg1OmZpcnN0LWNoaWxkLFxuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIGg2OmZpcnN0LWNoaWxkLFxuICAuZ3V0ZW5iZXJnLWNvbnRlbnQgaDE6Zmlyc3QtY2hpbGQsXG4gIC5ndXRlbmJlcmctY29udGVudCBoMjpmaXJzdC1jaGlsZCxcbiAgLmd1dGVuYmVyZy1jb250ZW50IGgzOmZpcnN0LWNoaWxkLFxuICAuZ3V0ZW5iZXJnLWNvbnRlbnQgaDQ6Zmlyc3QtY2hpbGQsXG4gIC5ndXRlbmJlcmctY29udGVudCBoNTpmaXJzdC1jaGlsZCxcbiAgLmd1dGVuYmVyZy1jb250ZW50IGg2OmZpcnN0LWNoaWxkLFxuICAuc2l0ZS1tYWluIGgxOmZpcnN0LWNoaWxkLFxuICAuc2l0ZS1tYWluIGgyOmZpcnN0LWNoaWxkLFxuICAuc2l0ZS1tYWluIGgzOmZpcnN0LWNoaWxkLFxuICAuc2l0ZS1tYWluIGg0OmZpcnN0LWNoaWxkLFxuICAuc2l0ZS1tYWluIGg1OmZpcnN0LWNoaWxkLFxuICAuc2l0ZS1tYWluIGg2OmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tdG9wOiAwOyB9XG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWltYWdlLFxuICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLWltYWdlLFxuICAuc2l0ZS1tYWluIC53cC1ibG9jay1pbWFnZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tbWFyZ2luLXdwLWJsb2NrLWltYWdlKTtcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS1tYXJnaW4td3AtYmxvY2staW1hZ2UpOyB9XG4gICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2staW1hZ2UuYWxpZ25mdWxsLFxuICAgIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2staW1hZ2UuYWxpZ25mdWxsLFxuICAgIC5zaXRlLW1haW4gLndwLWJsb2NrLWltYWdlLmFsaWduZnVsbCB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDE0ODBweCkge1xuICAgICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2staW1hZ2UuYWxpZ253aWRlLFxuICAgICAgLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay1pbWFnZS5hbGlnbndpZGUsXG4gICAgICAuc2l0ZS1tYWluIC53cC1ibG9jay1pbWFnZS5hbGlnbndpZGUge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxNDgwcHgpIHtcbiAgICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWltYWdlLmFsaWdud2lkZSxcbiAgICAgIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2staW1hZ2UuYWxpZ253aWRlLFxuICAgICAgLnNpdGUtbWFpbiAud3AtYmxvY2staW1hZ2UuYWxpZ253aWRlIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIGNhbGModmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCkgKiAyKSk7IH0gfVxuICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWltYWdlIC5hbGlnbndpZGUgaW1nLFxuICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWltYWdlIC5hbGlnbmZ1bGwgaW1nLFxuICAgIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2staW1hZ2UgLmFsaWdud2lkZSBpbWcsXG4gICAgLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay1pbWFnZSAuYWxpZ25mdWxsIGltZyxcbiAgICAuc2l0ZS1tYWluIC53cC1ibG9jay1pbWFnZSAuYWxpZ253aWRlIGltZyxcbiAgICAuc2l0ZS1tYWluIC53cC1ibG9jay1pbWFnZSAuYWxpZ25mdWxsIGltZyB7XG4gICAgICB3aWR0aDogMTAwJTsgfVxuICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWltYWdlIC5hbGlnbmZ1bGwgaW1nLFxuICAgIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2staW1hZ2UgLmFsaWduZnVsbCBpbWcsXG4gICAgLnNpdGUtbWFpbiAud3AtYmxvY2staW1hZ2UgLmFsaWduZnVsbCBpbWcge1xuICAgICAgYm9yZGVyLXJhZGl1czogMDsgfVxuICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWltYWdlID4gZmlndXJlLFxuICAgIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2staW1hZ2UgPiBmaWd1cmUsXG4gICAgLnNpdGUtbWFpbiAud3AtYmxvY2staW1hZ2UgPiBmaWd1cmUge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2staW1hZ2UgPiBmaWd1cmUuYWxpZ25sZWZ0LCAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1pbWFnZSA+IGZpZ3VyZS5hbGlnbnJpZ2h0LFxuICAgICAgLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay1pbWFnZSA+IGZpZ3VyZS5hbGlnbmxlZnQsXG4gICAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLWltYWdlID4gZmlndXJlLmFsaWducmlnaHQsXG4gICAgICAuc2l0ZS1tYWluIC53cC1ibG9jay1pbWFnZSA+IGZpZ3VyZS5hbGlnbmxlZnQsXG4gICAgICAuc2l0ZS1tYWluIC53cC1ibG9jay1pbWFnZSA+IGZpZ3VyZS5hbGlnbnJpZ2h0IHtcbiAgICAgICAgLyogc3R5bGVsaW50LWRpc2FibGUgY3NzdG9vbHMvdmFsdWUtbm8tdW5rbm93bi1jdXN0b20tcHJvcGVydGllcyAqL1xuICAgICAgICBtYXgtd2lkdGg6IHZhcigtLXdpZHRoLWNoaWxkLWltZyk7XG4gICAgICAgIC8qIHN0eWxlbGludC1lbmFibGUgKi8gfVxuICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWltYWdlIGZpZ2NhcHRpb24sXG4gICAgLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay1pbWFnZSBmaWdjYXB0aW9uLFxuICAgIC5zaXRlLW1haW4gLndwLWJsb2NrLWltYWdlIGZpZ2NhcHRpb24ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAgICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2staW1hZ2UuYWxpZ25sZWZ0IGltZyxcbiAgICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWltYWdlLmFsaWducmlnaHQgaW1nLFxuICAgICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2staW1hZ2UuYWxpZ25jZW50ZXIgaW1nLFxuICAgICAgLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay1pbWFnZS5hbGlnbmxlZnQgaW1nLFxuICAgICAgLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay1pbWFnZS5hbGlnbnJpZ2h0IGltZyxcbiAgICAgIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2staW1hZ2UuYWxpZ25jZW50ZXIgaW1nLFxuICAgICAgLnNpdGUtbWFpbiAud3AtYmxvY2staW1hZ2UuYWxpZ25sZWZ0IGltZyxcbiAgICAgIC5zaXRlLW1haW4gLndwLWJsb2NrLWltYWdlLmFsaWducmlnaHQgaW1nLFxuICAgICAgLnNpdGUtbWFpbiAud3AtYmxvY2staW1hZ2UuYWxpZ25jZW50ZXIgaW1nIHtcbiAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWltYWdlIC5hbGlnbmNlbnRlcixcbiAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLWltYWdlIC5hbGlnbmNlbnRlcixcbiAgICAuc2l0ZS1tYWluIC53cC1ibG9jay1pbWFnZSAuYWxpZ25jZW50ZXIge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2staW1hZ2UgLmFsaWduY2VudGVyIGltZyxcbiAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLWltYWdlIC5hbGlnbmNlbnRlciBpbWcsXG4gICAgLnNpdGUtbWFpbiAud3AtYmxvY2staW1hZ2UgLmFsaWduY2VudGVyIGltZyB7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1jYXRlZ29yaWVzLWxpc3QsXG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgb2w6bm90KFtjbGFzc10pLFxuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIHVsOm5vdChbY2xhc3NdKSxcbiAgLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay1jYXRlZ29yaWVzLWxpc3QsXG4gIC5ndXRlbmJlcmctY29udGVudCBvbDpub3QoW2NsYXNzXSksXG4gIC5ndXRlbmJlcmctY29udGVudCB1bDpub3QoW2NsYXNzXSksXG4gIC5zaXRlLW1haW4gLndwLWJsb2NrLWNhdGVnb3JpZXMtbGlzdCxcbiAgLnNpdGUtbWFpbiBvbDpub3QoW2NsYXNzXSksXG4gIC5zaXRlLW1haW4gdWw6bm90KFtjbGFzc10pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IGNhbGMoMnJlbSArIHZhcigtLW1hcmdpbi1iZXR3ZWVuLXBhcmFncmFwaHMpKTsgfVxuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5oYXMtbGFyZ2VyLWZvbnQtc2l6ZSxcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuaGFzLWxhcmdlLWZvbnQtc2l6ZSxcbiAgLmd1dGVuYmVyZy1jb250ZW50IC5oYXMtbGFyZ2VyLWZvbnQtc2l6ZSxcbiAgLmd1dGVuYmVyZy1jb250ZW50IC5oYXMtbGFyZ2UtZm9udC1zaXplLFxuICAuc2l0ZS1tYWluIC5oYXMtbGFyZ2VyLWZvbnQtc2l6ZSxcbiAgLnNpdGUtbWFpbiAuaGFzLWxhcmdlLWZvbnQtc2l6ZSB7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWhlYWRpbmdzKTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5oYXMtbGFyZ2UtZm9udC1zaXplLFxuICAgIC5ndXRlbmJlcmctY29udGVudCAuaGFzLWxhcmdlLWZvbnQtc2l6ZSxcbiAgICAuc2l0ZS1tYWluIC5oYXMtbGFyZ2UtZm9udC1zaXplIHtcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTE4KTsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmhhcy1sYXJnZXItZm9udC1zaXplLFxuICAgIC5ndXRlbmJlcmctY29udGVudCAuaGFzLWxhcmdlci1mb250LXNpemUsXG4gICAgLnNpdGUtbWFpbiAuaGFzLWxhcmdlci1mb250LXNpemUge1xuICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtMjIpOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDE0ODBweCkge1xuICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmhhcy1iYWNrZ3JvdW5kLFxuICAgIC5ndXRlbmJlcmctY29udGVudCAuaGFzLWJhY2tncm91bmQsXG4gICAgLnNpdGUtbWFpbiAuaGFzLWJhY2tncm91bmQge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIGNhbGMoMi4zNzVlbSAqIDIpKTsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAxNDgwcHgpIHtcbiAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1wcmVmb3JtYXR0ZWQsXG4gICAgLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay1wcmVmb3JtYXR0ZWQsXG4gICAgLnNpdGUtbWFpbiAud3AtYmxvY2stcHJlZm9ybWF0dGVkIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gY2FsYyh2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKSAqIDQpKTsgfSB9XG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLXB1bGxxdW90ZS5hbGlnbndpZGUsXG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLXB1bGxxdW90ZS5hbGlnbmZ1bGwsXG4gIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stcHVsbHF1b3RlLmFsaWdud2lkZSxcbiAgLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay1wdWxscXVvdGUuYWxpZ25mdWxsLFxuICAuc2l0ZS1tYWluIC53cC1ibG9jay1wdWxscXVvdGUuYWxpZ253aWRlLFxuICAuc2l0ZS1tYWluIC53cC1ibG9jay1wdWxscXVvdGUuYWxpZ25mdWxsIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxNDgwcHgpIHtcbiAgICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLXB1bGxxdW90ZS5hbGlnbndpZGUsXG4gICAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1wdWxscXVvdGUuYWxpZ25mdWxsLFxuICAgICAgLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay1wdWxscXVvdGUuYWxpZ253aWRlLFxuICAgICAgLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay1wdWxscXVvdGUuYWxpZ25mdWxsLFxuICAgICAgLnNpdGUtbWFpbiAud3AtYmxvY2stcHVsbHF1b3RlLmFsaWdud2lkZSxcbiAgICAgIC5zaXRlLW1haW4gLndwLWJsb2NrLXB1bGxxdW90ZS5hbGlnbmZ1bGwge1xuICAgICAgICBtYXJnaW4tbGVmdDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gICAgICAgIG1hcmdpbi1yaWdodDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSBjYWxjKHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpICogMikpOyB9IH1cbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stcHVsbHF1b3RlLmFsaWduZnVsbCxcbiAgLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay1wdWxscXVvdGUuYWxpZ25mdWxsLFxuICAuc2l0ZS1tYWluIC53cC1ibG9jay1wdWxscXVvdGUuYWxpZ25mdWxsIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gY2FsYyh2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKSAqIDIpKTsgfVxuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIHRoLFxuICAuZ3V0ZW5iZXJnLWNvbnRlbnQgdGgsXG4gIC5zaXRlLW1haW4gdGgge1xuICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1zY3JvcGlvbik7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgdGQsXG4gIC5ndXRlbmJlcmctY29udGVudCB0ZCxcbiAgLnNpdGUtbWFpbiB0ZCB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTsgfVxuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIHRkLFxuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIHRoLFxuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay10YWJsZSB0ZCxcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stdGFibGUgdGgsXG4gIC5ndXRlbmJlcmctY29udGVudCB0ZCxcbiAgLmd1dGVuYmVyZy1jb250ZW50IHRoLFxuICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLXRhYmxlIHRkLFxuICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLXRhYmxlIHRoLFxuICAuc2l0ZS1tYWluIHRkLFxuICAuc2l0ZS1tYWluIHRoLFxuICAuc2l0ZS1tYWluIC53cC1ibG9jay10YWJsZSB0ZCxcbiAgLnNpdGUtbWFpbiAud3AtYmxvY2stdGFibGUgdGgge1xuICAgIGJvcmRlcjogMDtcbiAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC1wYXJhZ3JhcGgpO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTE0KTtcbiAgICBoZWlnaHQ6IDJyZW07XG4gICAgcGFkZGluZzogLjZyZW0gMS41cmVtOyB9XG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgdHI6bnRoLWNoaWxkKGV2ZW4pLFxuICAuZ3V0ZW5iZXJnLWNvbnRlbnQgdHI6bnRoLWNoaWxkKGV2ZW4pLFxuICAuc2l0ZS1tYWluIHRyOm50aC1jaGlsZChldmVuKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmFja2dyb3VuZC10YWJsZS1jZWxsLWV2ZW4pOyB9XG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgdHI6bnRoLWNoaWxkKG9kZCksXG4gIC5ndXRlbmJlcmctY29udGVudCB0cjpudGgtY2hpbGQob2RkKSxcbiAgLnNpdGUtbWFpbiB0cjpudGgtY2hpbGQob2RkKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmFja2dyb3VuZC10YWJsZS1jZWxsLW9kZCk7IH1cbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciB0aGVhZCxcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stdGFibGUgdGhlYWQsXG4gIC5ndXRlbmJlcmctY29udGVudCB0aGVhZCxcbiAgLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay10YWJsZSB0aGVhZCxcbiAgLnNpdGUtbWFpbiB0aGVhZCxcbiAgLnNpdGUtbWFpbiAud3AtYmxvY2stdGFibGUgdGhlYWQge1xuICAgIGJvcmRlcjogMDsgfVxuICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgdGhlYWQgdGg6Zmlyc3QtY2hpbGQsXG4gICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stdGFibGUgdGhlYWQgdGg6Zmlyc3QtY2hpbGQsXG4gICAgLmd1dGVuYmVyZy1jb250ZW50IHRoZWFkIHRoOmZpcnN0LWNoaWxkLFxuICAgIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stdGFibGUgdGhlYWQgdGg6Zmlyc3QtY2hpbGQsXG4gICAgLnNpdGUtbWFpbiB0aGVhZCB0aDpmaXJzdC1jaGlsZCxcbiAgICAuc2l0ZS1tYWluIC53cC1ibG9jay10YWJsZSB0aGVhZCB0aDpmaXJzdC1jaGlsZCB7XG4gICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiA4cHg7IH1cbiAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIHRoZWFkIHRoOmxhc3QtY2hpbGQsXG4gICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stdGFibGUgdGhlYWQgdGg6bGFzdC1jaGlsZCxcbiAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgdGhlYWQgdGg6bGFzdC1jaGlsZCxcbiAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLXRhYmxlIHRoZWFkIHRoOmxhc3QtY2hpbGQsXG4gICAgLnNpdGUtbWFpbiB0aGVhZCB0aDpsYXN0LWNoaWxkLFxuICAgIC5zaXRlLW1haW4gLndwLWJsb2NrLXRhYmxlIHRoZWFkIHRoOmxhc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDhweDsgfVxuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIHRhYmxlLFxuICAuZ3V0ZW5iZXJnLWNvbnRlbnQgdGFibGUsXG4gIC5zaXRlLW1haW4gdGFibGUge1xuICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gICAgYm9yZGVyLXNwYWNpbmc6IDA7IH1cbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stdGFibGUuYWxpZ25mdWxsLFxuICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLXRhYmxlLmFsaWduZnVsbCxcbiAgLnNpdGUtbWFpbiAud3AtYmxvY2stdGFibGUuYWxpZ25mdWxsIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gY2FsYyh2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKSAqIDIpKTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTQ4MHB4KSB7XG4gICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stdGFibGUuYWxpZ253aWRlLFxuICAgIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stdGFibGUuYWxpZ253aWRlLFxuICAgIC5zaXRlLW1haW4gLndwLWJsb2NrLXRhYmxlLmFsaWdud2lkZSB7XG4gICAgICBtYXJnaW4tbGVmdDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gICAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIGNhbGModmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCkgKiAyKSk7IH0gfVxuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay10ZXh0LWNvbHVtbnMuYWxpZ25mdWxsLFxuICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLXRleHQtY29sdW1ucy5hbGlnbmZ1bGwsXG4gIC5zaXRlLW1haW4gLndwLWJsb2NrLXRleHQtY29sdW1ucy5hbGlnbmZ1bGwge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7IH1cbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stdGV4dC1jb2x1bW5zLmNvbHVtbnMtMS5hbGlnbmZ1bGwsXG4gIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stdGV4dC1jb2x1bW5zLmNvbHVtbnMtMS5hbGlnbmZ1bGwsXG4gIC5zaXRlLW1haW4gLndwLWJsb2NrLXRleHQtY29sdW1ucy5jb2x1bW5zLTEuYWxpZ25mdWxsIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSBjYWxjKHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpICogMikpOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5MDBweCkge1xuICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLXRleHQtY29sdW1ucy5jb2x1bW5zLTEsXG4gICAgLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay10ZXh0LWNvbHVtbnMuY29sdW1ucy0xLFxuICAgIC5zaXRlLW1haW4gLndwLWJsb2NrLXRleHQtY29sdW1ucy5jb2x1bW5zLTEge1xuICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgIGdyaWQtZ2FwOiAxZW07XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIGNhbGModmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCkgKiAyKSk7IH1cbiAgICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLXRleHQtY29sdW1ucy5jb2x1bW5zLTEgLndwLWJsb2NrLWNvbHVtbixcbiAgICAgIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stdGV4dC1jb2x1bW5zLmNvbHVtbnMtMSAud3AtYmxvY2stY29sdW1uLFxuICAgICAgLnNpdGUtbWFpbiAud3AtYmxvY2stdGV4dC1jb2x1bW5zLmNvbHVtbnMtMSAud3AtYmxvY2stY29sdW1uIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB3aWR0aDogMTAwJTsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLXRleHQtY29sdW1ucy5jb2x1bW5zLTEsXG4gICAgLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay10ZXh0LWNvbHVtbnMuY29sdW1ucy0xLFxuICAgIC5zaXRlLW1haW4gLndwLWJsb2NrLXRleHQtY29sdW1ucy5jb2x1bW5zLTEge1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMSwgMWZyKTsgfSB9XG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLXRleHQtY29sdW1ucy5jb2x1bW5zLTIuYWxpZ25mdWxsLFxuICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLXRleHQtY29sdW1ucy5jb2x1bW5zLTIuYWxpZ25mdWxsLFxuICAuc2l0ZS1tYWluIC53cC1ibG9jay10ZXh0LWNvbHVtbnMuY29sdW1ucy0yLmFsaWduZnVsbCB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gY2FsYyh2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKSAqIDIpKTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogOTAwcHgpIHtcbiAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay10ZXh0LWNvbHVtbnMuY29sdW1ucy0yLFxuICAgIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stdGV4dC1jb2x1bW5zLmNvbHVtbnMtMixcbiAgICAuc2l0ZS1tYWluIC53cC1ibG9jay10ZXh0LWNvbHVtbnMuY29sdW1ucy0yIHtcbiAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICBncmlkLWdhcDogMWVtO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSBjYWxjKHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpICogMikpOyB9XG4gICAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay10ZXh0LWNvbHVtbnMuY29sdW1ucy0yIC53cC1ibG9jay1jb2x1bW4sXG4gICAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLXRleHQtY29sdW1ucy5jb2x1bW5zLTIgLndwLWJsb2NrLWNvbHVtbixcbiAgICAgIC5zaXRlLW1haW4gLndwLWJsb2NrLXRleHQtY29sdW1ucy5jb2x1bW5zLTIgLndwLWJsb2NrLWNvbHVtbiB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay10ZXh0LWNvbHVtbnMuY29sdW1ucy0yLFxuICAgIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stdGV4dC1jb2x1bW5zLmNvbHVtbnMtMixcbiAgICAuc2l0ZS1tYWluIC53cC1ibG9jay10ZXh0LWNvbHVtbnMuY29sdW1ucy0yIHtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDEsIDFmcik7IH0gfVxuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay10ZXh0LWNvbHVtbnMuY29sdW1ucy0zLmFsaWduZnVsbCxcbiAgLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay10ZXh0LWNvbHVtbnMuY29sdW1ucy0zLmFsaWduZnVsbCxcbiAgLnNpdGUtbWFpbiAud3AtYmxvY2stdGV4dC1jb2x1bW5zLmNvbHVtbnMtMy5hbGlnbmZ1bGwge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIGNhbGModmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCkgKiAyKSk7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDkwMHB4KSB7XG4gICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stdGV4dC1jb2x1bW5zLmNvbHVtbnMtMyxcbiAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLXRleHQtY29sdW1ucy5jb2x1bW5zLTMsXG4gICAgLnNpdGUtbWFpbiAud3AtYmxvY2stdGV4dC1jb2x1bW5zLmNvbHVtbnMtMyB7XG4gICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgZ3JpZC1nYXA6IDFlbTtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gY2FsYyh2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKSAqIDIpKTsgfVxuICAgICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stdGV4dC1jb2x1bW5zLmNvbHVtbnMtMyAud3AtYmxvY2stY29sdW1uLFxuICAgICAgLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay10ZXh0LWNvbHVtbnMuY29sdW1ucy0zIC53cC1ibG9jay1jb2x1bW4sXG4gICAgICAuc2l0ZS1tYWluIC53cC1ibG9jay10ZXh0LWNvbHVtbnMuY29sdW1ucy0zIC53cC1ibG9jay1jb2x1bW4ge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stdGV4dC1jb2x1bW5zLmNvbHVtbnMtMyxcbiAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLXRleHQtY29sdW1ucy5jb2x1bW5zLTMsXG4gICAgLnNpdGUtbWFpbiAud3AtYmxvY2stdGV4dC1jb2x1bW5zLmNvbHVtbnMtMyB7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgxLCAxZnIpOyB9IH1cbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stdGV4dC1jb2x1bW5zLmNvbHVtbnMtNC5hbGlnbmZ1bGwsXG4gIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stdGV4dC1jb2x1bW5zLmNvbHVtbnMtNC5hbGlnbmZ1bGwsXG4gIC5zaXRlLW1haW4gLndwLWJsb2NrLXRleHQtY29sdW1ucy5jb2x1bW5zLTQuYWxpZ25mdWxsIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSBjYWxjKHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpICogMikpOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5MDBweCkge1xuICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLXRleHQtY29sdW1ucy5jb2x1bW5zLTQsXG4gICAgLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay10ZXh0LWNvbHVtbnMuY29sdW1ucy00LFxuICAgIC5zaXRlLW1haW4gLndwLWJsb2NrLXRleHQtY29sdW1ucy5jb2x1bW5zLTQge1xuICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgIGdyaWQtZ2FwOiAxZW07XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIGNhbGModmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCkgKiAyKSk7IH1cbiAgICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLXRleHQtY29sdW1ucy5jb2x1bW5zLTQgLndwLWJsb2NrLWNvbHVtbixcbiAgICAgIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stdGV4dC1jb2x1bW5zLmNvbHVtbnMtNCAud3AtYmxvY2stY29sdW1uLFxuICAgICAgLnNpdGUtbWFpbiAud3AtYmxvY2stdGV4dC1jb2x1bW5zLmNvbHVtbnMtNCAud3AtYmxvY2stY29sdW1uIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB3aWR0aDogMTAwJTsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLXRleHQtY29sdW1ucy5jb2x1bW5zLTQsXG4gICAgLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay10ZXh0LWNvbHVtbnMuY29sdW1ucy00LFxuICAgIC5zaXRlLW1haW4gLndwLWJsb2NrLXRleHQtY29sdW1ucy5jb2x1bW5zLTQge1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMSwgMWZyKTsgfSB9XG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLXRleHQtY29sdW1ucy5jb2x1bW5zLTUuYWxpZ25mdWxsLFxuICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLXRleHQtY29sdW1ucy5jb2x1bW5zLTUuYWxpZ25mdWxsLFxuICAuc2l0ZS1tYWluIC53cC1ibG9jay10ZXh0LWNvbHVtbnMuY29sdW1ucy01LmFsaWduZnVsbCB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gY2FsYyh2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKSAqIDIpKTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogOTAwcHgpIHtcbiAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay10ZXh0LWNvbHVtbnMuY29sdW1ucy01LFxuICAgIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stdGV4dC1jb2x1bW5zLmNvbHVtbnMtNSxcbiAgICAuc2l0ZS1tYWluIC53cC1ibG9jay10ZXh0LWNvbHVtbnMuY29sdW1ucy01IHtcbiAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICBncmlkLWdhcDogMWVtO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSBjYWxjKHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpICogMikpOyB9XG4gICAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay10ZXh0LWNvbHVtbnMuY29sdW1ucy01IC53cC1ibG9jay1jb2x1bW4sXG4gICAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLXRleHQtY29sdW1ucy5jb2x1bW5zLTUgLndwLWJsb2NrLWNvbHVtbixcbiAgICAgIC5zaXRlLW1haW4gLndwLWJsb2NrLXRleHQtY29sdW1ucy5jb2x1bW5zLTUgLndwLWJsb2NrLWNvbHVtbiB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay10ZXh0LWNvbHVtbnMuY29sdW1ucy01LFxuICAgIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stdGV4dC1jb2x1bW5zLmNvbHVtbnMtNSxcbiAgICAuc2l0ZS1tYWluIC53cC1ibG9jay10ZXh0LWNvbHVtbnMuY29sdW1ucy01IHtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDEsIDFmcik7IH0gfVxuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay10ZXh0LWNvbHVtbnMuY29sdW1ucy02LmFsaWduZnVsbCxcbiAgLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay10ZXh0LWNvbHVtbnMuY29sdW1ucy02LmFsaWduZnVsbCxcbiAgLnNpdGUtbWFpbiAud3AtYmxvY2stdGV4dC1jb2x1bW5zLmNvbHVtbnMtNi5hbGlnbmZ1bGwge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIGNhbGModmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCkgKiAyKSk7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDkwMHB4KSB7XG4gICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stdGV4dC1jb2x1bW5zLmNvbHVtbnMtNixcbiAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLXRleHQtY29sdW1ucy5jb2x1bW5zLTYsXG4gICAgLnNpdGUtbWFpbiAud3AtYmxvY2stdGV4dC1jb2x1bW5zLmNvbHVtbnMtNiB7XG4gICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgZ3JpZC1nYXA6IDFlbTtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gY2FsYyh2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKSAqIDIpKTsgfVxuICAgICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stdGV4dC1jb2x1bW5zLmNvbHVtbnMtNiAud3AtYmxvY2stY29sdW1uLFxuICAgICAgLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay10ZXh0LWNvbHVtbnMuY29sdW1ucy02IC53cC1ibG9jay1jb2x1bW4sXG4gICAgICAuc2l0ZS1tYWluIC53cC1ibG9jay10ZXh0LWNvbHVtbnMuY29sdW1ucy02IC53cC1ibG9jay1jb2x1bW4ge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stdGV4dC1jb2x1bW5zLmNvbHVtbnMtNixcbiAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLXRleHQtY29sdW1ucy5jb2x1bW5zLTYsXG4gICAgLnNpdGUtbWFpbiAud3AtYmxvY2stdGV4dC1jb2x1bW5zLmNvbHVtbnMtNiB7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgxLCAxZnIpOyB9IH1cbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stdGV4dC1jb2x1bW5zLmNvbHVtbnMtNy5hbGlnbmZ1bGwsXG4gIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stdGV4dC1jb2x1bW5zLmNvbHVtbnMtNy5hbGlnbmZ1bGwsXG4gIC5zaXRlLW1haW4gLndwLWJsb2NrLXRleHQtY29sdW1ucy5jb2x1bW5zLTcuYWxpZ25mdWxsIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSBjYWxjKHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpICogMikpOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5MDBweCkge1xuICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLXRleHQtY29sdW1ucy5jb2x1bW5zLTcsXG4gICAgLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay10ZXh0LWNvbHVtbnMuY29sdW1ucy03LFxuICAgIC5zaXRlLW1haW4gLndwLWJsb2NrLXRleHQtY29sdW1ucy5jb2x1bW5zLTcge1xuICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgIGdyaWQtZ2FwOiAxZW07XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIGNhbGModmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCkgKiAyKSk7IH1cbiAgICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLXRleHQtY29sdW1ucy5jb2x1bW5zLTcgLndwLWJsb2NrLWNvbHVtbixcbiAgICAgIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stdGV4dC1jb2x1bW5zLmNvbHVtbnMtNyAud3AtYmxvY2stY29sdW1uLFxuICAgICAgLnNpdGUtbWFpbiAud3AtYmxvY2stdGV4dC1jb2x1bW5zLmNvbHVtbnMtNyAud3AtYmxvY2stY29sdW1uIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB3aWR0aDogMTAwJTsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLXRleHQtY29sdW1ucy5jb2x1bW5zLTcsXG4gICAgLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay10ZXh0LWNvbHVtbnMuY29sdW1ucy03LFxuICAgIC5zaXRlLW1haW4gLndwLWJsb2NrLXRleHQtY29sdW1ucy5jb2x1bW5zLTcge1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMSwgMWZyKTsgfSB9XG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLXRleHQtY29sdW1ucy5jb2x1bW5zLTguYWxpZ25mdWxsLFxuICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLXRleHQtY29sdW1ucy5jb2x1bW5zLTguYWxpZ25mdWxsLFxuICAuc2l0ZS1tYWluIC53cC1ibG9jay10ZXh0LWNvbHVtbnMuY29sdW1ucy04LmFsaWduZnVsbCB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gY2FsYyh2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKSAqIDIpKTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogOTAwcHgpIHtcbiAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay10ZXh0LWNvbHVtbnMuY29sdW1ucy04LFxuICAgIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stdGV4dC1jb2x1bW5zLmNvbHVtbnMtOCxcbiAgICAuc2l0ZS1tYWluIC53cC1ibG9jay10ZXh0LWNvbHVtbnMuY29sdW1ucy04IHtcbiAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICBncmlkLWdhcDogMWVtO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSBjYWxjKHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpICogMikpOyB9XG4gICAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay10ZXh0LWNvbHVtbnMuY29sdW1ucy04IC53cC1ibG9jay1jb2x1bW4sXG4gICAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLXRleHQtY29sdW1ucy5jb2x1bW5zLTggLndwLWJsb2NrLWNvbHVtbixcbiAgICAgIC5zaXRlLW1haW4gLndwLWJsb2NrLXRleHQtY29sdW1ucy5jb2x1bW5zLTggLndwLWJsb2NrLWNvbHVtbiB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay10ZXh0LWNvbHVtbnMuY29sdW1ucy04LFxuICAgIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stdGV4dC1jb2x1bW5zLmNvbHVtbnMtOCxcbiAgICAuc2l0ZS1tYWluIC53cC1ibG9jay10ZXh0LWNvbHVtbnMuY29sdW1ucy04IHtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDEsIDFmcik7IH0gfVxuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay10ZXh0LWNvbHVtbnMuY29sdW1ucy05LmFsaWduZnVsbCxcbiAgLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay10ZXh0LWNvbHVtbnMuY29sdW1ucy05LmFsaWduZnVsbCxcbiAgLnNpdGUtbWFpbiAud3AtYmxvY2stdGV4dC1jb2x1bW5zLmNvbHVtbnMtOS5hbGlnbmZ1bGwge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIGNhbGModmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCkgKiAyKSk7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDkwMHB4KSB7XG4gICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stdGV4dC1jb2x1bW5zLmNvbHVtbnMtOSxcbiAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLXRleHQtY29sdW1ucy5jb2x1bW5zLTksXG4gICAgLnNpdGUtbWFpbiAud3AtYmxvY2stdGV4dC1jb2x1bW5zLmNvbHVtbnMtOSB7XG4gICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgZ3JpZC1nYXA6IDFlbTtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gY2FsYyh2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKSAqIDIpKTsgfVxuICAgICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stdGV4dC1jb2x1bW5zLmNvbHVtbnMtOSAud3AtYmxvY2stY29sdW1uLFxuICAgICAgLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay10ZXh0LWNvbHVtbnMuY29sdW1ucy05IC53cC1ibG9jay1jb2x1bW4sXG4gICAgICAuc2l0ZS1tYWluIC53cC1ibG9jay10ZXh0LWNvbHVtbnMuY29sdW1ucy05IC53cC1ibG9jay1jb2x1bW4ge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stdGV4dC1jb2x1bW5zLmNvbHVtbnMtOSxcbiAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLXRleHQtY29sdW1ucy5jb2x1bW5zLTksXG4gICAgLnNpdGUtbWFpbiAud3AtYmxvY2stdGV4dC1jb2x1bW5zLmNvbHVtbnMtOSB7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgxLCAxZnIpOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDE0ODBweCkge1xuICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLXZlcnNlLFxuICAgIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stdmVyc2UsXG4gICAgLnNpdGUtbWFpbiAud3AtYmxvY2stdmVyc2Uge1xuICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICAgICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSBjYWxjKHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpICogNCkpOyB9IH1cbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stdmlkZW8gdmlkZW8sXG4gIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stdmlkZW8gdmlkZW8sXG4gIC5zaXRlLW1haW4gLndwLWJsb2NrLXZpZGVvIHZpZGVvIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDE0ODBweCkge1xuICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLXZpZGVvLmFsaWdud2lkZSxcbiAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay12aWRlby5hbGlnbmZ1bGwsXG4gICAgLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay12aWRlby5hbGlnbndpZGUsXG4gICAgLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay12aWRlby5hbGlnbmZ1bGwsXG4gICAgLnNpdGUtbWFpbiAud3AtYmxvY2stdmlkZW8uYWxpZ253aWRlLFxuICAgIC5zaXRlLW1haW4gLndwLWJsb2NrLXZpZGVvLmFsaWduZnVsbCB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gY2FsYyh2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKSAqIDIpKTsgfSB9XG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLXZpZGVvLmFsaWduZnVsbCxcbiAgLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay12aWRlby5hbGlnbmZ1bGwsXG4gIC5zaXRlLW1haW4gLndwLWJsb2NrLXZpZGVvLmFsaWduZnVsbCB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay5pcy1zdHlsZS1ib3hlZCxcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuaXMtc3R5bGUtYm94ZWQsXG4gIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2suaXMtc3R5bGUtYm94ZWQsXG4gIC5ndXRlbmJlcmctY29udGVudCAuaXMtc3R5bGUtYm94ZWQsXG4gIC5zaXRlLW1haW4gLndwLWJsb2NrLmlzLXN0eWxlLWJveGVkLFxuICAuc2l0ZS1tYWluIC5pcy1zdHlsZS1ib3hlZCB7XG4gICAgYm9yZGVyOiAycHggc29saWQgdmFyKC0tY29sb3ItcGFyYWdyYXBoKTtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItcGFyYWdyYXBoKTtcbiAgICBmb250LXNpemU6IDE3cHg7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1tZWRpdW0pO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1wYXJhZ3JhcGhzLWJsb2cpO1xuICAgIHBhZGRpbmc6IDJyZW07XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDRyZW0pOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA4NDBweCkge1xuICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmlzLXN0eWxlLWJveGVkLFxuICAgIC5ndXRlbmJlcmctY29udGVudCAuaXMtc3R5bGUtYm94ZWQsXG4gICAgLnNpdGUtbWFpbiAuaXMtc3R5bGUtYm94ZWQge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMnJlbSwgMCk7IH0gfVxuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1idXR0b25fX2xpbmssXG4gIC5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2stYnV0dG9uX19saW5rLFxuICAuc2l0ZS1tYWluIC53cC1ibG9jay1idXR0b25fX2xpbmsge1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnV0dG9uLWJhY2tncm91bmQpO1xuICAgIGJvcmRlcjogdmFyKC0tYm9yZGVyLXdpZHRoLWlucHV0LWZpZWxkKSBzb2xpZCB2YXIoLS1jb2xvci1idXR0b24tYmFja2dyb3VuZCk7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1pbnB1dC1maWVsZCk7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWJ1dHRvbik7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC1wYXJhZ3JhcGgpO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTE2KTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtc2VtaWJvbGQpO1xuICAgIGxpbmUtaGVpZ2h0OiAxOS42MzY0cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBtYXgtd2lkdGg6IDIzMHB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcGFkZGluZy1ib3R0b206IGNhbGMoMTRweCAtIGNhbGModmFyKC0tYm9yZGVyLXdpZHRoLWlucHV0LWZpZWxkKSAqIDIpKTtcbiAgICBwYWRkaW5nLWxlZnQ6IGNhbGMoMjFweCAtIGNhbGModmFyKC0tYm9yZGVyLXdpZHRoLWlucHV0LWZpZWxkKSAqIDIpKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiBjYWxjKDIxcHggLSBjYWxjKHZhcigtLWJvcmRlci13aWR0aC1pbnB1dC1maWVsZCkgKiAyKSk7XG4gICAgcGFkZGluZy10b3A6IGNhbGMoMTRweCAtIGNhbGModmFyKC0tYm9yZGVyLXdpZHRoLWlucHV0LWZpZWxkKSAqIDIpKTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjA4cyBjdWJpYy1iZXppZXIoMC4yNSwgMC40NiwgMC40NSwgMC45NCk7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB3aWR0aDogYXV0bztcbiAgICAvKiBzdHlsZWxpbnQtZGlzYWJsZSBhMTF5L25vLWRpc3BsYXktbm9uZSAqL1xuICAgIC8qIHN0eWxlbGludC1lbmFibGUgKi8gfVxuICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWJ1dHRvbl9fbGluay5pcy1leHRlcm5hbC1saW5rOjphZnRlcixcbiAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLWJ1dHRvbl9fbGluay5pcy1leHRlcm5hbC1saW5rOjphZnRlcixcbiAgICAuc2l0ZS1tYWluIC53cC1ibG9jay1idXR0b25fX2xpbmsuaXMtZXh0ZXJuYWwtbGluazo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWJ1dHRvbl9fbGluay5mb2N1cywgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMsXG4gICAgLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay1idXR0b25fX2xpbmsuZm9jdXMsXG4gICAgLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsXG4gICAgLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMsXG4gICAgLnNpdGUtbWFpbiAud3AtYmxvY2stYnV0dG9uX19saW5rLmZvY3VzLFxuICAgIC5zaXRlLW1haW4gLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlcixcbiAgICAuc2l0ZS1tYWluIC53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnV0dG9uLWJhY2tncm91bmQtaG92ZXIpO1xuICAgICAgYm9yZGVyOiB2YXIoLS1ib3JkZXItd2lkdGgtaW5wdXQtZmllbGQpIHNvbGlkIHZhcigtLWNvbG9yLWJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyKTtcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1idXR0b24taG92ZXIpOyB9XG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWZpbGUgLndwLWJsb2NrLWZpbGVfX2J1dHRvbixcbiAgLmd1dGVuYmVyZy1jb250ZW50IC53cC1ibG9jay1maWxlIC53cC1ibG9jay1maWxlX19idXR0b24sXG4gIC5zaXRlLW1haW4gLndwLWJsb2NrLWZpbGUgLndwLWJsb2NrLWZpbGVfX2J1dHRvbiB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtMTYpO1xuICAgIGxpbmUtaGVpZ2h0OiAyMC45MDkxcHg7XG4gICAgcGFkZGluZy1ib3R0b206IGNhbGMoMTBweCAtIGNhbGModmFyKC0tYm9yZGVyLXdpZHRoLWlucHV0LWZpZWxkKSAqIDIpKTtcbiAgICBwYWRkaW5nLWxlZnQ6IGNhbGMoMjFweCAtIGNhbGModmFyKC0tYm9yZGVyLXdpZHRoLWlucHV0LWZpZWxkKSAqIDIpKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiBjYWxjKDIxcHggLSBjYWxjKHZhcigtLWJvcmRlci13aWR0aC1pbnB1dC1maWVsZCkgKiAyKSk7XG4gICAgcGFkZGluZy10b3A6IGNhbGMoMTBweCAtIGNhbGModmFyKC0tYm9yZGVyLXdpZHRoLWlucHV0LWZpZWxkKSAqIDIpKTtcbiAgICBmb250LXNpemU6IC44ZW07XG4gICAgcGFkZGluZzogLjNlbSAuOGVtOyB9XG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmJsb2NrLWVycm9yLFxuICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLmJsb2NrLWVycm9yLFxuICAuc2l0ZS1tYWluIC5ibG9jay1lcnJvciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZXJyb3ItYmxvY2stYmFja2dyb3VuZCk7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItZXJyb3ItYmxvY2stYm9yZGVyKTtcbiAgICBib3JkZXItbGVmdDogMTBweCBzb2xpZCB2YXIoLS1jb2xvci1lcnJvcik7IH1cbiAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5ibG9jay1lcnJvciAuY29udGFpbmVyLFxuICAgIC5ndXRlbmJlcmctY29udGVudCAuYmxvY2stZXJyb3IgLmNvbnRhaW5lcixcbiAgICAuc2l0ZS1tYWluIC5ibG9jay1lcnJvciAuY29udGFpbmVyIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAycmVtO1xuICAgICAgcGFkZGluZy10b3A6IDJyZW07IH1cbiAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5ibG9jay1lcnJvciBwLFxuICAgIC5ndXRlbmJlcmctY29udGVudCAuYmxvY2stZXJyb3IgcCxcbiAgICAuc2l0ZS1tYWluIC5ibG9jay1lcnJvciBwIHtcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTE0KTsgfVxuICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmJsb2NrLWVycm9yIHAuZXJyb3ItbWVzc2FnZSxcbiAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLmJsb2NrLWVycm9yIHAuZXJyb3ItbWVzc2FnZSxcbiAgICAuc2l0ZS1tYWluIC5ibG9jay1lcnJvciBwLmVycm9yLW1lc3NhZ2Uge1xuICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtMTYpOyB9XG4gICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuYmxvY2stZXJyb3IgaDIsXG4gICAgLmd1dGVuYmVyZy1jb250ZW50IC5ibG9jay1lcnJvciBoMixcbiAgICAuc2l0ZS1tYWluIC5ibG9jay1lcnJvciBoMiB7XG4gICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oNCk7IH1cblxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuYWxpZ25sZWZ0ID4gKixcbi5ndXRlbmJlcmctY29udGVudCAuYWxpZ25sZWZ0ID4gKiB7XG4gIGZsb2F0OiBsZWZ0OyB9XG5cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmFsaWducmlnaHQgPiAqLFxuLmd1dGVuYmVyZy1jb250ZW50IC5hbGlnbnJpZ2h0ID4gKiB7XG4gIGZsb2F0OiByaWdodDsgfVxuXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5hbGlnbmxlZnQgPiBpbWcsXG4uZ3V0ZW5iZXJnLWNvbnRlbnQgLmFsaWdubGVmdCA+IGltZyB7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLW1hcmdpbi1iZXR3ZWVuLXBhcmFncmFwaHMpO1xuICBtYXJnaW4tcmlnaHQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICBtYXJnaW4tdG9wOiB2YXIoLS1tYXJnaW4tYmV0d2Vlbi1wYXJhZ3JhcGhzKTsgfVxuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5hbGlnbmxlZnQgPiBpbWcgKyBmaWdjYXB0aW9uLFxuICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLmFsaWdubGVmdCA+IGltZyArIGZpZ2NhcHRpb24ge1xuICAgIG1hcmdpbi10b3A6IDA7IH1cblxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuYWxpZ25yaWdodCA+IGltZyxcbi5ndXRlbmJlcmctY29udGVudCAuYWxpZ25yaWdodCA+IGltZyB7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLW1hcmdpbi1iZXR3ZWVuLXBhcmFncmFwaHMpO1xuICBtYXJnaW4tbGVmdDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gIG1hcmdpbi10b3A6IHZhcigtLW1hcmdpbi1iZXR3ZWVuLXBhcmFncmFwaHMpOyB9XG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmFsaWducmlnaHQgPiBpbWcgKyBmaWdjYXB0aW9uLFxuICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLmFsaWducmlnaHQgPiBpbWcgKyBmaWdjYXB0aW9uIHtcbiAgICBtYXJnaW4tdG9wOiAwOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxNDgwcHgpIHtcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuYWxpZ253aWRlLFxuICAuZ3V0ZW5iZXJnLWNvbnRlbnQgLmFsaWdud2lkZSB7XG4gICAgbWF4LXdpZHRoOiAxMjAwcHg7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTQ4MHB4KSB7XG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmFsaWduZnVsbCxcbiAgLmd1dGVuYmVyZy1jb250ZW50IC5hbGlnbmZ1bGwge1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXBhZGRpbmctYmxvY2spO1xuICAgIG1hcmdpbi10b3A6IHZhcigtLXBhZGRpbmctYmxvY2spO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmFsaWduZnVsbC53cC1ibG9jay1pbWFnZSBpbWcsXG4uZ3V0ZW5iZXJnLWNvbnRlbnQgLmFsaWduZnVsbC53cC1ibG9jay1pbWFnZSBpbWcge1xuICBib3JkZXItcmFkaXVzOiAwOyB9XG5cbi8qIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW1heC1jb21iaW5hdG9ycywgc2VsZWN0b3ItbWF4LWNvbXBvdW5kLXNlbGVjdG9ycyAqL1xuLmVkaXRvci1zdHlsZXMtd3JhcHBlciBmaWdjYXB0aW9uLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciBjaXRlLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciBzbWFsbCxcbi5ndXRlbmJlcmctY29udGVudCBmaWdjYXB0aW9uLFxuLmd1dGVuYmVyZy1jb250ZW50IGNpdGUsXG4uZ3V0ZW5iZXJnLWNvbnRlbnQgc21hbGwge1xuICBib3JkZXI6IDA7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1jYXB0aW9uKTtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtY2FwdGlvbnMpO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIG1hcmdpbi1ib3R0b206IDZyZW07XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi10b3A6IDNyZW07XG4gIG1heC13aWR0aDogODAwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgZmlnY2FwdGlvbixcbiAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIGNpdGUsXG4gICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciBzbWFsbCxcbiAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgZmlnY2FwdGlvbixcbiAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgY2l0ZSxcbiAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgc21hbGwge1xuICAgICAgbWFyZ2luLXRvcDogMnJlbTsgfSB9XG5cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWltYWdlIGZpZ2NhcHRpb24sXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1pbWFnZSAuYWxpZ25yaWdodCA+IGZpZ2NhcHRpb24sXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1pbWFnZSAuYWxpZ25jZW50ZXIgPiBmaWdjYXB0aW9uLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2staW1hZ2UuaXMtcmVzaXplZCA+IGZpZ2NhcHRpb24sXG4uZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLWltYWdlIGZpZ2NhcHRpb24sXG4uZ3V0ZW5iZXJnLWNvbnRlbnQgLndwLWJsb2NrLWltYWdlIC5hbGlnbnJpZ2h0ID4gZmlnY2FwdGlvbixcbi5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2staW1hZ2UgLmFsaWduY2VudGVyID4gZmlnY2FwdGlvbixcbi5ndXRlbmJlcmctY29udGVudCAud3AtYmxvY2staW1hZ2UuaXMtcmVzaXplZCA+IGZpZ2NhcHRpb24ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7IH1cblxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciBjaXRlLFxuLmd1dGVuYmVyZy1jb250ZW50IGNpdGUge1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgaW1nLFxuLmd1dGVuYmVyZy1jb250ZW50IGltZyB7XG4gIGJvcmRlci1yYWRpdXM6IDRweDsgfVxuXG5rYmQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1rYmQtYmFja2dyb3VuZCk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWtiZC1ib3JkZXIpO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDAgcmdiYSgyMiwgMjIsIDIyLCAwLjIpLCAwIDAgMCAycHggdmFyKC0tY29sb3Itd2hpdGUpIGluc2V0O1xuICBjb2xvcjogdmFyKC0tY29sb3ItcGFyYWdyYXBoKTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBwYWRkaW5nOiAwIC41cmVtO1xuICB0ZXh0LXNoYWRvdzogMCAxcHggMCB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cblxuLyogc3R5bGVsaW50LWRpc2FibGUgYTExeS9uby1kaXNwbGF5LW5vbmUsIG5vLWRlc2NlbmRpbmctc3BlY2lmaWNpdHksIHNlbGVjdG9yLW1heC1wc2V1ZG8tY2xhc3MgKi9cbmEge1xuICBjb2xvcjogdmFyKC0tY29sb3ItbGluay10ZXh0KTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gIGE6aG92ZXIsIGE6Zm9jdXMge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1saW5rLXRleHQpOyB9XG5cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgbGkgPiBhOjphZnRlcixcbi5ndXRlbmJlcmctY29udGVudCBsaSA+IGE6OmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIFtkYXRhLXR5cGU9XCJjb3JlL3BhcmFncmFwaFwiXSA+IGEsXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIGxpID4gYSxcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgcCA+IHN0cm9uZyA+IGEsXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIHAgPiBlbSA+IGEsXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIHA6bm90KFtjbGFzc10pID4gYTpub3QoW2NsYXNzXSksXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIHAuaGFzLXRleHQtYWxpZ24tbGVmdCA+IGEsXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIHAuaGFzLXRleHQtYWxpZ24tY2VudGVyID4gYSxcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgcC5oYXMtdGV4dC1hbGlnbi1yaWdodCA+IGEsXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIHAuaGFzLXNtYWxsLWZvbnQtc2l6ZSA+IGEsXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIGZpZ2NhcHRpb24gPiBhLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciBwOm5vdChbY2xhc3NdKSA+IGEuaXMtZXh0ZXJuYWwtbGluayxcbi5ndXRlbmJlcmctY29udGVudCBbZGF0YS10eXBlPVwiY29yZS9wYXJhZ3JhcGhcIl0gPiBhLFxuLmd1dGVuYmVyZy1jb250ZW50IGxpID4gYSxcbi5ndXRlbmJlcmctY29udGVudCBwID4gc3Ryb25nID4gYSxcbi5ndXRlbmJlcmctY29udGVudCBwID4gZW0gPiBhLFxuLmd1dGVuYmVyZy1jb250ZW50IHA6bm90KFtjbGFzc10pID4gYTpub3QoW2NsYXNzXSksXG4uZ3V0ZW5iZXJnLWNvbnRlbnQgcC5oYXMtdGV4dC1hbGlnbi1sZWZ0ID4gYSxcbi5ndXRlbmJlcmctY29udGVudCBwLmhhcy10ZXh0LWFsaWduLWNlbnRlciA+IGEsXG4uZ3V0ZW5iZXJnLWNvbnRlbnQgcC5oYXMtdGV4dC1hbGlnbi1yaWdodCA+IGEsXG4uZ3V0ZW5iZXJnLWNvbnRlbnQgcC5oYXMtc21hbGwtZm9udC1zaXplID4gYSxcbi5ndXRlbmJlcmctY29udGVudCBmaWdjYXB0aW9uID4gYSxcbi5ndXRlbmJlcmctY29udGVudCBwOm5vdChbY2xhc3NdKSA+IGEuaXMtZXh0ZXJuYWwtbGluayB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1jb2xvci1saW5rLWJvcmRlci1ib3R0b20pO1xuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCB2YXIoLS1jb2xvci1saW5rLWJhY2tncm91bmQtaG92ZXIpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItbGluay10ZXh0KTtcbiAgZGlzcGxheTogaW5saW5lO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC4xcyBjdWJpYy1iZXppZXIoMC4xOSwgMSwgMC4yMiwgMSksIGNvbG9yIDAuMXMgY3ViaWMtYmV6aWVyKDAuMTksIDEsIDAuMjIsIDEpOyB9XG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgW2RhdGEtdHlwZT1cImNvcmUvcGFyYWdyYXBoXCJdID4gYTo6YWZ0ZXIsXG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgbGkgPiBhOjphZnRlcixcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciBwID4gc3Ryb25nID4gYTo6YWZ0ZXIsXG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgcCA+IGVtID4gYTo6YWZ0ZXIsXG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgcDpub3QoW2NsYXNzXSkgPiBhOm5vdChbY2xhc3NdKTo6YWZ0ZXIsXG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgcC5oYXMtdGV4dC1hbGlnbi1sZWZ0ID4gYTo6YWZ0ZXIsXG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgcC5oYXMtdGV4dC1hbGlnbi1jZW50ZXIgPiBhOjphZnRlcixcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciBwLmhhcy10ZXh0LWFsaWduLXJpZ2h0ID4gYTo6YWZ0ZXIsXG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgcC5oYXMtc21hbGwtZm9udC1zaXplID4gYTo6YWZ0ZXIsXG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgZmlnY2FwdGlvbiA+IGE6OmFmdGVyLFxuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIHA6bm90KFtjbGFzc10pID4gYS5pcy1leHRlcm5hbC1saW5rOjphZnRlcixcbiAgLmd1dGVuYmVyZy1jb250ZW50IFtkYXRhLXR5cGU9XCJjb3JlL3BhcmFncmFwaFwiXSA+IGE6OmFmdGVyLFxuICAuZ3V0ZW5iZXJnLWNvbnRlbnQgbGkgPiBhOjphZnRlcixcbiAgLmd1dGVuYmVyZy1jb250ZW50IHAgPiBzdHJvbmcgPiBhOjphZnRlcixcbiAgLmd1dGVuYmVyZy1jb250ZW50IHAgPiBlbSA+IGE6OmFmdGVyLFxuICAuZ3V0ZW5iZXJnLWNvbnRlbnQgcDpub3QoW2NsYXNzXSkgPiBhOm5vdChbY2xhc3NdKTo6YWZ0ZXIsXG4gIC5ndXRlbmJlcmctY29udGVudCBwLmhhcy10ZXh0LWFsaWduLWxlZnQgPiBhOjphZnRlcixcbiAgLmd1dGVuYmVyZy1jb250ZW50IHAuaGFzLXRleHQtYWxpZ24tY2VudGVyID4gYTo6YWZ0ZXIsXG4gIC5ndXRlbmJlcmctY29udGVudCBwLmhhcy10ZXh0LWFsaWduLXJpZ2h0ID4gYTo6YWZ0ZXIsXG4gIC5ndXRlbmJlcmctY29udGVudCBwLmhhcy1zbWFsbC1mb250LXNpemUgPiBhOjphZnRlcixcbiAgLmd1dGVuYmVyZy1jb250ZW50IGZpZ2NhcHRpb24gPiBhOjphZnRlcixcbiAgLmd1dGVuYmVyZy1jb250ZW50IHA6bm90KFtjbGFzc10pID4gYS5pcy1leHRlcm5hbC1saW5rOjphZnRlciB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vLi4vc3ZnL2V4dGVybmFsLWxpbmstc3R5bGVkLWxpbmtzLnN2Z1wiKTsgfVxuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIFtkYXRhLXR5cGU9XCJjb3JlL3BhcmFncmFwaFwiXSA+IGE6aG92ZXIsXG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgbGkgPiBhOmhvdmVyLFxuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIHAgPiBzdHJvbmcgPiBhOmhvdmVyLFxuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIHAgPiBlbSA+IGE6aG92ZXIsXG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgcDpub3QoW2NsYXNzXSkgPiBhOm5vdChbY2xhc3NdKTpob3ZlcixcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciBwLmhhcy10ZXh0LWFsaWduLWxlZnQgPiBhOmhvdmVyLFxuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIHAuaGFzLXRleHQtYWxpZ24tY2VudGVyID4gYTpob3ZlcixcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciBwLmhhcy10ZXh0LWFsaWduLXJpZ2h0ID4gYTpob3ZlcixcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciBwLmhhcy1zbWFsbC1mb250LXNpemUgPiBhOmhvdmVyLFxuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIGZpZ2NhcHRpb24gPiBhOmhvdmVyLFxuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIHA6bm90KFtjbGFzc10pID4gYS5pcy1leHRlcm5hbC1saW5rOmhvdmVyLFxuICAuZ3V0ZW5iZXJnLWNvbnRlbnQgW2RhdGEtdHlwZT1cImNvcmUvcGFyYWdyYXBoXCJdID4gYTpob3ZlcixcbiAgLmd1dGVuYmVyZy1jb250ZW50IGxpID4gYTpob3ZlcixcbiAgLmd1dGVuYmVyZy1jb250ZW50IHAgPiBzdHJvbmcgPiBhOmhvdmVyLFxuICAuZ3V0ZW5iZXJnLWNvbnRlbnQgcCA+IGVtID4gYTpob3ZlcixcbiAgLmd1dGVuYmVyZy1jb250ZW50IHA6bm90KFtjbGFzc10pID4gYTpub3QoW2NsYXNzXSk6aG92ZXIsXG4gIC5ndXRlbmJlcmctY29udGVudCBwLmhhcy10ZXh0LWFsaWduLWxlZnQgPiBhOmhvdmVyLFxuICAuZ3V0ZW5iZXJnLWNvbnRlbnQgcC5oYXMtdGV4dC1hbGlnbi1jZW50ZXIgPiBhOmhvdmVyLFxuICAuZ3V0ZW5iZXJnLWNvbnRlbnQgcC5oYXMtdGV4dC1hbGlnbi1yaWdodCA+IGE6aG92ZXIsXG4gIC5ndXRlbmJlcmctY29udGVudCBwLmhhcy1zbWFsbC1mb250LXNpemUgPiBhOmhvdmVyLFxuICAuZ3V0ZW5iZXJnLWNvbnRlbnQgZmlnY2FwdGlvbiA+IGE6aG92ZXIsXG4gIC5ndXRlbmJlcmctY29udGVudCBwOm5vdChbY2xhc3NdKSA+IGEuaXMtZXh0ZXJuYWwtbGluazpob3ZlciB7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIC0zLjNyZW0gMCB2YXIoLS1jb2xvci1saW5rLWJhY2tncm91bmQtaG92ZXIpO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1saW5rLXRleHQtaG92ZXIpOyB9XG4gICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciBbZGF0YS10eXBlPVwiY29yZS9wYXJhZ3JhcGhcIl0gPiBhOmhvdmVyOjphZnRlcixcbiAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIGxpID4gYTpob3Zlcjo6YWZ0ZXIsXG4gICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciBwID4gc3Ryb25nID4gYTpob3Zlcjo6YWZ0ZXIsXG4gICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciBwID4gZW0gPiBhOmhvdmVyOjphZnRlcixcbiAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIHA6bm90KFtjbGFzc10pID4gYTpub3QoW2NsYXNzXSk6aG92ZXI6OmFmdGVyLFxuICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgcC5oYXMtdGV4dC1hbGlnbi1sZWZ0ID4gYTpob3Zlcjo6YWZ0ZXIsXG4gICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciBwLmhhcy10ZXh0LWFsaWduLWNlbnRlciA+IGE6aG92ZXI6OmFmdGVyLFxuICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgcC5oYXMtdGV4dC1hbGlnbi1yaWdodCA+IGE6aG92ZXI6OmFmdGVyLFxuICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgcC5oYXMtc21hbGwtZm9udC1zaXplID4gYTpob3Zlcjo6YWZ0ZXIsXG4gICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciBmaWdjYXB0aW9uID4gYTpob3Zlcjo6YWZ0ZXIsXG4gICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciBwOm5vdChbY2xhc3NdKSA+IGEuaXMtZXh0ZXJuYWwtbGluazpob3Zlcjo6YWZ0ZXIsXG4gICAgLmd1dGVuYmVyZy1jb250ZW50IFtkYXRhLXR5cGU9XCJjb3JlL3BhcmFncmFwaFwiXSA+IGE6aG92ZXI6OmFmdGVyLFxuICAgIC5ndXRlbmJlcmctY29udGVudCBsaSA+IGE6aG92ZXI6OmFmdGVyLFxuICAgIC5ndXRlbmJlcmctY29udGVudCBwID4gc3Ryb25nID4gYTpob3Zlcjo6YWZ0ZXIsXG4gICAgLmd1dGVuYmVyZy1jb250ZW50IHAgPiBlbSA+IGE6aG92ZXI6OmFmdGVyLFxuICAgIC5ndXRlbmJlcmctY29udGVudCBwOm5vdChbY2xhc3NdKSA+IGE6bm90KFtjbGFzc10pOmhvdmVyOjphZnRlcixcbiAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgcC5oYXMtdGV4dC1hbGlnbi1sZWZ0ID4gYTpob3Zlcjo6YWZ0ZXIsXG4gICAgLmd1dGVuYmVyZy1jb250ZW50IHAuaGFzLXRleHQtYWxpZ24tY2VudGVyID4gYTpob3Zlcjo6YWZ0ZXIsXG4gICAgLmd1dGVuYmVyZy1jb250ZW50IHAuaGFzLXRleHQtYWxpZ24tcmlnaHQgPiBhOmhvdmVyOjphZnRlcixcbiAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgcC5oYXMtc21hbGwtZm9udC1zaXplID4gYTpob3Zlcjo6YWZ0ZXIsXG4gICAgLmd1dGVuYmVyZy1jb250ZW50IGZpZ2NhcHRpb24gPiBhOmhvdmVyOjphZnRlcixcbiAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgcDpub3QoW2NsYXNzXSkgPiBhLmlzLWV4dGVybmFsLWxpbms6aG92ZXI6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uLy4uL3N2Zy9leHRlcm5hbC1saW5rLXdoaXRlLnN2Z1wiKTsgfVxuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIFtkYXRhLXR5cGU9XCJjb3JlL3BhcmFncmFwaFwiXSA+IGE6Zm9jdXMsXG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgbGkgPiBhOmZvY3VzLFxuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIHAgPiBzdHJvbmcgPiBhOmZvY3VzLFxuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIHAgPiBlbSA+IGE6Zm9jdXMsXG4gIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgcDpub3QoW2NsYXNzXSkgPiBhOm5vdChbY2xhc3NdKTpmb2N1cyxcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciBwLmhhcy10ZXh0LWFsaWduLWxlZnQgPiBhOmZvY3VzLFxuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIHAuaGFzLXRleHQtYWxpZ24tY2VudGVyID4gYTpmb2N1cyxcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciBwLmhhcy10ZXh0LWFsaWduLXJpZ2h0ID4gYTpmb2N1cyxcbiAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciBwLmhhcy1zbWFsbC1mb250LXNpemUgPiBhOmZvY3VzLFxuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIGZpZ2NhcHRpb24gPiBhOmZvY3VzLFxuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIHA6bm90KFtjbGFzc10pID4gYS5pcy1leHRlcm5hbC1saW5rOmZvY3VzLFxuICAuZ3V0ZW5iZXJnLWNvbnRlbnQgW2RhdGEtdHlwZT1cImNvcmUvcGFyYWdyYXBoXCJdID4gYTpmb2N1cyxcbiAgLmd1dGVuYmVyZy1jb250ZW50IGxpID4gYTpmb2N1cyxcbiAgLmd1dGVuYmVyZy1jb250ZW50IHAgPiBzdHJvbmcgPiBhOmZvY3VzLFxuICAuZ3V0ZW5iZXJnLWNvbnRlbnQgcCA+IGVtID4gYTpmb2N1cyxcbiAgLmd1dGVuYmVyZy1jb250ZW50IHA6bm90KFtjbGFzc10pID4gYTpub3QoW2NsYXNzXSk6Zm9jdXMsXG4gIC5ndXRlbmJlcmctY29udGVudCBwLmhhcy10ZXh0LWFsaWduLWxlZnQgPiBhOmZvY3VzLFxuICAuZ3V0ZW5iZXJnLWNvbnRlbnQgcC5oYXMtdGV4dC1hbGlnbi1jZW50ZXIgPiBhOmZvY3VzLFxuICAuZ3V0ZW5iZXJnLWNvbnRlbnQgcC5oYXMtdGV4dC1hbGlnbi1yaWdodCA+IGE6Zm9jdXMsXG4gIC5ndXRlbmJlcmctY29udGVudCBwLmhhcy1zbWFsbC1mb250LXNpemUgPiBhOmZvY3VzLFxuICAuZ3V0ZW5iZXJnLWNvbnRlbnQgZmlnY2FwdGlvbiA+IGE6Zm9jdXMsXG4gIC5ndXRlbmJlcmctY29udGVudCBwOm5vdChbY2xhc3NdKSA+IGEuaXMtZXh0ZXJuYWwtbGluazpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1saW5rLWJvcmRlci1mb2N1cyk7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItbGluay10ZXh0LWZvY3VzKTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IG5vLXByZWZlcmVuY2UpIHtcbiAgICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgW2RhdGEtdHlwZT1cImNvcmUvcGFyYWdyYXBoXCJdID4gYTpmb2N1cyxcbiAgICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgbGkgPiBhOmZvY3VzLFxuICAgICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciBwID4gc3Ryb25nID4gYTpmb2N1cyxcbiAgICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgcCA+IGVtID4gYTpmb2N1cyxcbiAgICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgcDpub3QoW2NsYXNzXSkgPiBhOm5vdChbY2xhc3NdKTpmb2N1cyxcbiAgICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgcC5oYXMtdGV4dC1hbGlnbi1sZWZ0ID4gYTpmb2N1cyxcbiAgICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgcC5oYXMtdGV4dC1hbGlnbi1jZW50ZXIgPiBhOmZvY3VzLFxuICAgICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciBwLmhhcy10ZXh0LWFsaWduLXJpZ2h0ID4gYTpmb2N1cyxcbiAgICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgcC5oYXMtc21hbGwtZm9udC1zaXplID4gYTpmb2N1cyxcbiAgICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgZmlnY2FwdGlvbiA+IGE6Zm9jdXMsXG4gICAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIHA6bm90KFtjbGFzc10pID4gYS5pcy1leHRlcm5hbC1saW5rOmZvY3VzLFxuICAgICAgLmd1dGVuYmVyZy1jb250ZW50IFtkYXRhLXR5cGU9XCJjb3JlL3BhcmFncmFwaFwiXSA+IGE6Zm9jdXMsXG4gICAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgbGkgPiBhOmZvY3VzLFxuICAgICAgLmd1dGVuYmVyZy1jb250ZW50IHAgPiBzdHJvbmcgPiBhOmZvY3VzLFxuICAgICAgLmd1dGVuYmVyZy1jb250ZW50IHAgPiBlbSA+IGE6Zm9jdXMsXG4gICAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgcDpub3QoW2NsYXNzXSkgPiBhOm5vdChbY2xhc3NdKTpmb2N1cyxcbiAgICAgIC5ndXRlbmJlcmctY29udGVudCBwLmhhcy10ZXh0LWFsaWduLWxlZnQgPiBhOmZvY3VzLFxuICAgICAgLmd1dGVuYmVyZy1jb250ZW50IHAuaGFzLXRleHQtYWxpZ24tY2VudGVyID4gYTpmb2N1cyxcbiAgICAgIC5ndXRlbmJlcmctY29udGVudCBwLmhhcy10ZXh0LWFsaWduLXJpZ2h0ID4gYTpmb2N1cyxcbiAgICAgIC5ndXRlbmJlcmctY29udGVudCBwLmhhcy1zbWFsbC1mb250LXNpemUgPiBhOmZvY3VzLFxuICAgICAgLmd1dGVuYmVyZy1jb250ZW50IGZpZ2NhcHRpb24gPiBhOmZvY3VzLFxuICAgICAgLmd1dGVuYmVyZy1jb250ZW50IHA6bm90KFtjbGFzc10pID4gYS5pcy1leHRlcm5hbC1saW5rOmZvY3VzIHtcbiAgICAgICAgb3V0bGluZS1vZmZzZXQ6IDVweDtcbiAgICAgICAgdHJhbnNpdGlvbjogb3V0bGluZS1vZmZzZXQgLjI1cyBlYXNlOyB9IH1cbiAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIFtkYXRhLXR5cGU9XCJjb3JlL3BhcmFncmFwaFwiXSA+IGE6Zm9jdXM6OmFmdGVyLFxuICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgbGkgPiBhOmZvY3VzOjphZnRlcixcbiAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIHAgPiBzdHJvbmcgPiBhOmZvY3VzOjphZnRlcixcbiAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIHAgPiBlbSA+IGE6Zm9jdXM6OmFmdGVyLFxuICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgcDpub3QoW2NsYXNzXSkgPiBhOm5vdChbY2xhc3NdKTpmb2N1czo6YWZ0ZXIsXG4gICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciBwLmhhcy10ZXh0LWFsaWduLWxlZnQgPiBhOmZvY3VzOjphZnRlcixcbiAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIHAuaGFzLXRleHQtYWxpZ24tY2VudGVyID4gYTpmb2N1czo6YWZ0ZXIsXG4gICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciBwLmhhcy10ZXh0LWFsaWduLXJpZ2h0ID4gYTpmb2N1czo6YWZ0ZXIsXG4gICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciBwLmhhcy1zbWFsbC1mb250LXNpemUgPiBhOmZvY3VzOjphZnRlcixcbiAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIGZpZ2NhcHRpb24gPiBhOmZvY3VzOjphZnRlcixcbiAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIHA6bm90KFtjbGFzc10pID4gYS5pcy1leHRlcm5hbC1saW5rOmZvY3VzOjphZnRlcixcbiAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgW2RhdGEtdHlwZT1cImNvcmUvcGFyYWdyYXBoXCJdID4gYTpmb2N1czo6YWZ0ZXIsXG4gICAgLmd1dGVuYmVyZy1jb250ZW50IGxpID4gYTpmb2N1czo6YWZ0ZXIsXG4gICAgLmd1dGVuYmVyZy1jb250ZW50IHAgPiBzdHJvbmcgPiBhOmZvY3VzOjphZnRlcixcbiAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgcCA+IGVtID4gYTpmb2N1czo6YWZ0ZXIsXG4gICAgLmd1dGVuYmVyZy1jb250ZW50IHA6bm90KFtjbGFzc10pID4gYTpub3QoW2NsYXNzXSk6Zm9jdXM6OmFmdGVyLFxuICAgIC5ndXRlbmJlcmctY29udGVudCBwLmhhcy10ZXh0LWFsaWduLWxlZnQgPiBhOmZvY3VzOjphZnRlcixcbiAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgcC5oYXMtdGV4dC1hbGlnbi1jZW50ZXIgPiBhOmZvY3VzOjphZnRlcixcbiAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgcC5oYXMtdGV4dC1hbGlnbi1yaWdodCA+IGE6Zm9jdXM6OmFmdGVyLFxuICAgIC5ndXRlbmJlcmctY29udGVudCBwLmhhcy1zbWFsbC1mb250LXNpemUgPiBhOmZvY3VzOjphZnRlcixcbiAgICAuZ3V0ZW5iZXJnLWNvbnRlbnQgZmlnY2FwdGlvbiA+IGE6Zm9jdXM6OmFmdGVyLFxuICAgIC5ndXRlbmJlcmctY29udGVudCBwOm5vdChbY2xhc3NdKSA+IGEuaXMtZXh0ZXJuYWwtbGluazpmb2N1czo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vLi4vc3ZnL2V4dGVybmFsLWxpbmstYmxhY2suc3ZnXCIpOyB9XG5cbnAge1xuICBjb2xvcjogdmFyKC0tY29sb3ItcGFyYWdyYXBoKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXBhcmFncmFwaHMtYmxvZyk7IH1cbiIsIi8qXG4qIDEuIFJlbW92ZSBhbmltYXRpb25zIHdoZW4gbW90aW9uIGlzIHJlZHVjZWQgKG9waW5pb25hdGVkKS5cbiogMi4gUmVtb3ZlIGZpeGVkIGJhY2tncm91bmQgYXR0YWNobWVudHMgd2hlbiBtb3Rpb24gaXMgcmVkdWNlZCAob3BpbmlvbmF0ZWQpLlxuKiAzLiBSZW1vdmUgdGltZWQgc2Nyb2xsaW5nIGJlaGF2aW9ycyB3aGVuIG1vdGlvbiBpcyByZWR1Y2VkIChvcGluaW9uYXRlZCkuXG4qIDQuIFJlbW92ZSB0cmFuc2l0aW9ucyB3aGVuIG1vdGlvbiBpcyByZWR1Y2VkIChvcGluaW9uYXRlZCkuXG4qL1xuXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAqLFxuICA6OmJlZm9yZSxcbiAgOjphZnRlciB7XG4gICAgYW5pbWF0aW9uLWRlbGF5OiAtMW1zICFpbXBvcnRhbnQ7IC8qIDEgKi9cbiAgICBhbmltYXRpb24tZHVyYXRpb246IDFtcyAhaW1wb3J0YW50OyAvKiAxICovXG4gICAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMSAhaW1wb3J0YW50OyAvKiAxICovXG4gICAgYmFja2dyb3VuZC1hdHRhY2htZW50OiBpbml0aWFsICFpbXBvcnRhbnQ7IC8qIDIgKi9cbiAgICBzY3JvbGwtYmVoYXZpb3I6IGF1dG8gIWltcG9ydGFudDsgLyogMyAqL1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzICFpbXBvcnRhbnQ7IC8qIDQgKi9cbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcyAhaW1wb3J0YW50OyAvKiA0ICovXG4gIH1cbn1cbiIsIi8qKlxuICogQ29udmVydCBoZXggY29sb3IgdG8gUkdCIGNvbG9yIGZvcm1hdFxuICovXG5cbkBmdW5jdGlvbiBoZXh0b3JnYigkaGV4KSB7XG4gIEByZXR1cm4gcmVkKCRoZXgpLCBncmVlbigkaGV4KSwgYmx1ZSgkaGV4KTtcbn1cbiIsIi8vIFR5cG9ncmFwaHkgaGVscGVyc1xuXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1wcm9wZXJ0eS11bml0LWFsbG93ZWQtbGlzdCAqL1xuLy8gSGVscGVyIG1peGluIGZvciBzZWxmLWhvc3RlZCBmb250c1xuQG1peGluIGZvbnRGYWNlKCRmYW1pbHksICRzcmMsICR3ZWlnaHQ6IG5vcm1hbCwgJHN0eWxlOiBub3JtYWwpIHtcbiAgQGZvbnQtZmFjZSB7XG4gICAgLy8gQGxpbmsgaHR0cHM6Ly9jc3MtdHJpY2tzLmNvbS9hbG1hbmFjL3Byb3BlcnRpZXMvZi9mb250LWRpc3BsYXkvXG4gICAgZm9udC1kaXNwbGF5OiBhdXRvO1xuICAgIGZvbnQtZmFtaWx5OiAkZmFtaWx5O1xuICAgIGZvbnQtc3R5bGU6ICRzdHlsZTtcbiAgICBmb250LXdlaWdodDogJHdlaWdodDtcblxuICAgIC8vIFNsaWdodGx5IERlZXBlciBCcm93c2VyIFN1cHBvcnRcbiAgICAvLyBAc291cmNlIGh0dHBzOi8vY3NzLXRyaWNrcy5jb20vc25pcHBldHMvY3NzL3VzaW5nLWZvbnQtZmFjZS8jc2xpZ2h0bHktZGVlcGVyLWJyb3dzZXItc3VwcG9ydFxuICAgIHNyYzogdXJsKCcjeyRzcmN9LndvZmYnKSBmb3JtYXQoJ3dvZmYnKSwgdXJsKCcjeyRzcmN9LndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLCB1cmwoJyN7JHNyY30udHRmJykgZm9ybWF0KCd0cnVldHlwZScpO1xuICB9XG59XG5cbi8vIFJlc3BvbnNpdmUgZm9udHNcbkBtaXhpbiByZXNwb25zaXZlLWZvbnQoJG1pbi1mb250LXNpemUsICRtYXgtZm9udC1zaXplLCAkbWluLXZ3OiAzMjBweCwgJG1heC12dzogMTkyMHB4KSB7XG4gICR1MTogdW5pdCgkbWluLXZ3KTtcbiAgJHUyOiB1bml0KCRtYXgtdncpO1xuICAkdTM6IHVuaXQoJG1pbi1mb250LXNpemUpO1xuICAkdTQ6IHVuaXQoJG1heC1mb250LXNpemUpO1xuXG4gIEBpZiAkdTEgPT0gJHUyIGFuZCAkdTEgPT0gJHUzIGFuZCAkdTEgPT0gJHU0IHtcbiAgICBmb250LXNpemU6ICRtaW4tZm9udC1zaXplO1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1pbi12dykge1xuICAgICAgZm9udC1zaXplOiBjYWxjKCN7JG1pbi1mb250LXNpemV9ICsgI3tzdHJpcC11bml0KCRtYXgtZm9udC1zaXplIC0gJG1pbi1mb250LXNpemUpfSAqICgoMTAwdncgLSAjeyRtaW4tdnd9KSAvICN7c3RyaXAtdW5pdCgkbWF4LXZ3IC0gJG1pbi12dyl9KSk7XG4gICAgfVxuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1heC12dykge1xuICAgICAgZm9udC1zaXplOiAkbWF4LWZvbnQtc2l6ZTtcbiAgICB9XG4gIH1cbn1cbi8qIHN0eWxlbGludC1lbmFibGUgZGVjbGFyYXRpb24tcHJvcGVydHktdW5pdC1hbGxvd2VkLWxpc3QgKi9cbiIsIi8vIENTUyB2YXJpYWJsZXNcbi8vIERlZmluZSBuYW1lczpcbi8vIEZvciBBQUE6IGh0dHBzOi8vd3d3LmNvbG9yLWJsaW5kbmVzcy5jb20vY29sb3ItbmFtZS1odWUvXG4vLyBGb3IgQUE6IGh0dHBzOi8vY2hpci5hZy9wcm9qZWN0cy9uYW1lLXRoYXQtY29sb3IvXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbjpyb290IHtcbiAgLy8gQnJhbmQgY29sb3IgcG9vbFxuICAtLWNvbG9yLWJsYWNrOiAjMjIyO1xuICAtLWNvbG9yLWJsYWNrLXJvY2s6ICMyYjMwM2M7XG4gIC0tY29sb3ItYmx1ZS1jaGFsazogI2VjZTZmMjtcbiAgLS1jb2xvci1lYXN0LWJheTogIzU0NTc3MztcbiAgLS1jb2xvci1wYXR0ZW5zLWJsdWU6ICNlYWYxZjg7XG4gIC0tY29sb3Itc2NpZW5jZS1ibHVlOiAjMDA0OWQxO1xuICAtLWNvbG9yLXNjcm9waW9uOiAjNWY1ZjVmO1xuICAtLWNvbG9yLXZhbGhhbGxhOiAjMmEyZDNlO1xuICAtLWNvbG9yLXdoaXRlOiAjZmZmO1xuXG4gIC8vIE1haW4gZWxlbWVudCBjb2xvcnNcbiAgLS1jb2xvci1oZWFkaW5nOiB2YXIoLS1jb2xvci1tYWluKTtcbiAgLS1jb2xvci1tYWluOiB2YXIoLS1jb2xvci12YWxoYWxsYSk7XG4gIC0tY29sb3ItcGFyYWdyYXBoOiB2YXIoLS1jb2xvci1lYXN0LWJheSk7XG5cbiAgLy8gTW9kZXJuIGxpbmsgdGhhdCBoYXMgYmFja2dyb3VuZCBlZmZlY3Qgb24gaG92ZXJcbiAgLS1jb2xvci1saW5rLWJvcmRlci1ib3R0b206IHZhcigtLWNvbG9yLXNjaWVuY2UtYmx1ZSk7XG4gIC0tY29sb3ItbGluay1ib3JkZXItZm9jdXM6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgLS1jb2xvci1saW5rLWNvbW1lbnQ6IHZhcigtLWNvbG9yLXNjcm9waW9uKTtcbiAgLS1jb2xvci1saW5rLWNvbW1lbnQtdGltZS1hbmNob3I6IHZhcigtLWNvbG9yLWVhc3QtYmF5KTtcbiAgLS1jb2xvci1saW5rLWVkaXQtYmFja2dyb3VuZC1ob3ZlcjogdmFyKC0tY29sb3ItcGF0dGVucy1ibHVlKTtcbiAgLS1jb2xvci1saW5rLWVkaXQtYm9yZGVyOiB2YXIoLS1jb2xvci1wYXR0ZW5zLWJsdWUpO1xuICAtLWNvbG9yLWxpbmstZWRpdC10ZXh0OiBkYXJrZW4oI2VhZjFmOCwgMjAlKTtcbiAgLS1jb2xvci1saW5rLWVkaXQtdGV4dC1ob3ZlcjogdmFyKC0tY29sb3ItZWFzdC1iYXkpO1xuICAtLWNvbG9yLWxpbmstdGV4dDogdmFyKC0tY29sb3Itc2NpZW5jZS1ibHVlKTtcbiAgLS1jb2xvci1saW5rLXRleHQtZm9jdXM6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgLS1jb2xvci1saW5rLXRleHQtaG92ZXI6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgLS1jb2xvci1saW5rLWJhY2tncm91bmQtaG92ZXI6IHZhcigtLWNvbG9yLWxpbmstdGV4dCk7XG5cbiAgLy8gRWxlbWVudCBjb2xvcnNcbiAgLS1jb2xvci1iYWNrZ3JvdW5kLWNvZGUtYmxvY2s6IHZhcigtLWNvbG9yLWJsYWNrLXJvY2spO1xuICAtLWNvbG9yLWJhY2tncm91bmQtY29kZS1pbmxpbmU6ICNmOWYyZjQ7XG4gIC0tY29sb3ItYmFja2dyb3VuZC1kZWZhdWx0OiAjZjBmMGYwO1xuICAtLWNvbG9yLWJhY2tncm91bmQtc2hhZGU6ICMwMzA2MWI7XG4gIC0tY29sb3ItYmFja2dyb3VuZC10YWJsZS1jZWxsLW9kZDogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAtLWNvbG9yLWJhY2tncm91bmQtdGFibGUtY2VsbC1ldmVuOiAjZjNmM2YzO1xuICAtLWNvbG9yLWJhY2tncm91bmQtdGFnOiB2YXIoLS1jb2xvci1wYXR0ZW5zLWJsdWUpO1xuICAtLWNvbG9yLWJsb2NrcXVvdGU6IHZhcigtLWNvbG9yLXNjaWVuY2UtYmx1ZSk7XG4gIC0tY29sb3ItY29tbWVudC10ZXh0OiB2YXIoLS1jb2xvci1lYXN0LWJheSk7XG4gIC0tY29sb3ItY29tbWVudC1hdXRob3ItdGV4dDogdmFyKC0tY29sb3ItZWFzdC1iYXkpO1xuICAtLWNvbG9yLXRhZy1ib3JkZXI6IHJnYmEoNiwgMjIsIDQxLCAuMSk7XG4gIC0tY29sb3ItdGFnLWJvcmRlci1ob3ZlcjogcmdiYSg2LCAyMiwgNDEsIC40KTtcbiAgLS1jb2xvci10YWctdGV4dDogdmFyKC0tY29sb3ItYmxhY2spO1xuICAtLWNvbG9yLWNhdGVnb3J5LWJvcmRlcjogI2NkY2ZkNDtcbiAgLS1jb2xvci1jYXRlZ29yeS10ZXh0OiB2YXIoLS1jb2xvci1ibGFjayk7XG4gIC0tY29sb3ItY2FwdGlvbjogIzVjNWM2YTtcbiAgLS1jb2xvci1jb2RlLWJsb2NrOiAjYzcyNTRlO1xuICAtLWNvbG9yLWNvZGUtdGV4dDogI2Y1ZjVmNTtcbiAgLS1jb2xvci1lcnJvcjogI2UxYjNiMjtcbiAgLS1jb2xvci1rYmQtYm9yZGVyOiAjY2NjO1xuICAtLWNvbG9yLWtiZC1iYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1wYXR0ZW5zLWJsdWUpO1xuICAtLWNvbG9yLW91dGxpbmUtb3ZlcmxheS1pdGVtczogI2ZmODQ4YTtcbiAgLS1jb2xvci1wYWdpbmF0aW9uLXRleHQ6IHZhcigtLWNvbG9yLXZhbGhhbGxhKTtcbiAgLS1jb2xvci1wYWdpbmF0aW9uLWJhY2tncm91bmQtaG92ZXI6IHZhcigtLWNvbG9yLXZhbGhhbGxhKTtcbiAgLS1jb2xvci1wYWdpbmF0aW9uLWJvcmRlci1ob3ZlcjogdmFyKC0tY29sb3ItdmFsaGFsbGEpO1xuICAtLWNvbG9yLXBhZ2luYXRpb24tdGV4dC1ob3ZlcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAtLWNvbG9yLXBhZ2luYXRpb24tYmFja2dyb3VuZC1jdXJyZW50OiB2YXIoLS1jb2xvci12YWxoYWxsYSk7XG4gIC0tY29sb3ItcGFnaW5hdGlvbi1ib3JkZXItY3VycmVudDogdmFyKC0tY29sb3ItdmFsaGFsbGEpO1xuICAtLWNvbG9yLXBhZ2luYXRpb24tdGV4dC1jdXJyZW50OiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIC0tY29sb3Itc3VjY2VzczogIzhlZDE4NTtcbiAgLS1jb2xvci10b3AtYXJyb3ctZGFyazogdmFyKC0tY29sb3ItYmxhY2spO1xuICAtLWNvbG9yLXRvcC1hcnJvdy1saWdodDogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAtLWNvbG9yLXdhcm5pbmc6ICNmNGFhNzE7XG4gIC0tY29sb3ItZXJyb3ItYmxvY2stYm9yZGVyOiAjYWRiMmFkOyAvLyBDb2xvciBwaWNrZWQgZnJvbSBBQ0ZcbiAgLS1jb2xvci1lcnJvci1ibG9jay1iYWNrZ3JvdW5kOiAjZjlmOWY5OyAvLyBDb2xvciBwaWNrZWQgZnJvbSBBQ0Zcbn1cbiIsIi8vIFNlbGYtaG9zdGVkIGZvbnRzXG4vLyBSZW1lbWJlciB0byBhZGQgdGhlc2UgYWxzbyB0byBndXRlbmJlcmcvdmFyaWFibGVzL19mb250LWZhbWlseS5zY3NzXG4vLyB3aXRoIGNvcnJlY3QgcGF0aHNcbkBpbmNsdWRlIGZvbnRGYWNlKCdJbnRlcicsICcuLi8uLi9mb250cy9JbnRlci1SZWd1bGFyJywgNDAwKTtcbkBpbmNsdWRlIGZvbnRGYWNlKCdJbnRlcicsICcuLi8uLi9mb250cy9JbnRlci1JdGFsaWMnLCA0MDAsIGl0YWxpYyk7XG5AaW5jbHVkZSBmb250RmFjZSgnSW50ZXInLCAnLi4vLi4vZm9udHMvSW50ZXItQm9sZCcsIDcwMCk7XG4iLCIvLyBGb250IGZhbWlseSBzZXR0aW5nc1xuLy8gWW91IGNhbiBkZWZpbmUgeW91ciBvd24gZm9udCBmYW1pbGllcyBoZXJlLCBsaWtlIC0tZm9udC1iYXJsb3dcbi8vIGFuZCB0aGVuIGF0dGFjaCB0aGVtIHRvIGVsZW1lbnRzOiAtLWZvbnQtcGFyYWdyYXBoOiB2YXIoLS1mb250LWJhcmxvdylcbjpyb290IHtcbiAgLS1mb250LXNlcmlmOiBzYW5zLXNlcmlmO1xuICAtLWZvbnQtc2FuczogJ0ludGVyJywgLWFwcGxlLXN5c3RlbSwgJ0JsaW5rTWFjU3lzdGVtRm9udCcsICdTZWdvZSBVSScsICdSb2JvdG8nLCAnT3h5Z2VuLVNhbnMnLCAnVWJ1bnR1JywgJ0NhbnRhcmVsbCcsICdIZWx2ZXRpY2EgTmV1ZScsIHNhbnMtc2VyaWY7XG4gIC0tZm9udC1tb25vc3BhY2U6ICdJbmNvbnNvbGF0YScsICdNZW5sbycsICdNb25hY28nLCAnQ29uc29sYXMnLCAnQW5kYWxlIE1vbm8nLCAnQml0c3RyZWFtIFZlcmEgU2FucyBNb25vJywgJ0NvdXJpZXIgTmV3JywgbW9ub3NwYWNlO1xuXG4gIC8vIEZvbnRzIGluIHVzZSBmb3IgY29udGVudFxuICAtLWZvbnQtcGFyYWdyYXBoOiB2YXIoLS1mb250LXNhbnMpO1xuICAtLWZvbnQtaGVhZGluZzogdmFyKC0tZm9udC1zYW5zKTtcbn1cbiIsIi8vIENTUyBWYXJpYWJsZXMgZm9yIHJlc3BvbnNpdmUgZm9udHNcbjpyb290IHtcbiAgLy8gSGVhZGluZyBmb250IHNpemVzXG4gIC0tZm9udC1zaXplLWhlcm86IDUycHg7XG4gIC0tZm9udC1zaXplLWgxOiA0MHB4O1xuICAtLWZvbnQtc2l6ZS1oMjogMzBweDtcbiAgLS1mb250LXNpemUtaDM6IDI0cHg7XG4gIC0tZm9udC1zaXplLWg0OiAyMHB4O1xuICAtLWZvbnQtc2l6ZS1oNTogMTZweDtcbiAgLS1mb250LXNpemUtaDY6IDE0cHg7XG5cbiAgLy8gSGVhZGluZyBmb250IHNpemVzIGluIG1vYmlsZVxuICBAbWVkaWEgKG1heC13aWR0aDogJGNvbnRhaW5lci1tb2JpbGUpIHtcbiAgICAtLWZvbnQtc2l6ZS1oZXJvOiAzOHB4O1xuICAgIC0tZm9udC1zaXplLWgxOiAzMnB4O1xuICAgIC0tZm9udC1zaXplLWgyOiAyNHB4O1xuICAgIC0tZm9udC1zaXplLWgzOiAyMXB4O1xuICAgIC0tZm9udC1zaXplLWg0OiAxOHB4O1xuICAgIC0tZm9udC1zaXplLWg1OiAxNHB4O1xuICAgIC0tZm9udC1zaXplLWg2OiAxMnB4O1xuICB9XG5cbiAgLy8gUGFyYWdyYXBoIGZvbnQgc2l6ZXNcbiAgLS1mb250LXNpemUtMTQ6IDE0cHg7XG4gIC0tZm9udC1zaXplLTE1OiAxNXB4O1xuICAtLWZvbnQtc2l6ZS0xNjogMTZweDtcbiAgLS1mb250LXNpemUtMTc6IDE3cHg7XG4gIC0tZm9udC1zaXplLTE4OiAxOHB4O1xuICAtLWZvbnQtc2l6ZS0yMDogMjBweDtcbiAgLS1mb250LXNpemUtMjI6IDIycHg7XG5cbiAgLy8gUGFyYWdyYXBoIGZvbnQgc2l6ZXMgaW4gdGlueSBwaG9uZXMgbGlrZSBpUGhvbmUgNVNcbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQyMHB4KSB7XG4gICAgLS1mb250LXNpemUtMTY6IDE0cHg7XG4gIH1cblxuICAvLyBFbGVtZW50IGZvbnQgc2l6ZXNcbiAgLS1mb250LXNpemUtZGVmYXVsdDogdmFyKC0tZm9udC1zaXplLTE3KTtcbiAgLS1mb250LXNpemUtcGFyYWdyYXBoczogdmFyKC0tZm9udC1zaXplLTE4KTtcbiAgLS1mb250LXNpemUtbmF2LXRvZ2dsZS1sYWJlbDogMTVweDtcbiAgLS1mb250LXNpemUtY2FwdGlvbnM6IDE1cHg7XG5cbiAgLy8gRWxlbWVudCBmb250IHNpemVzIGluIG1vYmlsZVxuICBAbWVkaWEgKG1heC13aWR0aDogJGNvbnRhaW5lci1tb2JpbGUpIHtcbiAgICAtLWZvbnQtc2l6ZS1wYXJhZ3JhcGhzOiAxNnB4O1xuICAgIC0tZm9udC1zaXplLWRlZmF1bHQ6IDE2cHg7XG4gIH1cblxuICAvLyBFbGVtZW50IGZvbnQgc2l6ZXMgaW4gdGlueSBwaG9uZXMgbGlrZSBpUGhvbmUgNVNcbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQyMHB4KSB7XG4gICAgLS1mb250LXNpemUtbmF2LXRvZ2dsZS1sYWJlbDogMTNweDtcbiAgfVxuXG4gIC8vIExpbmUtaGVpZ2h0c1xuICAtLWxpbmUtaGVpZ2h0LWhlYWRpbmdzOiAxLjU7XG4gIC0tbGluZS1oZWlnaHQtY29yZS1oZWFkaW5nOiAxLjIzO1xuICAtLWxpbmUtaGVpZ2h0LXBhcmFncmFwaHM6IDEuNztcbiAgLS1saW5lLWhlaWdodC1wYXJhZ3JhcGhzLWJsb2c6IDEuNzc7XG5cbiAgLy8gRm9udCB3ZWlnaHRzXG4gIC0tZm9udC13ZWlnaHQtcmVndWxhcjogNDAwO1xuICAtLWZvbnQtd2VpZ2h0LW1lZGl1bTogNTAwO1xuICAtLWZvbnQtd2VpZ2h0LXNlbWlib2xkOiA2MDA7XG4gIC0tZm9udC13ZWlnaHQtYm9sZDogNzAwO1xuICAtLWZvbnQtd2VpZ2h0LXBhcmFncmFwaHM6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xuICAtLWZvbnQtd2VpZ2h0LWhlYWRpbmdzOiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcbn1cbiIsIi8vIENTUyBWYXJpYWJsZXMgZm9yIHJhZGlvcyBhbmQgY2hlY2tib3hlc1xuOnJvb3Qge1xuICAvLyBGb3JtIGVsZW1lbnQgY29sb3JzXG4gIC0tY29sb3ItYmFja2dyb3VuZC1pbnB1dC1maWVsZDogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAtLWNvbG9yLWJvcmRlci1mb3JtczogI2Q5ZDlkOTtcbiAgLS1jb2xvci1ib3JkZXItZm9ybXMtZm9jdXM6IHJnYmEoNDIsIDQ1LCA2MiwgLjMpO1xuICAtLWNvbG9yLWJ1dHRvbjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAtLWNvbG9yLWJ1dHRvbi1ob3ZlcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAtLWNvbG9yLWJ1dHRvbi1iYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1lYXN0LWJheSk7XG4gIC0tY29sb3ItYnV0dG9uLWJhY2tncm91bmQtaG92ZXI6IHZhcigtLWNvbG9yLXZhbGhhbGxhKTtcbiAgLS1jb2xvci1jaGVja2JveDogdmFyKC0tY29sb3ItZWFzdC1iYXkpO1xuICAtLWNvbG9yLWNoZWNrYm94LW91dGxpbmU6IDAgMCAwIDNweCByZ2JhKDg0LCA4NywgMTE1LCAuMik7XG4gIC0tY29sb3ItY2hlY2tib3gtYm9yZGVyLWhvdmVyOiBsaWdodGVuKCM1NDU3NzMsIDE1JSk7XG4gIC0tY29sb3ItcGxhY2Vob2xkZXI6IHZhcigtLWNvbG9yLXBhcmFncmFwaCk7XG4gIC0tY29sb3ItcGxhY2Vob2xkZXItZm9jdXM6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgLS1vcGFjaXR5LXBsYWNlaG9sZGVyOiAuNDtcbiAgLS1vcGFjaXR5LXBsYWNlaG9sZGVyLWZvY3VzOiAuODtcblxuICAvLyBGb3JtIGVsZW1lbnQgc2V0dGluZ3NcbiAgLS1ib3JkZXItcmFkaXVzLWNoZWNrYm94OiA0cHg7XG4gIC0tYm9yZGVyLXJhZGl1cy1pbnB1dC1maWVsZDogNHB4O1xuICAtLWJvcmRlci1yYWRpdXMtc2VsZWN0OiAwO1xuICAtLWJvcmRlci13aWR0aC1jaGVja2JveDogMnB4O1xuICAtLWJvcmRlci13aWR0aC1pbnB1dC1maWVsZDogMnB4O1xuICAtLWdhcC1jaGVja2JveDogMTBweDtcbiAgLS1saW5lLWhlaWdodC1jaGVja2JveDogdmFyKC0tbGluZS1oZWlnaHQtcGFyYWdyYXBocyk7XG4gIC0tc2l6ZS1jaGVja2JveC1tYXJrZXI6IDEycHg7XG4gIC0tc2l6ZS1yYWRpby1idXR0b246IDE2cHg7XG4gIC0tc2l6ZS1yYWRpby1idXR0b24tbWFya2VyOiA4cHg7XG59XG4iLCIvLyBDU1MgVmFyaWFibGVzIGZvciByZXNwb25zaXZlIHBhZGRpbmdzIGFuZCBtYXJnaW5zXG46cm9vdCB7XG4gIC8vIFBhZGRpbmdzXG4gIC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbDogMnJlbTtcbiAgLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsLWxhcmdlOiA2LjRyZW07XG4gIC0tcGFkZGluZy1jb250YWluZXItdmVydGljYWw6IDYuNHJlbTtcbiAgLS1wYWRkaW5nLXNpdGUtaGVhZGVyLXZlcnRpY2FsOiAycmVtO1xuICAtLXBhZGRpbmctYmxvY2s6IDhyZW07XG5cbiAgLy8gTWFyZ2luc1xuICAtLW1hcmdpbi1iZXR3ZWVuLXRleHQtZWxlbWVudHM6IDRyZW07XG4gIC0tbWFyZ2luLXdwLWJsb2NrLWltYWdlOiA0cmVtO1xuICAtLW1hcmdpbi1iZXR3ZWVuLXBhcmFncmFwaHM6IDIuN3JlbTtcblxuICAvLyBNaWQtc2l6ZWQgc2NyZWVuc1xuICBAbWVkaWEgKG1heC13aWR0aDogJHdpZHRoLWdyaWQtYmFzZSArIDE1MHB4KSB7XG4gICAgLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsOiAycmVtO1xuICB9XG5cbiAgLy8gV2hlbiBuYXZpZ2F0aW9uIHRyYW5zZm9ybXMgdG8gYSByZXNwb25zaXZlIGhhbWJ1cmdlciBtZW51XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkd2lkdGgtbWF4LW1vYmlsZSkge1xuICAgIC0tcGFkZGluZy1zaXRlLWhlYWRlci12ZXJ0aWNhbDogMnJlbTtcbiAgfVxuXG4gIC8vIGlQYWRcbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRjb250YWluZXItaXBhZCkge1xuICAgIC0tcGFkZGluZy1jb250YWluZXItdmVydGljYWw6IDVyZW07XG4gIH1cblxuICAvLyBCZXR3ZWVuIGlQYWQgYW5kIGEgbW9iaWxlIHBob25lXG4gIEBtZWRpYSAobWF4LXdpZHRoOiA2MDBweCkge1xuICAgIC0tcGFkZGluZy1ibG9jazogNnJlbTtcbiAgfVxuXG4gIC8vIFZhcnMgaW4gbW9iaWxlXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkY29udGFpbmVyLW1vYmlsZSkge1xuICAgIC0tcGFkZGluZy1jb250YWluZXItdmVydGljYWw6IDRyZW07XG4gIH1cbn1cbiIsIi8qIHN0eWxlbGludC1kaXNhYmxlIG51bWJlci1tYXgtcHJlY2lzaW9uICovXG5AbWl4aW4gYnV0dG9uKCRtYXgtd2lkdGg6IDIzMHB4LCAkY29sb3I6IHZhcigtLWNvbG9yLWJ1dHRvbiksICRob3ZlcjogdmFyKC0tY29sb3ItYnV0dG9uLWhvdmVyKSwgJGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWJ1dHRvbi1iYWNrZ3JvdW5kKSwgJGJhY2tncm91bmQtaG92ZXI6IHZhcigtLWNvbG9yLWJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyKSwgJHJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1pbnB1dC1maWVsZCksICRib3JkZXI6IHZhcigtLWJvcmRlci13aWR0aC1pbnB1dC1maWVsZCkgc29saWQgdmFyKC0tY29sb3ItYnV0dG9uLWJhY2tncm91bmQpLCAkYm9yZGVyLWhvdmVyOiB2YXIoLS1ib3JkZXItd2lkdGgtaW5wdXQtZmllbGQpIHNvbGlkICRiYWNrZ3JvdW5kLWhvdmVyLCAkd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1zZW1pYm9sZCksICRhcnJvdzogZmFsc2UsICR0cmFuc2l0aW9uOiBhbGwgLjA4cyBjdWJpYy1iZXppZXIoLjI1LCAuNDYsIC40NSwgLjk0KSkge1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgYm9yZGVyOiAkYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkcmFkaXVzO1xuICBjb2xvcjogJGNvbG9yO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtcGFyYWdyYXBoKTtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtMTYpO1xuICBmb250LXdlaWdodDogJHdlaWdodDtcbiAgbGluZS1oZWlnaHQ6IDE5LjYzNjRweDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbWF4LXdpZHRoOiAkbWF4LXdpZHRoO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nLWJvdHRvbTogY2FsYygxNHB4IC0gY2FsYyh2YXIoLS1ib3JkZXItd2lkdGgtaW5wdXQtZmllbGQpICogMikpO1xuICBwYWRkaW5nLWxlZnQ6IGNhbGMoMjFweCAtIGNhbGModmFyKC0tYm9yZGVyLXdpZHRoLWlucHV0LWZpZWxkKSAqIDIpKTtcbiAgcGFkZGluZy1yaWdodDogY2FsYygyMXB4IC0gY2FsYyh2YXIoLS1ib3JkZXItd2lkdGgtaW5wdXQtZmllbGQpICogMikpO1xuICBwYWRkaW5nLXRvcDogY2FsYygxNHB4IC0gY2FsYyh2YXIoLS1ib3JkZXItd2lkdGgtaW5wdXQtZmllbGQpICogMikpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB3aWR0aDogYXV0bztcblxuICAvLyBCdXR0b25zIHVzdWFsbHkgYWxyZWFkeSBoYXZlIGFycm93c1xuICAvKiBzdHlsZWxpbnQtZGlzYWJsZSBhMTF5L25vLWRpc3BsYXktbm9uZSAqL1xuICAmLmlzLWV4dGVybmFsLWxpbms6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC8qIHN0eWxlbGludC1lbmFibGUgKi9cblxuICAvLyBBcnJvdyBpY29uXG4gIEBpZiAkYXJyb3cge1xuICAgIHN2ZyB7XG4gICAgICBtYXJnaW4tbGVmdDogMnJlbTtcbiAgICB9XG4gIH1cblxuICAmLmZvY3VzLFxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZC1ob3ZlcjtcbiAgICBib3JkZXI6ICRib3JkZXItaG92ZXI7XG4gICAgY29sb3I6ICRob3ZlcjtcbiAgfVxufVxuIiwiLyogc3R5bGVsaW50LWRpc2FibGUgbnVtYmVyLW1heC1wcmVjaXNpb24gKi9cbkBtaXhpbiBidXR0b24tc2l6ZS1zbWFsbCgpIHtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtMTYpO1xuICBsaW5lLWhlaWdodDogMjAuOTA5MXB4O1xuICBwYWRkaW5nLWJvdHRvbTogY2FsYygxMHB4IC0gY2FsYyh2YXIoLS1ib3JkZXItd2lkdGgtaW5wdXQtZmllbGQpICogMikpO1xuICBwYWRkaW5nLWxlZnQ6IGNhbGMoMjFweCAtIGNhbGModmFyKC0tYm9yZGVyLXdpZHRoLWlucHV0LWZpZWxkKSAqIDIpKTtcbiAgcGFkZGluZy1yaWdodDogY2FsYygyMXB4IC0gY2FsYyh2YXIoLS1ib3JkZXItd2lkdGgtaW5wdXQtZmllbGQpICogMikpO1xuICBwYWRkaW5nLXRvcDogY2FsYygxMHB4IC0gY2FsYyh2YXIoLS1ib3JkZXItd2lkdGgtaW5wdXQtZmllbGQpICogMikpO1xufVxuIiwiLyogc3R5bGVsaW50LWRpc2FibGUgbnVtYmVyLW1heC1wcmVjaXNpb24gKi9cbkBtaXhpbiBidXR0b24tc2l6ZS1sYXJnZSgpIHtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtMTgpO1xuICBsaW5lLWhlaWdodDogMjMuMDkwOXB4O1xuICBwYWRkaW5nLWJvdHRvbTogY2FsYygxN3B4IC0gY2FsYyh2YXIoLS1ib3JkZXItd2lkdGgtaW5wdXQtZmllbGQpICogMikpO1xuICBwYWRkaW5nLWxlZnQ6IGNhbGMoMjFweCAtIGNhbGModmFyKC0tYm9yZGVyLXdpZHRoLWlucHV0LWZpZWxkKSAqIDIpKTtcbiAgcGFkZGluZy1yaWdodDogY2FsYygyMXB4IC0gY2FsYyh2YXIoLS1ib3JkZXItd2lkdGgtaW5wdXQtZmllbGQpICogMikpO1xuICBwYWRkaW5nLXRvcDogY2FsYygxN3B4IC0gY2FsYyh2YXIoLS1ib3JkZXItd2lkdGgtaW5wdXQtZmllbGQpICogMikpO1xufVxuIiwiQG1peGluIGhlYWRpbmctaGVybygpIHtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaGVybyk7XG59XG5cbi5oZWFkaW5nLWhlcm8ge1xuICBAaW5jbHVkZSBoZWFkaW5nLWhlcm8oKTtcbn1cbiIsIi8vIEFjY2Vzc2liaWxpdHlcbi8vXG4vLyBBIGhpZGRlbiBzY3JlZW4gcmVhZGVyIGZvciByZWFkZXJzLCBmb2N1cyBlbGVtZW50cyBmb3Jcbi8vIHZpc2lvbiBpbXBhaXJlZCBhbmQgb3RoZXIgdXNlZnVsIGExMXkgQ1NTIGhhY2tzLlxuXG4vLyBUZXh0IG1lYW50IG9ubHkgZm9yIHNjcmVlbiByZWFkZXJzLlxuLnNjcmVlbi1yZWFkZXItdGV4dCB7XG4gIGJvcmRlcjogMDtcbiAgY2xpcDogcmVjdCgxcHgsIDFweCwgMXB4LCAxcHgpO1xuICBjbGlwLXBhdGg6IGluc2V0KDUwJSk7XG4gIGhlaWdodDogMXB4O1xuICBtYXJnaW46IC0xcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmc6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDFweDtcblxuICAvKiBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnQgKi9cbiAgd29yZC13cmFwOiBub3JtYWwgIWltcG9ydGFudDsgLy8gTWFueSBzY3JlZW4gcmVhZGVyIGFuZCBicm93c2VyIGNvbWJpbmF0aW9ucyBhbm5vdW5jZSBicm9rZW4gd29yZHMgYXMgdGhleSB3b3VsZCBhcHBlYXIgdmlzdWFsbHkuXG4gIC8qIHN0eWxlbGludC1lbmFibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50ICovXG5cbiAgJi5za2lwLWxpbmsge1xuICAgIG1hcmdpbjogNXB4O1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItYmxhY2spO1xuICAgIH1cbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGJveC1zaGFkb3c6IDAgMCAycHggMnB4IHJnYmEoMjIsIDIyLCAyMiwgLjYpO1xuICAgIGNsaXA6IGF1dG87XG4gICAgY2xpcC1wYXRoOiBub25lO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogMS43cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbGVmdDogNXB4O1xuICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgcGFkZGluZzogMTVweCAyM3B4IDE0cHg7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIHRvcDogNXB4O1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIHotaW5kZXg6IDEwMDAwMDsgLy8gQWJvdmUgV1AgdG9vbGJhci5cbiAgfVxufVxuXG4vLyBTdXBwcmVzcyBmb2N1cyByaW5nIG9uIGZvciBtb3VzZSBhbmQgdG91Y2ggdXNlcnMgZm9yIHZpc3VhbCByZWFzb25zXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBhMTF5L25vLW91dGxpbmUtbm9uZSAqL1xuW2RhdGEtd2hhdGlucHV0PVwibW91c2VcIl0gKjpmb2N1cyxcbltkYXRhLXdoYXRpbnB1dD1cInRvdWNoXCJdICo6Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xufVxuLyogc3R5bGVsaW50LWVuYWJsZSBhMTF5L25vLW91dGxpbmUtbm9uZSAqL1xuXG4vLyBWaXN1YWxseSBkaXN0aW5jdCBmb2N1cyBjb2xvciBvbiBrZXlib2FyZFxuW2RhdGEtd2hhdGlucHV0PVwia2V5Ym9hcmRcIl0ge1xuXG4gIC8vIE1ha2Ugc3VyZSBldmVyeSBmb2N1c2FibGUgZWxlbWVudCBoYXMgb3BhY2l0eSAxMDAlXG4gIGE6Zm9jdXMsXG4gIGlucHV0OmZvY3VzLFxuICBidXR0b246Zm9jdXMsXG4gIHNlbGVjdDpmb2N1cyxcbiAgdGV4dGFyZWE6Zm9jdXMsXG4gIGRpdlt0YWJpbmRleF06Zm9jdXMge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAuZ2xvYmFsLWxpbmsge1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cblxuICAvLyBBIGJpdCBiZXR0ZXIgZm9jdXMgZm9yIGxhcmdlIGVsZW1lbnRzXG4gIGEuZ2xvYmFsLWxpbms6Zm9jdXMge1xuICAgIG91dGxpbmUtY29sb3I6IHZhcigtLWNvbG9yLW91dGxpbmUtb3ZlcmxheS1pdGVtcyk7XG4gICAgb3V0bGluZS1vZmZzZXQ6IC0xcHg7XG4gICAgb3V0bGluZS1zdHlsZTogc29saWQ7XG4gICAgb3V0bGluZS13aWR0aDogNHB4O1xuICB9XG59XG5cbi8vIEFkZCBpY29uIHRvIGV4dGVybmFsIGxpbmtzXG5hLmlzLWV4dGVybmFsLWxpbmsge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG4gICY6OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uLy4uL3N2Zy9leHRlcm5hbC1saW5rLnN2ZycpO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTRweCAxNHB4O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGhlaWdodDogMTRweDtcbiAgICBtYXJnaW4tbGVmdDogNXB4O1xuICAgIG1hcmdpbi1yaWdodDogMnB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICByaWdodDogMDtcbiAgICB0b3A6IDA7XG4gICAgdHJhbnNpdGlvbjogYWxsIC4xOHMgZWFzZS1pbi1vdXQ7XG4gICAgd2lkdGg6IDE0cHg7XG4gIH1cbn1cblxuLy8gRG8gbm90IHVzZSBleHRlcm5hbCBsaW5rcyBpbmRpY2F0b3JzIGluIGFyZWFzIHRoYXQgdGhleSBkb24ndCBsb29rIGdvb2Qgb3IgZml0XG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBhMTF5L25vLWRpc3BsYXktbm9uZSAqL1xuYS5pcy1leHRlcm5hbC1saW5rLmdsb2JhbC1saW5rOjphZnRlcixcbmEuaXMtZXh0ZXJuYWwtbGluay5uby1leHRlcm5hbC1saW5rLWluZGljYXRvcjo6YWZ0ZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuLyogc3R5bGVsaW50LWVuYWJsZSBhMTF5L25vLWRpc3BsYXktbm9uZSAqL1xuXG4vLyBEZWZpbmUgaGVyZSB0aGUgdXBzZWxsIGJsb2NrcyB0aGF0IGhhdmUgb3ZlcmxheSBsaW5rIGFyZWFzXG4vLyBpbnNpZGUgdGhlbVxuLy8gVGhlc2Ugc2hvdWxkIGFsd2F5cyBoYXZlIG92ZXJmbG93IHZpc2libGUsIGJlY2F1c2Ugb3RoZXJ3aXNlXG4vLyB0aGUgb3V0bGluZSB3aWxsIG5vdCBiZSB2aXNpYmxlIG91dHNpZGUgdGhlIGVsZW1lbnRcbi8vIC5ibG9jay5ibG9jay10aHJlZS11cHNlbGxzIC5jb250YWluZXIsXG4vLyBib2R5IC5ibG9jayAuY29udGFpbmVyIC5jb2wge1xuLy8gICBvdmVyZmxvdzogdmlzaWJsZTtcbi8vIH1cblxuLy8gTWFrZSBmb2N1cyBhIGxpdHRsZSBtb3JlIGVuZ2FnaW5nXG4vLyBAc291cmNlIGh0dHBzOi8vdHdpdHRlci5jb20vYXJneWxlaW5rL3N0YXR1cy8xMzg3MDcyMDk1MTU5NDA2NTk2XG4vLyBAbGluayBodHRwczovL2NvZGVwZW4uaW8vYXJneWxlaW5rL3Blbi9KakV6ZUxwXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IG5vLXByZWZlcmVuY2UpIHtcbiAgOmZvY3VzLFxuICAqOmZvY3VzLFxuICBbZGF0YS13aGF0aW5wdXQ9XCJrZXlib2FyZFwiXSA6Zm9jdXMsXG4gIFtkYXRhLXdoYXRpbnB1dD1cImtleWJvYXJkXCJdIGE6Zm9jdXMge1xuICAgIG91dGxpbmUtb2Zmc2V0OiA1cHg7XG4gICAgdHJhbnNpdGlvbjogb3V0bGluZS1vZmZzZXQgLjI1cyBlYXNlO1xuICB9XG59XG4iLCIvLyBTaXRlIG5hdmlnYXRpb24gZGVza3RvcCBsYXlvdXRcbi8vIFRoZSBtYWluIGxheW91dCBmb3IgdGhlIHdlYnNpdGUgbmF2aWdhdGlvbiwgZm9yIGEgZGVza3RvcCBkZXZpY2VzIG9ubHkuXG5cbi8vIFNldHRpbmdzXG4kYWJzb2x1dGUtbmF2aWdhdGlvbjogdHJ1ZTtcbiR1c2UtZHJvcGRvd24tYnViYmxlOiB0cnVlO1xuJHVzZS1kcm9wZG93bi10b2dnbGUtYW5pbWF0aW9uOiB0cnVlO1xuXG4vLyBDU1MgdmFyaWFibGVzXG4vLyBUaGVzZSBjYW4gYmUgYWRqdXN0ZWQgd2l0aCBtZWRpYSBxdWVyaWVzIGZvciBpbi1iZXR3ZWVuIGJyZWFrcG9pbnRzXG46cm9vdCB7XG4gIC8vIERpbWVuc2lvbnMsIGdhcHMgYW5kIHNwYWNpbmdzXG4gIC0tYm9yZGVyLXJhZGl1cy1zdWItbWVudTogMDtcbiAgLS1ib3gtc2hhZG93LW5hdmlnYXRpb24tc3RhdGljOiAwIDAgMTBweCByZ2JhKDg0LCA4NywgMTE1LCAuMSk7XG4gIC0tZHJvcGRvd24tdG9nZ2xlLXNpemU6IDEycHg7XG4gIC0tZ2FwLWRyb3Bkb3duOiAxcmVtO1xuICAtLWdhcC1iZXR3ZWVuLWRyb3Bkb3duLXRvZ2dsZTogMS41cmVtO1xuICAtLXBhZGRpbmctbWFpbi1sZXZlbC12ZXJ0aWNhbDogLjZyZW07XG4gIC0tcGFkZGluZy1tYWluLWxldmVsLWhvcml6b250YWw6IDJyZW07XG4gIC0tcGFkZGluZy1zdWItbWVudS12ZXJ0aWNhbDogLjZyZW07XG4gIC0tcGFkZGluZy1zdWItbWVudS1ob3Jpem9udGFsOiAxLjVyZW07XG4gIC0td2lkdGgtc3ViLW1lbnU6IDIycmVtO1xuXG4gIC8vIENvbG9yc1xuICAtLWNvbG9yLWJhY2tncm91bmQtbmF2LWRlc2t0b3A6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgLS1jb2xvci1iYWNrZ3JvdW5kLXN1Yi1tZW51OiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIC0tY29sb3ItYm9yZGVyLXN1Yi1tZW51OiByZ2JhKDQxLCA0NCwgNjEsIC4wNSk7XG4gIC0tY29sb3ItZHJvcGRvd24tdG9nZ2xlOiB2YXIoLS1jb2xvci12YWxoYWxsYSk7XG4gIC0tY29sb3Itc3ViLW1lbnU6IHZhcigtLWNvbG9yLXZhbGhhbGxhKTtcbiAgLS1jb2xvci1ob3Zlci1tYWluLWxldmVsOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIC0tY29sb3ItaG92ZXItc3ViLW1lbnU6IHZhcigtLWNvbG9yLXZhbGhhbGxhKTtcbiAgLS1jb2xvci1tYWluLWxldmVsOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIC0tY29sb3ItY3VycmVudDogdmFyKC0tY29sb3ItbWFpbik7XG5cbiAgLy8gRm9udCBzdHlsZXNcbiAgLS1mb250LXNpemUtbWFpbi1sZXZlbDogdmFyKC0tZm9udC1zaXplLTE2KTtcbiAgLS1mb250LXNpemUtc3ViLW1lbnU6IHZhcigtLWZvbnQtc2l6ZS0xNik7XG4gIC0tZm9udC13ZWlnaHQtbWFpbi1sZXZlbDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XG4gIC0tZm9udC13ZWlnaHQtc3ViLW1lbnU6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xufVxuXG4vLyBHZW5lcmFsIG5hdmlnYXRpb24gcmVzZXRzXG4uc2l0ZS1oZWFkZXIgdWwge1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICR3aWR0aC1tYXgtbW9iaWxlKSB7XG4gIC5uYXYtY29udGFpbmVyIHtcbiAgICBAaWYgJGFic29sdXRlLW5hdmlnYXRpb24gPT0gZmFsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmFja2dyb3VuZC1uYXYtZGVza3RvcCk7XG4gICAgICBib3gtc2hhZG93OiB2YXIoLS1ib3gtc2hhZG93LW5hdmlnYXRpb24tc3RhdGljKTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHotaW5kZXg6IDIyMjtcbiAgICB9XG5cbiAgICBAaWYgJGFic29sdXRlLW5hdmlnYXRpb24gPT0gdHJ1ZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHdpZHRoLW1heC1tb2JpbGUpIHtcbiAgICB1bCBsaTpmb2N1cyA+IHVsLFxuICAgIHVsIGxpOmhvdmVyID4gdWwge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG5cbiAgLy8gRGlzYWJsZSBhbmltYXRpb25zIG9uIElFMTAgKyBJRTExXG4gIEBtZWRpYSBzY3JlZW4gYW5kICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7XG4gICAgLy8gRW5hYmxlIGhvdmVyc1xuICAgIHVsIGxpOmZvY3VzID4gdWwsXG4gICAgdWwgbGk6aG92ZXIgPiB1bCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cblxuICAvLyBOZWVkIHRvIHVzZSBkaXNwbGF5OiBub25lIGhlcmUgdG8gbWFrZSBzdXJlIG1vYmlsZSBuYXYtdG9nZ2xlIGlzIHZpc3VhbGx5IGhpZGRlbiBvbiBkZXNrdG9wXG4gIC8qIHN0eWxlbGludC1kaXNhYmxlIGExMXkvbm8tZGlzcGxheS1ub25lICovXG4gIC5uYXYtdG9nZ2xlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC8qIHN0eWxlbGludC1lbmFibGUgKi9cblxuICAvLyBOYXZpZ2F0aW9uIHdyYXBwZXJcbiAgLm5hdi1wcmltYXJ5IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgfVxuXG4gIC8vIE5hdmlnYXRpb24gdW5vcmRlcmVkIGxpc3Qgd3JhcHBlciBlbGVtZW50XG4gIC5tZW51LWl0ZW1zIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG5cbiAgLy8gTmF2aWdhdGlvbiBsaXN0IGl0ZW1cbiAgLm1lbnUtaXRlbSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuXG4gIC8vIE1lbnUgaXRlbXNcbiAgLm1lbnUtaXRlbSA+IGEge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLW1haW4tbGV2ZWwpO1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLW1haW4tbGV2ZWwpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1tYWluLWxldmVsKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tcGFkZGluZy1tYWluLWxldmVsLXZlcnRpY2FsKTtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXBhZGRpbmctbWFpbi1sZXZlbC1ob3Jpem9udGFsKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1wYWRkaW5nLW1haW4tbGV2ZWwtaG9yaXpvbnRhbCk7XG4gICAgcGFkZGluZy10b3A6IHZhcigtLXBhZGRpbmctbWFpbi1sZXZlbC12ZXJ0aWNhbCk7XG4gIH1cblxuICAubWVudS1pdGVtIC5zdWItbWVudSBhIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1zdWItbWVudSk7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtc3ViLW1lbnUpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1zdWItbWVudSk7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tcGFkZGluZy1zdWItbWVudS12ZXJ0aWNhbCk7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1wYWRkaW5nLXN1Yi1tZW51LWhvcml6b250YWwpO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXBhZGRpbmctc3ViLW1lbnUtaG9yaXpvbnRhbCk7XG4gICAgcGFkZGluZy10b3A6IHZhcigtLXBhZGRpbmctc3ViLW1lbnUtdmVydGljYWwpO1xuICB9XG5cbiAgLy8gQ3VycmVudCBtZW51IGl0ZW0gY29sb3JcbiAgLm1lbnUtaXRlbS5jdXJyZW50LW1lbnUtcGFyZW50ID4gYSxcbiAgLm1lbnUtaXRlbS5jdXJyZW50LW1lbnUtaXRlbSA+IGEge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1jdXJyZW50KTtcbiAgfVxuXG4gIC8vIExldCdzIG1ha2Ugc3BhY2UgZm9yIHRoZSBuYXYtdG9nZ2xlL2Fycm93XG4gIC5tZW51LWl0ZW0ubWVudS1pdGVtLWhhcy1jaGlsZHJlbiBhIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1nYXAtYmV0d2Vlbi1kcm9wZG93bi10b2dnbGUpO1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIHRyYW5zaXRpb246IHBhZGRpbmcgLjJzIGN1YmljLWJlemllciguMTksIDEsIC4yMiwgMSksIGJhY2tncm91bmQtY29sb3IgLjJzIGN1YmljLWJlemllciguMTksIDEsIC4yMiwgMSk7XG4gIH1cblxuICAubWVudS1pdGVtID4gYTpob3ZlcixcbiAgLm1lbnUtaXRlbSA+IGE6Zm9jdXMge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1ob3Zlci1tYWluLWxldmVsKTtcbiAgfVxuXG4gIC5tZW51LWl0ZW0gLnN1Yi1tZW51IGE6aG92ZXIsXG4gIC5tZW51LWl0ZW0gLnN1Yi1tZW51IGE6Zm9jdXMge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1ob3Zlci1zdWItbWVudSk7XG4gIH1cblxuICAvLyBDcmVhdGUgYW5pbWF0aW9uIGlsbHVzaW9uXG4gIC8qIHN0eWxlbGludC1kaXNhYmxlIG5vLWRlc2NlbmRpbmctc3BlY2lmaWNpdHkgKi9cbiAgLnN1Yi1tZW51LnRvZ2dsZWQtb24gYSxcbiAgLnN1Yi1tZW51LnRvZ2dsZWQtb24gLnN1Yi1tZW51IGEsXG4gIC5tZW51LWl0ZW0ubWVudS1pdGVtLWhhcy1jaGlsZHJlbjpob3ZlciAuc3ViLW1lbnUgYSxcbiAgLm1lbnUtaXRlbS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuOmZvY3VzIC5zdWItbWVudSBhIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tcGFkZGluZy1zdWItbWVudS12ZXJ0aWNhbCk7XG4gICAgcGFkZGluZy10b3A6IHZhcigtLXBhZGRpbmctc3ViLW1lbnUtdmVydGljYWwpO1xuICB9XG4gIC8qIHN0eWxlbGludC1lbmFibGUgKi9cblxuICAubmF2LXByaW1hcnkgPiB1bDpmaXJzdC1vZi10eXBlID4gLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW46Zm9jdXM6OmJlZm9yZSxcbiAgLm5hdi1wcmltYXJ5ID4gdWw6Zmlyc3Qtb2YtdHlwZSA+IC5tZW51LWl0ZW0taGFzLWNoaWxkcmVuOmhvdmVyOjpiZWZvcmUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgdHJhbnNpdGlvbjogYWxsIC4ycyBjdWJpYy1iZXppZXIoLjE5LCAxLCAuMjIsIDEpO1xuICB9XG5cbiAgLy8gRHJvcGRvd25zXG4gIC5zdWItbWVudSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmFja2dyb3VuZC1zdWItbWVudSk7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJvcmRlci1zdWItbWVudSk7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zdWItbWVudSk7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc3ViLW1lbnUpO1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgdmFyKC0tY29sb3ItYm9yZGVyLXN1Yi1tZW51KTtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ib3JkZXItc3ViLW1lbnUpO1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc3ViLW1lbnUpO1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXN1Yi1tZW51KTtcbiAgICBib3gtc2hhZG93OiAwIDI1cHggMjBweCAtMTBweCByZ2JhKDUsIDQsIDI1LCAuMDUpO1xuICAgIGxlZnQ6IDUlO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi10b3A6IHZhcigtLWdhcC1kcm9wZG93bik7XG4gICAgb3BhY2l0eTogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogLjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctdG9wOiAuNXJlbTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAtOTk5OXB4O1xuICAgIHRyYW5zaXRpb246IHBhZGRpbmcgLjJzIGN1YmljLWJlemllciguMTksIDEsIC4yMiwgMSk7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIHdpZHRoOiB2YXIoLS13aWR0aC1zdWItbWVudSk7XG4gICAgei1pbmRleDogOTtcblxuICAgIC8vIEFsbCBkcm9wZG93bnMgaW4gbGV2ZWwgMiBhbmQgYWZ0ZXJcbiAgICAuc3ViLW1lbnUge1xuICAgICAgbGVmdDogMTAwJTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgbWFyZ2luLXRvcDogLTVweDtcbiAgICAgIHRvcDogMDtcbiAgICB9XG5cbiAgICBsaSB7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB3aWR0aDogdmFyKC0td2lkdGgtc3ViLW1lbnUpO1xuICAgIH1cbiAgfVxuXG4gIC8vIFRoaXMgaXMgd2hlcmUgdGhlIG1hZ2ljIGhhcHBlbnNcbiAgLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gPiAuc3ViLW1lbnUudG9nZ2xlZC1vbixcbiAgLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW46Zm9jdXMgPiAuc3ViLW1lbnUsXG4gIC5tZW51LWl0ZW0taGFzLWNoaWxkcmVuOmhvdmVyID4gLnN1Yi1tZW51IHtcbiAgICAvLyBJZiB5b3Ugd2FudCB0byB1c2UgXCJvdXRcIi1hbmltYXRpb24sIGFkZCB0aGlzOlxuICAgIC8vIC5tZW51LWl0ZW0taGFzLWNoaWxkcmVuLmhvdmVyLWludGVudCA+IC5zdWItbWVudSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0b3A6IDEwMCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAlKTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIHotaW5kZXg6IDE7XG4gIH1cblxuICAubWVudS1pdGVtLWhhcy1jaGlsZHJlbiAuc3ViLW1lbnUudG9nZ2xlZC1vbiAuc3ViLW1lbnUsXG4gIC5tZW51LWl0ZW0taGFzLWNoaWxkcmVuIC5zdWItbWVudSAuc3ViLW1lbnUudG9nZ2xlZC1vbixcbiAgLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW46Zm9jdXMgLnN1Yi1tZW51IC5zdWItbWVudSxcbiAgLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW46aG92ZXIgLnN1Yi1tZW51IC5zdWItbWVudSB7XG4gICAgbWFyZ2luLXRvcDogLTVweDtcbiAgICB0b3A6IDA7XG4gICAgei1pbmRleDogMTA7XG4gIH1cblxuICAvLyBTdWIgbWVudSBpdGVtcyB0aGF0IGhhdmUgaXRlbXMgdW5kZXIgdGhlbVxuICAubWVudS1pdGVtLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4ge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgbWFyZ2luLXJpZ2h0OiAuOHJlbTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAvLyBBZGQgYSBwc2V1ZG8gZWxlbWVudCB0byBmaWxsIHRoZSBnYXBcbiAgICAvLyBiZXR3ZWVuIG1lbnUgaXRlbSBhbmQgc3ViIG1lbnUgdG8gaGVscCBob3ZlcmluZ1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBoZWlnaHQ6IHZhcigtLWdhcC1kcm9wZG93bik7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDEwMCU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cblxuICAvLyBUb2dnbGUgaWNvbiBkaW1lbnNpb25zIG9uIGRlc2t0b3BcbiAgLmRyb3Bkb3duLXRvZ2dsZSBzdmcge1xuICAgIGhlaWdodDogdmFyKC0tZHJvcGRvd24tdG9nZ2xlLXNpemUpO1xuICAgIHdpZHRoOiB2YXIoLS1kcm9wZG93bi10b2dnbGUtc2l6ZSk7XG5cbiAgICBAaWYgJHVzZS1kcm9wZG93bi10b2dnbGUtYW5pbWF0aW9uID09IHRydWUge1xuICAgICAgdHJhbnNpdGlvbjogYWxsIC4zNXMgY3ViaWMtYmV6aWVyKC4xOSwgMSwgLjIyLCAxKTtcbiAgICB9XG4gIH1cblxuICAvLyBNYWluIGxldmVsIHRvZ2dsZSBpY29uXG4gIC5kcm9wZG93bi10b2dnbGUudG9nZ2xlZC1vbiBzdmcge1xuICAgIHRyYW5zZm9ybTogcm90YXRlWCgxODBkZWcpO1xuICB9XG5cbiAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IDA7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWRyb3Bkb3duLXRvZ2dsZSk7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIC8vIFN1Yi1tZW51IHRvZ2dsZSBpY29uXG4gIC5zdWItbWVudSAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICB3aWR0aDogM3JlbTtcbiAgfVxuXG4gIC5zdWItbWVudSAuZHJvcGRvd24tdG9nZ2xlIHN2ZyB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKSByb3RhdGVYKDBkZWcpO1xuICB9XG5cbiAgLnN1Yi1tZW51IC5kcm9wZG93bi10b2dnbGUudG9nZ2xlZC1vbiBzdmcge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZykgcm90YXRlWCgxODBkZWcpO1xuICB9XG5cbiAgLy8gU21vb3RoIGFuaW1hdGlvblxuICBAaWYgJHVzZS1kcm9wZG93bi10b2dnbGUtYW5pbWF0aW9uID09IHRydWUge1xuICAgIC5tZW51LWl0ZW0ubWVudS1pdGVtLWhhcy1jaGlsZHJlbiA+IC5kcm9wZG93bi10b2dnbGUudG9nZ2xlZC1vbiBzdmcsXG4gICAgLm1lbnUtaXRlbS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuOmhvdmVyID4gLmRyb3Bkb3duLXRvZ2dsZSBzdmcsXG4gICAgLm1lbnUtaXRlbS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuOmZvY3VzID4gLmRyb3Bkb3duLXRvZ2dsZSBzdmcge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAlKSByb3RhdGUoMTgwZGVnKTtcbiAgICB9XG5cbiAgICAvLyBTbW9vdGggYW5pbWF0aW9uXG4gICAgLyogc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3ItbWF4LXNwZWNpZmljaXR5LCBzZWxlY3Rvci1tYXgtY2xhc3MgKi9cbiAgICAubWVudS1pdGVtLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gLm1lbnUtaXRlbS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuID4gLmRyb3Bkb3duLXRvZ2dsZS50b2dnbGVkLW9uIHN2ZyxcbiAgICAubWVudS1pdGVtLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gLm1lbnUtaXRlbS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuOmhvdmVyID4gLmRyb3Bkb3duLXRvZ2dsZSBzdmcsXG4gICAgLm1lbnUtaXRlbS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuIC5tZW51LWl0ZW0ubWVudS1pdGVtLWhhcy1jaGlsZHJlbjpmb2N1cyA+IC5kcm9wZG93bi10b2dnbGUgc3ZnIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwJSkgcm90YXRlKDkwZGVnKTtcbiAgICB9XG4gICAgLyogc3R5bGVsaW50LWVuYWJsZSAqL1xuICB9XG5cbiAgLy8gRG9uJ3QgdXNlIGdhcCBmaWxsZXIgaW4gc3ViIG1lbnUgaXRlbXNcbiAgLy8gQWNjZXB0YWJsZSB1c2Ugb2YgZGlzcGxheTogbm9uZSBoZXJlLCBmb3IgdmlzdWFsL3RlY2huaWNhbCBwdXJwb3Nlc1xuICAvKiBzdHlsZWxpbnQtZGlzYWJsZSBhMTF5L25vLWRpc3BsYXktbm9uZSAqL1xuICAuc3ViLW1lbnUgLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW46OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC8qIHN0eWxlbGludC1lbmFibGUgKi9cblxuICAvLyBEcm9wZG93biBidWJibGVcbiAgQGlmICR1c2UtZHJvcGRvd24tYnViYmxlID09IHRydWUge1xuICAgIC5tZW51LWl0ZW0taGFzLWNoaWxkcmVuOjpiZWZvcmUge1xuICAgICAgLy8gVXNlIG9mIG5vbi12YXJpYWJsZSBpcyBhY2NlcHRhYmxlIGhlcmUgYmVjYXVzZSBidWJibGUgbmVlZHMgaXRcbiAgICAgIC8qIHN0eWxlbGludC1kaXNhYmxlIHNoLXdhcWFyL2RlY2xhcmF0aW9uLXVzZS12YXJpYWJsZSAqL1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB2YXIoLS1jb2xvci13aGl0ZSk7XG4gICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgICAgYm9yZGVyLXdpZHRoOiAwIDVweCA1cHg7XG4gICAgICAvKiBzdHlsZWxpbnQtZW5hYmxlICovXG4gICAgICBib3R0b206IC0xMHB4O1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGhlaWdodDogMDtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMjBweDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tO1xuICAgICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICAgIHdpZHRoOiAwO1xuICAgIH1cbiAgfVxufSAvLyBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICR3aWR0aC1tYXgtbW9iaWxlKVxuIiwiLy8gU2l0ZSBuYXZpZ2F0aW9uIG1vYmlsZSBsYXlvdXRcbi8vIFRoZSBtYWluIGxheW91dCBmb3IgdGhlIHdlYnNpdGUgbmF2aWdhdGlvbiwgZm9yIHRoZSBtb2JpbGUgdmVyc2lvbiBvbmx5LlxuXG4vLyBTZXR0aW5nc1xuJGFic29sdXRlLW5hdmlnYXRpb24tbW9iaWxlOiB0cnVlO1xuXG4vLyBTZXR0aW5ncyBmb3Igam9uc3VoL2hhbWJ1cmdlcnNcbi8vIFRoZXNlIG5lZWQgdG8gYmUgU0NTUyB2YXJpYWJsZXNcbiRoYW1idXJnZXItcGFkZGluZy14OiAxLjVyZW07XG4kaGFtYnVyZ2VyLXBhZGRpbmcteTogNHJlbTtcbiRoYW1idXJnZXItbGF5ZXItd2lkdGg6IDNyZW07XG4kaGFtYnVyZ2VyLWxheWVyLWhlaWdodDogLjJyZW07XG4kaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmc6IC41cmVtO1xuJGhhbWJ1cmdlci1sYXllci1jb2xvcjogdmFyKC0tY29sb3ItaGFtYnVyZ2VyKTtcbiRoYW1idXJnZXItbGF5ZXItYm9yZGVyLXJhZGl1czogMDtcbiRoYW1idXJnZXItaG92ZXItb3BhY2l0eTogLjg7XG4kaGFtYnVyZ2VyLWhvdmVyLXRyYW5zaXRpb24tZHVyYXRpb246IC4xNXM7XG4kaGFtYnVyZ2VyLWhvdmVyLXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4kbmF2LW9wZW4tZnJvbS1kaXJlY3Rpb246IHRvcDtcblxuLy8gQ1NTIHZhcmlhYmxlc1xuLy8gVGhlc2UgY2FuIGJlIGFkanVzdGVkIHdpdGggbWVkaWEgcXVlcmllcyBmb3IgaW4tYmV0d2VlbiBicmVha3BvaW50c1xuOnJvb3Qge1xuICAvLyBEaW1lbnNpb25zLCBnYXBzIGFuZCBzcGFjaW5nc1xuICAtLWZvbnQtc2l6ZS1tYWluLWxldmVsLW1vYmlsZTogMTdweDtcbiAgLS1mb250LXNpemUtc3ViLW1lbnUtbW9iaWxlOiAxN3B4O1xuICAtLWZvbnQtd2VpZ2h0LW1haW4tbGV2ZWwtbW9iaWxlOiA2MDA7XG4gIC0tZm9udC13ZWlnaHQtc3ViLW1lbnUtbW9iaWxlOiA2MDA7XG4gIC0tZHJvcGRvd24tdG9nZ2xlLXNpemUtbW9iaWxlOiAxMnB4O1xuICAtLWhlaWdodC1uYXZpZ2F0aW9uLW1vYmlsZTogNzJweDtcbiAgLS1tYXJnaW4tbGVmdC1zdWItbWVudTogMnJlbTtcbiAgLS1wYWRkaW5nLXN1Yi1tZW51LXZlcnRpY2FsLW1vYmlsZTogMS4ycmVtO1xuICAtLXBhZGRpbmctc3ViLW1lbnUtaG9yaXpvbnRhbC1tb2JpbGU6IDIuNXJlbTtcblxuICAvLyBDb2xvcnNcbiAgLS1jb2xvci1hY3RpdmUtbWFpbi1sZXZlbC1tb2JpbGU6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgLS1jb2xvci1iYWNrZ3JvdW5kLW5hdi1tb2JpbGUtaGVhZGVyOiB2YXIoLS1jb2xvci1tYWluKTtcbiAgLS1jb2xvci1iYWNrZ3JvdW5kLW5hdi1tb2JpbGUtaGVhZGVyLWFjdGl2ZTogdmFyKC0tY29sb3ItbWFpbik7XG4gIC0tY29sb3ItYmFja2dyb3VuZC1uYXYtbW9iaWxlLWxheWVyOiB2YXIoLS1jb2xvci1tYWluKTtcbiAgLS1jb2xvci1iYWNrZ3JvdW5kLW5hdi1tb2JpbGUtbGF5ZXItYWN0aXZlOiB2YXIoLS1jb2xvci1tYWluKTtcbiAgLS1jb2xvci1jdXJyZW50LW1vYmlsZTogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAtLWNvbG9yLWRyb3Bkb3duLXRvZ2dsZS1tb2JpbGU6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgLS1jb2xvci1oYW1idXJnZXItYWN0aXZlOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIC0tY29sb3ItaGFtYnVyZ2VyOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIC0tY29sb3ItbWFpbi1sZXZlbC1tb2JpbGU6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgLS1jb2xvci1zZXBhcmF0b3ItbmF2LW1vYmlsZTogcmdiYSgyNTUsIDI1NSwgMjU1LCAuMSk7XG4gIC0tY29sb3Itc3ViLW1lbnUtbW9iaWxlOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC44KTtcbn1cblxuLy8gSW5pdCBUYXN0eSBIYW1idXJnZXIgbmF2aWdhdGlvbiB0b2dnbGVcbkBpbXBvcnQgJ2hhbWJ1cmdlcnMvX3Nhc3MvaGFtYnVyZ2Vycy9oYW1idXJnZXJzJztcblxuLy8gSW5pdCBoYW1idXJnZXIgYW5pbWF0aW9uXG4vLyBDaG9vc2UgZnJvbSBhbmltYXRpb25zOiBodHRwczovL2pvbnN1aC5jb20vaGFtYnVyZ2Vycy9cbi5oYW1idXJnZXIge1xuICBAZXh0ZW5kIC5oYW1idXJnZXItLWNvbGxhcHNlO1xufVxuXG4vLyBOYXZpZ2F0aW9uIGNvcmUgZnVuY3Rpb25hbGl0eVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkd2lkdGgtbWF4LW1vYmlsZSkge1xuICAvLyBGdW5jdGlvbmFsaXR5IG5lZWRzIGRpc3BsYXk6IG5vbmUgaGVyZSBmb3IgdmlzdWFsIHJlYXNvbnNcbiAgLyogc3R5bGVsaW50LWRpc2FibGUgYTExeS9uby1kaXNwbGF5LW5vbmUgKi9cbiAgLmpzIC5tZW51LWl0ZW1zIHVsIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC8qIHN0eWxlbGludC1lbmFibGUgKi9cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkd2lkdGgtbWF4LW1vYmlsZSkge1xuICAuanMgdWwgLnN1Yi1tZW51LnRvZ2dsZWQtb24ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbi8vIExldCdzIGVuc3VyZSBzaXRlLWhlYWRlciBsb2FkcyBwcm9wZXJseSBhbmQgZG9lc24ndCBsZWF2ZSBlbXB0eSBzcGFjZXNcbkBtZWRpYSAobWF4LXdpZHRoOiAkd2lkdGgtbWF4LW1vYmlsZSkge1xuICAubmF2LWNvbnRhaW5lciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmFja2dyb3VuZC1uYXYtbW9iaWxlLWhlYWRlcik7XG5cbiAgICBAaWYgJGFic29sdXRlLW5hdmlnYXRpb24tbW9iaWxlID09IGZhbHNlIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHotaW5kZXg6IDIyMjtcbiAgICB9XG5cbiAgICBAaWYgJGFic29sdXRlLW5hdmlnYXRpb24tbW9iaWxlID09IHRydWUge1xuICAgICAgbGVmdDogMDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkYWJzb2x1dGUtbmF2aWdhdGlvbi1tb2JpbGUgPT0gdHJ1ZSB7XG4gICAgLnNpdGUge1xuICAgICAgcGFkZGluZy10b3A6IHZhcigtLWhlaWdodC1uYXZpZ2F0aW9uLW1vYmlsZSk7XG4gICAgfVxuICB9XG59XG5cbi8vIE1vYmlsZSBzdHlsZXNcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR3aWR0aC1tYXgtbW9iaWxlIC0gMXB4KSB7XG4gIC8vIEdlbmVyYWwgbmF2aWdhdGlvbiByZXNldHMgZm9yIG1vYmlsZVxuICAuc2l0ZS1oZWFkZXIgdWwsXG4gIC5zaXRlLWhlYWRlciBsaSxcbiAgLnNpdGUtaGVhZGVyIGEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuXG4gIC5tYWluLW5hdmlnYXRpb24td3JhcHBlciB7XG4gICAgb3JkZXI6IDY7XG4gICAgei1pbmRleDogOTk5O1xuICB9XG5cbiAgLy8gVXNlcnMgdGhhdCBkb24ndCBoYXZlIEphdmFzY3JpcHQgZW5hYmxlZFxuICAubm8tanMgLnNpdGUtaGVhZGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1iYWNrZ3JvdW5kLW5hdi1tb2JpbGUtaGVhZGVyKTtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICB9XG5cbiAgLy8gRGlzYWJsZSBzY3JvbGwgb24gaHRtbCBib2R5IHdoZW4gbWVudSBpcyBvcGVuZWQuXG4gIC5kaXNhYmxlLXNjcm9sbCB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxuXG4gIC5uYXYtcHJpbWFyeSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmFja2dyb3VuZC1uYXYtbW9iaWxlLWxheWVyKTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSB2YXIoLS1oZWlnaHQtbmF2aWdhdGlvbi1tb2JpbGUpKTtcbiAgICBtYXJnaW46IDA7XG4gICAgb3BhY2l0eTogMDtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgJHRyYW5zaXRpb24tZHVyYXRpb24gZWFzZS1pbi1vdXQ7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIHdpZHRoOiAxMDB2dztcbiAgfVxuXG4gIC5tZW51LWl0ZW1zIHtcbiAgICBtYXJnaW46IDA7XG4gICAgb3BhY2l0eTogMDtcbiAgICBwYWRkaW5nOiAycmVtIDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAvLyBNYWluIGxldmVsIG1vYmlsZSBuYXZpZ2F0aW9uIGxpbmtzXG4gIC5tZW51LWl0ZW0gYSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWNvbG9yLXNlcGFyYXRvci1uYXYtbW9iaWxlKTtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbi1sZXZlbC1tb2JpbGUpO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLW1haW4tbGV2ZWwtbW9iaWxlKTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWFpbi1sZXZlbC1tb2JpbGUpO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tcGFkZGluZy1zdWItbWVudS12ZXJ0aWNhbC1tb2JpbGUpO1xuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tcGFkZGluZy1zdWItbWVudS1ob3Jpem9udGFsLW1vYmlsZSk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKC0tcGFkZGluZy1zdWItbWVudS1ob3Jpem9udGFsLW1vYmlsZSk7XG4gICAgcGFkZGluZy10b3A6IHZhcigtLXBhZGRpbmctc3ViLW1lbnUtdmVydGljYWwtbW9iaWxlKTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIHotaW5kZXg6IDA7XG4gIH1cblxuICAvLyBTdWIgbWVudSBpdGVtc1xuICAuc3ViLW1lbnUgYSB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLXN1Yi1tZW51LW1vYmlsZSk7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtc3ViLW1lbnUtbW9iaWxlKTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtc3ViLW1lbnUtbW9iaWxlKTtcbiAgICBwYWRkaW5nLWxlZnQ6IGNhbGModmFyKC0tcGFkZGluZy1zdWItbWVudS1ob3Jpem9udGFsLW1vYmlsZSkgKyB2YXIoLS1tYXJnaW4tbGVmdC1zdWItbWVudSkpO1xuICB9XG5cbiAgLnN1Yi1tZW51IHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cblxuICAuc3ViLW1lbnUgLnN1Yi1tZW51IGEge1xuICAgIHBhZGRpbmctbGVmdDogY2FsYyh2YXIoLS1wYWRkaW5nLXN1Yi1tZW51LWhvcml6b250YWwtbW9iaWxlKSArIHZhcigtLW1hcmdpbi1sZWZ0LXN1Yi1tZW51KSArIHZhcigtLW1hcmdpbi1sZWZ0LXN1Yi1tZW51KSk7XG4gIH1cblxuICAubWVudS1pdGVtIGE6aG92ZXIsXG4gIC5tZW51LWl0ZW0gYTpmb2N1cyB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWFjdGl2ZS1tYWluLWxldmVsLW1vYmlsZSk7XG4gIH1cblxuICAvLyBDdXJyZW50IG1lbnUgaXRlbSBjb2xvclxuICAubWVudS1pdGVtLmN1cnJlbnQtbWVudS1wYXJlbnQgPiBhLFxuICAubWVudS1pdGVtLmN1cnJlbnQtbWVudS1pdGVtID4gYSB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWN1cnJlbnQtbW9iaWxlKTtcbiAgfVxuXG4gIC8vIERyb3Bkb3duIHRvZ2dsZVxuICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXG4gICAgLy8gQWx0ZXJuYXRpdmUgKyBhbmQgbWludXMgZWZmZWN0XG4gICAgLy8gYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi8uLi9zdmcvbmF2LW9wZW4uc3ZnJyk7XG4gICAgLy8gYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgIC8vIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgLy8gYmFja2dyb3VuZC1zaXplOiB2YXIoLS1kcm9wZG93bi10b2dnbGUtc2l6ZS1tb2JpbGUpIHZhcigtLWRyb3Bkb3duLXRvZ2dsZS1zaXplLW1vYmlsZSk7XG4gICAgYm9yZGVyOiAwO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1kcm9wZG93bi10b2dnbGUtbW9iaWxlKTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbGVmdDogYXV0bztcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1heC1oZWlnaHQ6IDUycHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tcGFkZGluZy1zdWItbWVudS12ZXJ0aWNhbC1tb2JpbGUpO1xuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tcGFkZGluZy1zdWItbWVudS1ob3Jpem9udGFsLW1vYmlsZSk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKC0tcGFkZGluZy1zdWItbWVudS1ob3Jpem9udGFsLW1vYmlsZSk7XG4gICAgcGFkZGluZy10b3A6IHZhcigtLXBhZGRpbmctc3ViLW1lbnUtdmVydGljYWwtbW9iaWxlKTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiAycHg7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gICAgdHJhbnNpdGlvbjogYWxsICR0cmFuc2l0aW9uLWR1cmF0aW9uO1xuICAgIHotaW5kZXg6IDk5OTk7XG4gIH1cblxuICAuZHJvcGRvd24tdG9nZ2xlOmZvY3VzIHtcbiAgICB6LWluZGV4OiAxMDAwMDtcbiAgfVxuXG4gIC5zdWItbWVudSAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3Itc3ViLW1lbnUtbW9iaWxlKTtcbiAgfVxuXG4gIC8vIEhpZGUgZGVza3RvcCB0b2dnbGVzXG4gIC5kcm9wZG93bi10b2dnbGUgc3ZnIHtcbiAgICBoZWlnaHQ6IHZhcigtLWRyb3Bkb3duLXRvZ2dsZS1zaXplLW1vYmlsZSk7XG4gICAgd2lkdGg6IHZhcigtLWRyb3Bkb3duLXRvZ2dsZS1zaXplLW1vYmlsZSk7XG4gICAgLy8gRW5hYmxlIGZvciBhbHRlcm5hdGl2ZSArIGFuZCBtaW51cyBlZmZlY3RcbiAgICAvLyBOZWVkIHRvIHVzZSBkaXNwbGF5OiBub25lIGhlcmUgdG8gbWFrZSBzdXJlIHRoZXJlIGFyZSB2aXN1YWxseSBubyBkb3VibGUgdG9nZ2xlc1xuICAgIC8qIHN0eWxlbGludC1kaXNhYmxlIGExMXkvbm8tZGlzcGxheS1ub25lICovXG4gICAgLy8gZGlzcGxheTogbm9uZTtcbiAgICAvKiBzdHlsZWxpbnQtZW5hYmxlICovXG4gIH1cblxuICAuZHJvcGRvd24tdG9nZ2xlLnRvZ2dsZWQtb24ge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXG4gICAgLy8gQWx0ZXJuYXRpdmUgKyBhbmQgbWludXMgZWZmZWN0XG4gICAgLy8gYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi8uLi9zdmcvbmF2LWNsb3NlLnN2ZycpO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTgwZGVnKTtcbiAgfVxuXG4gIC8vIE1vYmlsZSBuYXZpZ2F0aW9uIGNvcmUgZnVuY3Rpb25hbGl0eVxuICAuanMgLm5hdi1wcmltYXJ5IHtcbiAgICBsZWZ0OiAwO1xuICAgIC8vIEhpZGUgbW9iaWxlIG5hdmlnYXRpb24gYnkgZGVmYXVsdCB3aGlsZSBlbmFibGluZyB1c2Ugb2YgYW5pbWF0aW9uc1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcblxuICAgIC8vIERlZmF1bHQgcG9zaXRpb24sIHNvbWUgYnJvd3NlcnMgbmVlZCB0aGlzXG4gICAgdG9wOiB2YXIoLS1oZWlnaHQtbmF2aWdhdGlvbi1tb2JpbGUpO1xuICAgIHotaW5kZXg6IDU7XG5cbiAgICAubWVudS1pdGVtcyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1iYWNrZ3JvdW5kLW5hdi1tb2JpbGUtbGF5ZXIpO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG4gIH1cblxuICAvLyBFbnN1cmUgbmF2IHN0YXlzIGluIHRoZSBzYW1lIHBvc2l0aW9uIHdoZW4gYWN0aXZhdGVkXG4gIC5qcy5qcy1uYXYtYWN0aXZlIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgLm5hdi1wcmltYXJ5IHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICBwb2ludGVyLWV2ZW50czogYWxsO1xuICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICB9XG5cbiAgICAubWVudS1pdGVtcyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1iYWNrZ3JvdW5kLW5hdi1tb2JpbGUtbGF5ZXItYWN0aXZlKTtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuXG4gICAgLm5hdi1jb250YWluZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmFja2dyb3VuZC1uYXYtbW9iaWxlLWhlYWRlci1hY3RpdmUpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBIYW1idXJnZXIgbWVudSBpY29uIHNwZWNpZmljXG4uaGFtYnVyZ2VyLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyLFxuLmhhbWJ1cmdlci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlLFxuLmhhbWJ1cmdlci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1oYW1idXJnZXItYWN0aXZlKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWhhbWJ1cmdlci1hY3RpdmUpO1xufVxuXG4ubmF2LXRvZ2dsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1oYW1idXJnZXIpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcbiAgbWFyZ2luOiAwO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgcGFkZGluZzogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRvcDogMDtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHotaW5kZXg6IDEwMDAwMDtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHdpZHRoLW1heC1tb2JpbGUpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLy8gTW9kZXJuIHN0dWZmICg6OmFmdGVyIGlzIGZpcnN0IGxpbmUsIHdpdGhvdXQgOjphZnRlciBpcyBmaXJzdClcbiAgJjpub3QoLnRvZ2dsZWQtb24pIC5oYW1idXJnZXItaW5uZXIge1xuICAgIHRyYW5zaXRpb246IHdpZHRoICR0cmFuc2l0aW9uLWR1cmF0aW9uO1xuICAgIHdpZHRoOiAxOHB4O1xuICB9XG5cbiAgJi5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcixcbiAgJjpob3ZlciAuaGFtYnVyZ2VyLWlubmVyLFxuICAmOmZvY3VzIC5oYW1idXJnZXItaW5uZXIge1xuICAgIHdpZHRoOiAkaGFtYnVyZ2VyLWxheWVyLXdpZHRoO1xuICB9XG5cbiAgc3BhbiB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWhhbWJ1cmdlcik7XG4gICAgZm9udC1zaXplOiAxLjJlbTtcbiAgfVxuXG4gICYuaXMtYWN0aXZlIHNwYW4ge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1oYW1idXJnZXItYWN0aXZlKTtcbiAgfVxuXG4gICY6aG92ZXIsXG4gICY6YWN0aXZlIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItaGFtYnVyZ2VyKTtcblxuICAgIHNwYW4ge1xuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWhhbWJ1cmdlcik7XG4gICAgfVxuICB9XG5cbiAgLy8gQWx0ZXJuYXRpdmUgZm9jdXMgZm9yIG1vYmlsZSBuYXZcbiAgJjpmb2N1cyB7XG4gICAgc3BhbiBzcGFuIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWhhbWJ1cmdlcik7XG4gICAgfVxuXG4gICAgc3BhbiBzcGFuOjpiZWZvcmUsXG4gICAgc3BhbiBzcGFuOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1oYW1idXJnZXIpO1xuICAgIH1cbiAgfVxuXG4gIC8vIFdlIGFscmVhZHkgaGF2ZSBhcmlhLWxhYmVsIGZvciBidXR0b25cbiAgLy8gQnV0IHdlIHdhbnQgdG8gc2hvdyBuYXYtdG9nZ2xlIHZpc3VhbGx5IGZvciBzZWVpbmcgdXNlcnNcbiAgLy8gU28gd2UnbGwgYWRkIGhhcy12aXNpYmxlLWxhYmVsIHRvIG5hdi10b2dnbGUgaW4gaGVhZGVyLnBocFxuICAvKiBzdHlsZWxpbnQtZGlzYWJsZSBhMTF5L25vLWRpc3BsYXktbm9uZSAqL1xuICAmOm5vdCguaGFzLXZpc2libGUtbGFiZWwpIC5uYXYtdG9nZ2xlLWxhYmVsIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC8qIHN0eWxlbGludC1lbmFibGUgKi9cblxuICBAbWVkaWEgKG1heC13aWR0aDogJHdpZHRoLW1heC1tb2JpbGUgLSAxcHgpIHtcbiAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICYuaGFzLXZpc2libGUtbGFiZWwge1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgfVxuXG4gICAgJi5oYXMtdmlzaWJsZS1sYWJlbCAubmF2LXRvZ2dsZS1sYWJlbCB7XG4gICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1uYXYtdG9nZ2xlLWxhYmVsKTtcblxuICAgICAgLy8gSGlkZSBvbiBzbWFsbGVzdCBwaG9uZXNcbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0MTBweCkge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA0MTFweCkge1xuICAgICAgJi5oYXMtdmlzaWJsZS1sYWJlbCAuaGFtYnVyZ2VyLWJveCB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMnJlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBTZXBhcmF0ZSBhY3RpdmUgY29sb3JzIGZvciBvcGVuZWQgc3RhdGVcbiAgJi5pcy1hY3RpdmUge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1oYW1idXJnZXItYWN0aXZlKTtcbiAgfVxuXG4gICYuaXMtYWN0aXZlIC5oYW1idXJnZXItYm94IHtcbiAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWhhbWJ1cmdlci1hY3RpdmUpO1xuICAgIH1cblxuICAgIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWhhbWJ1cmdlci1hY3RpdmUpO1xuICAgIH1cbiAgfVxuXG4gICYuaXMtYWN0aXZlIC5mb2N1cyxcbiAgJi5pcy1hY3RpdmUgc3Bhbjpmb2N1cyB7XG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1oYW1idXJnZXItYWN0aXZlKTtcbiAgICB9XG5cbiAgICAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1oYW1idXJnZXItYWN0aXZlKTtcbiAgICB9XG4gIH1cblxuICAmLmlzLWFjdGl2ZSBzcGFuOmZvY3VzLFxuICAmLmlzLWFjdGl2ZSBzcGFuOmhvdmVyLFxuICAmLmlzLWFjdGl2ZSBzcGFuOmFjdGl2ZSB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWhhbWJ1cmdlci1hY3RpdmUpO1xuXG4gICAgc3BhbiB7XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItaGFtYnVyZ2VyLWFjdGl2ZSk7XG4gICAgfVxuICB9XG59XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG4vKiFcbiAqIEhhbWJ1cmdlcnNcbiAqIEBkZXNjcmlwdGlvbiBUYXN0eSBDU1MtYW5pbWF0ZWQgaGFtYnVyZ2Vyc1xuICogQGF1dGhvciBKb25hdGhhbiBTdWggQGpvbnN1aFxuICogQHNpdGUgaHR0cHM6Ly9qb25zdWguY29tL2hhbWJ1cmdlcnNcbiAqIEBsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9qb25zdWgvaGFtYnVyZ2Vyc1xuICovXG5cbi8vIFNldHRpbmdzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuJGhhbWJ1cmdlci1wYWRkaW5nLXggICAgICAgICAgIDogMTVweCAhZGVmYXVsdDtcbiRoYW1idXJnZXItcGFkZGluZy15ICAgICAgICAgICA6IDE1cHggIWRlZmF1bHQ7XG4kaGFtYnVyZ2VyLWxheWVyLXdpZHRoICAgICAgICAgOiA0MHB4ICFkZWZhdWx0O1xuJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgICAgICAgIDogNHB4ICFkZWZhdWx0O1xuJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nICAgICAgIDogNnB4ICFkZWZhdWx0O1xuJGhhbWJ1cmdlci1sYXllci1jb2xvciAgICAgICAgIDogIzAwMCAhZGVmYXVsdDtcbiRoYW1idXJnZXItbGF5ZXItYm9yZGVyLXJhZGl1cyA6IDRweCAhZGVmYXVsdDtcbiRoYW1idXJnZXItaG92ZXItb3BhY2l0eSAgICAgICA6IDAuNyAhZGVmYXVsdDtcbiRoYW1idXJnZXItYWN0aXZlLWxheWVyLWNvbG9yICA6ICRoYW1idXJnZXItbGF5ZXItY29sb3IgIWRlZmF1bHQ7XG4kaGFtYnVyZ2VyLWFjdGl2ZS1ob3Zlci1vcGFjaXR5OiAkaGFtYnVyZ2VyLWhvdmVyLW9wYWNpdHkgIWRlZmF1bHQ7XG5cbi8vIFRvIHVzZSBDU1MgZmlsdGVycyBhcyB0aGUgaG92ZXIgZWZmZWN0IGluc3RlYWQgb2Ygb3BhY2l0eSxcbi8vIHNldCAkaGFtYnVyZ2VyLWhvdmVyLXVzZS1maWx0ZXIgYXMgdHJ1ZSBhbmRcbi8vIGNoYW5nZSB0aGUgdmFsdWUgb2YgJGhhbWJ1cmdlci1ob3Zlci1maWx0ZXIgYWNjb3JkaW5nbHkuXG4kaGFtYnVyZ2VyLWhvdmVyLXVzZS1maWx0ZXIgICA6IGZhbHNlICFkZWZhdWx0O1xuJGhhbWJ1cmdlci1ob3Zlci1maWx0ZXIgICAgICAgOiBvcGFjaXR5KDUwJSkgIWRlZmF1bHQ7XG4kaGFtYnVyZ2VyLWFjdGl2ZS1ob3Zlci1maWx0ZXI6ICRoYW1idXJnZXItaG92ZXItZmlsdGVyICFkZWZhdWx0O1xuXG4vLyBUeXBlcyAoUmVtb3ZlIG9yIGNvbW1lbnQgb3V0IHdoYXQgeW91IGRvbuKAmXQgbmVlZClcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4kaGFtYnVyZ2VyLXR5cGVzOiAoXG4gIDNkeCxcbiAgM2R4LXIsXG4gIDNkeSxcbiAgM2R5LXIsXG4gIDNkeHksXG4gIDNkeHktcixcbiAgYXJyb3csXG4gIGFycm93LXIsXG4gIGFycm93YWx0LFxuICBhcnJvd2FsdC1yLFxuICBhcnJvd3R1cm4sXG4gIGFycm93dHVybi1yLFxuICBib3JpbmcsXG4gIGNvbGxhcHNlLFxuICBjb2xsYXBzZS1yLFxuICBlbGFzdGljLFxuICBlbGFzdGljLXIsXG4gIGVtcGhhdGljLFxuICBlbXBoYXRpYy1yLFxuICBtaW51cyxcbiAgc2xpZGVyLFxuICBzbGlkZXItcixcbiAgc3BpbixcbiAgc3Bpbi1yLFxuICBzcHJpbmcsXG4gIHNwcmluZy1yLFxuICBzdGFuZCxcbiAgc3RhbmQtcixcbiAgc3F1ZWV6ZSxcbiAgdm9ydGV4LFxuICB2b3J0ZXgtclxuKSAhZGVmYXVsdDtcblxuLy8gQmFzZSBIYW1idXJnZXIgKFdlIG5lZWQgdGhpcylcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5AaW1wb3J0IFwiYmFzZVwiO1xuXG4vLyBIYW1idXJnZXIgdHlwZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5AaW1wb3J0IFwidHlwZXMvM2R4XCI7XG5AaW1wb3J0IFwidHlwZXMvM2R4LXJcIjtcbkBpbXBvcnQgXCJ0eXBlcy8zZHlcIjtcbkBpbXBvcnQgXCJ0eXBlcy8zZHktclwiO1xuQGltcG9ydCBcInR5cGVzLzNkeHlcIjtcbkBpbXBvcnQgXCJ0eXBlcy8zZHh5LXJcIjtcbkBpbXBvcnQgXCJ0eXBlcy9hcnJvd1wiO1xuQGltcG9ydCBcInR5cGVzL2Fycm93LXJcIjtcbkBpbXBvcnQgXCJ0eXBlcy9hcnJvd2FsdFwiO1xuQGltcG9ydCBcInR5cGVzL2Fycm93YWx0LXJcIjtcbkBpbXBvcnQgXCJ0eXBlcy9hcnJvd3R1cm5cIjtcbkBpbXBvcnQgXCJ0eXBlcy9hcnJvd3R1cm4tclwiO1xuQGltcG9ydCBcInR5cGVzL2JvcmluZ1wiO1xuQGltcG9ydCBcInR5cGVzL2NvbGxhcHNlXCI7XG5AaW1wb3J0IFwidHlwZXMvY29sbGFwc2UtclwiO1xuQGltcG9ydCBcInR5cGVzL2VsYXN0aWNcIjtcbkBpbXBvcnQgXCJ0eXBlcy9lbGFzdGljLXJcIjtcbkBpbXBvcnQgXCJ0eXBlcy9lbXBoYXRpY1wiO1xuQGltcG9ydCBcInR5cGVzL2VtcGhhdGljLXJcIjtcbkBpbXBvcnQgXCJ0eXBlcy9taW51c1wiO1xuQGltcG9ydCBcInR5cGVzL3NsaWRlclwiO1xuQGltcG9ydCBcInR5cGVzL3NsaWRlci1yXCI7XG5AaW1wb3J0IFwidHlwZXMvc3BpblwiO1xuQGltcG9ydCBcInR5cGVzL3NwaW4tclwiO1xuQGltcG9ydCBcInR5cGVzL3NwcmluZ1wiO1xuQGltcG9ydCBcInR5cGVzL3NwcmluZy1yXCI7XG5AaW1wb3J0IFwidHlwZXMvc3RhbmRcIjtcbkBpbXBvcnQgXCJ0eXBlcy9zdGFuZC1yXCI7XG5AaW1wb3J0IFwidHlwZXMvc3F1ZWV6ZVwiO1xuQGltcG9ydCBcInR5cGVzL3ZvcnRleFwiO1xuQGltcG9ydCBcInR5cGVzL3ZvcnRleC1yXCI7XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBDb29raW5nIHVwIGFkZGl0aW9uYWwgdHlwZXM6XG4vL1xuLy8gVGhlIFNhc3MgZm9yIGVhY2ggaGFtYnVyZ2VyIHR5cGUgc2hvdWxkIGJlIG5lc3RlZFxuLy8gaW5zaWRlIGFuIEBpZiBkaXJlY3RpdmUgdG8gY2hlY2sgd2hldGhlciBvciBub3Rcbi8vIGl0IGV4aXN0cyBpbiAkaGFtYnVyZ2VyLXR5cGVzIHNvIG9ubHkgdGhlIENTUyBmb3Jcbi8vIGluY2x1ZGVkIHR5cGVzIGFyZSBnZW5lcmF0ZWQuXG4vL1xuLy8gZS5nLiBoYW1idXJnZXJzL3R5cGVzL19uZXctdHlwZS5zY3NzXG4vL1xuLy8gQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIG5ldy10eXBlKSB7XG4vLyAgIC5oYW1idXJnZXItLW5ldy10eXBlIHtcbi8vICAgICAuLi5cbi8vICAgfVxuLy8gfVxuIiwiLy8gSGFtYnVyZ2VyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLmhhbWJ1cmdlciB7XG4gIHBhZGRpbmc6ICRoYW1idXJnZXItcGFkZGluZy15ICRoYW1idXJnZXItcGFkZGluZy14O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGN1cnNvcjogcG9pbnRlcjtcblxuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5LCBmaWx0ZXI7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMTVzO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuXG4gIC8vIE5vcm1hbGl6ZSAoPGJ1dHRvbj4pXG4gIGZvbnQ6IGluaGVyaXQ7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbiAgbWFyZ2luOiAwO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcblxuICAmOmhvdmVyIHtcbiAgICBAaWYgJGhhbWJ1cmdlci1ob3Zlci11c2UtZmlsdGVyID09IHRydWUge1xuICAgICAgZmlsdGVyOiAkaGFtYnVyZ2VyLWhvdmVyLWZpbHRlcjtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgb3BhY2l0eTogJGhhbWJ1cmdlci1ob3Zlci1vcGFjaXR5O1xuICAgIH1cbiAgfVxuXG4gICYuaXMtYWN0aXZlIHtcbiAgICAmOmhvdmVyIHtcbiAgICAgIEBpZiAkaGFtYnVyZ2VyLWhvdmVyLXVzZS1maWx0ZXIgPT0gdHJ1ZSB7XG4gICAgICAgIGZpbHRlcjogJGhhbWJ1cmdlci1hY3RpdmUtaG92ZXItZmlsdGVyO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBvcGFjaXR5OiAkaGFtYnVyZ2VyLWFjdGl2ZS1ob3Zlci1vcGFjaXR5O1xuICAgICAgfVxuICAgIH1cblxuICAgIC5oYW1idXJnZXItaW5uZXIsXG4gICAgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlLFxuICAgIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRoYW1idXJnZXItYWN0aXZlLWxheWVyLWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uaGFtYnVyZ2VyLWJveCB7XG4gIHdpZHRoOiAkaGFtYnVyZ2VyLWxheWVyLXdpZHRoO1xuICBoZWlnaHQ6ICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0ICogMyArICRoYW1idXJnZXItbGF5ZXItc3BhY2luZyAqIDI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uaGFtYnVyZ2VyLWlubmVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRvcDogNTAlO1xuICBtYXJnaW4tdG9wOiAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCAvIC0yO1xuXG4gICYsXG4gICY6OmJlZm9yZSxcbiAgJjo6YWZ0ZXIge1xuICAgIHdpZHRoOiAkaGFtYnVyZ2VyLWxheWVyLXdpZHRoO1xuICAgIGhlaWdodDogJGhhbWJ1cmdlci1sYXllci1oZWlnaHQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGhhbWJ1cmdlci1sYXllci1jb2xvcjtcbiAgICBib3JkZXItcmFkaXVzOiAkaGFtYnVyZ2VyLWxheWVyLWJvcmRlci1yYWRpdXM7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjE1cztcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZTtcbiAgfVxuXG4gICY6OmJlZm9yZSxcbiAgJjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAmOjpiZWZvcmUge1xuICAgIHRvcDogKCRoYW1idXJnZXItbGF5ZXItc3BhY2luZyArICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0KSAqIC0xO1xuICB9XG5cbiAgJjo6YWZ0ZXIge1xuICAgIGJvdHRvbTogKCRoYW1idXJnZXItbGF5ZXItc3BhY2luZyArICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0KSAqIC0xO1xuICB9XG59XG4iLCJAaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgM2R4KSB7XG4gIC8qXG4gICAqIDNEWFxuICAgKi9cbiAgLmhhbWJ1cmdlci0tM2R4IHtcbiAgICAuaGFtYnVyZ2VyLWJveCB7XG4gICAgICBwZXJzcGVjdGl2ZTogJGhhbWJ1cmdlci1sYXllci13aWR0aCAqIDI7XG4gICAgfVxuXG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpLFxuICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvciAwcyAwLjFzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKTtcblxuICAgICAgJjo6YmVmb3JlLFxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMHMgMC4xcyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlWSgxODBkZWcpO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCArICRoYW1idXJnZXItbGF5ZXItc3BhY2luZywgMCkgcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsICgkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCArICRoYW1idXJnZXItbGF5ZXItc3BhY2luZykgKiAtMSwgMCkgcm90YXRlKC00NWRlZyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCAzZHgtcikge1xuICAvKlxuICAgKiAzRFggUmV2ZXJzZVxuICAgKi9cbiAgLmhhbWJ1cmdlci0tM2R4LXIge1xuICAgIC5oYW1idXJnZXItYm94IHtcbiAgICAgIHBlcnNwZWN0aXZlOiAkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogMjtcbiAgICB9XG5cbiAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSksXG4gICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yIDBzIDAuMXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpO1xuXG4gICAgICAmOjpiZWZvcmUsXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwcyAwLjFzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVZKC0xODBkZWcpO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCArICRoYW1idXJnZXItbGF5ZXItc3BhY2luZywgMCkgcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsICgkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCArICRoYW1idXJnZXItbGF5ZXItc3BhY2luZykgKiAtMSwgMCkgcm90YXRlKC00NWRlZyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCAzZHkpIHtcbiAgLypcbiAgICogM0RZXG4gICAqL1xuICAuaGFtYnVyZ2VyLS0zZHkge1xuICAgIC5oYW1idXJnZXItYm94IHtcbiAgICAgIHBlcnNwZWN0aXZlOiAkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogMjtcbiAgICB9XG5cbiAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSksXG4gICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yIDBzIDAuMXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpO1xuXG4gICAgICAmOjpiZWZvcmUsXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwcyAwLjFzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVYKC0xODBkZWcpO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCArICRoYW1idXJnZXItbGF5ZXItc3BhY2luZywgMCkgcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsICgkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCArICRoYW1idXJnZXItbGF5ZXItc3BhY2luZykgKiAtMSwgMCkgcm90YXRlKC00NWRlZyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCAzZHktcikge1xuICAvKlxuICAgKiAzRFkgUmV2ZXJzZVxuICAgKi9cbiAgLmhhbWJ1cmdlci0tM2R5LXIge1xuICAgIC5oYW1idXJnZXItYm94IHtcbiAgICAgIHBlcnNwZWN0aXZlOiAkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogMjtcbiAgICB9XG5cbiAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSksXG4gICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yIDBzIDAuMXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpO1xuXG4gICAgICAmOjpiZWZvcmUsXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwcyAwLjFzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVYKDE4MGRlZyk7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0ICsgJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nLCAwKSByb3RhdGUoNDVkZWcpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgKCRoYW1idXJnZXItbGF5ZXItaGVpZ2h0ICsgJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nKSAqIC0xLCAwKSByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIDNkeHkpIHtcbiAgLypcbiAgICogM0RYWVxuICAgKi9cbiAgLmhhbWJ1cmdlci0tM2R4eSB7XG4gICAgLmhhbWJ1cmdlci1ib3gge1xuICAgICAgcGVyc3BlY3RpdmU6ICRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAyO1xuICAgIH1cblxuICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKSxcbiAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3IgMHMgMC4xcyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSk7XG5cbiAgICAgICY6OmJlZm9yZSxcbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDBzIDAuMXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVgoMTgwZGVnKSByb3RhdGVZKDE4MGRlZyk7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0ICsgJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nLCAwKSByb3RhdGUoNDVkZWcpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgKCRoYW1idXJnZXItbGF5ZXItaGVpZ2h0ICsgJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nKSAqIC0xLCAwKSByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIDNkeHktcikge1xuICAvKlxuICAgKiAzRFhZIFJldmVyc2VcbiAgICovXG4gIC5oYW1idXJnZXItLTNkeHktciB7XG4gICAgLmhhbWJ1cmdlci1ib3gge1xuICAgICAgcGVyc3BlY3RpdmU6ICRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAyO1xuICAgIH1cblxuICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKSxcbiAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3IgMHMgMC4xcyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSk7XG5cbiAgICAgICY6OmJlZm9yZSxcbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDBzIDAuMXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVgoMTgwZGVnKSByb3RhdGVZKDE4MGRlZykgcm90YXRlWigtMTgwZGVnKTtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgKyAkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcsIDApIHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAoJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgKyAkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcpICogLTEsIDApIHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgYXJyb3cpIHtcbiAgLypcbiAgICogQXJyb3dcbiAgICovXG4gIC5oYW1idXJnZXItLWFycm93LmlzLWFjdGl2ZSB7XG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKCRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAtMC4yLCAwLCAwKSByb3RhdGUoLTQ1ZGVnKSBzY2FsZSgwLjcsIDEpO1xuICAgICAgfVxuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoJGhhbWJ1cmdlci1sYXllci13aWR0aCAqIC0wLjIsIDAsIDApIHJvdGF0ZSg0NWRlZykgc2NhbGUoMC43LCAxKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCBhcnJvdy1yKSB7XG4gIC8qXG4gICAqIEFycm93IFJpZ2h0XG4gICAqL1xuICAuaGFtYnVyZ2VyLS1hcnJvdy1yLmlzLWFjdGl2ZSB7XG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKCRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAwLjIsIDAsIDApIHJvdGF0ZSg0NWRlZykgc2NhbGUoMC43LCAxKTtcbiAgICAgIH1cblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKCRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAwLjIsIDAsIDApIHJvdGF0ZSgtNDVkZWcpIHNjYWxlKDAuNywgMSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgYXJyb3dhbHQpIHtcbiAgLypcbiAgICogQXJyb3cgQWx0XG4gICAqL1xuICAuaGFtYnVyZ2VyLS1hcnJvd2FsdCB7XG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4xcyAwLjFzIGVhc2UsXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjFzIGN1YmljLWJlemllcigwLjE2NSwgMC44NCwgMC40NCwgMSk7XG4gICAgICB9XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdHJhbnNpdGlvbjogYm90dG9tIDAuMXMgMC4xcyBlYXNlLFxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4xcyBjdWJpYy1iZXppZXIoMC4xNjUsIDAuODQsIDAuNDQsIDEpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKCRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAtMC4yLCAkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogLTAuMjUsIDApIHJvdGF0ZSgtNDVkZWcpIHNjYWxlKDAuNywgMSk7XG4gICAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMXMgZWFzZSxcbiAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4xcyAwLjFzIGN1YmljLWJlemllcigwLjg5NSwgMC4wMywgMC42ODUsIDAuMjIpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKCRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAtMC4yLCAkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogMC4yNSwgMCkgcm90YXRlKDQ1ZGVnKSBzY2FsZSgwLjcsIDEpO1xuICAgICAgICAgIHRyYW5zaXRpb246IGJvdHRvbSAwLjFzIGVhc2UsXG4gICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMXMgMC4xcyBjdWJpYy1iZXppZXIoMC44OTUsIDAuMDMsIDAuNjg1LCAwLjIyKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIGFycm93YWx0LXIpIHtcbiAgLypcbiAgICogQXJyb3cgQWx0IFJpZ2h0XG4gICAqL1xuICAuaGFtYnVyZ2VyLS1hcnJvd2FsdC1yIHtcbiAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjFzIDAuMXMgZWFzZSxcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMXMgY3ViaWMtYmV6aWVyKDAuMTY1LCAwLjg0LCAwLjQ0LCAxKTtcbiAgICAgIH1cblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICB0cmFuc2l0aW9uOiBib3R0b20gMC4xcyAwLjFzIGVhc2UsXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjFzIGN1YmljLWJlemllcigwLjE2NSwgMC44NCwgMC40NCwgMSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoJGhhbWJ1cmdlci1sYXllci13aWR0aCAqIDAuMiwgJGhhbWJ1cmdlci1sYXllci13aWR0aCAqIC0wLjI1LCAwKSByb3RhdGUoNDVkZWcpIHNjYWxlKDAuNywgMSk7XG4gICAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMXMgZWFzZSxcbiAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4xcyAwLjFzIGN1YmljLWJlemllcigwLjg5NSwgMC4wMywgMC42ODUsIDAuMjIpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKCRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAwLjIsICRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAwLjI1LCAwKSByb3RhdGUoLTQ1ZGVnKSBzY2FsZSgwLjcsIDEpO1xuICAgICAgICAgIHRyYW5zaXRpb246IGJvdHRvbSAwLjFzIGVhc2UsXG4gICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMXMgMC4xcyBjdWJpYy1iZXppZXIoMC44OTUsIDAuMDMsIDAuNjg1LCAwLjIyKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIGFycm93dHVybikge1xuICAvKlxuICAgKiBBcnJvdyBUdXJuXG4gICAqL1xuICAuaGFtYnVyZ2VyLS1hcnJvd3R1cm4uaXMtYWN0aXZlIHtcbiAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKC0xODBkZWcpO1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDhweCwgMCwgMCkgcm90YXRlKDQ1ZGVnKSBzY2FsZSgwLjcsIDEpO1xuICAgICAgfVxuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoOHB4LCAwLCAwKSByb3RhdGUoLTQ1ZGVnKSBzY2FsZSgwLjcsIDEpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIGFycm93dHVybi1yKSB7XG4gIC8qXG4gICAqIEFycm93IFR1cm4gUmlnaHRcbiAgICovXG4gIC5oYW1idXJnZXItLWFycm93dHVybi1yLmlzLWFjdGl2ZSB7XG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTgwZGVnKTtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtOHB4LCAwLCAwKSByb3RhdGUoLTQ1ZGVnKSBzY2FsZSgwLjcsIDEpO1xuICAgICAgfVxuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLThweCwgMCwgMCkgcm90YXRlKDQ1ZGVnKSBzY2FsZSgwLjcsIDEpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIGJvcmluZykge1xuICAvKlxuICAgKiBCb3JpbmdcbiAgICovXG4gIC5oYW1idXJnZXItLWJvcmluZyB7XG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICAmLFxuICAgICAgJjo6YmVmb3JlLFxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBub25lO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIGNvbGxhcHNlKSB7XG4gIC8qXG4gICAqIENvbGxhcHNlXG4gICAqL1xuICAuaGFtYnVyZ2VyLS1jb2xsYXBzZSB7XG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICB0b3A6IGF1dG87XG4gICAgICBib3R0b206IDA7XG4gICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjEzcztcbiAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMTNzO1xuICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHRvcDogKCRoYW1idXJnZXItbGF5ZXItc3BhY2luZyAqIDIgKyAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCAqIDIpICogLTE7XG4gICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjJzIDAuMnMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAuNjY2NjcsIDAuNjY2NjcsIDEpLFxuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5IDAuMXMgbGluZWFyO1xuICAgICAgfVxuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4xMnMgMC4ycyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMC42NjY2NywgMC42NjY2NywgMSksXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjEzcyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAoJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nICsgJGhhbWJ1cmdlci1sYXllci1oZWlnaHQpICogLTEsIDApIHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjIycztcbiAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4ycyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMCwgMC42NjY2NywgMC4zMzMzMyksXG4gICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eSAwLjFzIDAuMjJzIGxpbmVhcjtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMXMgMC4xNnMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAsIDAuNjY2NjcsIDAuMzMzMzMpLFxuICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjEzcyAwLjI1cyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIGNvbGxhcHNlLXIpIHtcbiAgLypcbiAgICogQ29sbGFwc2UgUmV2ZXJzZVxuICAgKi9cbiAgLmhhbWJ1cmdlci0tY29sbGFwc2UtciB7XG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICB0b3A6IGF1dG87XG4gICAgICBib3R0b206IDA7XG4gICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjEzcztcbiAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMTNzO1xuICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHRvcDogKCRoYW1idXJnZXItbGF5ZXItc3BhY2luZyAqIDIgKyAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCAqIDIpICogLTE7XG4gICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjJzIDAuMnMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAuNjY2NjcsIDAuNjY2NjcsIDEpLFxuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5IDAuMXMgbGluZWFyO1xuICAgICAgfVxuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4xMnMgMC4ycyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMC42NjY2NywgMC42NjY2NywgMSksXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjEzcyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAoJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nICsgJGhhbWJ1cmdlci1sYXllci1oZWlnaHQpICogLTEsIDApIHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMjJzO1xuICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjJzIGN1YmljLWJlemllcigwLjMzMzMzLCAwLCAwLjY2NjY3LCAwLjMzMzMzKSxcbiAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5IDAuMXMgMC4yMnMgbGluZWFyO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjFzIDAuMTZzIGN1YmljLWJlemllcigwLjMzMzMzLCAwLCAwLjY2NjY3LCAwLjMzMzMzKSxcbiAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4xM3MgMC4yNXMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCBlbGFzdGljKSB7XG4gIC8qXG4gICAqIEVsYXN0aWNcbiAgICovXG4gIC5oYW1idXJnZXItLWVsYXN0aWMge1xuICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgdG9wOiAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCAvIDI7XG4gICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjI3NXM7XG4gICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNjgsIC0wLjU1LCAwLjI2NSwgMS41NSk7XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIHRvcDogJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgKyAkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmc7XG4gICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xMjVzIDAuMjc1cyBlYXNlO1xuICAgICAgfVxuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHRvcDogKCRoYW1idXJnZXItbGF5ZXItaGVpZ2h0ICogMikgKyAoJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nICogMik7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjI3NXMgY3ViaWMtYmV6aWVyKDAuNjgsIC0wLjU1LCAwLjI2NSwgMS41NSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICAgICR5LW9mZnNldDogJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nICsgJGhhbWJ1cmdlci1sYXllci1oZWlnaHQ7XG5cbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAkeS1vZmZzZXQsIDApIHJvdGF0ZSgxMzVkZWcpO1xuICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjA3NXM7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwcztcbiAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgJHktb2Zmc2V0ICogLTIsIDApIHJvdGF0ZSgtMjcwZGVnKTtcbiAgICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjA3NXM7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCBlbGFzdGljLXIpIHtcbiAgLypcbiAgICogRWxhc3RpYyBSZXZlcnNlXG4gICAqL1xuICAuaGFtYnVyZ2VyLS1lbGFzdGljLXIge1xuICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgdG9wOiAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCAvIDI7XG4gICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjI3NXM7XG4gICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNjgsIC0wLjU1LCAwLjI2NSwgMS41NSk7XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIHRvcDogJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgKyAkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmc7XG4gICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xMjVzIDAuMjc1cyBlYXNlO1xuICAgICAgfVxuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHRvcDogKCRoYW1idXJnZXItbGF5ZXItaGVpZ2h0ICogMikgKyAoJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nICogMik7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjI3NXMgY3ViaWMtYmV6aWVyKDAuNjgsIC0wLjU1LCAwLjI2NSwgMS41NSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICAgICR5LW9mZnNldDogJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nICsgJGhhbWJ1cmdlci1sYXllci1oZWlnaHQ7XG5cbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAkeS1vZmZzZXQsIDApIHJvdGF0ZSgtMTM1ZGVnKTtcbiAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC4wNzVzO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsICR5LW9mZnNldCAqIC0yLCAwKSByb3RhdGUoMjcwZGVnKTtcbiAgICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjA3NXM7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCBlbXBoYXRpYykge1xuICAvKlxuICAgKiBFbXBoYXRpY1xuICAgKi9cbiAgLmhhbWJ1cmdlci0tZW1waGF0aWMge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xMjVzIDAuMTc1cyBlYXNlLWluO1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xMjVzIGN1YmljLWJlemllcigwLjYsIDAuMDQsIDAuOTgsIDAuMzM1KSxcbiAgICAgICAgICAgICAgICAgICAgdG9wIDAuMDVzIDAuMTI1cyBsaW5lYXIsXG4gICAgICAgICAgICAgICAgICAgIGxlZnQgMC4xMjVzIDAuMTc1cyBlYXNlLWluO1xuICAgICAgfVxuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHRvcDogKCRoYW1idXJnZXItbGF5ZXItaGVpZ2h0KSArICgkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcpO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTI1cyBjdWJpYy1iZXppZXIoMC42LCAwLjA0LCAwLjk4LCAwLjMzNSksXG4gICAgICAgICAgICAgICAgICAgIHRvcCAwLjA1cyAwLjEyNXMgbGluZWFyLFxuICAgICAgICAgICAgICAgICAgICByaWdodCAwLjEyNXMgMC4xNzVzIGVhc2UtaW47XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzO1xuICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICBsZWZ0OiAkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogLTI7XG4gICAgICAgICAgdG9wOiAkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogLTI7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogMiwgJGhhbWJ1cmdlci1sYXllci13aWR0aCAqIDIsIDApIHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgICAgdHJhbnNpdGlvbjogbGVmdCAwLjEyNXMgZWFzZS1vdXQsXG4gICAgICAgICAgICAgICAgICAgICAgdG9wIDAuMDVzIDAuMTI1cyBsaW5lYXIsXG4gICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMTI1cyAwLjE3NXMgY3ViaWMtYmV6aWVyKDAuMDc1LCAwLjgyLCAwLjE2NSwgMSk7XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgcmlnaHQ6ICRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAtMjtcbiAgICAgICAgICB0b3A6ICRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAtMjtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKCRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAtMiwgJGhhbWJ1cmdlci1sYXllci13aWR0aCAqIDIsIDApIHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICAgIHRyYW5zaXRpb246IHJpZ2h0IDAuMTI1cyBlYXNlLW91dCxcbiAgICAgICAgICAgICAgICAgICAgICB0b3AgMC4wNXMgMC4xMjVzIGxpbmVhcixcbiAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4xMjVzIDAuMTc1cyBjdWJpYy1iZXppZXIoMC4wNzUsIDAuODIsIDAuMTY1LCAxKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIGVtcGhhdGljLXIpIHtcbiAgLypcbiAgICogRW1waGF0aWMgUmV2ZXJzZVxuICAgKi9cbiAgLmhhbWJ1cmdlci0tZW1waGF0aWMtciB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjEyNXMgMC4xNzVzIGVhc2UtaW47XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjEyNXMgY3ViaWMtYmV6aWVyKDAuNiwgMC4wNCwgMC45OCwgMC4zMzUpLFxuICAgICAgICAgICAgICAgICAgICB0b3AgMC4wNXMgMC4xMjVzIGxpbmVhcixcbiAgICAgICAgICAgICAgICAgICAgbGVmdCAwLjEyNXMgMC4xNzVzIGVhc2UtaW47XG4gICAgICB9XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdG9wOiAoJGhhbWJ1cmdlci1sYXllci1oZWlnaHQpICsgKCRoYW1idXJnZXItbGF5ZXItc3BhY2luZyk7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xMjVzIGN1YmljLWJlemllcigwLjYsIDAuMDQsIDAuOTgsIDAuMzM1KSxcbiAgICAgICAgICAgICAgICAgICAgdG9wIDAuMDVzIDAuMTI1cyBsaW5lYXIsXG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0IDAuMTI1cyAwLjE3NXMgZWFzZS1pbjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIGxlZnQ6ICRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAtMjtcbiAgICAgICAgICB0b3A6ICRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAyO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoJGhhbWJ1cmdlci1sYXllci13aWR0aCAqIDIsICRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAtMiwgMCkgcm90YXRlKC00NWRlZyk7XG4gICAgICAgICAgdHJhbnNpdGlvbjogbGVmdCAwLjEyNXMgZWFzZS1vdXQsXG4gICAgICAgICAgICAgICAgICAgICAgdG9wIDAuMDVzIDAuMTI1cyBsaW5lYXIsXG4gICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMTI1cyAwLjE3NXMgY3ViaWMtYmV6aWVyKDAuMDc1LCAwLjgyLCAwLjE2NSwgMSk7XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgcmlnaHQ6ICRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAtMjtcbiAgICAgICAgICB0b3A6ICRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAyO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoJGhhbWJ1cmdlci1sYXllci13aWR0aCAqIC0yLCAkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogLTIsIDApIHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgICAgdHJhbnNpdGlvbjogcmlnaHQgMC4xMjVzIGVhc2Utb3V0LFxuICAgICAgICAgICAgICAgICAgICAgIHRvcCAwLjA1cyAwLjEyNXMgbGluZWFyLFxuICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjEyNXMgMC4xNzVzIGN1YmljLWJlemllcigwLjA3NSwgMC44MiwgMC4xNjUsIDEpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgbWludXMpIHtcbiAgLypcbiAgICogTWludXNcbiAgICovXG4gIC5oYW1idXJnZXItLW1pbnVzIHtcbiAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgICY6OmJlZm9yZSxcbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdHJhbnNpdGlvbjogYm90dG9tIDAuMDhzIDBzIGVhc2Utb3V0LFxuICAgICAgICAgICAgICAgICAgICB0b3AgMC4wOHMgMHMgZWFzZS1vdXQsXG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHkgMHMgbGluZWFyO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgICAmOjpiZWZvcmUsXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgIHRyYW5zaXRpb246IGJvdHRvbSAwLjA4cyBlYXNlLW91dCxcbiAgICAgICAgICAgICAgICAgICAgICB0b3AgMC4wOHMgZWFzZS1vdXQsXG4gICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eSAwcyAwLjA4cyBsaW5lYXI7XG4gICAgICAgIH1cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgc2xpZGVyKSB7XG4gIC8qXG4gICAqIFNsaWRlclxuICAgKi9cbiAgLmhhbWJ1cmdlci0tc2xpZGVyIHtcbiAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgIHRvcDogJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgLyAyO1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICB0b3A6ICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0ICsgJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nO1xuICAgICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlO1xuICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjE1cztcbiAgICAgIH1cblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICB0b3A6ICgkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCAqIDIpICsgKCRoYW1idXJnZXItbGF5ZXItc3BhY2luZyAqIDIpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgICAkeS1vZmZzZXQ6ICRoYW1idXJnZXItbGF5ZXItc3BhY2luZyArICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0O1xuXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgJHktb2Zmc2V0LCAwKSByb3RhdGUoNDVkZWcpO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKSB0cmFuc2xhdGUzZCgkaGFtYnVyZ2VyLWxheWVyLXdpZHRoIC8gLTcsICRoYW1idXJnZXItbGF5ZXItc3BhY2luZyAqIC0xLCAwKTtcbiAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgJHktb2Zmc2V0ICogLTIsIDApIHJvdGF0ZSgtOTBkZWcpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgc2xpZGVyLXIpIHtcbiAgLypcbiAgICogU2xpZGVyIFJldmVyc2VcbiAgICovXG4gIC5oYW1idXJnZXItLXNsaWRlci1yIHtcbiAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgIHRvcDogJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgLyAyO1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICB0b3A6ICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0ICsgJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nO1xuICAgICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlO1xuICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjE1cztcbiAgICAgIH1cblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICB0b3A6ICgkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCAqIDIpICsgKCRoYW1idXJnZXItbGF5ZXItc3BhY2luZyAqIDIpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgICAkeS1vZmZzZXQ6ICRoYW1idXJnZXItbGF5ZXItc3BhY2luZyArICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0O1xuXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgJHktb2Zmc2V0LCAwKSByb3RhdGUoLTQ1ZGVnKTtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKSB0cmFuc2xhdGUzZCgkaGFtYnVyZ2VyLWxheWVyLXdpZHRoIC8gNywgJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nICogLTEsIDApO1xuICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAkeS1vZmZzZXQgKiAtMiwgMCkgcm90YXRlKDkwZGVnKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIHNwaW4pIHtcbiAgLypcbiAgICogU3BpblxuICAgKi9cbiAgLmhhbWJ1cmdlci0tc3BpbiB7XG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjIycztcbiAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMXMgMC4yNXMgZWFzZS1pbixcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eSAwLjFzIGVhc2UtaW47XG4gICAgICB9XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdHJhbnNpdGlvbjogYm90dG9tIDAuMXMgMC4yNXMgZWFzZS1pbixcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMjJzIGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgyMjVkZWcpO1xuICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjEycztcbiAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMXMgZWFzZS1vdXQsXG4gICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eSAwLjFzIDAuMTJzIGVhc2Utb3V0O1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgICAgICAgIHRyYW5zaXRpb246IGJvdHRvbSAwLjFzIGVhc2Utb3V0LFxuICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjIycyAwLjEycyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIHNwaW4tcikge1xuICAvKlxuICAgKiBTcGluIFJldmVyc2VcbiAgICovXG4gIC5oYW1idXJnZXItLXNwaW4tciB7XG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjIycztcbiAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMXMgMC4yNXMgZWFzZS1pbixcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eSAwLjFzIGVhc2UtaW47XG4gICAgICB9XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdHJhbnNpdGlvbjogYm90dG9tIDAuMXMgMC4yNXMgZWFzZS1pbixcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMjJzIGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMjI1ZGVnKTtcbiAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC4xMnM7XG4gICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjFzIGVhc2Utb3V0LFxuICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHkgMC4xcyAwLjEycyBlYXNlLW91dDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgICAgICAgIHRyYW5zaXRpb246IGJvdHRvbSAwLjFzIGVhc2Utb3V0LFxuICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjIycyAwLjEycyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIHNwcmluZykge1xuICAvKlxuICAgKiBTcHJpbmdcbiAgICovXG4gIC5oYW1idXJnZXItLXNwcmluZyB7XG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICB0b3A6ICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0IC8gMjtcbiAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMHMgMC4xM3MgbGluZWFyO1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICB0b3A6ICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0ICsgJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nO1xuICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4xcyAwLjJzIGN1YmljLWJlemllcigwLjMzMzMzLCAwLjY2NjY3LCAwLjY2NjY3LCAxKSxcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMTNzIGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xuICAgICAgfVxuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHRvcDogKCRoYW1idXJnZXItbGF5ZXItaGVpZ2h0ICogMikgKyAoJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nICogMik7XG4gICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjJzIDAuMnMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAuNjY2NjcsIDAuNjY2NjcsIDEpLFxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4xM3MgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMjJzO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjFzIDAuMTVzIGN1YmljLWJlemllcigwLjMzMzMzLCAwLCAwLjY2NjY3LCAwLjMzMzMzKSxcbiAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4xM3MgMC4yMnMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKyAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCwgMCkgcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMnMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAsIDAuNjY2NjcsIDAuMzMzMzMpLFxuICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjEzcyAwLjIycyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsICRoYW1idXJnZXItbGF5ZXItc3BhY2luZyArICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0LCAwKSByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIHNwcmluZy1yKSB7XG4gIC8qXG4gICAqIFNwcmluZyBSZXZlcnNlXG4gICAqL1xuICAuaGFtYnVyZ2VyLS1zcHJpbmctciB7XG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICB0b3A6IGF1dG87XG4gICAgICBib3R0b206IDA7XG4gICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjEzcztcbiAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzO1xuICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHRvcDogKCRoYW1idXJnZXItbGF5ZXItc3BhY2luZyAqIDIgKyAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCAqIDIpICogLTE7XG4gICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjJzIDAuMnMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAuNjY2NjcsIDAuNjY2NjcsIDEpLFxuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5IDBzIGxpbmVhcjtcbiAgICAgIH1cblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMXMgMC4ycyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMC42NjY2NywgMC42NjY2NywgMSksXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjEzcyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAoJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nICsgJGhhbWJ1cmdlci1sYXllci1oZWlnaHQpICogLTEsIDApIHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjIycztcbiAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4ycyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMCwgMC42NjY2NywgMC4zMzMzMyksXG4gICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eSAwcyAwLjIycyBsaW5lYXI7XG4gICAgICAgIH1cblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gICAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMXMgMC4xNXMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAsIDAuNjY2NjcsIDAuMzMzMzMpLFxuICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjEzcyAwLjIycyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIHN0YW5kKSB7XG4gIC8qXG4gICAqIFN0YW5kXG4gICAqL1xuICAuaGFtYnVyZ2VyLS1zdGFuZCB7XG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4wNzVzIDAuMTVzIGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpLFxuICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvciAwcyAwLjA3NXMgbGluZWFyO1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4wNzVzIDAuMDc1cyBlYXNlLWluLFxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4wNzVzIDBzIGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xuICAgICAgfVxuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHRyYW5zaXRpb246IGJvdHRvbSAwLjA3NXMgMC4wNzVzIGVhc2UtaW4sXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjA3NXMgMHMgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcblxuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4wNzVzIDBzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpLFxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yIDBzIDAuMTVzIGxpbmVhcjtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjA3NXMgMC4xcyBlYXNlLW91dCxcbiAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4wNzVzIDAuMTVzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgICAgdHJhbnNpdGlvbjogYm90dG9tIDAuMDc1cyAwLjFzIGVhc2Utb3V0LFxuICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjA3NXMgMC4xNXMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCBzdGFuZC1yKSB7XG4gIC8qXG4gICAqIFN0YW5kIFJldmVyc2VcbiAgICovXG4gIC5oYW1idXJnZXItLXN0YW5kLXIge1xuICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMDc1cyAwLjE1cyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KSxcbiAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3IgMHMgMC4wNzVzIGxpbmVhcjtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMDc1cyAwLjA3NXMgZWFzZS1pbixcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMDc1cyAwcyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcbiAgICAgIH1cblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICB0cmFuc2l0aW9uOiBib3R0b20gMC4wNzVzIDAuMDc1cyBlYXNlLWluLFxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4wNzVzIDBzIGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuXG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjA3NXMgMHMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSksXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3IgMHMgMC4xNXMgbGluZWFyO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gICAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMDc1cyAwLjFzIGVhc2Utb3V0LFxuICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjA3NXMgMC4xNXMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBib3R0b20gMC4wNzVzIDAuMXMgZWFzZS1vdXQsXG4gICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMDc1cyAwLjE1cyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIHNxdWVlemUpIHtcbiAgLypcbiAgICogU3F1ZWV6ZVxuICAgKi9cbiAgLmhhbWJ1cmdlci0tc3F1ZWV6ZSB7XG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjA3NXM7XG4gICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjA3NXMgMC4xMnMgZWFzZSxcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eSAwLjA3NXMgZWFzZTtcbiAgICAgIH1cblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICB0cmFuc2l0aW9uOiBib3R0b20gMC4wNzVzIDAuMTJzIGVhc2UsXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjA3NXMgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC4xMnM7XG4gICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjA3NXMgZWFzZSxcbiAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5IDAuMDc1cyAwLjEycyBlYXNlO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgICAgICAgIHRyYW5zaXRpb246IGJvdHRvbSAwLjA3NXMgZWFzZSxcbiAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4wNzVzIDAuMTJzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgdm9ydGV4KSB7XG4gIC8qXG4gICAqIFZvcnRleFxuICAgKi9cbiAgLmhhbWJ1cmdlci0tdm9ydGV4IHtcbiAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMnM7XG4gICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTksIDEsIDAuMjIsIDEpO1xuXG4gICAgICAmOjpiZWZvcmUsXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xuICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjFzO1xuICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICAgICAgfVxuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0b3AsIG9wYWNpdHk7XG4gICAgICB9XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogYm90dG9tLCB0cmFuc2Zvcm07XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDc2NWRlZyk7XG4gICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xOSwgMSwgMC4yMiwgMSk7XG5cbiAgICAgICAgJjo6YmVmb3JlLFxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gICAgICAgIH1cblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCB2b3J0ZXgtcikge1xuICAvKlxuICAgKiBWb3J0ZXggUmV2ZXJzZVxuICAgKi9cbiAgLmhhbWJ1cmdlci0tdm9ydGV4LXIge1xuICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4ycztcbiAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xOSwgMSwgMC4yMiwgMSk7XG5cbiAgICAgICY6OmJlZm9yZSxcbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XG4gICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMXM7XG4gICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gICAgICB9XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRvcCwgb3BhY2l0eTtcbiAgICAgIH1cblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBib3R0b20sIHRyYW5zZm9ybTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTc2NWRlZyk7XG4gICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xOSwgMSwgMC4yMiwgMSk7XG5cbiAgICAgICAgJjo6YmVmb3JlLFxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gICAgICAgIH1cblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBUcmFuc2l0aW9uIGR1cmF0aW9uIGFuZCBhbmltYXRpb25zXG4kdHJhbnNpdGlvbi1kdXJhdGlvbjogLjE4cztcblxuLy8gTWl4aW5zXG5AbWl4aW4gY3ViaWMtYmV6aWVyKCRwcm9wZXJ0eTogY29sb3IsICRkdXJhdGlvbjogJHRyYW5zaXRpb24tZHVyYXRpb24pIHtcbiAgdHJhbnNpdGlvbjogJHByb3BlcnR5ICR0cmFuc2l0aW9uLWR1cmF0aW9uIGN1YmljLWJlemllciguMTksIDEsIC4yMiwgMSk7XG59XG5cbi8vIFBvc3NpYmxlIGtleWZyYW1lcyBoZXJlXG4vLyBAa2V5ZnJhbWVzXG4iLCIvLyBHZW5lcmFsXG4vL1xuLy8gVGhpcyBmaWxlIGlzIG1lYW50IGZvciBnZW5lcmFsIHN0eWxlcyBhbmQgY29udGFpbmVyc1xuLy8gdGhhdCBhcHBseSBldmVyeXdoZXJlIHRocm91Z2hvdXQgdGhlIHdlYnNpdGUuIEFkZCBtb3JlXG4vLyBhbHdheXMgcmVwZWF0aW5nIGVsZW1lbnRzIHJpZ2h0IGJlbG93LlxuXG4vLyBEZWZhdWx0IHN0cnVjdHVyYWwgZWxlbWVudFxuLmJsb2NrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBtYXgtd2lkdGg6ICR3aWR0aC1tYXgtbGF5b3V0O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi8vIERlZmF1bHQgc2hhZGUgb24gdG9wIG9mIGJsb2Nrc1xuLnNoYWRlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmFja2dyb3VuZC1zaGFkZSk7XG4gIGhlaWdodDogMTAwJTtcbiAgbGVmdDogMDtcbiAgb3BhY2l0eTogLjM1O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDA7XG59XG5cbi8vIEdsb2JhbCBsaW5rIGhlbHBlclxuLy8gVGhpcyBpcyB1c2VmdWwgaW4gc2VydmljZXMgLXR5cGUgb2YgYXJlYXMgd2hlcmUgdGhlIHdob2xlIGJsb2NrIGlzIGEgbGlua1xuLy8gUmVtZW1iZXIgdG8gZGVmaW5lIGFyaWEtbGFiZWwgb3Igc2NyZWVuLXJlYWRlci10ZXh0IGZvciBhY2Nlc3NpYmlsaXR5XG4uZ2xvYmFsLWxpbmsge1xuICBoZWlnaHQ6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgei1pbmRleDogMztcbn1cblxuLy8gU2l0ZSB3cmFwcGVyXG4uc2l0ZSB7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1heC13aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4vLyBDb250YWluZXJzXG4uY29udGFpbmVyIHtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1heC13aWR0aDogJHdpZHRoLWdyaWQtYmFzZTtcbiAgcGFkZGluZy1ib3R0b206IHZhcigtLXBhZGRpbmctY29udGFpbmVyLXZlcnRpY2FsKTtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gIHBhZGRpbmctdG9wOiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci12ZXJ0aWNhbCk7XG5cbiAgLy8gSWYgYmFzZSBncmlkIGlzIGxhcmdlciB0aGFuIE1hY2Jvb2sgQWlyIHNjcmVlblxuICBAaWYgJHdpZHRoLWdyaWQtYmFzZSA+ICRjb250YWluZXItbWFjYm9vay1haXIge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkY29udGFpbmVyLWlwYWQtbGFuZHNjYXBlKSBhbmQgKG1heC13aWR0aDogJGNvbnRhaW5lci1tYWNib29rLWFpciArIDYuNHJlbSkge1xuICAgICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsLWxhcmdlKTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwtbGFyZ2UpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBDbGVhciBibG9jayBjb250YWluZXJzIGJ5IGRlZmF1bHRcbi5zaXRlLW1haW4gLmNvbnRhaW5lciB7XG4gIGNsZWFyOiBib3RoO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4vLyBNZXRhIGFjdGlvbnNcbi5lbnRyeS1mb290ZXIge1xuICBjbGVhcjogYm90aDtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBtYXJnaW4tdG9wOiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci12ZXJ0aWNhbCk7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi8vIEJldHRlciBlZGl0IGxpbmtcbi5lZGl0LWxpbmsge1xuICBjbGVhcjogYm90aDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIG1hcmdpbi10b3A6IDJyZW07XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWluLXdpZHRoOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB0cmFuc2l0aW9uOiBhbGwgJHRyYW5zaXRpb24tZHVyYXRpb247XG4gIHdpZHRoOiAxMDAlO1xuXG4gIGEge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgICBib3JkZXI6IDJweCBkYXNoZWQgdmFyKC0tY29sb3ItbGluay1lZGl0LWJvcmRlcik7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWxpbmstZWRpdC10ZXh0KTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMnJlbTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIHRyYW5zaXRpb246IGFsbCAkdHJhbnNpdGlvbi1kdXJhdGlvbjtcbiAgfVxuXG4gICY6Zm9jdXMsXG4gIGE6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWxpbmstZWRpdC1iYWNrZ3JvdW5kLWhvdmVyKTtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItbGluay1lZGl0LXRleHQtaG92ZXIpO1xuICB9XG59XG5cbi8vIEhpZGUvc2hvdyBoZWxwZXJzXG4uaGlkZS1vbi1kZXNrdG9wIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRjb250YWluZXItbW9iaWxlKSB7XG4gICAgLy8gRm9yY2VkIHRvIHVzZSBpbXBvcnRhbnQgaGVyZSwgYmVjYXVzZSBtYWtlcyBubyBzZW5zZSB0byB3cml0ZSB0b28gc3BlY2lmaWMgc2VsZWN0b3JzIGhlcmVcbiAgICAvKiBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnQgKi9cbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgLyogc3R5bGVsaW50LWVuYWJsZSAqL1xuICB9XG59XG5cbi8vIEZvcmNlZCB0byB1c2UgaW1wb3J0YW50IGhlcmUsIGJlY2F1c2UgbWFrZXMgbm8gc2Vuc2UgdG8gd3JpdGUgdG9vIHNwZWNpZmljIHNlbGVjdG9ycyBoZXJlXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnQsIGExMXkvbm8tZGlzcGxheS1ub25lICovXG4uaGlkZS1vbi1tb2JpbGUge1xuICBAbWVkaWEgKG1heC13aWR0aDogJGNvbnRhaW5lci1tb2JpbGUpIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi8qIHN0eWxlbGludC1lbmFibGUgKi9cblxuLy8gT25seSBmdW5jdGlvbiBvZiB0aGVzZSBpcyB0byBmb3JjZSBoaWRlIGNvbnRlbnQgYmFzZWQgb24gdGhlIHZpZXdcbi8vIEZvcmNlZCB0byB1c2UgaW1wb3J0YW50IGhlcmUsIGJlY2F1c2UgbWFrZXMgbm8gc2Vuc2UgdG8gd3JpdGUgdG9vIHNwZWNpZmljIHNlbGVjdG9ycyBoZXJlXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnQsIGExMXkvbm8tZGlzcGxheS1ub25lICovXG4uaGlkZS1vbi1tb2JpbGUtbmF2LXZpZXcge1xuICBAbWVkaWEgKG1heC13aWR0aDogJHdpZHRoLW1heC1tb2JpbGUpIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi8qIHN0eWxlbGludC1lbmFibGUgKi9cbi8vIEZvcmNlZCB0byB1c2UgaW1wb3J0YW50IGhlcmUsIGJlY2F1c2UgbWFrZXMgbm8gc2Vuc2UgdG8gd3JpdGUgdG9vIHNwZWNpZmljIHNlbGVjdG9ycyBoZXJlXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnQsIGExMXkvbm8tZGlzcGxheS1ub25lICovXG4uaGlkZS1vbi1kZXNrdG9wLW5hdi12aWV3IHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICR3aWR0aC1tYXgtbW9iaWxlKSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG4vKiBzdHlsZWxpbnQtZW5hYmxlICovXG5cbi8vIEZvcmNlZCB0byB1c2UgaW1wb3J0YW50IGhlcmUsIGJlY2F1c2UgbWFrZXMgbm8gc2Vuc2UgdG8gd3JpdGUgdG9vIHNwZWNpZmljIHNlbGVjdG9ycyBoZXJlXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnQsIGExMXkvbm8tZGlzcGxheS1ub25lICovXG4uaGlkZS1jb21wbGV0ZWx5IHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuLyogc3R5bGVsaW50LWVuYWJsZSAqL1xuIiwiLy8gTGF5b3V0IHdpZHRoc1xuJHdpZHRoLW1heC1sYXlvdXQ6IDEwMCU7XG4kd2lkdGgtbWF4LWFydGljbGU6IDgwMHB4O1xuJHdpZHRoLWdyaWQtYmFzZTogMTQ0MHB4O1xuXG4vLyBUaGlzIGlzIHRoZSBicmVha3BvaW50IG5hdmlnYXRpb24gdHJhbnNmb3JtcyBpbnRvIG1vYmlsZSBtZW51XG4vLyBOQiEgSU1QT1JUQU5UISBSZW1lbWJlciB0byBjaGFuZ2UgaW4ganMvc3JjL25hdmlnYXRpb24uanM6XG4vLyBjb25zdCByZXNwb25zaXZlbmF2ID0gOTYwO1xuLy8gSWYgdGhlc2UgYXJlIG5vdCB0aGUgc2FtZSwgbmF2aWdhdGlvbiB0b2dnbGVzIHdpbGwgbm90IHdvcmsgcHJvcGVybHkuXG4kd2lkdGgtbWF4LW1vYmlsZTogOTYwcHg7XG5cbi8vIEJyZWFrcG9pbnRzIGZvciBjb250YWluZXJzXG4kY29udGFpbmVyLWRlc2t0b3A6IDEyMDBweDtcbiRjb250YWluZXItaXBhZDogNzcwcHg7XG4kY29udGFpbmVyLWlwYWQtbGFuZHNjYXBlOiAxMDI0cHg7XG4kY29udGFpbmVyLW1hY2Jvb2stYWlyOiAxNDQwcHg7XG4kY29udGFpbmVyLW1vYmlsZTogNDgwcHg7XG5cbi8vIEd1dGVuYmVyZyB3aWR0aHNcbiR3aWR0aC13aWRlOiAxMjAwcHg7XG4kd2lkdGgtZnVsbDogMTAwJTtcbiIsIi8vIEl0IGlzIGFjY2VwdGFibGUgdG8gaGlkZSB0aGluZ3MgZm9yIHByaW50XG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBhMTF5L25vLWRpc3BsYXktbm9uZSAqL1xuQG1lZGlhIHByaW50IHtcbiAgLm5hdi1jb250YWluZXIsXG4gIC5zaXRlLWZvb3RlcixcbiAgLnNpZGUtbmF2IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLy8gQWRkIGNvbG9ycywgZGlzYWJsZSBzcGFjaW5ncyBvciBpbWFnZXMsXG4gIC8vIGV0Yy4gZGVmaW5lIGhlcmVcbiAgLy8gKiB7XG4gIC8vICAgY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKSAhaW1wb3J0YW50O1xuICAvLyB9XG59XG4iLCIvKiBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1wcm9wZXJ0eS11bml0LWFsbG93ZWQtbGlzdCwgbm8tZGVzY2VuZGluZy1zcGVjaWZpY2l0eSAqL1xuLy8gVHlwb2dyYXBoeVxuLy9cbi8vIEV2ZXJ5dGhpbmcgYXJvdW5kIGZvbnRzLCBmb250IHNpemUgZGVmaW5pdGlvbnMgYW5kIHR5cGVzZXRcbi8vIHByZXNldHMuIE5vIG1vZHVsYXIgc2NhbGUsIGJ1dCBhIHNvcGhpc3RpY2F0ZWQgdmlld3BvcnRcbi8vIGJhc2VkIHJlc3BvbnNpdmUgbWl4aW4gY2FuIGJlIGZvdW5kIGluIF9oZWxwZXJzLnNjc3NcblxuLy8gU2V0IHJvb3Qgc2l6ZSBmb3IgcmVtc1xuOnJvb3Qge1xuICBmb250LXNpemU6IDYyLjUlO1xufVxuXG4vLyBTdGFydCB0eXBvZ3JhcGh5IHNldHRpbmdzXG5ib2R5IHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXBhcmFncmFwaCk7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXBhcmFncmFwaCk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWRlZmF1bHQpO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXBhcmFncmFwaHMpO1xuICB0ZXh0LXJlbmRlcmluZzogZ2VvbWV0cmljUHJlY2lzaW9uO1xufVxuXG4vLyBEZWZhdWx0c1xuaHRtbCxcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIge1xuICBwLFxuICBkZCxcbiAgZHQsXG4gIGZpZ2NhcHRpb24sXG4gIGhyLFxuICBzbWFsbCxcbiAgb2wsXG4gIHVsLFxuICBsaSxcbiAgYmxvY2txdW90ZSxcbiAga2JkLFxuICBwcmUsXG4gIHNhbXAsXG4gIGNvZGUsXG4gIHRoLFxuICB0ZCxcbiAgdGFibGUsXG4gIHRyLFxuICAlZGVmYXVsdCB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtcGFyYWdyYXBocyk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXBhcmFncmFwaHMpO1xuICB9XG5cbiAgLy8gSGVhZGluZyBkZWZhdWx0c1xuICBoMSxcbiAgaDIsXG4gIGgzLFxuICBoNCxcbiAgaDUsXG4gIGg2IHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItaGVhZGluZyk7XG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtaGVhZGluZyk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWhlYWRpbmdzKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1tYXJnaW4tYmV0d2Vlbi1wYXJhZ3JhcGhzKTtcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS1tYXJnaW4tYmV0d2Vlbi1wYXJhZ3JhcGhzKTtcbiAgfVxuXG4gIGgyLFxuICBoMyxcbiAgaDQsXG4gIGg1LFxuICBoNiB7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWhlYWRpbmdzKTtcbiAgfVxuXG4gIC8vIERlZmluZSBoZWFkaW5nIHNjYWxlc1xuICAvLyBDdXJyZW50OiBQZXJmZWN0IGZvdXJ0aDogaHR0cHM6Ly90eXBlLXNjYWxlLmNvbS9cbiAgaDEge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWgxKTtcbiAgfVxuXG4gIGgyIHtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oMik7XG4gIH1cblxuICBoMyB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaDMpO1xuICB9XG5cbiAgaDQge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWg0KTtcbiAgfVxuXG4gIGg1IHtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oNSk7XG4gIH1cblxuICBoNiB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtaDYpO1xuICB9XG5cbiAgaDE6Zmlyc3QtY2hpbGQsXG4gIGgyOmZpcnN0LWNoaWxkLFxuICBoMzpmaXJzdC1jaGlsZCxcbiAgaDQ6Zmlyc3QtY2hpbGQsXG4gIGg1OmZpcnN0LWNoaWxkLFxuICBoNjpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxuXG4gIC8vIExpc3RzXG4gIHVsIHtcbiAgICBsaXN0LXN0eWxlOiBkaXNjIG91dHNpZGU7XG4gICAgcGFkZGluZy1sZWZ0OiAxLjlyZW07XG5cbiAgICBsaSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgfVxuICB9XG5cbiAgb2wge1xuICAgIHBhZGRpbmctbGVmdDogMS45cmVtO1xuICB9XG5cbiAgLy8gQm9sZC5cbiAgYixcbiAgc3Ryb25nIHtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XG4gIH1cblxuICAvLyBJdGFsaWMuXG4gIGVtLFxuICBpIHtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIH1cblxuICAvLyBJbmxpbmUgc21hbGwgdGV4dC5cbiAgc21hbGwge1xuICAgIGZvbnQtc2l6ZTogLjg3ZW07XG4gIH1cblxuICAvLyBEZWZhdWx0IHBhcmFncmFwaHNcbiAgcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMi45cmVtO1xuICAgIG1hcmdpbi10b3A6IDIuOXJlbTtcbiAgfVxuXG4gIC8vIFF1b3Rlcy5cbiAgYmxvY2txdW90ZSB7XG4gICAgYm9yZGVyOiAwIG5vbmU7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAzcmVtO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIHAge1xuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJsb2NrcXVvdGUpO1xuICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIH1cblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkY29udGFpbmVyLWlwYWQpIHtcbiAgICAgIG1hcmdpbi10b3A6IDRyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNHJlbTtcbiAgICB9XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGhlaWdodDogNHB4O1xuICAgICAgbGVmdDogMDtcbiAgICAgIG1heC13aWR0aDogMTQ3cHg7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG5cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkY29udGFpbmVyLW1vYmlsZSkge1xuICAgICAgICB3aWR0aDogMzAlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGNpdGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgfVxuXG4gIHA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gIC8vIGltYWdlc1xuICBpbWcge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgfVxuXG4gIC8vIEZpZ3VyZXMgYW5kIGNhcHRpb25zXG4gIGZpZ3VyZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cblxuICAvLyBGaWdjYXB0aW9uLlxuICBmaWdjYXB0aW9uIHtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXBhcmFncmFwaHMpO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cblxuICBrYmQsXG4gIHByZSxcbiAgc2FtcCB7XG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtbW9ub3NwYWNlKTtcbiAgfVxuXG4gIC8vIENvZGUgYmxvY2suXG4gIGNvZGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJhY2tncm91bmQtY29kZS1pbmxpbmUpO1xuICAgIGJvcmRlci1yYWRpdXM6IC4zcmVtO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1jb2RlLWJsb2NrKTtcbiAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC1tb25vc3BhY2UpO1xuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDsgLy8gbm9ybWFsaXplLmNzcyBzZXRzIHRoaXMgYXMgMWVtIGJ5IGRlZmF1bHRcbiAgICBwYWRkaW5nOiAuMzdyZW0gLjVyZW07XG5cbiAgICBwcmUgJiB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBwYWRkaW5nOiAxLjE1cmVtIDFyZW0gLjg1cmVtO1xuICAgIH1cbiAgfVxuXG4gIC8vIFByZWZvcm1hdHRlZCB0ZXh0LlxuICBwcmUge1xuICAgIGJvcmRlci1yYWRpdXM6IC4zcmVtO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgd2hpdGUtc3BhY2U6IHByZS13cmFwO1xuICAgIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcbiAgICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIH1cbn1cbiIsIi8vIFNpdGUgaGVhZGVyXG4vL1xuLy8gVGhlIHZlcnkgdG9wIG9mIHRoZSBzaXRlLCBlbGVtZW50IHRoYXQgdXN1YWxseSBpbmNsdWRlc1xuLy8gdGhlIHNpdGUgbmF2aWdhdGlvbiBhbmQgc2VhcmNoIGZvciBleGFtcGxlLlxuXG4uc2l0ZS1oZWFkZXIge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1heC13aWR0aDogJHdpZHRoLWdyaWQtYmFzZTtcbiAgcGFkZGluZy1ib3R0b206IHZhcigtLXBhZGRpbmctc2l0ZS1oZWFkZXItdmVydGljYWwpO1xuICBwYWRkaW5nLWxlZnQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgcGFkZGluZy10b3A6IHZhcigtLXBhZGRpbmctc2l0ZS1oZWFkZXItdmVydGljYWwpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE1O1xufVxuXG4uc2l0ZS10aXRsZSB7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBtYXJnaW46IDA7XG5cbiAgYSB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG59XG5cbi8vIE5hdiBjb250YWluZXIgdmlzaWJpbGl0eSBmaXhcbi5uYXYtY29udGFpbmVyIHtcbiAgei1pbmRleDogMTA7XG59XG4iLCIvLyBTaXRlIGZvb3RlclxuLy9cbi8vIFRoZSB2ZXJ5IGJvdHRvbSBvZiB0aGUgc2l0ZS4gVXN1YWxseSBjb250YWlucyBzdXBwb3J0aW5nXG4vLyBvciBzZWNvbmRhcnkgbmF2aWdhdGlvbiwgc29jaWFsIG1lZGlhIGljb25zLCBjb250YWN0IGRldGFpbHNcbi8vIGFuZCBzdWNoLlxuLy9cbi8vIFBsZWFzZSBub3RlOiBUaGVzZSBhcmUgbW9zdGx5IGZvciBkZW1vIHB1cnBvc2VzXG4vLyBzbyBmZWVsIGZyZWUgdG8gcmVtb3ZlIGV2ZXJ5dGhpbmcgaW4gdGhpcyBmaWxlXG4vLyBhbmQgc3RhcnQgb3Zlci5cblxuLnNpdGUtZm9vdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmc6IDZyZW0gMnJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gIHAsXG4gIHNwYW4ge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIH1cblxuICAud29yZHByZXNzLWxvZ28ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICB9XG5cbiAgc3BhbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG5cbiAgc3ZnIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cblxuICAvLyBIaWRpbmcgZm9yIGFlc3RoZXRpYyByZWFzb25zXG4gIC8qIHN0eWxlbGludC1kaXNhYmxlIGExMXkvbm8tZGlzcGxheS1ub25lICovXG4gIC5pcy1leHRlcm5hbC1saW5rOjphZnRlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAvKiBzdHlsZWxpbnQtZW5hYmxlICovXG5cbiAgLnBvd2VyZWQtYnktd29yZHByZXNzIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXNlbWlib2xkKTtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuXG4gIC5naXRodWItbGluayB7XG4gICAgbWFyZ2luLWxlZnQ6IDhweDtcbiAgICBtYXJnaW4tdG9wOiA0cHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwYWRkaW5nLWJvdHRvbTogNHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICYuaXMtZXh0ZXJuYWwtbGluazo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGhlaWdodDogMXB4O1xuICAgICAgb3BhY2l0eTogLjQ7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IGF1dG87XG4gICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5ICR0cmFuc2l0aW9uLWR1cmF0aW9uO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgYSB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5ICR0cmFuc2l0aW9uLWR1cmF0aW9uO1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gICAgICBvcGFjaXR5OiAuNTtcblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBvcGFjaXR5OiAuMjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAudGhlbWUtaW5mbyB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBsaW5lLWhlaWdodDogMS41O1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgIGkge1xuICAgICAgbWFyZ2luOiAwIDVweDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvcm1zIGFuZCBpbnB1dCBmaWVsZHNcbi8vXG4vLyBBbGwgdGhlIGZvcm1zIG9uIHRoZSBzaXRlLiBHZW5lcmFsIHN0eWxlcy4gU3VwcG9ydHMgbW9zdCBvZlxuLy8gdGhlIEdyYXZpdHkgRm9ybXMgc3R5bGVzIG91dCBvZiB0aGUgYm94LlxuXG4vLyBCdXR0b25zXG4uYnV0dG9uLXdyYXBwZXIge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4vLyBCdXR0b25zXG4uc2l0ZS1tYWluLFxuLnNpdGUtZm9vdGVyIHtcbiAgYnV0dG9uLFxuICAuYnV0dG9uLFxuICBpbnB1dFt0eXBlPVwicmVzZXRcIl0sXG4gIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0sXG4gIGlucHV0W3R5cGU9XCJidXR0b25cIl0ge1xuICAgIEBpbmNsdWRlIGJ1dHRvbigpO1xuXG4gICAgLy8gQnV0dG9uIHNpemVzXG4gICAgJi5idXR0b24tc21hbGwge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uLXNpemUtc21hbGwoKTtcbiAgICB9XG5cbiAgICAmLmJ1dHRvbi1sYXJnZSB7XG4gICAgICBAaW5jbHVkZSBidXR0b24tc2l6ZS1sYXJnZSgpO1xuICAgIH1cblxuICAgIC8vIEJ1dHRvbiBzdHlsZXNcbiAgICAmLmJ1dHRvbi1naG9zdCB7XG4gICAgICBAaW5jbHVkZSBidXR0b24tc3R5bGUtZ2hvc3QoKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gU2VsZWN0IGRyb3AgZG93bnNcbnNlbGVjdCB7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vLi4vc3ZnL3NlbGVjdC5zdmcnKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgMCBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogNDBweCBhdXRvO1xuICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWJvcmRlci1mb3Jtcyk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc2VsZWN0KTtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXdpZHRoOiB2YXIoLS1ib3JkZXItd2lkdGgtaW5wdXQtZmllbGQpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItcGFyYWdyYXBoKTtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtMTcpO1xuICBsaW5lLWhlaWdodDogMjRweDtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtaW4td2lkdGg6IDA7XG4gIHBhZGRpbmc6IDE1cHg7XG4gIHRleHQtaW5kZW50OiAxcHg7XG4gIHRyYW5zaXRpb246IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vLyBGb3JtIGlucHV0IGVsZW1lbnRzIGFuZCB0ZXh0YXJlYXNcbnRleHRhcmVhLFxuc2VsZWN0LFxuaW5wdXRbdHlwZT1cInRleHRcIl0sXG5pbnB1dFt0eXBlPVwidGVsXCJdLFxuaW5wdXRbdHlwZT1cInVybFwiXSxcbmlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSxcbmlucHV0W3R5cGU9XCJudW1iZXJcIl0sXG5pbnB1dFt0eXBlPVwibW9udGhcIl0sXG5pbnB1dFt0eXBlPVwid2Vla1wiXSxcbmlucHV0W3R5cGU9XCJlbWFpbFwiXSxcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl0ge1xuICBAZXh0ZW5kICVkZWZhdWx0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1iYWNrZ3JvdW5kLWlucHV0LWZpZWxkKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1ib3JkZXItZm9ybXMpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWlucHV0LWZpZWxkKTtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXdpZHRoOiB2YXIoLS1ib3JkZXItd2lkdGgtaW5wdXQtZmllbGQpO1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1wYXJhZ3JhcGgpO1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0xNyk7XG4gIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBwYWRkaW5nOiAxNXB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAuNTVzO1xuXG4gICY6OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItcGxhY2Vob2xkZXIpO1xuICAgIG9wYWNpdHk6IHZhcigtLW9wYWNpdHktcGxhY2Vob2xkZXIpO1xuICB9XG5cbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmFja2dyb3VuZC1pbnB1dC1maWVsZCk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1ib3JkZXItZm9ybXMtZm9jdXMpO1xuXG4gICAgJjo6cGxhY2Vob2xkZXIge1xuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXBsYWNlaG9sZGVyLWZvY3VzKTtcbiAgICAgIG9wYWNpdHk6IHZhcigtLW9wYWNpdHktcGxhY2Vob2xkZXItZm9jdXMpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBSYWRpbyBidXR0b25zIGFuZCBjaGVja2JveGVzXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0sXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICBoZWlnaHQ6IHZhcigtLXNpemUtcmFkaW8tYnV0dG9uKTtcbiAgbWFyZ2luOiAwO1xuICBtYXJnaW4tdG9wOiBjYWxjKCgxZW0gKiB2YXIoLS1saW5lLWhlaWdodC1jaGVja2JveCkgLSB2YXIoLS1zaXplLXJhZGlvLWJ1dHRvbikpIC8gMik7XG4gIG9wYWNpdHk6IDA7XG4gIHBhZGRpbmc6IDA7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAvLyBIaWRlIG5hdGl2ZSBidXR0b25zXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IHZhcigtLXNpemUtcmFkaW8tYnV0dG9uKTtcbn1cblxuLy8gTGFiZWxzIGZvciByYWRpbyBidXR0b25zIGFuZCBjaGVja2JveGVzXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0gKyBsYWJlbCxcbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSArIGxhYmVsIHtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1jaGVja2JveCk7XG59XG5cbi8vIEN1c3RvbSBidXR0b25zIC0gYmFzaWMgc3R5bGVcbmlucHV0W3R5cGU9XCJyYWRpb1wiXSArIGxhYmVsOjpiZWZvcmUsXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0gKyBsYWJlbDo6YmVmb3JlIHtcbiAgYWxpZ24tc2VsZjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1jaGVja2JveCk7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogdmFyKC0tYm9yZGVyLXdpZHRoLWNoZWNrYm94KTtcbiAgY29udGVudDogJyc7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBmbGV4LXNocmluazogMDtcbiAgaGVpZ2h0OiB2YXIoLS1zaXplLXJhZGlvLWJ1dHRvbik7XG4gIG1hcmdpbi1yaWdodDogdmFyKC0tZ2FwLWNoZWNrYm94KTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IGNhbGModmFyKC0tYm9yZGVyLXdpZHRoLWNoZWNrYm94KSAvIDIpO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjJzLCBib3JkZXIgLjJzO1xuICB3aWR0aDogdmFyKC0tc2l6ZS1yYWRpby1idXR0b24pO1xufVxuXG4vLyBSYWRpbyBvbmx5IHN0eWxlXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0gKyBsYWJlbDo6YmVmb3JlIHtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xufVxuXG4vLyBDaGVja2JveCBvbmx5IHN0eWxlXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0gKyBsYWJlbDo6YmVmb3JlIHtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1jaGVja2JveCk7XG59XG5cbi8vIFJhZGlvIGJ1dHRvbiBhbmQgY2hlY2tib3ggY2hlY2tlZCBzdGF0ZXNcbmlucHV0W3R5cGU9XCJyYWRpb1wiXTpjaGVja2VkICsgbGFiZWw6OmJlZm9yZSxcbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkICsgbGFiZWw6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWNoZWNrYm94KTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1jaGVja2JveCk7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuMnM7XG59XG5cbi8vIFJhZGlvIGJ1dHRvbiBhbmQgY2hlY2tib3ggYWN0aXZlIHN0YXRlc1xuaW5wdXRbdHlwZT1cInJhZGlvXCJdOmFjdGl2ZSArIGxhYmVsOjpiZWZvcmUsXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06YWN0aXZlICsgbGFiZWw6OmJlZm9yZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoLjgpO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjJzO1xufVxuXG4vLyBSYWRpbyBidXR0b24gaWNvblxuaW5wdXRbdHlwZT1cInJhZGlvXCJdOmNoZWNrZWQgKyBsYWJlbDo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwgJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDE2IDE2JyUzRSUzQ2cgY2xhc3M9J25jLWljb24td3JhcHBlcicgZmlsbD0nJTIzZmZmZmZmJyUzRSUzQ2NpcmNsZSBjeD0nOCcgY3k9JzgnIHI9JzgnIGZpbGw9JyUyM2ZmZmZmZiclM0UlM0MvY2lyY2xlJTNFJTNDL2clM0UlM0Mvc3ZnJTNFXCIpO1xuICBiYWNrZ3JvdW5kLXNpemU6IHZhcigtLXNpemUtcmFkaW8tYnV0dG9uLW1hcmtlcik7XG59XG5cbi8vIENoZWNrYm94IGJ1dHRvbiBpY29uXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCArIGxhYmVsOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsICUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScxMicgaGVpZ2h0PScxMicgdmlld0JveD0nMCAwIDEyIDEyJyUzRSUzQ3BvbHlsaW5lIHBvaW50cz0nMSA2LjUgNCA5LjUgMTEgMi41JyBmaWxsPSdub25lJyBzdHJva2U9JyUyM0ZGRkZGRicgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBzdHJva2Utd2lkdGg9JzInLyUzRSUzQy9zdmclM0VcIik7XG4gIGJhY2tncm91bmQtc2l6ZTogdmFyKC0tc2l6ZS1jaGVja2JveC1tYXJrZXIpO1xufVxuXG4vLyBSYWRpbyBidXR0b24gYW5kIGNoZWNrYm94IGZvY3VzIHN0YXRlc1xuaW5wdXRbdHlwZT1cInJhZGlvXCJdOmZvY3VzICsgbGFiZWw6OmJlZm9yZSxcbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpmb2N1cyArIGxhYmVsOjpiZWZvcmUsXG5pbnB1dFt0eXBlPVwicmFkaW9cIl06Y2hlY2tlZDphY3RpdmUgKyBsYWJlbDo6YmVmb3JlLFxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQ6YWN0aXZlICsgbGFiZWw6OmJlZm9yZSB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItY2hlY2tib3gpO1xuICBib3gtc2hhZG93OiB2YXIoLS1jb2xvci1jaGVja2JveC1vdXRsaW5lKTtcbn1cblxuLy8gUmFkaW8gYnV0dG9uIGFuZCBjaGVja2JveCBjaGVja2VkICsgYWN0aXZlIHN0YXRlc1xuaW5wdXRbdHlwZT1cInJhZGlvXCJdOmNoZWNrZWQ6YWN0aXZlICsgbGFiZWw6OmJlZm9yZSxcbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkOmFjdGl2ZSArIGxhYmVsOjpiZWZvcmUge1xuICB0cmFuc2Zvcm06IG5vbmU7XG4gIHRyYW5zaXRpb246IG5vbmU7XG59XG5cbi8vIFJhZGlvIGJ1dHRvbiBhbmQgY2hlY2tib3ggaG92ZXJzXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1tYXgtcHNldWRvLWNsYXNzICovXG5pbnB1dFt0eXBlPVwicmFkaW9cIl06bm90KDpjaGVja2VkKTpub3QoOmZvY3VzKSArIGxhYmVsOmhvdmVyOjpiZWZvcmUsXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06bm90KDpjaGVja2VkKTpub3QoOmZvY3VzKSArIGxhYmVsOmhvdmVyOjpiZWZvcmUge1xuICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWNoZWNrYm94LWJvcmRlci1ob3Zlcik7XG59XG4vKiBzdHlsZWxpbnQtZW5hYmxlIHNlbGVjdG9yLW1heC1wc2V1ZG8tY2xhc3MgKi9cbiIsIkBtaXhpbiBidXR0b24tc3R5bGUtZ2hvc3QoJGJhY2tncm91bmQ6IHRyYW5zcGFyZW50LCAkYmFja2dyb3VuZC1ob3ZlcjogdmFyKC0tY29sb3ItYnV0dG9uLWJhY2tncm91bmQpLCAkY29sb3I6IHZhcigtLWNvbG9yLWJ1dHRvbi1iYWNrZ3JvdW5kKSwgJGhvdmVyOiB2YXIoLS1jb2xvci13aGl0ZSksICRyYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtaW5wdXQtZmllbGQpLCAkYm9yZGVyOiB2YXIoLS1ib3JkZXItd2lkdGgtaW5wdXQtZmllbGQpIHNvbGlkIHZhcigtLWNvbG9yLWJ1dHRvbi1iYWNrZ3JvdW5kKSwgJHRyYW5zaXRpb246IGFsbCAuMDhzIGN1YmljLWJlemllciguMjUsIC40NiwgLjQ1LCAuOTQpKSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICBib3JkZXI6ICRib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRyYWRpdXM7XG4gIGNvbG9yOiAkY29sb3I7XG4gIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xuXG4gICYuZm9jdXMsXG4gICY6Zm9jdXMsXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kLWhvdmVyO1xuICAgIGJvcmRlci1jb2xvcjogJGJhY2tncm91bmQtaG92ZXI7XG4gICAgY29sb3I6ICRob3ZlcjtcbiAgfVxufVxuIiwiLy8gR2VuZXJhbCBibG9nIGluZGV4IGFuZCBzaW5nbGUgc3R5bGVzXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBuby1kZXNjZW5kaW5nLXNwZWNpZmljaXR5ICovXG4vLyBDYXRlZ29yeSBsaXN0aW5nIHN0eWxlc1xuLmNhdCB7XG4gIG1hcmdpbi1ib3R0b206IC41cmVtO1xuICBtYXJnaW4tdG9wOiA0cmVtO1xuXG4gIGEge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItY2F0ZWdvcnktYm9yZGVyKTtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItd2lkdGg6IDFweCAxcHggMnB4O1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWNhdGVnb3J5LXRleHQpO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0xNik7XG4gICAgbWFyZ2luLWJvdHRvbTogLjVyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAuNWVtO1xuICAgIHBhZGRpbmc6IC4yZW0gLjZlbTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgJHRyYW5zaXRpb24tZHVyYXRpb247XG4gIH1cblxuICBhOmhvdmVyLFxuICBhOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLXRhZy1ib3JkZXItaG92ZXIpO1xuICB9XG59XG5cbi8vIEJsb2cgcG9zdCB0YWcgc3R5bGVzXG4udGFncyB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLW1hcmdpbi1iZXR3ZWVuLXRleHQtZWxlbWVudHMpO1xuICBtYXJnaW4tdG9wOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gIGxpIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxuXG4gIGEge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItdGFnLWJvcmRlcik7XG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXdpZHRoOiAxcHggMXB4IDJweDtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci10YWctdGV4dCk7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTE0KTtcbiAgICBtYXJnaW4tcmlnaHQ6IC40ZW07XG4gICAgcGFkZGluZzogLjJlbSAuNmVtO1xuICAgIHRyYW5zaXRpb246IGFsbCAkdHJhbnNpdGlvbi1kdXJhdGlvbjtcbiAgfVxuXG4gIGE6aG92ZXIsXG4gIGE6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItdGFnLWJvcmRlci1ob3Zlcik7XG4gIH1cbn1cblxuLy8gTmV4dC9QcmV2aW91cyBzaW5nbGUgcG9zdCBuYXZpZ2F0aW9uXG4ucG9zdC1uYXZpZ2F0aW9uIC5uYXYtbGlua3Mge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcbn1cbiIsIi8vIFRoZXNlIHN0eWxlcyBhcmUgcmVxdWlyZWQgYnkgV29yZFByZXNzLm9yZyBUaGVtZSBDaGVja1xuLy8gUkVRVUlSRUQ6IC5zdGlja3kgY3NzIGNsYXNzIGlzIG5lZWRlZCBpbiB5b3VyIHRoZW1lIGNzcy5cbi8vIFJFUVVJUkVEOiAuYnlwb3N0YXV0aG9yIGNzcyBjbGFzcyBpcyBuZWVkZWQgaW4geW91ciB0aGVtZSBjc3MuXG46cm9vdCB7XG4gIC0tY29sb3ItYm9yZGVyLXN0aWNreTogI2Q3ZTRmMjtcbiAgLS1jb2xvci1ieXBvc3RhdXRob3I6IHJnYmEoNDIsIDQ1LCA2MiwgLjUpO1xufVxuXG4uc3RpY2t5IHtcbiAgYm9yZGVyOiAxcHggZGFzaGVkIHZhcigtLWNvbG9yLWJvcmRlci1zdGlja3kpO1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICBwYWRkaW5nOiAycmVtO1xufVxuXG4uY29tbWVudC1saXN0IGxpLmJ5cG9zdGF1dGhvcixcbi5ieXBvc3RhdXRob3Ige1xuICBib3JkZXI6IDFweCBkYXNoZWQgdmFyKC0tY29sb3ItYnlwb3N0YXV0aG9yKTtcbiAgcGFkZGluZzogMnJlbTtcbn1cblxuLy8gV29yZFByZXNzIGNhcHRpb25zXG4vLyBSRVFVSVJFRDogLndwLWNhcHRpb24gY3NzIGNsYXNzIGlzIG5lZWRlZCBpbiB5b3VyIHRoZW1lIGNzcy5cbi8vIFJFUVVJUkVEOiAud3AtY2FwdGlvbi10ZXh0IGNzcyBjbGFzcyBpcyBuZWVkZWQgaW4geW91ciB0aGVtZSBjc3MuXG4ud3AtY2FwdGlvbiB7XG4gIG1heC13aWR0aDogMTAwJTtcblxuICBpbWdbY2xhc3MqPVwid3AtaW1hZ2UtXCJdIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgfVxuXG4gIC53cC1jYXB0aW9uLXRleHQge1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIHBhZGRpbmc6IDFyZW0gMDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG59XG4iLCIvLyBCYWNrIHRvIHRvcCBsaW5rXG4vL1xuLy8gVGhlIG9uZSBhbmQgb25seSBhbmNob3IgbGluayB0aGF0IGJyaW5ncyB1c2VyIGJhY2sgdG8gdG9wXG4vLyB3aGVuIGhpdHRpbmcgdGhlIHJvY2sgYm90dG9tLlxuXG4uc2l0ZS1mb290ZXIgLnRvcCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXG4gIC8vIE1ha2VzIGl0IDUweDUwXG4gIHBhZGRpbmc6IDE2cHg7XG5cbiAgc3ZnIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmlsbDogdmFyKC0tY29sb3ItdG9wLWFycm93LWRhcmspO1xuICAgIGhlaWdodDogMThweDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBtYXJnaW46IDA7XG4gICAgb3BhY2l0eTogLjg7XG4gICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlO1xuICAgIHdpZHRoOiAxOHB4O1xuXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRjb250YWluZXItbW9iaWxlKSB7XG4gICAgICBoZWlnaHQ6IDE1cHg7XG4gICAgICB3aWR0aDogMTVweDtcbiAgICB9XG4gIH1cblxuICAmOmhvdmVyLFxuICAmOmZvY3VzLFxuICAmOmFjdGl2ZSB7XG4gICAgb3BhY2l0eTogMTtcblxuICAgIHN2ZyB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLS41cmVtKTtcbiAgICB9XG4gIH1cbn1cblxuLnNpdGUtZm9vdGVyIC5iYWNrLXRvLXRvcCB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJvdHRvbTogMXJlbTtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIG1hcmdpbjogMDtcbiAgb3BhY2l0eTogMDtcbiAgcG9zaXRpb246IGZpeGVkO1xuICByaWdodDogMXJlbTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5ICR0cmFuc2l0aW9uLWR1cmF0aW9uIDBzLCB2aXNpYmlsaXR5IDBzICR0cmFuc2l0aW9uLWR1cmF0aW9uO1xuICB6LWluZGV4OiA5OTk5O1xuXG4gIC8vIEFjY2Vzc2liaWxpdHk6IENoYW5nZSBjb2xvciBiYXNlZCBvbiBiYWNrZ3JvdW5kIGNvbG9yIHRoZSBlbGVtZW50IGlzIG9uXG4gICYuaGFzLWxpZ2h0LWJnIHN2ZyB7XG4gICAgZmlsbDogdmFyKC0tY29sb3ItdG9wLWFycm93LWRhcmspO1xuICB9XG5cbiAgJi5oYXMtZGFyay1iZyBzdmcge1xuICAgIGZpbGw6IHZhcigtLWNvbG9yLXRvcC1hcnJvdy1saWdodCk7XG4gIH1cblxuICAmLmlzLXZpc2libGUsXG4gICYuZmFkZS1vdXQge1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgJHRyYW5zaXRpb24tZHVyYXRpb24gMHMsIHZpc2liaWxpdHkgMHMgMHM7XG4gIH1cblxuICAmLmlzLXZpc2libGUgeyAvLyBUaGUgYnV0dG9uIGJlY29tZXMgdmlzaWJsZVxuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAmLmZhZGUtb3V0IHsgLy8gSWYgdGhlIHVzZXIga2VlcHMgc2Nyb2xsaW5nIGRvd24sIHRoZSBidXR0b24gaXMgb3V0IG9mIGZvY3VzIGFuZCBiZWNvbWVzIGxlc3MgdmlzaWJsZVxuICAgIG9wYWNpdHk6IDE7XG5cbiAgICAmOmZvY3VzLFxuICAgICY6aG92ZXIge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIENsYXNzaWMgV29yZFByZXNzIGdhbGxlcmllc1xuLy8gQHNvdXJjZSBodHRwczovL2dpdGh1Yi5jb20vQXV0b21hdHRpYy9fcy9ibG9iLzUwY2U5M2M3Y2Q0Nzg4NzFjOWFlNzUwNGYwZWY0NzQ4ZjVkZTQ0OWYvc2Fzcy9tZWRpYS9fZ2FsbGVyaWVzLnNjc3Ncbi5nYWxsZXJ5IHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC1nYXA6IDEuNWVtO1xuICBtYXJnaW4tYm90dG9tOiAxLjVlbTtcbn1cblxuLmdhbGxlcnktaXRlbSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbn1cblxuQGZvciAkaSBmcm9tIDIgdGhyb3VnaCA5IHtcbiAgLmdhbGxlcnktY29sdW1ucy0jeyRpfSB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoJGksIDFmcik7XG4gIH1cbn1cblxuLmdhbGxlcnktY2FwdGlvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuIiwiLy8gU3R5bGluZyBsYXp5IGxvYWRpbmcgZGl2XG4vLyBAbGluayBodHRwczovL2dpdGh1Yi5jb20vdmVybG9rL3ZhbmlsbGEtbGF6eWxvYWQjbGF6eS1iYWNrZ3JvdW5kLWltYWdlXG5kaXYubGF6eSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgaGVpZ2h0OiAxMDAlO1xuICBsZWZ0OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDA7XG59XG5cbi8vIEdlbmVyYWwgY2xhc3MgZm9yIGFueSBsYXp5IGxvYWQgY29udGFpbmVyXG4uaGFzLWxhenlsb2FkIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuIiwiLy8gQWx0ZXJuYXRpdmUgc3R5bGU6IGh0dHBzOi8vaS5pbWd1ci5jb20vQThnVXl1Mi5wbmdcbi8qIHN0eWxlbGludC1kaXNhYmxlIGExMXkvZm9udC1zaXplLWlzLXJlYWRhYmxlICovXG4ubmF2aWdhdGlvbjpub3QoLnBvc3QtbmF2aWdhdGlvbikgLm5hdi1saW5rcyB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBkaXNwbGF5OiBmbGV4O1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1oZWFkaW5nKTtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIG1hcmdpbi10b3A6IDRyZW07XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHdpZHRoOiAxMDAlO1xuXG4gIGEge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxufVxuLyogc3R5bGVsaW50LWVuYWJsZSAqL1xuXG4ucGFnZS1udW1iZXJzIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgdmFyKC0tY29sb3ItYmx1ZS1jaGFsayk7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgdmFyKC0tY29sb3ItYmx1ZS1jaGFsayk7XG4gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJsdWUtY2hhbGspO1xuICBib3JkZXItdG9wOiAycHggc29saWQgdmFyKC0tY29sb3ItYmx1ZS1jaGFsayk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1wYWdpbmF0aW9uLXRleHQpO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTtcbiAgaGVpZ2h0OiAzNXB4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgdHJhbnNpdGlvbjogYWxsICR0cmFuc2l0aW9uLWR1cmF0aW9uO1xuICB3aWR0aDogMzVweDtcblxuICBAbWVkaWEgKG1heC13aWR0aDogNjAwcHgpIHtcbiAgICBoZWlnaHQ6IDI2cHg7XG4gICAgd2lkdGg6IDI2cHg7XG4gIH1cblxuICAmOmxhc3QtY2hpbGQge1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDRweDtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiA0cHg7XG4gIH1cblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiA0cHg7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogNHB4O1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xuICB9XG59XG5cbmEucGFnZS1udW1iZXJzOmhvdmVyLFxuYS5wYWdlLW51bWJlcnM6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1wYWdpbmF0aW9uLWJhY2tncm91bmQtaG92ZXIpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLXBhZ2luYXRpb24tYm9yZGVyLWhvdmVyKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXBhZ2luYXRpb24tdGV4dC1ob3Zlcik7XG59XG5cbi5wYWdlLW51bWJlcnMuY3VycmVudCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXBhZ2luYXRpb24tYmFja2dyb3VuZC1jdXJyZW50KTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1wYWdpbmF0aW9uLWJvcmRlci1jdXJyZW50KTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXBhZ2luYXRpb24tdGV4dC1jdXJyZW50KTtcbn1cblxuLy8gUmVtb3ZlIHRoaXMgaWYgeW91IGFyZSB1c2luZyB2ZXJzaW9uIHdpdGggbmV4dC9wcmV2XG4ucGFnZS1udW1iZXJzLm5leHQsXG4ucGFnZS1udW1iZXJzLnByZXYge1xuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gIHdpZHRoOiBhdXRvO1xuXG4gIEBtZWRpYSAobWF4LXdpZHRoOiA2MDBweCkge1xuICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICB9XG59XG4iLCIvLyBHcmF2aXR5IGZvcm1zXG4vLyBQbGVhc2UgZGlzYWJsZSBDU1MgaW4gL2FkbWluLnBocD9wYWdlPWdmX3NldHRpbmdzXG5cbi8vIFdDQUcgMi4wIGVycm9yc1xuLyogc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3ItY2xhc3MtcGF0dGVybiAqL1xuZGl2LnZhbGlkYXRpb25fZXJyb3Ige1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1lcnJvcik7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTE3KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICBwYWRkaW5nOiAycmVtO1xuXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIH1cbn1cblxuYm9keSAqW2FyaWEtaW52YWxpZD1cInRydWVcIl0ge1xuICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWVycm9yKTtcbn1cblxuLnZhbGlkYXRpb25fbWVzc2FnZSB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1lcnJvcik7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTE2KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXJlZ3VsYXIpO1xufVxuXG4udmFsaWRhdGlvbl9saXN0IHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIHBhZGRpbmc6IDA7XG5cbiAgYSB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWVycm9yKTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICBsaSB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWVycm9yKTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XG4gIH1cbn1cblxuLy8gR3Jhdml0eSBmb3JtcyBtaW5pbWFsIGRlZmF1bHQgc3R5bGVzXG4uZ2Zvcm1fYm9keSB7XG4gIC8vIFJlcXVpcmVkIHN0YXIgY29sb3JcbiAgLmdmaWVsZF9yZXF1aXJlZCB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLW1haW4pO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTIyKTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAzcHg7XG4gIH1cblxuICAvLyBIaWRlIGhvbmV5cG90IGZpZWxkXG4gIC5nZm9ybV92YWxpZGF0aW9uX2NvbnRhaW5lciB7XG4gICAgQGV4dGVuZCAuc2NyZWVuLXJlYWRlci10ZXh0O1xuICB9XG5cbiAgdWwge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICAuZ2Zvcm1fZmllbGRzIGxpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgIG1hcmdpbi10b3A6IDFyZW07XG4gIH1cblxuICAuZ2ZpZWxkX3JhZGlvIGxpLFxuICAuZ2ZpZWxkX2NoZWNrYm94IGxpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cblxuICAuZ2ZpZWxkc2V0IGxpIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgbWFyZ2luOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLmdmb3JtX2ZpZWxkcyBsaTpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbiAgLmdmaWVsZF9sYWJlbCxcbiAgLmdpbnB1dF9jb250YWluZXIgbGFiZWwge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICB9XG5cbiAgaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgfVxuXG4gIC5nZmllbGRfcmFkaW8gbGkgbGFiZWwsXG4gIC5nZmllbGRfY2hlY2tib3ggbGkgbGFiZWwge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxuXG4gIGlucHV0Om5vdChbdHlwZT1cInJhZGlvXCJdKTpub3QoW3R5cGU9XCJjaGVja2JveFwiXSksXG4gIHRleHRhcmVhIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkY29udGFpbmVyLW1vYmlsZSkge1xuICAgIC8vIENvbXBsZXggZmllbGRzXG4gICAgLmdpbnB1dF9mdWxsIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgLmdpbnB1dF9jb21wbGV4IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBtYXJnaW4tbGVmdDogLS41cmVtO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtLjVyZW07XG5cbiAgICAgIHNwYW4ge1xuICAgICAgICBtYXJnaW4tbGVmdDogLjVyZW07XG4gICAgICAgIG1hcmdpbi1yaWdodDogLjVyZW07XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmdpbnB1dF9sZWZ0LFxuICAgIC5naW5wdXRfcmlnaHQge1xuICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICB3aWR0aDogY2FsYyg1MCUgLSAxcmVtKTtcblxuICAgICAgPiBsYWJlbCxcbiAgICAgIGlucHV0IHtcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtMTYpO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi8qIHN0eWxlbGludC1lbmFibGUgc2VsZWN0b3ItY2xhc3MtcGF0dGVybiAqL1xuIiwiLy8gU2VhcmNoXG5cbi5ibG9jay1zZWFyY2gsXG4uYmxvY2stc2VhcmNoLXJlc3VsdHMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG59XG5cbi5ibG9jay1zZWFyY2ggZm9ybSB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIC8qIGF1dG9wcmVmaXhlcjogb2ZmICovXG4gIGdyaWQtZ2FwOiAxcmVtO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDlmciAxZnI7XG5cbiAgaW5wdXQsXG4gIGxhYmVsIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG4uYmxvY2stc2VhcmNoLXJlc3VsdHMge1xuICA+IC5jb250YWluZXIge1xuICAgIHBhZGRpbmctdG9wOiAwO1xuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRjb250YWluZXItaXBhZC1sYW5kc2NhcGUpIHtcbiAgICAgIC8vIENoYW5nZSB0aGlzIHRvIDIgaWYgeW91IHVzZSBvdGhlciBwb3N0IHR5cGUgcmVzdWx0c1xuICAgICAgQGluY2x1ZGUgZ3JpZCgxKTtcbiAgICB9XG4gIH1cblxuICAucm93LXJlc3VsdCB7XG4gICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkIHZhcigtLWNvbG9yLWJvcmRlci1mb3Jtcyk7XG4gICAgcGFkZGluZzogMnJlbSAwO1xuXG4gICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIHZhcigtLWNvbG9yLWJvcmRlci1mb3Jtcyk7XG4gICAgfVxuICB9XG5cbiAgaDMge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWg0KTtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICB9XG5cbiAgcCB7XG4gICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgfVxuXG4gIC50YWdzIGEge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJhY2tncm91bmQtdGFnKTtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItbWFpbik7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItbWFpbik7XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItYmFja2dyb3VuZC10YWcpO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gQ1NTIEdyaWQgbWl4aW4gd2l0aCBmbGV4Ym94IGZhbGxiYWNrIGZvciBJRSBhbmQgRWRnZVxuQG1peGluIGdyaWQoJGNvbHVtbnMsICRtYXhfd2lkdGg6IDFmciwgJG1pbl93aWR0aDogMCwgJG1pbl9oZWlnaHQ6IDAsICRtYXhfaGVpZ2h0OiBhdXRvLCAkZ3V0dGVyX3g6IDE2cHgsICRndXR0ZXJfeTogMTZweCkge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLWF1dG8tcm93czogbWlubWF4KCRtaW5faGVpZ2h0LCAkbWF4X2hlaWdodCk7XG4gIGdyaWQtZ2FwOiAkZ3V0dGVyX3g7XG4gIGdyaWQtcm93LWdhcDogJGd1dHRlcl95O1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgkY29sdW1ucywgbWlubWF4KCRtaW5fd2lkdGgsICRtYXhfd2lkdGgpKTtcblxuICAvLyBGb3IgYnJvd3NlciB2ZXJzaW9ucyB0aGF0IGRvIG5vdCBzdXBwb3J0IENTUyBncmlkXG4gIEBzdXBwb3J0cyBub3QgKGRpc3BsYXk6IGdyaWQpIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgPiBkaXYge1xuICAgICAgJGdyaWRfd2lkdGg6IDEwMCUgLyAkY29sdW1ucztcbiAgICAgIG1hcmdpbi1ib3R0b206ICRndXR0ZXJfeTtcbiAgICAgIG1hcmdpbi1yaWdodDogJGd1dHRlcl94O1xuICAgICAgd2lkdGg6IGNhbGMoI3skZ3JpZF93aWR0aH0gLSAjeyRndXR0ZXJfeH0pO1xuXG4gICAgICAmOm50aC1jaGlsZCgjeyRjb2x1bW5zfW4rI3skY29sdW1uc30pIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIEludGVybmV0IEV4cGxvcmVyXG4gIEBtZWRpYSBhbGwgYW5kICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSksICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgID4gZGl2IHtcbiAgICAgICRncmlkX3dpZHRoOiAxMDAlIC8gJGNvbHVtbnM7XG4gICAgICBtYXJnaW4tYm90dG9tOiAkZ3V0dGVyX3k7XG4gICAgICBtYXJnaW4tcmlnaHQ6ICRndXR0ZXJfeDtcbiAgICAgIHdpZHRoOiBjYWxjKCN7JGdyaWRfd2lkdGh9IC0gI3skZ3V0dGVyX3h9KTtcblxuICAgICAgJjpudGgtY2hpbGQoI3skY29sdW1uc31uKyN7JGNvbHVtbnN9KSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBFZGdlXG4gIEBzdXBwb3J0cyAoLW1zLWltZS1hbGlnbjogYXV0bykge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICA+IGRpdiB7XG4gICAgICAkZ3JpZF93aWR0aDogMTAwJSAvICRjb2x1bW5zO1xuICAgICAgbWFyZ2luLWJvdHRvbTogJGd1dHRlcl95O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAkZ3V0dGVyX3g7XG4gICAgICB3aWR0aDogY2FsYygjeyRncmlkX3dpZHRofSAtICN7JGd1dHRlcl94fSk7XG5cbiAgICAgICY6bnRoLWNoaWxkKCN7JGNvbHVtbnN9bisjeyRjb2x1bW5zfSkge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBFcnJvciA0MDQgdGl0bGVcbi5ibG9jay1lcnJvci00MDQge1xuICAuY29udGFpbmVyIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJGNvbnRhaW5lci1tb2JpbGUpIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxMCU7XG4gICAgICBwYWRkaW5nLXRvcDogMTAlO1xuICAgIH1cbiAgfVxuXG4gIGgxIHtcbiAgICBAaW5jbHVkZSByZXNwb25zaXZlLWZvbnQoNDJweCwgMjAwcHgpO1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gIH1cbn1cbiIsIi8vIENvbW1lbnRzXG4vL1xuLy8gV29yZFByZXNzIGJ1aWx0LWluIGNvbW1lbnRzIHdpdGggY29tbWVudF9mb3JtKCkuXG4vLyBDdXN0b20gY29tbWVudCB0ZW1wbGF0ZSBjYW4gYmUgZm91bmQgaW4gaW5jL2NvbW1lbnRzLnBocFxuLyogc3R5bGVsaW50LWRpc2FibGUgbm8tZGVzY2VuZGluZy1zcGVjaWZpY2l0eSAqL1xuLmNvbW1lbnRzLWFyZWEge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBtYXJnaW4tdG9wOiA1MHB4O1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLmNvbW1lbnQtbGlzdCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcblxuICAvLyBNYWtlIHN1cmUgY2hpbGRyZW4gZG9uJ3QgaGF2ZSBsaXN0IGJ1bGxldHNcbiAgLmNoaWxkcmVuIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICB9XG5cbiAgbGkge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTE0KTtcbiAgICBtYXJnaW4tYm90dG9tOiA3MHB4O1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIHAge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1jb21tZW50LXRleHQpO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTE0KTtcbiAgfVxuXG4gIC5hdmF0YXIge1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cblxuICAuY29tbWVudC1hdXRob3Ige1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1jb21tZW50LWF1dGhvci10ZXh0KTtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oNCk7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICBhLFxuICAuY29tbWVudHMtbGluayBhIHtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1saW5rLWNvbW1lbnQpO1xuICB9XG5cbiAgLmNvbW1lbnQtYXV0aG9yIGEge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1wYXJhZ3JhcGgpO1xuICB9XG5cbiAgLmNvbW1lbnQtdGltZSB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtMTQpO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgYSB7XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItbGluay1jb21tZW50LXRpbWUtYW5jaG9yKTtcbiAgICB9XG5cbiAgICAmOmZvY3VzLFxuICAgICY6aG92ZXIge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG4gIH1cblxuICAuY29tbWVudC10aW1lIHN2ZyB7XG4gICAgZmlsbDogdmFyKC0tY29sb3ItbGluay1jb21tZW50LXRpbWUtYW5jaG9yKTtcbiAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAycHg7XG4gIH1cbn1cblxuLmNvbW1lbnRzLWxpbmsge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtMTQpO1xuICB0ZXh0LWFsaWduOiByaWdodDtcblxuICBhIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItbGluay1jb21tZW50KTtcbiAgfVxuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMsXG4gIGE6aG92ZXIsXG4gIGE6Zm9jdXMge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gIH1cblxuICBzdmcge1xuICAgIG1hcmdpbi1yaWdodDogN3B4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IC0xcHg7XG4gIH1cbn1cblxuLy8gQ29tbWVudCBmb3JtIGdyaWRcbi5jb21tZW50LWZvcm0ge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJGNvbnRhaW5lci1tb2JpbGUpIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtZ2FwOiAxZW07XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xuXG4gICAgLyogYXV0b3ByZWZpeGVyOiBvZmYgKi9cbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgIC8vIE1ha2UgdGhlc2UgZnVsbCB3aWR0aFxuICAgIC5jb21tZW50LW5vdGVzLFxuICAgIC5jb21tZW50LWZvcm0tY29tbWVudCxcbiAgICAuZm9ybS1zdWJtaXQge1xuICAgICAgZ3JpZC1jb2x1bW46IDEgLyBzcGFuIDI7XG4gICAgfVxuICB9XG59XG5cbi5jb21tZW50LXJlc3BvbmQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcblxuICBpbnB1dCB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRjb250YWluZXItbW9iaWxlKSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cblxuICAuY29tbWVudC1mb3JtLWF1dGhvciB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICBtYXJnaW4tdG9wOiAwO1xuXG4gICAgaW5wdXQge1xuICAgICAgYm9yZGVyLXdpZHRoOiAxcHg7XG4gICAgICBwYWRkaW5nOiAxNXB4O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgLmNvbW1lbnQtZm9ybS1lbWFpbCB7XG4gICAgY2xlYXI6IHJpZ2h0O1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi10b3A6IDA7XG5cbiAgICBpbnB1dCB7XG4gICAgICBib3JkZXItd2lkdGg6IDFweDtcbiAgICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cblxuICAuY29tbWVudC1mb3JtLXVybCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIGlucHV0IHtcbiAgICAgIGJvcmRlci13aWR0aDogMXB4O1xuICAgICAgcGFkZGluZzogMTVweDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxuXG4gIC5mb3JtLXN1Ym1pdCB7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG5cbiAgLmNvbW1lbnQtZm9ybS1jb21tZW50IHtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICB9XG5cbiAgdGV4dGFyZWEge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4vKiBzdHlsZWxpbnQtZW5hYmxlIG5vLWRlc2NlbmRpbmctc3BlY2lmaWNpdHkgKi9cbiIsIi8vIEd1dGVuYmVyZyBjb250ZW50XG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyLFxuLmd1dGVuYmVyZy1jb250ZW50IHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tcGFkZGluZy1ibG9jayk7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgcGFkZGluZy10b3A6IHZhcigtLXBhZGRpbmctYmxvY2spO1xufVxuXG4vLyBHdXRlbmJlcmcgY29yZSBtYWdpY1xuLmd1dGVuYmVyZy1jb250ZW50ID4gKiB7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1wYXJhZ3JhcGhzLWJsb2cpO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXgtd2lkdGg6ICR3aWR0aC1tYXgtYXJ0aWNsZTtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICB3aWR0aDogMTAwJTtcblxuICBAbWVkaWEgKG1heC13aWR0aDogJHdpZHRoLW1heC1hcnRpY2xlICsgNDBweCkge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIGNhbGModmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCkgKiAyKSk7XG5cbiAgICAmLmFsaWduZnVsbCB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICAgICAgcGFkZGluZy1yaWdodDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gY2FsYyh2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKSAqIDIpKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIExpc3Qgb2YgYWxsIGJsb2NrczogaHR0cHM6Ly93b3JkcHJlc3Mub3JnL3N1cHBvcnQvYXJ0aWNsZS9ibG9ja3MvXG4vLyBEZWZhdWx0IEd1dGVuYmVyZyBjb3JlIGJsb2NrIHN0eWxlc1xuLmVkaXRvci1zdHlsZXMtd3JhcHBlcixcbi5ndXRlbmJlcmctY29udGVudCxcbi5zaXRlLW1haW4ge1xuICBAaW1wb3J0ICdndXRlbmJlcmcvYmxvY2tzL2NvcmUtYmxvY2txdW90ZSc7XG4gIEBpbXBvcnQgJ2d1dGVuYmVyZy9ibG9ja3MvY29yZS1jb2RlJztcbiAgQGltcG9ydCAnZ3V0ZW5iZXJnL2Jsb2Nrcy9jb3JlLWNvbHVtbnMnO1xuICBAaW1wb3J0ICdndXRlbmJlcmcvYmxvY2tzL2NvcmUtY292ZXInO1xuICBAaW1wb3J0ICdndXRlbmJlcmcvYmxvY2tzL2NvcmUtZW1iZWQnO1xuICBAaW1wb3J0ICdndXRlbmJlcmcvYmxvY2tzL2NvcmUtZ2FsbGVyeSc7XG4gIEBpbXBvcnQgJ2d1dGVuYmVyZy9ibG9ja3MvY29yZS1zZXBhcmF0b3InO1xuICBAaW1wb3J0ICdndXRlbmJlcmcvYmxvY2tzL2NvcmUtaGVhZGluZyc7XG4gIEBpbXBvcnQgJ2d1dGVuYmVyZy9ibG9ja3MvY29yZS1pbWFnZSc7XG4gIEBpbXBvcnQgJ2d1dGVuYmVyZy9ibG9ja3MvY29yZS1saXN0JztcbiAgQGltcG9ydCAnZ3V0ZW5iZXJnL2Jsb2Nrcy9jb3JlLXBhcmFncmFwaCc7XG4gIEBpbXBvcnQgJ2d1dGVuYmVyZy9ibG9ja3MvY29yZS1wcmVmb3JtYXR0ZWQnO1xuICBAaW1wb3J0ICdndXRlbmJlcmcvYmxvY2tzL2NvcmUtcHVsbHF1b3RlJztcbiAgQGltcG9ydCAnZ3V0ZW5iZXJnL2Jsb2Nrcy9jb3JlLXRhYmxlJztcbiAgQGltcG9ydCAnZ3V0ZW5iZXJnL2Jsb2Nrcy9jb3JlLXRleHQtY29sdW1ucyc7XG4gIEBpbXBvcnQgJ2d1dGVuYmVyZy9ibG9ja3MvY29yZS12ZXJzZSc7XG4gIEBpbXBvcnQgJ2d1dGVuYmVyZy9ibG9ja3MvY29yZS12aWRlbyc7XG5cbiAgLy8gQ3VzdG9tIEd1dGVuYmVyZyBibG9jayBzdHlsZXNcbiAgQGltcG9ydCAnZ3V0ZW5iZXJnL2Jsb2Nrcy9ib3hlZCc7XG4gIEBpbXBvcnQgJ2d1dGVuYmVyZy9ibG9ja3MvYnV0dG9uJztcbiAgQGltcG9ydCAnZ3V0ZW5iZXJnL2Jsb2Nrcy9idXR0b24tZmlsZSc7XG5cbiAgLy8gRXJyb3IgYmxvY2sgc3R5bGVzXG4gIEBpbXBvcnQgJ2d1dGVuYmVyZy9ibG9ja3MvZXJyb3InO1xuXG4gIC8vIEFDRiBibG9ja3NcbiAgLy8gQGltcG9ydCAnZ3V0ZW5iZXJnL2Jsb2Nrcy95b3VyLW5ldy1hY2YtYmxvY2snO1xufVxuIiwiLyogc3R5bGVsaW50LWRpc2FibGUgbm8tZGVzY2VuZGluZy1zcGVjaWZpY2l0eSAqL1xuLy8gQ29yZS90YWJsZSBibG9ja1xuLy8gVGFibGUgaGVhZGluZyBjZWxsc1xudGgge1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXNjcm9waW9uKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG50ZCB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1ibGFjayk7XG59XG5cbnRkLFxudGgsXG4ud3AtYmxvY2stdGFibGUgdGQsXG4ud3AtYmxvY2stdGFibGUgdGgge1xuICBib3JkZXI6IDA7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXBhcmFncmFwaCk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTE0KTtcbiAgaGVpZ2h0OiAycmVtO1xuICBwYWRkaW5nOiAuNnJlbSAxLjVyZW07XG59XG5cbnRyOm50aC1jaGlsZChldmVuKSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJhY2tncm91bmQtdGFibGUtY2VsbC1ldmVuKTtcbn1cblxudHI6bnRoLWNoaWxkKG9kZCkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1iYWNrZ3JvdW5kLXRhYmxlLWNlbGwtb2RkKTtcbn1cblxudGhlYWQsXG4ud3AtYmxvY2stdGFibGUgdGhlYWQge1xuICBib3JkZXI6IDA7XG5cbiAgdGg6Zmlyc3QtY2hpbGQge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDhweDtcbiAgfVxuXG4gIHRoOmxhc3QtY2hpbGQge1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiA4cHg7XG4gIH1cbn1cblxuLy8gRGVmYXVsdHNcbnRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgYm9yZGVyLXNwYWNpbmc6IDA7XG59XG5cbi53cC1ibG9jay10YWJsZS5hbGlnbmZ1bGwge1xuICBtYXJnaW4tbGVmdDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gIG1hcmdpbi1yaWdodDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSBjYWxjKHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpICogMikpO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogJHdpZHRoLWdyaWQtYmFzZSArIDQwcHgpIHtcbiAgLndwLWJsb2NrLXRhYmxlLmFsaWdud2lkZSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIGNhbGModmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCkgKiAyKSk7XG4gIH1cbn1cbiIsIi8vIENvcmUvYmxvY2txdW90ZSBibG9ja1xuXG5ibG9ja3F1b3RlICsgY2l0ZSxcbmJsb2NrcXVvdGUgKyBwID4gY2l0ZSB7XG4gIG1hcmdpbi1ib3R0b206IDRyZW07XG59XG5cbmJsb2NrcXVvdGUsXG5ibG9ja3F1b3RlLndwLWJsb2NrLXF1b3RlIHtcbiAgYm9yZGVyLWxlZnQ6IDJweCBzb2xpZCB2YXIoLS1jb2xvci1ibG9ja3F1b3RlKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXBhcmFncmFwaHMtYmxvZyk7XG4gIG1hcmdpbi1ib3R0b206IDRyZW07XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi10b3A6IDRyZW07XG4gIHBhZGRpbmc6IDMuNXJlbSA2cmVtO1xuICB3aWR0aDogY2FsYygxMDAlIC0gMTJyZW0pO1xuXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkd2lkdGgtbWF4LWFydGljbGUgKyA0MHB4KSB7XG4gICAgcGFkZGluZzogMy41cmVtIDJyZW07XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDRyZW0pO1xuICB9XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRjb250YWluZXItbW9iaWxlKSB7XG4gICAgcGFkZGluZzogNHJlbSA0cmVtIDRyZW0gMnJlbTtcbiAgfVxuXG4gID4gcCB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWJsb2NrcXVvdGUpO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1wYXJhZ3JhcGhzLWJsb2cpO1xuICB9XG59XG5cbi53cC1ibG9jay1ibG9ja3F1b3RlLmFsaWdud2lkZSxcbi53cC1ibG9jay1ibG9ja3F1b3RlLmFsaWduZnVsbCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICB3aWR0aDogY2FsYygxMDAlIC0gY2FsYyh2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKSAqIDIpKTtcbn1cblxuLndwLWJsb2NrLWJsb2NrcXVvdGUgYmxvY2txdW90ZSB7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xufVxuIiwiLy8gUHJlZm9ybWF0dGVkIHRleHQuXG5wcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1iYWNrZ3JvdW5kLWNvZGUtYmxvY2spO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1iYWNrZ3JvdW5kLWNvZGUtYmxvY2spO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1jb2RlLXRleHQpO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtbW9ub3NwYWNlKTtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtMTYpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtcGFyYWdyYXBocy1ibG9nKTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tbWFyZ2luLWJldHdlZW4tdGV4dC1lbGVtZW50cyk7XG4gIG1hcmdpbi10b3A6IHZhcigtLW1hcmdpbi1iZXR3ZWVuLXRleHQtZWxlbWVudHMpO1xuICBvdmVyZmxvdzogYXV0bztcbiAgcGFkZGluZzogMTVweCAxNnB4IDE0cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2hpdGUtc3BhY2U6IHByZTtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuXG4gIGNvZGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItY29kZS10ZXh0KTtcbiAgfVxufVxuXG4vLyBDb3JlL2NvZGUgYmxvY2tcbi53cC1ibG9jay1jb2RlIHtcbiAgQG1lZGlhIChtYXgtd2lkdGg6ICR3aWR0aC1ncmlkLWJhc2UgKyA0MHB4KSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIGNhbGModmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCkgKiA0KSk7XG4gIH1cblxuICBwcmUge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gIH1cbn1cbiIsIi8vIENvcmUvY29sdW1ucyBibG9ja1xuLndwLWJsb2NrLWNvbHVtbnMuYWxpZ25mdWxsIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG59XG5cbi8vIExvb3BzIHRvIGVudW1lcmF0ZSB0aGUgY2xhc3NlcyBmb3IgY29sdW1ucy5cbkBmb3IgJGkgZnJvbSAxIHRocm91Z2ggOSB7XG4gIC53cC1ibG9jay1jb2x1bW5zLmNvbHVtbnMtI3skaX0uYWxpZ25mdWxsIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSBjYWxjKHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpICogMikpO1xuICB9XG5cbiAgLndwLWJsb2NrLWNvbHVtbnMuY29sdW1ucy0jeyRpfSB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDkwMHB4KSB7XG4gICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgZ3JpZC1nYXA6IDFlbTtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gY2FsYyh2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKSAqIDIpKTtcblxuICAgICAgLndwLWJsb2NrLWNvbHVtbiB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRjb250YWluZXItbW9iaWxlKSB7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgxLCAxZnIpO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gQ29yZS9jb3ZlciBibG9ja1xuLndwLWJsb2NrLWNvdmVyX19pbm5lci1jb250YWluZXIge1xuICBwYWRkaW5nLWxlZnQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcblxuICBwIHtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtY29yZS1oZWFkaW5nKTtcbiAgfVxufVxuIiwiLy8gQ29yZS9lbWJlZCBibG9ja1xuLndwLWJsb2NrLWVtYmVkIGlmcmFtZSxcbi53cC1ibG9jay1lbWJlZCB2aWRlbyB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAkd2lkdGgtZ3JpZC1iYXNlICsgNDBweCkge1xuICAud3AtYmxvY2stZW1iZWQuYWxpZ253aWRlLFxuICAud3AtYmxvY2stZW1iZWQuYWxpZ25mdWxsIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gY2FsYyh2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKSAqIDIpKTtcbiAgfVxufVxuXG4ud3AtYmxvY2stZW1iZWQuYWxpZ25mdWxsIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xufVxuIiwiLy8gQ29yZS9nYWxsZXJ5IGJsb2NrXG4uaXMtZ3JpZCxcbi53cC1ibG9jay1nYWxsZXJ5IHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICBmaWdjYXB0aW9uIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTE2KTtcbiAgICBsaW5lLWhlaWdodDogMS41NTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1tYXJnaW4tYmV0d2Vlbi10ZXh0LWVsZW1lbnRzKTtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIGltZyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gICYuYWxpZ253aWRlIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICB9XG5cbiAgJi5hbGlnbmZ1bGwge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIGNhbGModmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCkgKiAyKSk7XG4gIH1cbn1cblxuLmlzLWdyaWQsXG4uYmxvY2tzLWdhbGxlcnktZ3JpZCB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIHBhZGRpbmctbGVmdDogMDtcblxuICAuYmxvY2tzLWdhbGxlcnktaXRlbSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5cbi8vIExvb3BzIHRvIGVudW1lcmF0ZSB0aGUgY2xhc3NlcyBmb3IgY29sdW1ucy5cbkBmb3IgJGkgZnJvbSAyIHRocm91Z2ggOSB7XG4gIC5pcy1ncmlkLmNvbHVtbnMtI3skaX0sXG4gIC5jb2x1bW5zLSN7JGl9IC5ibG9ja3MtZ2FsbGVyeS1ncmlkIHtcbiAgICBncmlkLWdhcDogM3JlbTtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgkaSwgMWZyKTtcblxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMDAwcHgpIHtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XG4gICAgfVxuXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDY3MHB4KSB7XG4gICAgICBncmlkLWdhcDogMnJlbTtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7XG4gICAgfVxuICB9XG59XG5cbi5ibG9ja3MtZ2FsbGVyeS1pdGVtID4gZmlndXJlIGZpZ2NhcHRpb24ge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuIiwiLy8gQ29yZS9zZXBhcmF0b3IgYmxvY2tcbmhyLFxuLndwLWJsb2NrLXNlcGFyYXRvciB7XG4gIG1hcmdpbi1ib3R0b206IGNhbGModmFyKC0tbWFyZ2luLWJldHdlZW4tcGFyYWdyYXBocykgKiAyKTtcbiAgbWFyZ2luLXRvcDogY2FsYyh2YXIoLS1tYXJnaW4tYmV0d2Vlbi1wYXJhZ3JhcGhzKSAqIDIpO1xufVxuXG4ud3AtYmxvY2stc2VwYXJhdG9yLmlzLXN0eWxlLWRlZmF1bHQge1xuICBtYXgtd2lkdGg6ICR3aWR0aC1tYXgtYXJ0aWNsZTtcbn1cbiIsIi8vIENvcmUvaGVhZGluZyBibG9ja1xuXG4vLyBUaXRsZSBsaW5lLWhlaWdodHNcbmgxLFxuaDIsXG5oMyxcbmg0LFxuaDUge1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtY29yZS1oZWFkaW5nKTtcbn1cblxuLy8gRG9uJ3QgYWRkIGV4dHJhIG1hcmdpbiBvbiB0b3Agb2YgZmlyc3QgdGl0bGVcbmgxLFxuaDIsXG5oMyxcbmg0LFxuaDUsXG5oNiB7XG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbn1cbiIsIi8vIEltYWdlIGJsb2NrXG4ud3AtYmxvY2staW1hZ2Uge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tbWFyZ2luLXdwLWJsb2NrLWltYWdlKTtcbiAgbWFyZ2luLXRvcDogdmFyKC0tbWFyZ2luLXdwLWJsb2NrLWltYWdlKTtcblxuICAmLmFsaWduZnVsbCB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gIH1cblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHdpZHRoLWdyaWQtYmFzZSArIDQwcHgpIHtcbiAgICAmLmFsaWdud2lkZSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIH1cbiAgfVxuXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkd2lkdGgtZ3JpZC1iYXNlICsgNDBweCkge1xuICAgICYuYWxpZ253aWRlIHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSBjYWxjKHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpICogMikpO1xuICAgIH1cbiAgfVxuXG4gIC5hbGlnbndpZGUgaW1nLFxuICAuYWxpZ25mdWxsIGltZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAvLyBObyBib3JkZXIgcmFkaXVzIG9uIGZ1bGwgd2lkdGggaW1hZ2UgYW5kIHdpZGUgb24gc21hbGwgc2NyZWVuc1xuICAuYWxpZ25mdWxsIGltZyB7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgfVxuXG4gID4gZmlndXJlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogYXV0bztcblxuICAgICYuYWxpZ25sZWZ0LFxuICAgICYuYWxpZ25yaWdodCB7XG4gICAgICAvLyBIYWNrIGZvciBrZWVwaW5nIGZpZ2NhcHRpb24gZnJvbSBmbG93aW5nIG92ZXIgZmxvYXRlZCBpbWFnZSwgdGhpcyB2YXJpYWJsZSBpcyBzZXQgaW5saW5lIHRvIHRoZSBjb3JyZXNwb25kaW5nIGZpZ3VyZSB3aXRoIGd1dGVuYmVyZy1oZWxwZXJzLmpzXG4gICAgICAvKiBzdHlsZWxpbnQtZGlzYWJsZSBjc3N0b29scy92YWx1ZS1uby11bmtub3duLWN1c3RvbS1wcm9wZXJ0aWVzICovXG4gICAgICBtYXgtd2lkdGg6IHZhcigtLXdpZHRoLWNoaWxkLWltZyk7XG4gICAgICAvKiBzdHlsZWxpbnQtZW5hYmxlICovXG4gICAgfVxuICB9XG5cbiAgZmlnY2FwdGlvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgfVxuXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkY29udGFpbmVyLW1vYmlsZSkge1xuICAgICYuYWxpZ25sZWZ0IGltZyxcbiAgICAmLmFsaWducmlnaHQgaW1nLFxuICAgICYuYWxpZ25jZW50ZXIgaW1nIHtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgLmFsaWduY2VudGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cblxuICAuYWxpZ25jZW50ZXIgaW1nIHtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIH1cbn1cbiIsIi8vIExpc3QgYmxvY2tcbi53cC1ibG9jay1jYXRlZ29yaWVzLWxpc3QsXG5vbDpub3QoW2NsYXNzXSksXG51bDpub3QoW2NsYXNzXSkge1xuICBwYWRkaW5nLWxlZnQ6IGNhbGMoMnJlbSArIHZhcigtLW1hcmdpbi1iZXR3ZWVuLXBhcmFncmFwaHMpKTtcbn1cbiIsIi8vIENvcmUvcGFyYWdyYXBoIGJsb2NrXG4uaGFzLWxhcmdlci1mb250LXNpemUsXG4uaGFzLWxhcmdlLWZvbnQtc2l6ZSB7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1oZWFkaW5ncyk7XG59XG5cbi5oYXMtbGFyZ2UtZm9udC1zaXplIHtcbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRjb250YWluZXItbW9iaWxlKSB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtMTgpO1xuICB9XG59XG5cbi5oYXMtbGFyZ2VyLWZvbnQtc2l6ZSB7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkY29udGFpbmVyLW1vYmlsZSkge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTIyKTtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogJHdpZHRoLWdyaWQtYmFzZSArIDQwcHgpIHtcbiAgLmhhcy1iYWNrZ3JvdW5kIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gY2FsYygyLjM3NWVtICogMikpO1xuICB9XG59XG4iLCIvLyBQcmVmb3JtYXR0ZWQgdGV4dFxuLndwLWJsb2NrLXByZWZvcm1hdHRlZCB7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkd2lkdGgtZ3JpZC1iYXNlICsgNDBweCkge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSBjYWxjKHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpICogNCkpO1xuICB9XG59XG4iLCIvLyBDb3JlL3B1bGxxdW90ZSBibG9ja1xuLndwLWJsb2NrLXB1bGxxdW90ZS5hbGlnbndpZGUsXG4ud3AtYmxvY2stcHVsbHF1b3RlLmFsaWduZnVsbCB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgcGFkZGluZy1yaWdodDogMDtcblxuICBAbWVkaWEgKG1heC13aWR0aDogJHdpZHRoLWdyaWQtYmFzZSArIDQwcHgpIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gY2FsYyh2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKSAqIDIpKTtcbiAgfVxufVxuXG4ud3AtYmxvY2stcHVsbHF1b3RlLmFsaWduZnVsbCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIGNhbGModmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCkgKiAyKSk7XG59XG4iLCIvLyBDb3JlL3RleHQtY29sdW1ucyBibG9ja1xuLndwLWJsb2NrLXRleHQtY29sdW1ucy5hbGlnbmZ1bGwge1xuICBwYWRkaW5nLWxlZnQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbn1cblxuLy8gTG9vcHMgdG8gZW51bWVyYXRlIHRoZSBjbGFzc2VzIGZvciBjb2x1bW5zLlxuQGZvciAkaSBmcm9tIDEgdGhyb3VnaCA5IHtcbiAgLndwLWJsb2NrLXRleHQtY29sdW1ucy5jb2x1bW5zLSN7JGl9LmFsaWduZnVsbCB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKTtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gY2FsYyh2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKSAqIDIpKTtcbiAgfVxuXG4gIC53cC1ibG9jay10ZXh0LWNvbHVtbnMuY29sdW1ucy0jeyRpfSB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDkwMHB4KSB7XG4gICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgZ3JpZC1nYXA6IDFlbTtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gY2FsYyh2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKSAqIDIpKTtcblxuICAgICAgLndwLWJsb2NrLWNvbHVtbiB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRjb250YWluZXItbW9iaWxlKSB7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgxLCAxZnIpO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gQ29yZS92ZXJzZSBibG9ja1xuLndwLWJsb2NrLXZlcnNlIHtcbiAgQG1lZGlhIChtYXgtd2lkdGg6ICR3aWR0aC1ncmlkLWJhc2UgKyA0MHB4KSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIGNhbGModmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCkgKiA0KSk7XG4gIH1cbn1cbiIsIi8vIENvcmUvdmlkZW8gYmxvY2tcbi53cC1ibG9jay12aWRlbyB2aWRlbyB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAkd2lkdGgtZ3JpZC1iYXNlICsgNDBweCkge1xuICAud3AtYmxvY2stdmlkZW8uYWxpZ253aWRlLFxuICAud3AtYmxvY2stdmlkZW8uYWxpZ25mdWxsIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gY2FsYyh2YXIoLS1wYWRkaW5nLWNvbnRhaW5lci1ob3Jpem9udGFsKSAqIDIpKTtcbiAgfVxufVxuXG4ud3AtYmxvY2stdmlkZW8uYWxpZ25mdWxsIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xufVxuIiwiLy8gQm94ZWQgYmxvY2sgc3R5bGVcbi53cC1ibG9jay5pcy1zdHlsZS1ib3hlZCxcbi5pcy1zdHlsZS1ib3hlZCB7XG4gIGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLWNvbG9yLXBhcmFncmFwaCk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1wYXJhZ3JhcGgpO1xuICBmb250LXNpemU6IDE3cHg7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW1lZGl1bSk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1wYXJhZ3JhcGhzLWJsb2cpO1xuICBwYWRkaW5nOiAycmVtO1xuICB3aWR0aDogY2FsYygxMDAlIC0gNHJlbSk7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAkd2lkdGgtbWF4LWFydGljbGUgKyA0MHB4KSB7XG4gIC5pcy1zdHlsZS1ib3hlZCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMnJlbSwgMCk7XG4gIH1cbn1cbiIsIi53cC1ibG9jay1maWxlIC53cC1ibG9jay1maWxlX19idXR0b24ge1xuICBAaW5jbHVkZSBidXR0b24tc2l6ZS1zbWFsbCgpO1xuICBmb250LXNpemU6IC44ZW07XG4gIHBhZGRpbmc6IC4zZW0gLjhlbTtcbn1cbiIsIi5ibG9jay1lcnJvciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWVycm9yLWJsb2NrLWJhY2tncm91bmQpO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1lcnJvci1ibG9jay1ib3JkZXIpO1xuICBib3JkZXItbGVmdDogMTBweCBzb2xpZCB2YXIoLS1jb2xvci1lcnJvcik7XG5cbiAgLmNvbnRhaW5lciB7XG4gICAgcGFkZGluZy1ib3R0b206IDJyZW07XG4gICAgcGFkZGluZy10b3A6IDJyZW07XG4gIH1cblxuICBwIHtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0xNCk7XG4gIH1cblxuICBwLmVycm9yLW1lc3NhZ2Uge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTE2KTtcbiAgfVxuXG4gIGgyIHtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oNCk7XG4gIH1cbn1cbiIsIi8vIEFsaWdubWVudHNcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIsXG4uZ3V0ZW5iZXJnLWNvbnRlbnQge1xuICAuYWxpZ25sZWZ0ID4gKiB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cblxuICAuYWxpZ25yaWdodCA+ICoge1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxuXG4gIC5hbGlnbmxlZnQgPiBpbWcge1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLW1hcmdpbi1iZXR3ZWVuLXBhcmFncmFwaHMpO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKC0tcGFkZGluZy1jb250YWluZXItaG9yaXpvbnRhbCk7XG4gICAgbWFyZ2luLXRvcDogdmFyKC0tbWFyZ2luLWJldHdlZW4tcGFyYWdyYXBocyk7XG5cbiAgICArIGZpZ2NhcHRpb24ge1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG4gIH1cblxuICAuYWxpZ25yaWdodCA+IGltZyB7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tbWFyZ2luLWJldHdlZW4tcGFyYWdyYXBocyk7XG4gICAgbWFyZ2luLWxlZnQ6IHZhcigtLXBhZGRpbmctY29udGFpbmVyLWhvcml6b250YWwpO1xuICAgIG1hcmdpbi10b3A6IHZhcigtLW1hcmdpbi1iZXR3ZWVuLXBhcmFncmFwaHMpO1xuXG4gICAgKyBmaWdjYXB0aW9uIHtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgfVxuICB9XG5cbiAgLmFsaWdud2lkZSB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICR3aWR0aC1ncmlkLWJhc2UgKyA0MHB4KSB7XG4gICAgICBtYXgtd2lkdGg6ICR3aWR0aC13aWRlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgLmFsaWduZnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICR3aWR0aC1ncmlkLWJhc2UgKyA0MHB4KSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1wYWRkaW5nLWJsb2NrKTtcbiAgICAgIG1hcmdpbi10b3A6IHZhcigtLXBhZGRpbmctYmxvY2spO1xuICAgICAgbWF4LXdpZHRoOiAkd2lkdGgtZnVsbDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgICYud3AtYmxvY2staW1hZ2UgaW1nIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgfVxuICB9XG59XG4iLCIvLyBDYXB0aW9uc1xuLyogc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3ItbWF4LWNvbWJpbmF0b3JzLCBzZWxlY3Rvci1tYXgtY29tcG91bmQtc2VsZWN0b3JzICovXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyLFxuLmd1dGVuYmVyZy1jb250ZW50IHtcbiAgZmlnY2FwdGlvbixcbiAgY2l0ZSxcbiAgc21hbGwge1xuICAgIGJvcmRlcjogMDtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItY2FwdGlvbik7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtY2FwdGlvbnMpO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBtYXJnaW4tYm90dG9tOiA2cmVtO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tdG9wOiAzcmVtO1xuICAgIG1heC13aWR0aDogJHdpZHRoLW1heC1hcnRpY2xlO1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkY29udGFpbmVyLW1vYmlsZSkge1xuICAgICAgbWFyZ2luLXRvcDogMnJlbTtcbiAgICB9XG4gIH1cblxuICAud3AtYmxvY2staW1hZ2UgZmlnY2FwdGlvbixcbiAgLndwLWJsb2NrLWltYWdlIC5hbGlnbnJpZ2h0ID4gZmlnY2FwdGlvbixcbiAgLndwLWJsb2NrLWltYWdlIC5hbGlnbmNlbnRlciA+IGZpZ2NhcHRpb24sXG4gIC53cC1ibG9jay1pbWFnZS5pcy1yZXNpemVkID4gZmlnY2FwdGlvbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICBjaXRlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG4iLCIvLyBJbWFnZSBmb3JtYXR0aW5nIG9wdGlvbnNcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIsXG4uZ3V0ZW5iZXJnLWNvbnRlbnQge1xuICBpbWcge1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgfVxufVxuIiwia2JkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Ita2JkLWJhY2tncm91bmQpO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1rYmQtYm9yZGVyKTtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBib3gtc2hhZG93OiAwIDFweCAwIHJnYmEoMjIsIDIyLCAyMiwgLjIpLCAwIDAgMCAycHggdmFyKC0tY29sb3Itd2hpdGUpIGluc2V0O1xuICBjb2xvcjogdmFyKC0tY29sb3ItcGFyYWdyYXBoKTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBwYWRkaW5nOiAwIC41cmVtO1xuICB0ZXh0LXNoYWRvdzogMCAxcHggMCB2YXIoLS1jb2xvci13aGl0ZSk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4iLCIvKiBzdHlsZWxpbnQtZGlzYWJsZSBhMTF5L25vLWRpc3BsYXktbm9uZSwgbm8tZGVzY2VuZGluZy1zcGVjaWZpY2l0eSwgc2VsZWN0b3ItbWF4LXBzZXVkby1jbGFzcyAqL1xuLy8gRGVmYXVsdCBsaW5rcyBldmVyeXdoZXJlXG5hIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWxpbmstdGV4dCk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItbGluay10ZXh0KTtcbiAgICAvLyB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgfVxufVxuXG4vLyBMaW5rcyB3aXRoaW4gY29udGVudFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlcixcbi5ndXRlbmJlcmctY29udGVudCB7XG4gIC8vIFN0eWxlIGNob2ljZSBub3QgdG8gaGF2ZSBleHRlcm5hbCBsaW5rIGluZGljYXRvcnMgaW4gYSBsaXN0XG4gIGxpID4gYTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICBbZGF0YS10eXBlPVwiY29yZS9wYXJhZ3JhcGhcIl0gPiBhLFxuICBsaSA+IGEsXG4gIHAgPiBzdHJvbmcgPiBhLFxuICBwID4gZW0gPiBhLFxuICBwOm5vdChbY2xhc3NdKSA+IGE6bm90KFtjbGFzc10pLFxuICBwLmhhcy10ZXh0LWFsaWduLWxlZnQgPiBhLFxuICBwLmhhcy10ZXh0LWFsaWduLWNlbnRlciA+IGEsXG4gIHAuaGFzLXRleHQtYWxpZ24tcmlnaHQgPiBhLFxuICBwLmhhcy1zbWFsbC1mb250LXNpemUgPiBhLFxuICBmaWdjYXB0aW9uID4gYSxcbiAgcDpub3QoW2NsYXNzXSkgPiBhLmlzLWV4dGVybmFsLWxpbmsge1xuICAgIEBpbmNsdWRlIGxpbmsoKTtcbiAgfVxufVxuIiwiLy8gTGlua3Mgd2l0aGluIGNvbnRlbnQgbXVzdCBiZSB2aXN1YWxseSB1bmRlcmxpbmVkXG4vLyBAbGluayBodHRwczovL21ha2Uud29yZHByZXNzLm9yZy90aGVtZXMvaGFuZGJvb2svcmV2aWV3L2FjY2Vzc2liaWxpdHkvcmVxdWlyZWQvI2NvbnRlbnQtbGlua3NcbkBtaXhpbiBsaW5rKCkge1xuICAvLyBDcmVhdGUgeW91ciBvd24gZGVmYXVsdCBjb250ZW50IGxpbmsgc3R5bGVzIGhlcmVcbiAgLy8gZm9yIHBhZ2VzIGFuZCBHdXRlbmJlcmdcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWxpbmstYm9yZGVyLWJvdHRvbSk7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIHZhcigtLWNvbG9yLWxpbmstYmFja2dyb3VuZC1ob3Zlcik7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1saW5rLXRleHQpO1xuICBkaXNwbGF5OiBpbmxpbmU7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAuMXMgY3ViaWMtYmV6aWVyKC4xOSwgMSwgLjIyLCAxKSwgY29sb3IgLjFzIGN1YmljLWJlemllciguMTksIDEsIC4yMiwgMSk7XG5cbiAgJjo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vLi4vc3ZnL2V4dGVybmFsLWxpbmstc3R5bGVkLWxpbmtzLnN2ZycpO1xuICB9XG5cbiAgJjpob3ZlciB7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIC0zLjNyZW0gMCB2YXIoLS1jb2xvci1saW5rLWJhY2tncm91bmQtaG92ZXIpO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1saW5rLXRleHQtaG92ZXIpO1xuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi8uLi9zdmcvZXh0ZXJuYWwtbGluay13aGl0ZS5zdmcnKTtcbiAgICB9XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWxpbmstYm9yZGVyLWZvY3VzKTtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1saW5rLXRleHQtZm9jdXMpO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgIC8vIE1ha2UgZm9jdXMgYSBsaXR0bGUgbW9yZSBlbmdhZ2luZ1xuICAgIC8vIEBzb3VyY2UgaHR0cHM6Ly90d2l0dGVyLmNvbS9hcmd5bGVpbmsvc3RhdHVzLzEzODcwNzIwOTUxNTk0MDY1OTZcbiAgICAvLyBAbGluayBodHRwczovL2NvZGVwZW4uaW8vYXJneWxlaW5rL3Blbi9KakV6ZUxwXG4gICAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiBuby1wcmVmZXJlbmNlKSB7XG4gICAgICBvdXRsaW5lLW9mZnNldDogNXB4O1xuICAgICAgdHJhbnNpdGlvbjogb3V0bGluZS1vZmZzZXQgLjI1cyBlYXNlO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vLi4vc3ZnL2V4dGVybmFsLWxpbmstYmxhY2suc3ZnJyk7XG4gICAgfVxuICB9XG59XG4iLCIvLyBHZW5lcmFsIHBhcmFncmFwaHNcbnAge1xuICBjb2xvcjogdmFyKC0tY29sb3ItcGFyYWdyYXBoKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXBhcmFncmFwaHMtYmxvZyk7XG59XG4iXX0= */