﻿@import"https://fonts.googleapis.com/css2?family=Hanken+Grotesk:ital,wght@0,100..900;1,100..900&family=Libre+Baskerville:ital,wght@0,400;0,600;1,400&display=swap";.acf-block-preview,#tinymce,:root{--header-font: "Libre Baskerville", serif;--body-font: "Hanken Grotesk", Helvetica, Roboto, Arial, sans-serif;--body-line-height: 1.4;--header-line-height: 1.125;--weight-normal: 400;--weight-bold: 600;--header-height: 76.5px;--line: 1px solid var(--black);--easing: cubic-bezier(0.23, 1, 0.32, 1);--size-minus2: 0.707rem;--size-minus1: 0.875rem;--size: 16px;--size-plus1: 1.25rem;--size-plus2: 1.5625rem;--size-plus3: 1.953125rem;--size-plus4: 2.44140625rem;--size-plus5: 3.0517578125rem;--size-plus6: 3.8146972656rem;--size-plus7: 4.768371582rem;--size-plus8: 5.9604644775rem;--size-plus9: 7.4505805969rem;--size-plus10: 9.3132257462rem;--brand: #001328;--bg: #faf5e8;--white: hsl(0, 0%, 97%);--black: #0f0f0f;--purewhite: hsl(0, 0%, 100%);--pureblack: hsl(0, 0%, 0%);--lightgrey: hsl(60, 5%, 91%);--mediumgrey: hsl(0, 0%, 68%);--grey: hsl(0, 0%, 33%);--darkgrey: hsl(0, 0%, 22%);--red: #ed1c24;--blue: #00aeef;--darkblue: #003d7f;--yellow: #f89821;--green: #009444}@media print,screen and (min-width: 800px){.acf-block-preview,#tinymce,:root{--header-height: 78.0156px;--size-plus0: 1vw;--size-plus1: 1.25vw;--size-plus2: 1.5625vw;--size-plus3: 1.953125vw;--size-plus4: 2.44140625vw;--size-plus5: 3.0517578125vw;--size-plus6: 3.8146972656vw;--size-plus7: 4.768371582vw;--size-plus8: 5.9604644775vw;--size-plus9: 7.4505805969vw;--size-plus10: 9.3132257462vw}}.has-dark-background-color{--bg: var(--pureblack);--black: hsl(0, 0%, 97%);--white: #0f0f0f}.has-red-background-color{--bg: var(--red);--black: hsl(0, 0%, 97%);--white: #0f0f0f}.has-blue-background-color{--bg: var(--blue);--black: hsl(0, 0%, 97%);--white: #0f0f0f}.has-yellow-background-color{--bg: var(--yellow);--black: hsl(0, 0%, 97%);--white: #0f0f0f}.has-green-background-color{--bg: var(--green);--black: hsl(0, 0%, 97%);--white: #0f0f0f}[data-theme=dark]{--brand: #faf5e8}[data-theme=red]{--brand: var(--red)}[data-theme=blue]{--brand: var(--blue)}[data-theme=yellow]{--brand: var(--yellow)}[data-theme=green]{--brand: var(--green)}/*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:rgba(0,0,0,0)}abbr[title]{border-bottom:0;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}[data-whatintent=mouse] *,[data-whatintent=mouse] *:focus,[data-whatintent=touch] *,[data-whatintent=touch] *:focus,[data-whatinput=mouse] *,[data-whatinput=mouse] *:focus,[data-whatinput=touch] *,[data-whatinput=touch] *:focus{outline:none}[draggable=false]{-webkit-touch-callout:none;-webkit-user-select:none}.foundation-mq{font-family:"small=0em&medium=40em&large=64em&xlarge=75em&xxlarge=90em"}html{box-sizing:border-box;font-size:100%}*,*::before,*::after{box-sizing:inherit}body{margin:0;padding:0;background:#fefefe;font-family:"Helvetica Neue",Helvetica,Roboto,Arial,sans-serif;font-weight:normal;line-height:1.5;color:#0a0a0a;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}img{display:inline-block;vertical-align:middle;max-width:100%;height:auto;-ms-interpolation-mode:bicubic}textarea{height:auto;min-height:50px;border-radius:0}select{box-sizing:border-box;width:100%;border-radius:0}.map_canvas img,.map_canvas embed,.map_canvas object,.mqa-display img,.mqa-display embed,.mqa-display object{max-width:none !important}button{padding:0;appearance:none;border:0;border-radius:0;background:rgba(0,0,0,0);line-height:1;cursor:auto}[data-whatinput=mouse] button{outline:0}pre{overflow:auto;-webkit-overflow-scrolling:touch}button,input,optgroup,select,textarea{font-family:inherit}.is-visible{display:block !important}.is-hidden{display:none !important}.grid-container{padding-right:0.9rem;padding-left:0.9rem;max-width:75rem;margin-left:auto;margin-right:auto}.grid-container.fluid{padding-right:0.9rem;padding-left:0.9rem;max-width:100%;margin-left:auto;margin-right:auto}.grid-container.full{padding-right:0;padding-left:0;max-width:100%;margin-left:auto;margin-right:auto}.grid-x{display:flex;flex-flow:row wrap}.cell{flex:0 0 auto;min-height:0;min-width:0;width:100%}.cell.auto{flex:1 1 0}.cell.shrink{flex:0 0 auto}.grid-x>.auto{width:auto}.grid-x>.shrink{width:auto}.grid-x>.small-shrink,.grid-x>.small-full,.grid-x>.small-1,.grid-x>.small-2,.grid-x>.small-3,.grid-x>.small-4,.grid-x>.small-5,.grid-x>.small-6,.grid-x>.small-7,.grid-x>.small-8,.grid-x>.small-9,.grid-x>.small-10,.grid-x>.small-11,.grid-x>.small-12{flex-basis:auto}@media print,screen and (min-width: 40em){.grid-x>.medium-shrink,.grid-x>.medium-full,.grid-x>.medium-1,.grid-x>.medium-2,.grid-x>.medium-3,.grid-x>.medium-4,.grid-x>.medium-5,.grid-x>.medium-6,.grid-x>.medium-7,.grid-x>.medium-8,.grid-x>.medium-9,.grid-x>.medium-10,.grid-x>.medium-11,.grid-x>.medium-12{flex-basis:auto}}@media print,screen and (min-width: 64em){.grid-x>.large-shrink,.grid-x>.large-full,.grid-x>.large-1,.grid-x>.large-2,.grid-x>.large-3,.grid-x>.large-4,.grid-x>.large-5,.grid-x>.large-6,.grid-x>.large-7,.grid-x>.large-8,.grid-x>.large-9,.grid-x>.large-10,.grid-x>.large-11,.grid-x>.large-12{flex-basis:auto}}.grid-x>.small-12,.grid-x>.small-11,.grid-x>.small-10,.grid-x>.small-9,.grid-x>.small-8,.grid-x>.small-7,.grid-x>.small-6,.grid-x>.small-5,.grid-x>.small-4,.grid-x>.small-3,.grid-x>.small-2,.grid-x>.small-1{flex:0 0 auto}.grid-x>.small-1{width:8.3333333333%}.grid-x>.small-2{width:16.6666666667%}.grid-x>.small-3{width:25%}.grid-x>.small-4{width:33.3333333333%}.grid-x>.small-5{width:41.6666666667%}.grid-x>.small-6{width:50%}.grid-x>.small-7{width:58.3333333333%}.grid-x>.small-8{width:66.6666666667%}.grid-x>.small-9{width:75%}.grid-x>.small-10{width:83.3333333333%}.grid-x>.small-11{width:91.6666666667%}.grid-x>.small-12{width:100%}@media print,screen and (min-width: 40em){.grid-x>.medium-auto{flex:1 1 0;width:auto}.grid-x>.medium-12,.grid-x>.medium-11,.grid-x>.medium-10,.grid-x>.medium-9,.grid-x>.medium-8,.grid-x>.medium-7,.grid-x>.medium-6,.grid-x>.medium-5,.grid-x>.medium-4,.grid-x>.medium-3,.grid-x>.medium-2,.grid-x>.medium-1,.grid-x>.medium-shrink{flex:0 0 auto}.grid-x>.medium-shrink{width:auto}.grid-x>.medium-1{width:8.3333333333%}.grid-x>.medium-2{width:16.6666666667%}.grid-x>.medium-3{width:25%}.grid-x>.medium-4{width:33.3333333333%}.grid-x>.medium-5{width:41.6666666667%}.grid-x>.medium-6{width:50%}.grid-x>.medium-7{width:58.3333333333%}.grid-x>.medium-8{width:66.6666666667%}.grid-x>.medium-9{width:75%}.grid-x>.medium-10{width:83.3333333333%}.grid-x>.medium-11{width:91.6666666667%}.grid-x>.medium-12{width:100%}}@media print,screen and (min-width: 64em){.grid-x>.large-auto{flex:1 1 0;width:auto}.grid-x>.large-12,.grid-x>.large-11,.grid-x>.large-10,.grid-x>.large-9,.grid-x>.large-8,.grid-x>.large-7,.grid-x>.large-6,.grid-x>.large-5,.grid-x>.large-4,.grid-x>.large-3,.grid-x>.large-2,.grid-x>.large-1,.grid-x>.large-shrink{flex:0 0 auto}.grid-x>.large-shrink{width:auto}.grid-x>.large-1{width:8.3333333333%}.grid-x>.large-2{width:16.6666666667%}.grid-x>.large-3{width:25%}.grid-x>.large-4{width:33.3333333333%}.grid-x>.large-5{width:41.6666666667%}.grid-x>.large-6{width:50%}.grid-x>.large-7{width:58.3333333333%}.grid-x>.large-8{width:66.6666666667%}.grid-x>.large-9{width:75%}.grid-x>.large-10{width:83.3333333333%}.grid-x>.large-11{width:91.6666666667%}.grid-x>.large-12{width:100%}}.grid-margin-x:not(.grid-x)>.cell{width:auto}.grid-margin-y:not(.grid-y)>.cell{height:auto}.grid-margin-x{margin-left:-0.9rem;margin-right:-0.9rem}.grid-margin-x>.cell{width:calc(100% - 1.8rem);margin-left:0.9rem;margin-right:0.9rem}.grid-margin-x>.auto{width:auto}.grid-margin-x>.shrink{width:auto}.grid-margin-x>.small-1{width:calc(8.3333333333% - 1.8rem)}.grid-margin-x>.small-2{width:calc(16.6666666667% - 1.8rem)}.grid-margin-x>.small-3{width:calc(25% - 1.8rem)}.grid-margin-x>.small-4{width:calc(33.3333333333% - 1.8rem)}.grid-margin-x>.small-5{width:calc(41.6666666667% - 1.8rem)}.grid-margin-x>.small-6{width:calc(50% - 1.8rem)}.grid-margin-x>.small-7{width:calc(58.3333333333% - 1.8rem)}.grid-margin-x>.small-8{width:calc(66.6666666667% - 1.8rem)}.grid-margin-x>.small-9{width:calc(75% - 1.8rem)}.grid-margin-x>.small-10{width:calc(83.3333333333% - 1.8rem)}.grid-margin-x>.small-11{width:calc(91.6666666667% - 1.8rem)}.grid-margin-x>.small-12{width:calc(100% - 1.8rem)}@media print,screen and (min-width: 40em){.grid-margin-x>.medium-auto{width:auto}.grid-margin-x>.medium-shrink{width:auto}.grid-margin-x>.medium-1{width:calc(8.3333333333% - 1.8rem)}.grid-margin-x>.medium-2{width:calc(16.6666666667% - 1.8rem)}.grid-margin-x>.medium-3{width:calc(25% - 1.8rem)}.grid-margin-x>.medium-4{width:calc(33.3333333333% - 1.8rem)}.grid-margin-x>.medium-5{width:calc(41.6666666667% - 1.8rem)}.grid-margin-x>.medium-6{width:calc(50% - 1.8rem)}.grid-margin-x>.medium-7{width:calc(58.3333333333% - 1.8rem)}.grid-margin-x>.medium-8{width:calc(66.6666666667% - 1.8rem)}.grid-margin-x>.medium-9{width:calc(75% - 1.8rem)}.grid-margin-x>.medium-10{width:calc(83.3333333333% - 1.8rem)}.grid-margin-x>.medium-11{width:calc(91.6666666667% - 1.8rem)}.grid-margin-x>.medium-12{width:calc(100% - 1.8rem)}}@media print,screen and (min-width: 64em){.grid-margin-x>.large-auto{width:auto}.grid-margin-x>.large-shrink{width:auto}.grid-margin-x>.large-1{width:calc(8.3333333333% - 1.8rem)}.grid-margin-x>.large-2{width:calc(16.6666666667% - 1.8rem)}.grid-margin-x>.large-3{width:calc(25% - 1.8rem)}.grid-margin-x>.large-4{width:calc(33.3333333333% - 1.8rem)}.grid-margin-x>.large-5{width:calc(41.6666666667% - 1.8rem)}.grid-margin-x>.large-6{width:calc(50% - 1.8rem)}.grid-margin-x>.large-7{width:calc(58.3333333333% - 1.8rem)}.grid-margin-x>.large-8{width:calc(66.6666666667% - 1.8rem)}.grid-margin-x>.large-9{width:calc(75% - 1.8rem)}.grid-margin-x>.large-10{width:calc(83.3333333333% - 1.8rem)}.grid-margin-x>.large-11{width:calc(91.6666666667% - 1.8rem)}.grid-margin-x>.large-12{width:calc(100% - 1.8rem)}}.grid-padding-x .grid-padding-x{margin-right:-0.9rem;margin-left:-0.9rem}.grid-container:not(.full)>.grid-padding-x{margin-right:-0.9rem;margin-left:-0.9rem}.grid-padding-x>.cell{padding-right:0.9rem;padding-left:0.9rem}.small-up-1>.cell{width:100%}.small-up-2>.cell{width:50%}.small-up-3>.cell{width:33.3333333333%}.small-up-4>.cell{width:25%}.small-up-5>.cell{width:20%}.small-up-6>.cell{width:16.6666666667%}.small-up-7>.cell{width:14.2857142857%}.small-up-8>.cell{width:12.5%}@media print,screen and (min-width: 40em){.medium-up-1>.cell{width:100%}.medium-up-2>.cell{width:50%}.medium-up-3>.cell{width:33.3333333333%}.medium-up-4>.cell{width:25%}.medium-up-5>.cell{width:20%}.medium-up-6>.cell{width:16.6666666667%}.medium-up-7>.cell{width:14.2857142857%}.medium-up-8>.cell{width:12.5%}}@media print,screen and (min-width: 64em){.large-up-1>.cell{width:100%}.large-up-2>.cell{width:50%}.large-up-3>.cell{width:33.3333333333%}.large-up-4>.cell{width:25%}.large-up-5>.cell{width:20%}.large-up-6>.cell{width:16.6666666667%}.large-up-7>.cell{width:14.2857142857%}.large-up-8>.cell{width:12.5%}}.grid-margin-x.small-up-1>.cell{width:calc(100% - 1.8rem)}.grid-margin-x.small-up-2>.cell{width:calc(50% - 1.8rem)}.grid-margin-x.small-up-3>.cell{width:calc(33.3333333333% - 1.8rem)}.grid-margin-x.small-up-4>.cell{width:calc(25% - 1.8rem)}.grid-margin-x.small-up-5>.cell{width:calc(20% - 1.8rem)}.grid-margin-x.small-up-6>.cell{width:calc(16.6666666667% - 1.8rem)}.grid-margin-x.small-up-7>.cell{width:calc(14.2857142857% - 1.8rem)}.grid-margin-x.small-up-8>.cell{width:calc(12.5% - 1.8rem)}@media print,screen and (min-width: 40em){.grid-margin-x.medium-up-1>.cell{width:calc(100% - 1.8rem)}.grid-margin-x.medium-up-2>.cell{width:calc(50% - 1.8rem)}.grid-margin-x.medium-up-3>.cell{width:calc(33.3333333333% - 1.8rem)}.grid-margin-x.medium-up-4>.cell{width:calc(25% - 1.8rem)}.grid-margin-x.medium-up-5>.cell{width:calc(20% - 1.8rem)}.grid-margin-x.medium-up-6>.cell{width:calc(16.6666666667% - 1.8rem)}.grid-margin-x.medium-up-7>.cell{width:calc(14.2857142857% - 1.8rem)}.grid-margin-x.medium-up-8>.cell{width:calc(12.5% - 1.8rem)}}@media print,screen and (min-width: 64em){.grid-margin-x.large-up-1>.cell{width:calc(100% - 1.8rem)}.grid-margin-x.large-up-2>.cell{width:calc(50% - 1.8rem)}.grid-margin-x.large-up-3>.cell{width:calc(33.3333333333% - 1.8rem)}.grid-margin-x.large-up-4>.cell{width:calc(25% - 1.8rem)}.grid-margin-x.large-up-5>.cell{width:calc(20% - 1.8rem)}.grid-margin-x.large-up-6>.cell{width:calc(16.6666666667% - 1.8rem)}.grid-margin-x.large-up-7>.cell{width:calc(14.2857142857% - 1.8rem)}.grid-margin-x.large-up-8>.cell{width:calc(12.5% - 1.8rem)}}.small-margin-collapse{margin-right:0;margin-left:0}.small-margin-collapse>.cell{margin-right:0;margin-left:0}.small-margin-collapse>.small-1{width:8.3333333333%}.small-margin-collapse>.small-2{width:16.6666666667%}.small-margin-collapse>.small-3{width:25%}.small-margin-collapse>.small-4{width:33.3333333333%}.small-margin-collapse>.small-5{width:41.6666666667%}.small-margin-collapse>.small-6{width:50%}.small-margin-collapse>.small-7{width:58.3333333333%}.small-margin-collapse>.small-8{width:66.6666666667%}.small-margin-collapse>.small-9{width:75%}.small-margin-collapse>.small-10{width:83.3333333333%}.small-margin-collapse>.small-11{width:91.6666666667%}.small-margin-collapse>.small-12{width:100%}@media print,screen and (min-width: 40em){.small-margin-collapse>.medium-1{width:8.3333333333%}.small-margin-collapse>.medium-2{width:16.6666666667%}.small-margin-collapse>.medium-3{width:25%}.small-margin-collapse>.medium-4{width:33.3333333333%}.small-margin-collapse>.medium-5{width:41.6666666667%}.small-margin-collapse>.medium-6{width:50%}.small-margin-collapse>.medium-7{width:58.3333333333%}.small-margin-collapse>.medium-8{width:66.6666666667%}.small-margin-collapse>.medium-9{width:75%}.small-margin-collapse>.medium-10{width:83.3333333333%}.small-margin-collapse>.medium-11{width:91.6666666667%}.small-margin-collapse>.medium-12{width:100%}}@media print,screen and (min-width: 64em){.small-margin-collapse>.large-1{width:8.3333333333%}.small-margin-collapse>.large-2{width:16.6666666667%}.small-margin-collapse>.large-3{width:25%}.small-margin-collapse>.large-4{width:33.3333333333%}.small-margin-collapse>.large-5{width:41.6666666667%}.small-margin-collapse>.large-6{width:50%}.small-margin-collapse>.large-7{width:58.3333333333%}.small-margin-collapse>.large-8{width:66.6666666667%}.small-margin-collapse>.large-9{width:75%}.small-margin-collapse>.large-10{width:83.3333333333%}.small-margin-collapse>.large-11{width:91.6666666667%}.small-margin-collapse>.large-12{width:100%}}.small-padding-collapse{margin-right:0;margin-left:0}.small-padding-collapse>.cell{padding-right:0;padding-left:0}@media print,screen and (min-width: 40em){.medium-margin-collapse{margin-right:0;margin-left:0}.medium-margin-collapse>.cell{margin-right:0;margin-left:0}}@media print,screen and (min-width: 40em){.medium-margin-collapse>.small-1{width:8.3333333333%}.medium-margin-collapse>.small-2{width:16.6666666667%}.medium-margin-collapse>.small-3{width:25%}.medium-margin-collapse>.small-4{width:33.3333333333%}.medium-margin-collapse>.small-5{width:41.6666666667%}.medium-margin-collapse>.small-6{width:50%}.medium-margin-collapse>.small-7{width:58.3333333333%}.medium-margin-collapse>.small-8{width:66.6666666667%}.medium-margin-collapse>.small-9{width:75%}.medium-margin-collapse>.small-10{width:83.3333333333%}.medium-margin-collapse>.small-11{width:91.6666666667%}.medium-margin-collapse>.small-12{width:100%}}@media print,screen and (min-width: 40em){.medium-margin-collapse>.medium-1{width:8.3333333333%}.medium-margin-collapse>.medium-2{width:16.6666666667%}.medium-margin-collapse>.medium-3{width:25%}.medium-margin-collapse>.medium-4{width:33.3333333333%}.medium-margin-collapse>.medium-5{width:41.6666666667%}.medium-margin-collapse>.medium-6{width:50%}.medium-margin-collapse>.medium-7{width:58.3333333333%}.medium-margin-collapse>.medium-8{width:66.6666666667%}.medium-margin-collapse>.medium-9{width:75%}.medium-margin-collapse>.medium-10{width:83.3333333333%}.medium-margin-collapse>.medium-11{width:91.6666666667%}.medium-margin-collapse>.medium-12{width:100%}}@media print,screen and (min-width: 64em){.medium-margin-collapse>.large-1{width:8.3333333333%}.medium-margin-collapse>.large-2{width:16.6666666667%}.medium-margin-collapse>.large-3{width:25%}.medium-margin-collapse>.large-4{width:33.3333333333%}.medium-margin-collapse>.large-5{width:41.6666666667%}.medium-margin-collapse>.large-6{width:50%}.medium-margin-collapse>.large-7{width:58.3333333333%}.medium-margin-collapse>.large-8{width:66.6666666667%}.medium-margin-collapse>.large-9{width:75%}.medium-margin-collapse>.large-10{width:83.3333333333%}.medium-margin-collapse>.large-11{width:91.6666666667%}.medium-margin-collapse>.large-12{width:100%}}@media print,screen and (min-width: 40em){.medium-padding-collapse{margin-right:0;margin-left:0}.medium-padding-collapse>.cell{padding-right:0;padding-left:0}}@media print,screen and (min-width: 64em){.large-margin-collapse{margin-right:0;margin-left:0}.large-margin-collapse>.cell{margin-right:0;margin-left:0}}@media print,screen and (min-width: 64em){.large-margin-collapse>.small-1{width:8.3333333333%}.large-margin-collapse>.small-2{width:16.6666666667%}.large-margin-collapse>.small-3{width:25%}.large-margin-collapse>.small-4{width:33.3333333333%}.large-margin-collapse>.small-5{width:41.6666666667%}.large-margin-collapse>.small-6{width:50%}.large-margin-collapse>.small-7{width:58.3333333333%}.large-margin-collapse>.small-8{width:66.6666666667%}.large-margin-collapse>.small-9{width:75%}.large-margin-collapse>.small-10{width:83.3333333333%}.large-margin-collapse>.small-11{width:91.6666666667%}.large-margin-collapse>.small-12{width:100%}}@media print,screen and (min-width: 64em){.large-margin-collapse>.medium-1{width:8.3333333333%}.large-margin-collapse>.medium-2{width:16.6666666667%}.large-margin-collapse>.medium-3{width:25%}.large-margin-collapse>.medium-4{width:33.3333333333%}.large-margin-collapse>.medium-5{width:41.6666666667%}.large-margin-collapse>.medium-6{width:50%}.large-margin-collapse>.medium-7{width:58.3333333333%}.large-margin-collapse>.medium-8{width:66.6666666667%}.large-margin-collapse>.medium-9{width:75%}.large-margin-collapse>.medium-10{width:83.3333333333%}.large-margin-collapse>.medium-11{width:91.6666666667%}.large-margin-collapse>.medium-12{width:100%}}@media print,screen and (min-width: 64em){.large-margin-collapse>.large-1{width:8.3333333333%}.large-margin-collapse>.large-2{width:16.6666666667%}.large-margin-collapse>.large-3{width:25%}.large-margin-collapse>.large-4{width:33.3333333333%}.large-margin-collapse>.large-5{width:41.6666666667%}.large-margin-collapse>.large-6{width:50%}.large-margin-collapse>.large-7{width:58.3333333333%}.large-margin-collapse>.large-8{width:66.6666666667%}.large-margin-collapse>.large-9{width:75%}.large-margin-collapse>.large-10{width:83.3333333333%}.large-margin-collapse>.large-11{width:91.6666666667%}.large-margin-collapse>.large-12{width:100%}}@media print,screen and (min-width: 64em){.large-padding-collapse{margin-right:0;margin-left:0}.large-padding-collapse>.cell{padding-right:0;padding-left:0}}.small-offset-0{margin-left:0%}.grid-margin-x>.small-offset-0{margin-left:calc(0% + 1.8rem / 2)}.small-offset-1{margin-left:8.3333333333%}.grid-margin-x>.small-offset-1{margin-left:calc(8.3333333333% + 1.8rem / 2)}.small-offset-2{margin-left:16.6666666667%}.grid-margin-x>.small-offset-2{margin-left:calc(16.6666666667% + 1.8rem / 2)}.small-offset-3{margin-left:25%}.grid-margin-x>.small-offset-3{margin-left:calc(25% + 1.8rem / 2)}.small-offset-4{margin-left:33.3333333333%}.grid-margin-x>.small-offset-4{margin-left:calc(33.3333333333% + 1.8rem / 2)}.small-offset-5{margin-left:41.6666666667%}.grid-margin-x>.small-offset-5{margin-left:calc(41.6666666667% + 1.8rem / 2)}.small-offset-6{margin-left:50%}.grid-margin-x>.small-offset-6{margin-left:calc(50% + 1.8rem / 2)}.small-offset-7{margin-left:58.3333333333%}.grid-margin-x>.small-offset-7{margin-left:calc(58.3333333333% + 1.8rem / 2)}.small-offset-8{margin-left:66.6666666667%}.grid-margin-x>.small-offset-8{margin-left:calc(66.6666666667% + 1.8rem / 2)}.small-offset-9{margin-left:75%}.grid-margin-x>.small-offset-9{margin-left:calc(75% + 1.8rem / 2)}.small-offset-10{margin-left:83.3333333333%}.grid-margin-x>.small-offset-10{margin-left:calc(83.3333333333% + 1.8rem / 2)}.small-offset-11{margin-left:91.6666666667%}.grid-margin-x>.small-offset-11{margin-left:calc(91.6666666667% + 1.8rem / 2)}@media print,screen and (min-width: 40em){.medium-offset-0{margin-left:0%}.grid-margin-x>.medium-offset-0{margin-left:calc(0% + 1.8rem / 2)}.medium-offset-1{margin-left:8.3333333333%}.grid-margin-x>.medium-offset-1{margin-left:calc(8.3333333333% + 1.8rem / 2)}.medium-offset-2{margin-left:16.6666666667%}.grid-margin-x>.medium-offset-2{margin-left:calc(16.6666666667% + 1.8rem / 2)}.medium-offset-3{margin-left:25%}.grid-margin-x>.medium-offset-3{margin-left:calc(25% + 1.8rem / 2)}.medium-offset-4{margin-left:33.3333333333%}.grid-margin-x>.medium-offset-4{margin-left:calc(33.3333333333% + 1.8rem / 2)}.medium-offset-5{margin-left:41.6666666667%}.grid-margin-x>.medium-offset-5{margin-left:calc(41.6666666667% + 1.8rem / 2)}.medium-offset-6{margin-left:50%}.grid-margin-x>.medium-offset-6{margin-left:calc(50% + 1.8rem / 2)}.medium-offset-7{margin-left:58.3333333333%}.grid-margin-x>.medium-offset-7{margin-left:calc(58.3333333333% + 1.8rem / 2)}.medium-offset-8{margin-left:66.6666666667%}.grid-margin-x>.medium-offset-8{margin-left:calc(66.6666666667% + 1.8rem / 2)}.medium-offset-9{margin-left:75%}.grid-margin-x>.medium-offset-9{margin-left:calc(75% + 1.8rem / 2)}.medium-offset-10{margin-left:83.3333333333%}.grid-margin-x>.medium-offset-10{margin-left:calc(83.3333333333% + 1.8rem / 2)}.medium-offset-11{margin-left:91.6666666667%}.grid-margin-x>.medium-offset-11{margin-left:calc(91.6666666667% + 1.8rem / 2)}}@media print,screen and (min-width: 64em){.large-offset-0{margin-left:0%}.grid-margin-x>.large-offset-0{margin-left:calc(0% + 1.8rem / 2)}.large-offset-1{margin-left:8.3333333333%}.grid-margin-x>.large-offset-1{margin-left:calc(8.3333333333% + 1.8rem / 2)}.large-offset-2{margin-left:16.6666666667%}.grid-margin-x>.large-offset-2{margin-left:calc(16.6666666667% + 1.8rem / 2)}.large-offset-3{margin-left:25%}.grid-margin-x>.large-offset-3{margin-left:calc(25% + 1.8rem / 2)}.large-offset-4{margin-left:33.3333333333%}.grid-margin-x>.large-offset-4{margin-left:calc(33.3333333333% + 1.8rem / 2)}.large-offset-5{margin-left:41.6666666667%}.grid-margin-x>.large-offset-5{margin-left:calc(41.6666666667% + 1.8rem / 2)}.large-offset-6{margin-left:50%}.grid-margin-x>.large-offset-6{margin-left:calc(50% + 1.8rem / 2)}.large-offset-7{margin-left:58.3333333333%}.grid-margin-x>.large-offset-7{margin-left:calc(58.3333333333% + 1.8rem / 2)}.large-offset-8{margin-left:66.6666666667%}.grid-margin-x>.large-offset-8{margin-left:calc(66.6666666667% + 1.8rem / 2)}.large-offset-9{margin-left:75%}.grid-margin-x>.large-offset-9{margin-left:calc(75% + 1.8rem / 2)}.large-offset-10{margin-left:83.3333333333%}.grid-margin-x>.large-offset-10{margin-left:calc(83.3333333333% + 1.8rem / 2)}.large-offset-11{margin-left:91.6666666667%}.grid-margin-x>.large-offset-11{margin-left:calc(91.6666666667% + 1.8rem / 2)}}.grid-y{display:flex;flex-flow:column nowrap}.grid-y>.cell{height:auto;max-height:none}.grid-y>.auto{height:auto}.grid-y>.shrink{height:auto}.grid-y>.small-shrink,.grid-y>.small-full,.grid-y>.small-1,.grid-y>.small-2,.grid-y>.small-3,.grid-y>.small-4,.grid-y>.small-5,.grid-y>.small-6,.grid-y>.small-7,.grid-y>.small-8,.grid-y>.small-9,.grid-y>.small-10,.grid-y>.small-11,.grid-y>.small-12{flex-basis:auto}@media print,screen and (min-width: 40em){.grid-y>.medium-shrink,.grid-y>.medium-full,.grid-y>.medium-1,.grid-y>.medium-2,.grid-y>.medium-3,.grid-y>.medium-4,.grid-y>.medium-5,.grid-y>.medium-6,.grid-y>.medium-7,.grid-y>.medium-8,.grid-y>.medium-9,.grid-y>.medium-10,.grid-y>.medium-11,.grid-y>.medium-12{flex-basis:auto}}@media print,screen and (min-width: 64em){.grid-y>.large-shrink,.grid-y>.large-full,.grid-y>.large-1,.grid-y>.large-2,.grid-y>.large-3,.grid-y>.large-4,.grid-y>.large-5,.grid-y>.large-6,.grid-y>.large-7,.grid-y>.large-8,.grid-y>.large-9,.grid-y>.large-10,.grid-y>.large-11,.grid-y>.large-12{flex-basis:auto}}.grid-y>.small-12,.grid-y>.small-11,.grid-y>.small-10,.grid-y>.small-9,.grid-y>.small-8,.grid-y>.small-7,.grid-y>.small-6,.grid-y>.small-5,.grid-y>.small-4,.grid-y>.small-3,.grid-y>.small-2,.grid-y>.small-1{flex:0 0 auto}.grid-y>.small-1{height:8.3333333333%}.grid-y>.small-2{height:16.6666666667%}.grid-y>.small-3{height:25%}.grid-y>.small-4{height:33.3333333333%}.grid-y>.small-5{height:41.6666666667%}.grid-y>.small-6{height:50%}.grid-y>.small-7{height:58.3333333333%}.grid-y>.small-8{height:66.6666666667%}.grid-y>.small-9{height:75%}.grid-y>.small-10{height:83.3333333333%}.grid-y>.small-11{height:91.6666666667%}.grid-y>.small-12{height:100%}@media print,screen and (min-width: 40em){.grid-y>.medium-auto{flex:1 1 0;height:auto}.grid-y>.medium-12,.grid-y>.medium-11,.grid-y>.medium-10,.grid-y>.medium-9,.grid-y>.medium-8,.grid-y>.medium-7,.grid-y>.medium-6,.grid-y>.medium-5,.grid-y>.medium-4,.grid-y>.medium-3,.grid-y>.medium-2,.grid-y>.medium-1,.grid-y>.medium-shrink{flex:0 0 auto}.grid-y>.medium-shrink{height:auto}.grid-y>.medium-1{height:8.3333333333%}.grid-y>.medium-2{height:16.6666666667%}.grid-y>.medium-3{height:25%}.grid-y>.medium-4{height:33.3333333333%}.grid-y>.medium-5{height:41.6666666667%}.grid-y>.medium-6{height:50%}.grid-y>.medium-7{height:58.3333333333%}.grid-y>.medium-8{height:66.6666666667%}.grid-y>.medium-9{height:75%}.grid-y>.medium-10{height:83.3333333333%}.grid-y>.medium-11{height:91.6666666667%}.grid-y>.medium-12{height:100%}}@media print,screen and (min-width: 64em){.grid-y>.large-auto{flex:1 1 0;height:auto}.grid-y>.large-12,.grid-y>.large-11,.grid-y>.large-10,.grid-y>.large-9,.grid-y>.large-8,.grid-y>.large-7,.grid-y>.large-6,.grid-y>.large-5,.grid-y>.large-4,.grid-y>.large-3,.grid-y>.large-2,.grid-y>.large-1,.grid-y>.large-shrink{flex:0 0 auto}.grid-y>.large-shrink{height:auto}.grid-y>.large-1{height:8.3333333333%}.grid-y>.large-2{height:16.6666666667%}.grid-y>.large-3{height:25%}.grid-y>.large-4{height:33.3333333333%}.grid-y>.large-5{height:41.6666666667%}.grid-y>.large-6{height:50%}.grid-y>.large-7{height:58.3333333333%}.grid-y>.large-8{height:66.6666666667%}.grid-y>.large-9{height:75%}.grid-y>.large-10{height:83.3333333333%}.grid-y>.large-11{height:91.6666666667%}.grid-y>.large-12{height:100%}}.grid-padding-y .grid-padding-y{margin-top:-0.9rem;margin-bottom:-0.9rem}.grid-padding-y>.cell{padding-top:0.9rem;padding-bottom:0.9rem}.grid-margin-y{margin-top:-0.9rem;margin-bottom:-0.9rem}.grid-margin-y>.cell{height:calc(100% - 1.8rem);margin-top:0.9rem;margin-bottom:0.9rem}.grid-margin-y>.auto{height:auto}.grid-margin-y>.shrink{height:auto}.grid-margin-y>.small-1{height:calc(8.3333333333% - 1.8rem)}.grid-margin-y>.small-2{height:calc(16.6666666667% - 1.8rem)}.grid-margin-y>.small-3{height:calc(25% - 1.8rem)}.grid-margin-y>.small-4{height:calc(33.3333333333% - 1.8rem)}.grid-margin-y>.small-5{height:calc(41.6666666667% - 1.8rem)}.grid-margin-y>.small-6{height:calc(50% - 1.8rem)}.grid-margin-y>.small-7{height:calc(58.3333333333% - 1.8rem)}.grid-margin-y>.small-8{height:calc(66.6666666667% - 1.8rem)}.grid-margin-y>.small-9{height:calc(75% - 1.8rem)}.grid-margin-y>.small-10{height:calc(83.3333333333% - 1.8rem)}.grid-margin-y>.small-11{height:calc(91.6666666667% - 1.8rem)}.grid-margin-y>.small-12{height:calc(100% - 1.8rem)}@media print,screen and (min-width: 40em){.grid-margin-y>.medium-auto{height:auto}.grid-margin-y>.medium-shrink{height:auto}.grid-margin-y>.medium-1{height:calc(8.3333333333% - 1.8rem)}.grid-margin-y>.medium-2{height:calc(16.6666666667% - 1.8rem)}.grid-margin-y>.medium-3{height:calc(25% - 1.8rem)}.grid-margin-y>.medium-4{height:calc(33.3333333333% - 1.8rem)}.grid-margin-y>.medium-5{height:calc(41.6666666667% - 1.8rem)}.grid-margin-y>.medium-6{height:calc(50% - 1.8rem)}.grid-margin-y>.medium-7{height:calc(58.3333333333% - 1.8rem)}.grid-margin-y>.medium-8{height:calc(66.6666666667% - 1.8rem)}.grid-margin-y>.medium-9{height:calc(75% - 1.8rem)}.grid-margin-y>.medium-10{height:calc(83.3333333333% - 1.8rem)}.grid-margin-y>.medium-11{height:calc(91.6666666667% - 1.8rem)}.grid-margin-y>.medium-12{height:calc(100% - 1.8rem)}}@media print,screen and (min-width: 64em){.grid-margin-y>.large-auto{height:auto}.grid-margin-y>.large-shrink{height:auto}.grid-margin-y>.large-1{height:calc(8.3333333333% - 1.8rem)}.grid-margin-y>.large-2{height:calc(16.6666666667% - 1.8rem)}.grid-margin-y>.large-3{height:calc(25% - 1.8rem)}.grid-margin-y>.large-4{height:calc(33.3333333333% - 1.8rem)}.grid-margin-y>.large-5{height:calc(41.6666666667% - 1.8rem)}.grid-margin-y>.large-6{height:calc(50% - 1.8rem)}.grid-margin-y>.large-7{height:calc(58.3333333333% - 1.8rem)}.grid-margin-y>.large-8{height:calc(66.6666666667% - 1.8rem)}.grid-margin-y>.large-9{height:calc(75% - 1.8rem)}.grid-margin-y>.large-10{height:calc(83.3333333333% - 1.8rem)}.grid-margin-y>.large-11{height:calc(91.6666666667% - 1.8rem)}.grid-margin-y>.large-12{height:calc(100% - 1.8rem)}}.grid-frame{overflow:hidden;position:relative;flex-wrap:nowrap;align-items:stretch;width:100vw}.cell .grid-frame{width:100%}.cell-block{overflow-x:auto;max-width:100%;-webkit-overflow-scrolling:touch;-ms-overflow-style:-ms-autohiding-scrollbar}.cell-block-y{overflow-y:auto;max-height:100%;min-height:100%;-webkit-overflow-scrolling:touch;-ms-overflow-style:-ms-autohiding-scrollbar}.cell-block-container{display:flex;flex-direction:column;max-height:100%}.cell-block-container>.grid-x{max-height:100%;flex-wrap:nowrap}@media print,screen and (min-width: 40em){.medium-grid-frame{overflow:hidden;position:relative;flex-wrap:nowrap;align-items:stretch;width:100vw}.cell .medium-grid-frame{width:100%}.medium-cell-block{overflow-x:auto;max-width:100%;-webkit-overflow-scrolling:touch;-ms-overflow-style:-ms-autohiding-scrollbar}.medium-cell-block-container{display:flex;flex-direction:column;max-height:100%}.medium-cell-block-container>.grid-x{max-height:100%;flex-wrap:nowrap}.medium-cell-block-y{overflow-y:auto;max-height:100%;min-height:100%;-webkit-overflow-scrolling:touch;-ms-overflow-style:-ms-autohiding-scrollbar}}@media print,screen and (min-width: 64em){.large-grid-frame{overflow:hidden;position:relative;flex-wrap:nowrap;align-items:stretch;width:100vw}.cell .large-grid-frame{width:100%}.large-cell-block{overflow-x:auto;max-width:100%;-webkit-overflow-scrolling:touch;-ms-overflow-style:-ms-autohiding-scrollbar}.large-cell-block-container{display:flex;flex-direction:column;max-height:100%}.large-cell-block-container>.grid-x{max-height:100%;flex-wrap:nowrap}.large-cell-block-y{overflow-y:auto;max-height:100%;min-height:100%;-webkit-overflow-scrolling:touch;-ms-overflow-style:-ms-autohiding-scrollbar}}.grid-y.grid-frame{overflow:hidden;position:relative;flex-wrap:nowrap;align-items:stretch;height:100vh;width:auto}@media print,screen and (min-width: 40em){.grid-y.medium-grid-frame{overflow:hidden;position:relative;flex-wrap:nowrap;align-items:stretch;height:100vh;width:auto}}@media print,screen and (min-width: 64em){.grid-y.large-grid-frame{overflow:hidden;position:relative;flex-wrap:nowrap;align-items:stretch;height:100vh;width:auto}}.cell .grid-y.grid-frame{height:100%}@media print,screen and (min-width: 40em){.cell .grid-y.medium-grid-frame{height:100%}}@media print,screen and (min-width: 64em){.cell .grid-y.large-grid-frame{height:100%}}.grid-margin-y{margin-top:-0.9rem;margin-bottom:-0.9rem}.grid-margin-y>.cell{height:calc(100% - 1.8rem);margin-top:0.9rem;margin-bottom:0.9rem}.grid-margin-y>.auto{height:auto}.grid-margin-y>.shrink{height:auto}.grid-margin-y>.small-1{height:calc(8.3333333333% - 1.8rem)}.grid-margin-y>.small-2{height:calc(16.6666666667% - 1.8rem)}.grid-margin-y>.small-3{height:calc(25% - 1.8rem)}.grid-margin-y>.small-4{height:calc(33.3333333333% - 1.8rem)}.grid-margin-y>.small-5{height:calc(41.6666666667% - 1.8rem)}.grid-margin-y>.small-6{height:calc(50% - 1.8rem)}.grid-margin-y>.small-7{height:calc(58.3333333333% - 1.8rem)}.grid-margin-y>.small-8{height:calc(66.6666666667% - 1.8rem)}.grid-margin-y>.small-9{height:calc(75% - 1.8rem)}.grid-margin-y>.small-10{height:calc(83.3333333333% - 1.8rem)}.grid-margin-y>.small-11{height:calc(91.6666666667% - 1.8rem)}.grid-margin-y>.small-12{height:calc(100% - 1.8rem)}@media print,screen and (min-width: 40em){.grid-margin-y>.medium-auto{height:auto}.grid-margin-y>.medium-shrink{height:auto}.grid-margin-y>.medium-1{height:calc(8.3333333333% - 1.8rem)}.grid-margin-y>.medium-2{height:calc(16.6666666667% - 1.8rem)}.grid-margin-y>.medium-3{height:calc(25% - 1.8rem)}.grid-margin-y>.medium-4{height:calc(33.3333333333% - 1.8rem)}.grid-margin-y>.medium-5{height:calc(41.6666666667% - 1.8rem)}.grid-margin-y>.medium-6{height:calc(50% - 1.8rem)}.grid-margin-y>.medium-7{height:calc(58.3333333333% - 1.8rem)}.grid-margin-y>.medium-8{height:calc(66.6666666667% - 1.8rem)}.grid-margin-y>.medium-9{height:calc(75% - 1.8rem)}.grid-margin-y>.medium-10{height:calc(83.3333333333% - 1.8rem)}.grid-margin-y>.medium-11{height:calc(91.6666666667% - 1.8rem)}.grid-margin-y>.medium-12{height:calc(100% - 1.8rem)}}@media print,screen and (min-width: 64em){.grid-margin-y>.large-auto{height:auto}.grid-margin-y>.large-shrink{height:auto}.grid-margin-y>.large-1{height:calc(8.3333333333% - 1.8rem)}.grid-margin-y>.large-2{height:calc(16.6666666667% - 1.8rem)}.grid-margin-y>.large-3{height:calc(25% - 1.8rem)}.grid-margin-y>.large-4{height:calc(33.3333333333% - 1.8rem)}.grid-margin-y>.large-5{height:calc(41.6666666667% - 1.8rem)}.grid-margin-y>.large-6{height:calc(50% - 1.8rem)}.grid-margin-y>.large-7{height:calc(58.3333333333% - 1.8rem)}.grid-margin-y>.large-8{height:calc(66.6666666667% - 1.8rem)}.grid-margin-y>.large-9{height:calc(75% - 1.8rem)}.grid-margin-y>.large-10{height:calc(83.3333333333% - 1.8rem)}.grid-margin-y>.large-11{height:calc(91.6666666667% - 1.8rem)}.grid-margin-y>.large-12{height:calc(100% - 1.8rem)}}.grid-frame.grid-margin-y{height:calc(100vh + 1.8rem)}@media print,screen and (min-width: 40em){.grid-margin-y.medium-grid-frame{height:calc(100vh + 1.8rem)}}@media print,screen and (min-width: 64em){.grid-margin-y.large-grid-frame{height:calc(100vh + 1.8rem)}}.align-left{justify-content:flex-start}.align-right{justify-content:flex-end}.align-center{justify-content:center}.align-justify{justify-content:space-between}.align-spaced{justify-content:space-around}.align-left.vertical.menu>li>a{justify-content:flex-start}.align-right.vertical.menu>li>a{justify-content:flex-end}.align-center.vertical.menu>li>a{justify-content:center}.align-top{align-items:flex-start}.align-self-top{align-self:flex-start}.align-bottom{align-items:flex-end}.align-self-bottom{align-self:flex-end}.align-middle{align-items:center}.align-self-middle{align-self:center}.align-stretch{align-items:stretch}.align-self-stretch{align-self:stretch}.align-center-middle{justify-content:center;align-items:center;align-content:center}.small-order-1{order:1}.small-order-2{order:2}.small-order-3{order:3}.small-order-4{order:4}.small-order-5{order:5}.small-order-6{order:6}@media print,screen and (min-width: 40em){.medium-order-1{order:1}.medium-order-2{order:2}.medium-order-3{order:3}.medium-order-4{order:4}.medium-order-5{order:5}.medium-order-6{order:6}}@media print,screen and (min-width: 64em){.large-order-1{order:1}.large-order-2{order:2}.large-order-3{order:3}.large-order-4{order:4}.large-order-5{order:5}.large-order-6{order:6}}.flex-container{display:flex}.flex-child-auto{flex:1 1 auto}.flex-child-grow{flex:1 0 auto}.flex-child-shrink{flex:0 1 auto}.flex-dir-row{flex-direction:row}.flex-dir-row-reverse{flex-direction:row-reverse}.flex-dir-column{flex-direction:column}.flex-dir-column-reverse{flex-direction:column-reverse}@media print,screen and (min-width: 40em){.medium-flex-container{display:flex}.medium-flex-child-auto{flex:1 1 auto}.medium-flex-child-grow{flex:1 0 auto}.medium-flex-child-shrink{flex:0 1 auto}.medium-flex-dir-row{flex-direction:row}.medium-flex-dir-row-reverse{flex-direction:row-reverse}.medium-flex-dir-column{flex-direction:column}.medium-flex-dir-column-reverse{flex-direction:column-reverse}}@media print,screen and (min-width: 64em){.large-flex-container{display:flex}.large-flex-child-auto{flex:1 1 auto}.large-flex-child-grow{flex:1 0 auto}.large-flex-child-shrink{flex:0 1 auto}.large-flex-dir-row{flex-direction:row}.large-flex-dir-row-reverse{flex-direction:row-reverse}.large-flex-dir-column{flex-direction:column}.large-flex-dir-column-reverse{flex-direction:column-reverse}}.hide{display:none !important}.invisible{visibility:hidden}.visible{visibility:visible}@media print,screen and (max-width: 39.99875em){.hide-for-small-only{display:none !important}}@media screen and (max-width: 0em),screen and (min-width: 40em){.show-for-small-only{display:none !important}}@media print,screen and (min-width: 40em){.hide-for-medium{display:none !important}}@media screen and (max-width: 39.99875em){.show-for-medium{display:none !important}}@media print,screen and (min-width: 40em)and (max-width: 63.99875em){.hide-for-medium-only{display:none !important}}@media screen and (max-width: 39.99875em),screen and (min-width: 64em){.show-for-medium-only{display:none !important}}@media print,screen and (min-width: 64em){.hide-for-large{display:none !important}}@media screen and (max-width: 63.99875em){.show-for-large{display:none !important}}@media print,screen and (min-width: 64em)and (max-width: 74.99875em){.hide-for-large-only{display:none !important}}@media screen and (max-width: 63.99875em),screen and (min-width: 75em){.show-for-large-only{display:none !important}}.show-for-sr,.show-on-focus{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border:0 !important}.show-on-focus:active,.show-on-focus:focus{position:static !important;width:auto !important;height:auto !important;overflow:visible !important;clip:auto !important;white-space:normal !important}.show-for-landscape,.hide-for-portrait{display:block !important}@media screen and (orientation: landscape){.show-for-landscape,.hide-for-portrait{display:block !important}}@media screen and (orientation: portrait){.show-for-landscape,.hide-for-portrait{display:none !important}}.hide-for-landscape,.show-for-portrait{display:none !important}@media screen and (orientation: landscape){.hide-for-landscape,.show-for-portrait{display:none !important}}@media screen and (orientation: portrait){.hide-for-landscape,.show-for-portrait{display:block !important}}.show-for-dark-mode{display:none}.hide-for-dark-mode{display:block}@media screen and (prefers-color-scheme: dark){.show-for-dark-mode{display:block !important}.hide-for-dark-mode{display:none !important}}.show-for-ie{display:none}@media all and (-ms-high-contrast: none),(-ms-high-contrast: active){.show-for-ie{display:block !important}.hide-for-ie{display:none !important}}.show-for-sticky{display:none}.is-stuck .show-for-sticky{display:block}.is-stuck .hide-for-sticky{display:none}[data-sal]{transition-delay:0s;transition-delay:var(--sal-delay, 0s);transition-duration:.2s;transition-duration:var(--sal-duration, 0.2s);transition-timing-function:ease;transition-timing-function:var(--sal-easing, ease)}[data-sal][data-sal-duration="200"]{transition-duration:.2s}[data-sal][data-sal-duration="250"]{transition-duration:.25s}[data-sal][data-sal-duration="300"]{transition-duration:.3s}[data-sal][data-sal-duration="350"]{transition-duration:.35s}[data-sal][data-sal-duration="400"]{transition-duration:.4s}[data-sal][data-sal-duration="450"]{transition-duration:.45s}[data-sal][data-sal-duration="500"]{transition-duration:.5s}[data-sal][data-sal-duration="550"]{transition-duration:.55s}[data-sal][data-sal-duration="600"]{transition-duration:.6s}[data-sal][data-sal-duration="650"]{transition-duration:.65s}[data-sal][data-sal-duration="700"]{transition-duration:.7s}[data-sal][data-sal-duration="750"]{transition-duration:.75s}[data-sal][data-sal-duration="800"]{transition-duration:.8s}[data-sal][data-sal-duration="850"]{transition-duration:.85s}[data-sal][data-sal-duration="900"]{transition-duration:.9s}[data-sal][data-sal-duration="950"]{transition-duration:.95s}[data-sal][data-sal-duration="1000"]{transition-duration:1s}[data-sal][data-sal-duration="1050"]{transition-duration:1.05s}[data-sal][data-sal-duration="1100"]{transition-duration:1.1s}[data-sal][data-sal-duration="1150"]{transition-duration:1.15s}[data-sal][data-sal-duration="1200"]{transition-duration:1.2s}[data-sal][data-sal-duration="1250"]{transition-duration:1.25s}[data-sal][data-sal-duration="1300"]{transition-duration:1.3s}[data-sal][data-sal-duration="1350"]{transition-duration:1.35s}[data-sal][data-sal-duration="1400"]{transition-duration:1.4s}[data-sal][data-sal-duration="1450"]{transition-duration:1.45s}[data-sal][data-sal-duration="1500"]{transition-duration:1.5s}[data-sal][data-sal-duration="1550"]{transition-duration:1.55s}[data-sal][data-sal-duration="1600"]{transition-duration:1.6s}[data-sal][data-sal-duration="1650"]{transition-duration:1.65s}[data-sal][data-sal-duration="1700"]{transition-duration:1.7s}[data-sal][data-sal-duration="1750"]{transition-duration:1.75s}[data-sal][data-sal-duration="1800"]{transition-duration:1.8s}[data-sal][data-sal-duration="1850"]{transition-duration:1.85s}[data-sal][data-sal-duration="1900"]{transition-duration:1.9s}[data-sal][data-sal-duration="1950"]{transition-duration:1.95s}[data-sal][data-sal-duration="2000"]{transition-duration:2s}[data-sal][data-sal-delay="50"]{transition-delay:.05s}[data-sal][data-sal-delay="100"]{transition-delay:.1s}[data-sal][data-sal-delay="150"]{transition-delay:.15s}[data-sal][data-sal-delay="200"]{transition-delay:.2s}[data-sal][data-sal-delay="250"]{transition-delay:.25s}[data-sal][data-sal-delay="300"]{transition-delay:.3s}[data-sal][data-sal-delay="350"]{transition-delay:.35s}[data-sal][data-sal-delay="400"]{transition-delay:.4s}[data-sal][data-sal-delay="450"]{transition-delay:.45s}[data-sal][data-sal-delay="500"]{transition-delay:.5s}[data-sal][data-sal-delay="550"]{transition-delay:.55s}[data-sal][data-sal-delay="600"]{transition-delay:.6s}[data-sal][data-sal-delay="650"]{transition-delay:.65s}[data-sal][data-sal-delay="700"]{transition-delay:.7s}[data-sal][data-sal-delay="750"]{transition-delay:.75s}[data-sal][data-sal-delay="800"]{transition-delay:.8s}[data-sal][data-sal-delay="850"]{transition-delay:.85s}[data-sal][data-sal-delay="900"]{transition-delay:.9s}[data-sal][data-sal-delay="950"]{transition-delay:.95s}[data-sal][data-sal-delay="1000"]{transition-delay:1s}[data-sal][data-sal-easing=linear]{transition-timing-function:linear}[data-sal][data-sal-easing=ease]{transition-timing-function:ease}[data-sal][data-sal-easing=ease-in]{transition-timing-function:ease-in}[data-sal][data-sal-easing=ease-out]{transition-timing-function:ease-out}[data-sal][data-sal-easing=ease-in-out]{transition-timing-function:ease-in-out}[data-sal][data-sal-easing=ease-in-cubic]{transition-timing-function:cubic-bezier(0.55, 0.055, 0.675, 0.19)}[data-sal][data-sal-easing=ease-out-cubic]{transition-timing-function:cubic-bezier(0.215, 0.61, 0.355, 1)}[data-sal][data-sal-easing=ease-in-out-cubic]{transition-timing-function:cubic-bezier(0.645, 0.045, 0.355, 1)}[data-sal][data-sal-easing=ease-in-circ]{transition-timing-function:cubic-bezier(0.6, 0.04, 0.98, 0.335)}[data-sal][data-sal-easing=ease-out-circ]{transition-timing-function:cubic-bezier(0.075, 0.82, 0.165, 1)}[data-sal][data-sal-easing=ease-in-out-circ]{transition-timing-function:cubic-bezier(0.785, 0.135, 0.15, 0.86)}[data-sal][data-sal-easing=ease-in-expo]{transition-timing-function:cubic-bezier(0.95, 0.05, 0.795, 0.035)}[data-sal][data-sal-easing=ease-out-expo]{transition-timing-function:cubic-bezier(0.19, 1, 0.22, 1)}[data-sal][data-sal-easing=ease-in-out-expo]{transition-timing-function:cubic-bezier(1, 0, 0, 1)}[data-sal][data-sal-easing=ease-in-quad]{transition-timing-function:cubic-bezier(0.55, 0.085, 0.68, 0.53)}[data-sal][data-sal-easing=ease-out-quad]{transition-timing-function:cubic-bezier(0.25, 0.46, 0.45, 0.94)}[data-sal][data-sal-easing=ease-in-out-quad]{transition-timing-function:cubic-bezier(0.455, 0.03, 0.515, 0.955)}[data-sal][data-sal-easing=ease-in-quart]{transition-timing-function:cubic-bezier(0.895, 0.03, 0.685, 0.22)}[data-sal][data-sal-easing=ease-out-quart]{transition-timing-function:cubic-bezier(0.165, 0.84, 0.44, 1)}[data-sal][data-sal-easing=ease-in-out-quart]{transition-timing-function:cubic-bezier(0.77, 0, 0.175, 1)}[data-sal][data-sal-easing=ease-in-quint]{transition-timing-function:cubic-bezier(0.755, 0.05, 0.855, 0.06)}[data-sal][data-sal-easing=ease-out-quint]{transition-timing-function:cubic-bezier(0.23, 1, 0.32, 1)}[data-sal][data-sal-easing=ease-in-out-quint]{transition-timing-function:cubic-bezier(0.86, 0, 0.07, 1)}[data-sal][data-sal-easing=ease-in-sine]{transition-timing-function:cubic-bezier(0.47, 0, 0.745, 0.715)}[data-sal][data-sal-easing=ease-out-sine]{transition-timing-function:cubic-bezier(0.39, 0.575, 0.565, 1)}[data-sal][data-sal-easing=ease-in-out-sine]{transition-timing-function:cubic-bezier(0.445, 0.05, 0.55, 0.95)}[data-sal][data-sal-easing=ease-in-back]{transition-timing-function:cubic-bezier(0.6, -0.28, 0.735, 0.045)}[data-sal][data-sal-easing=ease-out-back]{transition-timing-function:cubic-bezier(0.175, 0.885, 0.32, 1.275)}[data-sal][data-sal-easing=ease-in-out-back]{transition-timing-function:cubic-bezier(0.68, -0.55, 0.265, 1.55)}[data-sal|=fade]{opacity:0;transition-property:opacity}[data-sal|=fade].sal-animate,body.sal-disabled [data-sal|=fade]{opacity:1}[data-sal|=slide]{opacity:0;transition-property:opacity,transform}[data-sal=slide-up]{transform:translateY(3.6rem)}[data-sal=slide-down]{transform:translateY(-3.6rem)}[data-sal=slide-left]{transform:translateX(3.6rem)}[data-sal=slide-right]{transform:translateX(-3.6rem)}[data-sal|=slide].sal-animate,body.sal-disabled [data-sal|=slide]{opacity:1;transform:none}[data-sal|=zoom]{opacity:0;transition-property:opacity,transform}[data-sal=zoom-in]{transform:scale(0.5)}[data-sal=zoom-out]{transform:scale(1.1)}[data-sal|=zoom].sal-animate,body.sal-disabled [data-sal|=zoom]{opacity:1;transform:none}[data-sal|=flip]{-webkit-backface-visibility:hidden;backface-visibility:hidden;transition-property:transform}[data-sal=flip-left]{transform:perspective(2000px) rotateY(-91deg)}[data-sal=flip-right]{transform:perspective(2000px) rotateY(91deg)}[data-sal=flip-up]{transform:perspective(2000px) rotateX(-91deg)}[data-sal=flip-down]{transform:perspective(2000px) rotateX(91deg)}[data-sal|=flip].sal-animate,body.sal-disabled [data-sal|=flip]{transform:none}@font-face{font-family:swiper-icons;src:url("data:application/font-woff;charset=utf-8;base64, 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");font-weight:400;font-style:normal}:root{--swiper-theme-color: #007aff}:host{position:relative;display:block;margin-left:auto;margin-right:auto;z-index:1}.swiper{margin-left:auto;margin-right:auto;position:relative;overflow:hidden;list-style:none;padding:0;z-index:1;display:block}.swiper-vertical>.swiper-wrapper{flex-direction:column}.swiper-wrapper{position:relative;width:100%;height:100%;z-index:1;display:flex;transition-property:transform;transition-timing-function:var(--swiper-wrapper-transition-timing-function, initial);box-sizing:content-box}.swiper-android .swiper-slide,.swiper-ios .swiper-slide,.swiper-wrapper{transform:translate3d(0px, 0, 0)}.swiper-horizontal{touch-action:pan-y}.swiper-vertical{touch-action:pan-x}.swiper-slide{flex-shrink:0;width:100%;height:100%;position:relative;transition-property:transform;display:block}.swiper-slide-invisible-blank{visibility:hidden}.swiper-autoheight,.swiper-autoheight .swiper-slide{height:auto}.swiper-autoheight .swiper-wrapper{align-items:flex-start;transition-property:transform,height}.swiper-backface-hidden .swiper-slide{transform:translateZ(0);-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-3d.swiper-css-mode .swiper-wrapper{perspective:1200px}.swiper-3d .swiper-wrapper{transform-style:preserve-3d}.swiper-3d{perspective:1200px}.swiper-3d .swiper-cube-shadow,.swiper-3d .swiper-slide{transform-style:preserve-3d}.swiper-css-mode>.swiper-wrapper{overflow:auto;scrollbar-width:none;-ms-overflow-style:none}.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar{display:none}.swiper-css-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:start start}.swiper-css-mode.swiper-horizontal>.swiper-wrapper{scroll-snap-type:x mandatory}.swiper-css-mode.swiper-vertical>.swiper-wrapper{scroll-snap-type:y mandatory}.swiper-css-mode.swiper-free-mode>.swiper-wrapper{scroll-snap-type:none}.swiper-css-mode.swiper-free-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:none}.swiper-css-mode.swiper-centered>.swiper-wrapper::before{content:"";flex-shrink:0;order:9999}.swiper-css-mode.swiper-centered>.swiper-wrapper>.swiper-slide{scroll-snap-align:center center;scroll-snap-stop:always}.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child{margin-inline-start:var(--swiper-centered-offset-before)}.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper::before{height:100%;min-height:1px;width:var(--swiper-centered-offset-after)}.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child{margin-block-start:var(--swiper-centered-offset-before)}.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper::before{width:100%;min-width:1px;height:var(--swiper-centered-offset-after)}.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-bottom,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none;z-index:10}.swiper-3d .swiper-slide-shadow{background:rgba(0,0,0,.15)}.swiper-3d .swiper-slide-shadow-left{background-image:linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0))}.swiper-3d .swiper-slide-shadow-right{background-image:linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0))}.swiper-3d .swiper-slide-shadow-top{background-image:linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0))}.swiper-3d .swiper-slide-shadow-bottom{background-image:linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0))}.swiper-lazy-preloader{width:42px;height:42px;position:absolute;left:50%;top:50%;margin-left:-21px;margin-top:-21px;z-index:10;transform-origin:50%;box-sizing:border-box;border:4px solid var(--swiper-preloader-color, var(--swiper-theme-color));border-radius:50%;border-top-color:rgba(0,0,0,0)}.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader,.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader{animation:swiper-preloader-spin 1s infinite linear}.swiper-lazy-preloader-white{--swiper-preloader-color: #fff}.swiper-lazy-preloader-black{--swiper-preloader-color: #000}@keyframes swiper-preloader-spin{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}.swiper-virtual .swiper-slide{-webkit-backface-visibility:hidden;transform:translateZ(0)}.swiper-virtual.swiper-css-mode .swiper-wrapper::after{content:"";position:absolute;left:0;top:0;pointer-events:none}.swiper-virtual.swiper-css-mode.swiper-horizontal .swiper-wrapper::after{height:1px;width:var(--swiper-virtual-size)}.swiper-virtual.swiper-css-mode.swiper-vertical .swiper-wrapper::after{width:1px;height:var(--swiper-virtual-size)}:root{--swiper-navigation-size: 44px}.swiper-button-next,.swiper-button-prev{position:absolute;top:var(--swiper-navigation-top-offset, 50%);width:calc(var(--swiper-navigation-size)/44*27);height:var(--swiper-navigation-size);margin-top:calc(0px - var(--swiper-navigation-size)/2);z-index:10;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--swiper-navigation-color, var(--swiper-theme-color))}.swiper-button-next.swiper-button-disabled,.swiper-button-prev.swiper-button-disabled{opacity:.35;cursor:auto;pointer-events:none}.swiper-button-next.swiper-button-hidden,.swiper-button-prev.swiper-button-hidden{opacity:0;cursor:auto;pointer-events:none}.swiper-navigation-disabled .swiper-button-next,.swiper-navigation-disabled .swiper-button-prev{display:none !important}.swiper-button-next svg,.swiper-button-prev svg{width:100%;height:100%;object-fit:contain;transform-origin:center}.swiper-rtl .swiper-button-next svg,.swiper-rtl .swiper-button-prev svg{transform:rotate(180deg)}.swiper-button-prev,.swiper-rtl .swiper-button-next{left:var(--swiper-navigation-sides-offset, 10px);right:auto}.swiper-button-next,.swiper-rtl .swiper-button-prev{right:var(--swiper-navigation-sides-offset, 10px);left:auto}.swiper-button-lock{display:none}.swiper-button-next:after,.swiper-button-prev:after{font-family:swiper-icons;font-size:var(--swiper-navigation-size);text-transform:none !important;letter-spacing:0;font-variant:initial;line-height:1}.swiper-button-prev:after,.swiper-rtl .swiper-button-next:after{content:"prev"}.swiper-button-next,.swiper-rtl .swiper-button-prev{right:var(--swiper-navigation-sides-offset, 10px);left:auto}.swiper-button-next:after,.swiper-rtl .swiper-button-prev:after{content:"next"}.swiper-pagination{position:absolute;text-align:center;transition:.3s opacity;transform:translate3d(0, 0, 0);z-index:10}.swiper-pagination.swiper-pagination-hidden{opacity:0}.swiper-pagination-disabled>.swiper-pagination,.swiper-pagination.swiper-pagination-disabled{display:none !important}.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-bullets.swiper-pagination-horizontal,.swiper-pagination-custom,.swiper-pagination-fraction{bottom:var(--swiper-pagination-bottom, 8px);top:var(--swiper-pagination-top, auto);left:0;width:100%}.swiper-pagination-bullets-dynamic{overflow:hidden;font-size:0}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transform:scale(0.33);position:relative}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active{transform:scale(1)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main{transform:scale(1)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev{transform:scale(0.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev{transform:scale(0.33)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next{transform:scale(0.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next{transform:scale(0.33)}.swiper-pagination-bullet{width:var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 8px));height:var(--swiper-pagination-bullet-height, var(--swiper-pagination-bullet-size, 8px));display:inline-block;border-radius:var(--swiper-pagination-bullet-border-radius, 50%);background:var(--swiper-pagination-bullet-inactive-color, #000);opacity:var(--swiper-pagination-bullet-inactive-opacity, 0.2)}button.swiper-pagination-bullet{border:none;margin:0;padding:0;box-shadow:none;-webkit-appearance:none;appearance:none}.swiper-pagination-clickable .swiper-pagination-bullet{cursor:pointer}.swiper-pagination-bullet:only-child{display:none !important}.swiper-pagination-bullet-active{opacity:var(--swiper-pagination-bullet-opacity, 1);background:var(--swiper-pagination-color, var(--swiper-theme-color))}.swiper-pagination-vertical.swiper-pagination-bullets,.swiper-vertical>.swiper-pagination-bullets{right:var(--swiper-pagination-right, 8px);left:var(--swiper-pagination-left, auto);top:50%;transform:translate3d(0px, -50%, 0)}.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet,.swiper-vertical>.swiper-pagination-bullets .swiper-pagination-bullet{margin:var(--swiper-pagination-bullet-vertical-gap, 6px) 0;display:block}.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic{top:50%;transform:translateY(-50%);width:8px}.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{display:inline-block;transition:.2s transform,.2s top}.swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet,.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet{margin:0 var(--swiper-pagination-bullet-horizontal-gap, 4px)}.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic{left:50%;transform:translateX(-50%);white-space:nowrap}.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:.2s transform,.2s left}.swiper-horizontal.swiper-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:.2s transform,.2s right}.swiper-pagination-fraction{color:var(--swiper-pagination-fraction-color, inherit)}.swiper-pagination-progressbar{background:var(--swiper-pagination-progressbar-bg-color, rgba(0, 0, 0, 0.25));position:absolute}.swiper-pagination-progressbar .swiper-pagination-progressbar-fill{background:var(--swiper-pagination-color, var(--swiper-theme-color));position:absolute;left:0;top:0;width:100%;height:100%;transform:scale(0);transform-origin:left top}.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill{transform-origin:right top}.swiper-horizontal>.swiper-pagination-progressbar,.swiper-pagination-progressbar.swiper-pagination-horizontal,.swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite,.swiper-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite{width:100%;height:var(--swiper-pagination-progressbar-size, 4px);left:0;top:0}.swiper-horizontal>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-vertical,.swiper-vertical>.swiper-pagination-progressbar{width:var(--swiper-pagination-progressbar-size, 4px);height:100%;left:0;top:0}.swiper-pagination-lock{display:none}.swiper-scrollbar{border-radius:var(--swiper-scrollbar-border-radius, 10px);position:relative;touch-action:none;background:var(--swiper-scrollbar-bg-color, rgba(0, 0, 0, 0.1))}.swiper-scrollbar-disabled>.swiper-scrollbar,.swiper-scrollbar.swiper-scrollbar-disabled{display:none !important}.swiper-horizontal>.swiper-scrollbar,.swiper-scrollbar.swiper-scrollbar-horizontal{position:absolute;left:var(--swiper-scrollbar-sides-offset, 1%);bottom:var(--swiper-scrollbar-bottom, 4px);top:var(--swiper-scrollbar-top, auto);z-index:50;height:var(--swiper-scrollbar-size, 4px);width:calc(100% - 2*var(--swiper-scrollbar-sides-offset, 1%))}.swiper-scrollbar.swiper-scrollbar-vertical,.swiper-vertical>.swiper-scrollbar{position:absolute;left:var(--swiper-scrollbar-left, auto);right:var(--swiper-scrollbar-right, 4px);top:var(--swiper-scrollbar-sides-offset, 1%);z-index:50;width:var(--swiper-scrollbar-size, 4px);height:calc(100% - 2*var(--swiper-scrollbar-sides-offset, 1%))}.swiper-scrollbar-drag{height:100%;width:100%;position:relative;background:var(--swiper-scrollbar-drag-bg-color, rgba(0, 0, 0, 0.5));border-radius:var(--swiper-scrollbar-border-radius, 10px);left:0;top:0}.swiper-scrollbar-cursor-drag{cursor:move}.swiper-scrollbar-lock{display:none}.swiper-zoom-container{width:100%;height:100%;display:flex;justify-content:center;align-items:center;text-align:center}.swiper-zoom-container>canvas,.swiper-zoom-container>img,.swiper-zoom-container>svg{max-width:100%;max-height:100%;object-fit:contain}.swiper-slide-zoomed{cursor:move;touch-action:none}.swiper .swiper-notification{position:absolute;left:0;top:0;pointer-events:none;opacity:0;z-index:-1000}.swiper-free-mode>.swiper-wrapper{transition-timing-function:ease-out;margin:0 auto}.swiper-grid>.swiper-wrapper{flex-wrap:wrap}.swiper-grid-column>.swiper-wrapper{flex-wrap:wrap;flex-direction:column}.swiper-fade.swiper-free-mode .swiper-slide{transition-timing-function:ease-out}.swiper-fade .swiper-slide{pointer-events:none;transition-property:opacity}.swiper-fade .swiper-slide .swiper-slide{pointer-events:none}.swiper-fade .swiper-slide-active{pointer-events:auto}.swiper-fade .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper.swiper-cube{overflow:visible}.swiper-cube .swiper-slide{pointer-events:none;-webkit-backface-visibility:hidden;backface-visibility:hidden;z-index:1;visibility:hidden;transform-origin:0 0;width:100%;height:100%}.swiper-cube .swiper-slide .swiper-slide{pointer-events:none}.swiper-cube.swiper-rtl .swiper-slide{transform-origin:100% 0}.swiper-cube .swiper-slide-active,.swiper-cube .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-cube .swiper-slide-active,.swiper-cube .swiper-slide-next,.swiper-cube .swiper-slide-prev{pointer-events:auto;visibility:visible}.swiper-cube .swiper-cube-shadow{position:absolute;left:0;bottom:0px;width:100%;height:100%;opacity:.6;z-index:0}.swiper-cube .swiper-cube-shadow:before{content:"";background:#000;position:absolute;left:0;top:0;bottom:0;right:0;filter:blur(50px)}.swiper-cube .swiper-slide-next+.swiper-slide{pointer-events:auto;visibility:visible}.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-bottom,.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-left,.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-right,.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-top{z-index:0;-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper.swiper-flip{overflow:visible}.swiper-flip .swiper-slide{pointer-events:none;-webkit-backface-visibility:hidden;backface-visibility:hidden;z-index:1}.swiper-flip .swiper-slide .swiper-slide{pointer-events:none}.swiper-flip .swiper-slide-active,.swiper-flip .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-bottom,.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-left,.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-right,.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-top{z-index:0;-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-creative .swiper-slide{-webkit-backface-visibility:hidden;backface-visibility:hidden;overflow:hidden;transition-property:transform,opacity,height}.swiper.swiper-cards{overflow:visible}.swiper-cards .swiper-slide{transform-origin:center bottom;-webkit-backface-visibility:hidden;backface-visibility:hidden;overflow:hidden}html,body{overscroll-behavior:none;overscroll-behavior-x:none;scroll-behavior:smooth}html{font-size:100%}body{background-color:var(--bg);font-family:var(--body-font);font-weight:var(--weight-normal);line-height:var(--body-line-height);color:var(--black);font-optical-sizing:auto;min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;--sal-duration: 500ms;--sal-easing: cubic-bezier(0.12, 0.67, 0.53, 1)}body.--lock{overflow:hidden}.grid-container{max-width:100%;padding-left:.9em;padding-right:.9em}@media print,screen and (min-width: 800px){.grid-container{padding-left:3.6em;padding-right:3.6em}}.--disablemotion,.--disablemotion *{transition:none !important}*,*::before,*::after{-webkit-box-sizing:border-box;box-sizing:border-box}*,*:active,*:focus,*:visited{outline:none !important}::-moz-selection{background:var(--mediumgrey)}::selection{background:var(--mediumgrey)}::-moz-focus-inner{border:0;padding:0}.screen-reader,.frm_screen_reader,.hide,.visuallyHidden,.visually-hidden{display:none !important}.has-background{background:var(--bg);padding:0}.--zoom,.zoom{cursor:pointer}.--zoom img,.--zoom video,.zoom img,.zoom video{transition:all ease 2s}strong,b{font-weight:var(--weight-bold)}.flex-height{position:relative;width:100%;height:100vh;height:calc(100vh - var(--menuheight)*1)}.flex-height.full{height:100vh}.flex-height.half{height:50vh}.flex-height.fill-height{height:100%}.flex-height.--left video,.flex-height.--left iframe,.flex-height.--left img{object-position:left center}.flex-height.--right video,.flex-height.--right iframe,.flex-height.--right img{object-position:right center}.flex-height video,.flex-height iframe,.flex-height img{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1;object-fit:contain}@media print,screen and (min-width: 800px){.flex-height.cover video,.flex-height.cover iframe,.flex-height.cover img,.flex-height.fit video,.flex-height.fit iframe,.flex-height.fit img{object-fit:cover}}.flex-height.contain video,.flex-height.contain iframe,.flex-height.contain img{object-fit:contain}.flex-height.contain.--top video,.flex-height.contain.--top iframe,.flex-height.contain.--top img{object-position:top}.flex-height.contain.--middle video,.flex-height.contain.--middle iframe,.flex-height.contain.--middle img{object-position:center}.flex-height.contain.--bottom video,.flex-height.contain.--bottom iframe,.flex-height.contain.--bottom img{object-position:bottom}.flex-row{position:relative;overflow:hidden}.flex-row .bg-animate{position:absolute;top:0;left:0;width:100%;height:100%;z-index:9;background-color:var(--bg);transition:transform 600ms 150ms cubic-bezier(0.12, 0.67, 0.53, 1)}.flex-row img,.flex-row video{width:100%;height:auto}.media-row{flex-direction:row;flex-wrap:nowrap;display:flex;gap:0 .9rem}@media print,screen and (min-width: 800px){.media-row{gap:0 1.875rem}}.media-row .bg-animate{position:absolute;top:0;left:0;width:100%;height:100%;z-index:9;background-color:var(--bg);transition:transform 600ms 150ms cubic-bezier(0.12, 0.67, 0.53, 1)}.flex-video,.flex-image{position:relative;width:100%;height:0px;overflow:hidden;display:inline-block;padding-bottom:56.25%;z-index:1}.flex-video.full-height,.flex-image.full-height{padding-bottom:0 !important;height:100vh}.flex-video.embed-reveal,.flex-image.embed-reveal{cursor:pointer}.flex-video .banner,.flex-image .banner{padding:.45rem;background-color:var(--brand);width:100%;z-index:3;position:absolute;left:0;bottom:0}@media print,screen and (min-width: 800px){.flex-video .banner,.flex-image .banner{padding:.625rem 1.35rem}}.flex-video .banner span,.flex-image .banner span{color:var(--white);font-size:var(--size-minus1)}.flex-video .caption,.flex-image .caption{position:absolute;z-index:3;bottom:0;right:0;padding:.9rem;text-align:left;color:var(--black);font-size:var(--size);text-transform:uppercase}@media print,screen and (min-width: 800px){.flex-video .caption,.flex-image .caption{padding:1.8rem}}.flex-video .text-inner,.flex-image .text-inner{z-index:9;position:absolute;bottom:0;left:0;--black: white;padding:1.8rem 0}@media print,screen and (min-width: 800px){.flex-video .text-inner,.flex-image .text-inner{padding:3.6rem 0}}.flex-video .mask,.flex-image .mask{z-index:2;position:absolute;top:0;left:0;width:100%;height:100%;background:var(--mask)}.flex-video.bw,.flex-image.bw{filter:grayscale(1)}.flex-video .bg-animate,.flex-image .bg-animate{position:absolute;top:0;left:0;width:100%;height:100%;z-index:9;background-color:var(--bg);transition:transform 600ms 150ms cubic-bezier(0.12, 0.67, 0.53, 1)}.flex-video video,.flex-video iframe,.flex-video img,.flex-image video,.flex-image iframe,.flex-image img{position:absolute;top:0;left:0;width:100%;height:auto;z-index:1}.flex-video iframe,.flex-image iframe{z-index:3}.flex-video svg,.flex-image svg{position:absolute;top:50%;left:50%;z-index:2;transform:translate(-50%, -50%);width:162px;height:162px}.flex-video iframe,.flex-image iframe{height:100%}.flex-video.square,.flex-image.square{padding-bottom:100%}.flex-video.zoom,.flex-image.zoom{cursor:pointer}.flex-video.zoom img,.flex-video.zoom video,.flex-image.zoom img,.flex-image.zoom video{transition:all ease 2s}.flex-video.zoom:hover img,.flex-video.zoom:hover video,.flex-image.zoom:hover img,.flex-image.zoom:hover video{transform:scale(1.125)}.flex-video.round,.flex-image.round{border-radius:100%;overflow:hidden}.flex-video.shrink img,.flex-image.shrink img{height:100%;object-fit:contain}.flex-video.fit img,.flex-video.fit video,.flex-video.cover img,.flex-video.cover video,.flex-image.fit img,.flex-image.fit video,.flex-image.cover img,.flex-image.cover video{height:100%;object-fit:cover}.flex-video .flex-header,.flex-image .flex-header{z-index:8;position:absolute;z-index:3;top:0;left:0;padding:1.4375rem;width:100%}.flex-video .flex-header.small,.flex-image .flex-header.small{padding:1.35rem}.flex-video .flex-header h2,.flex-image .flex-header h2{color:var(--black);font-size:var(--size-plus5)}.flex-video .flex-header p,.flex-image .flex-header p{color:var(--black);font-size:max(.925rem,var(--size-plus1));text-transform:uppercase}@media print,screen and (min-width: 800px){.flex-video .flex-header,.flex-image .flex-header{padding:2.6rem;width:50%}.flex-video .flex-header p,.flex-image .flex-header p{max-width:87.25%}}.flex-video .flex-icon,.flex-image .flex-icon{position:absolute;bottom:1.4375rem;right:1.4375rem;z-index:10;width:2.35rem;transform:none;top:unset;left:unset;height:auto}@media print,screen and (min-width: 800px){.flex-video .flex-icon,.flex-image .flex-icon{width:3.59375rem}}.flex-video .flex-button,.flex-video .block.form-block form>div input#mc-embedded-subscribe,.block.form-block form>div .flex-video input#mc-embedded-subscribe,.flex-image .flex-button,.flex-image .block.form-block form>div input#mc-embedded-subscribe,.block.form-block form>div .flex-image input#mc-embedded-subscribe{position:absolute;bottom:1.8rem;left:1.8rem;z-index:10}@media print,screen and (min-width: 800px){.flex-video .flex-button,.flex-video .block.form-block form>div input#mc-embedded-subscribe,.block.form-block form>div .flex-video input#mc-embedded-subscribe,.flex-image .flex-button,.flex-image .block.form-block form>div input#mc-embedded-subscribe,.block.form-block form>div .flex-image input#mc-embedded-subscribe{bottom:2.8rem;right:2.8rem;left:auto}}.flex-video .flex-button svg,.flex-video .block.form-block form>div input#mc-embedded-subscribe svg,.block.form-block form>div .flex-video input#mc-embedded-subscribe svg,.flex-image .flex-button svg,.flex-image .block.form-block form>div input#mc-embedded-subscribe svg,.block.form-block form>div .flex-image input#mc-embedded-subscribe svg{position:relative;height:.5em;width:auto;transform:none;top:unset;left:unset;height:.5em;width:auto}.flex-video .flex-button svg circle,.flex-video .block.form-block form>div input#mc-embedded-subscribe svg circle,.block.form-block form>div .flex-video input#mc-embedded-subscribe svg circle,.flex-image .flex-button svg circle,.flex-image .block.form-block form>div input#mc-embedded-subscribe svg circle,.block.form-block form>div .flex-image input#mc-embedded-subscribe svg circle{fill:var(--black);transition:all ease 500ms}.flex-video .flex-button:hover svg circle,.flex-video .block.form-block form>div input#mc-embedded-subscribe:hover svg circle,.block.form-block form>div .flex-video input#mc-embedded-subscribe:hover svg circle,.flex-image .flex-button:hover svg circle,.flex-image .block.form-block form>div input#mc-embedded-subscribe:hover svg circle,.block.form-block form>div .flex-image input#mc-embedded-subscribe:hover svg circle{fill:var(--brand)}.content-flex-image{margin:1.8rem 0}.flex-button,.block.form-block form>div input#mc-embedded-subscribe{cursor:pointer;border:1px solid var(--brand);color:var(--bg);background:var(--brand);padding:.9em 1.25em;font-size:max(.8rem,var(--size-minus1));border-radius:.9em;text-transform:uppercase;font-family:var(--mono-font);white-space:nowrap;transition:all ease 500ms;display:inline-flex;gap:.9em;align-items:center;flex-direction:row;flex-wrap:wrap}@media print,screen and (min-width: 800px){.flex-button,.block.form-block form>div input#mc-embedded-subscribe{padding:.9em 3.6em;font-size:max(.925rem,var(--size))}}.flex-button span,.block.form-block form>div input#mc-embedded-subscribe span{display:block}.flex-button svg,.block.form-block form>div input#mc-embedded-subscribe svg{position:relative;height:.7em;transform:translateY(-0.5px);width:auto;height:.5em;width:auto}.flex-button svg circle,.block.form-block form>div input#mc-embedded-subscribe svg circle{fill:var(--black);transition:all ease 500ms}.flex-button:hover,.block.form-block form>div input#mc-embedded-subscribe:hover{background-color:rgba(0,0,0,0);color:var(--brand)}.flex-button:hover svg circle,.block.form-block form>div input#mc-embedded-subscribe:hover svg circle{fill:var(--brand)}.--is-admin .bg-animate{display:none}.sal-animate .flex-row .bg-animate,.sal-animate .flex-image .bg-animate,.sal-animate .flex-video .bg-animate{transform:translateY(-100%)}@media print,screen and (min-width: 800px){.small-only{display:none !important}}@media print,screen and (max-width: 800px){.medium-up{display:none !important}}@media print,screen and (max-width: 85em){.large-up{display:none !important}}li,ul,ol,p{color:var(--black);font-size:1rem;line-height:var(--body-line-height);text-align:left;white-space:normal}@media print,screen and (min-width: 800px){li,ul,ol,p{font-size:var(--size);font-size:max(1.125rem,var(--size-plus0))}}li b,li strong,ul b,ul strong,ol b,ol strong,p b,p strong{font-weight:var(--weight-bold)}ul li{margin:0 0 .45em 0}ul,ol,p{margin-top:0;margin-bottom:1.25em}.lead p,blockquote>p p,p.lead,blockquote>p{margin:0 0 1.35em 0;font-weight:var(--weight-normal);font-size:var(--size-plus2)}.plus p p,p.plus p{font-size:var(--size-plus2);line-height:var(--header-line-height);font-weight:var(--weight-light)}.text-left{text-align:left}.text-right{text-align:right}.text-center{text-align:center}.has-drop-cap p:not(:focus):first-letter,p.has-drop-cap:not(:focus):first-letter{float:left;font-size:8.4em;line-height:.68;font-weight:100;margin:.05em .1em 0 0;text-transform:uppercase;font-style:normal}.has-small-font-size p,p.has-small-font-size{font-size:var(--size);font-size:max(.925rem,var(--size))}.has-medium-font-size p,p.has-medium-font-size{font-size:var(--size-plus1)}.has-large-font-size p,p.has-large-font-size{font-size:var(--size-plus4)}.has-x-large-font-size p,p.has-x-large-font-size{font-size:var(--size-plus3)}@media print,screen and (min-width: 800px){.--sticky{position:sticky;top:0;top:var(--header-height)}}.h1,.h2,.h3,.h4,.h5,.h6,h1,h2,h3,h4,h5,h6{margin:0 0 .9rem 0;font-family:var(--header-font);font-weight:var(--weight-normal);line-height:var(--header-line-height);color:var(--black);text-transform:none;font-style:italic}.h1.case-default,.h2.case-default,.h3.case-default,.h4.case-default,.h5.case-default,.h6.case-default,h1.case-default,h2.case-default,h3.case-default,h4.case-default,h5.case-default,h6.case-default{text-transform:none}.h1.case-uppercase,.h2.case-uppercase,.h3.case-uppercase,.h4.case-uppercase,.h5.case-uppercase,.h6.case-uppercase,h1.case-uppercase,h2.case-uppercase,h3.case-uppercase,h4.case-uppercase,h5.case-uppercase,h6.case-uppercase{text-transform:uppercase}.h1.case-lowercase,.h2.case-lowercase,.h3.case-lowercase,.h4.case-lowercase,.h5.case-lowercase,.h6.case-lowercase,h1.case-lowercase,h2.case-lowercase,h3.case-lowercase,h4.case-lowercase,h5.case-lowercase,h6.case-lowercase{text-transform:lowercase}.h1.weight-normal,.h2.weight-normal,.h3.weight-normal,.h4.weight-normal,.h5.weight-normal,.h6.weight-normal,h1.weight-normal,h2.weight-normal,h3.weight-normal,h4.weight-normal,h5.weight-normal,h6.weight-normal{font-weight:var(--weight-normal)}.h1.weight-bold,.h2.weight-bold,.h3.weight-bold,.h4.weight-bold,.h5.weight-bold,.h6.weight-bold,h1.weight-bold,h2.weight-bold,h3.weight-bold,h4.weight-bold,h5.weight-bold,h6.weight-bold{font-weight:var(--weight-bold)}.h1 small,.h2 small,.h3 small,.h4 small,.h5 small,.h6 small,h1 small,h2 small,h3 small,h4 small,h5 small,h6 small{font-size:66.6%}a:hover .h1.highlight span,a:hover .h2.highlight span,a:hover .h3.highlight span,a:hover .h4.highlight span,a:hover .h5.highlight span,a:hover .h6.highlight span,a:hover h1.highlight span,a:hover h2.highlight span,a:hover h3.highlight span,a:hover h4.highlight span,a:hover h5.highlight span,a:hover h6.highlight span{background-position-x:left;background-size:100% 100%;color:var(--black)}h1,.h1{margin-top:0;font-size:var(--size-plus6)}h2,.h2{font-size:var(--size-plus5)}h3,.h3{font-size:var(--size-plus4)}h5,.h5{font-size:var(--size-plus3)}h4,.h4{font-size:var(--size-plus2)}h5,.h5{font-size:var(--size-plus1)}h6,.h6{font-size:var(--size-plus0)}small,.text_small{font-size:var(--size-minus2)}a{color:var(--black);text-decoration:none;transition:background-color 150ms ease,color 150ms ease}a:hover{color:var(--darkgrey)}.big-link{font-family:var(--header-font);text-transform:none;font-style:normal;display:block;font-size:var(--size-plus3);margin:0;line-height:1.125}.button-group{display:flex;gap:1.8em}.button-group>*{cursor:pointer}.button{background-color:var(--brand);color:var(--white);border:1px solid var(--brand);transition:all ease 500ms;display:inline-block;padding:.45em 1.8em;border-radius:1.8em}.button.active,.button:hover{background-color:rgba(0,0,0,0);color:var(--brand)}.button.hollow{background-color:rgba(0,0,0,0);color:var(--brand)}.button.hollow.active,.button.hollow:hover{background-color:var(--brand);color:var(--white)}.button.hollow.icon svg g{fill:var(--brand)}.button.hollow.icon:hover svg{transform:translateX(0.25em)}.button.hollow.icon:hover svg g{fill:var(--white)}.button.icon{display:inline-flex;gap:.9em;align-items:center}.button.icon svg{transition:all ease 500ms}.button.icon svg g{fill:var(--white)}.button.icon:hover svg{transform:translateX(0.45em)}.button.icon:hover svg g{fill:var(--brand)}.button-simple{cursor:pointer;background-color:rgba(0,0,0,0);color:var(--black);transition:all ease 500ms;display:inline-block;display:inline-flex;gap:.9em;align-items:center}.button-simple svg{transition:all ease 500ms}.button-simple svg g{fill:var(--black)}.button-simple:hover svg{transform:translateX(0.45em)}.cta-button{display:inline-flex;align-items:center;color:var(--brand);gap:.625em}.cta-button svg g{stroke:var(--brand)}.cta-button span{line-height:1;transition:all ease 500ms;display:block}.cta-button:hover span{transform:translateX(0.225em)}html,body{scroll-padding-top:0}.wp-block-embed,figure.wp-block-image{margin:1.8rem auto;text-align:center}@media print,screen and (min-width: 800px){.wp-block-embed,figure.wp-block-image{margin:2.8rem auto}}.wp-block-quote{border:none;padding:1.8rem 0;margin:1.8rem 0}.wp-block-quote.has-background{padding:1.8rem;border:none}@media print,screen and (min-width: 800px){.wp-block-quote.has-background{padding:2.8rem}}.wp-block-quote,.wp-block-quote cite,.wp-block-quote p{text-align:left;color:var(--black);font-size:1rem;width:100%;font-style:italic;max-width:100%}@media print,screen and (min-width: 800px){.wp-block-quote,.wp-block-quote cite,.wp-block-quote p{font-size:var(--size);font-size:max(1.125rem,var(--size-plus0))}}.wp-block-quote cite{font-weight:var(--weight-bold);display:flex;gap:.625em;margin:0 0 .9em 0;align-items:center}header#primary{position:fixed;top:0;left:0;width:100%;padding:.9rem .45rem;z-index:999;background-color:var(--bg)}@media print,screen and (min-width: 800px){header#primary{padding:1.8rem 0}}header#primary.headroom{will-change:transform;transition:all 500ms cubic-bezier(0.215, 0.61, 0.355, 1)}header#primary.headroom--pinned{transform:translateY(0%)}header#primary.headroom--unpinned{transform:translateY(-100%)}header#primary.headroom--top.headroom--top-transparent{background:rgba(0,0,0,0);--black: #fff;--brand: #fff}header#primary.logo-scale-active{transform:translateY(0%) !important;background:rgba(0,0,0,0);--black: #fff;--brand: #fff}header#primary.logo-scale-active a.logo{pointer-events:none}header#primary .hamburger.is-active .line:nth-child(1){opacity:0;-webkit-transform:translateX(-100%);-ms-transform:translateX(-100%);-o-transform:translateX(-100%);transform:translateX(-100%)}header#primary .hamburger.is-active .line:nth-child(3){opacity:0;-webkit-transform:translateX(100%);-ms-transform:translateX(100%);-o-transform:translateX(100%);transform:translateX(100%)}header#primary .hamburger .line{width:50px;height:2px;background-color:var(--brand);display:block;margin:8px auto;-webkit-transition:all .3s ease-in-out;-o-transition:all .3s ease-in-out;transition:all .3s ease-in-out}header#primary .hamburger:hover{cursor:pointer}header#primary .logo{position:relative;display:inline-block}header#primary .logo svg,header#primary .logo img{height:2rem}@media print,screen and (min-width: 800px){header#primary .logo svg,header#primary .logo img{height:3.6rem}}header#primary .logo svg g{fill:var(--logo)}header#primary .menu-outer{display:flex;flex-direction:row;flex-wrap:nowrap;align-content:center;justify-content:flex-start;align-items:center;gap:1.8em}header#primary .menu-outer .menu-cell-container-outer{font-size:1rem;background:none;display:inline-block;transition:none;padding-bottom:.25em;padding-top:.25em}header#primary .menu-outer .menu-cell-container-outer.cta{border:1px solid var(--black);padding:.9em 1.8em;border-radius:3.6em}header#primary .menu-outer .menu-cell-container-outer.appear_on_page,header#primary .menu-outer .menu-cell-container-outer.current_page_item{border-bottom:1px solid var(--black);transition:border-color 1s var(--easing)}header#primary .menu-outer .menu-cell-container-outer .menu-cell-container .menu-cell-inner{position:relative;overflow:hidden;width:100%;line-height:1}header#primary .menu-outer .menu-cell-container-outer .menu-cell-container .menu-cell-inner .cell-text{position:relative;z-index:2;transition:transform 1s var(--easing);font-size:var(--size-minus1);letter-spacing:.02em;text-transform:none;font-weight:var(--weight-bold);font-family:var(--body-font);font-weight:var(--weight-normal);line-height:var(--header-line-height);color:var(--brand)}header#primary .menu-outer .menu-cell-container-outer .menu-cell-container .menu-cell-inner .cell-text:hover{color:var(--black)}header#primary .menu-outer .menu-cell-container-outer .menu-cell-container .menu-cell-inner .cell-text.absolute{position:absolute;top:0;z-index:1;display:block;transform:translate(0, 101%)}header#primary .menu-outer .menu-cell-container-outer:hover .menu-cell-container .cell-text{transform:translate(0px, -101%)}header#primary .menu-outer .menu-cell-container-outer:hover .menu-cell-container .cell-text.absolute{transform:translate(0px, 0%)}nav#mobile{display:none;z-index:98;background:var(--brand);color:var(--bg);display:block;position:fixed;bottom:0;height:100%;left:0;width:100vw;padding:0;transition:all ease 500ms;transform:translateX(100vw);pointer-events:none;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}@media print,screen and (min-width: 800px){nav#mobile{display:none !important}}nav#mobile.is-active{pointer-events:auto;transform:translateX(0)}nav#mobile .mobile-inner{padding:1.8rem;width:100%;height:100%;display:flex;flex-direction:column;justify-content:center;position:relative}nav#mobile .menu-cell-container-outer .menu-cell-container .menu-cell-inner .cell-text{font-size:var(--size-plus2)}nav#mobile .social .menu-cell-container-outer .menu-cell-container .menu-cell-inner .cell-text{font-size:var(--size-plus2)}nav#mobile ul{list-style:none;padding:.9rem;margin:.9em 0;display:flex;flex-direction:column;gap:0}nav#mobile ul li{text-transform:none;font-size:var(--size-plus2)}nav#mobile ul li,nav#mobile ul li a{color:var(--bg)}nav#mobile ul.social li{font-size:var(--size);font-size:max(.925rem,var(--size))}.block{background:var(--white);z-index:1;position:relative;background:var(--bg);--sal-duration: 360ms;--sal-easing: cubic-bezier(0.12, 0.67, 0.53, 1)}.block.padding-bottom-extra{padding-bottom:5.2rem}@media print,screen and (min-width: 800px){.block.padding-bottom-extra{padding-bottom:10.2rem}}.block.padding-top-extra{padding-top:5.2rem}@media print,screen and (min-width: 800px){.block.padding-top-extra{padding-top:10.2rem}}.block.padding-bottom-normal{padding-bottom:3.6rem}.block.padding-top-normal{padding-top:3.6rem}.block.padding-bottom-reduce{padding-bottom:1.8rem}.block.padding-top-reduce{padding-top:1.8rem}.block.padding-bottom-none{padding-bottom:0}.block.padding-top-none{padding-top:0}@media print,screen and (min-width: 800px){.block.margin-bottom-extra{margin-bottom:6.4rem}}.block.margin-top-extra{margin-top:4.6rem}@media print,screen and (min-width: 800px){.block.margin-top-extra{margin-top:6.4rem}}.block.margin-bottom-normal{margin-bottom:3.6rem}.block.margin-top-normal{margin-top:3.6rem}.block.margin-bottom-reduce{margin-bottom:1.8rem}.block.margin-top-reduce{margin-top:1.8rem}.block.margin-bottom-none{margin-bottom:0}.block.margin-top-none{margin-top:0}.block.block-text-simple{margin-top:var(--header-height);margin-bottom:var(--header-height)}.block.line{width:100%;height:1px;background:var(--black)}.block.break{width:100%;height:2.7em}@media print,screen and (min-width: 40em){.block.break{height:3.6em}}.block.block-cta-text{background-color:var(--lightgrey)}.block.media,.block.media-block,.block.media-row-layout{padding-top:1.8rem;padding-bottom:1.8rem;position:relative}.block.media.--disable-padding-top,.block.media-block.--disable-padding-top,.block.media-row-layout.--disable-padding-top{padding-top:0}.block.media.--disable-padding-bottom,.block.media-block.--disable-padding-bottom,.block.media-row-layout.--disable-padding-bottom{padding-bottom:0}.block.media .flex-image,.block.media .flex-video,.block.media-block .flex-image,.block.media-block .flex-video,.block.media-row-layout .flex-image,.block.media-row-layout .flex-video{position:relative;z-index:1}.block.media .logo,.block.media-block .logo,.block.media-row-layout .logo{display:flex;align-items:flex-end;position:absolute;top:0;left:0;width:100%;height:100%;z-index:2}.block.media .logo object,.block.media .logo svg,.block.media .logo img,.block.media-block .logo object,.block.media-block .logo svg,.block.media-block .logo img,.block.media-row-layout .logo object,.block.media-row-layout .logo svg,.block.media-row-layout .logo img{padding:.45rem;height:100%;width:auto}@media print,screen and (max-width: 800px){.block.media .logo object,.block.media .logo svg,.block.media .logo img,.block.media-block .logo object,.block.media-block .logo svg,.block.media-block .logo img,.block.media-row-layout .logo object,.block.media-row-layout .logo svg,.block.media-row-layout .logo img{height:100vw;padding:1.8rem;max-width:3.6rem;margin-right:.9rem}}.block.embed-block .--open-embed{cursor:pointer}.block.embed-block .active .play-icon{display:none}.block.embed-block .play-icon{fill:var(--bg);width:10vw;height:auto}.block.embed-block .embed-layer{position:absolute;top:0;left:0;width:100%;height:100%}.block.embed-block .embed-layer .grid-container,.block.embed-block .embed-layer .grid-x{height:100%}.block.form-block{margin-top:0;margin-bottom:0;padding-top:1.8rem;padding-bottom:1.8rem}@media print,screen and (min-width: 800px){.block.form-block{padding-top:3.6rem;padding-bottom:3.6rem}}.block.form-block form>div{display:flex;gap:3.6em 1.8em;flex-direction:row;flex-wrap:wrap}.block.form-block form>div .mc-field-group{flex-basis:calc(50% - 1.8em);position:relative}@media print,screen and (min-width: 800px){.block.form-block form>div .mc-field-group{flex-basis:calc(25% - 1.8em)}}.block.form-block form>div .mc-field-group label{position:absolute;bottom:0;left:0;pointer-events:none;z-index:2;padding:.9rem 0;opacity:1;color:var(--mediumgrey);transition:opacity .3s ease;line-height:1.35rem}.block.form-block form>div .mc-field-group input{line-height:1.35rem;width:100%;padding:.9rem 0;border:none;background-color:rgba(0,0,0,0);border-bottom:var(--line);position:relative;z-index:1}.block.form-block form>div .mc-field-group label.active,.block.form-block form>div .mc-field-group input:focus+label{opacity:0}.block.form-block form>div .mc-field-group .asterisk{color:red}.block.form-block form>div .clear{flex-basis:100%}.block.media-block .flex-image{margin:0;display:block;line-height:1}.block.media-block .flex-image img{height:100%;object-fit:cover}.block.media-block .grid-y-outer-cell-container{display:flex;align-items:stretch}@media print,screen and (min-width: 800px){.block.media-block .grid-y-outer-cell-container .grid-y-outer-cell .grid-y-outer{height:100%;gap:1.8rem;display:flex;flex-direction:column}.block.media-block .grid-y-outer-cell-container .grid-y-outer-cell .grid-y-outer .grid-y-inner.grid-y-inner-fill{flex:1}.block.media-block .grid-y-outer-cell-container .grid-y-outer-cell .grid-y-outer .grid-y-inner.grid-y-inner-fill .flex-image{height:100%}}.block.media .flex-height{overflow:hidden;height:100vh;height:calc(100vh - var(--menuheight)*2);margin:var(--size-plus6) 0;margin:var(--menuheight) 0}.block.media .align-bottom .flex-height{height:calc(100vh - var(--menuheight));margin:var(--size-plus6) 0 0 0;margin:var(--menuheight) 0 0 0}.block.media.--is-admin .flex-height{min-height:40vw}.block.media-header .grid-x{position:relative}.block.media-header .link-mask{position:absolute;z-index:3;top:0;left:0;width:100%;height:100%}.block.media-header .header-area{position:absolute;bottom:0;left:0;width:100%;padding:1.8rem;z-index:4;--black: var(--white)}@media print,screen and (min-width: 800px){.block.media-header .header-area{padding:3.6rem;width:40%}}.block.media-header .header-area p,.block.media-header .header-area h1,.block.media-header .header-area h2,.block.media-header .header-area h3,.block.media-header .header-area h4,.block.media-header .header-area h5,.block.media-header .header-area h6{color:var(--black);font-size:var(--size-plus2);margin:0}.block.media-header .header-area .cta .cta-container{gap:.9em;display:flex;align-items:center;text-transform:uppercase;font-weight:var(--weight-bold);color:var(--black);transition:all ease 500ms}.block.media-header .header-area .cta .cta-container img{position:relative;transform:none !important;height:1em;width:auto}.block.media-header .header-area .cta .cta-container:hover{color:var(--black);transform:translateX(0.9em)}.block.block-faq,.block.block-simpletextlist{background-color:var(--bg);margin-top:1.8rem;margin-bottom:0}@media print,screen and (min-width: 800px){.block.block-faq,.block.block-simpletextlist{margin-top:3.6rem}}.block.block-faq .simple-text-list-container,.block.block-simpletextlist .simple-text-list-container{background-color:var(--bg);padding-bottom:1.8rem;padding-top:1.8rem}@media print,screen and (min-width: 800px){.block.block-faq .simple-text-list-container,.block.block-simpletextlist .simple-text-list-container{padding-bottom:3.6rem;padding-top:3.6rem}}.block.block-faq .faq-container,.block.block-simpletextlist .faq-container{background-color:var(--bg);padding-bottom:.9rem;padding-top:.9rem}.block.block-faq .faq-container h2,.block.block-simpletextlist .faq-container h2{color:var(--black);margin:0}.block.block-faq .faq-container .question,.block.block-simpletextlist .faq-container .question{cursor:pointer;position:relative}.block.block-faq .faq-container .question h2,.block.block-simpletextlist .faq-container .question h2{transition:all ease 500ms}.block.block-faq .faq-container .question svg,.block.block-simpletextlist .faq-container .question svg{position:absolute;right:1.8rem;height:var(--size-plus2);width:auto;top:50%;transform:translateY(-50%);transition:all ease 500ms}.block.block-faq .faq-container .question:hover h2,.block.block-simpletextlist .faq-container .question:hover h2{transform:translateX(0.45em)}.block.block-faq .faq-container .question.active svg,.block.block-faq .faq-container .question:hover svg,.block.block-simpletextlist .faq-container .question.active svg,.block.block-simpletextlist .faq-container .question:hover svg{transform:translateY(-50%) rotate(180deg)}.block.block-faq .faq-container .answer,.block.block-simpletextlist .faq-container .answer{overflow:hidden;display:none}.block.block-faq .faq-container .answer-inner,.block.block-simpletextlist .faq-container .answer-inner{padding-top:3.6rem}@media print,screen and (min-width: 800px){.block.block-faq .faq-container .answer-inner,.block.block-simpletextlist .faq-container .answer-inner{padding-top:5.6rem}}.align-left{display:flex;justify-content:flex-start}.align-right{display:flex;justify-content:flex-end}.align-center{display:flex;justify-content:center}.align-justify{display:flex;justify-content:space-between}.align-spaced{display:flex;justify-content:space-around}.align-top{display:flex;align-items:flex-start}.align-middle{display:flex;align-items:center}.align-bottom{display:flex;align-items:flex-end}.align-stretch{display:flex;align-items:stretch}.small-align-left{display:flex;justify-content:flex-start}.small-align-right{display:flex;justify-content:flex-end}.small-align-center{display:flex;justify-content:center}.small-align-justify{display:flex;justify-content:space-between}.small-align-spaced{display:flex;justify-content:space-around}.small-align-top{display:flex;align-items:flex-start}.small-align-middle{display:flex;align-items:center}.small-align-bottom{display:flex;align-items:flex-end}.small-align-stretch{display:flex;align-items:stretch}@media screen and (min-width: 40em){.medium-align-left{display:flex;justify-content:flex-start}.medium-align-right{display:flex;justify-content:flex-end}.medium-align-center{display:flex;justify-content:center}.medium-align-justify{display:flex;justify-content:space-between}.medium-align-spaced{display:flex;justify-content:space-around}.medium-align-top{display:flex;align-items:flex-start}.medium-align-middle{display:flex;align-items:center}.medium-align-bottom{display:flex;align-items:flex-end}.medium-align-stretch{display:flex;align-items:stretch}}@media screen and (min-width: 64em){.large-align-left{display:flex;justify-content:flex-start}.large-align-right{display:flex;justify-content:flex-end}.large-align-center{display:flex;justify-content:center}.large-align-justify{display:flex;justify-content:space-between}.large-align-spaced{display:flex;justify-content:space-around}.large-align-top{display:flex;align-items:flex-start}.large-align-middle{display:flex;align-items:center}.large-align-bottom{display:flex;align-items:flex-end}.large-align-stretch{display:flex;align-items:stretch}}.caption-inline{margin:-0.9rem 0 1.8rem}.caption-inline.caption-margin{margin:.9rem 0 1.8rem}.staff-profile h4{margin:.9rem 0 .45rem;font-size:var(--size-plus1)}.staff-profile p{font-size:var(--size-plus0);margin:0}.block-spacer{height:calc(var(--height)*.5)}@media print,screen and (min-width: 800px){.block-spacer{height:var(--height)}}.news-single h3.h4{margin:.9rem 0}.news-single p{font-size:var(--size-plus0)}.news-single p a{text-decoration:underline}.block-projects-big .grid-container,.block-projects-big .grid-container .grid-x,.block-projects-big .grid-container .cell{position:relative}.block-projects-big .button-simple{margin-top:.9em}@media print,screen and (min-width: 800px){.block-projects-big .--sticky{height:100vh;height:calc(100vh - var(--header-height))}.block-projects-big .--sticky .text-meta{max-width:75%;margin-top:auto;display:flex;height:100%;flex-direction:column;flex-wrap:wrap;justify-content:flex-end;padding:3.6rem 0}}.block-projects-big .--sticky .text-meta span{color:var(--black)}.block-projects-big .--sticky .text-meta h2{font-size:var(--size-plus3);margin:.9rem 0}.block-projects-big .--sticky .text-meta p{margin:0;font-size:var(--size-plus1)}.block-projects-big .image-container{width:100%;height:150vh}.block-projects-big .image-container img,.block-projects-big .image-container video{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover}.block-stats{color:var(--black);padding-top:var(--header-height);padding-bottom:var(--header-height)}.block-stats .stats-panel{padding-right:1.8em}.block-stats .big-number{font-family:var(--header-font);font-size:var(--size-plus5);font-weight:var(--weight-normal);white-space:nowrap}.block-stats .big-number>span{display:inline}.block-stats h3{font-size:var(--size-plus2);margin:0 0 1.8em 0}.block-stats p{font-size:var(--size-plus0)}.line-break hr{margin:calc(var(--header-height)*.5) 0;width:100%;background:var(--black);border:none;height:1px;display:block;opacity:.33}footer hr{margin:calc(var(--header-height)*.5) 0;width:100%;background:var(--black);border:none;height:1px;display:block;opacity:.33}.footer-small{margin-top:3.6rem;margin-bottom:3.6rem}.footer-small p{font-size:var(--size-minus2);margin:0}.footer-small p a{text-decoration:underline}.donation-redirect .donation-amount-sections,.donation-redirect .donation-type-nav{width:100%;margin:0 0 .9em 0;display:flex;gap:.9em}@media print,screen and (min-width: 800px){.donation-redirect .donation-amount-sections,.donation-redirect .donation-type-nav{margin:0 0 1.8em 0;display:flex;gap:1.8em}}.donation-redirect .button{padding-left:1.8em;padding-right:1.8em;font-size:var(--size-plus0)}@media print,screen and (min-width: 800px){.donation-redirect .button{padding-left:2.35em;padding-right:2.35em}}.donation-redirect .amount-buttons{display:flex;flex-wrap:wrap;gap:.625em}@media print,screen and (min-width: 800px){.donation-redirect .amount-buttons{gap:1.35em}}.transparent-form .frm_form_field{margin-bottom:0}.transparent-form button{width:100% !important;text-align:center !important}.transparent-form input,.transparent-form textarea,.transparent-form .frm_style_formidable-style.with_frm_style .form-field input:not([type=file]):not([type=range]):not([readonly]):focus,.transparent-form .frm_style_formidable-style.with_frm_style select:focus,.transparent-form .frm_style_formidable-style.with_frm_style .form-field textarea:focus,.transparent-form .frm_style_formidable-style.with_frm_style .frm_focus_field input[type=text],.transparent-form .frm_style_formidable-style.with_frm_style .frm_focus_field input[type=password],.transparent-form .frm_style_formidable-style.with_frm_style .frm_focus_field input[type=email],.transparent-form .frm_style_formidable-style.with_frm_style .frm_focus_field input[type=number],.transparent-form .frm_style_formidable-style.with_frm_style .frm_focus_field input[type=url],.transparent-form .frm_style_formidable-style.with_frm_style .frm_focus_field input[type=tel],.transparent-form .frm_style_formidable-style.with_frm_style .frm_focus_field input[type=search],.transparent-form .frm_form_fields_active_style,.transparent-form .frm_style_formidable-style.with_frm_style .frm_focus_field .frm-card-element.StripeElement{background-color:rgba(0,0,0,0) !important;border:none !important;border-bottom:1px solid var(--black) !important;border-radius:0px !important;box-shadow:unset !important}#news-single,#news-grid{padding-top:var(--header-height);padding-bottom:var(--header-height)}@media print,screen and (min-width: 800px){#news-single,#news-grid{padding-top:calc(var(--header-height)*1.5);padding-bottom:calc(var(--header-height)*1.5)}}#news-single .cta-button{margin-bottom:calc(var(--header-height)*1.25)}@media print,screen and (min-width: 800px){#news-single .cta-button{margin-bottom:calc(var(--header-height)*.5)}}.category-list ul{list-style:none;padding:0;margin:0}.align-left{display:flex;justify-content:flex-start}.align-right{display:flex;justify-content:flex-end}.align-center{display:flex;justify-content:center}.align-justify{display:flex;justify-content:space-between}.align-spaced{display:flex;justify-content:space-around}.align-top{display:flex;align-items:flex-start}.align-middle{display:flex;align-items:center}.align-bottom{display:flex;align-items:flex-end}.align-stretch{display:flex;align-items:stretch}.small-align-left{display:flex;justify-content:flex-start}.small-align-right{display:flex;justify-content:flex-end}.small-align-center{display:flex;justify-content:center}.small-align-justify{display:flex;justify-content:space-between}.small-align-spaced{display:flex;justify-content:space-around}.small-align-top{display:flex;align-items:flex-start}.small-align-middle{display:flex;align-items:center}.small-align-bottom{display:flex;align-items:flex-end}.small-align-stretch{display:flex;align-items:stretch}@media screen and (min-width: 40em){.medium-align-left{display:flex;justify-content:flex-start}.medium-align-right{display:flex;justify-content:flex-end}.medium-align-center{display:flex;justify-content:center}.medium-align-justify{display:flex;justify-content:space-between}.medium-align-spaced{display:flex;justify-content:space-around}.medium-align-top{display:flex;align-items:flex-start}.medium-align-middle{display:flex;align-items:center}.medium-align-bottom{display:flex;align-items:flex-end}.medium-align-stretch{display:flex;align-items:stretch}}@media screen and (min-width: 64em){.large-align-left{display:flex;justify-content:flex-start}.large-align-right{display:flex;justify-content:flex-end}.large-align-center{display:flex;justify-content:center}.large-align-justify{display:flex;justify-content:space-between}.large-align-spaced{display:flex;justify-content:space-around}.large-align-top{display:flex;align-items:flex-start}.large-align-middle{display:flex;align-items:center}.large-align-bottom{display:flex;align-items:flex-end}.large-align-stretch{display:flex;align-items:stretch}}.grid-x{width:100%}blockquote{padding:0;margin:0 auto;border:none !important;padding-top:1.8rem;padding-bottom:1.8rem;text-align:left;position:relative;z-index:2}blockquote>p{margin-bottom:0}blockquote p a,blockquote cite{text-align:left;font-family:var(--header-font);font-weight:var(--weight-normal);line-height:var(--header-line-height);font-style:italic;text-transform:none;display:block;font-size:.8125rem;padding:.9rem 0}blockquote p a:before,blockquote cite:before{content:"— "}blockquote p a,blockquote p a a,blockquote cite,blockquote cite a{color:inherit;text-decoration:none}blockquote:before{content:"“";font-family:var(--header-font);font-weight:var(--weight-normal);line-height:var(--header-line-height);position:absolute;top:1.8rem;left:-2.7rem;font-size:15vh;color:var(--black);z-index:-1;line-height:.66;z-index:1;opacity:.066;font-style:normal}.no-padding{padding-top:0 !important;padding-bottom:0 !important}.donation-tracker{position:fixed;bottom:0;padding:1.8em 0;left:0;background-color:var(--bg);z-index:9999;width:100%;min-height:2.7em}.donation-tracker h1,.donation-tracker span{margin:0;font-size:var(--size-minus1)}.donation-tracker .counter{margin-right:1.8em}.donation-tracker .button{--brand: var(--blue);--black: var(--blue)}.donation-tracker .tracker{position:absolute;left:0;top:0;background-color:var(--mediumgrey);height:4px;width:100%}.donation-tracker .tracker .bar{position:absolute;left:0;height:100%;background-color:var(--blue);bottom:0;width:var(--width)}article a{text-decoration:underline}.footer-small p a.back-to-top,.back-to-top{text-decoration:none;text-transform:uppercase;font-weight:var(--weight-bold);display:inline-flex;gap:.45em}.footer-small p a.back-to-top svg,.back-to-top svg{height:1.325em;width:auto}.footer-small p a.back-to-top span,.back-to-top span{display:inline-block}.counter-donate-container{display:flex;gap:.45em;flex-direction:row;align-items:center}.donation-form-container{display:flex;gap:.45em;flex-direction:row}.donation-form-container .donation-form{display:flex;flex-direction:row;gap:.9em}.donation-form-container .form-group{display:flex;flex-direction:column;gap:.9em}.donation-form-container .donation-select{min-width:150px;padding:12px 16px;border:none;border-radius:8px;font-size:16px;background:#fff;color:#333;cursor:pointer;transition:all .3s ease;appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6,9 12,15 18,9'%3e%3c/polyline%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right 12px center;background-size:20px;padding-right:45px;font-size:var(--size-minus1)}.donation-form-container .donation-select:focus{outline:none;box-shadow:0 0 0 3px hsla(0,0%,100%,.3)}.donation-form-container .donation-select:hover{box-shadow:0 4px 15px rgba(0,0,0,.15)}.donation-form-container .donate-button{cursor:pointer}.donation-form-container .donate-button:active{box-shadow:0 2px 10px rgba(9,9,9,.2)}

/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VSb290IjoiaHR0cHM6Ly9kZXYubmVlZHRoaW5raW5nLmNvbS93aWxkL2FwcC90aGVtZXMvbmVlZC9hc3NldHMvc2NzcyIsInNvdXJjZXMiOlsiZmlsZTovLy92YXIvd3d3L2h0bWwvbGVvbm1hY2xhcmVuYXJ0dHJ1c3QvYXBwL3RoZW1lcy9zdGlydGluZ2FsZS9hc3NldHMvc2Nzcy90aGVtZS5zY3NzIiwiZmlsZTovLy92YXIvd3d3L2h0bWwvbGVvbm1hY2xhcmVuYXJ0dHJ1c3QvYXBwL3RoZW1lcy9zdGlydGluZ2FsZS9hc3NldHMvc2Nzcy9mb3VuZGF0aW9uL3ZlbmRvci9ub3JtYWxpemUuc2NzcyIsImZpbGU6Ly8vdmFyL3d3dy9odG1sL2xlb25tYWNsYXJlbmFydHRydXN0L2FwcC90aGVtZXMvc3RpcnRpbmdhbGUvYXNzZXRzL3Njc3MvZm91bmRhdGlvbi9fZ2xvYmFsLnNjc3MiLCJmaWxlOi8vL3Zhci93d3cvaHRtbC9sZW9ubWFjbGFyZW5hcnR0cnVzdC9hcHAvdGhlbWVzL3N0aXJ0aW5nYWxlL2Fzc2V0cy9zY3NzL2ZvdW5kYXRpb24vdXRpbC9fdW5pdC5zY3NzIiwiZmlsZTovLy92YXIvd3d3L2h0bWwvbGVvbm1hY2xhcmVuYXJ0dHJ1c3QvYXBwL3RoZW1lcy9zdGlydGluZ2FsZS9hc3NldHMvc2Nzcy9mb3VuZGF0aW9uL3V0aWwvX21peGlucy5zY3NzIiwiZmlsZTovLy92YXIvd3d3L2h0bWwvbGVvbm1hY2xhcmVuYXJ0dHJ1c3QvYXBwL3RoZW1lcy9zdGlydGluZ2FsZS9hc3NldHMvc2Nzcy9mb3VuZGF0aW9uL3h5LWdyaWQvX2NsYXNzZXMuc2NzcyIsImZpbGU6Ly8vdmFyL3d3dy9odG1sL2xlb25tYWNsYXJlbmFydHRydXN0L2FwcC90aGVtZXMvc3RpcnRpbmdhbGUvYXNzZXRzL3Njc3MvZm91bmRhdGlvbi94eS1ncmlkL19ndXR0ZXJzLnNjc3MiLCJmaWxlOi8vL3Zhci93d3cvaHRtbC9sZW9ubWFjbGFyZW5hcnR0cnVzdC9hcHAvdGhlbWVzL3N0aXJ0aW5nYWxlL2Fzc2V0cy9zY3NzL2ZvdW5kYXRpb24veHktZ3JpZC9fZ3JpZC5zY3NzIiwiZmlsZTovLy92YXIvd3d3L2h0bWwvbGVvbm1hY2xhcmVuYXJ0dHJ1c3QvYXBwL3RoZW1lcy9zdGlydGluZ2FsZS9hc3NldHMvc2Nzcy9mb3VuZGF0aW9uL3h5LWdyaWQvX2NlbGwuc2NzcyIsImZpbGU6Ly8vdmFyL3d3dy9odG1sL2xlb25tYWNsYXJlbmFydHRydXN0L2FwcC90aGVtZXMvc3RpcnRpbmdhbGUvYXNzZXRzL3Njc3MvZm91bmRhdGlvbi91dGlsL19icmVha3BvaW50LnNjc3MiLCJmaWxlOi8vL3Zhci93d3cvaHRtbC9sZW9ubWFjbGFyZW5hcnR0cnVzdC9hcHAvdGhlbWVzL3N0aXJ0aW5nYWxlL2Fzc2V0cy9zY3NzL2ZvdW5kYXRpb24veHktZ3JpZC9fbGF5b3V0LnNjc3MiLCJmaWxlOi8vL3Zhci93d3cvaHRtbC9sZW9ubWFjbGFyZW5hcnR0cnVzdC9hcHAvdGhlbWVzL3N0aXJ0aW5nYWxlL2Fzc2V0cy9zY3NzL2ZvdW5kYXRpb24veHktZ3JpZC9fY29sbGFwc2Uuc2NzcyIsImZpbGU6Ly8vdmFyL3d3dy9odG1sL2xlb25tYWNsYXJlbmFydHRydXN0L2FwcC90aGVtZXMvc3RpcnRpbmdhbGUvYXNzZXRzL3Njc3MvZm91bmRhdGlvbi94eS1ncmlkL19wb3NpdGlvbi5zY3NzIiwiZmlsZTovLy92YXIvd3d3L2h0bWwvbGVvbm1hY2xhcmVuYXJ0dHJ1c3QvYXBwL3RoZW1lcy9zdGlydGluZ2FsZS9hc3NldHMvc2Nzcy9mb3VuZGF0aW9uL3h5LWdyaWQvX2ZyYW1lLnNjc3MiLCJmaWxlOi8vL3Zhci93d3cvaHRtbC9sZW9ubWFjbGFyZW5hcnR0cnVzdC9hcHAvdGhlbWVzL3N0aXJ0aW5nYWxlL2Fzc2V0cy9zY3NzL2ZvdW5kYXRpb24vY29tcG9uZW50cy9fZmxleC5zY3NzIiwiZmlsZTovLy92YXIvd3d3L2h0bWwvbGVvbm1hY2xhcmVuYXJ0dHJ1c3QvYXBwL3RoZW1lcy9zdGlydGluZ2FsZS9hc3NldHMvc2Nzcy9mb3VuZGF0aW9uL3V0aWwvX2ZsZXguc2NzcyIsImZpbGU6Ly8vdmFyL3d3dy9odG1sL2xlb25tYWNsYXJlbmFydHRydXN0L2FwcC90aGVtZXMvc3RpcnRpbmdhbGUvYXNzZXRzL3Njc3MvZm91bmRhdGlvbi9jb21wb25lbnRzL192aXNpYmlsaXR5LnNjc3MiLCJmaWxlOi8vL3Zhci93d3cvaHRtbC9sZW9ubWFjbGFyZW5hcnR0cnVzdC9hcHAvdGhlbWVzL3N0aXJ0aW5nYWxlL2Fzc2V0cy9zY3NzL3NhbC5zY3NzIiwiZmlsZTovLy92YXIvd3d3L2h0bWwvbGVvbm1hY2xhcmVuYXJ0dHJ1c3QvYXBwL3RoZW1lcy9zdGlydGluZ2FsZS9hc3NldHMvc2Nzcy9zd2lwZS5zY3NzIiwiZmlsZTovLy92YXIvd3d3L2h0bWwvbGVvbm1hY2xhcmVuYXJ0dHJ1c3QvYXBwL3RoZW1lcy9zdGlydGluZ2FsZS9hc3NldHMvc2Nzcy9hcHAuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQ0FNUSxtS0FFUixrQ0FJQywwQ0FDQSxvRUFDQSx3QkFDQSw0QkFDQSxxQkFDQSxtQkFFQSx3QkFDQSwrQkFFQSx5Q0FFQSx3QkFDQSx3QkFDQSxhQUNBLHNCQUNBLHdCQUNBLDBCQUNBLDRCQUNBLDhCQUNBLDhCQUNBLDZCQUNBLDhCQUNBLDhCQUNBLCtCQW1CQSxpQkFDQSxjQUNBLHlCQUNBLGlCQUNBLDhCQUNBLDRCQUNBLDhCQUNBLDhCQUNBLHdCQUNBLDRCQUNBLGVBQ0EsZ0JBQ0Esb0JBQ0Esa0JBQ0EsaUJBaENBLDJDQTdCRCxrQ0ErQkUsMkJBRUEsa0JBQ0EscUJBQ0EsdUJBQ0EseUJBQ0EsMkJBQ0EsNkJBQ0EsNkJBQ0EsNEJBQ0EsNkJBQ0EsNkJBQ0EsK0JBc0JGLDJCQUNDLHVCQUNBLHlCQUNBLGlCQUdELDBCQUNDLGlCQUNBLHlCQUNBLGlCQUdELDJCQUNDLGtCQUNBLHlCQUNBLGlCQUdELDZCQUNDLG9CQUNBLHlCQUNBLGlCQUdELDRCQUNDLG1CQUNBLHlCQUNBLGlCQUlELGtCQUNDLGlCQUdELGlCQUNDLG9CQUdELGtCQUNDLHFCQUdELG9CQUNDLHVCQUdELG1CQUNDLHNCQ3RIQyw0RUFRQSxLQUNFLGlCQUNBLDhCQVFGLEtBQ0UsU0FNRixHQUNFLGNBQ0EsZUFTRixHQUNFLHVCQUNBLFNBQ0EsaUJBTUYsSUFDRSxnQ0FDQSxjQVFGLEVBQ0UsK0JBTUYsWUFDRSxnQkFDQSxpQ0FLRixTQUVFLG1CQU1GLGNBR0UsZ0NBQ0EsY0FLRixNQUNFLGNBTUYsUUFFRSxjQUNBLGNBQ0Esa0JBQ0Esd0JBR0YsSUFDRSxlQUdGLElBQ0UsV0FRRixJQUNFLGtCQVNGLHNDQUtFLG9CQUNBLGVBQ0EsaUJBQ0EsU0FNRixhQUVFLGlCQU1GLGNBRUUsb0JBS0YsZ0RBSUUsMEJBS0Ysd0hBSUUsa0JBQ0EsVUFLRiw0R0FJRSw4QkFLRixTQUNFLDJCQVFGLE9BQ0Usc0JBQ0EsY0FDQSxjQUNBLGVBQ0EsVUFDQSxtQkFLRixTQUNFLHdCQUtGLFNBQ0UsY0FNRiw2QkFFRSxzQkFDQSxVQUtGLGtGQUVFLFlBTUYsY0FDRSw2QkFDQSxvQkFLRix5Q0FDRSx3QkFNRiw2QkFDRSwwQkFDQSxhQVFGLFFBQ0UsY0FLRixRQUNFLGtCQVFGLFNBQ0UsYUFLRixTQUNFLGFBUUEsb09BQ0UsYUFLSixrQkFDRSwyQkFDQSx5QkN4SkYsZUFDRSx3RUFHRixLQUNFLHNCQUNBLFVDekllLEtENklqQixxQkFHRSxtQkFJRixLQUNFLFNBQ0EsVUFVQSxXQXhISSxRQTBISixZQTlHZSxtREErR2YsWUF2Rm1CLE9Bd0ZuQixZQTFKZ0IsSUEySmhCLE1BaklJLFFBb0lGLG1DQUNBLGtDQUlKLElBRUUscUJBQ0Esc0JBR0EsZUFDQSxZQUNBLCtCQUlGLFNBQ0UsWUFDQSxnQkFDQSxjQXhHWSxFQTRHZCxPQUNFLHNCQUNBLFdBQ0EsY0EvR1ksRUFzSFosNkdBR0UsMEJBS0osT0FFRSxVQUNBLGdCQUNBLFNBQ0EsY0FuSVksRUFvSVoseUJBQ0EsY0FDQSxPQS9HbUIsS0VrRnJCLDhCQUNFLFVGZ0NGLElBQ0UsY0FDQSxpQ0FJRixzQ0FLRSxvQkFJRixZQUNFLHlCQUdGLFdBQ0Usd0JHbFBGLGdCQzZCSSx5Q0N2QkosZ0JBQ0EsaUJBQ0Esa0JGTEUsc0JDMEJFLHlDQ3ZCSixVRkYrQixLRUcvQixpQkFDQSxrQkZERSxxQkNzQkUsK0JDdkJKLFVGRStCLEtFRC9CLGlCQUNBLGtCRktBLFFFU0EsYUFDQSxtQkZOQSxNR3FHQSxjQUlFLGFBQ0EsWUFzQ0EsTUFUTSxLSHBJTixXR2tHRixXSDlGRSxhRzhGRixjSHhGRSxjR21JQSxNQVRNLEtIdEhOLGdCRytIQSxNQVRNLEtIdEdKLHlQQUNFLGdCSW9IQSwwQ0pySEYsdVFBQ0UsaUJJb0hBLDBDSnJIRix5UEFDRSxpQkFhSiwrTUdzREYsY0h2Q0ksaUJHa0ZGLE1BVE0sY0h6RUosaUJHa0ZGLE1BVE0sZUh6RUosaUJHa0ZGLE1BVE0sSUh6RUosaUJHa0ZGLE1BVE0sZUh6RUosaUJHa0ZGLE1BVE0sZUh6RUosaUJHa0ZGLE1BVE0sSUh6RUosaUJHa0ZGLE1BVE0sZUh6RUosaUJHa0ZGLE1BVE0sZUh6RUosaUJHa0ZGLE1BVE0sSUh6RUosa0JHa0ZGLE1BVE0sZUh6RUosa0JHa0ZGLE1BVE0sZUh6RUosa0JHa0ZGLE1BVE0sS0NlRiwwQ0o1R0YscUJHMkRKLFdBMkNFLE1BVE0sS0h4Rk4sa1BHc0RGLGNIaERJLHVCRzJGRixNQVRNLEtIekVKLGtCR2tGRixNQVRNLGNIekVKLGtCR2tGRixNQVRNLGVIekVKLGtCR2tGRixNQVRNLElIekVKLGtCR2tGRixNQVRNLGVIekVKLGtCR2tGRixNQVRNLGVIekVKLGtCR2tGRixNQVRNLElIekVKLGtCR2tGRixNQVRNLGVIekVKLGtCR2tGRixNQVRNLGVIekVKLGtCR2tGRixNQVRNLElIekVKLG1CR2tGRixNQVRNLGVIekVKLG1CR2tGRixNQVRNLGVIekVKLG1CR2tGRixNQVRNLE1DZUYsMENKNUdGLG9CRzJESixXQTJDRSxNQVRNLEtIeEZOLHFPR3NERixjSGhESSxzQkcyRkYsTUFUTSxLSHpFSixpQkdrRkYsTUFUTSxjSHpFSixpQkdrRkYsTUFUTSxlSHpFSixpQkdrRkYsTUFUTSxJSHpFSixpQkdrRkYsTUFUTSxlSHpFSixpQkdrRkYsTUFUTSxlSHpFSixpQkdrRkYsTUFUTSxJSHpFSixpQkdrRkYsTUFUTSxlSHpFSixpQkdrRkYsTUFUTSxlSHpFSixpQkdrRkYsTUFUTSxJSHpFSixrQkdrRkYsTUFUTSxlSHpFSixrQkdrRkYsTUFUTSxlSHpFSixrQkdrRkYsTUFUTSxNSGpFUixrQ0FDRSxXQUlGLGtDQUNFLFlBOEJGLGVDOUZJLHlDRGtHRixxQkdrQ0EsTUFUTSxvQkYzSEosdUNEc0VKLHFCRzhERSxNQVRNLEtIakRSLHVCRzBERSxNQVRNLEtIekNOLHdCR2tEQSxNQVRNLDZCSHpDTix3QkdrREEsTUFUTSw4Qkh6Q04sd0JHa0RBLE1BVE0sbUJIekNOLHdCR2tEQSxNQVRNLDhCSHpDTix3QkdrREEsTUFUTSw4Qkh6Q04sd0JHa0RBLE1BVE0sbUJIekNOLHdCR2tEQSxNQVRNLDhCSHpDTix3QkdrREEsTUFUTSw4Qkh6Q04sd0JHa0RBLE1BVE0sbUJIekNOLHlCR2tEQSxNQVRNLDhCSHpDTix5QkdrREEsTUFUTSw4Qkh6Q04seUJHa0RBLE1BVE0sb0JDZUYsMENKcEVOLDRCRzhERSxNQVRNLEtIakRSLDhCRzBERSxNQVRNLEtIekNOLHlCR2tEQSxNQVRNLDZCSHpDTix5QkdrREEsTUFUTSw4Qkh6Q04seUJHa0RBLE1BVE0sbUJIekNOLHlCR2tEQSxNQVRNLDhCSHpDTix5QkdrREEsTUFUTSw4Qkh6Q04seUJHa0RBLE1BVE0sbUJIekNOLHlCR2tEQSxNQVRNLDhCSHpDTix5QkdrREEsTUFUTSw4Qkh6Q04seUJHa0RBLE1BVE0sbUJIekNOLDBCR2tEQSxNQVRNLDhCSHpDTiwwQkdrREEsTUFUTSw4Qkh6Q04sMEJHa0RBLE1BVE0scUJDZUYsMENKcEVOLDJCRzhERSxNQVRNLEtIakRSLDZCRzBERSxNQVRNLEtIekNOLHdCR2tEQSxNQVRNLDZCSHpDTix3QkdrREEsTUFUTSw4Qkh6Q04sd0JHa0RBLE1BVE0sbUJIekNOLHdCR2tEQSxNQVRNLDhCSHpDTix3QkdrREEsTUFUTSw4Qkh6Q04sd0JHa0RBLE1BVE0sbUJIekNOLHdCR2tEQSxNQVRNLDhCSHpDTix3QkdrREEsTUFUTSw4Qkh6Q04sd0JHa0RBLE1BVE0sbUJIekNOLHlCR2tEQSxNQVRNLDhCSHpDTix5QkdrREEsTUFUTSw4Qkh6Q04seUJHa0RBLE1BVE0scUJIVU4sZ0NDcklFLHlDRDJJRiwyQ0MzSUUseUNEZ0pGLHNCQ2hKRSx5Q0lUSixrQkY2SUUsTUFUTSxLRXBJUixrQkY2SUUsTUFUTSxJRXBJUixrQkY2SUUsTUFUTSxlRXBJUixrQkY2SUUsTUFUTSxJRXBJUixrQkY2SUUsTUFUTSxJRXBJUixrQkY2SUUsTUFUTSxlRXBJUixrQkY2SUUsTUFUTSxlRXBJUixrQkY2SUUsTUFUTSxNQ2VGLDBDQ25KTixtQkY2SUUsTUFUTSxLRXBJUixtQkY2SUUsTUFUTSxJRXBJUixtQkY2SUUsTUFUTSxlRXBJUixtQkY2SUUsTUFUTSxJRXBJUixtQkY2SUUsTUFUTSxJRXBJUixtQkY2SUUsTUFUTSxlRXBJUixtQkY2SUUsTUFUTSxlRXBJUixtQkY2SUUsTUFUTSxPQ2VGLDBDQ25KTixrQkY2SUUsTUFUTSxLRXBJUixrQkY2SUUsTUFUTSxJRXBJUixrQkY2SUUsTUFUTSxlRXBJUixrQkY2SUUsTUFUTSxJRXBJUixrQkY2SUUsTUFUTSxJRXBJUixrQkY2SUUsTUFUTSxlRXBJUixrQkY2SUUsTUFUTSxlRXBJUixrQkY2SUUsTUFUTSxPRXBJUixnQ0Y2SUUsTUFUTSxvQkVwSVIsZ0NGNklFLE1BVE0sbUJFcElSLGdDRjZJRSxNQVRNLDhCRXBJUixnQ0Y2SUUsTUFUTSxtQkVwSVIsZ0NGNklFLE1BVE0sbUJFcElSLGdDRjZJRSxNQVRNLDhCRXBJUixnQ0Y2SUUsTUFUTSw4QkVwSVIsZ0NGNklFLE1BVE0scUJDZUYsMENDbkpOLGlDRjZJRSxNQVRNLG9CRXBJUixpQ0Y2SUUsTUFUTSxtQkVwSVIsaUNGNklFLE1BVE0sOEJFcElSLGlDRjZJRSxNQVRNLG1CRXBJUixpQ0Y2SUUsTUFUTSxtQkVwSVIsaUNGNklFLE1BVE0sOEJFcElSLGlDRjZJRSxNQVRNLDhCRXBJUixpQ0Y2SUUsTUFUTSxzQkNlRiwwQ0NuSk4sZ0NGNklFLE1BVE0sb0JFcElSLGdDRjZJRSxNQVRNLG1CRXBJUixnQ0Y2SUUsTUFUTSw4QkVwSVIsZ0NGNklFLE1BVE0sbUJFcElSLGdDRjZJRSxNQVRNLG1CRXBJUixnQ0Y2SUUsTUFUTSw4QkVwSVIsZ0NGNklFLE1BVE0sOEJFcElSLGdDRjZJRSxNQVRNLHNCSG1FSix1Qk05TUUsNkJBR0YsNkJBRUksNkJBc0JFLGdDSHlIUixNQVRNLGNHaEhFLGdDSHlIUixNQVRNLGVHaEhFLGdDSHlIUixNQVRNLElHaEhFLGdDSHlIUixNQVRNLGVHaEhFLGdDSHlIUixNQVRNLGVHaEhFLGdDSHlIUixNQVRNLElHaEhFLGdDSHlIUixNQVRNLGVHaEhFLGdDSHlIUixNQVRNLGVHaEhFLGdDSHlIUixNQVRNLElHaEhFLGlDSHlIUixNQVRNLGVHaEhFLGlDSHlIUixNQVRNLGVHaEhFLGlDSHlIUixNQVRNLEtDZUYsMENFL0hJLGlDSHlIUixNQVRNLGNHaEhFLGlDSHlIUixNQVRNLGVHaEhFLGlDSHlIUixNQVRNLElHaEhFLGlDSHlIUixNQVRNLGVHaEhFLGlDSHlIUixNQVRNLGVHaEhFLGlDSHlIUixNQVRNLElHaEhFLGlDSHlIUixNQVRNLGVHaEhFLGlDSHlIUixNQVRNLGVHaEhFLGlDSHlIUixNQVRNLElHaEhFLGtDSHlIUixNQVRNLGVHaEhFLGtDSHlIUixNQVRNLGVHaEhFLGtDSHlIUixNQVRNLE1DZUYsMENFL0hJLGdDSHlIUixNQVRNLGNHaEhFLGdDSHlIUixNQVRNLGVHaEhFLGdDSHlIUixNQVRNLElHaEhFLGdDSHlIUixNQVRNLGVHaEhFLGdDSHlIUixNQVRNLGVHaEhFLGdDSHlIUixNQVRNLElHaEhFLGdDSHlIUixNQVRNLGVHaEhFLGdDSHlIUixNQVRNLGVHaEhFLGdDSHlIUixNQVRNLElHaEhFLGlDSHlIUixNQVRNLGVHaEhFLGlDSHlIUixNQVRNLGVHaEhFLGlDSHlIUixNQVRNLE1IeUVKLHdCTTdLRSw2QkFHRiw4QkFFSSwrQkY4R0YsMENKb0RGLHdCTTlNRSw2QkFHRiw4QkFFSSw4QkZxSkYsMENFeElJLGlDSGtJUixNQVRNLGNHekhFLGlDSGtJUixNQVRNLGVHekhFLGlDSGtJUixNQVRNLElHekhFLGlDSGtJUixNQVRNLGVHekhFLGlDSGtJUixNQVRNLGVHekhFLGlDSGtJUixNQVRNLElHekhFLGlDSGtJUixNQVRNLGVHekhFLGlDSGtJUixNQVRNLGVHekhFLGlDSGtJUixNQVRNLElHekhFLGtDSGtJUixNQVRNLGVHekhFLGtDSGtJUixNQVRNLGVHekhFLGtDSGtJUixNQVRNLE1DZUYsMENFL0hJLGtDSHlIUixNQVRNLGNHaEhFLGtDSHlIUixNQVRNLGVHaEhFLGtDSHlIUixNQVRNLElHaEhFLGtDSHlIUixNQVRNLGVHaEhFLGtDSHlIUixNQVRNLGVHaEhFLGtDSHlIUixNQVRNLElHaEhFLGtDSHlIUixNQVRNLGVHaEhFLGtDSHlIUixNQVRNLGVHaEhFLGtDSHlIUixNQVRNLElHaEhFLG1DSHlIUixNQVRNLGVHaEhFLG1DSHlIUixNQVRNLGVHaEhFLG1DSHlIUixNQVRNLE1DZUYsMENFL0hJLGlDSHlIUixNQVRNLGNHaEhFLGlDSHlIUixNQVRNLGVHaEhFLGlDSHlIUixNQVRNLElHaEhFLGlDSHlIUixNQVRNLGVHaEhFLGlDSHlIUixNQVRNLGVHaEhFLGlDSHlIUixNQVRNLElHaEhFLGlDSHlIUixNQVRNLGVHaEhFLGlDSHlIUixNQVRNLGVHaEhFLGlDSHlIUixNQVRNLElHaEhFLGtDSHlIUixNQVRNLGVHaEhFLGtDSHlIUixNQVRNLGVHaEhFLGtDSHlIUixNQVRNLE1DZUYsMENKMERGLHlCTTdLRSw2QkFHRiwrQkFFSSxnQ0Y4R0YsMENKb0RGLHVCTTlNRSw2QkFHRiw2QkFFSSw4QkZxSkYsMENFeElJLGdDSGtJUixNQVRNLGNHekhFLGdDSGtJUixNQVRNLGVHekhFLGdDSGtJUixNQVRNLElHekhFLGdDSGtJUixNQVRNLGVHekhFLGdDSGtJUixNQVRNLGVHekhFLGdDSGtJUixNQVRNLElHekhFLGdDSGtJUixNQVRNLGVHekhFLGdDSGtJUixNQVRNLGVHekhFLGdDSGtJUixNQVRNLElHekhFLGlDSGtJUixNQVRNLGVHekhFLGlDSGtJUixNQVRNLGVHekhFLGlDSGtJUixNQVRNLE1DZUYsMENFeElJLGlDSGtJUixNQVRNLGNHekhFLGlDSGtJUixNQVRNLGVHekhFLGlDSGtJUixNQVRNLElHekhFLGlDSGtJUixNQVRNLGVHekhFLGlDSGtJUixNQVRNLGVHekhFLGlDSGtJUixNQVRNLElHekhFLGlDSGtJUixNQVRNLGVHekhFLGlDSGtJUixNQVRNLGVHekhFLGlDSGtJUixNQVRNLElHekhFLGtDSGtJUixNQVRNLGVHekhFLGtDSGtJUixNQVRNLGVHekhFLGtDSGtJUixNQVRNLE1DZUYsMENFL0hJLGdDSHlIUixNQVRNLGNHaEhFLGdDSHlIUixNQVRNLGVHaEhFLGdDSHlIUixNQVRNLElHaEhFLGdDSHlIUixNQVRNLGVHaEhFLGdDSHlIUixNQVRNLGVHaEhFLGdDSHlIUixNQVRNLElHaEhFLGdDSHlIUixNQVRNLGVHaEhFLGdDSHlIUixNQVRNLGVHaEhFLGdDSHlIUixNQVRNLElHaEhFLGlDSHlIUixNQVRNLGVHaEhFLGlDSHlIUixNQVRNLGVHaEhFLGlDSHlIUixNQVRNLE1DZUYsMENKMERGLHdCTTdLRSw2QkFHRiw4QkFFSSxnQ05zTEosZ0JPbk1GLGVQdU1FLCtCT3ZNRixrQ1BtTUUsZ0JPbk1GLDBCUHVNRSwrQk92TUYsNkNQbU1FLGdCT25NRiwyQlB1TUUsK0JPdk1GLDhDUG1NRSxnQk9uTUYsZ0JQdU1FLCtCT3ZNRixtQ1BtTUUsZ0JPbk1GLDJCUHVNRSwrQk92TUYsOENQbU1FLGdCT25NRiwyQlB1TUUsK0JPdk1GLDhDUG1NRSxnQk9uTUYsZ0JQdU1FLCtCT3ZNRixtQ1BtTUUsZ0JPbk1GLDJCUHVNRSwrQk92TUYsOENQbU1FLGdCT25NRiwyQlB1TUUsK0JPdk1GLDhDUG1NRSxnQk9uTUYsZ0JQdU1FLCtCT3ZNRixtQ1BtTUUsaUJPbk1GLDJCUHVNRSxnQ092TUYsOENQbU1FLGlCT25NRiwyQlB1TUUsZ0NPdk1GLDhDSDJISSwwQ0p3RUYsaUJPbk1GLGVQdU1FLGdDT3ZNRixrQ1BtTUUsaUJPbk1GLDBCUHVNRSxnQ092TUYsNkNQbU1FLGlCT25NRiwyQlB1TUUsZ0NPdk1GLDhDUG1NRSxpQk9uTUYsZ0JQdU1FLGdDT3ZNRixtQ1BtTUUsaUJPbk1GLDJCUHVNRSxnQ092TUYsOENQbU1FLGlCT25NRiwyQlB1TUUsZ0NPdk1GLDhDUG1NRSxpQk9uTUYsZ0JQdU1FLGdDT3ZNRixtQ1BtTUUsaUJPbk1GLDJCUHVNRSxnQ092TUYsOENQbU1FLGlCT25NRiwyQlB1TUUsZ0NPdk1GLDhDUG1NRSxpQk9uTUYsZ0JQdU1FLGdDT3ZNRixtQ1BtTUUsa0JPbk1GLDJCUHVNRSxpQ092TUYsOENQbU1FLGtCT25NRiwyQlB1TUUsaUNPdk1GLCtDSDJISSwwQ0p3RUYsZ0JPbk1GLGVQdU1FLCtCT3ZNRixrQ1BtTUUsZ0JPbk1GLDBCUHVNRSwrQk92TUYsNkNQbU1FLGdCT25NRiwyQlB1TUUsK0JPdk1GLDhDUG1NRSxnQk9uTUYsZ0JQdU1FLCtCT3ZNRixtQ1BtTUUsZ0JPbk1GLDJCUHVNRSwrQk92TUYsOENQbU1FLGdCT25NRiwyQlB1TUUsK0JPdk1GLDhDUG1NRSxnQk9uTUYsZ0JQdU1FLCtCT3ZNRixtQ1BtTUUsZ0JPbk1GLDJCUHVNRSwrQk92TUYsOENQbU1FLGdCT25NRiwyQlB1TUUsK0JPdk1GLDhDUG1NRSxnQk9uTUYsZ0JQdU1FLCtCT3ZNRixtQ1BtTUUsaUJPbk1GLDJCUHVNRSxnQ092TUYsOENQbU1FLGlCT25NRiwyQlB1TUUsZ0NPdk1GLCtDUHlORixRRS9PQSxhQUNBLHdCRmtQRSxjR3JJRixZQUNBLGdCSHdJRSxjRzVHQSxPQVRNLEtIeUhOLGdCR2hIQSxPQVRNLEtIdUlKLHlQQUNFLGdCSXpIQSwwQ0p3SEYsdVFBQ0UsaUJJekhBLDBDSndIRix5UEFDRSxpQkFZRiwrTUd0TEosY0hxTU0saUJHMUpKLE9BVE0sY0htS0YsaUJHMUpKLE9BVE0sZUhtS0YsaUJHMUpKLE9BVE0sSUhtS0YsaUJHMUpKLE9BVE0sZUhtS0YsaUJHMUpKLE9BVE0sZUhtS0YsaUJHMUpKLE9BVE0sSUhtS0YsaUJHMUpKLE9BVE0sZUhtS0YsaUJHMUpKLE9BVE0sZUhtS0YsaUJHMUpKLE9BVE0sSUhtS0Ysa0JHMUpKLE9BVE0sZUhtS0Ysa0JHMUpKLE9BVE0sZUhtS0Ysa0JHMUpKLE9BVE0sS0NlRiwwQ0pnSUEscUJHakxOLFdBMkNFLE9BVE0sS0hvSkosa1BHdExKLGNINExNLHVCR2pKSixPQVRNLEtIbUtGLGtCRzFKSixPQVRNLGNIbUtGLGtCRzFKSixPQVRNLGVIbUtGLGtCRzFKSixPQVRNLElIbUtGLGtCRzFKSixPQVRNLGVIbUtGLGtCRzFKSixPQVRNLGVIbUtGLGtCRzFKSixPQVRNLElIbUtGLGtCRzFKSixPQVRNLGVIbUtGLGtCRzFKSixPQVRNLGVIbUtGLGtCRzFKSixPQVRNLElIbUtGLG1CRzFKSixPQVRNLGVIbUtGLG1CRzFKSixPQVRNLGVIbUtGLG1CRzFKSixPQVRNLE1DZUYsMENKZ0lBLG9CR2pMTixXQTJDRSxPQVRNLEtIb0pKLHFPR3RMSixjSDRMTSxzQkdqSkosT0FUTSxLSG1LRixpQkcxSkosT0FUTSxjSG1LRixpQkcxSkosT0FUTSxlSG1LRixpQkcxSkosT0FUTSxJSG1LRixpQkcxSkosT0FUTSxlSG1LRixpQkcxSkosT0FUTSxlSG1LRixpQkcxSkosT0FUTSxJSG1LRixpQkcxSkosT0FUTSxlSG1LRixpQkcxSkosT0FUTSxlSG1LRixpQkcxSkosT0FUTSxJSG1LRixrQkcxSkosT0FUTSxlSG1LRixrQkcxSkosT0FUTSxlSG1LRixrQkcxSkosT0FUTSxNSCtLSixnQ0MxU0EseUNEK1NBLHNCQy9TQSx5Q0Q4RkosZUM5RkkseUNEa0dGLHFCR2tDQSxPQVRNLG9CRjNISix1Q0RzRUoscUJHOERFLE9BVE0sS0hqRFIsdUJHMERFLE9BVE0sS0h6Q04sd0JHa0RBLE9BVE0sNkJIekNOLHdCR2tEQSxPQVRNLDhCSHpDTix3QkdrREEsT0FUTSxtQkh6Q04sd0JHa0RBLE9BVE0sOEJIekNOLHdCR2tEQSxPQVRNLDhCSHpDTix3QkdrREEsT0FUTSxtQkh6Q04sd0JHa0RBLE9BVE0sOEJIekNOLHdCR2tEQSxPQVRNLDhCSHpDTix3QkdrREEsT0FUTSxtQkh6Q04seUJHa0RBLE9BVE0sOEJIekNOLHlCR2tEQSxPQVRNLDhCSHpDTix5QkdrREEsT0FUTSxvQkNlRiwwQ0pwRU4sNEJHOERFLE9BVE0sS0hqRFIsOEJHMERFLE9BVE0sS0h6Q04seUJHa0RBLE9BVE0sNkJIekNOLHlCR2tEQSxPQVRNLDhCSHpDTix5QkdrREEsT0FUTSxtQkh6Q04seUJHa0RBLE9BVE0sOEJIekNOLHlCR2tEQSxPQVRNLDhCSHpDTix5QkdrREEsT0FUTSxtQkh6Q04seUJHa0RBLE9BVE0sOEJIekNOLHlCR2tEQSxPQVRNLDhCSHpDTix5QkdrREEsT0FUTSxtQkh6Q04sMEJHa0RBLE9BVE0sOEJIekNOLDBCR2tEQSxPQVRNLDhCSHpDTiwwQkdrREEsT0FUTSxxQkNlRiwwQ0pwRU4sMkJHOERFLE9BVE0sS0hqRFIsNkJHMERFLE9BVE0sS0h6Q04sd0JHa0RBLE9BVE0sNkJIekNOLHdCR2tEQSxPQVRNLDhCSHpDTix3QkdrREEsT0FUTSxtQkh6Q04sd0JHa0RBLE9BVE0sOEJIekNOLHdCR2tEQSxPQVRNLDhCSHpDTix3QkdrREEsT0FUTSxtQkh6Q04sd0JHa0RBLE9BVE0sOEJIekNOLHdCR2tEQSxPQVRNLDhCSHpDTix3QkdrREEsT0FUTSxtQkh6Q04seUJHa0RBLE9BVE0sOEJIekNOLHlCR2tEQSxPQVRNLDhCSHpDTix5QkdrREEsT0FUTSxxQkhrTVIsWVFwVkUsZ0JBQ0Esa0JBQ0EsaUJBQ0Esb0JBbUNJLFlSa1ROLGtCQUNFLFdBR0YsWVFuU0UsZ0JBQ0EsZUFHRixpQ0FDQSw0Q1JrU0EsY1EzU0UsZ0JBQ0EsZ0JBQ0EsZ0JBTUYsaUNBQ0EsNENSdVNBLHNCUWhTQSxhQUNBLHNCQUNBLGdCQUVBLDhCQUNFLGdCQUNBLGlCSnNGSSwwQ0oyTUosbUJRNVdBLGdCQUNBLGtCQUNBLGlCQUNBLG9CQW1DSSxZUjBVSix5QkFDRSxXQUdGLG1CUTNUQSxnQkFDQSxlQUdGLGlDQUNBLDRDUjBURSw2QlFuVEYsYUFDQSxzQkFDQSxnQkFFQSxxQ0FDRSxnQkFDQSxpQlJpVEEscUJRdlVBLGdCQUNBLGdCQUNBLGdCQU1GLGlDQUNBLDZDSm1HTSwwQ0oyTUosa0JRNVdBLGdCQUNBLGtCQUNBLGlCQUNBLG9CQW1DSSxZUjBVSix3QkFDRSxXQUdGLGtCUTNUQSxnQkFDQSxlQUdGLGlDQUNBLDRDUjBURSw0QlFuVEYsYUFDQSxzQkFDQSxnQkFFQSxvQ0FDRSxnQkFDQSxpQlJpVEEsb0JRdlVBLGdCQUNBLGdCQUNBLGdCQU1GLGlDQUNBLDZDUnFVSSxtQlFuWUYsZ0JBQ0Esa0JBQ0EsaUJBQ0Esb0JBaUNJLGFSaVdBLFdJcE9BLDBDSndPQSwwQlF6WUosZ0JBQ0Esa0JBQ0EsaUJBQ0Esb0JBaUNJLGFSdVdFLFlJMU9GLDBDSndPQSx5QlF6WUosZ0JBQ0Esa0JBQ0EsaUJBQ0Esb0JBaUNJLGFSdVdFLFlBTUoseUJBQ0UsWUlqUEEsMENKb1BBLGdDQUNFLGFJclBGLDBDSm9QQSwrQkFDRSxhQWpTUixlQzlGSSx5Q0RrR0YscUJHa0NBLE9BVE0sb0JGM0hKLHVDRHNFSixxQkc4REUsT0FUTSxLSGpEUix1QkcwREUsT0FUTSxLSHpDTix3QkdrREEsT0FUTSw2Qkh6Q04sd0JHa0RBLE9BVE0sOEJIekNOLHdCR2tEQSxPQVRNLG1CSHpDTix3QkdrREEsT0FUTSw4Qkh6Q04sd0JHa0RBLE9BVE0sOEJIekNOLHdCR2tEQSxPQVRNLG1CSHpDTix3QkdrREEsT0FUTSw4Qkh6Q04sd0JHa0RBLE9BVE0sOEJIekNOLHdCR2tEQSxPQVRNLG1CSHpDTix5QkdrREEsT0FUTSw4Qkh6Q04seUJHa0RBLE9BVE0sOEJIekNOLHlCR2tEQSxPQVRNLG9CQ2VGLDBDSnBFTiw0Qkc4REUsT0FUTSxLSGpEUiw4QkcwREUsT0FUTSxLSHpDTix5QkdrREEsT0FUTSw2Qkh6Q04seUJHa0RBLE9BVE0sOEJIekNOLHlCR2tEQSxPQVRNLG1CSHpDTix5QkdrREEsT0FUTSw4Qkh6Q04seUJHa0RBLE9BVE0sOEJIekNOLHlCR2tEQSxPQVRNLG1CSHpDTix5QkdrREEsT0FUTSw4Qkh6Q04seUJHa0RBLE9BVE0sOEJIekNOLHlCR2tEQSxPQVRNLG1CSHpDTiwwQkdrREEsT0FUTSw4Qkh6Q04sMEJHa0RBLE9BVE0sOEJIekNOLDBCR2tEQSxPQVRNLHFCQ2VGLDBDSnBFTiwyQkc4REUsT0FUTSxLSGpEUiw2QkcwREUsT0FUTSxLSHpDTix3QkdrREEsT0FUTSw2Qkh6Q04sd0JHa0RBLE9BVE0sOEJIekNOLHdCR2tEQSxPQVRNLG1CSHpDTix3QkdrREEsT0FUTSw4Qkh6Q04sd0JHa0RBLE9BVE0sOEJIekNOLHdCR2tEQSxPQVRNLG1CSHpDTix3QkdrREEsT0FUTSw4Qkh6Q04sd0JHa0RBLE9BVE0sOEJIekNOLHdCR2tEQSxPQVRNLG1CSHpDTix5QkdrREEsT0FUTSw4Qkh6Q04seUJHa0RBLE9BVE0sOEJIekNOLHlCR2tEQSxPQVRNLHFCSDJRTiwwQlF0WUksNEJKMElBLDBDSmdRRixpQ1ExWUUsNkJKMElBLDBDSmdRRixnQ1ExWUUsNkJDaUNKLFlDbkJGLGdCQWhCUSxXRG1DTixhQ25CRixnQkFoQlEsU0RtQ04sY0NuQkYsZ0JBaEJRLE9EbUNOLGVDbkJGLGdCQWhCUSxjRG1DTixjQ25CRixnQkFoQlEsYUQ0Q0YsK0JDNUJOLGdCQWhCUSxXRDRDRixnQ0M1Qk4sZ0JBaEJRLFNENENGLGlDQzVCTixnQkFoQlEsT0RxRE4sV0NwQ0YsWUFSUSxXRGdETixnQkN4QkYsV0FQUSxXRDJCTixjQ3BDRixZQVJRLFNEZ0ROLG1CQ3hCRixXQVBRLFNEMkJOLGNDcENGLFlBUlEsT0RnRE4sbUJDeEJGLFdBUFEsT0QyQk4sZUNwQ0YsWUFSUSxRRGdETixvQkN4QkYsV0FQUSxRRHFDUixxQkMvQ0EsZ0JBaEJRLE9BaUJSLFlBUlEsT0R3RE4scUJBTUUsZUNoQ0osTUQrQmUsRUFDWCxlQ2hDSixNRCtCZSxFQUNYLGVDaENKLE1EK0JlLEVBQ1gsZUNoQ0osTUQrQmUsRUFDWCxlQ2hDSixNRCtCZSxFQUNYLGVDaENKLE1EK0JlLEVMc0VULDBDS3JFRixnQkNoQ0osTUQrQmUsRUFDWCxnQkNoQ0osTUQrQmUsRUFDWCxnQkNoQ0osTUQrQmUsRUFDWCxnQkNoQ0osTUQrQmUsRUFDWCxnQkNoQ0osTUQrQmUsRUFDWCxnQkNoQ0osTUQrQmUsR0xzRVQsMENLckVGLGVDaENKLE1EK0JlLEVBQ1gsZUNoQ0osTUQrQmUsRUFDWCxlQ2hDSixNRCtCZSxFQUNYLGVDaENKLE1EK0JlLEVBQ1gsZUNoQ0osTUQrQmUsRUFDWCxlQ2hDSixNRCtCZSxHQTVGZixnQkNZQSxhRFJBLGlCQUNFLGNBR0YsaUJBQ0UsY0FHRixtQkFDRSxjQUlBLGNDc0RGLGVBcEVtQixJRGNqQixzQkNzREYsZUFwRW1CLFlEY2pCLGlCQ3NERixlQXBFbUIsT0RjakIseUJDc0RGLGVBcEVtQixlTitKYiwwQ0t2SUUsdUJDZlIsYURtQlEsd0JBQ0UsY0FHRix3QkFDRSxjQUdGLDBCQUNFLGNBSUEscUJDMkJWLGVBcEVtQixJRHlDVCw2QkMyQlYsZUFwRW1CLFlEeUNULHdCQzJCVixlQXBFbUIsT0R5Q1QsZ0NDMkJWLGVBcEVtQixnQk4rSmIsMENLdklFLHNCQ2ZSLGFEbUJRLHVCQUNFLGNBR0YsdUJBQ0UsY0FHRix5QkFDRSxjQUlBLG9CQzJCVixlQXBFbUIsSUR5Q1QsNEJDMkJWLGVBcEVtQixZRHlDVCx1QkMyQlYsZUFwRW1CLE9EeUNULCtCQzJCVixlQXBFbUIsZ0JDNENuQixNQUNFLHdCQUdGLFdBQ0Usa0JBRUYsU0FDRSxtQlAyR0ksZ0RPNUZKLHFCQTdCQSx5QkFuQkEsZ0VBb0RBLHFCQW5ERSx5QlAySUUsMENPckdGLGlCQTVCRix5QlBzSUksMENPdEdGLGlCQXBFRix5QlBxS0kscUVPNUZKLHNCQTdCQSx5QkFuQkEsdUVBb0RBLHNCQW5ERSx5QlAySUUsMENPckdGLGdCQTVCRix5QlBzSUksMENPdEdGLGdCQXBFRix5QlBxS0kscUVPNUZKLHFCQTdCQSx5QkFuQkEsdUVBb0RBLHFCQW5ERSx5QkEwREosNEJac0hBLDZCQUNBLHFCQUNBLHNCQUNBLHFCQUNBLDJCQUNBLGlDQUNBLDhCQUNB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QSxvQkFDQSxjQUNBLG1CQUNBLGdCQUNBLDZDQUNDLGFBRUQsa0VBRUMsY0FDQSxxQkFLRixrQkFDQyxZQUNBLCtCQUNBLGlDQUNBLHNDQUNBLGtCQUNBLFdBQ0EsYUFDQSxlQUNBLG1CQUNBLFdBQ0EsZ0JBQ0EsVUFDQSxhQUNBLGtCQUlGLFlBQ0MseUJBQ0EsNEJBR0Qsa0JBQ0MsZUFDQSxTQUNBLGdCQUNBLE9BQ0EsMkJBQ0EsYUFDQSxXQUNBLGlCQUNBLDRDQUVDLFNBQ0EsNkJBRUQsMkJBQ0MsbUJBRUQsMEJBQ0MscUJBQ0EscUJBRUQsMkJBQ0Msa0JBQ0EsT0FDQSxNQUNBLG1DQUNBLFdBQ0EsV0FDQSxnQ0FDQyxrQkFDQSxPQUNBLFlBQ0EsNkJBQ0EsU0FDQSxtQkFLSCxVQUNDLDBCQUVELDJDQUVDLHFCQUNBLHlCQUNBLCtCQUNBLG9CQUNBLFVBQ0EsbURBQ0MsZUFDQSxXQUVELHFEQUNDLHFCQUlGLDBCQUNDLGFBQ0EsVUFDQSxtQkFFQSxtQkFFRCx5QkFDQyxhQUNBLFVBQ0EsbUJBQ0Esd0NBQ0MsYUFDQSxtQkFDQSxTQUdELHFDQUNDLGFBQ0Esc0JBQ0EsU0FHRCwwQ0FDQyxnQkFDQSxrQkFDQSxZQUNBLGtCQUNBLGVBQ0EsZ0JBQ0EsV0FDQSxlQUNBLHdCQUNBLGdCQUNBLDJSQUNBLDRCQUNBLHNDQUNBLHFCQUNBLG1CQUNBLDZCQUdELGdEQUNDLGFBQ0Esd0NBR0QsZ0RBQ0Msc0NBR0Qsd0NBQ0MsZUFHRCwrQ0FDQyIsImZpbGUiOiJtYWluLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIkB1c2UgXCJzYXNzOm1hdGhcIjtcblxuLy8gIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjI1xuLy8gQ1NTIFZBUlNcbi8vICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyNcblxuQGltcG9ydCB1cmwoXCJodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2NzczI/ZmFtaWx5PUhhbmtlbitHcm90ZXNrOml0YWwsd2dodEAwLDEwMC4uOTAwOzEsMTAwLi45MDAmZmFtaWx5PUxpYnJlK0Jhc2tlcnZpbGxlOml0YWwsd2dodEAwLDQwMDswLDYwMDsxLDQwMCZkaXNwbGF5PXN3YXBcIik7XG5cbi5hY2YtYmxvY2stcHJldmlldyxcbiN0aW55bWNlLFxuOnJvb3Qge1xuXHQvLyBGT05UU1xuXHQtLWhlYWRlci1mb250OiBcIkxpYnJlIEJhc2tlcnZpbGxlXCIsIHNlcmlmO1xuXHQtLWJvZHktZm9udDogXCJIYW5rZW4gR3JvdGVza1wiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG5cdC0tYm9keS1saW5lLWhlaWdodDogMS40O1xuXHQtLWhlYWRlci1saW5lLWhlaWdodDogMS4xMjU7XG5cdC0td2VpZ2h0LW5vcm1hbDogNDAwO1xuXHQtLXdlaWdodC1ib2xkOiA2MDA7XG5cdC8vIExBWU9VVFxuXHQtLWhlYWRlci1oZWlnaHQ6IDc2LjVweDsgLyogRGVmYXVsdCBoZWlnaHQgKi9cblx0LS1saW5lOiAxcHggc29saWQgdmFyKC0tYmxhY2spO1xuXHQvLyBBTklNQVRFXG5cdC0tZWFzaW5nOiBjdWJpYy1iZXppZXIoMC4yMywgMSwgMC4zMiwgMSk7XG5cdC8vIFRZUEUgU0NBTEUgKE1BSk9SIFRISVJEKVxuXHQtLXNpemUtbWludXMyOiAwLjcwN3JlbTtcblx0LS1zaXplLW1pbnVzMTogMC44NzVyZW07XG5cdC0tc2l6ZTogMTZweDtcblx0LS1zaXplLXBsdXMxOiAjeyRiYXNlICogbWF0aC5wb3coJHR5cGVzY2FsZSwgMSl9O1xuXHQtLXNpemUtcGx1czI6ICN7JGJhc2UgKiBtYXRoLnBvdygkdHlwZXNjYWxlLCAyKX07XG5cdC0tc2l6ZS1wbHVzMzogI3skYmFzZSAqIG1hdGgucG93KCR0eXBlc2NhbGUsIDMpfTtcblx0LS1zaXplLXBsdXM0OiAjeyRiYXNlICogbWF0aC5wb3coJHR5cGVzY2FsZSwgNCl9O1xuXHQtLXNpemUtcGx1czU6ICN7JGJhc2UgKiBtYXRoLnBvdygkdHlwZXNjYWxlLCA1KX07XG5cdC0tc2l6ZS1wbHVzNjogI3skYmFzZSAqIG1hdGgucG93KCR0eXBlc2NhbGUsIDYpfTtcblx0LS1zaXplLXBsdXM3OiAjeyRiYXNlICogbWF0aC5wb3coJHR5cGVzY2FsZSwgNyl9O1xuXHQtLXNpemUtcGx1czg6ICN7JGJhc2UgKiBtYXRoLnBvdygkdHlwZXNjYWxlLCA4KX07XG5cdC0tc2l6ZS1wbHVzOTogI3skYmFzZSAqIG1hdGgucG93KCR0eXBlc2NhbGUsIDkpfTtcblx0LS1zaXplLXBsdXMxMDogI3skYmFzZSAqIG1hdGgucG93KCR0eXBlc2NhbGUsIDEwKX07XG5cdEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtLWJyZWFrcG9pbnQpIHtcblx0XHQvLyBMQVlPVVRcblx0XHQtLWhlYWRlci1oZWlnaHQ6IDc4LjAxNTZweDsgLyogRGVmYXVsdCBoZWlnaHQgKi9cblx0XHQvLyBUWVBFIFNDQUxFIChNQUpPUiBUSElSRClcblx0XHQtLXNpemUtcGx1czA6ICN7JGJhc2V2dyAqIG1hdGgucG93KCR0eXBlc2NhbGUsIDApfTtcblx0XHQtLXNpemUtcGx1czE6ICN7JGJhc2V2dyAqIG1hdGgucG93KCR0eXBlc2NhbGUsIDEpfTtcblx0XHQtLXNpemUtcGx1czI6ICN7JGJhc2V2dyAqIG1hdGgucG93KCR0eXBlc2NhbGUsIDIpfTtcblx0XHQtLXNpemUtcGx1czM6ICN7JGJhc2V2dyAqIG1hdGgucG93KCR0eXBlc2NhbGUsIDMpfTtcblx0XHQtLXNpemUtcGx1czQ6ICN7JGJhc2V2dyAqIG1hdGgucG93KCR0eXBlc2NhbGUsIDQpfTtcblx0XHQtLXNpemUtcGx1czU6ICN7JGJhc2V2dyAqIG1hdGgucG93KCR0eXBlc2NhbGUsIDUpfTtcblx0XHQtLXNpemUtcGx1czY6ICN7JGJhc2V2dyAqIG1hdGgucG93KCR0eXBlc2NhbGUsIDYpfTtcblx0XHQtLXNpemUtcGx1czc6ICN7JGJhc2V2dyAqIG1hdGgucG93KCR0eXBlc2NhbGUsIDcpfTtcblx0XHQtLXNpemUtcGx1czg6ICN7JGJhc2V2dyAqIG1hdGgucG93KCR0eXBlc2NhbGUsIDgpfTtcblx0XHQtLXNpemUtcGx1czk6ICN7JGJhc2V2dyAqIG1hdGgucG93KCR0eXBlc2NhbGUsIDkpfTtcblx0XHQtLXNpemUtcGx1czEwOiAjeyRiYXNldncgKiBtYXRoLnBvdygkdHlwZXNjYWxlLCAxMCl9O1xuXHR9XG5cblx0Ly8gLy8gQ09MT1VSIFNDSEVNRVxuXHQtLWJyYW5kOiAjMDAxMzI4O1xuXHQtLWJnOiAjZmFmNWU4O1xuXHQtLXdoaXRlOiBoc2woMCwgMCUsIDk3JSk7XG5cdC0tYmxhY2s6ICMwZjBmMGY7XG5cdC0tcHVyZXdoaXRlOiBoc2woMCwgMCUsIDEwMCUpO1xuXHQtLXB1cmVibGFjazogaHNsKDAsIDAlLCAwJSk7XG5cdC0tbGlnaHRncmV5OiBoc2woNjAsIDUlLCA5MSUpO1xuXHQtLW1lZGl1bWdyZXk6IGhzbCgwLCAwJSwgNjglKTtcblx0LS1ncmV5OiBoc2woMCwgMCUsIDMzJSk7XG5cdC0tZGFya2dyZXk6IGhzbCgwLCAwJSwgMjIlKTtcblx0LS1yZWQ6ICNlZDFjMjQ7XG5cdC0tYmx1ZTogIzAwYWVlZjtcblx0LS1kYXJrYmx1ZTogIzAwM2Q3Zjtcblx0LS15ZWxsb3c6ICNmODk4MjE7XG5cdC0tZ3JlZW46ICMwMDk0NDQ7XG59XG5cbi8vIEJhY2tncm91bmQgY29sb3JzXG4uaGFzLWRhcmstYmFja2dyb3VuZC1jb2xvciB7XG5cdC0tYmc6IHZhcigtLXB1cmVibGFjayk7XG5cdC0tYmxhY2s6IGhzbCgwLCAwJSwgOTclKTtcblx0LS13aGl0ZTogIzBmMGYwZjtcbn1cblxuLmhhcy1yZWQtYmFja2dyb3VuZC1jb2xvciB7XG5cdC0tYmc6IHZhcigtLXJlZCk7XG5cdC0tYmxhY2s6IGhzbCgwLCAwJSwgOTclKTtcblx0LS13aGl0ZTogIzBmMGYwZjtcbn1cblxuLmhhcy1ibHVlLWJhY2tncm91bmQtY29sb3Ige1xuXHQtLWJnOiB2YXIoLS1ibHVlKTtcblx0LS1ibGFjazogaHNsKDAsIDAlLCA5NyUpO1xuXHQtLXdoaXRlOiAjMGYwZjBmO1xufVxuXG4uaGFzLXllbGxvdy1iYWNrZ3JvdW5kLWNvbG9yIHtcblx0LS1iZzogdmFyKC0teWVsbG93KTtcblx0LS1ibGFjazogaHNsKDAsIDAlLCA5NyUpO1xuXHQtLXdoaXRlOiAjMGYwZjBmO1xufVxuXG4uaGFzLWdyZWVuLWJhY2tncm91bmQtY29sb3Ige1xuXHQtLWJnOiB2YXIoLS1ncmVlbik7XG5cdC0tYmxhY2s6IGhzbCgwLCAwJSwgOTclKTtcblx0LS13aGl0ZTogIzBmMGYwZjtcbn1cblxuLy8gVGhlbWUgY29sb3JzXG5bZGF0YS10aGVtZT1cImRhcmtcIl0ge1xuXHQtLWJyYW5kOiAjZmFmNWU4O1xufVxuXG5bZGF0YS10aGVtZT1cInJlZFwiXSB7XG5cdC0tYnJhbmQ6IHZhcigtLXJlZCk7XG59XG5cbltkYXRhLXRoZW1lPVwiYmx1ZVwiXSB7XG5cdC0tYnJhbmQ6IHZhcigtLWJsdWUpO1xufVxuXG5bZGF0YS10aGVtZT1cInllbGxvd1wiXSB7XG5cdC0tYnJhbmQ6IHZhcigtLXllbGxvdyk7XG59XG5cbltkYXRhLXRoZW1lPVwiZ3JlZW5cIl0ge1xuXHQtLWJyYW5kOiB2YXIoLS1ncmVlbik7XG59XG4iLCIvLyBzYXNzLWxpbnQ6ZGlzYWJsZSBuby12ZW5kb3ItcHJlZml4ZXNcblxuQG1peGluIGZvdW5kYXRpb24tbm9ybWFsaXplKCkge1xuICAvKiEgbm9ybWFsaXplLmNzcyB2OC4wLjAgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzICovXG5cbiAgLy8gRG9jdW1lbnRcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyAxLiBDb3JyZWN0IHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMuXG4gIC8vIDIuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW4gaU9TLlxuXG4gIGh0bWwge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE1OyAvLyAxXG4gICAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvLyAyXG4gIH1cblxuICAvLyBTZWN0aW9uc1xuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2Vycy5cblxuICBib2R5IHtcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuICAvLyBDb3JyZWN0IHRoZSBmb250IHNpemUgYW5kIG1hcmdpbiBvbiBgaDFgIGVsZW1lbnRzIHdpdGhpbiBgc2VjdGlvbmAgYW5kXG4gIC8vIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXG5cbiAgaDEge1xuICAgIGZvbnQtc2l6ZTogMmVtO1xuICAgIG1hcmdpbjogMC42N2VtIDA7XG4gIH1cblxuICAvLyBHcm91cGluZyBjb250ZW50XG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAgLy8gMi4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZSBhbmQgSUUuXG5cbiAgaHIge1xuICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvLyAxXG4gICAgaGVpZ2h0OiAwOyAvLyAxXG4gICAgb3ZlcmZsb3c6IHZpc2libGU7IC8vIDJcbiAgfVxuXG4gIC8vIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gIC8vIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cblxuICBwcmUge1xuICAgIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLy8gMVxuICAgIGZvbnQtc2l6ZTogMWVtOyAvLyAyXG4gIH1cblxuICAvLyBUZXh0LWxldmVsIHNlbWFudGljc1xuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cblxuICBhIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuXG4gIC8vIDEuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBDaHJvbWUgNTctXG4gIC8vIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuXG5cbiAgYWJiclt0aXRsZV0ge1xuICAgIGJvcmRlci1ib3R0b206IDA7IC8vIDFcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IC8vIDJcbiAgfVxuXG4gIC8vIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkuXG5cbiAgYixcbiAgc3Ryb25nIHtcbiAgICBmb250LXdlaWdodDogYm9sZGVyO1xuICB9XG5cbiAgLy8gMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAgLy8gMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuXG4gIGNvZGUsXG4gIGtiZCxcbiAgc2FtcCB7XG4gICAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvLyAxXG4gICAgZm9udC1zaXplOiAxZW07IC8vIDJcbiAgfVxuXG4gIC8vIEFkZCB0aGUgY29ycmVjdCBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuXG4gIHNtYWxsIHtcbiAgICBmb250LXNpemU6IDgwJTtcbiAgfVxuXG4gIC8vIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuICAvLyBhbGwgYnJvd3NlcnMuXG5cbiAgc3ViLFxuICBzdXAge1xuICAgIGZvbnQtc2l6ZTogNzUlO1xuICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIH1cblxuICBzdWIge1xuICAgIGJvdHRvbTogLTAuMjVlbTtcbiAgfVxuXG4gIHN1cCB7XG4gICAgdG9wOiAtMC41ZW07XG4gIH1cblxuICAvLyBFbWJlZGRlZCBjb250ZW50XG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC5cblxuICBpbWcge1xuICAgIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgfVxuXG4gIC8vIEZvcm1zXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gMS4gQ2hhbmdlIHRoZSBmb250IHN0eWxlcyBpbiBhbGwgYnJvd3NlcnMuXG4gIC8vIDIuIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaS5cblxuICBidXR0b24sXG4gIGlucHV0LFxuICBvcHRncm91cCxcbiAgc2VsZWN0LFxuICB0ZXh0YXJlYSB7XG4gICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7IC8vIDFcbiAgICBmb250LXNpemU6IDEwMCU7IC8vIDFcbiAgICBsaW5lLWhlaWdodDogMS4xNTsgLy8gMVxuICAgIG1hcmdpbjogMDsgLy8gMlxuICB9XG5cbiAgLy8gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gIC8vIDEuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UuXG5cbiAgYnV0dG9uLFxuICBpbnB1dCB7IC8vIDFcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgfVxuXG4gIC8vIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRWRnZSwgRmlyZWZveCwgYW5kIElFLlxuICAvLyAxLiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3guXG5cbiAgYnV0dG9uLFxuICBzZWxlY3QgeyAvLyAxXG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIH1cblxuICAvLyBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuXG4gIGJ1dHRvbixcbiAgW3R5cGU9XCJidXR0b25cIl0sXG4gIFt0eXBlPVwicmVzZXRcIl0sXG4gIFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgfVxuXG4gIC8vIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGluIEZpcmVmb3guXG5cbiAgYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuICBbdHlwZT1cImJ1dHRvblwiXTo6LW1vei1mb2N1cy1pbm5lcixcbiAgW3R5cGU9XCJyZXNldFwiXTo6LW1vei1mb2N1cy1pbm5lcixcbiAgW3R5cGU9XCJzdWJtaXRcIl06Oi1tb3otZm9jdXMtaW5uZXIge1xuICAgIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgLy8gUmVzdG9yZSB0aGUgZm9jdXMgc3R5bGVzIHVuc2V0IGJ5IHRoZSBwcmV2aW91cyBydWxlLlxuXG4gIGJ1dHRvbjotbW96LWZvY3VzcmluZyxcbiAgW3R5cGU9XCJidXR0b25cIl06LW1vei1mb2N1c3JpbmcsXG4gIFt0eXBlPVwicmVzZXRcIl06LW1vei1mb2N1c3JpbmcsXG4gIFt0eXBlPVwic3VibWl0XCJdOi1tb3otZm9jdXNyaW5nIHtcbiAgICBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7XG4gIH1cblxuICAvLyBDb3JyZWN0IHRoZSBwYWRkaW5nIGluIEZpcmVmb3guXG5cbiAgZmllbGRzZXQge1xuICAgIHBhZGRpbmc6IDAuMzVlbSAwLjc1ZW0gMC42MjVlbTtcbiAgfVxuXG4gIC8vIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXG4gIC8vIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cbiAgLy8gMy4gUmVtb3ZlIHRoZSBwYWRkaW5nIHNvIGRldmVsb3BlcnMgYXJlIG5vdCBjYXVnaHQgb3V0IHdoZW4gdGhleSB6ZXJvIG91dFxuICAvLyAgICBgZmllbGRzZXRgIGVsZW1lbnRzIGluIGFsbCBicm93c2Vycy5cblxuICBsZWdlbmQge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8vIDFcbiAgICBjb2xvcjogaW5oZXJpdDsgLy8gMlxuICAgIGRpc3BsYXk6IHRhYmxlOyAvLyAxXG4gICAgbWF4LXdpZHRoOiAxMDAlOyAvLyAxXG4gICAgcGFkZGluZzogMDsgLy8gM1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7IC8vIDFcbiAgfVxuXG4gIC8vIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG5cbiAgcHJvZ3Jlc3Mge1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgfVxuXG4gIC8vIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUgMTArLlxuXG4gIHRleHRhcmVhIHtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgfVxuXG4gIC8vIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLlxuICAvLyAyLiBSZW1vdmUgdGhlIHBhZGRpbmcgaW4gSUUgMTAuXG5cbiAgW3R5cGU9XCJjaGVja2JveFwiXSxcbiAgW3R5cGU9XCJyYWRpb1wiXSB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLy8gMVxuICAgIHBhZGRpbmc6IDA7IC8vIDJcbiAgfVxuXG4gIC8vIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cblxuICBbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbiAgW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuXG4gIC8vIDEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSBhbmQgU2FmYXJpLlxuICAvLyAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cblxuICBbdHlwZT1cInNlYXJjaFwiXSB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8vIDFcbiAgICBvdXRsaW5lLW9mZnNldDogLTJweDsgLy8gMlxuICB9XG5cbiAgLy8gUmVtb3ZlIHRoZSBpbm5lciBwYWRkaW5nIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLlxuXG4gIFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIH1cblxuICAvLyAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICAvLyAyLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBTYWZhcmkuXG5cbiAgOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8vIDFcbiAgICBmb250OiBpbmhlcml0OyAvLyAyXG4gIH1cblxuICAvLyBJbnRlcmFjdGl2ZVxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIEVkZ2UsIElFIDEwKywgYW5kIEZpcmVmb3guXG5cbiAgZGV0YWlscyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnMuXG5cbiAgc3VtbWFyeSB7XG4gICAgZGlzcGxheTogbGlzdC1pdGVtO1xuICB9XG5cbiAgLy8gTWlzY1xuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwKy5cblxuICB0ZW1wbGF0ZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC8vIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwLlxuXG4gIFtoaWRkZW5dIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLy8gRGlzYWJsZSBvdXRsaW5lIHdoZW4gaW50ZW50IGlzIGNsZWFybHkgbW91c2UgYW5kIHRvdWNoXG4gIFtkYXRhLXdoYXRpbnRlbnQ9XCJtb3VzZVwiXSxcbiAgW2RhdGEtd2hhdGludGVudD1cInRvdWNoXCJdLFxuICBbZGF0YS13aGF0aW5wdXQ9XCJtb3VzZVwiXSxcbiAgW2RhdGEtd2hhdGlucHV0PVwidG91Y2hcIl0ge1xuICAgICosICo6Zm9jdXMge1xuICAgICAgb3V0bGluZTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAvLyBEaXNhYmxlIGlPUyBjYWxsb3V0cyB3aGVuIGRyYWdnYWJsZSBpcyBmYWxzZVxuICBbZHJhZ2dhYmxlPWZhbHNlXSB7XG4gICAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xuICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8gc2Fzcy1saW50OmRpc2FibGUgbm8tY29sb3ItbGl0ZXJhbHMsIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcblxuLy8vL1xuLy8vIEBncm91cCBnbG9iYWxcbi8vLy9cblxuQGltcG9ydCAndXRpbC91dGlsJztcblxuLy8vIEZvbnQgc2l6ZSBhdHRyaWJ1dGUgYXBwbGllZCB0byBgPGh0bWw+YCBhbmQgYDxib2R5PmAuIFdlIHVzZSAxMDAlIGJ5IGRlZmF1bHQgc28gdGhlIHZhbHVlIGlzIGluaGVyaXRlZCBmcm9tIHRoZSB1c2VyJ3MgYnJvd3NlciBzZXR0aW5ncy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtZm9udC1zaXplOiAxMDAlICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHdpZHRoIG9mIHlvdXIgc2l0ZS4gVXNlZCBieSB0aGUgZ3JpZCB0byBkZXRlcm1pbmUgcm93IHdpZHRoLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC13aWR0aDogcmVtLWNhbGMoMTIwMCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGxpbmUgaGVpZ2h0IGZvciBhbGwgdHlwZS4gYCRnbG9iYWwtbGluZWhlaWdodGAgaXMgMjRweCB3aGlsZSBgJGdsb2JhbC1mb250LXNpemVgIGlzIDE2cHhcbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtbGluZWhlaWdodDogMS41ICFkZWZhdWx0O1xuXG4vLy8gQ29sb3JzIHVzZWQgZm9yIGJ1dHRvbnMsIGNhbGxvdXRzLCBsaW5rcywgZXRjLiBUaGVyZSBtdXN0IGFsd2F5cyBiZSBhIGNvbG9yIGNhbGxlZCBgcHJpbWFyeWAuXG4vLy8gQHR5cGUgTWFwXG4kZm91bmRhdGlvbi1wYWxldHRlOiAoXG4gIFwicHJpbWFyeVwiOiAjMTc3OWJhLFxuICBcInNlY29uZGFyeVwiOiAjNzY3Njc2LFxuICBcInN1Y2Nlc3NcIjogIzNhZGI3NixcbiAgXCJ3YXJuaW5nXCI6ICNmZmFlMDAsXG4gIFwiYWxlcnRcIjogI2NjNGIzNyxcbikgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciBsaWdodCBncmF5IFVJIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kbGlnaHQtZ3JheTogI2U2ZTZlNiAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIG1lZGl1bSBncmF5IFVJIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kbWVkaXVtLWdyYXk6ICNjYWNhY2EgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciBkYXJrIGdyYXkgVUkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRkYXJrLWdyYXk6ICM4YThhOGEgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciBibGFjayB1aSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJGJsYWNrOiAjMGEwYTBhICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3Igd2hpdGUgdWkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiR3aGl0ZTogI2ZlZmVmZSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJvZHkuXG4vLy8gQHR5cGUgQ29sb3JcbiRib2R5LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3Igb2YgdGhlIGJvZHkuXG4vLy8gQHR5cGUgQ29sb3JcbiRib2R5LWZvbnQtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc3RhY2sgb2YgdGhlIGJvZHkuXG4vLy8gQHR5cGUgTGlzdFxuJGJvZHktZm9udC1mYW1pbHk6ICdIZWx2ZXRpY2EgTmV1ZScsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZiAhZGVmYXVsdDtcblxuLy8vIFNldCB0byBgdHJ1ZWAgdG8gZW5hYmxlIHNhZmUgcGFkZGluZyBvbiB0aGUgYm9keSBmb3Igbm9uLXJlY3Rhbmd1bGFyIGRldmljZXMgKGkuZS4gcGhvbmVzIHdpdGggbm90Y2hlcylcbi8vLyBAdHlwZSBCb29sZWFuXG4kYm9keS1zYWZlLXBhZGRpbmc6IGZhbHNlICFkZWZhdWx0O1xuXG4vLy8gU2V0IHRvIGB0cnVlYCB0byBlbmFibGUgYW50aWFsaWFzZWQgdHlwZSwgdXNpbmcgdGhlIGAtd2Via2l0LWZvbnQtc21vb3RoaW5nYCBhbmQgYC1tb3otb3N4LWZvbnQtc21vb3RoaW5nYCBDU1MgcHJvcGVydGllcy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYm9keS1hbnRpYWxpYXNlZDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBtYXJnaW4gb24gY29tcG9uZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtbWFyZ2luOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIHBhZGRpbmcgb24gY29tcG9uZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBwb3NpdGlvbmluZyBvbiBjb21wb25lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1wb3NpdGlvbjogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCBmb250IHdlaWdodCB1c2VkIGZvciBub3JtYWwgdHlwZS5cbi8vLyBAdHlwZSBLZXl3b3JkIHwgTnVtYmVyXG4kZ2xvYmFsLXdlaWdodC1ub3JtYWw6IG5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCBmb250IHdlaWdodCB1c2VkIGZvciBib2xkIHR5cGUuXG4vLy8gQHR5cGUgS2V5d29yZCB8IE51bWJlclxuJGdsb2JhbC13ZWlnaHQtYm9sZDogYm9sZCAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBhbGwgZWxlbWVudHMgdGhhdCBoYXZlIGEgYm9yZGVyIHJhZGl1cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtcmFkaXVzOiAwICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIGFsbCBtZW51IHN0eWxlcy4gQ2FuIGJlIG92ZXJ3cml0dGVuIGF0IGluZGl2aWR1YWwgbWVudSBjb21wb25lbnQgbGV2ZWwuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLW1lbnUtcGFkZGluZzogMC43cmVtIDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgYWxsIG1lbnUgc3R5bGVzLiBOZXN0ZWQgbWFyZ2luIGZvciBzdWJtZW51LlxuJGdsb2JhbC1tZW51LW5lc3RlZC1tYXJnaW46IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIHRoZSB0ZXh0IGRpcmVjdGlvbiBvZiB0aGUgQ1NTLiBDYW4gYmUgZWl0aGVyIGBsdHJgIG9yIGBydGxgLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRnbG9iYWwtdGV4dC1kaXJlY3Rpb246IGx0ciAhZGVmYXVsdDtcblxuLy8vIEVuYWJsZXMgZmxleGJveCBmb3IgY29tcG9uZW50cyB0aGF0IHN1cHBvcnQgaXQuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGdsb2JhbC1mbGV4Ym94OiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gRW5hYmxlZCByZXNwb25zaXZlIGJyZWFrcG9pbnRzIGZvciBwcm90b3R5cGVzIGlmIGFwcGxpY2FibGVcbi8vLyBAdHlwZSBCb29sZWFuXG4kZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50czogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vLyBCdXR0b24gY3Vyc29yJ3MgdmFsdWUsIGBhdXRvYCBieSBkZWZhdWx0XG4vLy8gQHR5cGUgS2V5d29yZFxuJGdsb2JhbC1idXR0b24tY3Vyc29yOiBhdXRvICFkZWZhdWx0O1xuXG5AaWYgbm90IG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHByaW1hcnkpIHtcbiAgQGVycm9yICdJbiAkZm91bmRhdGlvbi1wYWxldHRlLCB5b3UgbXVzdCBoYXZlIGEgY29sb3IgbmFtZWQgXCJwcmltYXJ5XCIuJztcbn1cblxuLy8gSW50ZXJuYWwgdmFyaWFibGVzIHVzZWQgZm9yIHRleHQgZGlyZWN0aW9uXG4kZ2xvYmFsLWxlZnQ6IGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCByaWdodCwgbGVmdCk7XG4kZ2xvYmFsLXJpZ2h0OiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IHJ0bCwgbGVmdCwgcmlnaHQpO1xuXG4vLyBJbnRlcm5hbCB2YXJpYWJsZSB0aGF0IGNvbnRhaW5zIHRoZSBmbGV4IGp1c3RpZnlpbmcgb3B0aW9uc1xuJC16Zi1mbGV4LWp1c3RpZnk6IC16Zi1mbGV4LWp1c3RpZnkoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbik7XG5cbi8vLyBHbG9iYWwgdG9sZXJhbmNlIGZvciBjb2xvciBwaWNrIGNvbnRyYXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1jb2xvci1waWNrLWNvbnRyYXN0LXRvbGVyYW5jZTogMCAhZGVmYXVsdDtcblxuLy8gSW50ZXJuYWwgdmFyaWFibGVzIHVzZWQgZm9yIGNvbG9yc1xuQGluY2x1ZGUgYWRkLWZvdW5kYXRpb24tY29sb3JzO1xuXG5AbWl4aW4gZm91bmRhdGlvbi1nbG9iYWwtc3R5bGVzIHtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1ub3JtYWxpemU7XG5cbiAgLy8gVGhlc2Ugc3R5bGVzIGFyZSBhcHBsaWVkIHRvIGEgPG1ldGE+IHRhZywgd2hpY2ggaXMgcmVhZCBieSB0aGUgRm91bmRhdGlvbiBKYXZhU2NyaXB0XG4gIC5mb3VuZGF0aW9uLW1xIHtcbiAgICBmb250LWZhbWlseTogJyN7LXpmLWJwLXNlcmlhbGl6ZSgkYnJlYWtwb2ludHMpfSc7XG4gIH1cblxuICBodG1sIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGZvbnQtc2l6ZTogJGdsb2JhbC1mb250LXNpemU7XG4gIH1cblxuICAvLyBTZXQgYm94LXNpemluZyBnbG9iYWxseSB0byBoYW5kbGUgcGFkZGluZyBhbmQgYm9yZGVyIHdpZHRoc1xuICAqLFxuICAqOjpiZWZvcmUsXG4gICo6OmFmdGVyIHtcbiAgICBib3gtc2l6aW5nOiBpbmhlcml0O1xuICB9XG5cbiAgLy8gRGVmYXVsdCBib2R5IHN0eWxlc1xuICBib2R5IHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgIEBpZiAoJGJvZHktc2FmZS1wYWRkaW5nKSB7XG4gICAgICAvLyB1c2luZyBlbnZpcm9ubWVudCB2YXJpYWJsZXMgdG8gYWNjb3VudCBmb3Igbm9uLXJlY3Rhbmd1bGFyIGRpc3BsYXlzIGUuZy4gcGhvbmVzIHdpdGggbm90Y2hlc1xuICAgICAgcGFkZGluZy10b3A6IGVudihzYWZlLWFyZWEtaW5zZXQtdG9wKTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IGVudihzYWZlLWFyZWEtaW5zZXQtcmlnaHQpO1xuICAgICAgcGFkZGluZy1ib3R0b206IGVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tKTtcbiAgICAgIHBhZGRpbmctbGVmdDogZW52KHNhZmUtYXJlYS1pbnNldC1sZWZ0KTtcbiAgICB9XG5cbiAgICBiYWNrZ3JvdW5kOiAkYm9keS1iYWNrZ3JvdW5kO1xuXG4gICAgZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG4gICAgbGluZS1oZWlnaHQ6ICRnbG9iYWwtbGluZWhlaWdodDtcbiAgICBjb2xvcjogJGJvZHktZm9udC1jb2xvcjtcblxuICAgIEBpZiAoJGJvZHktYW50aWFsaWFzZWQpIHtcbiAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkOyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXZlbmRvci1wcmVmaXhlc1xuICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby12ZW5kb3ItcHJlZml4ZXNcbiAgICB9XG4gIH1cblxuICBpbWcge1xuICAgIC8vIEdldCByaWQgb2YgZ2FwIHVuZGVyIGltYWdlcyBieSBtYWtpbmcgdGhlbSBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IGJ5IGRlZmF1bHRcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuICAgIC8vIEdyaWQgZGVmYXVsdHMgdG8gZ2V0IGltYWdlcyBhbmQgZW1iZWRzIHRvIHdvcmsgcHJvcGVybHlcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIC1tcy1pbnRlcnBvbGF0aW9uLW1vZGU6IGJpY3ViaWM7XG4gIH1cblxuICAvLyBNYWtlIHN1cmUgdGV4dGFyZWEgdGFrZXMgb24gaGVpZ2h0IGF1dG9tYXRpY2FsbHlcbiAgdGV4dGFyZWEge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtaW4taGVpZ2h0OiA1MHB4O1xuICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICB9XG5cbiAgLy8gTWFrZSBzZWxlY3QgZWxlbWVudHMgYXJlIDEwMCUgd2lkdGggYnkgZGVmYXVsdFxuICBzZWxlY3Qge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gIH1cblxuICAvLyBTdHlsZXMgR29vZ2xlIE1hcHMgYW5kIE1hcFF1ZXN0IGVtYmVkcyBwcm9wZXJseVxuICAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLWlkc1xuICAubWFwX2NhbnZhcyxcbiAgLm1xYS1kaXNwbGF5IHtcbiAgICBpbWcsXG4gICAgZW1iZWQsXG4gICAgb2JqZWN0IHtcbiAgICAgIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC8vIFJlc2V0IDxidXR0b24+IHN0eWxlcyBjcmVhdGVkIGJ5IG1vc3QgYnJvd3NlcnNcbiAgYnV0dG9uIHtcbiAgICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gICAgcGFkZGluZzogMDtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBjdXJzb3I6ICRnbG9iYWwtYnV0dG9uLWN1cnNvcjtcbiAgfVxuXG4gIC8vIFByZXZlbnQgdGV4dCBvdmVyZmxvdyBvbiBwcmVcbiAgcHJlIHtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gIH1cblxuICAvLyBNYWtlIHJlc2V0IGluaGVyaXQgZm9udC1mYW1pbHkgaW5zdGVhZCBvZiBzZXR0aW5ncyBzYW5zLXNlcmlmXG4gIGJ1dHRvbixcbiAgaW5wdXQsXG4gIG9wdGdyb3VwLFxuICBzZWxlY3QsXG4gIHRleHRhcmVhIHtcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIEludGVybmFsIGNsYXNzZXMgdG8gc2hvdy9oaWRlIGVsZW1lbnRzIGluIEphdmFTY3JpcHRcbiAgLmlzLXZpc2libGUge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuaXMtaGlkZGVuIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuQGltcG9ydCAnbWF0aCc7XG5cbiR1bml0LXdhcm5pbmdzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8vXG4vLy8gQGdyb3VwIGZ1bmN0aW9uc1xuLy8vL1xuXG4kZ2xvYmFsLWZvbnQtc2l6ZTogMTAwJSAhZGVmYXVsdDtcblxuLy8vIFJlbW92ZXMgdGhlIHVuaXQgKGUuZy4gcHgsIGVtLCByZW0pIGZyb20gYSB2YWx1ZSwgcmV0dXJuaW5nIHRoZSBudW1iZXIgb25seS5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbnVtIC0gTnVtYmVyIHRvIHN0cmlwIHVuaXQgZnJvbS5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IFRoZSBzYW1lIG51bWJlciwgc2FucyB1bml0LlxuQGZ1bmN0aW9uIHN0cmlwLXVuaXQoJG51bSkge1xuICBAcmV0dXJuIGRpdmlkZSgkbnVtLCAkbnVtICogMCArIDEpO1xufVxuXG4vLy8gQ29udmVydHMgb25lIG9yIG1vcmUgcGl4ZWwgdmFsdWVzIGludG8gbWF0Y2hpbmcgcmVtIHZhbHVlcy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICR2YWx1ZXMgLSBPbmUgb3IgbW9yZSB2YWx1ZXMgdG8gY29udmVydC4gQmUgc3VyZSB0byBzZXBhcmF0ZSB0aGVtIHdpdGggc3BhY2VzIGFuZCBub3QgY29tbWFzLiBJZiB5b3UgbmVlZCB0byBjb252ZXJ0IGEgY29tbWEtc2VwYXJhdGVkIGxpc3QsIHdyYXAgdGhlIGxpc3QgaW4gcGFyZW50aGVzZXMuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYXNlIFtudWxsXSAtIFRoZSBiYXNlIHZhbHVlIHRvIHVzZSB3aGVuIGNhbGN1bGF0aW5nIHRoZSBgcmVtYC4gSWYgeW91J3JlIHVzaW5nIEZvdW5kYXRpb24gb3V0IG9mIHRoZSBib3gsIHRoaXMgaXMgMTZweC4gSWYgdGhpcyBwYXJhbWV0ZXIgaXMgYG51bGxgLCB0aGUgZnVuY3Rpb24gd2lsbCByZWZlcmVuY2UgdGhlIGAkZ2xvYmFsLWZvbnQtc2l6ZWAgdmFyaWFibGUgYXMgdGhlIGJhc2UuXG4vLy9cbi8vLyBAcmV0dXJucyB7TGlzdH0gQSBsaXN0IG9mIGNvbnZlcnRlZCB2YWx1ZXMuXG5AZnVuY3Rpb24gcmVtLWNhbGMoJHZhbHVlcywgJGJhc2U6IG51bGwpIHtcbiAgJHJlbS12YWx1ZXM6ICgpO1xuICAkY291bnQ6IGxlbmd0aCgkdmFsdWVzKTtcblxuICAvLyBJZiBubyBiYXNlIGlzIGRlZmluZWQsIGRlZmVyIHRvIHRoZSBnbG9iYWwgZm9udCBzaXplXG4gIEBpZiAkYmFzZSA9PSBudWxsIHtcbiAgICAkYmFzZTogJGdsb2JhbC1mb250LXNpemU7XG4gIH1cblxuICAvLyBJZiB0aGUgYmFzZSBmb250IHNpemUgaXMgYSAlLCB0aGVuIG11bHRpcGx5IGl0IGJ5IDE2cHhcbiAgLy8gVGhpcyBpcyBiZWNhdXNlIDEwMCUgZm9udCBzaXplID0gMTZweCBpbiBtb3N0IGFsbCBicm93c2Vyc1xuICBAaWYgdW5pdCgkYmFzZSkgPT0gJyUnIHtcbiAgICAkYmFzZTogZGl2aWRlKCRiYXNlLCAxMDAlKSAqIDE2cHg7XG4gIH1cblxuICAvLyBVc2luZyByZW0gYXMgYmFzZSBhbGxvd3MgY29ycmVjdCBzY2FsaW5nXG4gIEBpZiB1bml0KCRiYXNlKSA9PSAncmVtJyB7XG4gICAgJGJhc2U6IHN0cmlwLXVuaXQoJGJhc2UpICogMTZweDtcbiAgfVxuXG4gIEBpZiAkY291bnQgPT0gMSB7XG4gICAgQHJldHVybiAtemYtdG8tcmVtKCR2YWx1ZXMsICRiYXNlKTtcbiAgfVxuXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGNvdW50IHtcbiAgICAkcmVtLXZhbHVlczogYXBwZW5kKCRyZW0tdmFsdWVzLCAtemYtdG8tcmVtKG50aCgkdmFsdWVzLCAkaSksICRiYXNlKSk7XG4gIH1cblxuICBAcmV0dXJuICRyZW0tdmFsdWVzO1xufVxuXG4vLyBDb252ZXJ0cyBhIHVuaXRsZXNzLCBwaXhlbCwgb3IgcmVtIHZhbHVlIHRvIGVtLCBmb3IgdXNlIGluIGJyZWFrcG9pbnRzLlxuQGZ1bmN0aW9uIC16Zi1icC10by1lbSgkdmFsdWUpIHtcbiAgLy8gUGl4ZWwgYW5kIHVuaXRsZXNzIHZhbHVlcyBhcmUgY29udmVydGVkIHRvIHJlbXNcbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAncHgnIG9yIHVuaXRsZXNzKCR2YWx1ZSkge1xuICAgICR2YWx1ZTogcmVtLWNhbGMoJHZhbHVlLCAkYmFzZTogMTZweCk7XG4gIH1cblxuICAvLyBUaGVuIHRoZSB2YWx1ZSBpcyBjb252ZXJ0ZWQgdG8gZW1zXG4gIEByZXR1cm4gc3RyaXAtdW5pdCgkdmFsdWUpICogMWVtO1xufVxuXG4vLy8gQ29udmVydHMgYSBwaXhlbCB2YWx1ZSB0byBtYXRjaGluZyByZW0gdmFsdWUuICpBbnkqIHZhbHVlIHBhc3NlZCwgcmVnYXJkbGVzcyBvZiB1bml0LCBpcyBhc3N1bWVkIHRvIGJlIGEgcGl4ZWwgdmFsdWUuIEJ5IGRlZmF1bHQsIHRoZSBiYXNlIHBpeGVsIHZhbHVlIHVzZWQgdG8gY2FsY3VsYXRlIHRoZSByZW0gdmFsdWUgaXMgdGFrZW4gZnJvbSB0aGUgYCRnbG9iYWwtZm9udC1zaXplYCB2YXJpYWJsZS5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkdmFsdWUgLSBQaXhlbCB2YWx1ZSB0byBjb252ZXJ0LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFzZSBbbnVsbF0gLSBCYXNlIGZvciBwaXhlbCBjb252ZXJzaW9uLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gQSBudW1iZXIgaW4gcmVtcywgY2FsY3VsYXRlZCBiYXNlZCBvbiB0aGUgZ2l2ZW4gdmFsdWUgYW5kIHRoZSBiYXNlIHBpeGVsIHZhbHVlLiByZW0gdmFsdWVzIGFyZSBwYXNzZWQgdGhyb3VnaCBhcyBpcy5cbkBmdW5jdGlvbiAtemYtdG8tcmVtKCR2YWx1ZSwgJGJhc2U6IG51bGwpIHtcbiAgLy8gQ2hlY2sgaWYgdGhlIHZhbHVlIGlzIGEgbnVtYmVyXG4gIEBpZiB0eXBlLW9mKCR2YWx1ZSkgIT0gJ251bWJlcicge1xuICAgIEBpZiAkdW5pdC13YXJuaW5ncyB7XG4gICAgICBAd2FybiBpbnNwZWN0KCR2YWx1ZSkgKyAnIHdhcyBwYXNzZWQgdG8gcmVtLWNhbGMoKSwgd2hpY2ggaXMgbm90IGEgbnVtYmVyLic7XG4gICAgfVxuICAgIEByZXR1cm4gJHZhbHVlO1xuICB9XG5cbiAgLy8gVHJhbnNmb3JtIGVtIGludG8gcmVtIGlmIHNvbWVvbmUgaGFuZHMgb3ZlciAnZW0nc1xuICBAaWYgdW5pdCgkdmFsdWUpID09ICdlbScge1xuICAgICR2YWx1ZTogc3RyaXAtdW5pdCgkdmFsdWUpICogMXJlbTtcbiAgfVxuXG4gIC8vIENhbGN1bGF0ZSByZW0gaWYgdW5pdHMgZm9yICR2YWx1ZSBpcyBub3QgcmVtIG9yIGVtXG4gIEBpZiB1bml0KCR2YWx1ZSkgIT0gJ3JlbScge1xuICAgICR2YWx1ZTogZGl2aWRlKHN0cmlwLXVuaXQoJHZhbHVlKSwgc3RyaXAtdW5pdCgkYmFzZSkpICogMXJlbTtcbiAgfVxuXG4gIC8vIFR1cm4gMHJlbSBpbnRvIDBcbiAgQGlmICR2YWx1ZSA9PSAwcmVtIHtcbiAgICAkdmFsdWU6IDA7XG4gIH1cblxuICBAcmV0dXJuICR2YWx1ZTtcbn1cblxuLy8vIENvbnZlcnRzIGEgcGl4ZWwsIHBlcmNlbnRhZ2UsIHJlbSBvciBlbSB2YWx1ZSB0byBhIHVuaXRsZXNzIHZhbHVlIGJhc2VkIG9uIGEgZ2l2ZW4gZm9udCBzaXplLiBJZGVhbCBmb3Igd29ya2luZyBvdXQgdW5pdGxlc3MgbGluZSBoZWlnaHRzLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR2YWx1ZSAtIFZhbHVlIHRvIGNvbnZlcnQgdG8gYSB1bml0bGVzcyBsaW5lIGhlaWdodFxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFzZSAtIFRoZSBmb250IHNpemUgdG8gdXNlIHRvIHdvcmsgb3V0IHRoZSBsaW5lIGhlaWdodCAtIGRlZmF1bHRzIHRvICRnbG9iYWwtZm9udC1zaXplXG4vLy9cbi8vLyBAcmV0dXJuIHtOdW1iZXJ9IC0gVW5pdGxlc3MgbnVtYmVyXG5AZnVuY3Rpb24gdW5pdGxlc3MtY2FsYygkdmFsdWUsICRiYXNlOiBudWxsKSB7XG5cbiAgLy8gSWYgbm8gYmFzZSBpcyBkZWZpbmVkLCBkZWZlciB0byB0aGUgZ2xvYmFsIGZvbnQgc2l6ZVxuICBAaWYgJGJhc2UgPT0gbnVsbCB7XG4gICAgJGJhc2U6ICRnbG9iYWwtZm9udC1zaXplO1xuICB9XG5cbiAgLy8gRmlyc3QsIGxldHMgY29udmVydCBvdXIgJGJhc2UgdG8gcGl4ZWxzXG5cbiAgLy8gSWYgdGhlIGJhc2UgZm9udCBzaXplIGlzIGEgJSwgdGhlbiBtdWx0aXBseSBpdCBieSAxNnB4XG4gIEBpZiB1bml0KCRiYXNlKSA9PSAnJScge1xuICAgICRiYXNlOiBkaXZpZGUoJGJhc2UsIDEwMCUpICogMTZweDtcbiAgfVxuXG4gIEBpZiB1bml0KCRiYXNlKSA9PSAncmVtJyB7XG4gICAgJGJhc2U6IHN0cmlwLXVuaXQoJGJhc2UpICogMTZweDtcbiAgfVxuXG4gIEBpZiB1bml0KCRiYXNlKSA9PSAnZW0nIHtcbiAgICAkYmFzZTogc3RyaXAtdW5pdCgkYmFzZSkgKiAxNnB4O1xuICB9XG5cbiAgLy8gTm93IGxldCdzIGNvbnZlcnQgb3VyIHZhbHVlIHRvIHBpeGVscyB0b29cbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAnJScge1xuICAgICR2YWx1ZTogZGl2aWRlKCR2YWx1ZSwgMTAwJSkgKiAkYmFzZTtcbiAgfVxuXG4gIEBpZiB1bml0KCR2YWx1ZSkgPT0gJ3JlbScge1xuICAgICR2YWx1ZTogc3RyaXAtdW5pdCgkdmFsdWUpICogJGJhc2U7XG4gIH1cblxuICBAaWYgdW5pdCgkdmFsdWUpID09ICdlbScge1xuICAgICR2YWx1ZTogc3RyaXAtdW5pdCgkdmFsdWUpICogJGJhc2U7XG4gIH1cblxuICAvLyAncHgnXG4gIEBpZiB1bml0KCR2YWx1ZSkgPT0gJ3B4JyB7XG4gICAgQHJldHVybiBkaXZpZGUoc3RyaXAtdW5pdCgkdmFsdWUpLCBzdHJpcC11bml0KCRiYXNlKSk7XG4gIH1cblxuICAvLyBhc3N1bWUgdGhhdCBsaW5lLWhlaWdodHMgZ3JlYXRlciB0aGFuIDEwIGFyZSBtZWFudCB0byBiZSBhYnNvbHV0ZSBpbiAncHgnXG4gIEBpZiB1bml0bGVzcygkdmFsdWUpIGFuZCAoJHZhbHVlID4gMTApIHtcbiAgICBAcmV0dXJuIGRpdmlkZSgkdmFsdWUsIHN0cmlwLXVuaXQoJGJhc2UpKTtcbiAgfVxuXG4gIEByZXR1cm4gJHZhbHVlO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZ1bmN0aW9uc1xuLy8vL1xuXG4vLyBQYXRjaCB0byBmaXggaXNzdWUgIzEyMDgwXG4kLXpmLWJwLXZhbHVlOiBudWxsO1xuXG4vLy8gQ3JlYXRlcyBhbiBpbm5lciBib3gtc2hhZG93IGZvciBvbmx5IG9uZSBzaWRlXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaWRlIC0gU2lkZSB0aGUgc2hhZG93IGlzIHN1cHBvc2VkIHRvIGFwcGVhci4gQ2FuIGJlIGB0b3BgLCBgbGVmdGAsIGByaWdodGAgb3IgYGJvdHRvbWAuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRzaXplIC0gV2lkdGggZm9yIHRoZSB0YXJnZXQgc2lkZS5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgLSBDb2xvciBvZiB0aGUgc2hhZG93LlxuQG1peGluIGlubmVyLXNpZGUtc2hhZG93KFxuICAkc2lkZTogYm90dG9tLFxuICAkc2l6ZTogMjBweCxcbiAgJGNvbG9yOiByZ2JhKCRibGFjaywgMC4yNSlcbikge1xuXG4gICRoZWxwZXI6IHJvdW5kKCRzaXplICogMC42NSk7XG5cbiAgQGlmICgkc2lkZSA9PSB0b3ApIHtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwICRoZWxwZXIgJHNpemUgKC0xKSokaGVscGVyICRjb2xvcjtcbiAgfSBAZWxzZSBpZiAoJHNpZGUgPT0gbGVmdCkge1xuICAgIGJveC1zaGFkb3c6IGluc2V0ICRoZWxwZXIgMCAkc2l6ZSAoLTEpKiRoZWxwZXIgJGNvbG9yO1xuICB9IEBlbHNlIGlmICgkc2lkZSA9PSByaWdodCkge1xuICAgIGJveC1zaGFkb3c6IGluc2V0ICgtMSkqJGhlbHBlciAwICRzaXplICgtMSkqJGhlbHBlciAkY29sb3I7XG4gIH0gQGVsc2UgaWYgKCRzaWRlID09IGJvdHRvbSkge1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgKC0xKSokaGVscGVyICRzaXplICgtMSkqJGhlbHBlciAkY29sb3I7XG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBDU1MgdHJpYW5nbGUsIHdoaWNoIGNhbiBiZSB1c2VkIGZvciBkcm9wZG93biBhcnJvd3MsIGRyb3Bkb3duIHBpcHMsIGFuZCBtb3JlLiBVc2UgdGhpcyBtaXhpbiBpbnNpZGUgYSBgJjo6YmVmb3JlYCBvciBgJjo6YWZ0ZXJgIHNlbGVjdG9yLCB0byBhdHRhY2ggdGhlIHRyaWFuZ2xlIHRvIGFuIGV4aXN0aW5nIGVsZW1lbnQuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJHRyaWFuZ2xlLXNpemUgLSBXaWR0aCBvZiB0aGUgdHJpYW5nbGUuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJHRyaWFuZ2xlLWNvbG9yIC0gQ29sb3Igb2YgdGhlIHRyaWFuZ2xlLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHRyaWFuZ2xlLWRpcmVjdGlvbiAtIERpcmVjdGlvbiB0aGUgdHJpYW5nbGUgcG9pbnRzLiBDYW4gYmUgYHVwYCwgYHJpZ2h0YCwgYGRvd25gLCBvciBgbGVmdGAuXG5AbWl4aW4gY3NzLXRyaWFuZ2xlKFxuICAkdHJpYW5nbGUtc2l6ZSxcbiAgJHRyaWFuZ2xlLWNvbG9yLFxuICAkdHJpYW5nbGUtZGlyZWN0aW9uXG4pIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG5cbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXdpZHRoOiAkdHJpYW5nbGUtc2l6ZTtcblxuICBjb250ZW50OiAnJztcblxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gZG93bikge1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgYm9yZGVyLWNvbG9yOiAkdHJpYW5nbGUtY29sb3IgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIH1cbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IHVwKSB7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICR0cmlhbmdsZS1jb2xvcjtcbiAgfVxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gcmlnaHQpIHtcbiAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAkdHJpYW5nbGUtY29sb3I7XG4gIH1cbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IGxlZnQpIHtcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICR0cmlhbmdsZS1jb2xvciB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIG1lbnUgaWNvbiB3aXRoIGEgc2V0IHdpZHRoLCBoZWlnaHQsIG51bWJlciBvZiBiYXJzLCBhbmQgY29sb3JzLiBUaGUgbWl4aW4gdXNlcyB0aGUgaGVpZ2h0IG9mIHRoZSBpY29uIGFuZCB0aGUgd2VpZ2h0IG9mIHRoZSBiYXJzIHRvIGRldGVybWluZSBzcGFjaW5nLiA8ZGl2IGNsYXNzPVwiZG9jcy1leGFtcGxlLWJ1cmdlclwiPjwvZGl2PlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYmxhY2tdIC0gQ29sb3IgdG8gdXNlIGZvciB0aGUgaWNvbi5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3ItaG92ZXIgWyRkYXJrLWdyYXldIC0gQ29sb3IgdG8gdXNlIHdoZW4gdGhlIGljb24gaXMgaG92ZXJlZCBvdmVyLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2lkdGggWzIwcHhdIC0gV2lkdGggb2YgdGhlIGljb24uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRoZWlnaHQgWzE2cHhdIC0gSGVpZ2h0IG9mIHRoZSBpY29uLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2VpZ2h0IFsycHhdIC0gSGVpZ2h0IG9mIGluZGl2aWR1YWwgYmFycyBpbiB0aGUgaWNvbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGJhcnMgWzNdIC0gTnVtYmVyIG9mIGJhcnMgaW4gdGhlIGljb24uXG5AbWl4aW4gaGFtYnVyZ2VyKFxuICAkY29sb3I6ICRibGFjayxcbiAgJGNvbG9yLWhvdmVyOiAkZGFyay1ncmF5LFxuICAkd2lkdGg6IDIwcHgsXG4gICRoZWlnaHQ6IDE2cHgsXG4gICR3ZWlnaHQ6IDJweCxcbiAgJGJhcnM6IDNcbikge1xuICAvLyBib3gtc2hhZG93IENTUyBvdXRwdXRcbiAgJHNoYWRvdzogKCk7XG4gICRob3Zlci1zaGFkb3c6ICgpO1xuXG4gIC8vIFNwYWNpbmcgYmV0d2VlbiBiYXJzIGlzIGNhbGN1bGF0ZWQgYmFzZWQgb24gdGhlIHRvdGFsIGhlaWdodCBvZiB0aGUgaWNvbiBhbmQgdGhlIHdlaWdodCBvZiBlYWNoIGJhclxuICAkc3BhY2luZzogZGl2aWRlKCRoZWlnaHQgLSAoJHdlaWdodCAqICRiYXJzKSwgJGJhcnMgLSAxKTtcblxuICBAaWYgdW5pdCgkc3BhY2luZykgPT0gJ3B4JyB7XG4gICAgJHNwYWNpbmc6IGZsb29yKCRzcGFjaW5nKTtcbiAgfVxuXG4gIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggJGJhcnMge1xuICAgICRvZmZzZXQ6ICgkd2VpZ2h0ICsgJHNwYWNpbmcpICogKCRpIC0gMSk7XG4gICAgJHNoYWRvdzogYXBwZW5kKCRzaGFkb3csIDAgJG9mZnNldCAwICRjb2xvciwgY29tbWEpO1xuICB9XG5cbiAgLy8gSWNvbiBjb250YWluZXJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHdpZHRoOiAkd2lkdGg7XG4gIGhlaWdodDogJGhlaWdodDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gIC8vIEljb24gYmFyc1xuICAmOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuXG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAkd2VpZ2h0O1xuXG4gICAgYmFja2dyb3VuZDogJGNvbG9yO1xuICAgIGJveC1zaGFkb3c6ICRzaGFkb3c7XG5cbiAgICBjb250ZW50OiAnJztcbiAgfVxuXG4gIC8vIEhvdmVyIHN0YXRlXG4gIEBpZiAkY29sb3ItaG92ZXIge1xuICAgIC8vIEdlbmVyYXRlIENTU1xuICAgIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggJGJhcnMge1xuICAgICAgJG9mZnNldDogKCR3ZWlnaHQgKyAkc3BhY2luZykgKiAoJGkgLSAxKTtcbiAgICAgICRob3Zlci1zaGFkb3c6IGFwcGVuZCgkaG92ZXItc2hhZG93LCAwICRvZmZzZXQgMCAkY29sb3ItaG92ZXIsIGNvbW1hKTtcbiAgICB9XG5cbiAgICAmOmhvdmVyOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAkY29sb3ItaG92ZXI7XG4gICAgICBib3gtc2hhZG93OiAkaG92ZXItc2hhZG93O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBhIGRvd253YXJkLWZhY2luZyB0cmlhbmdsZSBhcyBhIGJhY2tncm91bmQgaW1hZ2UgdG8gYW4gZWxlbWVudC4gVGhlIGltYWdlIGlzIGZvcm1hdHRlZCBhcyBhbiBTVkcsIG1ha2luZyBpdCBlYXN5IHRvIGNoYW5nZSB0aGUgY29sb3IuIEJlY2F1c2UgSW50ZXJuZXQgRXhwbG9yZXIgZG9lc24ndCBzdXBwb3J0IGVuY29kZWQgU1ZHcyBhcyBiYWNrZ3JvdW5kIGltYWdlcywgYSBQTkcgZmFsbGJhY2sgaXMgYWxzbyBpbmNsdWRlZC5cbi8vLyBUaGVyZSBhcmUgdHdvIFBORyBmYWxsYmFja3M6IGEgYmxhY2sgdHJpYW5nbGUgYW5kIGEgd2hpdGUgdHJpYW5nbGUuIFRoZSBvbmUgdXNlZCBkZXBlbmRzIG9uIHRoZSBsaWdodG5lc3Mgb2YgdGhlIGlucHV0IGNvbG9yLlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYmxhY2tdIC0gQ29sb3IgdG8gdXNlIGZvciB0aGUgdHJpYW5nbGUuXG5AbWl4aW4gYmFja2dyb3VuZC10cmlhbmdsZSgkY29sb3I6ICRibGFjaykge1xuICAkcmdiOiAncmdiJTI4I3tyb3VuZChyZWQoJGNvbG9yKSl9LCAje3JvdW5kKGdyZWVuKCRjb2xvcikpfSwgI3tyb3VuZChibHVlKCRjb2xvcikpfSUyOSc7XG5cbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWw7dXRmOCw8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2ZXJzaW9uPVwiMS4xXCIgd2lkdGg9XCIzMlwiIGhlaWdodD1cIjI0XCIgdmlld0JveD1cIjAgMCAzMiAyNFwiPjxwb2x5Z29uIHBvaW50cz1cIjAsMCAzMiwwIDE2LDI0XCIgc3R5bGU9XCJmaWxsOiAjeyRyZ2J9XCI+PC9wb2x5Z29uPjwvc3ZnPicpO1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDBcXDApIHtcbiAgICBAaWYgbGlnaHRuZXNzKCRjb2xvcikgPCA2MCUge1xuICAgICAgLy8gV2hpdGUgdHJpYW5nbGVcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFDQUFBQUFZQ0FZQUFBQ2JVLzgwQUFBQUdYUkZXSFJUYjJaMGQyRnlaUUJCWkc5aVpTQkpiV0ZuWlZKbFlXUjVjY2xsUEFBQUFJcEpSRUZVZU5yRWtja05nREFNQkJmUmtFdDBPYlJCQmRzR1hVRGdtUWZLNFhoSDJtOGN6UUFBeTI3UjN0c3c0UWZlMng4dU9PNm9ZTGI2R2xPb3IzR0Yrc3dVUkFPbVVKK1J3dEVKczlXdlRHRVl4QlhxSTFNUUFaaENmVVFLUnpETVZqK1R3ckFJVjZqdlNVRWtZQXIxTFNrY3lUQmIvVitLWWZYN3hBZXVzcTNzTER0R0gza0VHQUNQV0lmbE5aZmhSUUFBQUFCSlJVNUVya0pnZ2c9PScpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAvLyBCbGFjayB0cmlhbmdsZVxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUNBQUFBQVlDQVlBQUFDYlUvODBBQUFBR1hSRldIUlRiMlowZDJGeVpRQkJaRzlpWlNCSmJXRm5aVkpsWVdSNWNjbGxQQUFBQU1CSlJFRlVlTnJFbGxzT2hDQU1SVnN6QzlJbHpVN0tDbVZIVEpzb01XWU1VdHB5djlCZ2J1WFFCNVpTZGdCWVlZNHljZ0Jpdms4S1lGc1FNZk1pVFRCUDRvM25VekNLek9hYkxKYkx5Mi9nMzFldkdrQWdpblI0L1plZ0tINXFYM2JKQ3NjQTN0MHgza2dPNXRRRnloaEZmNTB4UnFGTGJ5TVVOSlF6Z3lqR1Mvd2dDcHZLcWtSQnB1V3JFNFY5ZCsxRTRkUFVYcUlnMTA3U1FPRS8yRFJReE13VER5Z0lJblZERVQ5VDNsQ29qLzZqL1ZDbUdqWk9sMmxLcFo4QUF3RFFQN3pJaW1ER0ZRQUFBQUJKUlU1RXJrSmdnZz09Jyk7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBcHBsaWVzIHRoZSBtaWNybyBjbGVhcmZpeCBoYWNrIHBvcHVsYXJpemVkIGJ5IE5pY29sYXMgR2FsbGFnaGVyLiBJbmNsdWRlIHRoaXMgbWl4aW4gb24gYSBjb250YWluZXIgaWYgaXRzIGNoaWxkcmVuIGFyZSBhbGwgZmxvYXRlZCwgdG8gZ2l2ZSB0aGUgY29udGFpbmVyIGEgcHJvcGVyIGhlaWdodC5cbi8vLyBUaGUgY2xlYXJmaXggaXMgYXVnbWVudGVkIHdpdGggc3BlY2lmaWMgc3R5bGVzIHRvIHByZXZlbnQgYm9yZGVycyBpbiBmbGV4Ym94IGVudmlyb25tZW50c1xuLy8vIEBsaW5rIGh0dHA6Ly9uaWNvbGFzZ2FsbGFnaGVyLmNvbS9taWNyby1jbGVhcmZpeC1oYWNrLyBNaWNybyBDbGVhcmZpeCBIYWNrXG4vLy8gQGxpbmsgaHR0cDovL2RhbmlzYWRlc2lnbmVyLmNvbS9ibG9nL2ZsZXhib3gtY2xlYXItZml4LXBzZXVkby1lbGVtZW50cy8gRmxleGJveCBmaXhcbkBtaXhpbiBjbGVhcmZpeCB7XG4gICY6OmJlZm9yZSxcbiAgJjo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6ICcgJztcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleC1iYXNpczogMDtcbiAgICAgIG9yZGVyOiAxO1xuICAgIH1cbiAgfVxuXG4gICY6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxufVxuXG4vLy8gQWRkcyBDU1MgZm9yIGEgXCJxdWFudGl0eSBxdWVyeVwiIHNlbGVjdG9yIHRoYXQgYXV0b21hdGljYWxseSBzaXplcyBlbGVtZW50cyBiYXNlZCBvbiBob3cgbWFueSB0aGVyZSBhcmUgaW5zaWRlIGEgY29udGFpbmVyLlxuLy8vIEBsaW5rIGh0dHA6Ly9hbGlzdGFwYXJ0LmNvbS9hcnRpY2xlL3F1YW50aXR5LXF1ZXJpZXMtZm9yLWNzcyBRdWFudGl0eSBRdWVyaWVzIGZvciBDU1Ncbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbWF4IC0gTWF4aW11bSBudW1iZXIgb2YgaXRlbXMgdG8gZGV0ZWN0LiBUaGUgaGlnaGVyIHRoaXMgbnVtYmVyIGlzLCB0aGUgbW9yZSBDU1MgdGhhdCdzIHJlcXVpcmVkIHRvIGNvdmVyIGVhY2ggbnVtYmVyIG9mIGl0ZW1zLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGVsZW0gW2xpXSAtIFRhZyB0byB1c2UgZm9yIHNpYmxpbmcgc2VsZWN0b3JzLlxuQG1peGluIGF1dG8td2lkdGgoJG1heCwgJGVsZW06IGxpKSB7XG4gIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggJG1heCB7XG4gICAgJjpudGgtbGFzdC1jaGlsZCgjeyRpfSk6Zmlyc3QtY2hpbGQsXG4gICAgJjpudGgtbGFzdC1jaGlsZCgjeyRpfSk6Zmlyc3QtY2hpbGQgfiAjeyRlbGVtfSB7XG4gICAgICB3aWR0aDogcGVyY2VudGFnZShkaXZpZGUoMSwgJGkpKTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIFJlbW92ZXMgdGhlIGZvY3VzIHJpbmcgYXJvdW5kIGFuIGVsZW1lbnQgd2hlbiBhIG1vdXNlIGlucHV0IGlzIGRldGVjdGVkLlxuQG1peGluIGRpc2FibGUtbW91c2Utb3V0bGluZSB7XG4gIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAmIHtcbiAgICBvdXRsaW5lOiAwO1xuICB9XG59XG5cbi8vLyBNYWtlcyBhbiBlbGVtZW50IHZpc3VhbGx5IGhpZGRlbiwgYnV0IHN0aWxsIGFjY2Vzc2libGUgdG8ga2V5Ym9hcmRzIGFuZCBhc3Npc3RpdmUgZGV2aWNlcy5cbi8vLyBAbGluayBodHRwOi8vc25vb2suY2EvYXJjaGl2ZXMvaHRtbF9hbmRfY3NzL2hpZGluZy1jb250ZW50LWZvci1hY2Nlc3NpYmlsaXR5IEhpZGluZyBDb250ZW50IGZvciBBY2Nlc3NpYmlsaXR5XG4vLy8gQGxpbmsgaHR0cDovL2h1Z29naXJhdWRlbC5jb20vMjAxNi8xMC8xMy9jc3MtaGlkZS1hbmQtc2Vlay9cbi8vL1xuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGVuZm9yY2UgLSBJZiBgdHJ1ZWAsIHVzZSBgIWltcG9ydGFudGAgb24gYXBwbGllZCBwcm9wZXJ0aWVzXG5AbWl4aW4gZWxlbWVudC1pbnZpc2libGUoXG4gICRlbmZvcmNlOiB0cnVlXG4pIHtcbiAgJGltcG9ydGFudDogaWYoJGVuZm9yY2UsICchaW1wb3J0YW50JywgbnVsbCk7XG5cbiAgcG9zaXRpb246IGFic29sdXRlICN7JGltcG9ydGFudH07XG4gIHdpZHRoOiAxcHggI3skaW1wb3J0YW50fTtcbiAgaGVpZ2h0OiAxcHggI3skaW1wb3J0YW50fTtcbiAgcGFkZGluZzogMCAjeyRpbXBvcnRhbnR9O1xuICBvdmVyZmxvdzogaGlkZGVuICN7JGltcG9ydGFudH07XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCkgI3skaW1wb3J0YW50fTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcCAjeyRpbXBvcnRhbnR9O1xuICBib3JkZXI6IDAgI3skaW1wb3J0YW50fTtcbn1cblxuLy8vIFJldmVyc2VzIHRoZSBDU1Mgb3V0cHV0IGNyZWF0ZWQgYnkgdGhlIGBlbGVtZW50LWludmlzaWJsZSgpYCBtaXhpbi5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRlbmZvcmNlIC0gSWYgYHRydWVgLCB1c2UgYCFpbXBvcnRhbnRgIG9uIGFwcGxpZWQgcHJvcGVydGllc1xuQG1peGluIGVsZW1lbnQtaW52aXNpYmxlLW9mZihcbiAgJGVuZm9yY2U6IHRydWVcbikge1xuICAkaW1wb3J0YW50OiBpZigkZW5mb3JjZSwgJyFpbXBvcnRhbnQnLCBudWxsKTtcblxuICBwb3NpdGlvbjogc3RhdGljICN7JGltcG9ydGFudH07XG4gIHdpZHRoOiBhdXRvICN7JGltcG9ydGFudH07XG4gIGhlaWdodDogYXV0byAjeyRpbXBvcnRhbnR9O1xuICBvdmVyZmxvdzogdmlzaWJsZSAjeyRpbXBvcnRhbnR9O1xuICBjbGlwOiBhdXRvICN7JGltcG9ydGFudH07XG4gIHdoaXRlLXNwYWNlOiBub3JtYWwgI3skaW1wb3J0YW50fTtcbn1cblxuLy8vIFZlcnRpY2FsbHkgY2VudGVycyB0aGUgZWxlbWVudCBpbnNpZGUgb2YgaXRzIGZpcnN0IG5vbi1zdGF0aWMgcGFyZW50LFxuLy8vIEBsaW5rIGh0dHA6Ly93d3cuc2l0ZXBvaW50LmNvbS9jZW50ZXJpbmctd2l0aC1zYXNzLyBDZW50ZXJpbmcgV2l0aCBTYXNzXG5AbWl4aW4gdmVydGljYWwtY2VudGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuXG4vLy8gSG9yaXpvbnRhbGx5IGNlbnRlcnMgdGhlIGVsZW1lbnQgaW5zaWRlIG9mIGl0cyBmaXJzdCBub24tc3RhdGljIHBhcmVudCxcbi8vLyBAbGluayBodHRwOi8vd3d3LnNpdGVwb2ludC5jb20vY2VudGVyaW5nLXdpdGgtc2Fzcy8gQ2VudGVyaW5nIFdpdGggU2Fzc1xuQG1peGluIGhvcml6b250YWwtY2VudGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbn1cblxuLy8vIEFic29sdXRlbHkgY2VudGVycyB0aGUgZWxlbWVudCBpbnNpZGUgb2YgaXRzIGZpcnN0IG5vbi1zdGF0aWMgcGFyZW50LFxuLy8vIEBsaW5rIGh0dHA6Ly93d3cuc2l0ZXBvaW50LmNvbS9jZW50ZXJpbmctd2l0aC1zYXNzLyBDZW50ZXJpbmcgV2l0aCBTYXNzXG5AbWl4aW4gYWJzb2x1dGUtY2VudGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbn1cblxuLy8vIEl0ZXJhdGVzIHRocm91Z2ggYnJlYWtwb2ludHMgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnQtY2xhc3Nlc2AgYW5kIHByaW50cyB0aGUgQ1NTIGluc2lkZSB0aGUgbWl4aW4gYXQgZWFjaCBicmVha3BvaW50J3MgbWVkaWEgcXVlcnkuIFVzZSB0aGlzIHdpdGggdGhlIGdyaWQsIG9yIGFueSBvdGhlciBjb21wb25lbnQgdGhhdCBoYXMgcmVzcG9uc2l2ZSBjbGFzc2VzLlxuLy8vXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkc21hbGwgW3RydWVdIC0gSWYgYGZhbHNlYCwgdGhlIG1peGluIHdpbGwgc2tpcCB0aGUgYHNtYWxsYCBicmVha3BvaW50LiBVc2UgdGhpcyB3aXRoIGNvbXBvbmVudHMgdGhhdCBkb24ndCBwcmVmaXggY2xhc3NlcyB3aXRoIGBzbWFsbC1gLCBvbmx5IGBtZWRpdW0tYCBhbmQgdXAuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkYXV0by1pbnNlcnQtYnJlYWtwb2ludHMgW3RydWVdIC0gSWYgYGZhbHNlYCwgdGhlIG1peGluIHdpbGwgaXRlcmF0ZSBvdmVyIGJyZWFrcG9pbnRzIHdpdGhvdXQgZG9pbmcgdGhlIG1lZGlhIHF1ZXJ5IGl0c2VsZi4gVXNlZnVsIGZvciBtb3JlIGNvbXBsZXggbWVkaWEgcXVlcnkgZ2VuZXJhdGlvbiBhcyBpbiB0aGUgbWFyZ2luIGdyaWQuXG5AbWl4aW4gLXpmLWVhY2gtYnJlYWtwb2ludChcbiAgJHNtYWxsOiB0cnVlLFxuICAkYXV0by1pbnNlcnQtYnJlYWtwb2ludHM6IHRydWVcbikge1xuICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50LWluKGF1dG8sIC16Zi1ib29sKCRzbWFsbCksIC16Zi1ib29sKCRhdXRvLWluc2VydC1icmVha3BvaW50cykpIHtcbiAgICBAY29udGVudFxuICB9O1xufVxuXG4vLy8gSXRlcmF0ZXMgd2l0aCBgQGNvbnRlbnRgIHRocm91Z2ggdGhlIGdpdmVuIGxpc3Qgb2YgYnJlYWtwb2ludHMgYCRicmVha3BvaW50c2AuXG4vLy9cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZHxMaXN0fSAkYnJlYWtwb2ludHMgW2F1dG9dIC0gQnJlYWtwb2ludHMgdG8gaXRlcmF0ZXMgb24uIEl0IGNhbiBiZSBhIGJyZWFrcG9pbnQgbmFtZSwgbGlzdCBvZiBicmVha3BvaW50cyBvciBgYXV0b2AgZm9yIGFsbCBicmVha3BvaW50cy5cbi8vLyBAcGFyYW0ge0Jvb2xlYW58TnVsbH0gJHplcm8tYnJlYWtwb2ludCBbbnVsbF0gLSBXaGV0aGVyIHRoZSB6ZXJvLWJyZWFrcG9pbnQgKG9mdGVuIGBzbWFsbGApIG11c3QgYmUgaW5jbHVkZWQuIElmIGB0cnVlYCwgaXQgd2lsbCBhbHdheXMgYmUgYWRkZWQgdG8gdGhlIGxpc3QgaWYgbm90IGFscmVhZHkgdGhlcmUuIElmIGBmYWxzZWAsIGl0IHdpbGwgYWx3YXlzIGJlIHJlbW92ZWQuIERvZXMgbm90aGluZyBieSBkZWZhdWx0LlxuLy8vIEBwYXJhbSB7Qm9vbGVhbnxLZXl3b3JkfSAkbWVkaWEtcXVlcmllcyBbdHJ1ZV0gLSBXaGV0aGVyIG1lZGlhLXF1ZXJpZXMgbXVzdCBiZSBnZW5lcmF0ZWQuIElmIGBmb3ItbGlzdHNgLCBvbmx5IGdlbmVyYXRlIG1lZGlhLXF1ZXJpZXMgd2hlbiBgJGJyZWFrcG9pbnRzYCBpcyBhIGxpc3QuXG5AbWl4aW4gLXpmLWVhY2gtYnJlYWtwb2ludC1pbihcbiAgJGJyZWFrcG9pbnRzOiBhdXRvLFxuICAkemVyby1icmVha3BvaW50OiBudWxsLFxuICAkbWVkaWEtcXVlcmllczogdHJ1ZVxuKSB7XG4gICQtbGlzdDogKCk7XG4gICQtYnJlYWtwb2ludHMtaXMtYS1saXN0OiB0cnVlO1xuXG4gIC8vIFJldHJpZXZlIHRoZSBsaXN0IG9mIGJyZWFrcG9pbnQocykgdG8gaXRlcmF0ZSBvbi5cbiAgQGlmICRicmVha3BvaW50cyA9PSBhdXRvIHtcbiAgICAkLWxpc3Q6ICRicmVha3BvaW50LWNsYXNzZXM7XG4gIH1cbiAgQGVsc2UgaWYgdHlwZS1vZigkYnJlYWtwb2ludHMpID09ICdsaXN0JyB7XG4gICAgJC1saXN0OiAkYnJlYWtwb2ludHM7XG4gIH1cbiAgQGVsc2UgaWYgdHlwZS1vZigkYnJlYWtwb2ludHMpID09ICdzdHJpbmcnIHtcbiAgICAkLWxpc3Q6ICgkYnJlYWtwb2ludHMpO1xuICAgICQtYnJlYWtwb2ludHMtaXMtYS1saXN0OiBmYWxzZTtcbiAgfVxuICBAZWxzZSB7XG4gICAgQGVycm9yICdXcm9uZyBzeW50YXggZm9yIFwiJGJyZWFrcG9pbnRzXCIgaW4gXCItemYtZWFjaC1icmVha3BvaW50LWluKClcIi4gR290IFwiI3skYnJlYWtwb2ludHN9XCIgKCN7dHlwZS1vZigkYnJlYWtwb2ludHMpfSkuIEV4cGVjdGVkIGEgYnJlYWtwb2ludCBuYW1lLCBhIGxpc3Qgb2YgYnJlYWtwb2ludHMgb3IgXCJhdXRvXCInO1xuICB9XG5cbiAgLy8gQWRkIG9yIHJlbW92ZSB0aGUgemVybyBicmVha3BvaW50IGFjY29yZGluZyB0byBgJHplcm8tYnJlYWtwb2ludGBcbiAgQGlmICR6ZXJvLWJyZWFrcG9pbnQgPT0gdHJ1ZSB7XG4gICAgJC1saXN0OiBqb2luKCgkLXpmLXplcm8tYnJlYWtwb2ludCksIHNsLXJlbW92ZSgkLWxpc3QsICQtemYtemVyby1icmVha3BvaW50KSk7XG4gIH1cbiAgQGVsc2UgaWYgJHplcm8tYnJlYWtwb2ludCA9PSBmYWxzZSB7XG4gICAgJC1saXN0OiBzbC1yZW1vdmUoJC1saXN0LCAkLXpmLXplcm8tYnJlYWtwb2ludCk7XG4gIH1cblxuICAvLyBJdGVyYXRlIG9uIGJyZWFrcG9pbnQocylcbiAgQGVhY2ggJGJwIGluICQtbGlzdCB7XG4gICAgJG9sZC16Zi1zaXplOiBudWxsO1xuICAgIEBpZiBnbG9iYWwtdmFyaWFibGUtZXhpc3RzKC16Zi1zaXplKSB7XG4gICAgICAkb2xkLXpmLXNpemU6ICQtemYtc2l6ZTtcbiAgICB9XG4gICAgJC16Zi1zaXplOiAkYnAgIWdsb2JhbDtcblxuICAgIEBpZiAoJG1lZGlhLXF1ZXJpZXMgPT0gdHJ1ZSBvciAoJG1lZGlhLXF1ZXJpZXMgPT0gJ2Zvci1saXN0cycgYW5kICQtYnJlYWtwb2ludHMtaXMtYS1saXN0KSkge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnApIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cblxuICAgICQtemYtc2l6ZTogJG9sZC16Zi1zaXplICFnbG9iYWw7XG4gIH1cbn1cblxuLy8vIEdlbmVyYXRlIHRoZSBgQGNvbnRlbnRgIHBhc3NlZCB0byB0aGUgbWl4aW4gd2l0aCBhIHZhbHVlIGAkLXpmLWJwLXZhbHVlYCByZWxhdGVkIHRvIGEgYnJlYWtwb2ludCwgZGVwZW5kaW5nIG9uIHRoZSBgJG5hbWVgIHBhcmFtZXRlcjpcbi8vLyAtIEZvciBhIHNpbmdsZSB2YWx1ZSwgYCQtemYtYnAtdmFsdWVgIGlzIHRoaXMgdmFsdWUuXG4vLy8gLSBGb3IgYSBicmVha3BvaW50IG5hbWUsIGAkLXpmLWJwLXZhbHVlYCBpcyB0aGUgY29ycmVzcG9uZGluZyBicmVha3BvaW50IHZhbHVlIGluIGAkbWFwYC5cbi8vLyAtIEZvciBcImF1dG9cIiwgYCQtemYtYnAtdmFsdWVgIGlzIHRoZSBjb3JyZXNwb25kaW5nIGJyZWFrcG9pbnQgdmFsdWUgaW4gYCRtYXBgIGFuZCBpcyBwYXNzZWQgdG8gYEBjb250ZW50YCwgd2hpY2ggaXMgbWFkZSByZXNwb25zaXZlIGZvciBlYWNoIGJyZWFrcG9pbnQgb2YgYCRtYXBgLlxuLy8vIEBwYXJhbSB7TnVtYmVyfEFycmF5fEtleXdvcmR9ICRuYW1lIFthdXRvXSAtIFNpbmdsZSB2YWx1ZSwgYnJlYWtwb2ludCBuYW1lLCBvciBsaXN0IG9mIGJyZWFrcG9pbnQgbmFtZXMgdG8gdXNlLiBcImF1dG9cIiBieSBkZWZhdWx0LlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJG1hcCAtIE1hcCBvZiBicmVha3BvaW50cyBhbmQgdmFsdWVzIG9yIHNpbmdsZSB2YWx1ZSB0byB1c2UuXG5AbWl4aW4gLXpmLWJyZWFrcG9pbnQtdmFsdWUoXG4gICRuYW1lOiBhdXRvLFxuICAkbWFwOiBudWxsXG4pIHtcbiAgQGlmICRuYW1lID09IGF1dG8gYW5kIHR5cGUtb2YoJG1hcCkgPT0gJ21hcCcge1xuICAgIC8vIFwiYXV0b1wiXG4gICAgQGVhY2ggJGssICR2IGluICRtYXAge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkaykge1xuICAgICAgICBAaW5jbHVkZSAtemYtYnJlYWtwb2ludC12YWx1ZSgkdiwgJG1hcCkge1xuICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAvLyBicmVha3BvaW50IG5hbWVcbiAgICBAaWYgdHlwZS1vZigkbmFtZSkgPT0gJ3N0cmluZycge1xuICAgICAgJGJwLXZhbHVlOiAtemYtZ2V0LWJwLXZhbCgkbWFwLCAkbmFtZSk7XG4gICAgICBAaWYgJGJwLXZhbHVlICE9IG51bGwge1xuICAgICAgICAkbmFtZTogJGJwLXZhbHVlO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIGJyZWFrcG9pbnQgdmFsdWVcbiAgICAkLXpmLWJwLXZhbHVlOiAkbmFtZSAhZ2xvYmFsO1xuICAgIEBjb250ZW50O1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgeHktZ3JpZFxuLy8vL1xuXG4vLyBNYXJnaW4gR3JpZCBjbGFzc2VzXG5AbWl4aW4geHktYmFzZS1ncmlkLWNsYXNzZXMge1xuXG4gIC8vIEdyaWQgQ29udGFpbmVyXG4gIC5ncmlkLWNvbnRhaW5lciB7XG4gICAgQGluY2x1ZGUgeHktZ3JpZC1jb250YWluZXI7XG5cbiAgICAmLmZsdWlkIHtcbiAgICAgIEBpbmNsdWRlIHh5LWdyaWQtY29udGFpbmVyKDEwMCUpO1xuICAgIH1cblxuICAgICYuZnVsbCB7XG4gICAgICBAaW5jbHVkZSB4eS1ncmlkLWNvbnRhaW5lcigxMDAlLCAwKTtcbiAgICB9XG4gIH1cblxuICAvLyBCYXNlIGdyaWQgc3R5bGVzXG4gIC5ncmlkLXgge1xuICAgIEBpbmNsdWRlIHh5LWdyaWQ7XG4gIH1cblxuICAuY2VsbCB7XG4gICAgQGluY2x1ZGUgeHktY2VsbChmdWxsLCAkZ3V0dGVyLXR5cGU6IG5vbmUpO1xuXG4gICAgJi5hdXRvIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtYmFzZShhdXRvKTtcbiAgICB9XG5cbiAgICAmLnNocmluayB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLWJhc2Uoc2hyaW5rKTtcbiAgICB9XG5cbiAgfVxuICAuZ3JpZC14IHtcbiAgICA+IC5hdXRvIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc2l6ZShhdXRvLCAkZ3V0dGVyLXR5cGU6IG5vbmUpO1xuICAgIH1cblxuICAgID4gLnNocmluayB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLXNpemUoc2hyaW5rLCAkZ3V0dGVyLXR5cGU6IG5vbmUpO1xuICAgIH1cbiAgfVxuXG4gIC8vIEF1dG8gd2lkdGhcbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCgpIHtcbiAgICAvLyBUaGlzIGlzIGEgYml0IG9mIGEgaGFjay93b3JrYXJvdW5kLCBzZWUgdGhlc2UgaXNzdWVzICYgUFJzIGZvciB0aGUgYmFja3N0b3J5OlxuICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9mb3VuZGF0aW9uL2ZvdW5kYXRpb24tc2l0ZXMvaXNzdWVzLzEwMjQ0XG4gICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL2ZvdW5kYXRpb24vZm91bmRhdGlvbi1zaXRlcy9wdWxsLzEwMjIyIGFuZFxuICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9mb3VuZGF0aW9uL2ZvdW5kYXRpb24tc2l0ZXMvcHVsbC8xMDE2NFxuICAgIC5ncmlkLXgge1xuICAgICAgJHN0cjogXCI+IC4jeyQtemYtc2l6ZX0tc2hyaW5rLCA+IC4jeyQtemYtc2l6ZX0tZnVsbFwiO1xuICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcbiAgICAgICAgJHN0cjogJHN0ciArIFwiLCA+IC4jeyQtemYtc2l6ZX0tI3skaX1cIjtcbiAgICAgIH1cbiAgICAgICN7JHN0cn0ge1xuICAgICAgICBmbGV4LWJhc2lzOiBhdXRvO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoKSB7XG4gICAgLy8gUmVzcG9uc2l2ZSBcImF1dG9cIiBtb2RpZmllclxuICAgIEBpZiBub3QoJC16Zi1zaXplID09ICQtemYtemVyby1icmVha3BvaW50KSB7XG4gICAgICAuZ3JpZC14ID4gLiN7JC16Zi1zaXplfS1hdXRvIHtcbiAgICAgICAgQGluY2x1ZGUgeHktY2VsbChhdXRvLCAkZ3V0dGVyLXR5cGU6IG5vbmUpO1xuICAgICAgfVxuICAgIH1cblxuICAgICUteHktY2VsbC1iYXNlLXNocmluay1ob3Jpem9udGFsLSN7JC16Zi1zaXplfSB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLWJhc2Uoc2hyaW5rKTtcbiAgICB9XG5cbiAgICAvLyBSZXNwb25zaXZlIFwic2hyaW5rXCIgbW9kaWZpZXJcbiAgICBAaWYgbm90KCQtemYtc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCkge1xuICAgICAgLmdyaWQteCA+IC4jeyQtemYtc2l6ZX0tc2hyaW5rIHtcbiAgICAgICAgQGV4dGVuZCAlLXh5LWNlbGwtYmFzZS1zaHJpbmstaG9yaXpvbnRhbC0jeyQtemYtc2l6ZX07XG4gICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc2l6ZShzaHJpbmssICRndXR0ZXItdHlwZTogbm9uZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gUmVzcG9uc2l2ZSB3aWR0aCBtb2RpZmllcnNcbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgICAgLy8gU2l6aW5nIChwZXJjZW50YWdlKVxuICAgICAgLmdyaWQteCA+IC4jeyQtemYtc2l6ZX0tI3skaX0ge1xuICAgICAgICBAZXh0ZW5kICUteHktY2VsbC1iYXNlLXNocmluay1ob3Jpem9udGFsLSN7JC16Zi1zaXplfTtcbiAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1zaXplKCRpLCAkZ3V0dGVyLXR5cGU6IG5vbmUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFJlc2V0IHdpZHRoIHdoZW4gdXNpbmcgYC5ncmlkLW1hcmdpbi14YCBub3Qgb24gYC5ncmlkLXhgXG4gIC5ncmlkLW1hcmdpbi14Om5vdCguZ3JpZC14KSA+IC5jZWxsIHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxuXG4gIC8vIFJlc2V0IGhlaWdodCB3aGVuIHVzaW5nIGAuZ3JpZC1tYXJnaW4teWAgbm90IG9uIGAuZ3JpZC15YFxuICAuZ3JpZC1tYXJnaW4teTpub3QoLmdyaWQteSkgPiAuY2VsbCB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG59XG5cbkBtaXhpbiAteHktYnJlYWtwb2ludC1jZWxsLWNsYXNzZXMoJGNsYXNzLWJyZWFrcG9pbnQsICRndXR0ZXItYnJlYWtwb2ludCwgJHZlcnRpY2FsKSB7XG4gICRwcmVmaXg6IGlmKCRjbGFzcy1icmVha3BvaW50ID09ICQtemYtemVyby1icmVha3BvaW50LCAnJywgJyN7JGNsYXNzLWJyZWFrcG9pbnR9LScpO1xuICA+IC4jeyRwcmVmaXh9YXV0byB7XG4gICAgQGluY2x1ZGUgeHktY2VsbC1zaXplKGF1dG8sICR2ZXJ0aWNhbDogJHZlcnRpY2FsKTtcbiAgfVxuXG4gID4gLiN7JHByZWZpeH1zaHJpbmsge1xuICAgIEBpbmNsdWRlIHh5LWNlbGwtc2l6ZShzaHJpbmssICR2ZXJ0aWNhbDogJHZlcnRpY2FsKTtcbiAgfVxuXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgLy8gU2l6aW5nIChwZXJjZW50YWdlKVxuICAgICRjbGFzc25hbWU6IGlmKCR2ZXJ0aWNhbCwgJy4jeyRjbGFzcy1icmVha3BvaW50fS0jeyRpfScsICcuI3skY2xhc3MtYnJlYWtwb2ludH0tI3skaX0nKTtcblxuICAgID4gI3skY2xhc3NuYW1lfSB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLXNpemUoJGksICR2ZXJ0aWNhbDogJHZlcnRpY2FsKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gTWFyZ2luIEdyaWQgY2xhc3Nlc1xuQG1peGluIHh5LW1hcmdpbi1ncmlkLWNsYXNzZXMoXG4gICRndXR0ZXItcG9zaXRpb246IGxlZnQgcmlnaHQsXG4gICR2ZXJ0aWNhbDogZmFsc2UsXG4gICR3cmFwcGluZy1zZWxlY3RvcjogJy5ncmlkLW1hcmdpbi14J1xuKXtcbiAgI3skd3JhcHBpbmctc2VsZWN0b3J9IHtcbiAgICBAaW5jbHVkZSB4eS1ndXR0ZXJzKCRuZWdhdGl2ZTogdHJ1ZSwgJGd1dHRlci1wb3NpdGlvbjogJGd1dHRlci1wb3NpdGlvbik7XG5cbiAgICAvLyBCYXNlIGNlbGwgc3R5bGVzXG4gICAgPiAuY2VsbCB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsKCR2ZXJ0aWNhbDogJHZlcnRpY2FsLCAkb3V0cHV0OiAoc2l6ZSBndXR0ZXJzKSk7XG4gICAgfVxuXG4gICAgLy8gYmFzZSBzdHlsZXMgbmVlZCB0byBhbGwgYmUgYmVmb3JlIHRoZSBhdXRvIGFuZCBzaHJpbmsgc3R5bGVzXG4gICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCgpIHtcbiAgICAgIEBpZih0eXBlLW9mKCRncmlkLW1hcmdpbi1ndXR0ZXJzKSA9PSAnbWFwJyBhbmQgbWFwLWhhcy1rZXkoJGdyaWQtbWFyZ2luLWd1dHRlcnMsICQtemYtc2l6ZSkgYW5kICQtemYtc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCkge1xuICAgICAgICA+IC5jZWxsIHtcbiAgICAgICAgICBAaW5jbHVkZSB4eS1jZWxsKCR2ZXJ0aWNhbDogJHZlcnRpY2FsLCAkb3V0cHV0OiAoc2l6ZSBndXR0ZXJzKSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCkge1xuXG4gICAgICAvLyBUaGlzIGlzIHB1cmVseSBmb3IgcmVzcG9uc2l2ZSBndXR0ZXJzIC0gdGhlIG1hcmdpbiBncmlkIGhhcyB0byBnbyBiYWNrIGFuZCBhZGp1c3Qgd2lkdGhzIChvciBoZWlnaHRzKVxuICAgICAgLy8gZm9yIGFsbCBwcmlvciBicmVha3BvaW50cy5cbiAgICAgIC8vIEFzIHRoZWlyIGd1dHRlciBpcyBkZWZpbmVkIHdpdGggdGhlaXIgd2lkdGgvaGVpZ2h0LCBldmVuIGJyZWFrcG9pbnQgd2l0aG91dCBhIG5ldyBtYXJnaW4gbXVzdCBiZVxuICAgICAgLy8gZ2VuZXJhdGVkIHRvIG5vdCBoYXZpbmcgdGhlaXIgd2lkdGgvaGVpZ2h0IG92ZXJyaWRlZCBieSByZS1hZGp1c3RlZCBzbWFsbGVyIGJyZWFrcG9pbnRzLlxuICAgICAgQGlmKHR5cGUtb2YoJGdyaWQtbWFyZ2luLWd1dHRlcnMpID09ICdtYXAnIGFuZCBtYXAtaGFzLWtleSgkZ3JpZC1tYXJnaW4tZ3V0dGVycywgJC16Zi1zaXplKSkge1xuICAgICAgICBAZWFjaCAkYnAgaW4gLXpmLWJyZWFrcG9pbnRzLWxlc3MtdGhhbigkLXpmLXNpemUpIHtcbiAgICAgICAgICBAaW5jbHVkZSAteHktYnJlYWtwb2ludC1jZWxsLWNsYXNzZXMoJGJwLCAkLXpmLXNpemUsICR2ZXJ0aWNhbCk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgLXh5LWJyZWFrcG9pbnQtY2VsbC1jbGFzc2VzKCQtemYtc2l6ZSwgJC16Zi1zaXplLCAkdmVydGljYWwpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBQYWRkaW5nIEdyaWQgY2xhc3Nlc1xuQG1peGluIHh5LXBhZGRpbmctZ3JpZC1jbGFzc2VzIHtcbiAgLmdyaWQtcGFkZGluZy14IHtcblxuICAgIC8vIE5lZ2F0aXZlIG1hcmdpbiBmb3IgbmVzdGVkIGdyaWRzXG4gICAgLmdyaWQtcGFkZGluZy14IHtcbiAgICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJG5lZ2F0aXZlOiB0cnVlKTtcbiAgICB9XG5cbiAgICAvLyBOZWdhdGl2ZSBtYXJnaW4gZm9yIGdyaWRzIHdpdGhpbiBgZ3JpZC1jb250YWluZXIvZ3JpZC1jb250YWluZXIuZmx1aWRgXG4gICAgLy8gVGhpcyBhbGxvd3MgbWFyZ2luIGFuZCBwYWRkaW5nIGdyaWRzIHRvIGxpbmUgdXAgd2l0aCBlYWNob3RoZXJcbiAgICAuZ3JpZC1jb250YWluZXI6bm90KC5mdWxsKSA+ICYge1xuICAgICAgQGluY2x1ZGUgeHktZ3V0dGVycygkbmVnYXRpdmU6IHRydWUpO1xuICAgIH1cblxuICAgIC8vIEJhc2UgY2VsbCBzdHlsZXNcbiAgICA+IC5jZWxsIHtcbiAgICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJGd1dHRlcnM6ICRncmlkLXBhZGRpbmctZ3V0dGVycywgJGd1dHRlci10eXBlOiBwYWRkaW5nKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gQmxvY2sgR3JpZCBjbGFzc2VzXG5AbWl4aW4geHktYmxvY2stZ3JpZC1jbGFzc2VzKCRtYXJnaW4tZ3JpZDogdHJ1ZSwgJHBhZGRpbmctZ3JpZDogdHJ1ZSkge1xuICBAaWYgJHBhZGRpbmctZ3JpZCB7XG4gICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCB7XG4gICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICR4eS1ibG9jay1ncmlkLW1heCB7XG4gICAgICAgIC4jeyQtemYtc2l6ZX0tdXAtI3skaX0ge1xuICAgICAgICAgIEBpbmNsdWRlIHh5LWdyaWQtbGF5b3V0KCRuOiAkaSwgJHNlbGVjdG9yOiAnLmNlbGwnLCAkZ3V0dGVyLXR5cGU6IHBhZGRpbmcsICRvdXRwdXQ6IChzaXplKSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaWYgJG1hcmdpbi1ncmlkIHtcbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50IHtcbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJHh5LWJsb2NrLWdyaWQtbWF4IHtcbiAgICAgICAgLy8gVGhpcyBpcyBwdXJlbHkgZm9yIHJlc3BvbnNpdmUgZ3V0dGVycyAtIHRoZSBtYXJnaW4gZ3JpZCBoYXMgdG8gZ28gYmFjayBhbmQgYWRqdXN0IHdpZHRocyAob3IgaGVpZ2h0cylcbiAgICAgICAgLy8gZm9yIHByaW9yIGJyZWFrcG9pbnRzIGJhc2VkIG9uIHRoZSByZXNwb25zaXZlIGd1dHRlci5cbiAgICAgICAgQGlmKHR5cGUtb2YoJGdyaWQtbWFyZ2luLWd1dHRlcnMpID09ICdtYXAnIGFuZCBtYXAtaGFzLWtleSgkZ3JpZC1tYXJnaW4tZ3V0dGVycywgJC16Zi1zaXplKSkge1xuICAgICAgICAgIEBlYWNoICRicCBpbiAtemYtYnJlYWtwb2ludHMtbGVzcy10aGFuKCQtemYtc2l6ZSkge1xuICAgICAgICAgICAgQGlmKG1hcC1oYXMta2V5KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCAkYnApKSB7XG4gICAgICAgICAgICAgIC5ncmlkLW1hcmdpbi14LiN7JGJwfS11cC0jeyRpfSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1sYXlvdXQoJG46ICRpLCAkc2VsZWN0b3I6ICcuY2VsbCcsICRndXR0ZXItdHlwZTogbWFyZ2luLCAkb3V0cHV0OiAoc2l6ZSkpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICR4eS1ibG9jay1ncmlkLW1heCB7XG4gICAgICAgIC5ncmlkLW1hcmdpbi14LiN7JC16Zi1zaXplfS11cC0jeyRpfSB7XG4gICAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1sYXlvdXQoJG46ICRpLCAkc2VsZWN0b3I6ICcuY2VsbCcsICRndXR0ZXItdHlwZTogbWFyZ2luLCAkb3V0cHV0OiAoc2l6ZSkpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIENvbGxhcHNlIGNsYXNzZXNcbkBtaXhpbiB4eS1jb2xsYXBzZS1ncmlkLWNsYXNzZXMoJG1hcmdpbi1ncmlkOiB0cnVlLCAkcGFkZGluZy1ncmlkOiB0cnVlKSB7XG4gIEBlYWNoICRicCBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICBAaWYgJG1hcmdpbi1ncmlkIHtcbiAgICAgIC4jeyRicH0tbWFyZ2luLWNvbGxhcHNlIHtcbiAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1jb2xsYXBzZSgkZ3V0dGVyLXR5cGU6IG1hcmdpbiwgJG1pbi1icmVha3BvaW50OiAkYnApO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkcGFkZGluZy1ncmlkIHtcbiAgICAgIC4jeyRicH0tcGFkZGluZy1jb2xsYXBzZSB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWdyaWQtY29sbGFwc2UoJGd1dHRlci10eXBlOiBwYWRkaW5nLCAkbWluLWJyZWFrcG9pbnQ6ICRicCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIE9mZnNldCBjbGFzc2VzXG5AbWl4aW4geHktb2Zmc2V0LWNlbGwtY2xhc3NlcyB7XG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQge1xuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgICAvLyBPZmZzZXRzXG4gICAgICAkbzogJGkgLSAxO1xuXG4gICAgICAuI3skLXpmLXNpemV9LW9mZnNldC0jeyRvfSB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtb2Zmc2V0KCRvLCAkZ3V0dGVyczogJGdyaWQtcGFkZGluZy1ndXR0ZXJzLCAkZ3V0dGVyLXR5cGU6IHBhZGRpbmcpO1xuICAgICAgfVxuXG4gICAgICAuZ3JpZC1tYXJnaW4teCA+IC4jeyQtemYtc2l6ZX0tb2Zmc2V0LSN7JG99IHtcbiAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1vZmZzZXQoJG8pO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBWZXJ0aWNhbCBHcmlkIGNsYXNzZXNcbkBtaXhpbiB4eS12ZXJ0aWNhbC1ncmlkLWNsYXNzZXMoXG4gICRtYXJnaW4tZ3JpZDogdHJ1ZSxcbiAgJHBhZGRpbmctZ3JpZDogdHJ1ZVxuKSB7XG5cbiAgLy8gQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCgpIHtcbiAgLy8gICBAaWYgbm90KCQtemYtc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCkge1xuICAvLyAgIH1cbiAgLy8gfVxuXG4gIC5ncmlkLXkge1xuICAgIEBpbmNsdWRlIHh5LWdyaWQodmVydGljYWwsIGZhbHNlKTtcblxuXG4gICAgPiAuY2VsbCB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLXJlc2V0KCk7XG4gICAgfVxuXG4gICAgPiAuYXV0byB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLXNpemUoYXV0bywgJGd1dHRlci10eXBlOiBub25lLCAkdmVydGljYWw6IHRydWUpO1xuICAgIH1cblxuICAgID4gLnNocmluayB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLXNpemUoc2hyaW5rLCAkZ3V0dGVyLXR5cGU6IG5vbmUsICR2ZXJ0aWNhbDogdHJ1ZSk7XG4gICAgfVxuXG5cbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCkge1xuICAgICAgLy8gVGhpcyBpcyBhIGJpdCBvZiBhIGhhY2svd29ya2Fyb3VuZCwgc2VlIHRoZXNlIGlzc3VlcyBhbmQgUFJzIGZvciB0aGUgYmFja3N0b3J5OlxuICAgICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL2ZvdW5kYXRpb24vZm91bmRhdGlvbi1zaXRlcy9pc3N1ZXMvMTAyNDRcbiAgICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9mb3VuZGF0aW9uL2ZvdW5kYXRpb24tc2l0ZXMvcHVsbC8xMDIyMiBhbmRcbiAgICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9mb3VuZGF0aW9uL2ZvdW5kYXRpb24tc2l0ZXMvcHVsbC8xMDE2NFxuICAgICAgJHN0cjogXCI+IC4jeyQtemYtc2l6ZX0tc2hyaW5rLCA+IC4jeyQtemYtc2l6ZX0tZnVsbFwiO1xuICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcbiAgICAgICAgJHN0cjogJHN0ciArIFwiLCA+IC4jeyQtemYtc2l6ZX0tI3skaX1cIjtcbiAgICAgIH1cbiAgICAgICN7JHN0cn0ge1xuICAgICAgICBmbGV4LWJhc2lzOiBhdXRvO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoKSB7XG4gICAgICAvLyBSZXNwb25zaXZlIFwiYXV0b1wiIG1vZGlmaWVyXG4gICAgICBAaWYgbm90KCQtemYtc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCkge1xuICAgICAgICA+IC4jeyQtemYtc2l6ZX0tYXV0byB7XG4gICAgICAgICAgQGluY2x1ZGUgeHktY2VsbChhdXRvLCAkZ3V0dGVyLXR5cGU6IG5vbmUsICR2ZXJ0aWNhbDogdHJ1ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJS14eS1jZWxsLWJhc2Utc2hyaW5rLXZlcnRpY2FsLSN7JC16Zi1zaXplfSB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtYmFzZShzaHJpbmspO1xuICAgICAgfVxuXG4gICAgICAvLyBSZXNwb25zaXZlIFwic2hyaW5rXCIgbW9kaWZpZXJcbiAgICAgIEBpZiBub3QoJC16Zi1zaXplID09ICQtemYtemVyby1icmVha3BvaW50KSB7XG4gICAgICAgID4gLiN7JC16Zi1zaXplfS1zaHJpbmsge1xuICAgICAgICAgIEBleHRlbmQgJS14eS1jZWxsLWJhc2Utc2hyaW5rLXZlcnRpY2FsLSN7JC16Zi1zaXplfTtcbiAgICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLXNpemUoc2hyaW5rLCAkZ3V0dGVyLXR5cGU6IG5vbmUsICR2ZXJ0aWNhbDogdHJ1ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gUmVzcG9uc2l2ZSB3aWR0aCBtb2RpZmllcnNcbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgICAgIC8vIFNpemluZyAocGVyY2VudGFnZSlcbiAgICAgICAgPiAuI3skLXpmLXNpemV9LSN7JGl9IHtcbiAgICAgICAgICBAZXh0ZW5kICUteHktY2VsbC1iYXNlLXNocmluay12ZXJ0aWNhbC0jeyQtemYtc2l6ZX07XG4gICAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1zaXplKCRpLCAkZ3V0dGVyLXR5cGU6IG5vbmUsICR2ZXJ0aWNhbDogdHJ1ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgIH1cbiAgfVxuXG4gIEBpZiAkcGFkZGluZy1ncmlkIHtcbiAgICAuZ3JpZC1wYWRkaW5nLXkge1xuICAgICAgLy8gTmVnYXRpdmUgbWFyZ2luIGZvciBuZXN0ZWQgZ3JpZHNcbiAgICAgIC5ncmlkLXBhZGRpbmcteSB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJG5lZ2F0aXZlOiB0cnVlLCAkZ3V0dGVyLXBvc2l0aW9uOiB0b3AgYm90dG9tKTtcbiAgICAgIH1cblxuICAgICAgLy8gQmFzZSBjZWxsIHN0eWxlc1xuICAgICAgPiAuY2VsbCB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJGd1dHRlcnM6ICRncmlkLXBhZGRpbmctZ3V0dGVycywgJGd1dHRlci10eXBlOiBwYWRkaW5nLCAkZ3V0dGVyLXBvc2l0aW9uOiB0b3AgYm90dG9tKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaWYgJG1hcmdpbi1ncmlkIHtcbiAgICBAaW5jbHVkZSB4eS1tYXJnaW4tZ3JpZC1jbGFzc2VzKHRvcCBib3R0b20sIHRydWUsICcuZ3JpZC1tYXJnaW4teScpO1xuICB9XG5cbn1cblxuQG1peGluIHh5LWZyYW1lLWdyaWQtY2xhc3NlcygkdmVydGljYWwtZ3JpZDogdHJ1ZSwgJG1hcmdpbi1ncmlkOiB0cnVlKSB7XG4gIC8vIEZyYW1lZCBncmlkIHN0eWxlc1xuICAuZ3JpZC1mcmFtZSB7XG4gICAgQGluY2x1ZGUgeHktZ3JpZC1mcmFtZTtcbiAgfVxuXG4gIC5jZWxsIC5ncmlkLWZyYW1lIHtcbiAgICB3aWR0aDogMTAwJTsgLy8gU2FtZSBhcyBpbmNsdWRlIHdpdGggJG5lc3RlZCwgYnV0IHdpdGggbGVzcyBjc3NcbiAgfVxuXG4gIC5jZWxsLWJsb2NrIHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsLWJsb2NrKCk7XG4gIH1cblxuICAuY2VsbC1ibG9jay15IHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsLWJsb2NrKHRydWUpO1xuICB9XG5cblxuICAuY2VsbC1ibG9jay1jb250YWluZXIge1xuICAgIEBpbmNsdWRlIHh5LWNlbGwtYmxvY2stY29udGFpbmVyKCk7XG4gIH1cblxuXG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoZmFsc2UpIHtcblxuICAgIC4jeyQtemYtc2l6ZX0tZ3JpZC1mcmFtZSB7XG4gICAgICBAaW5jbHVkZSB4eS1ncmlkLWZyYW1lO1xuICAgIH1cblxuICAgIC5jZWxsIC4jeyQtemYtc2l6ZX0tZ3JpZC1mcmFtZSB7XG4gICAgICB3aWR0aDogMTAwJTsgLy8gU2FtZSBhcyBpbmNsdWRlIHdpdGggJG5lc3RlZCwgYnV0IHdpdGggbGVzcyBjc3NcbiAgICB9XG5cbiAgICAuI3skLXpmLXNpemV9LWNlbGwtYmxvY2sge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1ibG9jaygpO1xuICAgIH1cblxuICAgIC4jeyQtemYtc2l6ZX0tY2VsbC1ibG9jay1jb250YWluZXIge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1ibG9jay1jb250YWluZXIoKTtcbiAgICB9XG5cbiAgICAuI3skLXpmLXNpemV9LWNlbGwtYmxvY2steSB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLWJsb2NrKHRydWUpO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkdmVydGljYWwtZ3JpZCB7XG4gICAgLmdyaWQteSB7XG4gICAgICAmLmdyaWQtZnJhbWUge1xuICAgICAgICBAaW5jbHVkZSB4eS1ncmlkLWZyYW1lKHRydWUpO1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludChmYWxzZSkge1xuICAgICAgICAmLiN7JC16Zi1zaXplfS1ncmlkLWZyYW1lIHtcbiAgICAgICAgICBAaW5jbHVkZSB4eS1ncmlkLWZyYW1lKHRydWUpO1xuICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgIH1cbiAgICB9XG4gICAgLmNlbGwge1xuICAgICAgLmdyaWQteS5ncmlkLWZyYW1lIHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlOyAvLyBTYW1lIGFzIGluY2x1ZGUgd2l0aCAkbmVzdGVkLCBidXQgd2l0aCBsZXNzIGNzc1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludChmYWxzZSkge1xuICAgICAgICAuZ3JpZC15LiN7JC16Zi1zaXplfS1ncmlkLWZyYW1lIHtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7IC8vIFNhbWUgYXMgaW5jbHVkZSB3aXRoICRuZXN0ZWQsIGJ1dCB3aXRoIGxlc3MgY3NzXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGlmICRtYXJnaW4tZ3JpZCB7XG4gICAgQGluY2x1ZGUgeHktbWFyZ2luLWdyaWQtY2xhc3Nlcyh0b3AgYm90dG9tLCB0cnVlLCAnLmdyaWQtbWFyZ2luLXknKTtcbiAgICAuZ3JpZC1mcmFtZS5ncmlkLW1hcmdpbi15IHtcbiAgICAgIEBpbmNsdWRlIHh5LWdyaWQtZnJhbWUodHJ1ZSwgZmFsc2UsICRncmlkLW1hcmdpbi1ndXR0ZXJzLCAkaW5jbHVkZS1iYXNlOiBmYWxzZSk7XG4gICAgfVxuICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoZmFsc2UpIHtcbiAgICAgIC5ncmlkLW1hcmdpbi15LiN7JC16Zi1zaXplfS1ncmlkLWZyYW1lIHtcbiAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1mcmFtZSh0cnVlLCBmYWxzZSwgJGdyaWQtbWFyZ2luLWd1dHRlcnMsICQtemYtc2l6ZSwgZmFsc2UpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBGaW5hbCBjbGFzc2VzXG5AbWl4aW4gZm91bmRhdGlvbi14eS1ncmlkLWNsYXNzZXMoXG4gICRiYXNlLWdyaWQ6IHRydWUsXG4gICRtYXJnaW4tZ3JpZDogdHJ1ZSxcbiAgJHBhZGRpbmctZ3JpZDogdHJ1ZSxcbiAgJGJsb2NrLWdyaWQ6IHRydWUsXG4gICRjb2xsYXBzZTogdHJ1ZSxcbiAgJG9mZnNldDogdHJ1ZSxcbiAgJHZlcnRpY2FsLWdyaWQ6IHRydWUsXG4gICRmcmFtZS1ncmlkOiB0cnVlXG4pIHtcblxuICAvLyBCYXNlIGdyaWQgc3R5bGVzXG4gIEBpZigkYmFzZS1ncmlkKSB7XG4gICAgQGluY2x1ZGUgeHktYmFzZS1ncmlkLWNsYXNzZXMoKTtcbiAgfVxuXG4gIC8vIE1hcmdpbiBncmlkXG4gIEBpZigkbWFyZ2luLWdyaWQpIHtcbiAgICBAaW5jbHVkZSB4eS1tYXJnaW4tZ3JpZC1jbGFzc2VzKCk7XG4gIH1cblxuICAvLyBQYWRkaW5nIGdyaWRcbiAgQGlmKCRwYWRkaW5nLWdyaWQpIHtcbiAgICBAaW5jbHVkZSB4eS1wYWRkaW5nLWdyaWQtY2xhc3NlcygpO1xuICB9XG5cbiAgLy8gQmxvY2sgZ3JpZFxuICBAaWYoJGJsb2NrLWdyaWQpIHtcbiAgICBAaW5jbHVkZSB4eS1ibG9jay1ncmlkLWNsYXNzZXMoJG1hcmdpbi1ncmlkLCAkcGFkZGluZy1ncmlkKTtcbiAgfVxuXG4gIC8vIENvbGxhcHNlIGd1dHRlcnNcbiAgQGlmKCRjb2xsYXBzZSkge1xuICAgIEBpbmNsdWRlIHh5LWNvbGxhcHNlLWdyaWQtY2xhc3NlcygkbWFyZ2luLWdyaWQsICRwYWRkaW5nLWdyaWQpO1xuICB9XG5cbiAgLy8gT2Zmc2V0IGd1dHRlcnNcbiAgQGlmKCRvZmZzZXQpIHtcbiAgICBAaW5jbHVkZSB4eS1vZmZzZXQtY2VsbC1jbGFzc2VzKCk7XG4gIH1cblxuICAvLyBWZXJ0aWNhbCBncmlkXG4gIEBpZigkdmVydGljYWwtZ3JpZCkge1xuICAgIEBpbmNsdWRlIHh5LXZlcnRpY2FsLWdyaWQtY2xhc3NlcygkbWFyZ2luLWdyaWQsICRwYWRkaW5nLWdyaWQpO1xuICB9XG5cbiAgQGlmICgkZnJhbWUtZ3JpZCkge1xuICAgIEBpbmNsdWRlIHh5LWZyYW1lLWdyaWQtY2xhc3NlcygkdmVydGljYWwtZ3JpZCwgJG1hcmdpbi1ncmlkKVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgeHktZ3JpZFxuLy8vL1xuXG4vLy8gQ3JlYXRlIGd1dHRlcnMgZm9yIGEgY2VsbC9jb250YWluZXIuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1tYXJnaW4tZ3V0dGVyc10gLSBNYXAgb3Igc2luZ2xlIHZhbHVlIGZvciBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGd1dHRlci10eXBlIFttYXJnaW5dIC0gVHlwZSBvZiBndXR0ZXIgdG8gb3V0cHV0LiBBY2NlcHRzIGVpdGhlciBtYXJnaW4gb3IgcGFkZGluZy5cbi8vLyBAcGFyYW0ge0xpc3R9ICRndXR0ZXItcG9zaXRpb24gW3JpZ2h0IGxlZnRdIC0gVGhlIHBvc2l0aW9uIHRvIGFwcGx5IGd1dHRlcnMgdG8uIEFjY2VwdHMgYHRvcGAsIGBib3R0b21gLCBgbGVmdGAsIGByaWdodGAgaW4gYW55IGNvbWJpbmF0aW9uLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJG5lZ2F0aXZlIFtmYWxzZV0gLSBXaGV0aGVyIHRvIGFwcGx5IHRoZSBndXR0ZXIgYXMgYSBuZWdhdGl2ZSB2YWx1ZS4gQ29tbW9ubHkgdXNlZCBmb3IgbmVzdGVkIGdyaWRzLlxuQG1peGluIHh5LWd1dHRlcnMoXG4gICRndXR0ZXJzOiAkZ3JpZC1tYXJnaW4tZ3V0dGVycyxcbiAgJGd1dHRlci10eXBlOiBtYXJnaW4sXG4gICRndXR0ZXItcG9zaXRpb246IHJpZ2h0IGxlZnQsXG4gICRuZWdhdGl2ZTogZmFsc2Vcbikge1xuICAkb3BlcmF0b3I6IGlmKCRuZWdhdGl2ZSwgJy0nLCAnJyk7XG5cbiAgLy8gSWYgd2UgaGF2ZSBkZWNsYXJlZCBuZWdhdGl2ZSBndXR0ZXJzLCBmb3JjZSB0eXBlIHRvIGBtYXJnaW4uXG4gICRndXR0ZXItdHlwZTogaWYoJG5lZ2F0aXZlLCAnbWFyZ2luJywgJGd1dHRlci10eXBlKTtcblxuICAvLyBPdXRwdXQgb3VyIG1hcmdpbiBndXR0ZXJzLlxuICBAaWYgKHR5cGUtb2YoJGd1dHRlcnMpID09ICdtYXAnKSB7XG4gICAgQGluY2x1ZGUgLXpmLWJyZWFrcG9pbnQtdmFsdWUoYXV0bywgJGd1dHRlcnMpIHtcbiAgICAgICRndXR0ZXI6IHJlbS1jYWxjKCQtemYtYnAtdmFsdWUpICogMC41O1xuXG4gICAgICAvLyBMb29wIHRocm91Z2ggZWFjaCBndXR0ZXIgcG9zaXRpb25cbiAgICAgIEBlYWNoICR2YWx1ZSBpbiAkZ3V0dGVyLXBvc2l0aW9uIHtcbiAgICAgICAgI3skZ3V0dGVyLXR5cGV9LSN7JHZhbHVlfTogdW5xdW90ZShcIiN7JG9wZXJhdG9yfSN7JGd1dHRlcn1cIik7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICh0eXBlLW9mKCRndXR0ZXJzKSA9PSAnbnVtYmVyJykge1xuICAgICRndXR0ZXI6IHJlbS1jYWxjKCRndXR0ZXJzKSAqIDAuNTtcblxuICAgIC8vIExvb3AgdGhyb3VnaCBlYWNoIGd1dHRlciBwb3NpdGlvblxuICAgIEBlYWNoICR2YWx1ZSBpbiAkZ3V0dGVyLXBvc2l0aW9uIHtcbiAgICAgICN7JGd1dHRlci10eXBlfS0jeyR2YWx1ZX06IHVucXVvdGUoXCIjeyRvcGVyYXRvcn0jeyRndXR0ZXJ9XCIpO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHh5LWdyaWRcbi8vLy9cblxuLy8vIENyZWF0ZXMgYSBtYXggd2lkdGggY29udGFpbmVyLCBkZXNpZ25lZCB0byBob3VzZSB5b3VyIGdyaWQgY29udGVudC5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2lkdGggWyRncmlkLWNvbnRhaW5lcl0gLSBhIHdpZHRoIHRvIGxpbWl0IHRoZSBjb250YWluZXIgdG8uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRwYWRkaW5nIFskZ3JpZC1jb250YWluZXItcGFkZGluZ10gLSBwYWRkaW5ncyBvZiB0aGUgY29udGFpbmVyLlxuQG1peGluIHh5LWdyaWQtY29udGFpbmVyKFxuICAkd2lkdGg6ICRncmlkLWNvbnRhaW5lcixcbiAgJHBhZGRpbmc6ICRncmlkLWNvbnRhaW5lci1wYWRkaW5nXG4pIHtcbiAgQGluY2x1ZGUgeHktZ3V0dGVycygkZ3V0dGVyczogJHBhZGRpbmcsICRndXR0ZXItdHlwZTogcGFkZGluZyk7XG5cbiAgbWF4LXdpZHRoOiAkd2lkdGg7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG5cbi8vLyBDcmVhdGVzIGEgY29udGFpbmVyIGZvciB5b3VyIGZsZXggY2VsbHMuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXJlY3Rpb24gW2hvcml6b250YWxdIC0gRWl0aGVyIGhvcml6b250YWwgb3IgdmVydGljYWwgZGlyZWN0aW9uIG9mIGNlbGxzIHdpdGhpbi5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICR3cmFwIFt0cnVlXSAtIElmIHRoZSBjZWxscyB3aXRoaW4gc2hvdWxkIHdyYXAgb3Igbm90LlxuQG1peGluIHh5LWdyaWQoXG4gICRkaXJlY3Rpb246IGhvcml6b250YWwsXG4gICR3cmFwOiB0cnVlXG4pIHtcbiAgJGRpcmVjdGlvbjogaWYoJGRpcmVjdGlvbiA9PSAnaG9yaXpvbnRhbCcsIHJvdywgY29sdW1uKTtcbiAgJHdyYXA6IGlmKCR3cmFwLCB3cmFwLCBub3dyYXApO1xuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogJGRpcmVjdGlvbiAkd3JhcDtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB4eS1ncmlkXG4vLy8vXG5cbi8vLyBSZXR1cm5zIHRoZSBhcHByb3ByaWF0ZSBDU1MgZmxleCB2YWx1ZSBmb3IgYSBjZWxsIGJhc2UuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIFtmdWxsXSAtIFRoZSBzaXplIG9mIHlvdXIgY2VsbC4gQWNjZXB0cyBgZnVsbGAsIGBhdXRvYCwgYHNocmlua2AsIGBncm93YCwgb3IgYW55IG90aGVyIHZhbHVlIHJlcHJlc2VudGluZyBhIGNlbGwgc2l6ZSAoaXQgd2lsbCBiZSB0cmVhdGVkIGFzIGBzaHJpbmtgKS5cbi8vL1xuLy8vIEByZXR1cm5zIHtMaXN0fSBUaGUgY2VsbCBmbGV4IHByb3BlcnR5IHZhbHVlLlxuQGZ1bmN0aW9uIHh5LWNlbGwtYmFzZSgkc2l6ZTogZnVsbCkge1xuICBAaWYgKCRzaXplID09ICdhdXRvJykge1xuICAgIEByZXR1cm4gMSAxIDA7XG4gIH1cbiAgQGVsc2UgaWYgKCRzaXplID09ICdncm93Jykge1xuICAgIEByZXR1cm4gMSAwIGF1dG87XG4gIH1cbiAgQGVsc2UgaWYgKCRzaXplID09ICdzaHJpbmsnIG9yICRzaXplID09ICdmdWxsJyBvciB6Zi1pcy1mcmFjdGlvbigkc2l6ZSwgJGFsbG93LW5vLWRlbm9taW5hdG9yOiB0cnVlKSkge1xuICAgIEByZXR1cm4gMCAwIGF1dG87XG4gIH1cbiAgQHJldHVybiBudWxsO1xufVxuXG4vLy8gQ2FsY3VsYXRlIHRoZSBzaXplIG9mIGEgY2VsbCBndXR0ZXJzLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtbWFyZ2luLWd1dHRlcnNdIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSBmb3IgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGJyZWFrcG9pbnQgW251bGxdIC0gVGhlIG5hbWUgb2YgdGhlIGJyZWFrcG9pbnQgc2l6ZSBpbiB5b3VyIGd1dHRlcnMgbWFwIHRvIGdldCB0aGUgc2l6ZSBmcm9tLiBJZiBgYXV0b2AsIHJldHVybnMgdGhlIHJlc3BvbnNpdmUgZ3V0dGVycyBtYXAgYCRndXR0ZXJzYC4gSWYgdXNpbmcgd2l0aCB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdGhpcyB3aWxsIGJlIHNldCBhdXRvbWF0aWNhbGx5IHVubGVzcyBtYW51YWxseSBlbnRlcmVkLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcnxNYXB9IFRoZSBjZWxsIGd1dHRlciBzaXplIG9yIHRoZSByZXNwb25zaXZlIGd1dHRlcnMgbWFwLlxuQGZ1bmN0aW9uIHh5LWNlbGwtZ3V0dGVycyhcbiAgJGd1dHRlcnM6ICRncmlkLW1hcmdpbi1ndXR0ZXJzLFxuICAkYnJlYWtwb2ludDogbnVsbFxuKSB7XG4gIC8vIEZvciBgYXV0b2AsIHJldHVybnMgdGhlIHJlc3BvbnNpdmUgbWFwIGAkZ3V0dGVyc2AuXG4gIEBpZiAoJGJyZWFrcG9pbnQgPT0gJ2F1dG8nKSB7XG4gICAgQHJldHVybiAkZ3V0dGVycztcbiAgfVxuXG4gIC8vIFVzZSB0aGUgY29udGV4dHVhbCBicmVha3BvaW50IGJ5IGRlZmF1bHQuXG4gICRicmVha3BvaW50OiAtemYtY3VycmVudC1icmVha3BvaW50KCRicmVha3BvaW50KTtcblxuICBAaWYgKCRicmVha3BvaW50KSB7XG4gICAgQHJldHVybiAtemYtZ2V0LWJwLXZhbCgkZ3V0dGVycywgJGJyZWFrcG9pbnQpO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAcmV0dXJuIC16Zi1nZXQtYnAtdmFsKCRndXR0ZXJzLCAkLXpmLXplcm8tYnJlYWtwb2ludCkgb3IgMDtcbiAgfVxufVxuXG4vLy8gUmV0dXJucyB0aGUgcGVyY2VudGFnZSBzaXplIG9mIGEgY2VsbC5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRzaXplIFskZ3JpZC1jb2x1bW5zXSAtIFNpemUgdG8gbWFrZSB0aGUgY2VsbC4gWW91IGNhbiBwYXNzIGEgdmFsdWUgaW4gbXVsdGlwbGUgZm9ybWF0cywgc3VjaCBhcyBgNmAsIGA1MCVgLCBgMSBvZiAyYCBvciBgMS8zYC5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IFNpemUgb2YgdGhlIGNlbGwgKGluIHBlcmNlbnQpLlxuQGZ1bmN0aW9uIHh5LWNlbGwtc2l6ZShcbiAgJHNpemU6ICRncmlkLWNvbHVtbnNcbikge1xuICBAcmV0dXJuIGZyYWN0aW9uLXRvLXBlcmNlbnRhZ2UoJHNpemUsICRkZW5vbWluYXRvcjogJGdyaWQtY29sdW1ucyk7XG59XG5cbi8vLyBSZXR1cm5zIHRoZSBhcHByb3ByaWF0ZSBDU1MgdmFsdWUgZm9yIGEgY2VsbCBzaXplLlxuLy8vXG4vLy8gR3V0dGVycy1yZWxhdGVkIGFyZ3VtZW50cyBhcmUgcmVxdWlyZWQgZm9yIGNlbGxzIHdpdGggbWFyZ2luIGd1dHRlcnMgKGJ5IGRlZmF1bHQpIGFzIHRoZSBndXR0ZXIgaXMgaW5jbHVkZWQgaW4gdGhlIHdpZHRoLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHNpemUgW2Z1bGxdIC0gVGhlIHNpemUgb2YgeW91ciBjZWxsLiBDYW4gYmUgYGZ1bGxgLCBgYXV0b2AsIGBzaHJpbmtgIG9yIGFueSBmcmFjdGlvbiBsaWtlIGA2YCwgYDUwJWAsIGAxIG9mIDJgIG9yIGAxLzJgLlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLW1hcmdpbi1ndXR0ZXJzXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgZm9yIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZ3V0dGVyLXR5cGUgW21hcmdpbl0gLSBUeXBlIG9mIGd1dHRlciB0byBvdXRwdXQuIEFjY2VwdHMgYG1hcmdpbmAsIGBwYWRkaW5nYCBvciBgbm9uZWAuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRicmVha3BvaW50IFtudWxsXSAtIFRoZSBuYW1lIG9mIHRoZSBicmVha3BvaW50IHNpemUgaW4geW91ciBndXR0ZXJzIG1hcCB0byBnZXQgdGhlIHNpemUgZnJvbS4gSWYgYGF1dG9gLCByZXR1cm5zIGEgbWFwIG9mIHNpemVzIGFkYXB0ZWQgdG8gcmVzcG9uc2l2ZSBndXR0ZXJzLiBJZiB1c2luZyB3aXRoIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0aGlzIHdpbGwgYmUgc2V0IGF1dG9tYXRpY2FsbHkgdW5sZXNzIG1hbnVhbGx5IGVudGVyZWQuXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfFN0cmluZ3xNYXB9IFRoZSBjZWxsIHNpemluZyBwcm9wZXJ0eSB2YWx1ZSwgb3IgYSByZXNwb25zaXZlIG1hcCBvZiB0aGVtLlxuQGZ1bmN0aW9uIHh5LWNlbGwtc2l6ZS1jc3MoXG4gICRzaXplOiBmdWxsLFxuICAkZ3V0dGVyczogJGdyaWQtbWFyZ2luLWd1dHRlcnMsXG4gICRndXR0ZXItdHlwZTogbWFyZ2luLFxuICAkYnJlYWtwb2ludDogbnVsbFxuKSB7XG4gICRtYXJnaW4tZ3V0dGVyOiAwO1xuXG4gIEBpZiAoJHNpemUgPT0gJ2F1dG8nIG9yICRzaXplID09ICdzaHJpbmsnKSB7XG4gICAgQHJldHVybiBhdXRvO1xuICB9XG5cbiAgLy8gRm9yIGNlbGxzIHdpdGggbWFyZ2luIGd1dHRlcnMsIHRoZSBndXR0ZXIgaXMgaW5jbHVkZWQgaW4gdGhlIHdpZHRoLlxuICBAaWYgKCRndXR0ZXItdHlwZSA9PSAnbWFyZ2luJykge1xuICAgICRtYXJnaW4tZ3V0dGVyOiB4eS1jZWxsLWd1dHRlcnMoJGd1dHRlcnMsICRicmVha3BvaW50KTtcbiAgICBAaWYgKCRtYXJnaW4tZ3V0dGVyID09IG51bGwpIHtcbiAgICAgIEBlcnJvciAneHktY2VsbC1zaXplOiBubyBndXR0ZXJzIHdlcmUgZm91bmQgaW4gYCRndXR0ZXJzYCBmb3IgXCIkYnJlYWtwb2ludDogI3skYnJlYWtwb2ludH1cIic7XG4gICAgfVxuICB9XG5cbiAgLy8gQ2FsY3VsYXRlIHRoZSBjZWxsIHNpemUgKG51bWJlcilcbiAgJHNpemUtcmF3OiBpZigkc2l6ZSA9PSAnZnVsbCcsIDEwMCUsIHh5LWNlbGwtc2l6ZSgkc2l6ZSkpO1xuXG4gIC8vIENhbGN1bGF0ZSB0aGUgY2VsbCBDU1Mgc2l6ZSBpbmNsdWRpbmcgZ3V0dGVycyAoc3RyaW5nKVxuICAvLyBJZiB0aGUgY2VsbCBoYXMgcmVzcG9uc2l2ZSBtYXJnaW4gZ3V0dGVycywgcmV0dXJuIGEgcmVzcG9uc2l2ZSBtYXAgb2Ygc2l6ZXMuXG4gIEBpZiB0eXBlLW9mKCRtYXJnaW4tZ3V0dGVyKSA9PSAnbWFwJyB7XG4gICAgJHJlc3BvbnNpdmUtY3NzLXNpemVzOiAoKTtcblxuICAgIEBlYWNoICRicCwgJG1nIGluICRtYXJnaW4tZ3V0dGVyIHtcbiAgICAgICRtZ2M6IHJlbS1jYWxjKCRtZyk7XG4gICAgICBAaWYgJG1nYyA9PSAwIHtcbiAgICAgICAgJG1nYzogMHJlbTtcbiAgICAgIH1cbiAgICAgICRzaXplLWNzczogaWYoJG1nID09IDAsICRzaXplLXJhdywgY2FsYygjeyRzaXplLXJhd30gLSAjeyRtZ30pKTtcbiAgICAgICRyZXNwb25zaXZlLWNzcy1zaXplczogbWFwLW1lcmdlKCRyZXNwb25zaXZlLWNzcy1zaXplcywgKCRicDogJHNpemUtY3NzKSk7XG4gICAgfVxuXG4gICAgQHJldHVybiAkcmVzcG9uc2l2ZS1jc3Mtc2l6ZXM7XG4gIH1cbiAgLy8gT3RoZXJ3aXNlLCByZXR1cm4gYSBzaW5nbGUgQ1NTIHNpemUuXG4gIEBlbHNlIHtcbiAgICAvLyBNYWtlIHN1cmUgdGhhdCAwIGlzIHRyYW5zbGF0ZWQgaW4gMHJlbSBmb3IgY2FsYygpXG4gICAgJG1nYzogcmVtLWNhbGMoJG1hcmdpbi1ndXR0ZXIpO1xuICAgIEBpZiAkbWdjID09IDAge1xuICAgICAgJG1nYzogMHJlbTtcbiAgICB9XG4gICAgJGNzcy1zaXplOiBpZigkbWFyZ2luLWd1dHRlciA9PSAwLCAkc2l6ZS1yYXcsIGNhbGMoI3skc2l6ZS1yYXd9IC0gI3skbWdjfSkpO1xuICAgIEByZXR1cm4gJGNzcy1zaXplO1xuICB9XG59XG5cbi8vLyBTZXRzIGJhc2UgZmxleCBwcm9wZXJ0aWVzIGZvciBjZWxscy5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgW2Z1bGxdIC0gVGhlIHNpemUgb2YgeW91ciBjZWxsLiBBY2NlcHRzIGBmdWxsYCwgYGF1dG9gLCBgc2hyaW5rYCwgYGdyb3dgLCBvciBhbnkgb3RoZXIgdmFsdWUgcmVwcmVzZW50aW5nIGEgY2VsbCBzaXplIChpdCB3aWxsIGJlIHRyZWF0ZWQgYXMgYHNocmlua2ApLlxuQG1peGluIHh5LWNlbGwtYmFzZSgkc2l6ZTogZnVsbCkge1xuICAkYmFzZTogeHktY2VsbC1iYXNlKCRzaXplKTtcblxuICBmbGV4OiAjeyRiYXNlfTtcblxuICAvLyBTZXQgYmFzZSBzdHlsZXMgZm9yIFwiZnVsbFwiIG9ubHlcbiAgQGlmKCRzaXplID09ICdmdWxsJykge1xuICAgIG1pbi1oZWlnaHQ6IDA7XG4gICAgbWluLXdpZHRoOiAwO1xuICB9XG59XG5cbi8vLyBSZXNldHMgYSBjZWxscyB3aWR0aCAob3IgaGVpZ2h0IGlmIHZlcnRpY2FsIGlzIHRydWUpIGFzIHdlbGwgYXMgc3RyaXBzIGl0cyBndXR0ZXJzLlxuLy8vXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkdmVydGljYWwgW2ZhbHNlXSAtIFNldCB0byB0cnVlIHRvIG91dHB1dCB2ZXJ0aWNhbCAoaGVpZ2h0KSBzdHlsZXMgcmF0aGVyIHRoYW4gd2lkdGhzLlxuQG1peGluIHh5LWNlbGwtcmVzZXQoJHZlcnRpY2FsOiB0cnVlKSB7XG4gICRkaXJlY3Rpb246IGlmKCR2ZXJ0aWNhbCA9PSB0cnVlLCBoZWlnaHQsIHdpZHRoKTtcbiAgI3skZGlyZWN0aW9ufTogYXV0bztcbiAgbWF4LSN7JGRpcmVjdGlvbn06IG5vbmU7XG59XG5cbi8vLyBTZXRzIHNpemluZyBwcm9wZXJ0aWVzIGZvciBjZWxscy5cbi8vL1xuLy8vIEd1dHRlcnMtcmVsYXRlZCBhcmd1bWVudHMgYXJlIHJlcXVpcmVkIGZvciBjZWxscyB3aXRoIG1hcmdpbiBndXR0ZXJzIChieSBkZWZhdWx0KSBhcyB0aGUgZ3V0dGVyIGlzIGluY2x1ZGVkIGluIHRoZSB3aWR0aC5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICRzaXplIFtmdWxsXSAtIFRoZSBzaXplIG9mIHlvdXIgY2VsbC4gQ2FuIGJlIGBmdWxsYCAoMTAwJSB3aWR0aCksIGBhdXRvYCAodXNlIGFsbCBhdmFpbGFibGUgc3BhY2UpLCBgc2hyaW5rYCAodXNlIG9ubHkgdGhlIHJlcXVpcmVkIHNwYWNlKSBvciBhbnkgZnJhY3Rpb24gKGA2YCwgYDUwJWAsIGAxIG9mIDJgIG9yIGAxLzJgLi4uKS5cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1tYXJnaW4tZ3V0dGVyc10gLSBNYXAgb3Igc2luZ2xlIHZhbHVlIGZvciBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGd1dHRlci10eXBlIFttYXJnaW5dIC0gVHlwZSBvZiBndXR0ZXIgdG8gb3V0cHV0LiBBY2NlcHRzIGBtYXJnaW5gLCBgcGFkZGluZ2Agb3IgYG5vbmVgLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkYnJlYWtwb2ludCBbbnVsbF0gLSBUaGUgbmFtZSBvZiB0aGUgYnJlYWtwb2ludCBzaXplIGluIHlvdXIgZ3V0dGVycyBtYXAgdG8gZ2V0IHRoZSBzaXplIGZyb20uIElmIGBhdXRvYCwgZ2VuZXJhdGVzIHNpemVzIGFkYXB0ZWQgZm9yIHJlc3BvbnNpdmUgZ3V0dGVycy4gSWYgdXNpbmcgd2l0aCB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdGhpcyB3aWxsIGJlIHNldCBhdXRvbWF0aWNhbGx5IHVubGVzcyBtYW51YWxseSBlbnRlcmVkLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHZlcnRpY2FsIFtmYWxzZV0gLSBTZXQgdG8gdHJ1ZSB0byBvdXRwdXQgdmVydGljYWwgKGhlaWdodCkgc3R5bGVzIHJhdGhlciB0aGFuIHdpZHRocy5cbkBtaXhpbiB4eS1jZWxsLXNpemUoXG4gICRzaXplOiBmdWxsLFxuICAkZ3V0dGVyczogJGdyaWQtbWFyZ2luLWd1dHRlcnMsXG4gICRndXR0ZXItdHlwZTogbWFyZ2luLFxuICAkYnJlYWtwb2ludDogbnVsbCxcbiAgJHZlcnRpY2FsOiBmYWxzZVxuKSB7XG4gICRzaXplczogeHktY2VsbC1zaXplLWNzcygkc2l6ZSwgJGd1dHRlcnMsICRndXR0ZXItdHlwZSwgJGJyZWFrcG9pbnQpO1xuICAkZGlyZWN0aW9uOiBpZigkdmVydGljYWwgPT0gdHJ1ZSwgaGVpZ2h0LCB3aWR0aCk7XG5cbiAgQGlmICh0eXBlLW9mKCRzaXplcykgPT0gJ21hcCcpIHtcbiAgICBAaW5jbHVkZSAtemYtYnJlYWtwb2ludC12YWx1ZShhdXRvLCAkc2l6ZXMpIHtcbiAgICAgICN7JGRpcmVjdGlvbn06ICQtemYtYnAtdmFsdWU7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAjeyRkaXJlY3Rpb259OiAkc2l6ZXM7XG4gIH1cbn1cblxuLy8vIFNldHMgZ3V0dGVycyBwcm9wZXJ0aWVzIGZvciBjZWxscy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLW1hcmdpbi1ndXR0ZXJzXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgZm9yIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZ3V0dGVyLXR5cGUgW21hcmdpbl0gLSBUeXBlIG9mIGd1dHRlciB0byBvdXRwdXQuIEFjY2VwdHMgYG1hcmdpbmAsIGBwYWRkaW5nYCBvciBgbm9uZWAuXG4vLy8gQHBhcmFtIHtMaXN0fSAkZ3V0dGVyLXBvc2l0aW9uIFtudWxsXSAtIFRoZSBwb3NpdGlvbiB0byBhcHBseSBndXR0ZXJzIHRvLiBBY2NlcHRzIGB0b3BgLCBgYm90dG9tYCwgYGxlZnRgLCBgcmlnaHRgIGluIGFueSBjb21iaW5hdGlvbi4gQnkgZGVmYXVsdCBgcmlnaHQgbGVmdGAgZm9yIGhvcml6b250YWwgY2VsbHMgYW5kIGB0b3AgYm90dG9tYCBmb3IgdmVydGljYWwgY2VsbHMuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRicmVha3BvaW50IFtudWxsXSAtIFRoZSBuYW1lIG9mIHRoZSBicmVha3BvaW50IHNpemUgaW4geW91ciBndXR0ZXJzIG1hcCB0byBnZXQgdGhlIHNpemUgZnJvbS4gSWYgYGF1dG9gLCBnZW5lcmF0ZXMgcmVzcG9uc2l2ZSBndXR0ZXJzLiBJZiB1c2luZyB3aXRoIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0aGlzIHdpbGwgYmUgc2V0IGF1dG9tYXRpY2FsbHkgdW5sZXNzIG1hbnVhbGx5IGVudGVyZWQuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkdmVydGljYWwgW2ZhbHNlXSAtIERpcmVjdGlvbiBvZiB0aGUgZ3V0dGVycyB0byBvdXRwdXQuIFNlZSBgJGd1dHRlci1wb3NpdGlvbmAuXG5AbWl4aW4geHktY2VsbC1ndXR0ZXJzKFxuICAkZ3V0dGVyczogJGdyaWQtbWFyZ2luLWd1dHRlcnMsXG4gICRndXR0ZXItdHlwZTogbWFyZ2luLFxuICAkZ3V0dGVyLXBvc2l0aW9uOiBudWxsLFxuICAkYnJlYWtwb2ludDogbnVsbCxcbiAgJHZlcnRpY2FsOiBmYWxzZVxuKSB7XG4gIC8vIEdldCB0aGUgZGVmYXVsdCBndXR0ZXIgcG9zaXRpb24gYWNjb3JkaW5nIHRvIGNlbGwgZGlyZWN0aW9uXG4gIEBpZigkZ3V0dGVyLXBvc2l0aW9uID09IG51bGwpIHtcbiAgICAkZ3V0dGVyLXBvc2l0aW9uOiBpZigkdmVydGljYWwgPT0gdHJ1ZSwgdG9wIGJvdHRvbSwgbGVmdCByaWdodCk7XG4gIH1cblxuICAvLyBHZXQgdGhlIGd1dHRlciB3aWR0aCBmb3IgdGhpcyBicmVha3BvaW50XG4gICRndXR0ZXItd2lkdGg6IHh5LWNlbGwtZ3V0dGVycygkZ3V0dGVycywgJGJyZWFrcG9pbnQpO1xuICBAaWYgKCRndXR0ZXItd2lkdGggPT0gbnVsbCkge1xuICAgIEBlcnJvciAneHktY2VsbC1ndXR0ZXJzOiBubyBndXR0ZXJzIHdlcmUgZm91bmQgaW4gYCRndXR0ZXJzYCBmb3IgXCIkYnJlYWtwb2ludDogI3skYnJlYWtwb2ludH1cIic7XG4gIH1cblxuICBAaWYgKCRndXR0ZXItdHlwZSBhbmQgJGd1dHRlci10eXBlICE9IG5vbmUpIHtcbiAgICBAaW5jbHVkZSB4eS1ndXR0ZXJzKCRndXR0ZXItd2lkdGgsICRndXR0ZXItdHlwZSwgJGd1dHRlci1wb3NpdGlvbik7XG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBjZWxsIGZvciB5b3VyIGdyaWQuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkc2l6ZSBbZnVsbF0gLSBUaGUgc2l6ZSBvZiB5b3VyIGNlbGwuIENhbiBiZSBgZnVsbGAgKDEwMCUgd2lkdGgpLCBgYXV0b2AgKHVzZSBhbGwgYXZhaWxhYmxlIHNwYWNlKSwgYHNocmlua2AgKHVzZSBvbmx5IHRoZSByZXF1aXJlZCBzcGFjZSkgb3IgYW55IGZyYWN0aW9uIChgNmAsIGA1MCVgLCBgMSBvZiAyYCBvciBgMS8yYC4uLikuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZ3V0dGVyLW91dHB1dCBbbnVsbF0gLSBbREVQUkVDQVRFRF0gV2hldGhlciBvciBub3QgdG8gb3V0cHV0IGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtbWFyZ2luLWd1dHRlcnNdIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSBmb3IgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRndXR0ZXItdHlwZSBbbWFyZ2luXSAtIFR5cGUgb2YgZ3V0dGVyIHRvIG91dHB1dC4gQWNjZXB0cyBgbWFyZ2luYCwgYHBhZGRpbmdgIG9yIGBub25lYC5cbi8vLyBAcGFyYW0ge0xpc3R9ICRndXR0ZXItcG9zaXRpb24gW251bGxdIC0gVGhlIHBvc2l0aW9uIHRvIGFwcGx5IGd1dHRlcnMgdG8uIEFjY2VwdHMgYHRvcGAsIGBib3R0b21gLCBgbGVmdGAsIGByaWdodGAgaW4gYW55IGNvbWJpbmF0aW9uLiBCeSBkZWZhdWx0IGByaWdodCBsZWZ0YCBmb3IgaG9yaXpvbnRhbCBjZWxscyBhbmQgYHRvcCBib3R0b21gIGZvciB2ZXJ0aWNhbCBjZWxscy5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGJyZWFrcG9pbnQgW251bGxdIC0gVGhlIG5hbWUgb2YgdGhlIGJyZWFrcG9pbnQgc2l6ZSBpbiB5b3VyIGd1dHRlcnMgbWFwIHRvIGdldCB0aGUgc2l6ZSBmcm9tLiBJZiBgYXV0b2AsIGdlbmVyYXRlcyByZXNwb25zaXZlIGd1dHRlcnMuIElmIHVzaW5nIHdpdGggdGhlIGBicmVha3BvaW50KClgIG1peGluIHRoaXMgd2lsbCBiZSBzZXQgYXV0b21hdGljYWxseSB1bmxlc3MgbWFudWFsbHkgZW50ZXJlZC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICR2ZXJ0aWNhbCBbZmFsc2VdIC0gU2V0IHRvIHRydWUgdG8gb3V0cHV0IHZlcnRpY2FsIChoZWlnaHQpIHN0eWxlcyByYXRoZXIgdGhhbiB3aWR0aHMuXG4vLy8gQHBhcmFtIHtMaXN0fSAkb3V0cHV0IFsoYmFzZSBzaXplIGd1dHRlcnMpXSAtIENlbGwgcGFydHMgdG8gb3V0cHV0LiBZb3Ugd2lsbCBuZWVkIHRvIGdlbmVyYXRlIG90aGVycyBwYXJ0cyBvZiB0aGUgY2VsbCBzZXBlcmF0ZWx5LCBpdCBtYXkgbm90IHdvcmsgcHJvcGVybHkgb3RoZXJ3aXNlLlxuQG1peGluIHh5LWNlbGwoXG4gICRzaXplOiBmdWxsLFxuICAkZ3V0dGVyLW91dHB1dDogbnVsbCxcbiAgJGd1dHRlcnM6ICRncmlkLW1hcmdpbi1ndXR0ZXJzLFxuICAkZ3V0dGVyLXR5cGU6IG1hcmdpbixcbiAgJGd1dHRlci1wb3NpdGlvbjogbnVsbCxcbiAgJGJyZWFrcG9pbnQ6IG51bGwsXG4gICR2ZXJ0aWNhbDogZmFsc2UsXG4gICRvdXRwdXQ6IChiYXNlIHNpemUgZ3V0dGVycylcbikge1xuICAvLyBEZWZhdWx0IGZvciAkZ3V0dGVyLW91dHB1dFxuICBAaWYgKCRndXR0ZXItb3V0cHV0ICE9IG51bGwpIHtcbiAgICBAd2FybiAneHktY2VsbDogJGd1dHRlci1vdXRwdXQgaXMgZGVwcmVjYXRlZCBhbmQgd2lsbCBiZSByZW1vdmVkLiBTZWUgbWlncmF0aW9uIG5vdGVzIGF0IGh0dHBzOi8vZ2l0LmlvL2ZvdW5kYXRpb24tNi02LTAnO1xuICAgIEBpZiAoJGd1dHRlci1vdXRwdXQgPT0gZmFsc2UpIHtcbiAgICAgICRvdXRwdXQ6IHNsLXJlbW92ZSgkb3V0cHV0LCBndXR0ZXJzKTtcbiAgICB9XG4gIH1cblxuICBAaWYgKGluZGV4KCRvdXRwdXQsIGJhc2UpKSB7XG4gICAgQGluY2x1ZGUgeHktY2VsbC1iYXNlKCRzaXplKTtcbiAgfVxuICBAaWYgKGluZGV4KCRvdXRwdXQsIHNpemUpKSB7XG4gICAgQGluY2x1ZGUgeHktY2VsbC1zaXplKCRzaXplLCAkZ3V0dGVycywgJGd1dHRlci10eXBlLCAkYnJlYWtwb2ludCwgJHZlcnRpY2FsKTtcbiAgfVxuICBAaWYgKGluZGV4KCRvdXRwdXQsIGd1dHRlcnMpKSB7XG4gICAgQGluY2x1ZGUgeHktY2VsbC1ndXR0ZXJzKCRndXR0ZXJzLCAkZ3V0dGVyLXR5cGUsICRndXR0ZXItcG9zaXRpb24sICRicmVha3BvaW50LCAkdmVydGljYWwpO1xuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgc2luZ2xlIGJyZWFrcG9pbnQgc2l6ZWQgZ3JpZC4gVXNlZCB0byBnZW5lcmF0ZSBvdXIgZ3JpZCBjbGFzc2VzLlxuLy8vXG4vLy8gYHh5LWNlbGwtc3RhdGljKClgIGlzIGRlcHJlY2F0ZWQgYW5kIHdpbGwgYmUgcmVtb3ZlZC5cbi8vLyBVc2UgYHh5LWNlbGwoKWAgaW5zdGVhZCB3aXRoIGAkb3V0cHV0OiAoc2l6ZSBndXR0ZXJzKWAgdG8gbm90IGdlbmVyYXRlIHRoZSBjZWxsIGJhc2UuXG4vLy8gU2VlIG1pZ3JhdGlvbiBub3RlcyBhdCBodHRwczovL2dpdC5pby9mb3VuZGF0aW9uLTYtNi0wXG4vLy9cbi8vLyBAZGVwcmVjYXRlZCB2Ni42LjBcbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICRzaXplIFtmdWxsXSAtIFRoZSBzaXplIG9mIHlvdXIgY2VsbC4gQ2FuIGJlIGBmdWxsYCAoMTAwJSB3aWR0aCksIGBhdXRvYCAodXNlIGFsbCBhdmFpbGFibGUgc3BhY2UpLCBgc2hyaW5rYCAodXNlIG9ubHkgdGhlIHJlcXVpcmVkIHNwYWNlKSBvciBhbnkgZnJhY3Rpb24gKGA2YCwgYDUwJWAsIGAxIG9mIDJgIG9yIGAxLzJgLi4uKS5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRndXR0ZXItb3V0cHV0IFt0cnVlXSAtIFdoZXRoZXIgb3Igbm90IHRvIG91dHB1dCBndXR0ZXJzLiBBbHdheXMgYHRydWVgIGZvciBtYXJnaW4gZ3V0dGVycy5cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1tYXJnaW4tZ3V0dGVyc10gLSBNYXAgb3Igc2luZ2xlIHZhbHVlIGZvciBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGd1dHRlci10eXBlIFttYXJnaW5dIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSBmb3IgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGJyZWFrcG9pbnQgW251bGxdIC0gVGhlIG5hbWUgb2YgdGhlIGJyZWFrcG9pbnQgc2l6ZSBpbiB5b3VyIGd1dHRlcnMgbWFwIHRvIGdldCB0aGUgc2l6ZSBmcm9tLiBJZiB1c2luZyB3aXRoIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0aGlzIHdpbGwgYmUgc2V0IGF1dG9tYXRpY2FsbHkgdW5sZXNzIG1hbnVhbGx5IGVudGVyZWQuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkdmVydGljYWwgW2ZhbHNlXSAtIFNldCB0byB0cnVlIHRvIG91dHB1dCB2ZXJ0aWNhbCAoaGVpZ2h0KSBzdHlsZXMgcmF0aGVyIHRoYW4gd2lkdGhzLlxuQG1peGluIHh5LWNlbGwtc3RhdGljKFxuICAkc2l6ZTogZnVsbCxcbiAgJGd1dHRlci1vdXRwdXQ6IHRydWUsXG4gICRndXR0ZXJzOiAkZ3JpZC1tYXJnaW4tZ3V0dGVycyxcbiAgJGd1dHRlci10eXBlOiBtYXJnaW4sXG4gICRicmVha3BvaW50OiAkLXpmLXplcm8tYnJlYWtwb2ludCxcbiAgJHZlcnRpY2FsOiBmYWxzZVxuKSB7XG4gIEB3YXJuICd4eS1jZWxsLXN0YXRpYygpIG1peGluIGlzIGRlcHJlY2F0ZWQgYW5kIHdpbGwgYmUgcmVtb3ZlZC4gVXNlIFwieHktY2VsbCgpXCIgaW5zdGVhZC4gU2VlIG1pZ3JhdGlvbiBub3RlcyBhdCBodHRwczovL2dpdC5pby9mb3VuZGF0aW9uLTYtNi0wJztcblxuICAkZ3V0dGVyOiAtemYtZ2V0LWJwLXZhbCgkZ3V0dGVycywgJGJyZWFrcG9pbnQpO1xuICAkZ3V0dGVyLXBvc2l0aW9uOiBpZigkdmVydGljYWwgPT0gdHJ1ZSwgdG9wIGJvdHRvbSwgbGVmdCByaWdodCk7XG5cbiAgJC1ndXR0ZXItb3V0cHV0OiBpZigkZ3V0dGVyLXR5cGUgPT0gJ21hcmdpbicsIHRydWUsICRndXR0ZXItb3V0cHV0KTtcbiAgJC1ndXR0ZXItbWFyZ2luOiBpZigkZ3V0dGVyLXR5cGUgPT0gJ21hcmdpbicsICRndXR0ZXIsIDApO1xuXG4gIEBpbmNsdWRlIC14eS1jZWxsLXByb3BlcnRpZXMoJHNpemUsICQtZ3V0dGVyLW1hcmdpbiwgJHZlcnRpY2FsKTtcbiAgQGlmICgkLWd1dHRlci1vdXRwdXQpIHtcbiAgICBAaW5jbHVkZSB4eS1ndXR0ZXJzKCRndXR0ZXIsICRndXR0ZXItdHlwZSwgJGd1dHRlci1wb3NpdGlvbik7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBicmVha3BvaW50c1xuLy8vL1xuXG4vLy8gUGF0Y2ggdG8gZml4IGlzc3VlICMxMjA4MFxuJC16Zi1zaXplOiBudWxsO1xuXG4vLy8gQSBsaXN0IG9mIG5hbWVkIGJyZWFrcG9pbnRzLiBZb3UgY2FuIHVzZSB0aGVzZSB3aXRoIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0byBxdWlja2x5IGNyZWF0ZSBtZWRpYSBxdWVyaWVzLlxuLy8vIEB0eXBlIE1hcFxuJGJyZWFrcG9pbnRzOiAoXG4gIFwic21hbGxcIjogMCxcbiAgXCJtZWRpdW1cIjogNjQwcHgsXG4gIFwibGFyZ2VcIjogMTAyNHB4LFxuICBcInhsYXJnZVwiOiAxMjAwcHgsXG4gIFwieHhsYXJnZVwiOiAxNDQwcHgsXG4pICFkZWZhdWx0O1xuXG4vLy8gQSBsaXN0IG9mIG5hbWVkIEhpRFBJIGJyZWFrcG9pbnRzLiBZb3UgY2FuIHVzZSB0aGVzZSB3aXRoIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0byBxdWlja2x5IGNyZWF0ZSBtZWRpYSBxdWVyaWVzIGZvciByZXNvbHV0aW9ucy5cbi8vLyBWYWx1ZXMgbXVzdCByZXByZXNlbnQgdGhlIGRldmljZSBwaXhlbHMgLyB3ZWIgcGl4ZWxzIHJhdGlvbiBhbmQgYmUgdW5pdGxlc3Mgb3IgaW4gRFBQWC5cbi8vLyBAdHlwZSBNYXBcbiRicmVha3BvaW50cy1oaWRwaTogKFxuICBcImhpZHBpLTFcIjogMSxcbiAgXCJoaWRwaS0xLTVcIjogMS41LFxuICBcImhpZHBpLTJcIjogMixcbiAgXCJyZXRpbmFcIjogMixcbiAgXCJoaWRwaS0zXCI6IDNcbikgIWRlZmF1bHQ7XG5cbi8vLyBUaGUgbGFyZ2VzdCBuYW1lZCBicmVha3BvaW50IGluIHdoaWNoIHRvIGluY2x1ZGUgcHJpbnQgYXMgYSBtZWRpYSB0eXBlXG4vLy8gQHR5cGUgS2V5d29yZFxuJHByaW50LWJyZWFrcG9pbnQ6IGxhcmdlICFkZWZhdWx0O1xuXG4kLXpmLXplcm8tYnJlYWtwb2ludDogc21hbGwgIWRlZmF1bHQ7XG5cbiQtemYtYnJlYWtwb2ludHMta2V5czogbWFwLXRvLWxpc3QoJGJyZWFrcG9pbnRzLCAna2V5cycpO1xuXG5AaWYgbnRoKG1hcC12YWx1ZXMoJGJyZWFrcG9pbnRzKSwgMSkgIT0gMCB7XG4gIEBlcnJvciAnVGhlIGZpcnN0IGtleSBpbiB0aGUgJGJyZWFrcG9pbnRzIG1hcCBtdXN0IGhhdmUgYSB2YWx1ZSBvZiBcIjBcIi4nO1xufVxuQGVsc2Uge1xuICAkLXpmLXplcm8tYnJlYWtwb2ludDogbnRoKG1hcC1rZXlzKCRicmVha3BvaW50cyksIDEpO1xufVxuXG4vLy8gQWxsIG9mIHRoZSBuYW1lcyBpbiB0aGlzIGxpc3Qgd2lsbCBiZSBvdXRwdXQgYXMgY2xhc3NlcyBpbiB5b3VyIENTUywgbGlrZSBgLnNtYWxsLTEyYCwgYC5tZWRpdW0tNmAsIGFuZCBzbyBvbi4gRWFjaCB2YWx1ZSBpbiB0aGlzIGxpc3QgbXVzdCBhbHNvIGJlIGluIHRoZSBgJGJyZWFrcG9pbnRzYCBtYXAuXG4vLy8gQHR5cGUgTGlzdFxuJGJyZWFrcG9pbnQtY2xhc3NlczogKHNtYWxsIG1lZGl1bSBsYXJnZSkgIWRlZmF1bHQ7XG5cbi8vLyBHZW5lcmF0ZXMgYSBtZWRpYSBxdWVyeSBzdHJpbmcgbWF0Y2hpbmcgdGhlIGlucHV0IHZhbHVlLiBSZWZlciB0byB0aGUgZG9jdW1lbnRhdGlvbiBmb3IgdGhlIGBicmVha3BvaW50KClgIG1peGluIHRvIHNlZSB3aGF0IHRoZSBwb3NzaWJsZSBpbnB1dHMgYXJlLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHZhbCBbc21hbGxdIC0gQnJlYWtwb2ludCBuYW1lLCBvciBweCwgcmVtLCBvciBlbSB2YWx1ZSB0byBwcm9jZXNzLlxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQoJHZhbDogJC16Zi16ZXJvLWJyZWFrcG9pbnQpIHtcbiAgLy8gV2ViIHN0YW5kYXJkIFBpeGVscyBwZXIgaW5jaC4gKDFkZHB4IC8gJHN0ZC13ZWItZHBpKSA9IDFkcGlcbiAgLy8gU2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9jc3MtdmFsdWVzLTMvI2Fic29sdXRlLWxlbmd0aHNcbiAgJHN0ZC13ZWItZHBpOiA5NjtcblxuICAvLyBTaXplIG9yIGtleXdvcmRcbiAgJGJwOiBudGgoJHZhbCwgMSk7XG4gIC8vIFZhbHVlIG9mIHRoZSBmb2xsb3dpbmcgYnJlYWtwb2ludFxuICAkYnAtbmV4dDogbnVsbDtcbiAgLy8gVmFsdWUgZm9yIG1heC13aWR0aCBtZWRpYSBxdWVyaWVzXG4gICRicC1taW46IG51bGw7XG4gIC8vIFZhbHVlIGZvciBtaW4td2lkdGggbWVkaWEgcXVlcmllc1xuICAkYnAtbWF4OiBudWxsO1xuICAvLyBEaXJlY3Rpb24gb2YgbWVkaWEgcXVlcnkgKHVwLCBkb3duLCBvciBvbmx5KVxuICAkZGlyOiBpZihsZW5ndGgoJHZhbCkgPiAxLCBudGgoJHZhbCwgMiksIHVwKTtcbiAgLy8gSWYgbmFtZWQsIG5hbWUgb2YgdGhlIGJyZWFrcG9pbnRcbiAgJG5hbWU6IG51bGw7XG4gIC8vIElmIHRoZSBicmVha3BvaW50IGlzIGEgSGlEUEkgYnJlYWtwb2ludFxuICAkaGlkcGk6IGZhbHNlO1xuXG4gIC8vIE9yaWVudGF0aW9uIG1lZGlhIHF1ZXJpZXMgaGF2ZSBhIHVuaXF1ZSBzeW50YXhcbiAgQGlmICRicCA9PSAnbGFuZHNjYXBlJyBvciAkYnAgPT0gJ3BvcnRyYWl0JyB7XG4gICAgQHJldHVybiAnKG9yaWVudGF0aW9uOiAjeyRicH0pJztcbiAgfVxuXG4gIC8vIElmIGEgYnJlYWtwb2ludCBuYW1lIGlzIGdpdmVuLCBnZXQgaXRzIHZhbHVlIGZyb20gdGhlICRicmVha3BvaW50cy8kYnJlYWtwb2ludHMtaGlkcGkgbWFwLlxuICBAaWYgdHlwZS1vZigkYnApID09ICdzdHJpbmcnIHtcbiAgICBAaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCAkYnApIHtcbiAgICAgICRuYW1lOiAkYnA7XG4gICAgICAkYnA6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkbmFtZSk7XG4gICAgICAkYnAtbmV4dDogLXpmLW1hcC1uZXh0KCRicmVha3BvaW50cywgJG5hbWUpO1xuICAgIH1cbiAgICBAZWxzZSBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMtaGlkcGksICRicCkge1xuICAgICAgJG5hbWU6ICRicDtcbiAgICAgICRicDogbWFwLWdldCgkYnJlYWtwb2ludHMtaGlkcGksICRuYW1lKTtcbiAgICAgICRicC1uZXh0OiAtemYtbWFwLW5leHQtbnVtYmVyKCRicmVha3BvaW50cy1oaWRwaSwgJGJwKTtcbiAgICAgICRoaWRwaTogdHJ1ZTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgJGJwOiAwO1xuICAgICAgQHdhcm4gJ2JyZWFrcG9pbnQoKTogXCIjeyR2YWx9XCIgaXMgbm90IGRlZmluZWQgaW4geW91ciBgJGJyZWFrcG9pbnRzYCBvciBgJGJyZWFrcG9pbnRzLWhpZHBpYCBzZXR0aW5nLic7XG4gICAgfVxuICB9XG5cbiAgQGlmIG5vdCAkbmFtZSBhbmQgJGRpciA9PSAnb25seScge1xuICAgIEB3YXJuICdicmVha3BvaW50KCk6IE9ubHkgbmFtZWQgbWVkaWEgcXVlcmllcyBjYW4gaGF2ZSBhbiBgb25seWAgcmFuZ2UuJztcbiAgICBAcmV0dXJuIG51bGw7XG4gIH1cblxuICAvLyBPbmx5ICdvbmx5JyBhbmQgJ3VwJyBoYXZlIGEgbWluIGxpbWl0LlxuICBAaWYgJGRpciA9PSAnb25seScgb3IgJGRpciA9PSAndXAnIHtcbiAgICAkYnAtbWluOiBpZigkaGlkcGksIHN0cmlwLXVuaXQoJGJwKSwgLXpmLWJwLXRvLWVtKCRicCkpO1xuICB9XG4gIC8vIE9ubHkgJ29ubHknIGFuZCAnZG93bicgaGF2ZSBhIG1heCBsaW1pdC5cbiAgQGlmICRkaXIgPT0gJ29ubHknIG9yICRkaXIgPT0gJ2Rvd24nIHtcbiAgICAvLyBJZiB0aGUgYnJlYWtwb2ludCBpcyBhIHZhbHVlLCB1c2UgaXQgYXMgbWF4IGxpbWl0LlxuICAgIEBpZiBub3QgJG5hbWUge1xuICAgICAgJGJwLW1heDogaWYoJGhpZHBpLCBzdHJpcC11bml0KCRicCksIC16Zi1icC10by1lbSgkYnApKTtcbiAgICB9XG4gICAgLy8gSWYgdGhlIGJyZWFrcG9pbnQgaXMgbmFtZWQsIHRoZSBtYXggbGltaXQgaXMgdGhlIGZvbGxvd2luZyBicmVha3BvaW50IC0gMXB4LlxuICAgIEBlbHNlIGlmICRicC1uZXh0IHtcbiAgICAgIC8vIE1heCB2YWx1ZSBpcyAwLjJweCB1bmRlciB0aGUgbmV4dCBicmVha3BvaW50ICgwLjAyIC8gMTYgPSAwLjAwMTI1KS5cbiAgICAgIC8vIFVzZSBhIHByZWNpc2lvbiB1bmRlciAxcHggdG8gc3VwcG9ydCBicm93c2VyIHpvb20sIGJ1dCBub3QgdG8gbG93IHRvIGF2b2lkIHJvdW5kaW5nLlxuICAgICAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9mb3VuZGF0aW9uL2ZvdW5kYXRpb24tc2l0ZXMvaXNzdWVzLzExMzEzXG4gICAgICAkYnAtbWF4OiBpZigkaGlkcGksICRicC1uZXh0IC0gZGl2aWRlKDEsICRzdGQtd2ViLWRwaSksIC16Zi1icC10by1lbSgkYnAtbmV4dCkgLSAwLjAwMTI1KTtcbiAgICB9XG4gIH1cblxuICAvLyBHZW5lcmF0ZSB0aGUgbWVkaWEgcXVlcnkgc3RyaW5nIGZyb20gbWluIGFuZCBtYXggbGltaXRzLlxuICBAaWYgJGhpZHBpIHtcbiAgICAvLyBHZW5lcmF0ZSB2YWx1ZXMgaW4gRFBJIGluc3RlYWQgb2YgRFBQWCBmb3IgYW4gSUU5LTExL09wZXJhIG1pbmkgY29tcGF0aWJpbGl0eS5cbiAgICAvLyBTZWUgaHR0cHM6Ly9jYW5pdXNlLmNvbS8jZmVhdD1jc3MtbWVkaWEtcmVzb2x1dGlvblxuICAgICRicC1taW4tZHBpOiBpZigkYnAtbWluLCAkYnAtbWluICogJHN0ZC13ZWItZHBpICogMWRwaSwgJGJwLW1pbik7XG4gICAgJGJwLW1heC1kcGk6IGlmKCRicC1tYXgsICRicC1tYXggKiAkc3RkLXdlYi1kcGkgKiAxZHBpLCAkYnAtbWF4KTtcbiAgICBAcmV0dXJuIHpmLXN0ci1qb2luKFxuICAgICAgLXpmLWJwLWpvaW4oJGJwLW1pbiwgJGJwLW1heCwgJy13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbycsICctd2Via2l0LW1heC1kZXZpY2UtcGl4ZWwtcmF0aW8nKSxcbiAgICAgIC16Zi1icC1qb2luKCRicC1taW4tZHBpLCAkYnAtbWF4LWRwaSwgJ21pbi1yZXNvbHV0aW9uJywgJ21heC1yZXNvbHV0aW9uJyksXG4gICAgICAnLCAnKTtcbiAgfVxuICBAZWxzZSB7XG4gICAgQHJldHVybiAtemYtYnAtam9pbigkYnAtbWluLCAkYnAtbWF4KTtcbiAgfVxufVxuXG4vLy8gV3JhcHMgYSBtZWRpYSBxdWVyeSBhcm91bmQgdGhlIGNvbnRlbnQgeW91IHB1dCBpbnNpZGUgdGhlIG1peGluLiBUaGlzIG1peGluIGFjY2VwdHMgYSBudW1iZXIgb2YgdmFsdWVzOlxuLy8vICAtIElmIGEgc3RyaW5nIGlzIHBhc3NlZCwgdGhlIG1peGluIHdpbGwgbG9vayBmb3IgaXQgaW4gdGhlIGAkYnJlYWtwb2ludHNgIGFuZCBgJGJyZWFrcG9pbnRzLWhpZHBpYCBtYXBzLCBhbmQgdXNlIGEgbWVkaWEgcXVlcnkgdGhlcmUuXG4vLy8gIC0gSWYgYSBwaXhlbCB2YWx1ZSBpcyBwYXNzZWQsIGl0IHdpbGwgYmUgY29udmVydGVkIHRvIGFuIGVtIHZhbHVlIHVzaW5nIGAkZ2xvYmFsLWZvbnQtc2l6ZWAgYXMgdGhlIGJhc2UuXG4vLy8gIC0gSWYgYSByZW0gdmFsdWUgaXMgcGFzc2VkLCB0aGUgdW5pdCB3aWxsIGJlIGNoYW5nZWQgdG8gZW0uXG4vLy8gIC0gSWYgYW4gZW0gdmFsdWUgaXMgcGFzc2VkLCB0aGUgdmFsdWUgd2lsbCBiZSB1c2VkIGFzLWlzLlxuLy8vXG4vLy8gSWYgbXVsdGlwbGUgdmFsdWVzIGFyZSBwYXNzZWQsIHRoZSBtaXhpbiB3aWxsIGdlbmVyYXRlIGEgbWVkaWEgcXVlcnkgZm9yIGVhY2ggb2YgdGhlbSBhcyBkZXNjcmliZWQgYWJvdmUuXG4vLy8gU2luY2UgdGhlIGNvbnRlbnQgaXMgZHVwbGljYXRlZCBmb3IgZWFjaCBicmVha3BvaW50LCB0aGlzIG1peGluIHNob3VsZCBvbmx5IGJlIHVzZWQgd2l0aCBwcm9wZXJ0aWVzIHRoYXRcbi8vLyBjaGFuZ2UgYWNyb3NzIGJyZWFrcG9pbnRzLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHZhbHVlcy4uLiAtIEJyZWFrcG9pbnQgbmFtZSBvciBweC9yZW0vZW0gdmFsdWUgdG8gcHJvY2Vzcy5cbi8vL1xuLy8vIEBvdXRwdXQgSWYgdGhlIGJyZWFrcG9pbnQgaXMgXCIwcHggYW5kIGxhcmdlclwiLCBvdXRwdXRzIHRoZSBjb250ZW50IGFzLWlzLiBPdGhlcndpc2UsIG91dHB1dHMgdGhlIGNvbnRlbnQgd3JhcHBlZCBpbiBhIG1lZGlhIHF1ZXJ5LlxuQG1peGluIGJyZWFrcG9pbnQoJHZhbHVlcy4uLikge1xuICBAZm9yICRpIGZyb20gMSB0aHJvdWdoIGxlbmd0aCgkdmFsdWVzKSB7XG4gICAgJHZhbHVlOiBudGgoJHZhbHVlcywgJGkpO1xuICAgICRzdHI6IGJyZWFrcG9pbnQoJHZhbHVlKTtcbiAgICAkYnA6IGluZGV4KCQtemYtYnJlYWtwb2ludHMta2V5cywgbnRoKCR2YWx1ZSwgMSkpO1xuICAgICRwYnA6IGluZGV4KCQtemYtYnJlYWtwb2ludHMta2V5cywgJHByaW50LWJyZWFrcG9pbnQpO1xuICAgIC8vIERpcmVjdGlvbiBvZiBtZWRpYSBxdWVyeSAodXAsIGRvd24sIG9yIG9ubHkpXG4gICAgJGRpcjogaWYobGVuZ3RoKCR2YWx1ZSkgPiAxLCBudGgoJHZhbHVlLCAyKSwgdXApO1xuXG4gICAgJG9sZC16Zi1zaXplOiBudWxsO1xuXG4gICAgLy8gTWFrZSBicmVha3BvaW50IHNpemUgYXZhaWxhYmxlIGFzIGEgdmFyaWFibGVcbiAgICBAaWYgZ2xvYmFsLXZhcmlhYmxlLWV4aXN0cygtemYtc2l6ZSkge1xuICAgICAgJG9sZC16Zi1zaXplOiAkLXpmLXNpemU7XG4gICAgfVxuICAgICQtemYtc2l6ZTogbnRoKCR2YWx1ZSwgMSkgIWdsb2JhbDsgLy8gZ2V0IHRoZSBmaXJzdCB2YWx1ZSB0byBhY2NvdW50IGZvciBgb25seWAgYW5kIGBkb3duYCBrZXl3b3Jkc1xuXG4gICAgLy8gSWYgJHN0ciBpcyBzdGlsbCBhbiBlbXB0eSBzdHJpbmcsIG5vIG1lZGlhIHF1ZXJ5IGlzIG5lZWRlZFxuICAgIEBpZiAkc3RyID09ICcnIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cblxuICAgIC8vIE90aGVyd2lzZSwgd3JhcCB0aGUgY29udGVudCBpbiBhIG1lZGlhIHF1ZXJ5XG4gICAgQGVsc2Uge1xuICAgICAgLy8gRm9yIG5hbWVkIGJyZWFrcG9pbnRzIGxlc3MgdGhhbiBvciBlcXVhbCB0byAkcHJpbnQtYnJlYWtwb2ludCwgYWRkIHByaW50IHRvIHRoZSBtZWRpYSB0eXBlc1xuICAgICAgLy8gZ2VuZXJhdGUgcHJpbnQgaWYgdGhlIGJyZWFrcG9pbnQgYWZmZWN0cyB0aGUgcHJpbnQtYnJlYWtwb2ludCAob3Igc21hbGxlcikuXG4gICAgICAvLyBUaGlzIG1lYW5zIHRoZSBjdXJyZW50IGNvbmRpdGlvbiBvbmx5IG5lZWRzIHRvIGJlIGV4dGVuZGVkIHNvICdkb3duJyBhbHdheXMgZ2VuZXJhdGVzIHByaW50LlxuICAgICAgQGlmICRicCAhPSBudWxsIGFuZCAoJGJwIDw9ICRwYnAgb3IgJGRpciA9PSBkb3duKSB7XG4gICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAjeyRzdHJ9IHtcbiAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAjeyRzdHJ9IHtcbiAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICQtemYtc2l6ZTogJG9sZC16Zi1zaXplICFnbG9iYWw7XG4gIH1cbn1cblxuLy8vIENvbnZlcnRzIHRoZSBicmVha3BvaW50cyBtYXAgdG8gYSBVUkwtZW5jb2RlZCBzdHJpbmcsIGxpa2UgdGhpczogYGtleTE9dmFsdWUxJmtleTI9dmFsdWUyYC4gVGhlIHZhbHVlIGlzIHRoZW4gZHJvcHBlZCBpbnRvIHRoZSBDU1MgZm9yIGEgc3BlY2lhbCBgPG1ldGE+YCB0YWcsIHdoaWNoIGlzIHJlYWQgYnkgdGhlIEZvdW5kYXRpb24gSmF2YVNjcmlwdC4gVGhpcyBpcyBob3cgd2UgdHJhbnNmZXIgdmFsdWVzIGZyb20gU2FzcyB0byBKYXZhU2NyaXB0LCBzbyB0aGV5IGNhbiBiZSBkZWZpbmVkIGluIG9uZSBwbGFjZS5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TWFwfSAkbWFwIC0gTWFwIHRvIGNvbnZlcnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7U3RyaW5nfSBBIHN0cmluZyBjb250YWluaW5nIHRoZSBtYXAncyBjb250ZW50cy5cbkBmdW5jdGlvbiAtemYtYnAtc2VyaWFsaXplKCRtYXApIHtcbiAgJHN0cjogJyc7XG4gIEBlYWNoICRrZXksICR2YWx1ZSBpbiAkbWFwIHtcbiAgICAkc3RyOiAkc3RyICsgJGtleSArICc9JyArIC16Zi1icC10by1lbSgkdmFsdWUpICsgJyYnO1xuICB9XG4gICRzdHI6IHN0ci1zbGljZSgkc3RyLCAxLCAtMik7XG5cbiAgQHJldHVybiAkc3RyO1xufVxuXG4vLy8gRmluZCB0aGUgbmV4dCBrZXkgaW4gYSBtYXAuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge01hcH0gJG1hcCAtIE1hcCB0byB0cmF2ZXJzZS5cbi8vLyBAcGFyYW0ge01peGVkfSAka2V5IC0gS2V5IHRvIHVzZSBhcyBhIHN0YXJ0aW5nIHBvaW50LlxuLy8vXG4vLy8gQHJldHVybnMge01peGVkfSBUaGUgdmFsdWUgZm9yIHRoZSBrZXkgYWZ0ZXIgYCRrZXlgLCBpZiBgJGtleWAgd2FzIGZvdW5kLiBJZiBgJGtleWAgd2FzIG5vdCBmb3VuZCwgb3IgYCRrZXlgIHdhcyB0aGUgbGFzdCB2YWx1ZSBpbiB0aGUgbWFwLCByZXR1cm5zIGBudWxsYC5cbkBmdW5jdGlvbiAtemYtbWFwLW5leHQoJG1hcCwgJGtleSkge1xuXG4gIC8vIFN0b3JlIHRoZSBrZXlzIG9mIHRoZSBtYXAgYXMgYSBsaXN0XG4gICR2YWx1ZXM6IG1hcC1rZXlzKCRtYXApO1xuXG4gICRpOiAwO1xuXG4gIC8vIElmIHRoZSBLZXkgRXhpc3RzLCBHZXQgdGhlIGluZGV4IG9mIHRoZSBrZXkgd2l0aGluIHRoZSBtYXAgYW5kIGFkZCAxIHRvIGl0IGZvciB0aGUgbmV4dCBicmVha3BvaW50IGluIHRoZSBtYXBcbiAgQGlmIChtYXAtaGFzLWtleSgkbWFwLCAka2V5KSkge1xuICAgICRpOiBpbmRleCgkdmFsdWVzLCAka2V5KSArIDE7XG4gIH1cblxuICAvLyBJZiB0aGUga2V5IGRvZXNuJ3QgZXhpc3QsIG9yIGl0J3MgdGhlIGxhc3Qga2V5IGluIHRoZSBtYXAsIHJldHVybiBudWxsXG4gIEBpZiAoJGkgPiBsZW5ndGgoJG1hcCkgb3IgJGkgPT0gMCkge1xuICAgIEByZXR1cm4gbnVsbDtcbiAgfVxuICAvLyBPdGhlcndpc2UsIHJldHVybiB0aGUgdmFsdWVcbiAgQGVsc2Uge1xuICAgIEByZXR1cm4gbWFwLWdldCgkbWFwLCBudGgoJHZhbHVlcywgJGkpKTtcbiAgfVxuXG59XG5cbi8vLyBGaW5kIHRoZSBuZXh0IG51bWJlciBpbiBhIG1hcC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TWFwfSAkbWFwIC0gTWFwIHRvIHRyYXZlcnNlLlxuLy8vIEBwYXJhbSB7TWl4ZWR9ICRudW1iZXIgLSBOdW1iZXIgdG8gdXNlIGFzIGEgc3RhcnRpbmcgcG9pbnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7TWl4ZWR9IFRoZSBudW1iZXIgZm9sbG93aW5nIGAkbnVtYmVyYCwgaWYgYCRudW1iZXJgIHdhcyBmb3VuZC4gSWYgYCRudW1iZXJgIHdhcyBub3QgZm91bmQsIG9yIGAkbnVtYmVyYCB3YXMgdGhlIGJpZ2dlc3QgbnVtYmVyIGluIHRoZSBtYXAsIHJldHVybnMgYG51bGxgLlxuQGZ1bmN0aW9uIC16Zi1tYXAtbmV4dC1udW1iZXIoJG1hcCwgJG51bWJlcikge1xuXG4gICRuZXh0LW51bWJlcjogbnVsbDtcblxuICBAZWFjaCAkaywgJHYgaW4gJG1hcCB7XG4gICAgQGlmIHR5cGUtb2YoJHYpID09ICdudW1iZXInIGFuZCAkdiA+ICRudW1iZXIgYW5kICgkbmV4dC1udW1iZXIgPT0gbnVsbCBvciAkdiA8ICRuZXh0LW51bWJlcikge1xuICAgICAgJG5leHQtbnVtYmVyOiAkdjtcbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICRuZXh0LW51bWJlcjtcbn1cblxuLy8vIFJldHVybiBhIGxpc3Qgb2Ygb3VyIG5hbWVkIGJyZWFrcG9pbnRzIGxlc3MgdGhhbiAka2V5LiBVc2VmdWwgZm9yIGRlYWxpbmcgd2l0aFxuLy8vIHJlc3BvbnNpdmUgZ3V0dGVycyBmb3IgdGhlIGdyaWQuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGtleSAtIEtleSB0byB1c2UgYXMgbGFzdCBicmVha3BvaW50LlxuLy8vXG4vLy8gQHJldHVybnMge0FycmF5fSBUaGUgbGlzdCBvZiBicmVha3BvaW50cyB1cCB0byBhbmQuIElmICRrZXkgaXMgYXV0bywgcmV0dXJucyBicmVha3BvaW50cyBhYm92ZSB0aGUgemVyb1xuQGZ1bmN0aW9uIC16Zi1icmVha3BvaW50cy1sZXNzLXRoYW4oJGtleSkge1xuICAkbGlzdDogKCk7XG4gICRmb3VuZC1rZXk6IGZhbHNlO1xuXG4gIEBlYWNoICRuYW1lIGluICQtemYtYnJlYWtwb2ludHMta2V5cyB7XG4gICAgQGlmICgkbmFtZSA9PSAka2V5KSB7XG4gICAgICAkZm91bmQta2V5OiB0cnVlO1xuICAgIH1cbiAgICBAaWYgbm90ICRmb3VuZC1rZXkge1xuICAgICAgJGxpc3Q6IGFwcGVuZCgkbGlzdCwgJG5hbWUpO1xuICAgIH1cbiAgfVxuICBAcmV0dXJuICRsaXN0O1xufVxuXG4vLy8gUmV0dXJuIGEgbGlzdCBvZiBvdXIgbmFtZWQgYnJlYWtwb2ludHMgbGVzcyB0aGFuICRrZXkuIFVzZWZ1bCBmb3IgZGVhbGluZyB3aXRoXG4vLy8gcmVzcG9uc2l2ZSBndXR0ZXJzIGZvciB0aGUgZ3JpZC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkYnJlYWtwb2ludCAtIGEgbmFtZWQgb3Igbm9uLW5hbWVkIGJyZWFrcG9pbnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7QXJyYXl9IFRoZSBsaXN0IG9mIGJyZWFrcG9pbnRzIHVwIHRvIGFuZC4gSWYgJGtleSBpcyBhdXRvLCByZXR1cm5zIGJyZWFrcG9pbnRzIGFib3ZlIHRoZSB6ZXJvXG5AZnVuY3Rpb24gLXpmLWNsb3Nlc3QtbmFtZWQtYnJlYWtwb2ludCgkYnJlYWtwb2ludCkge1xuICAkbGFzdDogJC16Zi16ZXJvLWJyZWFrcG9pbnQ7XG4gICRmb3VuZDogZmFsc2U7XG5cbiAgJHZhbHVlOiB1bml0bGVzcy1jYWxjKCRicmVha3BvaW50LCAxcHgpO1xuICBAZWFjaCAka2V5LCAkdmFsIGluICRicmVha3BvaW50cyB7XG4gICAgQGlmIG5vdCAkZm91bmQge1xuICAgICAgQGlmIHVuaXRsZXNzLWNhbGMoJHZhbCkgPiAkdmFsdWUge1xuICAgICAgICAkZm91bmQ6IHRydWU7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgJGxhc3Q6ICRrZXk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkbGFzdDtcbn1cblxuLy8vIEdldCBhIHZhbHVlIGZvciBhIGJyZWFrcG9pbnQgZnJvbSBhIHJlc3BvbnNpdmUgY29uZmlnIG1hcCBvciBzaW5nbGUgdmFsdWUuXG4vLy8gLSBJZiB0aGUgY29uZmlnIGlzIGEgc2luZ2xlIHZhbHVlLCByZXR1cm4gaXQgcmVnYXJkbGVzcyBvZiBgJHZhbHVlYC5cbi8vLyAtIElmIHRoZSBjb25maWcgaXMgYSBtYXAgYW5kIGhhcyB0aGUga2V5IGAkdmFsdWVgLCB0aGUgZXhhY3QgYnJlYWtwb2ludCB2YWx1ZSBpcyByZXR1cm5lZC5cbi8vLyAtIElmIHRoZSBjb25maWcgaXMgYSBtYXAgYW5kIGRvZXMgKm5vdCogaGF2ZSB0aGUgYnJlYWtwb2ludCwgdGhlIHZhbHVlIG1hdGNoaW5nIHRoZSBuZXh0IGxvd2VzdCBicmVha3BvaW50IGluIHRoZSBjb25maWcgbWFwIGlzIHJldHVybmVkLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkbWFwIC0gUmVzcG9uc2l2ZSBjb25maWcgbWFwIG9yIHNpbmdsZSB2YWx1ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR2YWx1ZSAtIEJyZWFrcG9pbnQgbmFtZSB0byB1c2UuXG4vLy9cbi8vLyBAcmV0dXJuIHtNaXhlZH0gVGhlIGNvcnJlc3BvbmRpbmcgYnJlYWtwb2ludCB2YWx1ZS5cbkBmdW5jdGlvbiAtemYtZ2V0LWJwLXZhbCgkbWFwLCAkdmFsdWUpIHtcbiAgLy8gSWYgdGhlIGdpdmVuIG1hcCBpcyBhIHNpbmdsZSB2YWx1ZSwgcmV0dXJuIGl0XG4gIEBpZiB0eXBlLW9mKCRtYXApID09ICdudW1iZXInIHtcbiAgICBAcmV0dXJuICRtYXA7XG4gIH1cblxuXG4gIC8vIENoZWNrIGlmIHRoZSBicmVha3BvaW50IG5hbWUgZXhpc3RzIGdsb2JhbGx5XG4gIEBpZiBub3QgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCAkdmFsdWUpIHtcbiAgICBAaWYgdHlwZS1vZigkdmFsdWUpID09ICdudW1iZXInIHtcbiAgICAgICR2YWx1ZTogLXpmLWNsb3Nlc3QtbmFtZWQtYnJlYWtwb2ludCgkdmFsdWUpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgQHJldHVybiBudWxsO1xuICAgIH1cbiAgfVxuICAvLyBDaGVjayBpZiB0aGUgYnJlYWtwb2ludCBuYW1lIGV4aXN0cyBpbiB0aGUgbG9jYWwgY29uZmlnIG1hcFxuICBAZWxzZSBpZiBtYXAtaGFzLWtleSgkbWFwLCAkdmFsdWUpIHtcbiAgICAvLyBJZiBpdCBkb2VzLCBqdXN0IHJldHVybiB0aGUgdmFsdWVcbiAgICBAcmV0dXJuIG1hcC1nZXQoJG1hcCwgJHZhbHVlKTtcbiAgfVxuICAvLyBPdGhlcndpc2UsIGZpbmQgdGhlIG5leHQgbG93ZXN0IGJyZWFrcG9pbnQgYW5kIHJldHVybiB0aGF0IHZhbHVlXG4gIEBlbHNlIHtcbiAgICAkYW5jaG9yOiBudWxsO1xuICAgICRmb3VuZDogZmFsc2U7XG5cbiAgICBAZWFjaCAka2V5LCAkdmFsIGluICRicmVha3BvaW50cyB7XG4gICAgICBAaWYgbm90ICRmb3VuZCB7XG4gICAgICAgIEBpZiBtYXAtaGFzLWtleSgkbWFwLCAka2V5KSB7XG4gICAgICAgICAgJGFuY2hvcjogJGtleTtcbiAgICAgICAgfVxuICAgICAgICBAaWYgJGtleSA9PSAkdmFsdWUge1xuICAgICAgICAgICRmb3VuZDogdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIEByZXR1cm4gbWFwLWdldCgkbWFwLCAkYW5jaG9yKTtcbiAgfVxufVxuXG4vLy8gUmV0dXJuIHRoZSBiZXN0IGJyZWFrcG9pbnQgdG8gdXNlIGFjY29yZGluZyB0byB0aGUgY2FsbGluZyBjb250ZXh0LiBJdCByZXR1cm5zIGluIG9yZGVyOlxuLy8vIDEuIHRoZSBnaXZlbiBgJHZhbHVlYCBhcmd1bWVudCBpZiBpdCBpcyBub3QgbnVsbC5cbi8vLyAyLiB0aGUgZ2xvYmFsIGJyZWFrcG9pbnQgY29udGV4dCBgJC16Zi1zaXplYCBpZiBpdCBpcyBub3QgbnVsbCAobGlrZSBpZiBjYWxsZWQgaW5zaWRlIHRoZW4gYGJyZWFrcG9pbnQoKWAgbWl4aW4pXG4vLy8gMy4gdGhlIGdpdmVuIGAkZGVmYXVsdGAgYXJndW1lbnQuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR2YWx1ZSBbbnVsbF0gLSBCcmVha3BvaW50IHRvIHVzZSBpbiBwcmlvcml0eSBpZiBub24tbnVsbC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkZWZhdWx0IFtudWxsXSAtIEJyZWFrcG9pbnQgdG8gdXNlIGJ5IGRlZmF1bHQgaWYgbm8gb3RoZXIgdmFsdWUgY2FuIGJlIHVzZWQuXG4vLy9cbi8vLyBAcmV0dXJuIHtLZXl3b3JkfSBUaGUgcmVzb2x2ZWQgYnJlYWtwb2ludC5cbkBmdW5jdGlvbiAtemYtY3VycmVudC1icmVha3BvaW50KCR2YWx1ZTogbnVsbCwgJGRlZmF1bHQ6IG51bGwpIHtcbiAgQGlmICgkdmFsdWUgIT0gbnVsbCkge1xuICAgIEByZXR1cm4gJHZhbHVlO1xuICB9XG4gIEBlbHNlIGlmICh2YXJpYWJsZS1leGlzdHMoLXpmLXNpemUpIGFuZCB0eXBlLW9mKCQtemYtc2l6ZSkgIT0gJ251bWJlcicpIGFuZCAkLXpmLXNpemUgIT0gbnVsbCB7XG4gICAgQHJldHVybiAkLXpmLXNpemU7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEByZXR1cm4gJGRlZmF1bHQ7XG4gIH1cbn1cblxuLy8vIFJldHVybiBtZWRpYSBxdWVyeSBzdHJpbmcgZnJvbSB0aGUgZ2l2ZW4gbWluIGFuZC9vciBtYXggbGltaXRzLlxuLy8vIElmIGEgbGltaXQgaXMgZXF1YWwgdG8gYG51bGxgIG9yIGAwYCwgaXQgaXMgaWdub3JlZC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbWluIFswXSAtIE1pbiBtZWRpYSBxdWVyeSBsaW1pdC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJG1heCBbMF0gLSBNYXggbWVkaWEgcXVlcnkgbGltaXQuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRtaW4tbmFtZSBbJ21pbi13aWR0aCddIC0gTmFtZSBvZiB0aGUgbWluIG1lZGlhIHF1ZXJ5IGxpbWl0LlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkZGVsaW1pdGVyIFsnbWF4LXdpZHRoJ10gLSBOYW1lIG9mIHRoZSBtYXggbWVkaWEgcXVlcnkgbGltaXQuXG4vLy9cbi8vLyBAcmV0dXJucyB7U3RyaW5nfSBNZWRpYSBRdWVyeSBzdHJpbmcuXG5AZnVuY3Rpb24gLXpmLWJwLWpvaW4oXG4gICRtaW46IDAsXG4gICRtYXg6IDAsXG4gICRtaW4tbmFtZTogJ21pbi13aWR0aCcsXG4gICRtYXgtbmFtZTogJ21heC13aWR0aCdcbikge1xuICBAcmV0dXJuIHpmLXN0ci1qb2luKFxuICAgIGlmKCRtaW4gYW5kICRtaW4gPiAwLCAnKCN7JG1pbi1uYW1lfTogI3skbWlufSknLCBudWxsKSxcbiAgICBpZigkbWF4IGFuZCAkbWF4ID4gMCwgJygjeyRtYXgtbmFtZX06ICN7JG1heH0pJywgbnVsbCksXG4gICAgJyBhbmQgJyk7XG59XG5cbiRzbWFsbC11cDogJyc7XG4kc21hbGwtb25seTogJyc7XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIHNtYWxsKSB7XG4gICRzbWFsbC11cDogc2NyZWVuO1xuICAkc21hbGwtb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoc21hbGwgb25seSl9Jyk7XG59XG5cbiRtZWRpdW0tdXA6ICcnO1xuJG1lZGl1bS1vbmx5OiAnJztcblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgbWVkaXVtKSB7XG4gICRtZWRpdW0tdXA6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bSl9Jyk7XG4gICRtZWRpdW0tb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtIG9ubHkpfScpO1xufVxuXG4kbGFyZ2UtdXA6ICcnO1xuJGxhcmdlLW9ubHk6ICcnO1xuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCBsYXJnZSkge1xuICAkbGFyZ2UtdXA6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KGxhcmdlKX0nKTtcbiAgJGxhcmdlLW9ubHk6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KGxhcmdlIG9ubHkpfScpO1xufVxuXG4keGxhcmdlLXVwOiAnJztcbiR4bGFyZ2Utb25seTogJyc7XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIHhsYXJnZSkge1xuICAkeGxhcmdlLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludCh4bGFyZ2UpfScpO1xuICAkeGxhcmdlLW9ubHk6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KHhsYXJnZSBvbmx5KX0nKTtcbn1cblxuJHh4bGFyZ2UtdXA6ICcnO1xuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCB4eGxhcmdlKSB7XG4gICR4eGxhcmdlLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludCh4eGxhcmdlKX0nKTtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB4eS1ncmlkXG4vLy8vXG5cbi8vLyBTaXplcyBjaGlsZCBlbGVtZW50cyBzbyB0aGF0IGAkbmAgbnVtYmVyIG9mIGl0ZW1zIGFwcGVhciBvbiBlYWNoIHJvdy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbiAtIE51bWJlciBvZiBlbGVtZW50cyB0byBkaXNwbGF5IHBlciByb3cuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRzZWxlY3RvciBbJy5jZWxsJ10gLSBTZWxlY3RvcihzKSB0byB1c2UgZm9yIGNoaWxkIGVsZW1lbnRzLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGd1dHRlci1vdXRwdXQgW251bGxdIC0gW0RFUFJFQ0FURURdIFdoZXRoZXIgb3Igbm90IHRvIG91dHB1dCBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLW1hcmdpbi1ndXR0ZXJzXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgZm9yIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZ3V0dGVyLXR5cGUgW21hcmdpbl0gLSBUeXBlIG9mIGd1dHRlciB0byBvdXRwdXQuIEFjY2VwdHMgYG1hcmdpbmAsIGBwYWRkaW5nYCBvciBgbm9uZWAuXG4vLy8gQHBhcmFtIHtMaXN0fSAkZ3V0dGVyLXBvc2l0aW9uIFtudWxsXSAtIFRoZSBwb3NpdGlvbiB0byBhcHBseSBndXR0ZXJzIHRvLiBBY2NlcHRzIGB0b3BgLCBgYm90dG9tYCwgYGxlZnRgLCBgcmlnaHRgIGluIGFueSBjb21iaW5hdGlvbi4gQnkgZGVmYXVsdCBgcmlnaHQgbGVmdGAgZm9yIGhvcml6b250YWwgY2VsbHMgYW5kIGB0b3AgYm90dG9tYCBmb3IgdmVydGljYWwgY2VsbHMuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRicmVha3BvaW50IFtudWxsXSAtIFRoZSBicmVha3BvaW50IHRvIHVzZSBmb3IgdGhlIGNlbGwgZ2VuZXJhdGlvbi4gSWYgdXNpbmcgd2l0aCB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdGhpcyB3aWxsIGJlIHNldCBhdXRvbWF0aWNhbGx5IHVubGVzcyBtYW51YWxseSBlbnRlcmVkLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHZlcnRpY2FsIFtmYWxzZV0gLSBTZXQgdG8gdHJ1ZSB0byBvdXRwdXQgdmVydGljYWwgKGhlaWdodCkgc3R5bGVzIHJhdGhlciB0aGFuIHdpZHRocy5cbi8vLyBAcGFyYW0ge0xpc3R9ICRvdXRwdXQgWyhiYXNlIHNpemUgZ3V0dGVycyldIC0gQ2VsbCBwYXJ0cyB0byBvdXRwdXQuIFlvdSB3aWxsIG5lZWQgdG8gZ2VuZXJhdGUgb3RoZXJzIHBhcnRzIG9mIHRoZSBjZWxsIHNlcGVyYXRlbHksIGl0IG1heSBub3Qgd29yayBjb3JyZWN0bHkgb3RoZXJ3aXNlLlxuQG1peGluIHh5LWdyaWQtbGF5b3V0KFxuICAkbixcbiAgJHNlbGVjdG9yOiAnLmNlbGwnLFxuICAkZ3V0dGVyLW91dHB1dDogbnVsbCxcbiAgJGd1dHRlcnM6ICRncmlkLW1hcmdpbi1ndXR0ZXJzLFxuICAkZ3V0dGVyLXR5cGU6IG1hcmdpbixcbiAgJGd1dHRlci1wb3NpdGlvbjogbnVsbCxcbiAgJGJyZWFrcG9pbnQ6IG51bGwsXG4gICR2ZXJ0aWNhbDogZmFsc2UsXG4gICRvdXRwdXQ6IChiYXNlIHNpemUgZ3V0dGVycylcbikge1xuICAkc2l6ZTogcGVyY2VudGFnZShkaXZpZGUoMSwgJG4pKTtcblxuICAmID4gI3skc2VsZWN0b3J9IHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsKCRzaXplLCAkZ3V0dGVyLW91dHB1dCwgJGd1dHRlcnMsICRndXR0ZXItdHlwZSwgJGd1dHRlci1wb3NpdGlvbiwgJGJyZWFrcG9pbnQsICR2ZXJ0aWNhbCwgJG91dHB1dCk7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB4eS1ncmlkXG4vLy8vXG5cbi8vLyBDb2xsYXBzZXMgdGhlIGdyaWQgYSBjZWxscyB3aXRoaW4gaXQuXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJHNlbGVjdG9yIFsuY2VsbF0gLSBUaGUgY2hpbGQgZWxlbWVudCB0byByZW1vdmUgdGhlIGd1dHRlciBmcm9tLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGd1dHRlci10eXBlIFttYXJnaW5dIC0gVGhlIHR5cGUgb2YgZ3V0dGVyIHRvIHJlbW92ZS5cbi8vLyBAcGFyYW0ge0xpc3R9ICRndXR0ZXItcG9zaXRpb24gW3JpZ2h0IGxlZnRdIC0gVGhlIHBvc2l0aW9ucyB0byByZW1vdmUgZ3V0dGVycyBmcm9tLiBBY2NlcHRzIGB0b3BgLCBgYm90dG9tYCwgYGxlZnRgLCBgcmlnaHRgIGluIGFueSBjb21iaW5hdGlvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRtaW4tYnJlYWtwb2ludCBbJC16Zi16ZXJvLWJyZWFrcG9pbnRdIC0gTWluaW11bSBicmVha3BvaW50IGluIGAkYnJlYWtwb2ludC1jbGFzc2VzYCBmb3Igd2hpY2ggdG8gY29sbGFwc2UgdGhlIGd1dHRlci5cbkBtaXhpbiB4eS1ncmlkLWNvbGxhcHNlKFxuICAkc2VsZWN0b3I6ICcuY2VsbCcsXG4gICRndXR0ZXItdHlwZTogbWFyZ2luLFxuICAkZ3V0dGVyLXBvc2l0aW9uOiByaWdodCBsZWZ0LFxuICAkbWluLWJyZWFrcG9pbnQ6ICQtemYtemVyby1icmVha3BvaW50XG4pIHtcbiAgLy8gRmlyc3QsIGxldHMgbmVnYXRlIGFueSBtYXJnaW5zIG9uIHRoZSB0b3AgbGV2ZWxcbiAgQGlmICgkZ3V0dGVyLXR5cGUgPT0gJ21hcmdpbicpIHtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1pbi1icmVha3BvaW50KSB7XG4gICAgICBAZWFjaCAkdmFsdWUgaW4gJGd1dHRlci1wb3NpdGlvbiB7XG4gICAgICAgIG1hcmdpbi0jeyR2YWx1ZX06IDA7XG4gICAgICB9XG5cbiAgICAgID4gI3skc2VsZWN0b3J9IHtcbiAgICAgICAgQGVhY2ggJHZhbHVlIGluICRndXR0ZXItcG9zaXRpb24ge1xuICAgICAgICAgIG1hcmdpbi0jeyR2YWx1ZX06IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAkZXhjbHVkZWQtYnBzOiAtemYtYnJlYWtwb2ludHMtbGVzcy10aGFuKCRtaW4tYnJlYWtwb2ludCk7XG5cbiAgICAvLyBPdXRwdXQgbmV3IHdpZHRocyB0byBub3QgaW5jbHVkZSBndXR0ZXJzXG4gICAgQGVhY2ggJGJwIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgICAgQGlmKHNsLWNvbnRhaW4oJGV4Y2x1ZGVkLWJwcywgJGJwKSkge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtaW4tYnJlYWtwb2ludCkge1xuICAgICAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgICAgICAgICAvLyBTaXppbmcgKHBlcmNlbnRhZ2UpXG4gICAgICAgICAgICA+IC4jeyRicH0tI3skaX0ge1xuICAgICAgICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLXNpemUoJGksICRndXR0ZXItdHlwZTogbm9uZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnApIHtcbiAgICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgICAgICAgICAgLy8gU2l6aW5nIChwZXJjZW50YWdlKVxuICAgICAgICAgICAgPiAuI3skYnB9LSN7JGl9IHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1zaXplKCRpLCAkZ3V0dGVyLXR5cGU6IG5vbmUpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtaW4tYnJlYWtwb2ludCkge1xuICAgICAgQGVhY2ggJHZhbHVlIGluICRndXR0ZXItcG9zaXRpb24ge1xuICAgICAgICBtYXJnaW4tI3skdmFsdWV9OiAwO1xuICAgICAgfVxuXG4gICAgICA+ICN7JHNlbGVjdG9yfSB7XG4gICAgICAgIEBlYWNoICR2YWx1ZSBpbiAkZ3V0dGVyLXBvc2l0aW9uIHtcbiAgICAgICAgICBwYWRkaW5nLSN7JHZhbHVlfTogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHh5LWdyaWRcbi8vLy9cblxuLy8vIFJldHVybnMgdGhlIGFwcHJvcHJpYXRlIENTUyB2YWx1ZSB0byBvZmZzZXQgYSBjZWxsLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TGlzdH0gJG4gLSBTaXplIHRvIG9mZnNldCBieS4gWW91IGNhbiBwYXNzIGluIGFueSB2YWx1ZSBhY2NlcHRlZCBieSB0aGUgYHh5LWNlbGwoKWAgbWl4aW4sIHN1Y2ggYXMgYDZgLCBgNTAlYCwgb3IgYDEgb2YgMmAuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtbWFyZ2luLWd1dHRlcnNdIE1hcCBvZiBndXR0ZXJzIG9yIHNpbmdsZSB2YWx1ZSB0byB1c2UgZm9yIHJlc3BvbnNpdmUgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRndXR0ZXItdHlwZSBbbWFyZ2luXSBUaGUgdHlwZSBvZiBndXR0ZXIgdG8gdXNlLiBDYW4gYmUgYG1hcmdpbmAgb3IgYHBhZGRpbmdgXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRicmVha3BvaW50IFtudWxsXSAtIFRoZSBuYW1lIG9mIHRoZSBicmVha3BvaW50IHNpemUgaW4geW91ciBndXR0ZXJzIG1hcCB0byBnZXQgdGhlIHNpemUgZnJvbS4gSWYgdXNpbmcgd2l0aCB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdGhpcyB3aWxsIGJlIHNldCBhdXRvbWF0aWNhbGx5IHVubGVzcyBtYW51YWxseSBlbnRlcmVkLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcnxTdHJpbmd9IFRoZSBjZWxsIG9mZnNldCBwcm9wZXJ0eSB2YWx1ZS5cbkBmdW5jdGlvbiB4eS1jZWxsLW9mZnNldChcbiAgJG4sXG4gICRndXR0ZXJzOiAkZ3JpZC1tYXJnaW4tZ3V0dGVycyxcbiAgJGd1dHRlci10eXBlOiBtYXJnaW4sXG4gICRicmVha3BvaW50OiBudWxsXG4pIHtcbiAgJGJyZWFrcG9pbnQ6IC16Zi1jdXJyZW50LWJyZWFrcG9pbnQoJGJyZWFrcG9pbnQsICRkZWZhdWx0OiAkLXpmLXplcm8tYnJlYWtwb2ludCk7XG4gICRzaXplOiB4eS1jZWxsLXNpemUoJG4pO1xuXG4gICRvZmZzZXQ6ICRzaXplO1xuICBAaWYgKCRndXR0ZXItdHlwZSA9PSAnbWFyZ2luJykge1xuICAgIC8vIE1ha2Ugc3VyZSB0aGF0IDAgaXMgdHJhbnNsYXRlZCBpbiAwcmVtIGZvciBjYWxjKClcbiAgICAkZ3V0dGVyOiByZW0tY2FsYyh4eS1jZWxsLWd1dHRlcnMoJGd1dHRlcnMsICRicmVha3BvaW50KSk7XG4gICAgQGlmICRndXR0ZXIgPT0gMCB7XG4gICAgICAkZ3V0dGVyOiAwcmVtO1xuICAgIH1cbiAgICAkb2Zmc2V0OiBpZigkZ3V0dGVyID09IDAsICRzaXplLCBjYWxjKCN7JHNpemV9ICsgI3skZ3V0dGVyfSAvIDIpKTtcbiAgfVxuICBAcmV0dXJuICRvZmZzZXQ7XG59XG5cbi8vLyBPZmZzZXRzIGEgY29sdW1uIHRvIHRoZSByaWdodC9ib3R0b20gYnkgYCRuYCBjb2x1bW5zLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TGlzdH0gJG4gLSBTaXplIHRvIG9mZnNldCBieS4gWW91IGNhbiBwYXNzIGluIGFueSB2YWx1ZSBhY2NlcHRlZCBieSB0aGUgYHh5LWNlbGwoKWAgbWl4aW4sIHN1Y2ggYXMgYDZgLCBgNTAlYCwgb3IgYDEgb2YgMmAuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtbWFyZ2luLWd1dHRlcnNdIE1hcCBvZiBndXR0ZXJzIG9yIHNpbmdsZSB2YWx1ZSB0byB1c2UgZm9yIHJlc3BvbnNpdmUgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRndXR0ZXItdHlwZSBbbWFyZ2luXSBUaGUgdHlwZSBvZiBndXR0ZXIgdG8gdXNlLiBDYW4gYmUgYG1hcmdpbmAgb3IgYHBhZGRpbmdgXG4vLy8gQHBhcmFtIHtOdW1iZXJ8QXJyYXl8S2V5d29yZH0gJGJyZWFrcG9pbnQgW251bGxdIC0gQnJlYWtwb2ludCB0byB1c2UgZm9yIGAkZ3V0dGVyc2AuIEl0IGNhbiBiZSBhIGJyZWFrcG9pbnQgbmFtZSwgbGlzdCBvZiBicmVha3BvaW50cyBvciBgYXV0b2AgZm9yIGFsbCBicmVha3BvaW50cy4gSWYgYSBsaXN0IGlzIGdpdmVuLCBtZWRpYS1xdWVyaWVzIHdpbGwgYmUgZ2VuZXJhdGVkLiBJZiB1c2luZyB3aXRoIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0aGlzIHdpbGwgYmUgc2V0IGF1dG9tYXRpY2FsbHkgdW5sZXNzIG1hbnVhbGx5IGVudGVyZWQuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkdmVydGljYWwgW2ZhbHNlXSBTZXRzIHRoZSBkaXJlY3Rpb24gb2YgdGhlIG9mZnNldC4gSWYgc2V0IHRvIHRydWUgd2lsbCBhcHBseSBtYXJnaW4tdG9wIGluc3RlYWQuXG5AbWl4aW4geHktY2VsbC1vZmZzZXQoXG4gICRuLFxuICAkZ3V0dGVyczogJGdyaWQtbWFyZ2luLWd1dHRlcnMsXG4gICRndXR0ZXItdHlwZTogbWFyZ2luLFxuICAkYnJlYWtwb2ludDogbnVsbCxcbiAgJHZlcnRpY2FsOiBmYWxzZVxuKSB7XG4gICRicmVha3BvaW50OiAtemYtY3VycmVudC1icmVha3BvaW50KCRicmVha3BvaW50LCAkZGVmYXVsdDogJC16Zi16ZXJvLWJyZWFrcG9pbnQpO1xuICAkZGlyZWN0aW9uOiBpZigkdmVydGljYWwsICd0b3AnLCAkZ2xvYmFsLWxlZnQpO1xuXG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQtaW4oJGJyZWFrcG9pbnQsICRtZWRpYS1xdWVyaWVzOiAnZm9yLWxpc3RzJykge1xuICAgICRvZmZzZXQ6IHh5LWNlbGwtb2Zmc2V0KCRuLCAkZ3V0dGVycywgJGd1dHRlci10eXBlKTtcbiAgICBtYXJnaW4tI3skZGlyZWN0aW9ufTogI3skb2Zmc2V0fTtcbiAgfVxufVxuIiwiLy8gc2Fzcy1saW50OmRpc2FibGUgbm8tdmVuZG9yLXByZWZpeGVzXG5cbi8vLyBNb2RpZmllcyBhIGdyaWQgdG8gZ2l2ZSBpdCBcImZyYW1lXCIgYmVoYXZpb3IgKG5vIG92ZXJmbG93LCBubyB3cmFwLCBzdHJldGNoIGJlaGF2aW9yKVxuLy8vXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkdmVydGljYWwgW2ZhbHNlXSAtIElzIGdyaWQgdmVydGljYWwgb3IgaG9yaXpvbnRhbC4gU2hvdWxkIG1hdGNoIGdyaWQuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkbmVzdGVkIFtmYWxzZV0gLSBJcyBncmlkIG5lc3RlZCBvciBub3QuIElmIG5lc3RlZCBpcyB0cnVlIHRoaXMgc2V0cyB0aGUgZnJhbWUgdG8gMTAwJSBoZWlnaHQsIG90aGVyd2lzZSB3aWxsIGJlIDEwMHZoLlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgW251bGxdIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSBmb3IgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGJyZWFrcG9pbnQgW251bGxdIC0gVGhlIG5hbWUgb2YgdGhlIGJyZWFrcG9pbnQgc2l6ZSBpbiB5b3VyIGd1dHRlcnMgbWFwIHRvIGdldCB0aGUgc2l6ZSBmcm9tLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGluY2x1ZGUtYmFzZSBbdHJ1ZV0gLSBJbmNsdWRlIHRoZSBiYXNlIHN0eWxlcyB0aGF0IGRvbid0IHZhcnkgcGVyIGJyZWFrcG9pbnQuXG5AbWl4aW4geHktZ3JpZC1mcmFtZShcbiAgJHZlcnRpY2FsOiBmYWxzZSxcbiAgJG5lc3RlZDogZmFsc2UsXG4gICRndXR0ZXJzOiBudWxsLFxuICAkYnJlYWtwb2ludDogbnVsbCxcbiAgJGluY2x1ZGUtYmFzZTogdHJ1ZVxuKSB7XG5cbiAgQGlmICRpbmNsdWRlLWJhc2Uge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICB9XG5cbiAgQGlmICRicmVha3BvaW50ID09IG51bGwgYW5kIHR5cGUtb2YoJGd1dHRlcnMpID09ICdtYXAnIHtcbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCkge1xuICAgICAgQGluY2x1ZGUgeHktZ3JpZC1mcmFtZSgkdmVydGljYWwsICRuZXN0ZWQsICRndXR0ZXJzLCAkLXpmLXNpemUsIGZhbHNlKTtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIC8vIEdldCBvdXIgZ3V0dGVycyBpZiBhcHBsaWNhYmxlXG4gICAgJGd1dHRlcjogLXpmLWdldC1icC12YWwoJGd1dHRlcnMsICRicmVha3BvaW50KTtcblxuICAgIC8vIElmIHdlIGhhdmUgYSBndXR0ZXIsIGFkZCBpdCB0byB0aGUgd2lkdGgvaGVpZ2h0XG4gICAgQGlmICRndXR0ZXIge1xuICAgICAgQGlmICR2ZXJ0aWNhbCA9PSB0cnVlIHtcbiAgICAgICAgJHVuaXQ6IGlmKCRuZXN0ZWQgPT0gdHJ1ZSwgMTAwJSwgMTAwdmgpO1xuICAgICAgICAkZ3V0dGVyOiByZW0tY2FsYygkZ3V0dGVyKTtcbiAgICAgICAgLy8gTWFrZSBzdXJlIHRoYXQgMCBpcyB0cmFuc2xhdGVkIGluIDByZW0gZm9yIGNhbGMoKVxuICAgICAgICBAaWYgJGd1dHRlciA9PSAwIHtcbiAgICAgICAgICAkZ3V0dGVyOiAwcmVtO1xuICAgICAgICB9XG4gICAgICAgIGhlaWdodDogY2FsYygjeyR1bml0fSArICN7JGd1dHRlcn0pO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgICR1bml0OiBpZigkbmVzdGVkID09IHRydWUsIDEwMCUsIDEwMHZ3KTtcbiAgICAgICAgJGd1dHRlcjogcmVtLWNhbGMoJGd1dHRlcik7XG4gICAgICAgIC8vIE1ha2Ugc3VyZSB0aGF0IDAgaXMgdHJhbnNsYXRlZCBpbiAwcmVtIGZvciBjYWxjKClcbiAgICAgICAgQGlmICRndXR0ZXIgPT0gMCB7XG4gICAgICAgICAgJGd1dHRlcjogMHJlbTtcbiAgICAgICAgfVxuICAgICAgICB3aWR0aDogY2FsYygjeyR1bml0fSArICN7JGd1dHRlcn0pO1xuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAaWYgJHZlcnRpY2FsID09IHRydWUge1xuICAgICAgICBoZWlnaHQ6IGlmKCRuZXN0ZWQgPT0gdHJ1ZSwgMTAwJSwgMTAwdmgpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIHdpZHRoOiBpZigkbmVzdGVkID09IHRydWUsIDEwMCUsIDEwMHZ3KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIE1vZGlmaWVzIGEgY2VsbCB0byBnaXZlIGl0IFwiYmxvY2tcIiBiZWhhdmlvciAob3ZlcmZsb3cgYXV0bywgaW5lcnRpYWwgc2Nyb2xsaW5nKVxuLy8vXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkdmVydGljYWwgW2ZhbHNlXSAtIElzIGdyaWQgdmVydGljYWwgb3IgaG9yaXpvbnRhbC4gU2hvdWxkIG1hdGNoIGdyaWQuXG5AbWl4aW4geHktY2VsbC1ibG9jayhcbiAgJHZlcnRpY2FsOiBmYWxzZVxuKSB7XG4gICRwcm9wZXJ0eTogaWYoJHZlcnRpY2FsID09IHRydWUsICdvdmVyZmxvdy15JywgJ292ZXJmbG93LXgnKTtcblxuICBAaWYgJHZlcnRpY2FsID09IHRydWUge1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICB9IEBlbHNlIHtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuXG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7XG59XG5cbi8vLyBDb250YWluZXIgZm9yIGluc2lkZSBhIGdyaWQgZnJhbWUgY29udGFpbmluZyBtdWx0aXBsZSBibG9ja3MuIFR5cGljYWxseSB1c2VkXG4vLy8gYXMgYSBtb2RpZmllciBmb3IgYSBgLmNlbGxgIHRvIGFsbG93IHRoZSBjZWxsIHRvIHBhc3MgYWxvbmcgZmxleCBzaXppbmdcbi8vLyBjb25zdHJhaW50cyAvIGZyb20gcGFyZW50cyB0byBjaGlsZHJlbi5cbkBtaXhpbiB4eS1jZWxsLWJsb2NrLWNvbnRhaW5lcigpIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbWF4LWhlaWdodDogMTAwJTtcblxuICA+IC5ncmlkLXgge1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBGbGV4Ym94IFV0aWxpdGllc1xuLy8vL1xuLy9cbi8vLyBEZWZhdWx0IHZhbHVlIGZvciB0aGUgY291bnQgb2Ygc291cmNlIG9yZGVyaW5nYFxuLy8vIEB0eXBlIE51bWJlclxuJGZsZXgtc291cmNlLW9yZGVyaW5nLWNvdW50OiA2ICFkZWZhdWx0O1xuXG4vLy8gUXVpY2tseSBkaXNhYmxlL2VuYWJsZSBSZXNwb25zaXZlIGJyZWFrcG9pbnRzIGZvciBWYW5pbGxhIEZsZXggSGVscGVycy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kZmxleGJveC1yZXNwb25zaXZlLWJyZWFrcG9pbnRzOiB0cnVlICFkZWZhdWx0O1xuXG5AbWl4aW4gZmxleC1oZWxwZXJzIHtcbiAgLmZsZXgtY29udGFpbmVyIHtcbiAgICBAaW5jbHVkZSBmbGV4O1xuICB9XG5cbiAgLmZsZXgtY2hpbGQtYXV0byB7XG4gICAgZmxleDogMSAxIGF1dG87XG4gIH1cblxuICAuZmxleC1jaGlsZC1ncm93IHtcbiAgICBmbGV4OiAxIDAgYXV0bztcbiAgfVxuXG4gIC5mbGV4LWNoaWxkLXNocmluayB7XG4gICAgZmxleDogMCAxIGF1dG87XG4gIH1cblxuICBAZWFjaCAkZGlyLCAkcHJvcCBpbiAkLXpmLWZsZXgtZGlyZWN0aW9uIHtcbiAgICAuZmxleC1kaXItI3skZGlyfSB7XG4gICAgICBAaW5jbHVkZSBmbGV4LWRpcmVjdGlvbigkcHJvcCk7XG4gICAgfVxuICB9XG5cbiAgQGlmICgkZmxleGJveC1yZXNwb25zaXZlLWJyZWFrcG9pbnRzKSB7XG4gICAgLy8gTG9vcCB0aHJvdWdoIFJlc3BvbnNpdmUgQnJlYWtwb2ludHNcbiAgICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgICAgQGlmICRzaXplICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAuI3skc2l6ZX0tZmxleC1jb250YWluZXIge1xuICAgICAgICAgICAgQGluY2x1ZGUgZmxleDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuI3skc2l6ZX0tZmxleC1jaGlsZC1hdXRvIHtcbiAgICAgICAgICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC4jeyRzaXplfS1mbGV4LWNoaWxkLWdyb3cge1xuICAgICAgICAgICAgZmxleDogMSAwIGF1dG87XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLiN7JHNpemV9LWZsZXgtY2hpbGQtc2hyaW5rIHtcbiAgICAgICAgICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIEBlYWNoICRkaXIsICRwcm9wIGluICQtemYtZmxleC1kaXJlY3Rpb24ge1xuICAgICAgICAgICAgLiN7JHNpemV9LWZsZXgtZGlyLSN7JGRpcn0ge1xuICAgICAgICAgICAgICBAaW5jbHVkZSBmbGV4LWRpcmVjdGlvbigkcHJvcCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZsZXgtY2xhc3NlcyB7XG4gIC8vIEhvcml6b250YWwgYWxpZ25tZW50IHVzaW5nIGp1c3RpZnktY29udGVudFxuICBAZWFjaCAkaGRpciwgJHByb3AgaW4gJC16Zi1mbGV4LWp1c3RpZnkge1xuICAgIC5hbGlnbi0jeyRoZGlyfSB7XG4gICAgICBAaW5jbHVkZSBmbGV4LWFsaWduKCR4OiAkaGRpcik7XG4gICAgfVxuICB9XG4gIFxuICAvLyBIb3Jpem9udGFsIGFsaWdubWVudCBTcGVjaWZpY2FsbHkgZm9yIFZlcnRpY2FsIE1lbnVcbiAgQGVhY2ggJGhkaXIsICRwcm9wIGluIG1hcC1yZW1vdmUoJC16Zi1mbGV4LWp1c3RpZnksICdqdXN0aWZ5JywgJ3NwYWNlZCcpIHtcbiAgICAuYWxpZ24tI3skaGRpcn0ge1xuICAgICAgJi52ZXJ0aWNhbCB7XG4gICAgICAgICYubWVudSA+IGxpID4gYSB7XG4gICAgICAgICAgQGluY2x1ZGUgZmxleC1hbGlnbigkeDogJGhkaXIpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gVmVydGljYWwgYWxpZ25tZW50IHVzaW5nIGFsaWduLWl0ZW1zIGFuZCBhbGlnbi1zZWxmXG4gIEBlYWNoICR2ZGlyLCAkcHJvcCBpbiAkLXpmLWZsZXgtYWxpZ24ge1xuICAgIC5hbGlnbi0jeyR2ZGlyfSB7XG4gICAgICBAaW5jbHVkZSBmbGV4LWFsaWduKCR5OiAkdmRpcik7XG4gICAgfVxuXG4gICAgLmFsaWduLXNlbGYtI3skdmRpcn0ge1xuICAgICAgQGluY2x1ZGUgZmxleC1hbGlnbi1zZWxmKCR5OiAkdmRpcik7XG4gICAgfVxuICB9XG5cbiAgLy8gQ2VudHJhbCBhbGlnbm1lbnQgb2YgY29udGVudFxuICAuYWxpZ24tY2VudGVyLW1pZGRsZSB7XG4gICAgQGluY2x1ZGUgZmxleC1hbGlnbigkeDogY2VudGVyLCAkeTogbWlkZGxlKTtcbiAgICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XG4gIH1cblxuICAvLyBTb3VyY2Ugb3JkZXJpbmdcbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCB7XG4gICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZmxleC1zb3VyY2Utb3JkZXJpbmctY291bnQge1xuICAgICAgLiN7JC16Zi1zaXplfS1vcmRlci0jeyRpfSB7XG4gICAgICAgIEBpbmNsdWRlIGZsZXgtb3JkZXIoJGkpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFZhbmlsbGEgRmxleGJveCBIZWxwZXJzXG4gIEBpbmNsdWRlIGZsZXgtaGVscGVycztcbn1cbiIsIkBmdW5jdGlvbiAtemYtZmxleC1qdXN0aWZ5KCR0ZXh0LWRpcmVjdGlvbikge1xuICAkLXpmLWZsZXgtanVzdGlmeTogKFxuICAgICdsZWZ0JzogaWYoJHRleHQtZGlyZWN0aW9uID09IHJ0bCwgZmxleC1lbmQsIGZsZXgtc3RhcnQpLFxuICAgICdyaWdodCc6IGlmKCR0ZXh0LWRpcmVjdGlvbiA9PSBydGwsIGZsZXgtc3RhcnQsIGZsZXgtZW5kKSxcbiAgICAnY2VudGVyJzogY2VudGVyLFxuICAgICdqdXN0aWZ5Jzogc3BhY2UtYmV0d2VlbixcbiAgICAnc3BhY2VkJzogc3BhY2UtYXJvdW5kLFxuICApO1xuXG4gIEByZXR1cm4gJC16Zi1mbGV4LWp1c3RpZnk7XG59XG5cblxuJC16Zi1mbGV4LWFsaWduOiAoXG4gICd0b3AnOiBmbGV4LXN0YXJ0LFxuICAnYm90dG9tJzogZmxleC1lbmQsXG4gICdtaWRkbGUnOiBjZW50ZXIsXG4gICdzdHJldGNoJzogc3RyZXRjaCxcbik7XG5cbiQtemYtZmxleC1kaXJlY3Rpb246IChcbiAgJ3Jvdyc6IHJvdyxcbiAgJ3Jvdy1yZXZlcnNlJzogcm93LXJldmVyc2UsXG4gICdjb2x1bW4nOiBjb2x1bW4sXG4gICdjb2x1bW4tcmV2ZXJzZSc6IGNvbHVtbi1yZXZlcnNlLFxuKTtcblxuLy8vIEVuYWJsZXMgZmxleGJveCBieSBhZGRpbmcgYGRpc3BsYXk6IGZsZXhgIHRvIHRoZSBlbGVtZW50LlxuQG1peGluIGZsZXgge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuXG4vLy8gSG9yaXpvbnRhbGx5IG9yIHZlcnRpY2FsbHkgYWxpZ25zIHRoZSBpdGVtcyB3aXRoaW4gYSBmbGV4IGNvbnRhaW5lci5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHggW251bGxdIC0gSG9yaXpvbnRhbCBhbGlnbm1lbnQgdG8gdXNlLiBDYW4gYmUgYGxlZnRgLCBgcmlnaHRgLCBgY2VudGVyYCwgYGp1c3RpZnlgLCBvciBgc3BhY2VkYC4gT3IsIHNldCBpdCB0byBgbnVsbGAgKHRoZSBkZWZhdWx0KSB0byBub3Qgc2V0IGhvcml6b250YWwgYWxpZ25tZW50LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHkgW251bGxdIC0gVmVydGljYWwgYWxpZ25tZW50IHRvIHVzZS4gQ2FuIGJlIGB0b3BgLCBgYm90dG9tYCwgYG1pZGRsZWAsIG9yIGBzdHJldGNoYC4gT3IsIHNldCBpdCB0byBgbnVsbGAgKHRoZSBkZWZhdWx0KSB0byBub3Qgc2V0IHZlcnRpY2FsIGFsaWdubWVudC5cbkBtaXhpbiBmbGV4LWFsaWduKCR4OiBudWxsLCAkeTogbnVsbCkge1xuICBAaWYgJHgge1xuICAgIEBpZiBtYXAtaGFzLWtleSgkLXpmLWZsZXgtanVzdGlmeSwgJHgpIHtcbiAgICAgICR4OiBtYXAtZ2V0KCQtemYtZmxleC1qdXN0aWZ5LCAkeCk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEB3YXJuICdmbGV4LWdyaWQtcm93LWFsaWduKCk6ICN7JHh9IGlzIG5vdCBhIHZhbGlkIHZhbHVlIGZvciBob3Jpem9udGFsIGFsaWdubWVudC4gVXNlIGxlZnQsIHJpZ2h0LCBjZW50ZXIsIGp1c3RpZnksIG9yIHNwYWNlZC4nO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkeSB7XG4gICAgQGlmIG1hcC1oYXMta2V5KCQtemYtZmxleC1hbGlnbiwgJHkpIHtcbiAgICAgICR5OiBtYXAtZ2V0KCQtemYtZmxleC1hbGlnbiwgJHkpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAd2FybiAnZmxleC1ncmlkLXJvdy1hbGlnbigpOiAjeyR5fSBpcyBub3QgYSB2YWxpZCB2YWx1ZSBmb3IgdmVydGljYWwgYWxpZ25tZW50LiBVc2UgdG9wLCBib3R0b20sIG1pZGRsZSwgb3Igc3RyZXRjaC4nO1xuICAgIH1cbiAgfVxuXG4gIGp1c3RpZnktY29udGVudDogJHg7XG4gIGFsaWduLWl0ZW1zOiAkeTtcbn1cblxuLy8vIFZlcnRpY2FsbHkgYWxpZ24gYSBzaW5nbGUgY29sdW1uIHdpdGhpbiBhIGZsZXggcm93LiBBcHBseSB0aGlzIG1peGluIHRvIGEgZmxleCBjb2x1bW4uXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR5IFtudWxsXSAtIFZlcnRpY2FsIGFsaWdubWVudCB0byB1c2UuIENhbiBiZSBgdG9wYCwgYGJvdHRvbWAsIGBtaWRkbGVgLCBvciBgc3RyZXRjaGAuIE9yLCBzZXQgaXQgdG8gYG51bGxgICh0aGUgZGVmYXVsdCkgdG8gbm90IHNldCB2ZXJ0aWNhbCBhbGlnbm1lbnQuXG5AbWl4aW4gZmxleC1hbGlnbi1zZWxmKCR5OiBudWxsKSB7XG4gIEBpZiAkeSB7XG4gICAgQGlmIG1hcC1oYXMta2V5KCQtemYtZmxleC1hbGlnbiwgJHkpIHtcbiAgICAgICR5OiBtYXAtZ2V0KCQtemYtZmxleC1hbGlnbiwgJHkpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAd2FybiAnZmxleC1ncmlkLWNvbHVtbi1hbGlnbigpOiAjeyR5fSBpcyBub3QgYSB2YWxpZCB2YWx1ZSBmb3IgYWxpZ25tZW50LiBVc2UgdG9wLCBib3R0b20sIG1pZGRsZSwgb3Igc3RyZXRjaC4nO1xuICAgIH1cbiAgfVxuXG4gIGFsaWduLXNlbGY6ICR5O1xufVxuXG4vLy8gQ2hhbmdlcyB0aGUgc291cmNlIG9yZGVyIG9mIGEgZmxleCBjaGlsZC4gQ2hpbGRyZW4gd2l0aCBsb3dlciBudW1iZXJzIGFwcGVhciBmaXJzdCBpbiB0aGUgbGF5b3V0LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkb3JkZXIgWzBdIC0gT3JkZXIgbnVtYmVyIHRvIGFwcGx5LlxuQG1peGluIGZsZXgtb3JkZXIoJG9yZGVyOiAwKSB7XG4gIG9yZGVyOiAkb3JkZXI7XG59XG5cbi8vLyBDaGFuZ2UgZmxleC1kaXJlY3Rpb25cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXJlY3Rpb24gW3Jvd10gLSBGbGV4IGRpcmVjdGlvbiB0byB1c2UuIENhbiBiZVxuLy8vICAgLSByb3cgKGRlZmF1bHQpOiBzYW1lIGFzIHRleHQgZGlyZWN0aW9uXG4vLy8gICAtIHJvdy1yZXZlcnNlOiBvcHBvc2l0ZSB0byB0ZXh0IGRpcmVjdGlvblxuLy8vICAgLSBjb2x1bW46IHNhbWUgYXMgcm93IGJ1dCB0b3AgdG8gYm90dG9tXG4vLy8gICAtIGNvbHVtbi1yZXZlcnNlOiBzYW1lIGFzIHJvdy1yZXZlcnNlIHRvcCB0byBib3R0b21cbkBtaXhpbiBmbGV4LWRpcmVjdGlvbigkZGlyZWN0aW9uOiByb3cpIHtcbiAgZmxleC1kaXJlY3Rpb246ICRkaXJlY3Rpb247XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLyBIaWRlIGFuIGVsZW1lbnQgYnkgZGVmYXVsdCwgb25seSBkaXNwbGF5aW5nIGl0IGFib3ZlIGEgY2VydGFpbiBzY3JlZW4gc2l6ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIC0gQnJlYWtwb2ludCB0byB1c2UuICoqTXVzdCBiZSBhIGJyZWFrcG9pbnQgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnRzYC4qKlxuQG1peGluIHNob3ctZm9yKCRzaXplKSB7XG4gICRzaXplOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJHNpemUpO1xuICAvLyBNYXggdmFsdWUgaXMgMC4ycHggdW5kZXIgdGhlIG5leHQgYnJlYWtwb2ludCAoMC4wMiAvIDE2ID0gMC4wMDEyNSkuXG4gIC8vIFVzZSBhIHByZWNpc2lvbiB1bmRlciAxcHggdG8gc3VwcG9ydCBicm93c2VyIHpvb20sIGJ1dCBub3QgdG8gbG93IHRvIGF2b2lkIHJvdW5kaW5nLlxuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL2ZvdW5kYXRpb24vZm91bmRhdGlvbi1zaXRlcy9pc3N1ZXMvMTEzMTNcbiAgJHNpemU6IC16Zi1icC10by1lbSgkc2l6ZSkgLSAwLjAwMTI1O1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUgZG93bikge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLy8gSGlkZSBhbiBlbGVtZW50IGJ5IGRlZmF1bHQsIG9ubHkgZGlzcGxheWluZyBpdCB3aXRoaW4gYSBjZXJ0YWluIGJyZWFrcG9pbnQuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSAtIEJyZWFrcG9pbnQgdG8gdXNlLiAqKk11c3QgYmUgYSBicmVha3BvaW50IGRlZmluZWQgaW4gYCRicmVha3BvaW50c2AuKipcbkBtaXhpbiBzaG93LWZvci1vbmx5KCRzaXplKSB7XG4gICRsb3dlci1ib3VuZC1zaXplOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJHNpemUpO1xuICAkdXBwZXItYm91bmQtc2l6ZTogLXpmLW1hcC1uZXh0KCRicmVha3BvaW50cywgJHNpemUpO1xuXG4gIC8vIG1vcmUgb2Z0ZW4gdGhhbiBub3QgdGhpcyB3aWxsIGJlIGNvcnJlY3QsIGp1c3Qgb25lIHRpbWUgcm91bmQgdGhlIGxvb3AgaXQgd29uJ3Qgc28gc2V0IGluIHNjb3BlIGhlcmVcbiAgJGxvd2VyLWJvdW5kOiAtemYtYnAtdG8tZW0oJGxvd2VyLWJvdW5kLXNpemUpIC0gMC4wMDEyNTtcbiAgLy8gdGVzdCBhY3R1YWwgbG93ZXItYm91bmQtc2l6ZSwgaWYgMCBzZXQgaXQgdG8gMGVtXG4gIEBpZiBzdHJpcC11bml0KCRsb3dlci1ib3VuZC1zaXplKSA9PSAwIHtcbiAgICAkbG93ZXItYm91bmQ6IC16Zi1icC10by1lbSgkbG93ZXItYm91bmQtc2l6ZSk7XG4gIH1cblxuICBAaWYgJHVwcGVyLWJvdW5kLXNpemUgPT0gbnVsbCB7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGxvd2VyLWJvdW5kKSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAkdXBwZXItYm91bmQ6IC16Zi1icC10by1lbSgkdXBwZXItYm91bmQtc2l6ZSk7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbG93ZXItYm91bmQpLCBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICR1cHBlci1ib3VuZCkge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuXG5cbi8vLyBTaG93IGFuIGVsZW1lbnQgYnkgZGVmYXVsdCwgYW5kIGhpZGUgaXQgYWJvdmUgYSBjZXJ0YWluIHNjcmVlbiBzaXplLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBCcmVha3BvaW50IHRvIHVzZS4gKipNdXN0IGJlIGEgYnJlYWtwb2ludCBkZWZpbmVkIGluIGAkYnJlYWtwb2ludHNgLioqXG5AbWl4aW4gaGlkZS1mb3IoJHNpemUpIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLy8gU2hvdyBhbiBlbGVtZW50IGJ5IGRlZmF1bHQsIGFuZCBoaWRlIGl0IGFib3ZlIGEgY2VydGFpbiBzY3JlZW4gc2l6ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIC0gQnJlYWtwb2ludCB0byB1c2UuICoqTXVzdCBiZSBhIGJyZWFrcG9pbnQgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnRzYC4qKlxuQG1peGluIGhpZGUtZm9yLW9ubHkoJHNpemUpIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSBvbmx5KSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXZpc2liaWxpdHktY2xhc3NlcyB7XG4gIC8vIEJhc2ljIGhpZGluZyBjbGFzc2VzXG4gIC5oaWRlIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuaW52aXNpYmxlIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cbiAgLnZpc2libGUge1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cblxuICAvLyBSZXNwb25zaXZlIHZpc2liaWxpdHkgY2xhc3Nlc1xuICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgLmhpZGUtZm9yLSN7JHNpemV9IHtcbiAgICAgICAgQGluY2x1ZGUgaGlkZS1mb3IoJHNpemUpO1xuICAgICAgfVxuXG4gICAgICAuc2hvdy1mb3ItI3skc2l6ZX0ge1xuICAgICAgICBAaW5jbHVkZSBzaG93LWZvcigkc2l6ZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmhpZGUtZm9yLSN7JHNpemV9LW9ubHkge1xuICAgICAgQGluY2x1ZGUgaGlkZS1mb3Itb25seSgkc2l6ZSk7XG4gICAgfVxuXG4gICAgLnNob3ctZm9yLSN7JHNpemV9LW9ubHkge1xuICAgICAgQGluY2x1ZGUgc2hvdy1mb3Itb25seSgkc2l6ZSk7XG4gICAgfVxuICB9XG5cbiAgLy8gU2NyZWVuIHJlYWRlciB2aXNpYmlsaXR5IGNsYXNzZXNcbiAgLy8gTmVlZCBhIFwiaGlkZS1mb3Itc3JcIiBjbGFzcz8gQWRkIGFyaWEtaGlkZGVuPSd0cnVlJyB0byB0aGUgZWxlbWVudFxuICAuc2hvdy1mb3Itc3IsXG4gIC5zaG93LW9uLWZvY3VzIHtcbiAgICBAaW5jbHVkZSBlbGVtZW50LWludmlzaWJsZTtcbiAgfVxuXG4gIC8vIE9ubHkgZGlzcGxheSB0aGUgZWxlbWVudCB3aGVuIGl0J3MgZm9jdXNlZFxuICAuc2hvdy1vbi1mb2N1cyB7XG4gICAgJjphY3RpdmUsXG4gICAgJjpmb2N1cyB7XG4gICAgICBAaW5jbHVkZSBlbGVtZW50LWludmlzaWJsZS1vZmY7XG4gICAgfVxuICB9XG5cbiAgLy8gTGFuZHNjYXBlIGFuZCBwb3J0cmFpdCB2aXNpYmlsaXR5XG4gIC5zaG93LWZvci1sYW5kc2NhcGUsXG4gIC5oaWRlLWZvci1wb3J0cmFpdCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFuZHNjYXBlKSB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocG9ydHJhaXQpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAuaGlkZS1mb3ItbGFuZHNjYXBlLFxuICAuc2hvdy1mb3ItcG9ydHJhaXQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFuZHNjYXBlKSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChwb3J0cmFpdCkge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAvLyBEYXJrIE1vZGUgVmlzaWJpbGl0eVxuICAuc2hvdy1mb3ItZGFyay1tb2RlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5oaWRlLWZvci1kYXJrLW1vZGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyaykge1xuICAgIC5zaG93LWZvci1kYXJrLW1vZGUge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB9XG4gICAgLmhpZGUtZm9yLWRhcmstbW9kZSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgLy8gSUUxMCsgVmlzaWJpbGl0eVxuICAuc2hvdy1mb3ItaWUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgQG1lZGlhIGFsbCBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpIHtcbiAgICAuc2hvdy1mb3ItaWUge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB9XG4gICAgLmhpZGUtZm9yLWllIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAvLyBTdGlja3kgVmlzaWJpbGl0eVxuICAuc2hvdy1mb3Itc3RpY2t5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5pcy1zdHVjayAuc2hvdy1mb3Itc3RpY2t5IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAuaXMtc3R1Y2sgLmhpZGUtZm9yLXN0aWNreSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuIiwiW2RhdGEtc2FsXSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogdmFyKC0tc2FsLWRlbGF5LCAwcyk7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4ycztcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiB2YXIoLS1zYWwtZHVyYXRpb24sIDAuMnMpO1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlO1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiB2YXIoLS1zYWwtZWFzaW5nLCBlYXNlKTtcbn1cbltkYXRhLXNhbF1bZGF0YS1zYWwtZHVyYXRpb249XCIyMDBcIl0ge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMnM7XG59XG5bZGF0YS1zYWxdW2RhdGEtc2FsLWR1cmF0aW9uPVwiMjUwXCJdIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjI1cztcbn1cbltkYXRhLXNhbF1bZGF0YS1zYWwtZHVyYXRpb249XCIzMDBcIl0ge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7XG59XG5bZGF0YS1zYWxdW2RhdGEtc2FsLWR1cmF0aW9uPVwiMzUwXCJdIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjM1cztcbn1cbltkYXRhLXNhbF1bZGF0YS1zYWwtZHVyYXRpb249XCI0MDBcIl0ge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuNHM7XG59XG5bZGF0YS1zYWxdW2RhdGEtc2FsLWR1cmF0aW9uPVwiNDUwXCJdIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjQ1cztcbn1cbltkYXRhLXNhbF1bZGF0YS1zYWwtZHVyYXRpb249XCI1MDBcIl0ge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuNXM7XG59XG5bZGF0YS1zYWxdW2RhdGEtc2FsLWR1cmF0aW9uPVwiNTUwXCJdIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjU1cztcbn1cbltkYXRhLXNhbF1bZGF0YS1zYWwtZHVyYXRpb249XCI2MDBcIl0ge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuNnM7XG59XG5bZGF0YS1zYWxdW2RhdGEtc2FsLWR1cmF0aW9uPVwiNjUwXCJdIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjY1cztcbn1cbltkYXRhLXNhbF1bZGF0YS1zYWwtZHVyYXRpb249XCI3MDBcIl0ge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuN3M7XG59XG5bZGF0YS1zYWxdW2RhdGEtc2FsLWR1cmF0aW9uPVwiNzUwXCJdIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjc1cztcbn1cbltkYXRhLXNhbF1bZGF0YS1zYWwtZHVyYXRpb249XCI4MDBcIl0ge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuOHM7XG59XG5bZGF0YS1zYWxdW2RhdGEtc2FsLWR1cmF0aW9uPVwiODUwXCJdIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjg1cztcbn1cbltkYXRhLXNhbF1bZGF0YS1zYWwtZHVyYXRpb249XCI5MDBcIl0ge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuOXM7XG59XG5bZGF0YS1zYWxdW2RhdGEtc2FsLWR1cmF0aW9uPVwiOTUwXCJdIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjk1cztcbn1cbltkYXRhLXNhbF1bZGF0YS1zYWwtZHVyYXRpb249XCIxMDAwXCJdIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAxcztcbn1cbltkYXRhLXNhbF1bZGF0YS1zYWwtZHVyYXRpb249XCIxMDUwXCJdIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAxLjA1cztcbn1cbltkYXRhLXNhbF1bZGF0YS1zYWwtZHVyYXRpb249XCIxMTAwXCJdIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAxLjFzO1xufVxuW2RhdGEtc2FsXVtkYXRhLXNhbC1kdXJhdGlvbj1cIjExNTBcIl0ge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDEuMTVzO1xufVxuW2RhdGEtc2FsXVtkYXRhLXNhbC1kdXJhdGlvbj1cIjEyMDBcIl0ge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDEuMnM7XG59XG5bZGF0YS1zYWxdW2RhdGEtc2FsLWR1cmF0aW9uPVwiMTI1MFwiXSB7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMS4yNXM7XG59XG5bZGF0YS1zYWxdW2RhdGEtc2FsLWR1cmF0aW9uPVwiMTMwMFwiXSB7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMS4zcztcbn1cbltkYXRhLXNhbF1bZGF0YS1zYWwtZHVyYXRpb249XCIxMzUwXCJdIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAxLjM1cztcbn1cbltkYXRhLXNhbF1bZGF0YS1zYWwtZHVyYXRpb249XCIxNDAwXCJdIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAxLjRzO1xufVxuW2RhdGEtc2FsXVtkYXRhLXNhbC1kdXJhdGlvbj1cIjE0NTBcIl0ge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDEuNDVzO1xufVxuW2RhdGEtc2FsXVtkYXRhLXNhbC1kdXJhdGlvbj1cIjE1MDBcIl0ge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDEuNXM7XG59XG5bZGF0YS1zYWxdW2RhdGEtc2FsLWR1cmF0aW9uPVwiMTU1MFwiXSB7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMS41NXM7XG59XG5bZGF0YS1zYWxdW2RhdGEtc2FsLWR1cmF0aW9uPVwiMTYwMFwiXSB7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMS42cztcbn1cbltkYXRhLXNhbF1bZGF0YS1zYWwtZHVyYXRpb249XCIxNjUwXCJdIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAxLjY1cztcbn1cbltkYXRhLXNhbF1bZGF0YS1zYWwtZHVyYXRpb249XCIxNzAwXCJdIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAxLjdzO1xufVxuW2RhdGEtc2FsXVtkYXRhLXNhbC1kdXJhdGlvbj1cIjE3NTBcIl0ge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDEuNzVzO1xufVxuW2RhdGEtc2FsXVtkYXRhLXNhbC1kdXJhdGlvbj1cIjE4MDBcIl0ge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDEuOHM7XG59XG5bZGF0YS1zYWxdW2RhdGEtc2FsLWR1cmF0aW9uPVwiMTg1MFwiXSB7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMS44NXM7XG59XG5bZGF0YS1zYWxdW2RhdGEtc2FsLWR1cmF0aW9uPVwiMTkwMFwiXSB7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMS45cztcbn1cbltkYXRhLXNhbF1bZGF0YS1zYWwtZHVyYXRpb249XCIxOTUwXCJdIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAxLjk1cztcbn1cbltkYXRhLXNhbF1bZGF0YS1zYWwtZHVyYXRpb249XCIyMDAwXCJdIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAycztcbn1cbltkYXRhLXNhbF1bZGF0YS1zYWwtZGVsYXk9XCI1MFwiXSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMC4wNXM7XG59XG5bZGF0YS1zYWxdW2RhdGEtc2FsLWRlbGF5PVwiMTAwXCJdIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjFzO1xufVxuW2RhdGEtc2FsXVtkYXRhLXNhbC1kZWxheT1cIjE1MFwiXSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMC4xNXM7XG59XG5bZGF0YS1zYWxdW2RhdGEtc2FsLWRlbGF5PVwiMjAwXCJdIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjJzO1xufVxuW2RhdGEtc2FsXVtkYXRhLXNhbC1kZWxheT1cIjI1MFwiXSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMC4yNXM7XG59XG5bZGF0YS1zYWxdW2RhdGEtc2FsLWRlbGF5PVwiMzAwXCJdIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjNzO1xufVxuW2RhdGEtc2FsXVtkYXRhLXNhbC1kZWxheT1cIjM1MFwiXSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMC4zNXM7XG59XG5bZGF0YS1zYWxdW2RhdGEtc2FsLWRlbGF5PVwiNDAwXCJdIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjRzO1xufVxuW2RhdGEtc2FsXVtkYXRhLXNhbC1kZWxheT1cIjQ1MFwiXSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMC40NXM7XG59XG5bZGF0YS1zYWxdW2RhdGEtc2FsLWRlbGF5PVwiNTAwXCJdIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjVzO1xufVxuW2RhdGEtc2FsXVtkYXRhLXNhbC1kZWxheT1cIjU1MFwiXSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMC41NXM7XG59XG5bZGF0YS1zYWxdW2RhdGEtc2FsLWRlbGF5PVwiNjAwXCJdIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjZzO1xufVxuW2RhdGEtc2FsXVtkYXRhLXNhbC1kZWxheT1cIjY1MFwiXSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMC42NXM7XG59XG5bZGF0YS1zYWxdW2RhdGEtc2FsLWRlbGF5PVwiNzAwXCJdIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjdzO1xufVxuW2RhdGEtc2FsXVtkYXRhLXNhbC1kZWxheT1cIjc1MFwiXSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMC43NXM7XG59XG5bZGF0YS1zYWxdW2RhdGEtc2FsLWRlbGF5PVwiODAwXCJdIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjhzO1xufVxuW2RhdGEtc2FsXVtkYXRhLXNhbC1kZWxheT1cIjg1MFwiXSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMC44NXM7XG59XG5bZGF0YS1zYWxdW2RhdGEtc2FsLWRlbGF5PVwiOTAwXCJdIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjlzO1xufVxuW2RhdGEtc2FsXVtkYXRhLXNhbC1kZWxheT1cIjk1MFwiXSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMC45NXM7XG59XG5bZGF0YS1zYWxdW2RhdGEtc2FsLWRlbGF5PVwiMTAwMFwiXSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMXM7XG59XG5bZGF0YS1zYWxdW2RhdGEtc2FsLWVhc2luZz1cImxpbmVhclwiXSB7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbn1cbltkYXRhLXNhbF1bZGF0YS1zYWwtZWFzaW5nPVwiZWFzZVwiXSB7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2U7XG59XG5bZGF0YS1zYWxdW2RhdGEtc2FsLWVhc2luZz1cImVhc2UtaW5cIl0ge1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xufVxuW2RhdGEtc2FsXVtkYXRhLXNhbC1lYXNpbmc9XCJlYXNlLW91dFwiXSB7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xufVxuW2RhdGEtc2FsXVtkYXRhLXNhbC1lYXNpbmc9XCJlYXNlLWluLW91dFwiXSB7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xufVxuW2RhdGEtc2FsXVtkYXRhLXNhbC1lYXNpbmc9XCJlYXNlLWluLWN1YmljXCJdIHtcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG59XG5bZGF0YS1zYWxdW2RhdGEtc2FsLWVhc2luZz1cImVhc2Utb3V0LWN1YmljXCJdIHtcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG59XG5bZGF0YS1zYWxdW2RhdGEtc2FsLWVhc2luZz1cImVhc2UtaW4tb3V0LWN1YmljXCJdIHtcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpO1xufVxuW2RhdGEtc2FsXVtkYXRhLXNhbC1lYXNpbmc9XCJlYXNlLWluLWNpcmNcIl0ge1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC42LCAwLjA0LCAwLjk4LCAwLjMzNSk7XG59XG5bZGF0YS1zYWxdW2RhdGEtc2FsLWVhc2luZz1cImVhc2Utb3V0LWNpcmNcIl0ge1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4wNzUsIDAuODIsIDAuMTY1LCAxKTtcbn1cbltkYXRhLXNhbF1bZGF0YS1zYWwtZWFzaW5nPVwiZWFzZS1pbi1vdXQtY2lyY1wiXSB7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjc4NSwgMC4xMzUsIDAuMTUsIDAuODYpO1xufVxuW2RhdGEtc2FsXVtkYXRhLXNhbC1lYXNpbmc9XCJlYXNlLWluLWV4cG9cIl0ge1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC45NSwgMC4wNSwgMC43OTUsIDAuMDM1KTtcbn1cbltkYXRhLXNhbF1bZGF0YS1zYWwtZWFzaW5nPVwiZWFzZS1vdXQtZXhwb1wiXSB7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKTtcbn1cbltkYXRhLXNhbF1bZGF0YS1zYWwtZWFzaW5nPVwiZWFzZS1pbi1vdXQtZXhwb1wiXSB7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigxLCAwLCAwLCAxKTtcbn1cbltkYXRhLXNhbF1bZGF0YS1zYWwtZWFzaW5nPVwiZWFzZS1pbi1xdWFkXCJdIHtcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDg1LCAwLjY4LCAwLjUzKTtcbn1cbltkYXRhLXNhbF1bZGF0YS1zYWwtZWFzaW5nPVwiZWFzZS1vdXQtcXVhZFwiXSB7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjI1LCAwLjQ2LCAwLjQ1LCAwLjk0KTtcbn1cbltkYXRhLXNhbF1bZGF0YS1zYWwtZWFzaW5nPVwiZWFzZS1pbi1vdXQtcXVhZFwiXSB7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjQ1NSwgMC4wMywgMC41MTUsIDAuOTU1KTtcbn1cbltkYXRhLXNhbF1bZGF0YS1zYWwtZWFzaW5nPVwiZWFzZS1pbi1xdWFydFwiXSB7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjg5NSwgMC4wMywgMC42ODUsIDAuMjIpO1xufVxuW2RhdGEtc2FsXVtkYXRhLXNhbC1lYXNpbmc9XCJlYXNlLW91dC1xdWFydFwiXSB7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE2NSwgMC44NCwgMC40NCwgMSk7XG59XG5bZGF0YS1zYWxdW2RhdGEtc2FsLWVhc2luZz1cImVhc2UtaW4tb3V0LXF1YXJ0XCJdIHtcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNzcsIDAsIDAuMTc1LCAxKTtcbn1cbltkYXRhLXNhbF1bZGF0YS1zYWwtZWFzaW5nPVwiZWFzZS1pbi1xdWludFwiXSB7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjc1NSwgMC4wNSwgMC44NTUsIDAuMDYpO1xufVxuW2RhdGEtc2FsXVtkYXRhLXNhbC1lYXNpbmc9XCJlYXNlLW91dC1xdWludFwiXSB7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIzLCAxLCAwLjMyLCAxKTtcbn1cbltkYXRhLXNhbF1bZGF0YS1zYWwtZWFzaW5nPVwiZWFzZS1pbi1vdXQtcXVpbnRcIl0ge1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC44NiwgMCwgMC4wNywgMSk7XG59XG5bZGF0YS1zYWxdW2RhdGEtc2FsLWVhc2luZz1cImVhc2UtaW4tc2luZVwiXSB7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjQ3LCAwLCAwLjc0NSwgMC43MTUpO1xufVxuW2RhdGEtc2FsXVtkYXRhLXNhbC1lYXNpbmc9XCJlYXNlLW91dC1zaW5lXCJdIHtcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMzksIDAuNTc1LCAwLjU2NSwgMSk7XG59XG5bZGF0YS1zYWxdW2RhdGEtc2FsLWVhc2luZz1cImVhc2UtaW4tb3V0LXNpbmVcIl0ge1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC40NDUsIDAuMDUsIDAuNTUsIDAuOTUpO1xufVxuW2RhdGEtc2FsXVtkYXRhLXNhbC1lYXNpbmc9XCJlYXNlLWluLWJhY2tcIl0ge1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC42LCAtMC4yOCwgMC43MzUsIDAuMDQ1KTtcbn1cbltkYXRhLXNhbF1bZGF0YS1zYWwtZWFzaW5nPVwiZWFzZS1vdXQtYmFja1wiXSB7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEuMjc1KTtcbn1cbltkYXRhLXNhbF1bZGF0YS1zYWwtZWFzaW5nPVwiZWFzZS1pbi1vdXQtYmFja1wiXSB7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjY4LCAtMC41NSwgMC4yNjUsIDEuNTUpO1xufVxuW2RhdGEtc2FsfD1cImZhZGVcIl0ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTtcbn1cbltkYXRhLXNhbHw9XCJmYWRlXCJdLnNhbC1hbmltYXRlLFxuYm9keS5zYWwtZGlzYWJsZWQgW2RhdGEtc2FsfD1cImZhZGVcIl0ge1xuICAgIG9wYWNpdHk6IDE7XG59XG5bZGF0YS1zYWx8PVwic2xpZGVcIl0ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eSwgdHJhbnNmb3JtO1xufVxuW2RhdGEtc2FsPVwic2xpZGUtdXBcIl0ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgzLjZyZW0pO1xufVxuW2RhdGEtc2FsPVwic2xpZGUtZG93blwiXSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0zLjZyZW0pO1xufVxuW2RhdGEtc2FsPVwic2xpZGUtbGVmdFwiXSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDMuNnJlbSk7XG59XG5bZGF0YS1zYWw9XCJzbGlkZS1yaWdodFwiXSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0zLjZyZW0pO1xufVxuW2RhdGEtc2FsfD1cInNsaWRlXCJdLnNhbC1hbmltYXRlLFxuYm9keS5zYWwtZGlzYWJsZWQgW2RhdGEtc2FsfD1cInNsaWRlXCJdIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbn1cbltkYXRhLXNhbHw9XCJ6b29tXCJdIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHksIHRyYW5zZm9ybTtcbn1cbltkYXRhLXNhbD1cInpvb20taW5cIl0ge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC41KTtcbn1cbltkYXRhLXNhbD1cInpvb20tb3V0XCJdIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG59XG5bZGF0YS1zYWx8PVwiem9vbVwiXS5zYWwtYW5pbWF0ZSxcbmJvZHkuc2FsLWRpc2FibGVkIFtkYXRhLXNhbHw9XCJ6b29tXCJdIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbn1cbltkYXRhLXNhbHw9XCJmbGlwXCJdIHtcbiAgICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xufVxuW2RhdGEtc2FsPVwiZmxpcC1sZWZ0XCJdIHtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWSgtOTFkZWcpO1xufVxuW2RhdGEtc2FsPVwiZmxpcC1yaWdodFwiXSB7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVkoOTFkZWcpO1xufVxuW2RhdGEtc2FsPVwiZmxpcC11cFwiXSB7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVgoLTkxZGVnKTtcbn1cbltkYXRhLXNhbD1cImZsaXAtZG93blwiXSB7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVgoOTFkZWcpO1xufVxuW2RhdGEtc2FsfD1cImZsaXBcIl0uc2FsLWFuaW1hdGUsXG5ib2R5LnNhbC1kaXNhYmxlZCBbZGF0YS1zYWx8PVwiZmxpcFwiXSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xufVxuXG4vKiMgc291cmNlTWFwcGluZ1VSTD1zYWwuY3NzLm1hcCovXG4iLCIvKipcbiAqIFN3aXBlciAxMS4yLjJcbiAqIE1vc3QgbW9kZXJuIG1vYmlsZSB0b3VjaCBzbGlkZXIgYW5kIGZyYW1ld29yayB3aXRoIGhhcmR3YXJlIGFjY2VsZXJhdGVkIHRyYW5zaXRpb25zXG4gKiBodHRwczovL3N3aXBlcmpzLmNvbVxuICpcbiAqIENvcHlyaWdodCAyMDE0LTIwMjUgVmxhZGltaXIgS2hhcmxhbXBpZGlcbiAqXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2VcbiAqXG4gKiBSZWxlYXNlZCBvbjogSmFudWFyeSAzMSwgMjAyNVxuICovXG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogc3dpcGVyLWljb25zO1xuICBzcmM6IHVybChcImRhdGE6YXBwbGljYXRpb24vZm9udC13b2ZmO2NoYXJzZXQ9dXRmLTg7YmFzZTY0LCBkMDlHUmdBQkFBQUFBQVpnQUJBQUFBQUFEQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQkdSbFJOQUFBR1JBQUFBQm9BQUFBY2k2cUhrVWRFUlVZQUFBV2dBQUFBSXdBQUFDUUFZQUJYUjFCUFV3QUFCaFFBQUFBdUFBQUFOdUFZNyt4SFUxVkNBQUFGeEFBQUFGQUFBQUJtMmZQY3pVOVRMeklBQUFIY0FBQUFTZ0FBQUdCUDlWNVJZMjFoY0FBQUFrUUFBQUNJQUFBQll0NkYwY0JqZG5RZ0FBQUN6QUFBQUFRQUFBQUVBQkVCUkdkaGMzQUFBQVdZQUFBQUNBQUFBQWovL3dBRFoyeDVaZ0FBQXl3QUFBRE1BQUFEMk1IdHJ5Vm9aV0ZrQUFBQmJBQUFBREFBQUFBMkUyK2VvV2hvWldFQUFBR2NBQUFBSHdBQUFDUUM5Z0R6YUcxMGVBQUFBaWdBQUFBWkFBQUFyZ0prQUJGc2IyTmhBQUFDMEFBQUFGb0FBQUJhRlFBVUdHMWhlSEFBQUFHOEFBQUFId0FBQUNBQWNBQkFibUZ0WlFBQUEvZ0FBQUU1QUFBQ1h2RmRCd2x3YjNOMEFBQUZOQUFBQUdJQUFBQ0U1czc0aFhqYVkyQmtZR0FBWXBmNUh1L2orVzIrTW5Bek1ZREF6YVg2UWpENi80Ly9CeGo1R0E4QXVSd01ZR2tBUHl3TDEzamFZMkJrWUdBODhQOEFneDRqKy84ZlFEWWZBMUFFQldnREFJQjJCT29BZU5wallHUmdZTkJoNEdkZ1lnQUJFTW5JQUJKellOQURDUUFBQ1dnQXNRQjQybU5nWWZ6Q09JR0JsWUdCMFljeGpZR0J3UjFLZjJXUVpHaGhZR0JpWUdWbWdBRkdCaVFRa09hYXd0REFvTUJReFhqZy93RUdQY1lEREE0d05VQTJDQ2d3c0FBQU80RUw2Z0FBZU5wajJNMGd5QUFDcXhnR05XQmtaMkQ0L3dNQSt4a0RkZ0FBQUhqYVkyQmdZR2FBWUJrR1JnWVFpQUh5R01GOEZnWUhJTTNEd01IQUJHUXJNT2d5V0RMRU0xVDkvdzhVQmZFTWdMekUvLy8vUC81Ly9mL1YveHYrcjRlYUFBZU1iQXh3SVVZbUlNSEVnS1lBWWpVY3NEQXdzTEt4YzNCeWNmUHc4akVRQS9nWkJBU0ZoRVZFeGNRbEpLV2taV1RsNUJVVWxaUlZWTlhVTlRRWkJnTUFBTVIrRStnQUVRRkVBQUFBS2dBcUFDb0FOQUErQUVnQVVnQmNBR1lBY0FCNkFJUUFqZ0NZQUtJQXJBQzJBTUFBeWdEVUFONEE2QUR5QVB3QkJnRVFBUm9CSkFFdUFUZ0JRZ0ZNQVZZQllBRnFBWFFCZmdHSUFaSUJuQUdtQWJJQnpnSHNBQUI0MnUyTk1RNkNVQXlHVzU2OHg5QW5lWVlnbTRNSmJoS0ZhRXhJT0FWWDhBcGV3U3Q0QmljNEFmZUFpZDNWT0JpeER4ZlBZRXphNU8rWGZpMDRZQURnZ2lVSVVMQ3VFSks4VmhPNGJTdnBkbmt0SEk1UUNZdGRpMnNsOFpuWGFIbHFVck5LemRLY1Q4Y2pscStyd1pTdklWY3pOaWV6c2ZuUC91em5tZlBGQk5PRE0ySzdNVFE0NVlFQVpxR1A4MUFtR0djRjNpUHFPb3AwcjFTUFRhVGJWa2ZVZTRIWGo5N3dZRSt5TndXWXh3V3U0djF1Z1dIZ28zUzFYZFpFVnFXTTdFVDBjZm5MR3hXZmtnUjQybzJQdldyRE1CU0ZqL0lITGFGMHpLalJnZGlWTXdTY05SQW9XVW9INzhZMmljQi95SVkwOUFuNkFIMkJkdS9VQit5eG9wWXNoUWlFdm52dTBkVVJnRHQ4UWVDOFBEdzdGcGppM2ZFQTR6L1BFSjZZT0I1aEtoNGRqM0V2WGh4UHFIL1NLVVkzcko3c3JaNEZabmgxUE1BdFBod1A2ZmwyUE1KTVBEZ2VRNHJZOFlUNkd6YW8wZUFFQTQwOUR1Z2dtVG5Gbk9jU0NpRWlMTWd4Q2lUSTZDcTVEWlVkM1FtcDEwdk8wTGFMVGQyY2pONGZPdW1sYzdsVVliU1FjWkZrdXRSRzdnNkpLWkt5MFJtZExZNjgwQ0RuRUorVU1rcEZGZTFSTjdueGRWcFhyQzRhVHRuYXVyT25ZZXJjWmcyWVZtTE4vZC9nY3pmRWltckUvZnMvYk91cTI5Wm1uOHRsb09SYVhnWmdHYTc4eU85L2NuWG0yQnBhR3ZxMjVEdjlTNEU5KzVTSWM5UHF1cEpLaFlGU1NsNDcrUWNyMW1ZTkFBQUFlTnB0dzBjS3drQUFBTURaSkE4UTdPVUp2a0xzUGZaNnpGVkVSUHk4cUhoMllFUiszaS9CUDgzdklCTEx5U3NvS2ltcnFLcXBhMmhwNitqcTZSc1lHaG1ibUpxWlN5MHNyYXh0Yk8zc0hSeWRuRU1VNHVSNnl4N0pKWHZlUDdXckR5Y0FBQUFBQUFILy93QUNlTnBqWUdSZ1lPQUJZaGtnWmdKQ1pnWk5Ca1lHTFFadElKc0ZMTVlBQUF3M0FMZ0FlTm9saXpFS2dEQVFCQ2NoUmJDMnNGRVIwWUQ2cVZRaUJDdi9IOWV6R0k2WjVYQkF3OENCSy9tNWlRUVZhdVZiWExuT3JNWnYyb0xkS0ZhOFBqdXJ1MmhKekdhYm1PU0x6Tk16dnV0cEIzTjQybU5nWkdCZzRHS1FZekJoWU14SkxNbGo0R0JnQVlvdy9QL1BBSkpoTE02c1NvV0tmV0NBQXdEQWpnYlJBQUI0Mm1OZ1lHQmtBSUliQ1pvNUlQcm1VbjBoR0EwQU84RUZUUUFBXCIpO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG46cm9vdCB7XG4gIC0tc3dpcGVyLXRoZW1lLWNvbG9yOiAjMDA3YWZmO1xufVxuOmhvc3Qge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICB6LWluZGV4OiAxO1xufVxuLnN3aXBlciB7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMDtcbiAgei1pbmRleDogMTtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4uc3dpcGVyLXZlcnRpY2FsID4gLnN3aXBlci13cmFwcGVyIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cbi5zd2lwZXItd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgei1pbmRleDogMTtcbiAgZGlzcGxheTogZmxleDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogdmFyKC0tc3dpcGVyLXdyYXBwZXItdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24sIGluaXRpYWwpO1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbn1cbi5zd2lwZXItYW5kcm9pZCAuc3dpcGVyLXNsaWRlLFxuLnN3aXBlci1pb3MgLnN3aXBlci1zbGlkZSxcbi5zd2lwZXItd3JhcHBlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAwLCAwKTtcbn1cbi5zd2lwZXItaG9yaXpvbnRhbCB7XG4gIHRvdWNoLWFjdGlvbjogcGFuLXk7XG59XG4uc3dpcGVyLXZlcnRpY2FsIHtcbiAgdG91Y2gtYWN0aW9uOiBwYW4teDtcbn1cbi5zd2lwZXItc2xpZGUge1xuICBmbGV4LXNocmluazogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLnN3aXBlci1zbGlkZS1pbnZpc2libGUtYmxhbmsge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG4uc3dpcGVyLWF1dG9oZWlnaHQsXG4uc3dpcGVyLWF1dG9oZWlnaHQgLnN3aXBlci1zbGlkZSB7XG4gIGhlaWdodDogYXV0bztcbn1cbi5zd2lwZXItYXV0b2hlaWdodCAuc3dpcGVyLXdyYXBwZXIge1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBoZWlnaHQ7XG59XG4uc3dpcGVyLWJhY2tmYWNlLWhpZGRlbiAuc3dpcGVyLXNsaWRlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuLnN3aXBlci0zZC5zd2lwZXItY3NzLW1vZGUgLnN3aXBlci13cmFwcGVyIHtcbiAgcGVyc3BlY3RpdmU6IDEyMDBweDtcbn1cbi5zd2lwZXItM2QgLnN3aXBlci13cmFwcGVyIHtcbiAgdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbn1cbi5zd2lwZXItM2Qge1xuICBwZXJzcGVjdGl2ZTogMTIwMHB4O1xufVxuLnN3aXBlci0zZCAuc3dpcGVyLWN1YmUtc2hhZG93LFxuLnN3aXBlci0zZCAuc3dpcGVyLXNsaWRlIHtcbiAgdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbn1cbi5zd2lwZXItY3NzLW1vZGUgPiAuc3dpcGVyLXdyYXBwZXIge1xuICBvdmVyZmxvdzogYXV0bztcbiAgc2Nyb2xsYmFyLXdpZHRoOiBub25lO1xuICAtbXMtb3ZlcmZsb3ctc3R5bGU6IG5vbmU7XG59XG4uc3dpcGVyLWNzcy1tb2RlID4gLnN3aXBlci13cmFwcGVyOjotd2Via2l0LXNjcm9sbGJhciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uc3dpcGVyLWNzcy1tb2RlID4gLnN3aXBlci13cmFwcGVyID4gLnN3aXBlci1zbGlkZSB7XG4gIHNjcm9sbC1zbmFwLWFsaWduOiBzdGFydCBzdGFydDtcbn1cbi5zd2lwZXItY3NzLW1vZGUuc3dpcGVyLWhvcml6b250YWwgPiAuc3dpcGVyLXdyYXBwZXIge1xuICBzY3JvbGwtc25hcC10eXBlOiB4IG1hbmRhdG9yeTtcbn1cbi5zd2lwZXItY3NzLW1vZGUuc3dpcGVyLXZlcnRpY2FsID4gLnN3aXBlci13cmFwcGVyIHtcbiAgc2Nyb2xsLXNuYXAtdHlwZTogeSBtYW5kYXRvcnk7XG59XG4uc3dpcGVyLWNzcy1tb2RlLnN3aXBlci1mcmVlLW1vZGUgPiAuc3dpcGVyLXdyYXBwZXIge1xuICBzY3JvbGwtc25hcC10eXBlOiBub25lO1xufVxuLnN3aXBlci1jc3MtbW9kZS5zd2lwZXItZnJlZS1tb2RlID4gLnN3aXBlci13cmFwcGVyID4gLnN3aXBlci1zbGlkZSB7XG4gIHNjcm9sbC1zbmFwLWFsaWduOiBub25lO1xufVxuLnN3aXBlci1jc3MtbW9kZS5zd2lwZXItY2VudGVyZWQgPiAuc3dpcGVyLXdyYXBwZXI6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICBvcmRlcjogOTk5OTtcbn1cbi5zd2lwZXItY3NzLW1vZGUuc3dpcGVyLWNlbnRlcmVkID4gLnN3aXBlci13cmFwcGVyID4gLnN3aXBlci1zbGlkZSB7XG4gIHNjcm9sbC1zbmFwLWFsaWduOiBjZW50ZXIgY2VudGVyO1xuICBzY3JvbGwtc25hcC1zdG9wOiBhbHdheXM7XG59XG4uc3dpcGVyLWNzcy1tb2RlLnN3aXBlci1jZW50ZXJlZC5zd2lwZXItaG9yaXpvbnRhbCA+IC5zd2lwZXItd3JhcHBlciA+IC5zd2lwZXItc2xpZGU6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4taW5saW5lLXN0YXJ0OiB2YXIoLS1zd2lwZXItY2VudGVyZWQtb2Zmc2V0LWJlZm9yZSk7XG59XG4uc3dpcGVyLWNzcy1tb2RlLnN3aXBlci1jZW50ZXJlZC5zd2lwZXItaG9yaXpvbnRhbCA+IC5zd2lwZXItd3JhcHBlcjo6YmVmb3JlIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtaW4taGVpZ2h0OiAxcHg7XG4gIHdpZHRoOiB2YXIoLS1zd2lwZXItY2VudGVyZWQtb2Zmc2V0LWFmdGVyKTtcbn1cbi5zd2lwZXItY3NzLW1vZGUuc3dpcGVyLWNlbnRlcmVkLnN3aXBlci12ZXJ0aWNhbCA+IC5zd2lwZXItd3JhcHBlciA+IC5zd2lwZXItc2xpZGU6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tYmxvY2stc3RhcnQ6IHZhcigtLXN3aXBlci1jZW50ZXJlZC1vZmZzZXQtYmVmb3JlKTtcbn1cbi5zd2lwZXItY3NzLW1vZGUuc3dpcGVyLWNlbnRlcmVkLnN3aXBlci12ZXJ0aWNhbCA+IC5zd2lwZXItd3JhcHBlcjo6YmVmb3JlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1pbi13aWR0aDogMXB4O1xuICBoZWlnaHQ6IHZhcigtLXN3aXBlci1jZW50ZXJlZC1vZmZzZXQtYWZ0ZXIpO1xufVxuLnN3aXBlci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdyxcbi5zd2lwZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctYm90dG9tLFxuLnN3aXBlci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1sZWZ0LFxuLnN3aXBlci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1yaWdodCxcbi5zd2lwZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctdG9wIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB6LWluZGV4OiAxMDtcbn1cbi5zd2lwZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3cge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMTUpO1xufVxuLnN3aXBlci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1sZWZ0IHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGxlZnQsIHJnYmEoMCwgMCwgMCwgMC41KSwgcmdiYSgwLCAwLCAwLCAwKSk7XG59XG4uc3dpcGVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LXJpZ2h0IHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCByZ2JhKDAsIDAsIDAsIDAuNSksIHJnYmEoMCwgMCwgMCwgMCkpO1xufVxuLnN3aXBlci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy10b3Age1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gdG9wLCByZ2JhKDAsIDAsIDAsIDAuNSksIHJnYmEoMCwgMCwgMCwgMCkpO1xufVxuLnN3aXBlci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1ib3R0b20ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCByZ2JhKDAsIDAsIDAsIDAuNSksIHJnYmEoMCwgMCwgMCwgMCkpO1xufVxuLnN3aXBlci1sYXp5LXByZWxvYWRlciB7XG4gIHdpZHRoOiA0MnB4O1xuICBoZWlnaHQ6IDQycHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogNTAlO1xuICB0b3A6IDUwJTtcbiAgbWFyZ2luLWxlZnQ6IC0yMXB4O1xuICBtYXJnaW4tdG9wOiAtMjFweDtcbiAgei1pbmRleDogMTA7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDUwJTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYm9yZGVyOiA0cHggc29saWQgdmFyKC0tc3dpcGVyLXByZWxvYWRlci1jb2xvciwgdmFyKC0tc3dpcGVyLXRoZW1lLWNvbG9yKSk7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYm9yZGVyLXRvcC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4uc3dpcGVyLXdhdGNoLXByb2dyZXNzIC5zd2lwZXItc2xpZGUtdmlzaWJsZSAuc3dpcGVyLWxhenktcHJlbG9hZGVyLFxuLnN3aXBlcjpub3QoLnN3aXBlci13YXRjaC1wcm9ncmVzcykgLnN3aXBlci1sYXp5LXByZWxvYWRlciB7XG4gIGFuaW1hdGlvbjogc3dpcGVyLXByZWxvYWRlci1zcGluIDFzIGluZmluaXRlIGxpbmVhcjtcbn1cbi5zd2lwZXItbGF6eS1wcmVsb2FkZXItd2hpdGUge1xuICAtLXN3aXBlci1wcmVsb2FkZXItY29sb3I6ICNmZmY7XG59XG4uc3dpcGVyLWxhenktcHJlbG9hZGVyLWJsYWNrIHtcbiAgLS1zd2lwZXItcHJlbG9hZGVyLWNvbG9yOiAjMDAwO1xufVxuQGtleWZyYW1lcyBzd2lwZXItcHJlbG9hZGVyLXNwaW4ge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgfVxufVxuLnN3aXBlci12aXJ0dWFsIC5zd2lwZXItc2xpZGUge1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xufVxuLnN3aXBlci12aXJ0dWFsLnN3aXBlci1jc3MtbW9kZSAuc3dpcGVyLXdyYXBwZXI6OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuLnN3aXBlci12aXJ0dWFsLnN3aXBlci1jc3MtbW9kZS5zd2lwZXItaG9yaXpvbnRhbCAuc3dpcGVyLXdyYXBwZXI6OmFmdGVyIHtcbiAgaGVpZ2h0OiAxcHg7XG4gIHdpZHRoOiB2YXIoLS1zd2lwZXItdmlydHVhbC1zaXplKTtcbn1cbi5zd2lwZXItdmlydHVhbC5zd2lwZXItY3NzLW1vZGUuc3dpcGVyLXZlcnRpY2FsIC5zd2lwZXItd3JhcHBlcjo6YWZ0ZXIge1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IHZhcigtLXN3aXBlci12aXJ0dWFsLXNpemUpO1xufVxuOnJvb3Qge1xuICAtLXN3aXBlci1uYXZpZ2F0aW9uLXNpemU6IDQ0cHg7XG59XG4uc3dpcGVyLWJ1dHRvbi1uZXh0LFxuLnN3aXBlci1idXR0b24tcHJldiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiB2YXIoLS1zd2lwZXItbmF2aWdhdGlvbi10b3Atb2Zmc2V0LCA1MCUpO1xuICB3aWR0aDogY2FsYyh2YXIoLS1zd2lwZXItbmF2aWdhdGlvbi1zaXplKSAvIDQ0ICogMjcpO1xuICBoZWlnaHQ6IHZhcigtLXN3aXBlci1uYXZpZ2F0aW9uLXNpemUpO1xuICBtYXJnaW4tdG9wOiBjYWxjKDBweCAtICh2YXIoLS1zd2lwZXItbmF2aWdhdGlvbi1zaXplKSAvIDIpKTtcbiAgei1pbmRleDogMTA7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGNvbG9yOiB2YXIoLS1zd2lwZXItbmF2aWdhdGlvbi1jb2xvciwgdmFyKC0tc3dpcGVyLXRoZW1lLWNvbG9yKSk7XG59XG4uc3dpcGVyLWJ1dHRvbi1uZXh0LnN3aXBlci1idXR0b24tZGlzYWJsZWQsXG4uc3dpcGVyLWJ1dHRvbi1wcmV2LnN3aXBlci1idXR0b24tZGlzYWJsZWQge1xuICBvcGFjaXR5OiAwLjM1O1xuICBjdXJzb3I6IGF1dG87XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuLnN3aXBlci1idXR0b24tbmV4dC5zd2lwZXItYnV0dG9uLWhpZGRlbixcbi5zd2lwZXItYnV0dG9uLXByZXYuc3dpcGVyLWJ1dHRvbi1oaWRkZW4ge1xuICBvcGFjaXR5OiAwO1xuICBjdXJzb3I6IGF1dG87XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuLnN3aXBlci1uYXZpZ2F0aW9uLWRpc2FibGVkIC5zd2lwZXItYnV0dG9uLW5leHQsXG4uc3dpcGVyLW5hdmlnYXRpb24tZGlzYWJsZWQgLnN3aXBlci1idXR0b24tcHJldiB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cbi5zd2lwZXItYnV0dG9uLW5leHQgc3ZnLFxuLnN3aXBlci1idXR0b24tcHJldiBzdmcge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvYmplY3QtZml0OiBjb250YWluO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG59XG4uc3dpcGVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1uZXh0IHN2Zyxcbi5zd2lwZXItcnRsIC5zd2lwZXItYnV0dG9uLXByZXYgc3ZnIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbn1cbi5zd2lwZXItYnV0dG9uLXByZXYsXG4uc3dpcGVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1uZXh0IHtcbiAgbGVmdDogdmFyKC0tc3dpcGVyLW5hdmlnYXRpb24tc2lkZXMtb2Zmc2V0LCAxMHB4KTtcbiAgcmlnaHQ6IGF1dG87XG59XG4uc3dpcGVyLWJ1dHRvbi1uZXh0LFxuLnN3aXBlci1ydGwgLnN3aXBlci1idXR0b24tcHJldiB7XG4gIHJpZ2h0OiB2YXIoLS1zd2lwZXItbmF2aWdhdGlvbi1zaWRlcy1vZmZzZXQsIDEwcHgpO1xuICBsZWZ0OiBhdXRvO1xufVxuLnN3aXBlci1idXR0b24tbG9jayB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uc3dpcGVyLWJ1dHRvbi1uZXh0OmFmdGVyLFxuLnN3aXBlci1idXR0b24tcHJldjphZnRlciB7XG4gIGZvbnQtZmFtaWx5OiBzd2lwZXItaWNvbnM7XG4gIGZvbnQtc2l6ZTogdmFyKC0tc3dpcGVyLW5hdmlnYXRpb24tc2l6ZSk7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XG4gIGxldHRlci1zcGFjaW5nOiAwO1xuICBmb250LXZhcmlhbnQ6IGluaXRpYWw7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuLnN3aXBlci1idXR0b24tcHJldjphZnRlcixcbi5zd2lwZXItcnRsIC5zd2lwZXItYnV0dG9uLW5leHQ6YWZ0ZXIge1xuICBjb250ZW50OiBcInByZXZcIjtcbn1cbi5zd2lwZXItYnV0dG9uLW5leHQsXG4uc3dpcGVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1wcmV2IHtcbiAgcmlnaHQ6IHZhcigtLXN3aXBlci1uYXZpZ2F0aW9uLXNpZGVzLW9mZnNldCwgMTBweCk7XG4gIGxlZnQ6IGF1dG87XG59XG4uc3dpcGVyLWJ1dHRvbi1uZXh0OmFmdGVyLFxuLnN3aXBlci1ydGwgLnN3aXBlci1idXR0b24tcHJldjphZnRlciB7XG4gIGNvbnRlbnQ6IFwibmV4dFwiO1xufVxuLnN3aXBlci1wYWdpbmF0aW9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRyYW5zaXRpb246IDAuM3Mgb3BhY2l0eTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgei1pbmRleDogMTA7XG59XG4uc3dpcGVyLXBhZ2luYXRpb24uc3dpcGVyLXBhZ2luYXRpb24taGlkZGVuIHtcbiAgb3BhY2l0eTogMDtcbn1cbi5zd2lwZXItcGFnaW5hdGlvbi1kaXNhYmxlZCA+IC5zd2lwZXItcGFnaW5hdGlvbixcbi5zd2lwZXItcGFnaW5hdGlvbi5zd2lwZXItcGFnaW5hdGlvbi1kaXNhYmxlZCB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cbi5zd2lwZXItaG9yaXpvbnRhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLFxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMuc3dpcGVyLXBhZ2luYXRpb24taG9yaXpvbnRhbCxcbi5zd2lwZXItcGFnaW5hdGlvbi1jdXN0b20sXG4uc3dpcGVyLXBhZ2luYXRpb24tZnJhY3Rpb24ge1xuICBib3R0b206IHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWJvdHRvbSwgOHB4KTtcbiAgdG9wOiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi10b3AsIGF1dG8pO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbn1cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBmb250LXNpemU6IDA7XG59XG4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuMzMpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbn1cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUtbWFpbiB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSk7XG59XG4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlLXByZXYge1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuNjYpO1xufVxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZS1wcmV2LXByZXYge1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuMzMpO1xufVxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZS1uZXh0IHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjY2KTtcbn1cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUtbmV4dC1uZXh0IHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjMzKTtcbn1cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICB3aWR0aDogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LXdpZHRoLCB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtc2l6ZSwgOHB4KSk7XG4gIGhlaWdodDogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWhlaWdodCwgdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LXNpemUsIDhweCkpO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1ib3JkZXItcmFkaXVzLCA1MCUpO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtaW5hY3RpdmUtY29sb3IsICMwMDApO1xuICBvcGFjaXR5OiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtaW5hY3RpdmUtb3BhY2l0eSwgMC4yKTtcbn1cbmJ1dHRvbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICBib3JkZXI6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICBhcHBlYXJhbmNlOiBub25lO1xufVxuLnN3aXBlci1wYWdpbmF0aW9uLWNsaWNrYWJsZSAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldDpvbmx5LWNoaWxkIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUge1xuICBvcGFjaXR5OiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtb3BhY2l0eSwgMSk7XG4gIGJhY2tncm91bmQ6IHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWNvbG9yLCB2YXIoLS1zd2lwZXItdGhlbWUtY29sb3IpKTtcbn1cbi5zd2lwZXItcGFnaW5hdGlvbi12ZXJ0aWNhbC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLFxuLnN3aXBlci12ZXJ0aWNhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzIHtcbiAgcmlnaHQ6IHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLXJpZ2h0LCA4cHgpO1xuICBsZWZ0OiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1sZWZ0LCBhdXRvKTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAtNTAlLCAwKTtcbn1cbi5zd2lwZXItcGFnaW5hdGlvbi12ZXJ0aWNhbC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQsXG4uc3dpcGVyLXZlcnRpY2FsID4gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gIG1hcmdpbjogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LXZlcnRpY2FsLWdhcCwgNnB4KSAwO1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5zd2lwZXItcGFnaW5hdGlvbi12ZXJ0aWNhbC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyxcbi5zd2lwZXItdmVydGljYWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMge1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICB3aWR0aDogOHB4O1xufVxuLnN3aXBlci1wYWdpbmF0aW9uLXZlcnRpY2FsLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQsXG4uc3dpcGVyLXZlcnRpY2FsID4gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHRyYW5zaXRpb246XG4gICAgMC4ycyB0cmFuc2Zvcm0sXG4gICAgMC4ycyB0b3A7XG59XG4uc3dpcGVyLWhvcml6b250YWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LFxuLnN3aXBlci1wYWdpbmF0aW9uLWhvcml6b250YWwuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgbWFyZ2luOiAwIHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1ob3Jpem9udGFsLWdhcCwgNHB4KTtcbn1cbi5zd2lwZXItaG9yaXpvbnRhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyxcbi5zd2lwZXItcGFnaW5hdGlvbi1ob3Jpem9udGFsLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIHtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4uc3dpcGVyLWhvcml6b250YWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCxcbi5zd2lwZXItcGFnaW5hdGlvbi1ob3Jpem9udGFsLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICB0cmFuc2l0aW9uOlxuICAgIDAuMnMgdHJhbnNmb3JtLFxuICAgIDAuMnMgbGVmdDtcbn1cbi5zd2lwZXItaG9yaXpvbnRhbC5zd2lwZXItcnRsID4gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgdHJhbnNpdGlvbjpcbiAgICAwLjJzIHRyYW5zZm9ybSxcbiAgICAwLjJzIHJpZ2h0O1xufVxuLnN3aXBlci1wYWdpbmF0aW9uLWZyYWN0aW9uIHtcbiAgY29sb3I6IHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWZyYWN0aW9uLWNvbG9yLCBpbmhlcml0KTtcbn1cbi5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2JhciB7XG4gIGJhY2tncm91bmQ6IHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLWJnLWNvbG9yLCByZ2JhKDAsIDAsIDAsIDAuMjUpKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xufVxuLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyIC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1maWxsIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tY29sb3IsIHZhcigtLXN3aXBlci10aGVtZS1jb2xvcikpO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCB0b3A7XG59XG4uc3dpcGVyLXJ0bCAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIgLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLWZpbGwge1xuICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCB0b3A7XG59XG4uc3dpcGVyLWhvcml6b250YWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIsXG4uc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIuc3dpcGVyLXBhZ2luYXRpb24taG9yaXpvbnRhbCxcbi5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci5zd2lwZXItcGFnaW5hdGlvbi12ZXJ0aWNhbC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1vcHBvc2l0ZSxcbi5zd2lwZXItdmVydGljYWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItb3Bwb3NpdGUge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1zaXplLCA0cHgpO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG59XG4uc3dpcGVyLWhvcml6b250YWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItb3Bwb3NpdGUsXG4uc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIuc3dpcGVyLXBhZ2luYXRpb24taG9yaXpvbnRhbC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1vcHBvc2l0ZSxcbi5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci5zd2lwZXItcGFnaW5hdGlvbi12ZXJ0aWNhbCxcbi5zd2lwZXItdmVydGljYWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIge1xuICB3aWR0aDogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItc2l6ZSwgNHB4KTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG59XG4uc3dpcGVyLXBhZ2luYXRpb24tbG9jayB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uc3dpcGVyLXNjcm9sbGJhciB7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXN3aXBlci1zY3JvbGxiYXItYm9yZGVyLXJhZGl1cywgMTBweCk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG91Y2gtYWN0aW9uOiBub25lO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1zd2lwZXItc2Nyb2xsYmFyLWJnLWNvbG9yLCByZ2JhKDAsIDAsIDAsIDAuMSkpO1xufVxuLnN3aXBlci1zY3JvbGxiYXItZGlzYWJsZWQgPiAuc3dpcGVyLXNjcm9sbGJhcixcbi5zd2lwZXItc2Nyb2xsYmFyLnN3aXBlci1zY3JvbGxiYXItZGlzYWJsZWQge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG4uc3dpcGVyLWhvcml6b250YWwgPiAuc3dpcGVyLXNjcm9sbGJhcixcbi5zd2lwZXItc2Nyb2xsYmFyLnN3aXBlci1zY3JvbGxiYXItaG9yaXpvbnRhbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogdmFyKC0tc3dpcGVyLXNjcm9sbGJhci1zaWRlcy1vZmZzZXQsIDElKTtcbiAgYm90dG9tOiB2YXIoLS1zd2lwZXItc2Nyb2xsYmFyLWJvdHRvbSwgNHB4KTtcbiAgdG9wOiB2YXIoLS1zd2lwZXItc2Nyb2xsYmFyLXRvcCwgYXV0byk7XG4gIHotaW5kZXg6IDUwO1xuICBoZWlnaHQ6IHZhcigtLXN3aXBlci1zY3JvbGxiYXItc2l6ZSwgNHB4KTtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDIgKiB2YXIoLS1zd2lwZXItc2Nyb2xsYmFyLXNpZGVzLW9mZnNldCwgMSUpKTtcbn1cbi5zd2lwZXItc2Nyb2xsYmFyLnN3aXBlci1zY3JvbGxiYXItdmVydGljYWwsXG4uc3dpcGVyLXZlcnRpY2FsID4gLnN3aXBlci1zY3JvbGxiYXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IHZhcigtLXN3aXBlci1zY3JvbGxiYXItbGVmdCwgYXV0byk7XG4gIHJpZ2h0OiB2YXIoLS1zd2lwZXItc2Nyb2xsYmFyLXJpZ2h0LCA0cHgpO1xuICB0b3A6IHZhcigtLXN3aXBlci1zY3JvbGxiYXItc2lkZXMtb2Zmc2V0LCAxJSk7XG4gIHotaW5kZXg6IDUwO1xuICB3aWR0aDogdmFyKC0tc3dpcGVyLXNjcm9sbGJhci1zaXplLCA0cHgpO1xuICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDIgKiB2YXIoLS1zd2lwZXItc2Nyb2xsYmFyLXNpZGVzLW9mZnNldCwgMSUpKTtcbn1cbi5zd2lwZXItc2Nyb2xsYmFyLWRyYWcge1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQ6IHZhcigtLXN3aXBlci1zY3JvbGxiYXItZHJhZy1iZy1jb2xvciwgcmdiYSgwLCAwLCAwLCAwLjUpKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tc3dpcGVyLXNjcm9sbGJhci1ib3JkZXItcmFkaXVzLCAxMHB4KTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xufVxuLnN3aXBlci1zY3JvbGxiYXItY3Vyc29yLWRyYWcge1xuICBjdXJzb3I6IG1vdmU7XG59XG4uc3dpcGVyLXNjcm9sbGJhci1sb2NrIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5zd2lwZXItem9vbS1jb250YWluZXIge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLnN3aXBlci16b29tLWNvbnRhaW5lciA+IGNhbnZhcyxcbi5zd2lwZXItem9vbS1jb250YWluZXIgPiBpbWcsXG4uc3dpcGVyLXpvb20tY29udGFpbmVyID4gc3ZnIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xuICBvYmplY3QtZml0OiBjb250YWluO1xufVxuLnN3aXBlci1zbGlkZS16b29tZWQge1xuICBjdXJzb3I6IG1vdmU7XG4gIHRvdWNoLWFjdGlvbjogbm9uZTtcbn1cbi5zd2lwZXIgLnN3aXBlci1ub3RpZmljYXRpb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIG9wYWNpdHk6IDA7XG4gIHotaW5kZXg6IC0xMDAwO1xufVxuLnN3aXBlci1mcmVlLW1vZGUgPiAuc3dpcGVyLXdyYXBwZXIge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuLnN3aXBlci1ncmlkID4gLnN3aXBlci13cmFwcGVyIHtcbiAgZmxleC13cmFwOiB3cmFwO1xufVxuLnN3aXBlci1ncmlkLWNvbHVtbiA+IC5zd2lwZXItd3JhcHBlciB7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cbi5zd2lwZXItZmFkZS5zd2lwZXItZnJlZS1tb2RlIC5zd2lwZXItc2xpZGUge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG59XG4uc3dpcGVyLWZhZGUgLnN3aXBlci1zbGlkZSB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xufVxuLnN3aXBlci1mYWRlIC5zd2lwZXItc2xpZGUgLnN3aXBlci1zbGlkZSB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuLnN3aXBlci1mYWRlIC5zd2lwZXItc2xpZGUtYWN0aXZlIHtcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XG59XG4uc3dpcGVyLWZhZGUgLnN3aXBlci1zbGlkZS1hY3RpdmUgLnN3aXBlci1zbGlkZS1hY3RpdmUge1xuICBwb2ludGVyLWV2ZW50czogYXV0bztcbn1cbi5zd2lwZXIuc3dpcGVyLWN1YmUge1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cbi5zd2lwZXItY3ViZSAuc3dpcGVyLXNsaWRlIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIHotaW5kZXg6IDE7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuLnN3aXBlci1jdWJlIC5zd2lwZXItc2xpZGUgLnN3aXBlci1zbGlkZSB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuLnN3aXBlci1jdWJlLnN3aXBlci1ydGwgLnN3aXBlci1zbGlkZSB7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDEwMCUgMDtcbn1cbi5zd2lwZXItY3ViZSAuc3dpcGVyLXNsaWRlLWFjdGl2ZSxcbi5zd2lwZXItY3ViZSAuc3dpcGVyLXNsaWRlLWFjdGl2ZSAuc3dpcGVyLXNsaWRlLWFjdGl2ZSB7XG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xufVxuLnN3aXBlci1jdWJlIC5zd2lwZXItc2xpZGUtYWN0aXZlLFxuLnN3aXBlci1jdWJlIC5zd2lwZXItc2xpZGUtbmV4dCxcbi5zd2lwZXItY3ViZSAuc3dpcGVyLXNsaWRlLXByZXYge1xuICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbn1cbi5zd2lwZXItY3ViZSAuc3dpcGVyLWN1YmUtc2hhZG93IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDBweDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb3BhY2l0eTogMC42O1xuICB6LWluZGV4OiAwO1xufVxuLnN3aXBlci1jdWJlIC5zd2lwZXItY3ViZS1zaGFkb3c6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgYmFja2dyb3VuZDogIzAwMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgcmlnaHQ6IDA7XG4gIGZpbHRlcjogYmx1cig1MHB4KTtcbn1cbi5zd2lwZXItY3ViZSAuc3dpcGVyLXNsaWRlLW5leHQgKyAuc3dpcGVyLXNsaWRlIHtcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG59XG4uc3dpcGVyLWN1YmUgLnN3aXBlci1zbGlkZS1zaGFkb3ctY3ViZS5zd2lwZXItc2xpZGUtc2hhZG93LWJvdHRvbSxcbi5zd2lwZXItY3ViZSAuc3dpcGVyLXNsaWRlLXNoYWRvdy1jdWJlLnN3aXBlci1zbGlkZS1zaGFkb3ctbGVmdCxcbi5zd2lwZXItY3ViZSAuc3dpcGVyLXNsaWRlLXNoYWRvdy1jdWJlLnN3aXBlci1zbGlkZS1zaGFkb3ctcmlnaHQsXG4uc3dpcGVyLWN1YmUgLnN3aXBlci1zbGlkZS1zaGFkb3ctY3ViZS5zd2lwZXItc2xpZGUtc2hhZG93LXRvcCB7XG4gIHotaW5kZXg6IDA7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG4uc3dpcGVyLnN3aXBlci1mbGlwIHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG4uc3dpcGVyLWZsaXAgLnN3aXBlci1zbGlkZSB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICB6LWluZGV4OiAxO1xufVxuLnN3aXBlci1mbGlwIC5zd2lwZXItc2xpZGUgLnN3aXBlci1zbGlkZSB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuLnN3aXBlci1mbGlwIC5zd2lwZXItc2xpZGUtYWN0aXZlLFxuLnN3aXBlci1mbGlwIC5zd2lwZXItc2xpZGUtYWN0aXZlIC5zd2lwZXItc2xpZGUtYWN0aXZlIHtcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XG59XG4uc3dpcGVyLWZsaXAgLnN3aXBlci1zbGlkZS1zaGFkb3ctZmxpcC5zd2lwZXItc2xpZGUtc2hhZG93LWJvdHRvbSxcbi5zd2lwZXItZmxpcCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1mbGlwLnN3aXBlci1zbGlkZS1zaGFkb3ctbGVmdCxcbi5zd2lwZXItZmxpcCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1mbGlwLnN3aXBlci1zbGlkZS1zaGFkb3ctcmlnaHQsXG4uc3dpcGVyLWZsaXAgLnN3aXBlci1zbGlkZS1zaGFkb3ctZmxpcC5zd2lwZXItc2xpZGUtc2hhZG93LXRvcCB7XG4gIHotaW5kZXg6IDA7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG4uc3dpcGVyLWNyZWF0aXZlIC5zd2lwZXItc2xpZGUge1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHksIGhlaWdodDtcbn1cbi5zd2lwZXIuc3dpcGVyLWNhcmRzIHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG4uc3dpcGVyLWNhcmRzIC5zd2lwZXItc2xpZGUge1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuIiwiQHVzZSBcInNhc3M6bWF0aFwiO1xuXG5odG1sLFxuYm9keSB7XG5cdG92ZXJzY3JvbGwtYmVoYXZpb3I6IG5vbmU7XG5cdG92ZXJzY3JvbGwtYmVoYXZpb3IteDogbm9uZTtcblx0c2Nyb2xsLWJlaGF2aW9yOiBzbW9vdGg7XG59XG5cbmh0bWwge1xuXHRmb250LXNpemU6IDEwMCU7XG59XG5cbmJvZHkge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZyk7XG5cdGZvbnQtZmFtaWx5OiB2YXIoLS1ib2R5LWZvbnQpO1xuXHRmb250LXdlaWdodDogdmFyKC0td2VpZ2h0LW5vcm1hbCk7XG5cdGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LWxpbmUtaGVpZ2h0KTtcblx0Y29sb3I6IHZhcigtLWJsYWNrKTtcblx0Zm9udC1vcHRpY2FsLXNpemluZzogYXV0bztcblx0bWluLWhlaWdodDogMTAwdmg7XG5cdCYuLS1sb2NrIHtcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHR9XG5cdC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuXHQtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuXHR0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xuXHQvLyBHTE9CQUwgQU5JTUFUSU9OU1xuXHQtLXNhbC1kdXJhdGlvbjogNTAwbXM7XG5cdC0tc2FsLWVhc2luZzogY3ViaWMtYmV6aWVyKDAuMTIsIDAuNjcsIDAuNTMsIDEpO1xufVxuXG4uZ3JpZC1jb250YWluZXIge1xuXHRtYXgtd2lkdGg6IDEwMCU7XG5cdHBhZGRpbmctbGVmdDogMC45ZW07XG5cdHBhZGRpbmctcmlnaHQ6IDAuOWVtO1xuXHRAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bS1icmVha3BvaW50KSB7XG5cdFx0cGFkZGluZy1sZWZ0OiAzLjZlbTtcblx0XHRwYWRkaW5nLXJpZ2h0OiAzLjZlbTtcblx0fVxufVxuXG4vLyBESVNBQkxFIE1PVElPTlxuLi0tZGlzYWJsZW1vdGlvbiB7XG5cdCYsXG5cdCoge1xuXHRcdHRyYW5zaXRpb246IG5vbmUgIWltcG9ydGFudDtcblx0fVxufVxuXG4qLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuXHQtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbiosXG4qOmFjdGl2ZSxcbio6Zm9jdXMsXG4qOnZpc2l0ZWQge1xuXHRvdXRsaW5lOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbjo6LW1vei1zZWxlY3Rpb24ge1xuXHRiYWNrZ3JvdW5kOiB2YXIoLS1tZWRpdW1ncmV5KTtcbn1cbjo6c2VsZWN0aW9uIHtcblx0YmFja2dyb3VuZDogdmFyKC0tbWVkaXVtZ3JleSk7XG59XG5cbjo6LW1vei1mb2N1cy1pbm5lciB7XG5cdGJvcmRlcjogMDtcblx0cGFkZGluZzogMDtcbn1cblxuLnNjcmVlbi1yZWFkZXIsXG4uZnJtX3NjcmVlbl9yZWFkZXIsXG4uaGlkZSxcbi52aXN1YWxseUhpZGRlbixcbi52aXN1YWxseS1oaWRkZW4ge1xuXHRkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5oYXMtYmFja2dyb3VuZCB7XG5cdGJhY2tncm91bmQ6IHZhcigtLWJnKTtcblx0cGFkZGluZzogMDtcbn1cblxuLi0tem9vbSxcbi56b29tIHtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHRpbWcsXG5cdHZpZGVvIHtcblx0XHR0cmFuc2l0aW9uOiBhbGwgZWFzZSAycztcblx0fVxufVxuXG5zdHJvbmcsXG5iIHtcblx0Zm9udC13ZWlnaHQ6IHZhcigtLXdlaWdodC1ib2xkKTtcbn1cblxuLmZsZXgtaGVpZ2h0IHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR3aWR0aDogMTAwJTtcblx0aGVpZ2h0OiAxMDB2aDtcblx0aGVpZ2h0OiBjYWxjKDEwMHZoIC0gY2FsYyh2YXIoLS1tZW51aGVpZ2h0KSAqIDEpKTtcblx0Ji5mdWxsIHtcblx0XHRoZWlnaHQ6IDEwMHZoO1xuXHR9XG5cdCYuaGFsZiB7XG5cdFx0aGVpZ2h0OiA1MHZoO1xuXHR9XG5cdCYuZmlsbC1oZWlnaHQge1xuXHRcdGhlaWdodDogMTAwJTtcblx0fVxuXHQmLi0tbGVmdCB7XG5cdFx0dmlkZW8sXG5cdFx0aWZyYW1lLFxuXHRcdGltZyB7XG5cdFx0XHRvYmplY3QtcG9zaXRpb246IGxlZnQgY2VudGVyO1xuXHRcdH1cblx0fVxuXHQmLi0tcmlnaHQge1xuXHRcdHZpZGVvLFxuXHRcdGlmcmFtZSxcblx0XHRpbWcge1xuXHRcdFx0b2JqZWN0LXBvc2l0aW9uOiByaWdodCBjZW50ZXI7XG5cdFx0fVxuXHR9XG5cdHZpZGVvLFxuXHRpZnJhbWUsXG5cdGltZyB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHRvcDogMDtcblx0XHRsZWZ0OiAwO1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdGhlaWdodDogMTAwJTtcblx0XHR6LWluZGV4OiAxO1xuXHRcdG9iamVjdC1maXQ6IGNvbnRhaW47XG5cdH1cblx0Ji5jb3Zlcixcblx0Ji5maXQge1xuXHRcdHZpZGVvLFxuXHRcdGlmcmFtZSxcblx0XHRpbWcge1xuXHRcdFx0QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtZWRpdW0tYnJlYWtwb2ludCkge1xuXHRcdFx0XHRvYmplY3QtZml0OiBjb3Zlcjtcblx0XHRcdH1cblx0XHR9XG5cdH1cblx0Ji5jb250YWluIHtcblx0XHR2aWRlbyxcblx0XHRpZnJhbWUsXG5cdFx0aW1nIHtcblx0XHRcdG9iamVjdC1maXQ6IGNvbnRhaW47XG5cdFx0fVxuXHRcdCYuLS10b3Age1xuXHRcdFx0dmlkZW8sXG5cdFx0XHRpZnJhbWUsXG5cdFx0XHRpbWcge1xuXHRcdFx0XHRvYmplY3QtcG9zaXRpb246IHRvcDtcblx0XHRcdH1cblx0XHR9XG5cdFx0Ji4tLW1pZGRsZSB7XG5cdFx0XHR2aWRlbyxcblx0XHRcdGlmcmFtZSxcblx0XHRcdGltZyB7XG5cdFx0XHRcdG9iamVjdC1wb3NpdGlvbjogY2VudGVyO1xuXHRcdFx0fVxuXHRcdH1cblx0XHQmLi0tYm90dG9tIHtcblx0XHRcdHZpZGVvLFxuXHRcdFx0aWZyYW1lLFxuXHRcdFx0aW1nIHtcblx0XHRcdFx0b2JqZWN0LXBvc2l0aW9uOiBib3R0b207XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG4uZmxleC1yb3cge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cdC5iZy1hbmltYXRlIHtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOiAwO1xuXHRcdGxlZnQ6IDA7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdHotaW5kZXg6IDk7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmcpO1xuXHRcdHRyYW5zaXRpb246IHRyYW5zZm9ybSA2MDBtcyAxNTBtcyBjdWJpYy1iZXppZXIoMC4xMiwgMC42NywgMC41MywgMSk7XG5cdH1cblx0aW1nLFxuXHR2aWRlbyB7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0aGVpZ2h0OiBhdXRvO1xuXHR9XG59XG5cbi8vIE1FRElBIFJPV1xuXG4ubWVkaWEtcm93IHtcblx0ZmxleC1kaXJlY3Rpb246IHJvdztcblx0ZmxleC13cmFwOiBub3dyYXA7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGdhcDogMCAwLjlyZW07XG5cblx0QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtZWRpdW0tYnJlYWtwb2ludCkge1xuXHRcdGdhcDogMCAxLjg3NXJlbTtcblx0fVxuXHQuYmctYW5pbWF0ZSB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHRvcDogMDtcblx0XHRsZWZ0OiAwO1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdGhlaWdodDogMTAwJTtcblx0XHR6LWluZGV4OiA5O1xuXHRcdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnKTtcblx0XHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gNjAwbXMgMTUwbXMgY3ViaWMtYmV6aWVyKDAuMTIsIDAuNjcsIDAuNTMsIDEpO1xuXHR9XG59XG5cbi8vIFJFU1BPTlNJVkUgTUVESUFcblxuLmZsZXgtdmlkZW8sXG4uZmxleC1pbWFnZSB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0d2lkdGg6IDEwMCU7XG5cdGhlaWdodDogMHB4O1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7XG5cdHotaW5kZXg6IDE7XG5cdCYuZnVsbC1oZWlnaHQge1xuXHRcdHBhZGRpbmctYm90dG9tOiAwICFpbXBvcnRhbnQ7XG5cdFx0aGVpZ2h0OiAxMDB2aDtcblx0fVxuXHQmLmVtYmVkLXJldmVhbCB7XG5cdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHR9XG5cdC5iYW5uZXIge1xuXHRcdHBhZGRpbmc6IDAuNDVyZW07XG5cdFx0QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtZWRpdW0tYnJlYWtwb2ludCkge1xuXHRcdFx0cGFkZGluZzogMC42MjVyZW0gMS4zNXJlbTtcblx0XHR9XG5cblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icmFuZCk7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0ei1pbmRleDogMztcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0bGVmdDogMDtcblx0XHRib3R0b206IDA7XG5cdFx0c3BhbiB7XG5cdFx0XHRjb2xvcjogdmFyKC0td2hpdGUpO1xuXHRcdFx0Zm9udC1zaXplOiB2YXIoLS1zaXplLW1pbnVzMSk7XG5cdFx0fVxuXHR9XG5cdC5jYXB0aW9uIHtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0ei1pbmRleDogMztcblx0XHRib3R0b206IDA7XG5cdFx0cmlnaHQ6IDA7XG5cdFx0cGFkZGluZzogMC45cmVtO1xuXHRcdEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtLWJyZWFrcG9pbnQpIHtcblx0XHRcdHBhZGRpbmc6IDEuOHJlbTtcblx0XHR9XG5cdFx0dGV4dC1hbGlnbjogbGVmdDtcblx0XHRjb2xvcjogdmFyKC0tYmxhY2spO1xuXHRcdGZvbnQtc2l6ZTogdmFyKC0tc2l6ZSk7XG5cdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0fVxuXHQudGV4dC1pbm5lciB7XG5cdFx0ei1pbmRleDogOTtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0Ym90dG9tOiAwO1xuXHRcdGxlZnQ6IDA7XG5cdFx0LS1ibGFjazogd2hpdGU7XG5cdFx0cGFkZGluZzogMS44cmVtIDA7XG5cdFx0QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtZWRpdW0tYnJlYWtwb2ludCkge1xuXHRcdFx0cGFkZGluZzogMy42cmVtIDA7XG5cdFx0fVxuXHR9XG5cdC5tYXNrIHtcblx0XHR6LWluZGV4OiAyO1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR0b3A6IDA7XG5cdFx0bGVmdDogMDtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0YmFja2dyb3VuZDogdmFyKC0tbWFzayk7XG5cdH1cblx0Ji5idyB7XG5cdFx0ZmlsdGVyOiBncmF5c2NhbGUoMSk7XG5cdH1cblx0LmJnLWFuaW1hdGUge1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR0b3A6IDA7XG5cdFx0bGVmdDogMDtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0ei1pbmRleDogOTtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZyk7XG5cdFx0dHJhbnNpdGlvbjogdHJhbnNmb3JtIDYwMG1zIDE1MG1zIGN1YmljLWJlemllcigwLjEyLCAwLjY3LCAwLjUzLCAxKTtcblx0fVxuXHR2aWRlbyxcblx0aWZyYW1lLFxuXHRpbWcge1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR0b3A6IDA7XG5cdFx0bGVmdDogMDtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRoZWlnaHQ6IGF1dG87XG5cdFx0ei1pbmRleDogMTtcblx0fVxuXHRpZnJhbWUge1xuXHRcdHotaW5kZXg6IDM7XG5cdH1cblx0c3ZnIHtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOiA1MCU7XG5cdFx0bGVmdDogNTAlO1xuXHRcdHotaW5kZXg6IDI7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG5cdFx0d2lkdGg6IDE2MnB4O1xuXHRcdGhlaWdodDogMTYycHg7XG5cdH1cblx0aWZyYW1lIHtcblx0XHRoZWlnaHQ6IDEwMCU7XG5cdH1cblx0Ji5zcXVhcmUge1xuXHRcdHBhZGRpbmctYm90dG9tOiAxMDAlO1xuXHR9XG5cdCYuem9vbSB7XG5cdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHRcdGltZyxcblx0XHR2aWRlbyB7XG5cdFx0XHR0cmFuc2l0aW9uOiBhbGwgZWFzZSAycztcblx0XHR9XG5cdFx0Jjpob3ZlciB7XG5cdFx0XHRpbWcsXG5cdFx0XHR2aWRlbyB7XG5cdFx0XHRcdHRyYW5zZm9ybTogc2NhbGUoMS4xMjUpO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXHQmLnJvdW5kIHtcblx0XHRib3JkZXItcmFkaXVzOiAxMDAlO1xuXHRcdG92ZXJmbG93OiBoaWRkZW47XG5cdH1cblx0Ji5zaHJpbmsgaW1nIHtcblx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0b2JqZWN0LWZpdDogY29udGFpbjtcblx0fVxuXHQmLmZpdCxcblx0Ji5jb3ZlciB7XG5cdFx0aW1nLFxuXHRcdHZpZGVvIHtcblx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdG9iamVjdC1maXQ6IGNvdmVyO1xuXHRcdH1cblx0fVxuXHQuZmxleC1oZWFkZXIge1xuXHRcdHotaW5kZXg6IDg7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHotaW5kZXg6IDM7XG5cdFx0dG9wOiAwO1xuXHRcdGxlZnQ6IDA7XG5cdFx0cGFkZGluZzogMS40Mzc1cmVtO1xuXHRcdCYuc21hbGwge1xuXHRcdFx0cGFkZGluZzogMS4zNXJlbTtcblx0XHR9XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0aDIge1xuXHRcdFx0Y29sb3I6IHZhcigtLWJsYWNrKTtcblx0XHRcdGZvbnQtc2l6ZTogdmFyKC0tc2l6ZS1wbHVzNSk7XG5cdFx0fVxuXHRcdHAge1xuXHRcdFx0Y29sb3I6IHZhcigtLWJsYWNrKTtcblx0XHRcdGZvbnQtc2l6ZTogbWF4KDAuOTI1cmVtLCB2YXIoLS1zaXplLXBsdXMxKSk7XG5cdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdH1cblx0XHRAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bS1icmVha3BvaW50KSB7XG5cdFx0XHRwYWRkaW5nOiAyLjZyZW07XG5cdFx0XHR3aWR0aDogNTAlO1xuXHRcdFx0cCB7XG5cdFx0XHRcdG1heC13aWR0aDogODcuMjUlO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXHQuZmxleC1pY29uIHtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0Ym90dG9tOiAxLjQzNzVyZW07XG5cdFx0cmlnaHQ6IDEuNDM3NXJlbTtcblx0XHR6LWluZGV4OiAxMDtcblx0XHR3aWR0aDogMi4zNXJlbTtcblx0XHRAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bS1icmVha3BvaW50KSB7XG5cdFx0XHR3aWR0aDogMy41OTM3NXJlbTtcblx0XHR9XG5cdFx0dHJhbnNmb3JtOiBub25lO1xuXHRcdHRvcDogdW5zZXQ7XG5cdFx0bGVmdDogdW5zZXQ7XG5cdFx0aGVpZ2h0OiBhdXRvO1xuXHR9XG5cblx0LmZsZXgtYnV0dG9uIHtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0Ym90dG9tOiAxLjhyZW07XG5cdFx0bGVmdDogMS44cmVtO1xuXHRcdEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtLWJyZWFrcG9pbnQpIHtcblx0XHRcdGJvdHRvbTogMi44cmVtO1xuXHRcdFx0cmlnaHQ6IDIuOHJlbTtcblx0XHRcdGxlZnQ6IGF1dG87XG5cdFx0fVxuXHRcdHotaW5kZXg6IDEwO1xuXHRcdHN2ZyB7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRoZWlnaHQ6IDAuNWVtO1xuXHRcdFx0d2lkdGg6IGF1dG87XG5cdFx0XHR0cmFuc2Zvcm06IG5vbmU7XG5cdFx0XHR0b3A6IHVuc2V0O1xuXHRcdFx0bGVmdDogdW5zZXQ7XG5cdFx0XHRjaXJjbGUge1xuXHRcdFx0XHRmaWxsOiB2YXIoLS1ibGFjayk7XG5cdFx0XHRcdHRyYW5zaXRpb246IGFsbCBlYXNlIDUwMG1zO1xuXHRcdFx0fVxuXHRcdFx0aGVpZ2h0OiAwLjVlbTtcblx0XHRcdHdpZHRoOiBhdXRvO1xuXHRcdH1cblx0XHQmOmhvdmVyIHN2ZyB7XG5cdFx0XHRjaXJjbGUge1xuXHRcdFx0XHRmaWxsOiB2YXIoLS1icmFuZCk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi5jb250ZW50LWZsZXgtaW1hZ2Uge1xuXHRtYXJnaW46IDEuOHJlbSAwO1xufVxuXG4uZmxleC1idXR0b24ge1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJyYW5kKTtcblx0Y29sb3I6IHZhcigtLWJnKTtcblx0YmFja2dyb3VuZDogdmFyKC0tYnJhbmQpO1xuXHRwYWRkaW5nOiAwLjllbSAxLjI1ZW07XG5cdGZvbnQtc2l6ZTogbWF4KDAuOHJlbSwgdmFyKC0tc2l6ZS1taW51czEpKTtcblx0QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtZWRpdW0tYnJlYWtwb2ludCkge1xuXHRcdHBhZGRpbmc6IDAuOWVtIDMuNmVtO1xuXHRcdGZvbnQtc2l6ZTogbWF4KDAuOTI1cmVtLCB2YXIoLS1zaXplKSk7XG5cdH1cblx0Ym9yZGVyLXJhZGl1czogMC45ZW07XG5cdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdGZvbnQtZmFtaWx5OiB2YXIoLS1tb25vLWZvbnQpO1xuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xuXHRzcGFuIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0fVxuXHR0cmFuc2l0aW9uOiBhbGwgZWFzZSA1MDBtcztcblx0ZGlzcGxheTogaW5saW5lLWZsZXg7XG5cdGdhcDogMC45ZW07XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cdGZsZXgtd3JhcDogd3JhcDtcblx0c3ZnIHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0aGVpZ2h0OiAwLjdlbTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTAuNXB4KTtcblx0XHR3aWR0aDogYXV0bztcblx0XHRjaXJjbGUge1xuXHRcdFx0ZmlsbDogdmFyKC0tYmxhY2spO1xuXHRcdFx0dHJhbnNpdGlvbjogYWxsIGVhc2UgNTAwbXM7XG5cdFx0fVxuXHRcdGhlaWdodDogMC41ZW07XG5cdFx0d2lkdGg6IGF1dG87XG5cdH1cblx0Jjpob3ZlciB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdFx0Y29sb3I6IHZhcigtLWJyYW5kKTtcblx0XHRzdmcgY2lyY2xlIHtcblx0XHRcdGZpbGw6IHZhcigtLWJyYW5kKTtcblx0XHR9XG5cdH1cbn1cblxuLi0taXMtYWRtaW4gLmJnLWFuaW1hdGUge1xuXHRkaXNwbGF5OiBub25lO1xufVxuXG4uc2FsLWFuaW1hdGUge1xuXHQuZmxleC1yb3csXG5cdC5mbGV4LWltYWdlLFxuXHQuZmxleC12aWRlbyB7XG5cdFx0LmJnLWFuaW1hdGUge1xuXHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcblx0XHR9XG5cdH1cbn1cblxuLy8gVklTSUJJTElUWVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bS1icmVha3BvaW50KSB7XG5cdC5zbWFsbC1vbmx5IHtcblx0XHRkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG5cdH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbWVkaXVtLWJyZWFrcG9pbnQpIHtcblx0Lm1lZGl1bS11cCB7XG5cdFx0ZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuXHR9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGxhcmdlLWJyZWFrcG9pbnQpIHtcblx0LmxhcmdlLXVwIHtcblx0XHRkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG5cdH1cbn1cblxuLy8gQkFTRSBURVhUXG5cbi8vIEJBU0UgVEVYVFxubGksXG51bCxcbm9sLFxucCB7XG5cdGNvbG9yOiB2YXIoLS1ibGFjayk7XG5cdGZvbnQtc2l6ZTogMXJlbTtcblx0QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtZWRpdW0tYnJlYWtwb2ludCkge1xuXHRcdGZvbnQtc2l6ZTogdmFyKC0tc2l6ZSk7XG5cdFx0Zm9udC1zaXplOiBtYXgoMS4xMjVyZW0sIHZhcigtLXNpemUtcGx1czApKTtcblx0fVxuXHRsaW5lLWhlaWdodDogdmFyKC0tYm9keS1saW5lLWhlaWdodCk7XG5cdHRleHQtYWxpZ246IGxlZnQ7XG5cdHdoaXRlLXNwYWNlOiBub3JtYWw7XG5cdGIsXG5cdHN0cm9uZyB7XG5cdFx0Zm9udC13ZWlnaHQ6IHZhcigtLXdlaWdodC1ib2xkKTtcblx0fVxufVxuXG51bCBsaSB7XG5cdG1hcmdpbjogMCAwIDAuNDVlbSAwO1xufVxuXG51bCxcbm9sLFxucCB7XG5cdG1hcmdpbi10b3A6IDA7XG5cdG1hcmdpbi1ib3R0b206IDEuMjVlbTtcbn1cblxuLmxlYWQgcCxcbnAubGVhZCB7XG5cdC8vIGxpbmUtaGVpZ2h0OiAxO1xuXHRtYXJnaW46IDAgMCAxLjM1ZW0gMDtcblx0Zm9udC13ZWlnaHQ6IHZhcigtLXdlaWdodC1ub3JtYWwpO1xuXHRmb250LXNpemU6IHZhcigtLXNpemUtcGx1czIpO1xufVxuLnBsdXMgcCxcbnAucGx1cyB7XG5cdHAge1xuXHRcdGZvbnQtc2l6ZTogdmFyKC0tc2l6ZS1wbHVzMik7XG5cdFx0bGluZS1oZWlnaHQ6IHZhcigtLWhlYWRlci1saW5lLWhlaWdodCk7XG5cdFx0Zm9udC13ZWlnaHQ6IHZhcigtLXdlaWdodC1saWdodCk7XG5cdH1cbn1cblxuLnRleHQtbGVmdCB7XG5cdHRleHQtYWxpZ246IGxlZnQ7XG59XG4udGV4dC1yaWdodCB7XG5cdHRleHQtYWxpZ246IHJpZ2h0O1xufVxuLnRleHQtY2VudGVyIHtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uaGFzLWRyb3AtY2FwIHAsXG5wLmhhcy1kcm9wLWNhcCB7XG5cdCY6bm90KDpmb2N1cyk6Zmlyc3QtbGV0dGVyIHtcblx0XHRmbG9hdDogbGVmdDtcblx0XHRmb250LXNpemU6IDguNGVtO1xuXHRcdGxpbmUtaGVpZ2h0OiAwLjY4O1xuXHRcdGZvbnQtd2VpZ2h0OiAxMDA7XG5cdFx0bWFyZ2luOiAwLjA1ZW0gMC4xZW0gMCAwO1xuXHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdFx0Zm9udC1zdHlsZTogbm9ybWFsO1xuXHR9XG59XG5cbi5oYXMtc21hbGwtZm9udC1zaXplIHAsXG5wLmhhcy1zbWFsbC1mb250LXNpemUge1xuXHRmb250LXNpemU6IHZhcigtLXNpemUpO1xuXHRmb250LXNpemU6IG1heCgwLjkyNXJlbSwgdmFyKC0tc2l6ZSkpO1xufVxuLmhhcy1tZWRpdW0tZm9udC1zaXplIHAsXG5wLmhhcy1tZWRpdW0tZm9udC1zaXplIHtcblx0Zm9udC1zaXplOiB2YXIoLS1zaXplLXBsdXMxKTtcbn1cbi5oYXMtbGFyZ2UtZm9udC1zaXplIHAsXG5wLmhhcy1sYXJnZS1mb250LXNpemUge1xuXHRmb250LXNpemU6IHZhcigtLXNpemUtcGx1czQpO1xufVxuLmhhcy14LWxhcmdlLWZvbnQtc2l6ZSBwLFxucC5oYXMteC1sYXJnZS1mb250LXNpemUge1xuXHRmb250LXNpemU6IHZhcigtLXNpemUtcGx1czMpO1xufVxuXG4uLS1zdGlja3kge1xuXHRAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bS1icmVha3BvaW50KSB7XG5cdFx0cG9zaXRpb246IHN0aWNreTtcblx0XHR0b3A6IDA7XG5cdFx0dG9wOiB2YXIoLS1oZWFkZXItaGVpZ2h0KTtcblx0fVxufVxuXG4uaDEsXG4uaDIsXG4uaDMsXG4uaDQsXG4uaDUsXG4uaDYsXG5oMSxcbmgyLFxuaDMsXG5oNCxcbmg1LFxuaDYge1xuXHRtYXJnaW46IDAgMCAwLjlyZW0gMDtcblx0Zm9udC1mYW1pbHk6IHZhcigtLWhlYWRlci1mb250KTtcblx0Zm9udC13ZWlnaHQ6IHZhcigtLXdlaWdodC1ub3JtYWwpO1xuXHRsaW5lLWhlaWdodDogdmFyKC0taGVhZGVyLWxpbmUtaGVpZ2h0KTtcblx0Y29sb3I6IHZhcigtLWJsYWNrKTtcblx0dGV4dC10cmFuc2Zvcm06IG5vbmU7XG5cdGZvbnQtc3R5bGU6IGl0YWxpYztcblx0Ji5jYXNlLWRlZmF1bHQge1xuXHRcdHRleHQtdHJhbnNmb3JtOiBub25lO1xuXHR9XG5cdCYuY2FzZS11cHBlcmNhc2Uge1xuXHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdH1cblx0Ji5jYXNlLWxvd2VyY2FzZSB7XG5cdFx0dGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZTtcblx0fVxuXHQmLndlaWdodC1ub3JtYWwge1xuXHRcdGZvbnQtd2VpZ2h0OiB2YXIoLS13ZWlnaHQtbm9ybWFsKTtcblx0fVxuXHQmLndlaWdodC1ib2xkIHtcblx0XHRmb250LXdlaWdodDogdmFyKC0td2VpZ2h0LWJvbGQpO1xuXHR9XG5cdHNtYWxsIHtcblx0XHRmb250LXNpemU6IDY2LjYlO1xuXHR9XG59XG5cbmE6aG92ZXIge1xuXHQuaDEsXG5cdC5oMixcblx0LmgzLFxuXHQuaDQsXG5cdC5oNSxcblx0Lmg2LFxuXHRoMSxcblx0aDIsXG5cdGgzLFxuXHRoNCxcblx0aDUsXG5cdGg2IHtcblx0XHQmLmhpZ2hsaWdodCBzcGFuIHtcblx0XHRcdGJhY2tncm91bmQtcG9zaXRpb24teDogbGVmdDtcblx0XHRcdGJhY2tncm91bmQtc2l6ZTogMTAwJSAxMDAlO1xuXHRcdFx0Y29sb3I6IHZhcigtLWJsYWNrKTtcblx0XHR9XG5cdH1cbn1cblxuaDEsXG4uaDEge1xuXHRtYXJnaW4tdG9wOiAwO1xuXHRmb250LXNpemU6IHZhcigtLXNpemUtcGx1czYpO1xufVxuXG5oMixcbi5oMiB7XG5cdGZvbnQtc2l6ZTogdmFyKC0tc2l6ZS1wbHVzNSk7XG59XG5oMyxcbi5oMyB7XG5cdGZvbnQtc2l6ZTogdmFyKC0tc2l6ZS1wbHVzNCk7XG59XG5cbmg1LFxuLmg1IHtcblx0Zm9udC1zaXplOiB2YXIoLS1zaXplLXBsdXMzKTtcbn1cblxuaDQsXG4uaDQge1xuXHRmb250LXNpemU6IHZhcigtLXNpemUtcGx1czIpO1xufVxuXG5oNSxcbi5oNSB7XG5cdGZvbnQtc2l6ZTogdmFyKC0tc2l6ZS1wbHVzMSk7XG59XG5oNixcbi5oNiB7XG5cdGZvbnQtc2l6ZTogdmFyKC0tc2l6ZS1wbHVzMCk7XG59XG5cbnNtYWxsLFxuLnRleHRfc21hbGwge1xuXHRmb250LXNpemU6IHZhcigtLXNpemUtbWludXMyKTtcbn1cblxuYSB7XG5cdGNvbG9yOiB2YXIoLS1ibGFjayk7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0dHJhbnNpdGlvbjpcblx0XHRiYWNrZ3JvdW5kLWNvbG9yIDE1MG1zIGVhc2UsXG5cdFx0Y29sb3IgMTUwbXMgZWFzZTtcblx0Jjpob3ZlciB7XG5cdFx0Y29sb3I6IHZhcigtLWRhcmtncmV5KTtcblx0fVxufVxuXG4uYmlnLWxpbmsge1xuXHRmb250LWZhbWlseTogdmFyKC0taGVhZGVyLWZvbnQpO1xuXHR0ZXh0LXRyYW5zZm9ybTogbm9uZTtcblx0Zm9udC1zdHlsZTogbm9ybWFsO1xuXHRkaXNwbGF5OiBibG9jaztcblx0Zm9udC1zaXplOiB2YXIoLS1zaXplLXBsdXMzKTtcblx0bWFyZ2luOiAwO1xuXHRsaW5lLWhlaWdodDogMS4xMjU7XG59XG4uYnV0dG9uLWdyb3VwIHtcblx0ZGlzcGxheTogZmxleDtcblx0Z2FwOiAxLjhlbTtcblx0PiAqIHtcblx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdH1cbn1cblxuLmJ1dHRvbiB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJyYW5kKTtcblx0Y29sb3I6IHZhcigtLXdoaXRlKTtcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYnJhbmQpO1xuXHR0cmFuc2l0aW9uOiBhbGwgZWFzZSA1MDBtcztcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRwYWRkaW5nOiAwLjQ1ZW0gMS44ZW07XG5cdGJvcmRlci1yYWRpdXM6IDEuOGVtO1xuXHQmLmFjdGl2ZSxcblx0Jjpob3ZlciB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdFx0Y29sb3I6IHZhcigtLWJyYW5kKTtcblx0fVxuXHQmLmhvbGxvdyB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdFx0Y29sb3I6IHZhcigtLWJyYW5kKTtcblx0XHQmLmFjdGl2ZSxcblx0XHQmOmhvdmVyIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJyYW5kKTtcblx0XHRcdGNvbG9yOiB2YXIoLS13aGl0ZSk7XG5cdFx0fVxuXHRcdCYuaWNvbiB7XG5cdFx0XHRzdmcge1xuXHRcdFx0XHRnIHtcblx0XHRcdFx0XHRmaWxsOiB2YXIoLS1icmFuZCk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdHN2ZyB7XG5cdFx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAuMjVlbSk7XG5cdFx0XHRcdFx0ZyB7XG5cdFx0XHRcdFx0XHRmaWxsOiB2YXIoLS13aGl0ZSk7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cdCYuaWNvbiB7XG5cdFx0ZGlzcGxheTogaW5saW5lLWZsZXg7XG5cdFx0Z2FwOiAwLjllbTtcblx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdHN2ZyB7XG5cdFx0XHRnIHtcblx0XHRcdFx0ZmlsbDogdmFyKC0td2hpdGUpO1xuXHRcdFx0fVxuXHRcdFx0dHJhbnNpdGlvbjogYWxsIGVhc2UgNTAwbXM7XG5cdFx0fVxuXHRcdCY6aG92ZXIge1xuXHRcdFx0c3ZnIHtcblx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAuNDVlbSk7XG5cdFx0XHRcdGcge1xuXHRcdFx0XHRcdGZpbGw6IHZhcigtLWJyYW5kKTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG4uYnV0dG9uLXNpbXBsZSB7XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdGNvbG9yOiB2YXIoLS1ibGFjayk7XG5cdHRyYW5zaXRpb246IGFsbCBlYXNlIDUwMG1zO1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdGRpc3BsYXk6IGlubGluZS1mbGV4O1xuXHRnYXA6IDAuOWVtO1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRzdmcge1xuXHRcdGcge1xuXHRcdFx0ZmlsbDogdmFyKC0tYmxhY2spO1xuXHRcdH1cblx0XHR0cmFuc2l0aW9uOiBhbGwgZWFzZSA1MDBtcztcblx0fVxuXHQmOmhvdmVyIHtcblx0XHRzdmcge1xuXHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAuNDVlbSk7XG5cdFx0fVxuXHR9XG59XG5cbi5jdGEtYnV0dG9uIHtcblx0ZGlzcGxheTogaW5saW5lLWZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGNvbG9yOiB2YXIoLS1icmFuZCk7XG5cdGdhcDogMC42MjVlbTtcblx0c3ZnIGcge1xuXHRcdHN0cm9rZTogdmFyKC0tYnJhbmQpO1xuXHR9XG5cdHNwYW4ge1xuXHRcdGxpbmUtaGVpZ2h0OiAxO1xuXHRcdHRyYW5zaXRpb246IGFsbCBlYXNlIDUwMG1zO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHR9XG5cdCY6aG92ZXIge1xuXHRcdHNwYW4ge1xuXHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAuMjI1ZW0pO1xuXHRcdH1cblx0fVxufVxuXG4vLyBIRUFERVJcblxuaHRtbCxcbmJvZHkge1xuXHRzY3JvbGwtcGFkZGluZy10b3A6IDA7XG59XG5cbi8vIFdPUkRQUkVTUyBERUZBVUxUU1xuXG4ud3AtYmxvY2stZW1iZWQsXG5maWd1cmUud3AtYmxvY2staW1hZ2Uge1xuXHRtYXJnaW46IDEuOHJlbSBhdXRvO1xuXHRAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bS1icmVha3BvaW50KSB7XG5cdFx0bWFyZ2luOiAyLjhyZW0gYXV0bztcblx0fVxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4ud3AtYmxvY2stcXVvdGUge1xuXHRib3JkZXI6IG5vbmU7XG5cdHBhZGRpbmc6IDEuOHJlbSAwO1xuXHRtYXJnaW46IDEuOHJlbSAwO1xuXHQmLmhhcy1iYWNrZ3JvdW5kIHtcblx0XHRwYWRkaW5nOiAxLjhyZW07XG5cdFx0QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtZWRpdW0tYnJlYWtwb2ludCkge1xuXHRcdFx0cGFkZGluZzogMi44cmVtO1xuXHRcdH1cblx0XHRib3JkZXI6IG5vbmU7XG5cdH1cblx0Jixcblx0Y2l0ZSxcblx0cCB7XG5cdFx0dGV4dC1hbGlnbjogbGVmdDtcblx0XHRjb2xvcjogdmFyKC0tYmxhY2spO1xuXHRcdGZvbnQtc2l6ZTogMXJlbTtcblx0XHRAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bS1icmVha3BvaW50KSB7XG5cdFx0XHRmb250LXNpemU6IHZhcigtLXNpemUpO1xuXHRcdFx0Zm9udC1zaXplOiBtYXgoMS4xMjVyZW0sIHZhcigtLXNpemUtcGx1czApKTtcblx0XHR9XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0Zm9udC1zdHlsZTogaXRhbGljO1xuXHRcdG1heC13aWR0aDogMTAwJTtcblx0fVxuXHRjaXRlIHtcblx0XHRmb250LXdlaWdodDogdmFyKC0td2VpZ2h0LWJvbGQpO1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0Z2FwOiAwLjYyNWVtO1xuXHRcdG1hcmdpbjogMCAwIDAuOWVtIDA7XG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0fVxufVxuXG4vLyBOQVZJR0FUSU9OXG5cbmhlYWRlciNwcmltYXJ5IHtcblx0cG9zaXRpb246IGZpeGVkO1xuXHR0b3A6IDA7XG5cdGxlZnQ6IDA7XG5cdHdpZHRoOiAxMDAlO1xuXHRwYWRkaW5nOiAwLjlyZW0gMC40NXJlbTtcblx0QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtZWRpdW0tYnJlYWtwb2ludCkge1xuXHRcdHBhZGRpbmc6IDEuOHJlbSAwO1xuXHR9XG5cdHotaW5kZXg6IDk5OTtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmcpO1xuXHQmLmhlYWRyb29tIHtcblx0XHR3aWxsLWNoYW5nZTogdHJhbnNmb3JtO1xuXHRcdHRyYW5zaXRpb246IGFsbCA1MDBtcyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcblx0fVxuXHQmLmhlYWRyb29tLS1waW5uZWQge1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwJSk7XG5cdH1cblx0Ji5oZWFkcm9vbS0tdW5waW5uZWQge1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XG5cdH1cblx0Ji5oZWFkcm9vbS0tdG9wIHtcblx0XHQmLmhlYWRyb29tLS10b3AtdHJhbnNwYXJlbnQge1xuXHRcdFx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG5cdFx0XHQtLWJsYWNrOiAjZmZmO1xuXHRcdFx0LS1icmFuZDogI2ZmZjtcblx0XHR9XG5cdFx0Ly8gYSB7XG5cdFx0Ly8gXHRjb2xvcjogdmFyKC0td2hpdGUpO1xuXHRcdC8vIH1cblx0XHQvLyBtaXgtYmxlbmQtbW9kZTogY29sb3ItZG9kZ2U7XG5cdH1cblx0Ji5sb2dvLXNjYWxlLWFjdGl2ZSB7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAlKSAhaW1wb3J0YW50O1xuXHRcdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuXHRcdC0tYmxhY2s6ICNmZmY7XG5cdFx0LS1icmFuZDogI2ZmZjtcblx0XHRhLmxvZ28ge1xuXHRcdFx0cG9pbnRlci1ldmVudHM6IG5vbmU7XG5cdFx0fVxuXHR9XG5cblx0Ly8gbWl4LWJsZW5kLW1vZGU6IGV4Y2x1c2lvbjtcblx0Ly8gLS1ibGFjazogI2ZmZjtcblx0LmhhbWJ1cmdlciB7XG5cdFx0Ji5pcy1hY3RpdmUgLmxpbmU6bnRoLWNoaWxkKDEpIHtcblx0XHRcdG9wYWNpdHk6IDA7XG5cdFx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG5cdFx0XHQtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcblx0XHRcdC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG5cdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xuXHRcdH1cblxuXHRcdCYuaXMtYWN0aXZlIC5saW5lOm50aC1jaGlsZCgzKSB7XG5cdFx0XHRvcGFjaXR5OiAwO1xuXHRcdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG5cdFx0XHQtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xuXHRcdFx0LW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xuXHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xuXHRcdH1cblxuXHRcdC5saW5lIHtcblx0XHRcdHdpZHRoOiA1MHB4O1xuXHRcdFx0aGVpZ2h0OiAycHg7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icmFuZCk7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdG1hcmdpbjogOHB4IGF1dG87XG5cdFx0XHQtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xuXHRcdFx0LW8tdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG5cdFx0XHR0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcblx0XHR9XG5cblx0XHQmOmhvdmVyIHtcblx0XHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHR9XG5cdH1cblxuXHQubG9nbyB7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRzdmcsXG5cdFx0aW1nIHtcblx0XHRcdGhlaWdodDogMnJlbTtcblx0XHRcdEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtLWJyZWFrcG9pbnQpIHtcblx0XHRcdFx0aGVpZ2h0OiAzLjZyZW07XG5cdFx0XHR9XG5cdFx0fVxuXHRcdHN2ZyBnIHtcblx0XHRcdGZpbGw6IHZhcigtLWxvZ28pO1xuXHRcdH1cblx0fVxuXHQubWVudS1vdXRlciB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRmbGV4LWRpcmVjdGlvbjogcm93O1xuXHRcdGZsZXgtd3JhcDogbm93cmFwO1xuXHRcdGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRnYXA6IDEuOGVtO1xuXHRcdC5tZW51LWNlbGwtY29udGFpbmVyLW91dGVyIHtcblx0XHRcdGZvbnQtc2l6ZTogMXJlbTtcblx0XHRcdGJhY2tncm91bmQ6IG5vbmU7XG5cdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHR0cmFuc2l0aW9uOiBub25lO1xuXHRcdFx0cGFkZGluZy1ib3R0b206IDAuMjVlbTtcblx0XHRcdHBhZGRpbmctdG9wOiAwLjI1ZW07XG5cdFx0XHQmLmN0YSB7XG5cdFx0XHRcdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJsYWNrKTtcblx0XHRcdFx0cGFkZGluZzogMC45ZW0gMS44ZW07XG5cdFx0XHRcdGJvcmRlci1yYWRpdXM6IDMuNmVtO1xuXHRcdFx0fVxuXHRcdFx0Ji5hcHBlYXJfb25fcGFnZSxcblx0XHRcdCYuY3VycmVudF9wYWdlX2l0ZW0ge1xuXHRcdFx0XHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmxhY2spO1xuXHRcdFx0XHR0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMXMgdmFyKC0tZWFzaW5nKTtcblx0XHRcdH1cblx0XHRcdC5tZW51LWNlbGwtY29udGFpbmVyIHtcblx0XHRcdFx0Lm1lbnUtY2VsbC1pbm5lciB7XG5cdFx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0XHRcdG92ZXJmbG93OiBoaWRkZW47XG5cdFx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdFx0bGluZS1oZWlnaHQ6IDE7XG5cdFx0XHRcdFx0LmNlbGwtdGV4dCB7XG5cdFx0XHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRcdFx0XHR6LWluZGV4OiAyO1xuXHRcdFx0XHRcdFx0dHJhbnNpdGlvbjogdHJhbnNmb3JtIDFzIHZhcigtLWVhc2luZyk7XG5cdFx0XHRcdFx0XHRmb250LXNpemU6IHZhcigtLXNpemUtbWludXMxKTtcblx0XHRcdFx0XHRcdGxldHRlci1zcGFjaW5nOiAwLjAyZW07XG5cdFx0XHRcdFx0XHR0ZXh0LXRyYW5zZm9ybTogbm9uZTtcblx0XHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiB2YXIoLS13ZWlnaHQtYm9sZCk7XG5cdFx0XHRcdFx0XHRmb250LWZhbWlseTogdmFyKC0tYm9keS1mb250KTtcblx0XHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiB2YXIoLS13ZWlnaHQtbm9ybWFsKTtcblx0XHRcdFx0XHRcdGxpbmUtaGVpZ2h0OiB2YXIoLS1oZWFkZXItbGluZS1oZWlnaHQpO1xuXHRcdFx0XHRcdFx0Y29sb3I6IHZhcigtLWJyYW5kKTtcblx0XHRcdFx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRcdFx0XHRjb2xvcjogdmFyKC0tYmxhY2spO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0Ji5hYnNvbHV0ZSB7XG5cdFx0XHRcdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0XHRcdFx0dG9wOiAwO1xuXHRcdFx0XHRcdFx0XHR6LWluZGV4OiAxO1xuXHRcdFx0XHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMTAxJSk7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0Lm1lbnUtY2VsbC1jb250YWluZXIgLmNlbGwtdGV4dCB7XG5cdFx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUoMHB4LCAtMTAxJSk7XG5cdFx0XHRcdFx0Ji5hYnNvbHV0ZSB7XG5cdFx0XHRcdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwcHgsIDAlKTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuLy8gTU9CSUxFIE5BVlxuXG5uYXYjbW9iaWxlIHtcblx0ZGlzcGxheTogbm9uZTtcblx0QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtZWRpdW0tYnJlYWtwb2ludCkge1xuXHRcdGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcblx0fVxuXHR6LWluZGV4OiA5ODtcblx0YmFja2dyb3VuZDogdmFyKC0tYnJhbmQpO1xuXHRjb2xvcjogdmFyKC0tYmcpO1xuXHRkaXNwbGF5OiBibG9jaztcblx0cG9zaXRpb246IGZpeGVkO1xuXHRib3R0b206IDA7XG5cdGhlaWdodDogMTAwJTtcblx0bGVmdDogMDtcblx0d2lkdGg6IDEwMHZ3O1xuXHRwYWRkaW5nOiAwO1xuXHR0cmFuc2l0aW9uOiBhbGwgZWFzZSA1MDBtcztcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMHZ3KTtcblx0cG9pbnRlci1ldmVudHM6IG5vbmU7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRhbGlnbi1pdGVtczogZmxleC1zdGFydDtcblx0Ji5pcy1hY3RpdmUge1xuXHRcdHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcblx0fVxuXHQubW9iaWxlLWlubmVyIHtcblx0XHRwYWRkaW5nOiAxLjhyZW07XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdH1cblx0Lm1lbnUtY2VsbC1jb250YWluZXItb3V0ZXIgLm1lbnUtY2VsbC1jb250YWluZXIgLm1lbnUtY2VsbC1pbm5lciAuY2VsbC10ZXh0IHtcblx0XHRmb250LXNpemU6IHZhcigtLXNpemUtcGx1czIpO1xuXHR9XG5cdC5zb2NpYWwgLm1lbnUtY2VsbC1jb250YWluZXItb3V0ZXIgLm1lbnUtY2VsbC1jb250YWluZXIgLm1lbnUtY2VsbC1pbm5lciAuY2VsbC10ZXh0IHtcblx0XHRmb250LXNpemU6IHZhcigtLXNpemUtcGx1czIpO1xuXHR9XG5cblx0dWwge1xuXHRcdGxpc3Qtc3R5bGU6IG5vbmU7XG5cdFx0cGFkZGluZzogMC45cmVtO1xuXHRcdG1hcmdpbjogMC45ZW0gMDtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdFx0Z2FwOiAwO1xuXHRcdGxpIHtcblx0XHRcdHRleHQtdHJhbnNmb3JtOiBub25lO1xuXHRcdFx0Zm9udC1zaXplOiB2YXIoLS1zaXplLXBsdXMyKTtcblx0XHRcdCYsXG5cdFx0XHRhIHtcblx0XHRcdFx0Y29sb3I6IHZhcigtLWJnKTtcblx0XHRcdH1cblx0XHR9XG5cdFx0Ji5zb2NpYWwge1xuXHRcdFx0bGkge1xuXHRcdFx0XHRmb250LXNpemU6IHZhcigtLXNpemUpO1xuXHRcdFx0XHRmb250LXNpemU6IG1heCgwLjkyNXJlbSwgdmFyKC0tc2l6ZSkpO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG4vLyBCTE9DS1NcblxuLmJsb2NrIHtcblx0YmFja2dyb3VuZDogdmFyKC0td2hpdGUpO1xuXHR6LWluZGV4OiAxO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdGJhY2tncm91bmQ6IHZhcigtLWJnKTtcblx0Ly8gYW5pbWF0aW9uXG5cdC0tc2FsLWR1cmF0aW9uOiAzNjBtcztcblx0LS1zYWwtZWFzaW5nOiBjdWJpYy1iZXppZXIoMC4xMiwgMC42NywgMC41MywgMSk7XG5cdCYucGFkZGluZy1ib3R0b20tZXh0cmEge1xuXHRcdHBhZGRpbmctYm90dG9tOiA1LjJyZW07XG5cblx0XHRAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bS1icmVha3BvaW50KSB7XG5cdFx0XHRwYWRkaW5nLWJvdHRvbTogMTAuMnJlbTtcblx0XHR9XG5cdH1cblx0Ji5wYWRkaW5nLXRvcC1leHRyYSB7XG5cdFx0cGFkZGluZy10b3A6IDUuMnJlbTtcblxuXHRcdEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtLWJyZWFrcG9pbnQpIHtcblx0XHRcdHBhZGRpbmctdG9wOiAxMC4ycmVtO1xuXHRcdH1cblx0fVxuXHQmLnBhZGRpbmctYm90dG9tLW5vcm1hbCB7XG5cdFx0cGFkZGluZy1ib3R0b206IDMuNnJlbTtcblx0fVxuXHQmLnBhZGRpbmctdG9wLW5vcm1hbCB7XG5cdFx0cGFkZGluZy10b3A6IDMuNnJlbTtcblx0fVxuXHQmLnBhZGRpbmctYm90dG9tLXJlZHVjZSB7XG5cdFx0cGFkZGluZy1ib3R0b206IDEuOHJlbTtcblx0fVxuXHQmLnBhZGRpbmctdG9wLXJlZHVjZSB7XG5cdFx0cGFkZGluZy10b3A6IDEuOHJlbTtcblx0fVxuXHQmLnBhZGRpbmctYm90dG9tLW5vbmUge1xuXHRcdHBhZGRpbmctYm90dG9tOiAwO1xuXHR9XG5cdCYucGFkZGluZy10b3Atbm9uZSB7XG5cdFx0cGFkZGluZy10b3A6IDA7XG5cdH1cblx0Ji5tYXJnaW4tYm90dG9tLWV4dHJhIHtcblx0XHRAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bS1icmVha3BvaW50KSB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiA2LjRyZW07XG5cdFx0fVxuXHR9XG5cdCYubWFyZ2luLXRvcC1leHRyYSB7XG5cdFx0bWFyZ2luLXRvcDogNC42cmVtO1xuXHRcdEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtLWJyZWFrcG9pbnQpIHtcblx0XHRcdG1hcmdpbi10b3A6IDYuNHJlbTtcblx0XHR9XG5cdH1cblx0Ji5tYXJnaW4tYm90dG9tLW5vcm1hbCB7XG5cdFx0bWFyZ2luLWJvdHRvbTogMy42cmVtO1xuXHR9XG5cdCYubWFyZ2luLXRvcC1ub3JtYWwge1xuXHRcdG1hcmdpbi10b3A6IDMuNnJlbTtcblx0fVxuXHQmLm1hcmdpbi1ib3R0b20tcmVkdWNlIHtcblx0XHRtYXJnaW4tYm90dG9tOiAxLjhyZW07XG5cdH1cblx0Ji5tYXJnaW4tdG9wLXJlZHVjZSB7XG5cdFx0bWFyZ2luLXRvcDogMS44cmVtO1xuXHR9XG5cdCYubWFyZ2luLWJvdHRvbS1ub25lIHtcblx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHR9XG5cdCYubWFyZ2luLXRvcC1ub25lIHtcblx0XHRtYXJnaW4tdG9wOiAwO1xuXHR9XG5cblx0Ji5ibG9jay10ZXh0LXNpbXBsZSB7XG5cdFx0bWFyZ2luLXRvcDogdmFyKC0taGVhZGVyLWhlaWdodCk7XG5cdFx0bWFyZ2luLWJvdHRvbTogdmFyKC0taGVhZGVyLWhlaWdodCk7XG5cdH1cblx0Ly8gYmxvY2sgdHlwZXNcblx0Ji5saW5lIHtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRoZWlnaHQ6IDFweDtcblx0XHRiYWNrZ3JvdW5kOiB2YXIoLS1ibGFjayk7XG5cdH1cblx0Ji5icmVhayB7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0aGVpZ2h0OiAyLjdlbTtcblx0XHRAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuXHRcdFx0aGVpZ2h0OiAzLjZlbTtcblx0XHR9XG5cdH1cblx0Ji5ibG9jay1jdGEtdGV4dCB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbGlnaHRncmV5KTtcblx0fVxuXHQmLm1lZGlhLFxuXHQmLm1lZGlhLWJsb2NrLFxuXHQmLm1lZGlhLXJvdy1sYXlvdXQge1xuXHRcdHBhZGRpbmctdG9wOiAxLjhyZW07XG5cdFx0Ji4tLWRpc2FibGUtcGFkZGluZy10b3Age1xuXHRcdFx0cGFkZGluZy10b3A6IDA7XG5cdFx0fVxuXHRcdHBhZGRpbmctYm90dG9tOiAxLjhyZW07XG5cdFx0Ji4tLWRpc2FibGUtcGFkZGluZy1ib3R0b20ge1xuXHRcdFx0cGFkZGluZy1ib3R0b206IDA7XG5cdFx0fVxuXHRcdC5mbGV4LWltYWdlLFxuXHRcdC5mbGV4LXZpZGVvIHtcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdHotaW5kZXg6IDE7XG5cdFx0fVxuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHQubG9nbyB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0YWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0dG9wOiAwO1xuXHRcdFx0bGVmdDogMDtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdFx0ei1pbmRleDogMjtcblx0XHRcdG9iamVjdCxcblx0XHRcdHN2Zyxcblx0XHRcdGltZyB7XG5cdFx0XHRcdHBhZGRpbmc6IDAuNDVyZW07XG5cdFx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdFx0d2lkdGg6IGF1dG87XG5cdFx0XHRcdEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbWVkaXVtLWJyZWFrcG9pbnQpIHtcblx0XHRcdFx0XHRoZWlnaHQ6IDEwMHZ3O1xuXHRcdFx0XHRcdHBhZGRpbmc6IDEuOHJlbTtcblx0XHRcdFx0XHRtYXgtd2lkdGg6IDMuNnJlbTtcblx0XHRcdFx0XHRtYXJnaW4tcmlnaHQ6IDAuOXJlbTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXHQmLmVtYmVkLWJsb2NrIHtcblx0XHQuLS1vcGVuLWVtYmVkIHtcblx0XHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHR9XG5cdFx0LmFjdGl2ZSAucGxheS1pY29uIHtcblx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0fVxuXHRcdC5wbGF5LWljb24ge1xuXHRcdFx0ZmlsbDogdmFyKC0tYmcpO1xuXHRcdFx0d2lkdGg6IDEwdnc7XG5cdFx0XHRoZWlnaHQ6IGF1dG87XG5cdFx0fVxuXHRcdC5lbWJlZC1sYXllciB7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHR0b3A6IDA7XG5cdFx0XHRsZWZ0OiAwO1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0XHQuZ3JpZC1jb250YWluZXIsXG5cdFx0XHQuZ3JpZC14IHtcblx0XHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXHQmLmZvcm0tYmxvY2sge1xuXHRcdG1hcmdpbi10b3A6IDA7XG5cdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0XHRwYWRkaW5nLXRvcDogMS44cmVtO1xuXHRcdHBhZGRpbmctYm90dG9tOiAxLjhyZW07XG5cdFx0QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtZWRpdW0tYnJlYWtwb2ludCkge1xuXHRcdFx0cGFkZGluZy10b3A6IDMuNnJlbTtcblx0XHRcdHBhZGRpbmctYm90dG9tOiAzLjZyZW07XG5cdFx0fVxuXHRcdGZvcm0gPiBkaXYge1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGdhcDogMy42ZW0gMS44ZW07XG5cdFx0XHRmbGV4LWRpcmVjdGlvbjogcm93O1xuXHRcdFx0ZmxleC13cmFwOiB3cmFwO1xuXHRcdFx0Lm1jLWZpZWxkLWdyb3VwIHtcblx0XHRcdFx0ZmxleC1iYXNpczogY2FsYyg1MCUgLSAxLjhlbSk7XG5cdFx0XHRcdEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtLWJyZWFrcG9pbnQpIHtcblx0XHRcdFx0XHRmbGV4LWJhc2lzOiBjYWxjKDI1JSAtIDEuOGVtKTtcblx0XHRcdFx0fVxuXHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRcdGxhYmVsIHtcblx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdFx0Ym90dG9tOiAwO1xuXHRcdFx0XHRcdGxlZnQ6IDA7XG5cdFx0XHRcdFx0cG9pbnRlci1ldmVudHM6IG5vbmU7XG5cdFx0XHRcdFx0ei1pbmRleDogMjtcblx0XHRcdFx0XHRwYWRkaW5nOiAwLjlyZW0gMDtcblx0XHRcdFx0XHRvcGFjaXR5OiAxO1xuXHRcdFx0XHRcdGNvbG9yOiB2YXIoLS1tZWRpdW1ncmV5KTtcblx0XHRcdFx0XHR0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZTtcblx0XHRcdFx0XHRsaW5lLWhlaWdodDogMS4zNXJlbTtcblx0XHRcdFx0fVxuXHRcdFx0XHRpbnB1dCB7XG5cdFx0XHRcdFx0bGluZS1oZWlnaHQ6IDEuMzVyZW07XG5cdFx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdFx0cGFkZGluZzogMC45cmVtIDA7XG5cdFx0XHRcdFx0Ym9yZGVyOiBub25lO1xuXHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXHRcdFx0XHRcdGJvcmRlci1ib3R0b206IHZhcigtLWxpbmUpO1xuXHRcdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdFx0XHR6LWluZGV4OiAxO1xuXHRcdFx0XHR9XG5cdFx0XHRcdGxhYmVsLmFjdGl2ZSxcblx0XHRcdFx0aW5wdXQ6Zm9jdXMgKyBsYWJlbCB7XG5cdFx0XHRcdFx0b3BhY2l0eTogMDtcblx0XHRcdFx0fVxuXHRcdFx0XHQuYXN0ZXJpc2sge1xuXHRcdFx0XHRcdGNvbG9yOiByZWQ7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdC5jbGVhciB7XG5cdFx0XHRcdGZsZXgtYmFzaXM6IDEwMCU7XG5cdFx0XHR9XG5cdFx0XHRpbnB1dCNtYy1lbWJlZGRlZC1zdWJzY3JpYmUge1xuXHRcdFx0XHRAZXh0ZW5kIC5mbGV4LWJ1dHRvbjtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQmLm1lZGlhLWJsb2NrIHtcblx0XHQuZmxleC1pbWFnZSB7XG5cdFx0XHRtYXJnaW46IDA7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdGxpbmUtaGVpZ2h0OiAxO1xuXHRcdFx0aW1nIHtcblx0XHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdFx0XHRvYmplY3QtZml0OiBjb3Zlcjtcblx0XHRcdH1cblx0XHR9XG5cdFx0LmdyaWQteS1vdXRlci1jZWxsLWNvbnRhaW5lciB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0YWxpZ24taXRlbXM6IHN0cmV0Y2g7XG5cdFx0XHQuZ3JpZC15LW91dGVyLWNlbGwge1xuXHRcdFx0XHRAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bS1icmVha3BvaW50KSB7XG5cdFx0XHRcdFx0Ly8gaGVpZ2h0OiAxMDAlO1xuXHRcdFx0XHRcdC5ncmlkLXktb3V0ZXIge1xuXHRcdFx0XHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdFx0XHRcdFx0Z2FwOiAxLjhyZW07XG5cdFx0XHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0XHRcdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHRcdFx0XHRcdC5ncmlkLXktaW5uZXIge1xuXHRcdFx0XHRcdFx0XHQmLmdyaWQteS1pbm5lci1maWxsIHtcblx0XHRcdFx0XHRcdFx0XHRmbGV4OiAxO1xuXHRcdFx0XHRcdFx0XHRcdC5mbGV4LWltYWdlIHtcblx0XHRcdFx0XHRcdFx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblx0Ji5tZWRpYSB7XG5cdFx0LmZsZXgtaGVpZ2h0IHtcblx0XHRcdG92ZXJmbG93OiBoaWRkZW47XG5cdFx0XHRoZWlnaHQ6IDEwMHZoO1xuXHRcdFx0aGVpZ2h0OiBjYWxjKDEwMHZoIC0gY2FsYyh2YXIoLS1tZW51aGVpZ2h0KSAqIDIpKTtcblx0XHRcdG1hcmdpbjogdmFyKC0tc2l6ZS1wbHVzNikgMDtcblx0XHRcdG1hcmdpbjogdmFyKC0tbWVudWhlaWdodCkgMDtcblx0XHR9XG5cdFx0LmFsaWduLWJvdHRvbSAuZmxleC1oZWlnaHQge1xuXHRcdFx0aGVpZ2h0OiBjYWxjKDEwMHZoIC0gdmFyKC0tbWVudWhlaWdodCkpO1xuXHRcdFx0bWFyZ2luOiB2YXIoLS1zaXplLXBsdXM2KSAwIDAgMDtcblx0XHRcdG1hcmdpbjogdmFyKC0tbWVudWhlaWdodCkgMCAwIDA7XG5cdFx0fVxuXHRcdCYuLS1pcy1hZG1pbiB7XG5cdFx0XHQuZmxleC1oZWlnaHQge1xuXHRcdFx0XHRtaW4taGVpZ2h0OiA0MHZ3O1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXHQmLm1lZGlhLWhlYWRlciB7XG5cdFx0LmdyaWQteCB7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0fVxuXHRcdC5saW5rLW1hc2sge1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0ei1pbmRleDogMztcblx0XHRcdHRvcDogMDtcblx0XHRcdGxlZnQ6IDA7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdGhlaWdodDogMTAwJTtcblx0XHR9XG5cdFx0LmhlYWRlci1hcmVhIHtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdGJvdHRvbTogMDtcblx0XHRcdGxlZnQ6IDA7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdHBhZGRpbmc6IDEuOHJlbTtcblx0XHRcdEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtLWJyZWFrcG9pbnQpIHtcblx0XHRcdFx0cGFkZGluZzogMy42cmVtO1xuXHRcdFx0XHR3aWR0aDogNDAlO1xuXHRcdFx0fVxuXHRcdFx0ei1pbmRleDogNDtcblx0XHRcdC0tYmxhY2s6IHZhcigtLXdoaXRlKTtcblx0XHRcdHAsXG5cdFx0XHRoMSxcblx0XHRcdGgyLFxuXHRcdFx0aDMsXG5cdFx0XHRoNCxcblx0XHRcdGg1LFxuXHRcdFx0aDYge1xuXHRcdFx0XHRjb2xvcjogdmFyKC0tYmxhY2spO1xuXHRcdFx0XHRmb250LXNpemU6IHZhcigtLXNpemUtcGx1czIpO1xuXHRcdFx0XHRtYXJnaW46IDA7XG5cdFx0XHR9XG5cblx0XHRcdC5jdGEge1xuXHRcdFx0XHQuY3RhLWNvbnRhaW5lciB7XG5cdFx0XHRcdFx0Z2FwOiAwLjllbTtcblx0XHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHRcdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XHRcdFx0XHRmb250LXdlaWdodDogdmFyKC0td2VpZ2h0LWJvbGQpO1xuXHRcdFx0XHRcdGltZyB7XG5cdFx0XHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRcdFx0XHR0cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDtcblx0XHRcdFx0XHRcdGhlaWdodDogMWVtO1xuXHRcdFx0XHRcdFx0d2lkdGg6IGF1dG87XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdGNvbG9yOiB2YXIoLS1ibGFjayk7XG5cdFx0XHRcdFx0dHJhbnNpdGlvbjogYWxsIGVhc2UgNTAwbXM7XG5cdFx0XHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdFx0XHRjb2xvcjogdmFyKC0tYmxhY2spO1xuXHRcdFx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAuOWVtKTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQmLmJsb2NrLWZhcSxcblx0Ji5ibG9jay1zaW1wbGV0ZXh0bGlzdCB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmcpO1xuXHRcdG1hcmdpbi10b3A6IDEuOHJlbTtcblx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHRcdEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtLWJyZWFrcG9pbnQpIHtcblx0XHRcdG1hcmdpbi10b3A6IDMuNnJlbTtcblx0XHR9XG5cdFx0LnNpbXBsZS10ZXh0LWxpc3QtY29udGFpbmVyIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnKTtcblx0XHRcdHBhZGRpbmctYm90dG9tOiAxLjhyZW07XG5cdFx0XHRwYWRkaW5nLXRvcDogMS44cmVtO1xuXHRcdFx0QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtZWRpdW0tYnJlYWtwb2ludCkge1xuXHRcdFx0XHRwYWRkaW5nLWJvdHRvbTogMy42cmVtO1xuXHRcdFx0XHRwYWRkaW5nLXRvcDogMy42cmVtO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC8vIEZBUVxuXHRcdC5mYXEtY29udGFpbmVyIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnKTtcblx0XHRcdHBhZGRpbmctYm90dG9tOiAwLjlyZW07XG5cdFx0XHRwYWRkaW5nLXRvcDogMC45cmVtO1xuXHRcdFx0aDIge1xuXHRcdFx0XHRjb2xvcjogdmFyKC0tYmxhY2spO1xuXHRcdFx0XHRtYXJnaW46IDA7XG5cdFx0XHR9XG5cdFx0XHQucXVlc3Rpb24ge1xuXHRcdFx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdFx0aDIge1xuXHRcdFx0XHRcdHRyYW5zaXRpb246IGFsbCBlYXNlIDUwMG1zO1xuXHRcdFx0XHR9XG5cdFx0XHRcdHN2ZyB7XG5cdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRcdHJpZ2h0OiAxLjhyZW07XG5cdFx0XHRcdFx0aGVpZ2h0OiB2YXIoLS1zaXplLXBsdXMyKTtcblx0XHRcdFx0XHR3aWR0aDogYXV0bztcblx0XHRcdFx0XHR0b3A6IDUwJTtcblx0XHRcdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG5cdFx0XHRcdFx0dHJhbnNpdGlvbjogYWxsIGVhc2UgNTAwbXM7XG5cdFx0XHRcdH1cblx0XHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdFx0aDIge1xuXHRcdFx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAuNDVlbSk7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHRcdCYuYWN0aXZlLFxuXHRcdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0XHRzdmcge1xuXHRcdFx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHJvdGF0ZSgxODBkZWcpO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdFx0LmFuc3dlciB7XG5cdFx0XHRcdG92ZXJmbG93OiBoaWRkZW47IC8qIEVuc3VyZSBjb250ZW50IGRvZXNuJ3Qgc2hvdyBiZWZvcmUgYW5pbWF0aW9uICovXG5cdFx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cblx0XHRcdFx0Ji1pbm5lciB7XG5cdFx0XHRcdFx0cGFkZGluZy10b3A6IDMuNnJlbTtcblx0XHRcdFx0XHRAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bS1icmVha3BvaW50KSB7XG5cdFx0XHRcdFx0XHRwYWRkaW5nLXRvcDogNS42cmVtO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG4vLyBGTEVYIEFMSUdOTUVOVFNcbkBtaXhpbiBmb3VuZGF0aW9uLXJlc3BvbnNpdmUtZmxleC1hbGlnbm1lbnQge1xuXHQvLyBHZXQgdGhlIGJyZWFrcG9pbnRzIGZyb20gRm91bmRhdGlvbidzIGdsb2JhbCBzZXR0aW5nc1xuXHQkYnJlYWtwb2ludHM6IChcInNtYWxsXCIsIFwibWVkaXVtXCIsIFwibGFyZ2VcIik7XG5cblx0Ly8gRGVmaW5lIGhvcml6b250YWwgYWxpZ25tZW50IHR5cGVzIChqdXN0aWZ5LWNvbnRlbnQpXG5cdCRoLWFsaWdubWVudHM6IChcblx0XHRcImxlZnRcIjogZmxleC1zdGFydCxcblx0XHRcInJpZ2h0XCI6IGZsZXgtZW5kLFxuXHRcdFwiY2VudGVyXCI6IGNlbnRlcixcblx0XHRcImp1c3RpZnlcIjogc3BhY2UtYmV0d2Vlbixcblx0XHRcInNwYWNlZFwiOiBzcGFjZS1hcm91bmRcblx0KTtcblxuXHQvLyBEZWZpbmUgdmVydGljYWwgYWxpZ25tZW50IHR5cGVzIChhbGlnbi1pdGVtcylcblx0JHYtYWxpZ25tZW50czogKFxuXHRcdFwidG9wXCI6IGZsZXgtc3RhcnQsXG5cdFx0XCJtaWRkbGVcIjogY2VudGVyLFxuXHRcdFwiYm90dG9tXCI6IGZsZXgtZW5kLFxuXHRcdFwic3RyZXRjaFwiOiBzdHJldGNoXG5cdCk7XG5cblx0Ly8gQ3JlYXRlIHN0YW5kYXJkIGhvcml6b250YWwgYWxpZ25tZW50IGNsYXNzZXNcblx0QGVhY2ggJGFsaWduLCAkdmFsdWUgaW4gJGgtYWxpZ25tZW50cyB7XG5cdFx0LmFsaWduLSN7JGFsaWdufSB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0anVzdGlmeS1jb250ZW50OiAkdmFsdWU7XG5cdFx0fVxuXHR9XG5cblx0Ly8gQ3JlYXRlIHN0YW5kYXJkIHZlcnRpY2FsIGFsaWdubWVudCBjbGFzc2VzXG5cdEBlYWNoICRhbGlnbiwgJHZhbHVlIGluICR2LWFsaWdubWVudHMge1xuXHRcdC5hbGlnbi0jeyRhbGlnbn0ge1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGFsaWduLWl0ZW1zOiAkdmFsdWU7XG5cdFx0fVxuXHR9XG5cblx0Ly8gQ3JlYXRlIHJlc3BvbnNpdmUgYWxpZ25tZW50IGNsYXNzZXMgZm9yIGVhY2ggYnJlYWtwb2ludFxuXHRAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludHMge1xuXHRcdEBpZiAkc2l6ZSA9PSBcInNtYWxsXCIge1xuXHRcdFx0Ly8gRm9yIHNtYWxsIHNjcmVlbnMsIHdlIGRvbid0IG5lZWQgYSBtZWRpYSBxdWVyeSAobW9iaWxlIGZpcnN0KVxuXHRcdFx0Ly8gSG9yaXpvbnRhbCBhbGlnbm1lbnRzXG5cdFx0XHRAZWFjaCAkYWxpZ24sICR2YWx1ZSBpbiAkaC1hbGlnbm1lbnRzIHtcblx0XHRcdFx0LiN7JHNpemV9LWFsaWduLSN7JGFsaWdufSB7XG5cdFx0XHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6ICR2YWx1ZTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQvLyBWZXJ0aWNhbCBhbGlnbm1lbnRzXG5cdFx0XHRAZWFjaCAkYWxpZ24sICR2YWx1ZSBpbiAkdi1hbGlnbm1lbnRzIHtcblx0XHRcdFx0LiN7JHNpemV9LWFsaWduLSN7JGFsaWdufSB7XG5cdFx0XHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdFx0XHRhbGlnbi1pdGVtczogJHZhbHVlO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fSBAZWxzZSBpZiAkc2l6ZSA9PSBcIm1lZGl1bVwiIHtcblx0XHRcdC8vIFVzZSBleHBsaWNpdCBtZWRpYSBxdWVyaWVzIGJhc2VkIG9uIEZvdW5kYXRpb24ncyBkZWZhdWx0IGJyZWFrcG9pbnRzXG5cdFx0XHRAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG5cdFx0XHRcdC8vIEhvcml6b250YWwgYWxpZ25tZW50c1xuXHRcdFx0XHRAZWFjaCAkYWxpZ24sICR2YWx1ZSBpbiAkaC1hbGlnbm1lbnRzIHtcblx0XHRcdFx0XHQuI3skc2l6ZX0tYWxpZ24tI3skYWxpZ259IHtcblx0XHRcdFx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRcdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6ICR2YWx1ZTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQvLyBWZXJ0aWNhbCBhbGlnbm1lbnRzXG5cdFx0XHRcdEBlYWNoICRhbGlnbiwgJHZhbHVlIGluICR2LWFsaWdubWVudHMge1xuXHRcdFx0XHRcdC4jeyRzaXplfS1hbGlnbi0jeyRhbGlnbn0ge1xuXHRcdFx0XHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdFx0XHRcdGFsaWduLWl0ZW1zOiAkdmFsdWU7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fSBAZWxzZSBpZiAkc2l6ZSA9PSBcImxhcmdlXCIge1xuXHRcdFx0QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuXHRcdFx0XHQvLyBIb3Jpem9udGFsIGFsaWdubWVudHNcblx0XHRcdFx0QGVhY2ggJGFsaWduLCAkdmFsdWUgaW4gJGgtYWxpZ25tZW50cyB7XG5cdFx0XHRcdFx0LiN7JHNpemV9LWFsaWduLSN7JGFsaWdufSB7XG5cdFx0XHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0XHRcdFx0anVzdGlmeS1jb250ZW50OiAkdmFsdWU7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cblx0XHRcdFx0Ly8gVmVydGljYWwgYWxpZ25tZW50c1xuXHRcdFx0XHRAZWFjaCAkYWxpZ24sICR2YWx1ZSBpbiAkdi1hbGlnbm1lbnRzIHtcblx0XHRcdFx0XHQuI3skc2l6ZX0tYWxpZ24tI3skYWxpZ259IHtcblx0XHRcdFx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRcdFx0XHRhbGlnbi1pdGVtczogJHZhbHVlO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG4vLyBHZW5lcmF0ZSByZXNwb25zaXZlIGZsZXggYWxpZ25tZW50IGNsYXNzZXNcbkBpbmNsdWRlIGZvdW5kYXRpb24tcmVzcG9uc2l2ZS1mbGV4LWFsaWdubWVudDtcblxuLmNhcHRpb24taW5saW5lIHtcblx0bWFyZ2luOiAtMC45cmVtIDAgMS44cmVtO1xuXHQmLmNhcHRpb24tbWFyZ2luIHtcblx0XHRtYXJnaW46IDAuOXJlbSAwIDEuOHJlbTtcblx0fVxufVxuXG4uc3RhZmYtcHJvZmlsZSB7XG5cdGg0IHtcblx0XHRtYXJnaW46IDAuOXJlbSAwIDAuNDVyZW07XG5cdFx0Zm9udC1zaXplOiB2YXIoLS1zaXplLXBsdXMxKTtcblx0fVxuXHRwIHtcblx0XHRmb250LXNpemU6IHZhcigtLXNpemUtcGx1czApO1xuXHRcdG1hcmdpbjogMDtcblx0fVxufVxuXG4vLyBTUEFDRVJcbi5ibG9jay1zcGFjZXIge1xuXHRoZWlnaHQ6IGNhbGModmFyKC0taGVpZ2h0KSAqIDAuNSk7XG5cdEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtLWJyZWFrcG9pbnQpIHtcblx0XHRoZWlnaHQ6IHZhcigtLWhlaWdodCk7XG5cdH1cbn1cblxuLm5ld3Mtc2luZ2xlIHtcblx0aDMuaDQge1xuXHRcdG1hcmdpbjogMC45cmVtIDA7XG5cdH1cblx0cCB7XG5cdFx0Zm9udC1zaXplOiB2YXIoLS1zaXplLXBsdXMwKTtcblx0XHRhIHtcblx0XHRcdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuXHRcdH1cblx0fVxufVxuXG4uYmxvY2stcHJvamVjdHMtYmlnIHtcblx0LmdyaWQtY29udGFpbmVyIHtcblx0XHQmLFxuXHRcdC5ncmlkLXgsXG5cdFx0LmNlbGwge1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdH1cblx0fVxuXHQuYnV0dG9uLXNpbXBsZSB7XG5cdFx0bWFyZ2luLXRvcDogMC45ZW07XG5cdH1cblx0Li0tc3RpY2t5IHtcblx0XHRAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bS1icmVha3BvaW50KSB7XG5cdFx0XHRoZWlnaHQ6IDEwMHZoO1xuXHRcdFx0aGVpZ2h0OiBjYWxjKDEwMHZoIC0gdmFyKC0taGVhZGVyLWhlaWdodCkpO1xuXHRcdFx0LnRleHQtbWV0YSB7XG5cdFx0XHRcdG1heC13aWR0aDogNzUlO1xuXHRcdFx0XHRtYXJnaW4tdG9wOiBhdXRvO1xuXHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0XHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdFx0XHRcdGZsZXgtd3JhcDogd3JhcDtcblx0XHRcdFx0anVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcblx0XHRcdFx0cGFkZGluZzogMy42cmVtIDA7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdC50ZXh0LW1ldGEge1xuXHRcdFx0c3BhbiB7XG5cdFx0XHRcdGNvbG9yOiB2YXIoLS1ibGFjayk7XG5cdFx0XHR9XG5cdFx0XHRoMiB7XG5cdFx0XHRcdGZvbnQtc2l6ZTogdmFyKC0tc2l6ZS1wbHVzMyk7XG5cdFx0XHRcdG1hcmdpbjogMC45cmVtIDA7XG5cdFx0XHR9XG5cdFx0XHRwIHtcblx0XHRcdFx0bWFyZ2luOiAwO1xuXHRcdFx0XHRmb250LXNpemU6IHZhcigtLXNpemUtcGx1czEpO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC5pbWFnZS1jb250YWluZXIge1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdGhlaWdodDogMTUwdmg7XG5cdFx0aW1nLFxuXHRcdHZpZGVvIHtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdHRvcDogMDtcblx0XHRcdGxlZnQ6IDA7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdG9iamVjdC1maXQ6IGNvdmVyO1xuXHRcdH1cblx0fVxufVxuLmJsb2NrLXN0YXRzIHtcblx0Y29sb3I6IHZhcigtLWJsYWNrKTtcblx0cGFkZGluZy10b3A6IHZhcigtLWhlYWRlci1oZWlnaHQpO1xuXHRwYWRkaW5nLWJvdHRvbTogdmFyKC0taGVhZGVyLWhlaWdodCk7XG5cblx0LnN0YXRzLXBhbmVsIHtcblx0XHRwYWRkaW5nLXJpZ2h0OiAxLjhlbTtcblx0fVxuXHQuYmlnLW51bWJlciB7XG5cdFx0Zm9udC1mYW1pbHk6IHZhcigtLWhlYWRlci1mb250KTtcblx0XHRmb250LXNpemU6IHZhcigtLXNpemUtcGx1czUpO1xuXHRcdGZvbnQtd2VpZ2h0OiB2YXIoLS13ZWlnaHQtbm9ybWFsKTtcblx0XHR3aGl0ZS1zcGFjZTogbm93cmFwO1xuXHRcdD4gc3BhbiB7XG5cdFx0XHRkaXNwbGF5OiBpbmxpbmU7XG5cdFx0fVxuXHR9XG5cdGgzIHtcblx0XHRmb250LXNpemU6IHZhcigtLXNpemUtcGx1czIpO1xuXHRcdG1hcmdpbjogMCAwIDEuOGVtIDA7XG5cdH1cblx0cCB7XG5cdFx0Zm9udC1zaXplOiB2YXIoLS1zaXplLXBsdXMwKTtcblx0fVxufVxuLmxpbmUtYnJlYWsge1xuXHRociB7XG5cdFx0bWFyZ2luOiBjYWxjKHZhcigtLWhlYWRlci1oZWlnaHQpICogMC41KSAwO1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdGJhY2tncm91bmQ6IHZhcigtLWJsYWNrKTtcblx0XHRib3JkZXI6IG5vbmU7XG5cdFx0aGVpZ2h0OiAxcHg7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0b3BhY2l0eTogMC4zMztcblx0fVxufVxuZm9vdGVyIHtcblx0aHIge1xuXHRcdG1hcmdpbjogY2FsYyh2YXIoLS1oZWFkZXItaGVpZ2h0KSAqIDAuNSkgMDtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRiYWNrZ3JvdW5kOiB2YXIoLS1ibGFjayk7XG5cdFx0Ym9yZGVyOiBub25lO1xuXHRcdGhlaWdodDogMXB4O1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdG9wYWNpdHk6IDAuMzM7XG5cdH1cbn1cbi5mb290ZXItc21hbGwge1xuXHRtYXJnaW4tdG9wOiAzLjZyZW07XG5cdG1hcmdpbi1ib3R0b206IDMuNnJlbTtcblx0cCB7XG5cdFx0Zm9udC1zaXplOiB2YXIoLS1zaXplLW1pbnVzMik7XG5cdFx0bWFyZ2luOiAwO1xuXHRcdGEge1xuXHRcdFx0dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG5cdFx0fVxuXHR9XG59XG5cbi8vIEZPUk1cblxuLmJsb2NrLXRleHQuYmxvY2sge1xuXHQuZnJtX2Zvcm1fZmllbGRzIHtcblx0XHQuSW5wdXQsXG5cdFx0LnAtRmF1eElucHV0LFxuXHRcdGlucHV0LFxuXHRcdHRleHRhcmVhIHtcblx0XHRcdCYsXG5cdFx0XHQmOmhvdmVyLFxuXHRcdFx0JjphY3RpdmUsXG5cdFx0XHQmOmZvY3VzIHtcblx0XHRcdFx0Ly8gYm94LXNoYWRvdzogdW5zZXQgIWltcG9ydGFudDtcblx0XHRcdFx0Ly8gYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuLmRvbmF0aW9uLXJlZGlyZWN0IHtcblx0LmRvbmF0aW9uLWFtb3VudC1zZWN0aW9ucyxcblx0LmRvbmF0aW9uLXR5cGUtbmF2IHtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRtYXJnaW46IDAgMCAwLjllbSAwO1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0Z2FwOiAwLjllbTtcblx0XHRAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bS1icmVha3BvaW50KSB7XG5cdFx0XHRtYXJnaW46IDAgMCAxLjhlbSAwO1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGdhcDogMS44ZW07XG5cdFx0fVxuXHR9XG5cdC5idXR0b24ge1xuXHRcdHBhZGRpbmctbGVmdDogMS44ZW07XG5cdFx0cGFkZGluZy1yaWdodDogMS44ZW07XG5cdFx0Zm9udC1zaXplOiB2YXIoLS1zaXplLXBsdXMwKTtcblx0XHRAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bS1icmVha3BvaW50KSB7XG5cdFx0XHRwYWRkaW5nLWxlZnQ6IDIuMzVlbTtcblx0XHRcdHBhZGRpbmctcmlnaHQ6IDIuMzVlbTtcblx0XHR9XG5cdH1cblx0LmFtb3VudC1idXR0b25zIHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGZsZXgtd3JhcDogd3JhcDtcblx0XHRnYXA6IDAuNjI1ZW07XG5cdFx0QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtZWRpdW0tYnJlYWtwb2ludCkge1xuXHRcdFx0Z2FwOiAxLjM1ZW07XG5cdFx0fVxuXHR9XG59XG5cbi50cmFuc3BhcmVudC1mb3JtIHtcblx0LmZybV9mb3JtX2ZpZWxkIHtcblx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHR9XG5cdGJ1dHRvbiB7XG5cdFx0d2lkdGg6IDEwMCUgIWltcG9ydGFudDtcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcblx0fVxuXHRpbnB1dCxcblx0dGV4dGFyZWEsXG5cdC5mcm1fc3R5bGVfZm9ybWlkYWJsZS1zdHlsZS53aXRoX2ZybV9zdHlsZVxuXHRcdC5mb3JtLWZpZWxkXG5cdFx0aW5wdXQ6bm90KFt0eXBlPVwiZmlsZVwiXSk6bm90KFt0eXBlPVwicmFuZ2VcIl0pOm5vdChbcmVhZG9ubHldKTpmb2N1cyxcblx0LmZybV9zdHlsZV9mb3JtaWRhYmxlLXN0eWxlLndpdGhfZnJtX3N0eWxlIHNlbGVjdDpmb2N1cyxcblx0LmZybV9zdHlsZV9mb3JtaWRhYmxlLXN0eWxlLndpdGhfZnJtX3N0eWxlIC5mb3JtLWZpZWxkIHRleHRhcmVhOmZvY3VzLFxuXHQuZnJtX3N0eWxlX2Zvcm1pZGFibGUtc3R5bGUud2l0aF9mcm1fc3R5bGUgLmZybV9mb2N1c19maWVsZCBpbnB1dFt0eXBlPVwidGV4dFwiXSxcblx0LmZybV9zdHlsZV9mb3JtaWRhYmxlLXN0eWxlLndpdGhfZnJtX3N0eWxlIC5mcm1fZm9jdXNfZmllbGQgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLFxuXHQuZnJtX3N0eWxlX2Zvcm1pZGFibGUtc3R5bGUud2l0aF9mcm1fc3R5bGUgLmZybV9mb2N1c19maWVsZCBpbnB1dFt0eXBlPVwiZW1haWxcIl0sXG5cdC5mcm1fc3R5bGVfZm9ybWlkYWJsZS1zdHlsZS53aXRoX2ZybV9zdHlsZSAuZnJtX2ZvY3VzX2ZpZWxkIGlucHV0W3R5cGU9XCJudW1iZXJcIl0sXG5cdC5mcm1fc3R5bGVfZm9ybWlkYWJsZS1zdHlsZS53aXRoX2ZybV9zdHlsZSAuZnJtX2ZvY3VzX2ZpZWxkIGlucHV0W3R5cGU9XCJ1cmxcIl0sXG5cdC5mcm1fc3R5bGVfZm9ybWlkYWJsZS1zdHlsZS53aXRoX2ZybV9zdHlsZSAuZnJtX2ZvY3VzX2ZpZWxkIGlucHV0W3R5cGU9XCJ0ZWxcIl0sXG5cdC5mcm1fc3R5bGVfZm9ybWlkYWJsZS1zdHlsZS53aXRoX2ZybV9zdHlsZSAuZnJtX2ZvY3VzX2ZpZWxkIGlucHV0W3R5cGU9XCJzZWFyY2hcIl0sXG5cdC5mcm1fZm9ybV9maWVsZHNfYWN0aXZlX3N0eWxlLFxuXHQuZnJtX3N0eWxlX2Zvcm1pZGFibGUtc3R5bGUud2l0aF9mcm1fc3R5bGUgLmZybV9mb2N1c19maWVsZCAuZnJtLWNhcmQtZWxlbWVudC5TdHJpcGVFbGVtZW50IHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuXHRcdGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuXHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1ibGFjaykgIWltcG9ydGFudDtcblx0XHRib3JkZXItcmFkaXVzOiAwcHggIWltcG9ydGFudDtcblx0XHRib3gtc2hhZG93OiB1bnNldCAhaW1wb3J0YW50O1xuXHR9XG59XG4jbmV3cy1zaW5nbGUsXG4jbmV3cy1ncmlkIHtcblx0cGFkZGluZy10b3A6IHZhcigtLWhlYWRlci1oZWlnaHQpO1xuXHRwYWRkaW5nLWJvdHRvbTogdmFyKC0taGVhZGVyLWhlaWdodCk7XG5cdEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtLWJyZWFrcG9pbnQpIHtcblx0XHRwYWRkaW5nLXRvcDogY2FsYyh2YXIoLS1oZWFkZXItaGVpZ2h0KSAqIDEuNSk7XG5cdFx0cGFkZGluZy1ib3R0b206IGNhbGModmFyKC0taGVhZGVyLWhlaWdodCkgKiAxLjUpO1xuXHR9XG59XG4jbmV3cy1zaW5nbGUge1xuXHQuY3RhLWJ1dHRvbiB7XG5cdFx0bWFyZ2luLWJvdHRvbTogY2FsYyh2YXIoLS1oZWFkZXItaGVpZ2h0KSAqIDEuMjUpO1xuXHRcdEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtLWJyZWFrcG9pbnQpIHtcblx0XHRcdG1hcmdpbi1ib3R0b206IGNhbGModmFyKC0taGVhZGVyLWhlaWdodCkgKiAwLjUpO1xuXHRcdH1cblx0fVxufVxuLmNhdGVnb3J5LWxpc3QgdWwge1xuXHRsaXN0LXN0eWxlOiBub25lO1xuXHRwYWRkaW5nOiAwO1xuXHRtYXJnaW46IDA7XG59XG5cbi8vIEZMRVggQUxJR05NRU5UU1xuQG1peGluIGZvdW5kYXRpb24tcmVzcG9uc2l2ZS1mbGV4LWFsaWdubWVudCB7XG5cdC8vIEdldCB0aGUgYnJlYWtwb2ludHMgZnJvbSBGb3VuZGF0aW9uJ3MgZ2xvYmFsIHNldHRpbmdzXG5cdCRicmVha3BvaW50czogKFwic21hbGxcIiwgXCJtZWRpdW1cIiwgXCJsYXJnZVwiKTtcblxuXHQvLyBEZWZpbmUgaG9yaXpvbnRhbCBhbGlnbm1lbnQgdHlwZXMgKGp1c3RpZnktY29udGVudClcblx0JGgtYWxpZ25tZW50czogKFxuXHRcdFwibGVmdFwiOiBmbGV4LXN0YXJ0LFxuXHRcdFwicmlnaHRcIjogZmxleC1lbmQsXG5cdFx0XCJjZW50ZXJcIjogY2VudGVyLFxuXHRcdFwianVzdGlmeVwiOiBzcGFjZS1iZXR3ZWVuLFxuXHRcdFwic3BhY2VkXCI6IHNwYWNlLWFyb3VuZFxuXHQpO1xuXG5cdC8vIERlZmluZSB2ZXJ0aWNhbCBhbGlnbm1lbnQgdHlwZXMgKGFsaWduLWl0ZW1zKVxuXHQkdi1hbGlnbm1lbnRzOiAoXG5cdFx0XCJ0b3BcIjogZmxleC1zdGFydCxcblx0XHRcIm1pZGRsZVwiOiBjZW50ZXIsXG5cdFx0XCJib3R0b21cIjogZmxleC1lbmQsXG5cdFx0XCJzdHJldGNoXCI6IHN0cmV0Y2hcblx0KTtcblxuXHQvLyBDcmVhdGUgc3RhbmRhcmQgaG9yaXpvbnRhbCBhbGlnbm1lbnQgY2xhc3Nlc1xuXHRAZWFjaCAkYWxpZ24sICR2YWx1ZSBpbiAkaC1hbGlnbm1lbnRzIHtcblx0XHQuYWxpZ24tI3skYWxpZ259IHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6ICR2YWx1ZTtcblx0XHR9XG5cdH1cblxuXHQvLyBDcmVhdGUgc3RhbmRhcmQgdmVydGljYWwgYWxpZ25tZW50IGNsYXNzZXNcblx0QGVhY2ggJGFsaWduLCAkdmFsdWUgaW4gJHYtYWxpZ25tZW50cyB7XG5cdFx0LmFsaWduLSN7JGFsaWdufSB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0YWxpZ24taXRlbXM6ICR2YWx1ZTtcblx0XHR9XG5cdH1cblxuXHQvLyBDcmVhdGUgcmVzcG9uc2l2ZSBhbGlnbm1lbnQgY2xhc3NlcyBmb3IgZWFjaCBicmVha3BvaW50XG5cdEBlYWNoICRzaXplIGluICRicmVha3BvaW50cyB7XG5cdFx0QGlmICRzaXplID09IFwic21hbGxcIiB7XG5cdFx0XHQvLyBGb3Igc21hbGwgc2NyZWVucywgd2UgZG9uJ3QgbmVlZCBhIG1lZGlhIHF1ZXJ5IChtb2JpbGUgZmlyc3QpXG5cdFx0XHQvLyBIb3Jpem9udGFsIGFsaWdubWVudHNcblx0XHRcdEBlYWNoICRhbGlnbiwgJHZhbHVlIGluICRoLWFsaWdubWVudHMge1xuXHRcdFx0XHQuI3skc2l6ZX0tYWxpZ24tI3skYWxpZ259IHtcblx0XHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0XHRcdGp1c3RpZnktY29udGVudDogJHZhbHVlO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdC8vIFZlcnRpY2FsIGFsaWdubWVudHNcblx0XHRcdEBlYWNoICRhbGlnbiwgJHZhbHVlIGluICR2LWFsaWdubWVudHMge1xuXHRcdFx0XHQuI3skc2l6ZX0tYWxpZ24tI3skYWxpZ259IHtcblx0XHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0XHRcdGFsaWduLWl0ZW1zOiAkdmFsdWU7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9IEBlbHNlIGlmICRzaXplID09IFwibWVkaXVtXCIge1xuXHRcdFx0Ly8gVXNlIGV4cGxpY2l0IG1lZGlhIHF1ZXJpZXMgYmFzZWQgb24gRm91bmRhdGlvbidzIGRlZmF1bHQgYnJlYWtwb2ludHNcblx0XHRcdEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcblx0XHRcdFx0Ly8gSG9yaXpvbnRhbCBhbGlnbm1lbnRzXG5cdFx0XHRcdEBlYWNoICRhbGlnbiwgJHZhbHVlIGluICRoLWFsaWdubWVudHMge1xuXHRcdFx0XHRcdC4jeyRzaXplfS1hbGlnbi0jeyRhbGlnbn0ge1xuXHRcdFx0XHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdFx0XHRcdGp1c3RpZnktY29udGVudDogJHZhbHVlO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXG5cdFx0XHRcdC8vIFZlcnRpY2FsIGFsaWdubWVudHNcblx0XHRcdFx0QGVhY2ggJGFsaWduLCAkdmFsdWUgaW4gJHYtYWxpZ25tZW50cyB7XG5cdFx0XHRcdFx0LiN7JHNpemV9LWFsaWduLSN7JGFsaWdufSB7XG5cdFx0XHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0XHRcdFx0YWxpZ24taXRlbXM6ICR2YWx1ZTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9IEBlbHNlIGlmICRzaXplID09IFwibGFyZ2VcIiB7XG5cdFx0XHRAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG5cdFx0XHRcdC8vIEhvcml6b250YWwgYWxpZ25tZW50c1xuXHRcdFx0XHRAZWFjaCAkYWxpZ24sICR2YWx1ZSBpbiAkaC1hbGlnbm1lbnRzIHtcblx0XHRcdFx0XHQuI3skc2l6ZX0tYWxpZ24tI3skYWxpZ259IHtcblx0XHRcdFx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRcdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6ICR2YWx1ZTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQvLyBWZXJ0aWNhbCBhbGlnbm1lbnRzXG5cdFx0XHRcdEBlYWNoICRhbGlnbiwgJHZhbHVlIGluICR2LWFsaWdubWVudHMge1xuXHRcdFx0XHRcdC4jeyRzaXplfS1hbGlnbi0jeyRhbGlnbn0ge1xuXHRcdFx0XHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdFx0XHRcdGFsaWduLWl0ZW1zOiAkdmFsdWU7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi8vIEdlbmVyYXRlIHJlc3BvbnNpdmUgZmxleCBhbGlnbm1lbnQgY2xhc3Nlc1xuQGluY2x1ZGUgZm91bmRhdGlvbi1yZXNwb25zaXZlLWZsZXgtYWxpZ25tZW50O1xuXG4uZ3JpZC14IHtcblx0d2lkdGg6IDEwMCU7XG59XG5cbmJsb2NrcXVvdGUge1xuXHRwYWRkaW5nOiAwO1xuXHRtYXJnaW46IDAgYXV0bztcblx0Ym9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG5cdHBhZGRpbmctdG9wOiAxLjhyZW07XG5cdHBhZGRpbmctYm90dG9tOiAxLjhyZW07XG5cdHRleHQtYWxpZ246IGxlZnQ7XG5cdD4gcCB7XG5cdFx0QGV4dGVuZCAubGVhZDtcblx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHR9XG5cdHAgYSxcblx0Y2l0ZSB7XG5cdFx0dGV4dC1hbGlnbjogbGVmdDtcblx0XHRmb250LWZhbWlseTogdmFyKC0taGVhZGVyLWZvbnQpO1xuXHRcdGZvbnQtd2VpZ2h0OiB2YXIoLS13ZWlnaHQtbm9ybWFsKTtcblx0XHRsaW5lLWhlaWdodDogdmFyKC0taGVhZGVyLWxpbmUtaGVpZ2h0KTtcblx0XHRmb250LXN0eWxlOiBpdGFsaWM7XG5cdFx0dGV4dC10cmFuc2Zvcm06IG5vbmU7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0Zm9udC1zaXplOiAwLjgxMjVyZW07XG5cdFx0cGFkZGluZzogMC45cmVtIDA7XG5cdFx0JjpiZWZvcmUge1xuXHRcdFx0Y29udGVudDogXCLigJQgXCI7XG5cdFx0fVxuXHRcdCYsXG5cdFx0YSB7XG5cdFx0XHRjb2xvcjogaW5oZXJpdDtcblx0XHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0XHR9XG5cdH1cblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR6LWluZGV4OiAyO1xuXHQmOmJlZm9yZSB7XG5cdFx0Y29udGVudDogXCJcXDIwMUMgXCI7XG5cdFx0Zm9udC1mYW1pbHk6IHZhcigtLWhlYWRlci1mb250KTtcblx0XHRmb250LXdlaWdodDogdmFyKC0td2VpZ2h0LW5vcm1hbCk7XG5cdFx0bGluZS1oZWlnaHQ6IHZhcigtLWhlYWRlci1saW5lLWhlaWdodCk7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHRvcDogMS44cmVtO1xuXHRcdGxlZnQ6IC0yLjdyZW07XG5cdFx0Zm9udC1zaXplOiAxNXZoO1xuXHRcdGNvbG9yOiB2YXIoLS1ibGFjayk7XG5cdFx0ei1pbmRleDogLTE7XG5cdFx0bGluZS1oZWlnaHQ6IDAuNjY7XG5cdFx0ei1pbmRleDogMTtcblx0XHRvcGFjaXR5OiAwLjA2Njtcblx0XHRmb250LXN0eWxlOiBub3JtYWw7XG5cdH1cbn1cblxuLm5vLXBhZGRpbmcge1xuXHRwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50O1xuXHRwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50O1xufVxuXG4uZG9uYXRpb24tdHJhY2tlciB7XG5cdHBvc2l0aW9uOiBmaXhlZDtcblx0Ym90dG9tOiAwO1xuXHRwYWRkaW5nOiAxLjhlbSAwO1xuXHRsZWZ0OiAwO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZyk7XG5cdHotaW5kZXg6IDk5OTk7XG5cdHdpZHRoOiAxMDAlO1xuXHRtaW4taGVpZ2h0OiAyLjdlbTtcblx0aDEsXG5cdHNwYW4ge1xuXHRcdG1hcmdpbjogMDtcblx0XHRmb250LXNpemU6IHZhcigtLXNpemUtbWludXMxKTtcblx0fVxuXHQuY291bnRlciB7XG5cdFx0bWFyZ2luLXJpZ2h0OiAxLjhlbTtcblx0fVxuXHQuYnV0dG9uIHtcblx0XHQtLWJyYW5kOiB2YXIoLS1ibHVlKTtcblx0XHQtLWJsYWNrOiB2YXIoLS1ibHVlKTtcblx0fVxuXHQudHJhY2tlciB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdGxlZnQ6IDA7XG5cdFx0dG9wOiAwO1xuXHRcdGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1lZGl1bWdyZXkpO1xuXHRcdGhlaWdodDogNHB4O1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdC5iYXIge1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0bGVmdDogMDtcblx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJsdWUpO1xuXHRcdFx0Ym90dG9tOiAwO1xuXHRcdFx0d2lkdGg6IHZhcigtLXdpZHRoKTtcblx0XHR9XG5cdH1cbn1cblxuYXJ0aWNsZSBhIHtcblx0dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG4uZm9vdGVyLXNtYWxsIHAgYS5iYWNrLXRvLXRvcCxcbi5iYWNrLXRvLXRvcCB7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0Zm9udC13ZWlnaHQ6IHZhcigtLXdlaWdodC1ib2xkKTtcblx0ZGlzcGxheTogaW5saW5lLWZsZXg7XG5cdGdhcDogMC40NWVtO1xuXHRzdmcge1xuXHRcdGhlaWdodDogMS4zMjVlbTtcblx0XHR3aWR0aDogYXV0bztcblx0fVxuXHRzcGFuIHtcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdH1cbn1cblxuLmNvdW50ZXItZG9uYXRlLWNvbnRhaW5lciB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGdhcDogMC40NWVtO1xuXHRmbGV4LWRpcmVjdGlvbjogcm93O1xuXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4uZG9uYXRpb24tZm9ybS1jb250YWluZXIge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRnYXA6IDAuNDVlbTtcblx0ZmxleC1kaXJlY3Rpb246IHJvdztcblx0LmRvbmF0aW9uLWZvcm0ge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0ZmxleC1kaXJlY3Rpb246IHJvdztcblx0XHRnYXA6IDAuOWVtO1xuXHR9XG5cblx0LmZvcm0tZ3JvdXAge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHRnYXA6IDAuOWVtO1xuXHR9XG5cblx0LmRvbmF0aW9uLXNlbGVjdCB7XG5cdFx0bWluLXdpZHRoOiAxNTBweDtcblx0XHRwYWRkaW5nOiAxMnB4IDE2cHg7XG5cdFx0Ym9yZGVyOiBub25lO1xuXHRcdGJvcmRlci1yYWRpdXM6IDhweDtcblx0XHRmb250LXNpemU6IDE2cHg7XG5cdFx0YmFja2dyb3VuZDogd2hpdGU7XG5cdFx0Y29sb3I6ICMzMzM7XG5cdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHRcdHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG5cdFx0YXBwZWFyYW5jZTogbm9uZTtcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD1VVEYtOCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMjQgMjQnIGZpbGw9J25vbmUnIHN0cm9rZT0nY3VycmVudENvbG9yJyBzdHJva2Utd2lkdGg9JzInIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCclM2UlM2Nwb2x5bGluZSBwb2ludHM9JzYsOSAxMiwxNSAxOCw5JyUzZSUzYy9wb2x5bGluZSUzZSUzYy9zdmclM2VcIik7XG5cdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAxMnB4IGNlbnRlcjtcblx0XHRiYWNrZ3JvdW5kLXNpemU6IDIwcHg7XG5cdFx0cGFkZGluZy1yaWdodDogNDVweDtcblx0XHRmb250LXNpemU6IHZhcigtLXNpemUtbWludXMxKTtcblx0fVxuXG5cdC5kb25hdGlvbi1zZWxlY3Q6Zm9jdXMge1xuXHRcdG91dGxpbmU6IG5vbmU7XG5cdFx0Ym94LXNoYWRvdzogMCAwIDAgM3B4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKTtcblx0fVxuXG5cdC5kb25hdGlvbi1zZWxlY3Q6aG92ZXIge1xuXHRcdGJveC1zaGFkb3c6IDAgNHB4IDE1cHggcmdiYSgwLCAwLCAwLCAwLjE1KTtcblx0fVxuXG5cdC5kb25hdGUtYnV0dG9uIHtcblx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdH1cblxuXHQuZG9uYXRlLWJ1dHRvbjphY3RpdmUge1xuXHRcdGJveC1zaGFkb3c6IDAgMnB4IDEwcHggcmdiYSg5LCA5LCA5LCAwLjIpO1xuXHR9XG59XG4iXX0= */