@import"https://use.typekit.net/exe1ahb.css";.acf-block-preview,[data-theme=cream],#tinymce,:root{--header-font: "canada-type-gibson", Helvetica, Roboto, Arial, sans-serif;--body-font: "canada-type-gibson", Helvetica, Roboto, Arial, sans-serif;--body-line-height: 1.4;--header-line-height: 1;--weight-normal: 400;--weight-sbold: 500;--weight-bold: 700;--size: 16px;--size-minus1: 0.707rem;--size-minus2: 0.875rem;--size-plus1: 1.05rem;--size-plus2: 1.1025rem;--size-plus3: 1.157625rem;--size-plus4: 1.21550625rem;--size-plus5: 1.2762815625rem;--size-plus6: 1.3400956406rem;--size-plus7: 1.4071004227rem;--size-plus8: 1.4774554438rem;--size-plus9: 1.551328216rem;--size-plus10: 1.6288946268rem;--size-plus11: 1.7103393581rem;--size-plus12: 1.795856326rem;--size-plus13: 1.9799315994rem;--size-plus-huge: 2.0789281794rem;--size-plus-mhuge: 2.3486198857rem;--size-plus-xhuge: 2.6532977051rem;--bg: #ffffff;--white: #ffffff;--black: #000000;--marqueecolor: var(--black);--offblack: #000000;--purewhite: #ffffff;--pureblack: #000;--lightgrey: #eaeae8;--mediumgrey: #575966;--grey: rgb(84, 84, 84);--cream: #fffdf5;--darkgrey: rgb(55, 55, 55);--red: #ff4050;--yellow: #fcc300;--blue: #56659c;--line: 1px solid var(--black)}@media print,screen and (min-width: 920px){.acf-block-preview,[data-theme=cream],#tinymce,:root{--size: 0.9075vw;--size-plus0: 1.1vw;--size-plus1: 1.2375vw;--size-plus2: 1.3921875vw;--size-plus3: 1.5662109375vw;--size-plus4: 1.661217562vw;--size-plus5: 1.9822357178vw;--size-plus6: 2.1653080438vw;--size-plus7: 2.3652882865vw;--size-plus8: 2.8223629653vw;--size-plus9: 3.175158336vw;--size-plus10: 3.572053128vw;--size-plus-huge: 6.4369557238vw;--size-plus-xhuge: 10.3107584237vw;--size-plus0: max(1.1vw, 1.125rem);--size-plus1: max(1.2375vw, 1.265625rem);--size-plus2: max(1.3921875vw, 1.423828125rem);--size-plus3: max(1.5662109375vw, 1.6018066406rem);--size-plus4: max(1.661217562vw, 1.6989725066rem);--size-plus5: max(1.9822357178vw, 2.0272865295rem);--size-plus6: max(2.1653080438vw, 2.2145195902rem);--size-plus7: 2.3652882865vw;--size-plus8: 2.8223629653vw;--size-plus9: 3.175158336vw;--size-plus10: 3.572053128vw;--size-plus11: 4.018559769vw;--size-plus12: 4.5208797401vw;--size-plus13: 4.5208797401vw;--size-plus-huge: 6.4369557238vw;--size-plus-mhuge: 6.4369557238vw;--size-plus-xhuge: 10.3107584237vw}}/*! 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=57.5em&large=87.5em&xlarge=100em&xxlarge=120em"}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:1.8rem;padding-left:1.8rem;max-width:118.75rem;margin-left:auto;margin-right:auto}.grid-container.fluid{padding-right:1.8rem;padding-left:1.8rem;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: 57.5em){.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: 87.5em){.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: 57.5em){.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: 87.5em){.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:-1.8rem;margin-right:-1.8rem}.grid-margin-x>.cell{width:calc(100% - 3.6rem);margin-left:1.8rem;margin-right:1.8rem}.grid-margin-x>.auto{width:auto}.grid-margin-x>.shrink{width:auto}.grid-margin-x>.small-1{width:calc(8.3333333333% - 3.6rem)}.grid-margin-x>.small-2{width:calc(16.6666666667% - 3.6rem)}.grid-margin-x>.small-3{width:calc(25% - 3.6rem)}.grid-margin-x>.small-4{width:calc(33.3333333333% - 3.6rem)}.grid-margin-x>.small-5{width:calc(41.6666666667% - 3.6rem)}.grid-margin-x>.small-6{width:calc(50% - 3.6rem)}.grid-margin-x>.small-7{width:calc(58.3333333333% - 3.6rem)}.grid-margin-x>.small-8{width:calc(66.6666666667% - 3.6rem)}.grid-margin-x>.small-9{width:calc(75% - 3.6rem)}.grid-margin-x>.small-10{width:calc(83.3333333333% - 3.6rem)}.grid-margin-x>.small-11{width:calc(91.6666666667% - 3.6rem)}.grid-margin-x>.small-12{width:calc(100% - 3.6rem)}@media print,screen and (min-width: 57.5em){.grid-margin-x>.medium-auto{width:auto}.grid-margin-x>.medium-shrink{width:auto}.grid-margin-x>.medium-1{width:calc(8.3333333333% - 3.6rem)}.grid-margin-x>.medium-2{width:calc(16.6666666667% - 3.6rem)}.grid-margin-x>.medium-3{width:calc(25% - 3.6rem)}.grid-margin-x>.medium-4{width:calc(33.3333333333% - 3.6rem)}.grid-margin-x>.medium-5{width:calc(41.6666666667% - 3.6rem)}.grid-margin-x>.medium-6{width:calc(50% - 3.6rem)}.grid-margin-x>.medium-7{width:calc(58.3333333333% - 3.6rem)}.grid-margin-x>.medium-8{width:calc(66.6666666667% - 3.6rem)}.grid-margin-x>.medium-9{width:calc(75% - 3.6rem)}.grid-margin-x>.medium-10{width:calc(83.3333333333% - 3.6rem)}.grid-margin-x>.medium-11{width:calc(91.6666666667% - 3.6rem)}.grid-margin-x>.medium-12{width:calc(100% - 3.6rem)}}@media print,screen and (min-width: 87.5em){.grid-margin-x>.large-auto{width:auto}.grid-margin-x>.large-shrink{width:auto}.grid-margin-x>.large-1{width:calc(8.3333333333% - 3.6rem)}.grid-margin-x>.large-2{width:calc(16.6666666667% - 3.6rem)}.grid-margin-x>.large-3{width:calc(25% - 3.6rem)}.grid-margin-x>.large-4{width:calc(33.3333333333% - 3.6rem)}.grid-margin-x>.large-5{width:calc(41.6666666667% - 3.6rem)}.grid-margin-x>.large-6{width:calc(50% - 3.6rem)}.grid-margin-x>.large-7{width:calc(58.3333333333% - 3.6rem)}.grid-margin-x>.large-8{width:calc(66.6666666667% - 3.6rem)}.grid-margin-x>.large-9{width:calc(75% - 3.6rem)}.grid-margin-x>.large-10{width:calc(83.3333333333% - 3.6rem)}.grid-margin-x>.large-11{width:calc(91.6666666667% - 3.6rem)}.grid-margin-x>.large-12{width:calc(100% - 3.6rem)}}.grid-padding-x .grid-padding-x{margin-right:-1.8rem;margin-left:-1.8rem}.grid-container:not(.full)>.grid-padding-x{margin-right:-1.8rem;margin-left:-1.8rem}.grid-padding-x>.cell{padding-right:1.8rem;padding-left:1.8rem}.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%}.small-up-9>.cell{width:11.1111111111%}.small-up-10>.cell{width:10%}.small-up-11>.cell{width:9.0909090909%}.small-up-12>.cell{width:8.3333333333%}@media print,screen and (min-width: 57.5em){.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%}.medium-up-9>.cell{width:11.1111111111%}.medium-up-10>.cell{width:10%}.medium-up-11>.cell{width:9.0909090909%}.medium-up-12>.cell{width:8.3333333333%}}@media print,screen and (min-width: 87.5em){.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%}.large-up-9>.cell{width:11.1111111111%}.large-up-10>.cell{width:10%}.large-up-11>.cell{width:9.0909090909%}.large-up-12>.cell{width:8.3333333333%}}.grid-margin-x.small-up-1>.cell{width:calc(100% - 3.6rem)}.grid-margin-x.small-up-2>.cell{width:calc(50% - 3.6rem)}.grid-margin-x.small-up-3>.cell{width:calc(33.3333333333% - 3.6rem)}.grid-margin-x.small-up-4>.cell{width:calc(25% - 3.6rem)}.grid-margin-x.small-up-5>.cell{width:calc(20% - 3.6rem)}.grid-margin-x.small-up-6>.cell{width:calc(16.6666666667% - 3.6rem)}.grid-margin-x.small-up-7>.cell{width:calc(14.2857142857% - 3.6rem)}.grid-margin-x.small-up-8>.cell{width:calc(12.5% - 3.6rem)}.grid-margin-x.small-up-9>.cell{width:calc(11.1111111111% - 3.6rem)}.grid-margin-x.small-up-10>.cell{width:calc(10% - 3.6rem)}.grid-margin-x.small-up-11>.cell{width:calc(9.0909090909% - 3.6rem)}.grid-margin-x.small-up-12>.cell{width:calc(8.3333333333% - 3.6rem)}@media print,screen and (min-width: 57.5em){.grid-margin-x.medium-up-1>.cell{width:calc(100% - 3.6rem)}.grid-margin-x.medium-up-2>.cell{width:calc(50% - 3.6rem)}.grid-margin-x.medium-up-3>.cell{width:calc(33.3333333333% - 3.6rem)}.grid-margin-x.medium-up-4>.cell{width:calc(25% - 3.6rem)}.grid-margin-x.medium-up-5>.cell{width:calc(20% - 3.6rem)}.grid-margin-x.medium-up-6>.cell{width:calc(16.6666666667% - 3.6rem)}.grid-margin-x.medium-up-7>.cell{width:calc(14.2857142857% - 3.6rem)}.grid-margin-x.medium-up-8>.cell{width:calc(12.5% - 3.6rem)}.grid-margin-x.medium-up-9>.cell{width:calc(11.1111111111% - 3.6rem)}.grid-margin-x.medium-up-10>.cell{width:calc(10% - 3.6rem)}.grid-margin-x.medium-up-11>.cell{width:calc(9.0909090909% - 3.6rem)}.grid-margin-x.medium-up-12>.cell{width:calc(8.3333333333% - 3.6rem)}}@media print,screen and (min-width: 87.5em){.grid-margin-x.large-up-1>.cell{width:calc(100% - 3.6rem)}.grid-margin-x.large-up-2>.cell{width:calc(50% - 3.6rem)}.grid-margin-x.large-up-3>.cell{width:calc(33.3333333333% - 3.6rem)}.grid-margin-x.large-up-4>.cell{width:calc(25% - 3.6rem)}.grid-margin-x.large-up-5>.cell{width:calc(20% - 3.6rem)}.grid-margin-x.large-up-6>.cell{width:calc(16.6666666667% - 3.6rem)}.grid-margin-x.large-up-7>.cell{width:calc(14.2857142857% - 3.6rem)}.grid-margin-x.large-up-8>.cell{width:calc(12.5% - 3.6rem)}.grid-margin-x.large-up-9>.cell{width:calc(11.1111111111% - 3.6rem)}.grid-margin-x.large-up-10>.cell{width:calc(10% - 3.6rem)}.grid-margin-x.large-up-11>.cell{width:calc(9.0909090909% - 3.6rem)}.grid-margin-x.large-up-12>.cell{width:calc(8.3333333333% - 3.6rem)}}.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: 57.5em){.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: 87.5em){.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: 57.5em){.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: 57.5em){.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: 57.5em){.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: 87.5em){.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: 57.5em){.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: 87.5em){.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: 87.5em){.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: 87.5em){.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: 87.5em){.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: 87.5em){.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% + 3.6rem / 2)}.small-offset-1{margin-left:8.3333333333%}.grid-margin-x>.small-offset-1{margin-left:calc(8.3333333333% + 3.6rem / 2)}.small-offset-2{margin-left:16.6666666667%}.grid-margin-x>.small-offset-2{margin-left:calc(16.6666666667% + 3.6rem / 2)}.small-offset-3{margin-left:25%}.grid-margin-x>.small-offset-3{margin-left:calc(25% + 3.6rem / 2)}.small-offset-4{margin-left:33.3333333333%}.grid-margin-x>.small-offset-4{margin-left:calc(33.3333333333% + 3.6rem / 2)}.small-offset-5{margin-left:41.6666666667%}.grid-margin-x>.small-offset-5{margin-left:calc(41.6666666667% + 3.6rem / 2)}.small-offset-6{margin-left:50%}.grid-margin-x>.small-offset-6{margin-left:calc(50% + 3.6rem / 2)}.small-offset-7{margin-left:58.3333333333%}.grid-margin-x>.small-offset-7{margin-left:calc(58.3333333333% + 3.6rem / 2)}.small-offset-8{margin-left:66.6666666667%}.grid-margin-x>.small-offset-8{margin-left:calc(66.6666666667% + 3.6rem / 2)}.small-offset-9{margin-left:75%}.grid-margin-x>.small-offset-9{margin-left:calc(75% + 3.6rem / 2)}.small-offset-10{margin-left:83.3333333333%}.grid-margin-x>.small-offset-10{margin-left:calc(83.3333333333% + 3.6rem / 2)}.small-offset-11{margin-left:91.6666666667%}.grid-margin-x>.small-offset-11{margin-left:calc(91.6666666667% + 3.6rem / 2)}@media print,screen and (min-width: 57.5em){.medium-offset-0{margin-left:0%}.grid-margin-x>.medium-offset-0{margin-left:calc(0% + 3.6rem / 2)}.medium-offset-1{margin-left:8.3333333333%}.grid-margin-x>.medium-offset-1{margin-left:calc(8.3333333333% + 3.6rem / 2)}.medium-offset-2{margin-left:16.6666666667%}.grid-margin-x>.medium-offset-2{margin-left:calc(16.6666666667% + 3.6rem / 2)}.medium-offset-3{margin-left:25%}.grid-margin-x>.medium-offset-3{margin-left:calc(25% + 3.6rem / 2)}.medium-offset-4{margin-left:33.3333333333%}.grid-margin-x>.medium-offset-4{margin-left:calc(33.3333333333% + 3.6rem / 2)}.medium-offset-5{margin-left:41.6666666667%}.grid-margin-x>.medium-offset-5{margin-left:calc(41.6666666667% + 3.6rem / 2)}.medium-offset-6{margin-left:50%}.grid-margin-x>.medium-offset-6{margin-left:calc(50% + 3.6rem / 2)}.medium-offset-7{margin-left:58.3333333333%}.grid-margin-x>.medium-offset-7{margin-left:calc(58.3333333333% + 3.6rem / 2)}.medium-offset-8{margin-left:66.6666666667%}.grid-margin-x>.medium-offset-8{margin-left:calc(66.6666666667% + 3.6rem / 2)}.medium-offset-9{margin-left:75%}.grid-margin-x>.medium-offset-9{margin-left:calc(75% + 3.6rem / 2)}.medium-offset-10{margin-left:83.3333333333%}.grid-margin-x>.medium-offset-10{margin-left:calc(83.3333333333% + 3.6rem / 2)}.medium-offset-11{margin-left:91.6666666667%}.grid-margin-x>.medium-offset-11{margin-left:calc(91.6666666667% + 3.6rem / 2)}}@media print,screen and (min-width: 87.5em){.large-offset-0{margin-left:0%}.grid-margin-x>.large-offset-0{margin-left:calc(0% + 3.6rem / 2)}.large-offset-1{margin-left:8.3333333333%}.grid-margin-x>.large-offset-1{margin-left:calc(8.3333333333% + 3.6rem / 2)}.large-offset-2{margin-left:16.6666666667%}.grid-margin-x>.large-offset-2{margin-left:calc(16.6666666667% + 3.6rem / 2)}.large-offset-3{margin-left:25%}.grid-margin-x>.large-offset-3{margin-left:calc(25% + 3.6rem / 2)}.large-offset-4{margin-left:33.3333333333%}.grid-margin-x>.large-offset-4{margin-left:calc(33.3333333333% + 3.6rem / 2)}.large-offset-5{margin-left:41.6666666667%}.grid-margin-x>.large-offset-5{margin-left:calc(41.6666666667% + 3.6rem / 2)}.large-offset-6{margin-left:50%}.grid-margin-x>.large-offset-6{margin-left:calc(50% + 3.6rem / 2)}.large-offset-7{margin-left:58.3333333333%}.grid-margin-x>.large-offset-7{margin-left:calc(58.3333333333% + 3.6rem / 2)}.large-offset-8{margin-left:66.6666666667%}.grid-margin-x>.large-offset-8{margin-left:calc(66.6666666667% + 3.6rem / 2)}.large-offset-9{margin-left:75%}.grid-margin-x>.large-offset-9{margin-left:calc(75% + 3.6rem / 2)}.large-offset-10{margin-left:83.3333333333%}.grid-margin-x>.large-offset-10{margin-left:calc(83.3333333333% + 3.6rem / 2)}.large-offset-11{margin-left:91.6666666667%}.grid-margin-x>.large-offset-11{margin-left:calc(91.6666666667% + 3.6rem / 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: 57.5em){.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: 87.5em){.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: 57.5em){.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: 87.5em){.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:-1.8rem;margin-bottom:-1.8rem}.grid-padding-y>.cell{padding-top:1.8rem;padding-bottom:1.8rem}.grid-margin-y{margin-top:-1.8rem;margin-bottom:-1.8rem}.grid-margin-y>.cell{height:calc(100% - 3.6rem);margin-top:1.8rem;margin-bottom:1.8rem}.grid-margin-y>.auto{height:auto}.grid-margin-y>.shrink{height:auto}.grid-margin-y>.small-1{height:calc(8.3333333333% - 3.6rem)}.grid-margin-y>.small-2{height:calc(16.6666666667% - 3.6rem)}.grid-margin-y>.small-3{height:calc(25% - 3.6rem)}.grid-margin-y>.small-4{height:calc(33.3333333333% - 3.6rem)}.grid-margin-y>.small-5{height:calc(41.6666666667% - 3.6rem)}.grid-margin-y>.small-6{height:calc(50% - 3.6rem)}.grid-margin-y>.small-7{height:calc(58.3333333333% - 3.6rem)}.grid-margin-y>.small-8{height:calc(66.6666666667% - 3.6rem)}.grid-margin-y>.small-9{height:calc(75% - 3.6rem)}.grid-margin-y>.small-10{height:calc(83.3333333333% - 3.6rem)}.grid-margin-y>.small-11{height:calc(91.6666666667% - 3.6rem)}.grid-margin-y>.small-12{height:calc(100% - 3.6rem)}@media print,screen and (min-width: 57.5em){.grid-margin-y>.medium-auto{height:auto}.grid-margin-y>.medium-shrink{height:auto}.grid-margin-y>.medium-1{height:calc(8.3333333333% - 3.6rem)}.grid-margin-y>.medium-2{height:calc(16.6666666667% - 3.6rem)}.grid-margin-y>.medium-3{height:calc(25% - 3.6rem)}.grid-margin-y>.medium-4{height:calc(33.3333333333% - 3.6rem)}.grid-margin-y>.medium-5{height:calc(41.6666666667% - 3.6rem)}.grid-margin-y>.medium-6{height:calc(50% - 3.6rem)}.grid-margin-y>.medium-7{height:calc(58.3333333333% - 3.6rem)}.grid-margin-y>.medium-8{height:calc(66.6666666667% - 3.6rem)}.grid-margin-y>.medium-9{height:calc(75% - 3.6rem)}.grid-margin-y>.medium-10{height:calc(83.3333333333% - 3.6rem)}.grid-margin-y>.medium-11{height:calc(91.6666666667% - 3.6rem)}.grid-margin-y>.medium-12{height:calc(100% - 3.6rem)}}@media print,screen and (min-width: 87.5em){.grid-margin-y>.large-auto{height:auto}.grid-margin-y>.large-shrink{height:auto}.grid-margin-y>.large-1{height:calc(8.3333333333% - 3.6rem)}.grid-margin-y>.large-2{height:calc(16.6666666667% - 3.6rem)}.grid-margin-y>.large-3{height:calc(25% - 3.6rem)}.grid-margin-y>.large-4{height:calc(33.3333333333% - 3.6rem)}.grid-margin-y>.large-5{height:calc(41.6666666667% - 3.6rem)}.grid-margin-y>.large-6{height:calc(50% - 3.6rem)}.grid-margin-y>.large-7{height:calc(58.3333333333% - 3.6rem)}.grid-margin-y>.large-8{height:calc(66.6666666667% - 3.6rem)}.grid-margin-y>.large-9{height:calc(75% - 3.6rem)}.grid-margin-y>.large-10{height:calc(83.3333333333% - 3.6rem)}.grid-margin-y>.large-11{height:calc(91.6666666667% - 3.6rem)}.grid-margin-y>.large-12{height:calc(100% - 3.6rem)}}.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: 57.5em){.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: 87.5em){.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: 57.5em){.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: 87.5em){.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: 57.5em){.cell .grid-y.medium-grid-frame{height:100%}}@media print,screen and (min-width: 87.5em){.cell .grid-y.large-grid-frame{height:100%}}.grid-margin-y{margin-top:-1.8rem;margin-bottom:-1.8rem}.grid-margin-y>.cell{height:calc(100% - 3.6rem);margin-top:1.8rem;margin-bottom:1.8rem}.grid-margin-y>.auto{height:auto}.grid-margin-y>.shrink{height:auto}.grid-margin-y>.small-1{height:calc(8.3333333333% - 3.6rem)}.grid-margin-y>.small-2{height:calc(16.6666666667% - 3.6rem)}.grid-margin-y>.small-3{height:calc(25% - 3.6rem)}.grid-margin-y>.small-4{height:calc(33.3333333333% - 3.6rem)}.grid-margin-y>.small-5{height:calc(41.6666666667% - 3.6rem)}.grid-margin-y>.small-6{height:calc(50% - 3.6rem)}.grid-margin-y>.small-7{height:calc(58.3333333333% - 3.6rem)}.grid-margin-y>.small-8{height:calc(66.6666666667% - 3.6rem)}.grid-margin-y>.small-9{height:calc(75% - 3.6rem)}.grid-margin-y>.small-10{height:calc(83.3333333333% - 3.6rem)}.grid-margin-y>.small-11{height:calc(91.6666666667% - 3.6rem)}.grid-margin-y>.small-12{height:calc(100% - 3.6rem)}@media print,screen and (min-width: 57.5em){.grid-margin-y>.medium-auto{height:auto}.grid-margin-y>.medium-shrink{height:auto}.grid-margin-y>.medium-1{height:calc(8.3333333333% - 3.6rem)}.grid-margin-y>.medium-2{height:calc(16.6666666667% - 3.6rem)}.grid-margin-y>.medium-3{height:calc(25% - 3.6rem)}.grid-margin-y>.medium-4{height:calc(33.3333333333% - 3.6rem)}.grid-margin-y>.medium-5{height:calc(41.6666666667% - 3.6rem)}.grid-margin-y>.medium-6{height:calc(50% - 3.6rem)}.grid-margin-y>.medium-7{height:calc(58.3333333333% - 3.6rem)}.grid-margin-y>.medium-8{height:calc(66.6666666667% - 3.6rem)}.grid-margin-y>.medium-9{height:calc(75% - 3.6rem)}.grid-margin-y>.medium-10{height:calc(83.3333333333% - 3.6rem)}.grid-margin-y>.medium-11{height:calc(91.6666666667% - 3.6rem)}.grid-margin-y>.medium-12{height:calc(100% - 3.6rem)}}@media print,screen and (min-width: 87.5em){.grid-margin-y>.large-auto{height:auto}.grid-margin-y>.large-shrink{height:auto}.grid-margin-y>.large-1{height:calc(8.3333333333% - 3.6rem)}.grid-margin-y>.large-2{height:calc(16.6666666667% - 3.6rem)}.grid-margin-y>.large-3{height:calc(25% - 3.6rem)}.grid-margin-y>.large-4{height:calc(33.3333333333% - 3.6rem)}.grid-margin-y>.large-5{height:calc(41.6666666667% - 3.6rem)}.grid-margin-y>.large-6{height:calc(50% - 3.6rem)}.grid-margin-y>.large-7{height:calc(58.3333333333% - 3.6rem)}.grid-margin-y>.large-8{height:calc(66.6666666667% - 3.6rem)}.grid-margin-y>.large-9{height:calc(75% - 3.6rem)}.grid-margin-y>.large-10{height:calc(83.3333333333% - 3.6rem)}.grid-margin-y>.large-11{height:calc(91.6666666667% - 3.6rem)}.grid-margin-y>.large-12{height:calc(100% - 3.6rem)}}.grid-frame.grid-margin-y{height:calc(100vh + 3.6rem)}@media print,screen and (min-width: 57.5em){.grid-margin-y.medium-grid-frame{height:calc(100vh + 3.6rem)}}@media print,screen and (min-width: 87.5em){.grid-margin-y.large-grid-frame{height:calc(100vh + 3.6rem)}}.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: 57.5em){.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: 87.5em){.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: 57.5em){.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: 87.5em){.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: 57.49875em){.hide-for-small-only{display:none !important}}@media screen and (max-width: 0em),screen and (min-width: 57.5em){.show-for-small-only{display:none !important}}@media print,screen and (min-width: 57.5em){.hide-for-medium{display:none !important}}@media screen and (max-width: 57.49875em){.show-for-medium{display:none !important}}@media print,screen and (min-width: 57.5em)and (max-width: 87.49875em){.hide-for-medium-only{display:none !important}}@media screen and (max-width: 57.49875em),screen and (min-width: 87.5em){.show-for-medium-only{display:none !important}}@media print,screen and (min-width: 87.5em){.hide-for-large{display:none !important}}@media screen and (max-width: 87.49875em){.show-for-large{display:none !important}}@media print,screen and (min-width: 87.5em)and (max-width: 99.99875em){.hide-for-large-only{display:none !important}}@media screen and (max-width: 87.49875em),screen and (min-width: 100em){.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}/*! locomotive-scroll v4.1.3 | MIT License | https://github.com/locomotivemtl/locomotive-scroll */html.has-scroll-smooth{overflow:hidden}html.has-scroll-dragging{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.has-scroll-smooth body{overflow:hidden}.has-scroll-smooth [data-scroll-container]{min-height:100vh}[data-scroll-direction=horizontal] [data-scroll-container]{height:100vh;display:inline-block;white-space:nowrap;text-align:justify;font-size:0}[data-scroll-direction=horizontal] [data-scroll-section]{display:inline-block;vertical-align:top;white-space:nowrap;height:100%}.c-scrollbar{position:absolute;right:0;top:0;width:11px;height:100%;transform-origin:center right;transition:transform .3s,opacity .3s;opacity:0}.c-scrollbar:hover{transform:scaleX(1.45)}.c-scrollbar:hover,.has-scroll-scrolling .c-scrollbar,.has-scroll-dragging .c-scrollbar{opacity:1}[data-scroll-direction=horizontal] .c-scrollbar{width:100%;height:10px;top:auto;bottom:0;transform:scaleY(1)}[data-scroll-direction=horizontal] .c-scrollbar:hover{transform:scaleY(1.3)}.c-scrollbar_thumb{position:absolute;top:0;right:0;background-color:#000;opacity:.5;width:7px;border-radius:10px;margin:2px;cursor:-webkit-grab;cursor:grab}.has-scroll-dragging .c-scrollbar_thumb{cursor:-webkit-grabbing;cursor:grabbing}[data-scroll-direction=horizontal] .c-scrollbar_thumb{right:auto;bottom:0}html,body{overscroll-behavior:none;overscroll-behavior-x:none}.grid-container{max-width:100%}.--disablemotion,.--disablemotion *{transition:none !important}.--disablemotion .shoot-ticker{display: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}.--zoom,.zoom{cursor:pointer}.--zoom img,.--zoom video,.zoom img,.zoom video{transition:all ease 2s}strong,b{font-weight:var(--weight-sbold)}.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: 920px){.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;object-position:center}.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 img,.flex-row video{width:100%;height:auto}.flex-row.animate-in{background:var(--hoverstate);overflow:hidden;opacity:0;transition:opacity .3s linear}.flex-row.animate-in img,.flex-row.animate-in video,.flex-row.animate-in iframe{transform:translateX(-100%);transition:transform .95s cubic-bezier(0.215, 0.61, 0.355, 1) 150ms}.flex-row.animate-in.--is-admin{opacity:1}.flex-row.animate-in.--is-admin img,.flex-row.animate-in.--is-admin video,.flex-row.animate-in.--is-admin iframe{transform:translateX(0)}.media-row{flex-direction:row;flex-wrap:nowrap;display:flex;gap:0 .9rem}@media print,screen and (min-width: 920px){.media-row{gap:0 1.875rem}}.marquee{padding:1.35rem 0;margin:0;overflow:hidden;max-width:100vw;position:relative;border-top:var(--line);border-bottom:var(--line);display:flex;--speed: 20s}@media print,screen and (min-width: 920px){.marquee{padding:2.135rem 0}}.marquee>span{font-size:var(--size-plus1);white-space:nowrap;height:var(--size-plus1);text-transform:none;line-height:1;color:var(--marqueecolor)}.marquee>span span{margin:0 .49em}.marquee .marquee-1,.marquee .marquee-2{position:absolute;top:calc(50% - var(--size-plus1)*.5);left:0;height:100%;transform:translate3d(0, 0, 0);white-space:nowrap;transition:all 600ms cubic-bezier(0.25, 0.1, 0.25, 1)}.marquee .marquee-1{animation:marquee calc(var(--speed)*3) linear infinite}@media print,screen and (min-width: 920px){.marquee .marquee-1{animation:marquee var(--speed) linear infinite}}.marquee .marquee-2{animation:marquee2 calc(var(--speed)*3) linear infinite}@media print,screen and (min-width: 920px){.marquee .marquee-2{animation:marquee2 var(--speed) linear infinite}}@keyframes marquee{from{transform:translateX(0%)}to{transform:translateX(-100%)}}@keyframes marquee2{from{transform:translateX(100%)}to{transform:translateX(0%)}}@keyframes marqueereverse{from{transform:translateX(-100%)}to{transform:translateX(0%)}}@keyframes marqueereverse2{from{transform:translateX(0%)}to{transform:translateX(100%)}}.marquee-cta{overflow:hidden;position:relative;position:relative}.marquee-cta .marquee{position:absolute;top:50%;transform:translateY(-50%);height:100%;left:0;width:100%;opacity:0;transition:all ease 500ms;border:none;z-index:3;padding:0}.marquee-cta .marquee span{text-transform:uppercase;font-size:var(--size-plus1);white-space:nowrap;height:var(--size-plus1);display:inline-block;text-transform:none;line-height:1;color:var(--marqueecolor);margin:0 .49em;text-transform:uppercase}.marquee-cta .marquee .marquee-1,.marquee-cta .marquee .marquee-2{position:absolute;left:0;height:auto;transform:translate3d(0, 0, 0);white-space:nowrap;transition:all 600ms cubic-bezier(0.25, 0.1, 0.25, 1);display:flex}.marquee-cta .marquee .marquee-1 span,.marquee-cta .marquee .marquee-2 span{display:block}.marquee-cta .marquee .marquee-1{animation:marquee calc(var(--speed)*3) linear infinite}@media print,screen and (min-width: 920px){.marquee-cta .marquee .marquee-1{animation:marquee var(--speed) linear infinite}}.marquee-cta .marquee .marquee-2{animation:marquee2 calc(var(--speed)*3) linear infinite}@media print,screen and (min-width: 920px){.marquee-cta .marquee .marquee-2{animation:marquee2 var(--speed) linear infinite}}.marquee-cta a{width:100%}.marquee-cta .cta-text{z-index:1;transition:all ease 500ms;position:relative}.marquee-cta:after{content:" ";position:absolute;transition:all ease 500ms;top:50%;transform:translateY(-50%);left:0;width:100%;z-index:1;background:var(--hoverstate);height:100%;max-height:0px;z-index:2}.marquee-cta:hover .marquee{opacity:1}.marquee-cta:hover:after{max-height:3.6rem}@media print,screen and (max-width: 920px){.block-cta-block-cell.cell.block-cta-block-cell-margin{margin-bottom:0}}.flex-cta-hover{position:relative;padding-bottom:150%;height:0px;width:100%;overflow:hidden}@media print,screen and (min-width: 920px){.flex-cta-hover{padding-bottom:100%}}.flex-cta-hover.--yellow .flex-hover{background-color:var(--yellow);--black: var(--black)}.flex-cta-hover.--red .flex-hover{background-color:var(--red)}.flex-cta-hover.--blue .flex-hover{background-color:var(--blue)}.flex-cta-hover.--black .flex-hover{background-color:var(--black)}.flex-cta-hover .flex-title,.flex-cta-hover .flex-hover{transition:transform ease 500ms}.flex-cta-hover .flex-title{display:none}@media print,screen and (min-width: 920px){.flex-cta-hover .flex-title{display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:center;align-items:center;height:100%;position:absolute;top:0;left:0;width:100%;z-index:1}.flex-cta-hover .flex-title h3{font-size:var(--size-plus8)}}.flex-cta-hover .flex-hover{--black: var(--white);display:flex;flex-direction:column;height:100%;position:absolute;top:1px;left:0;width:100%;z-index:1}@media print,screen and (min-width: 920px){.flex-cta-hover .flex-hover{transform:translateY(100%)}}.flex-cta-hover .flex-hover .top{min-height:50%;display:flex;flex-direction:column;justify-content:space-between;align-content:stretch}.flex-cta-hover .flex-hover .top>div{padding:.9em}@media print,screen and (min-width: 920px){.flex-cta-hover .flex-hover .top>div{padding:1.8em}}.flex-cta-hover .flex-hover .top p{margin:0}.flex-cta-hover .flex-hover .top .top-inner{width:100%}.flex-cta-hover .flex-hover .top .bottom-inner{width:100%}@media print,screen and (min-width: 920px){.flex-cta-hover .flex-hover .top .bottom-inner{width:60%;margin-left:40%}}.flex-cta-hover .flex-hover .top .bottom-inner .cta-button{display:flex;flex-wrap:wrap;gap:.45em;font-size:var(--size-plus1);font-family:var(--body-font);text-transform:uppercase;color:var(--black);font-weight:var(--weight-normal);line-height:var(--body-line-height);font-weight:var(--weight-sbold);margin-top:.9em}.flex-cta-hover .flex-hover .top .bottom-inner .cta-button svg{height:1.35em;fill:var(--black);margin-left:-0.45em}.flex-cta-hover .flex-hover .bottom{flex-grow:1;position:relative}.flex-cta-hover .flex-hover .bottom img,.flex-cta-hover .flex-hover .bottom video{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover}.flex-cta-hover:hover .flex-title{transform:translateY(-100%)}.flex-cta-hover:hover .flex-hover{transform:translateY(0)}.flex-video,.flex-image{position:relative;width:100%;height:0px;overflow:hidden;display:inline-block;padding-bottom:56.25%;z-index:1}.flex-video.embed-reveal,.flex-image.embed-reveal{cursor:pointer}.flex-video.parallax-container,.flex-image.parallax-container{overflow:hidden}.flex-video.parallax-container .parallax,.flex-image.parallax-container .parallax{position:absolute;top:0;left:0;width:100%;height:100%}.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 .embed-layer,.flex-image .embed-layer{z-index:3;position:absolute;top:0;left:0;width:100%;height:100%}.flex-video .embed-layer .grid-container,.flex-video .embed-layer .grid-x,.flex-image .embed-layer .grid-container,.flex-image .embed-layer .grid-x{height: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;object-position:center}.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.border,.flex-image.border{border:.625rem solid var(--black)}.flex-video.border.green,.flex-image.border.green{border-color:var(--green)}.flex-video.border.cream,.flex-image.border.cream{border-color:var(--cream)}.flex-video.border.blue,.flex-image.border.blue{border-color:var(--black)}.flex-video.animate-in,.flex-image.animate-in{background:var(--hoverstate);overflow:hidden;opacity:0;transition:opacity .3s linear}.flex-video.animate-in img,.flex-video.animate-in video,.flex-video.animate-in iframe,.flex-image.animate-in img,.flex-image.animate-in video,.flex-image.animate-in iframe{transform:translateX(-100%);transition:transform .95s cubic-bezier(0.215, 0.61, 0.355, 1) 150ms}.flex-video.animate-in.--is-admin,.flex-image.animate-in.--is-admin{opacity:1}.flex-video.animate-in.--is-admin img,.flex-video.animate-in.--is-admin video,.flex-video.animate-in.--is-admin iframe,.flex-image.animate-in.--is-admin img,.flex-image.animate-in.--is-admin video,.flex-image.animate-in.--is-admin iframe{transform:translateX(0)}.is-inview.flex-row.animate-in,.is-inview .flex-row.animate-in,.is-inview.flex-height.animate-in,.is-inview .flex-height.animate-in,.is-inview.flex-image.animate-in,.is-inview.flex-video.animate-in,.is-inview .flex-image.animate-in,.is-inview .flex-video.animate-in{opacity:1}.is-inview.flex-row.animate-in img,.is-inview.flex-row.animate-in video,.is-inview.flex-row.animate-in iframe,.is-inview .flex-row.animate-in img,.is-inview .flex-row.animate-in video,.is-inview .flex-row.animate-in iframe,.is-inview.flex-height.animate-in img,.is-inview.flex-height.animate-in video,.is-inview.flex-height.animate-in iframe,.is-inview .flex-height.animate-in img,.is-inview .flex-height.animate-in video,.is-inview .flex-height.animate-in iframe,.is-inview.flex-image.animate-in img,.is-inview.flex-image.animate-in video,.is-inview.flex-image.animate-in iframe,.is-inview.flex-video.animate-in img,.is-inview.flex-video.animate-in video,.is-inview.flex-video.animate-in iframe,.is-inview .flex-image.animate-in img,.is-inview .flex-image.animate-in video,.is-inview .flex-image.animate-in iframe,.is-inview .flex-video.animate-in img,.is-inview .flex-video.animate-in video,.is-inview .flex-video.animate-in iframe{transform:translateX(0)}.image-card{position:relative;display:block;box-sizing:border-box;width:100%;height:0px;padding-bottom:100%;transition:transform 500ms ease 0s}.image-card video,.image-card iframe,.image-card img{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1;object-fit:cover;filter:grayscale(100%)}@media print,screen and (min-width: 920px){.image-card{transform:translateZ(1000px) perspective(1500px) rotateY(0) rotateX(0);backface-visibility:hidden}}@media print,screen and (min-width: 920px){.image-card.perspective-left:hover{transform:translateZ(1000px) perspective(3000px) rotateY(25deg) rotateX(25deg)}.image-card.perspective-right:hover{transform:translateZ(1000px) perspective(3000px) rotateY(-25deg) rotateX(25deg)}}@media print,screen and (min-width: 920px){.small-only{display:none !important}}@media print,screen and (max-width: 920px){.medium-only{display:none !important}}@media print,screen and (max-width: 920px){.medium-up{display:none !important}}@media print,screen and (max-width: 1400px){.large-up{display:none !important}}@media print,screen and (min-width: 1400px){.medium-only{display:none !important}}hr{width:100%;height:1px;margin:1.8rem 0;background:var(--black);border:none}ul,ol,p{font-size:1rem;text-align:left;margin-top:0;margin-bottom:1.25em;white-space:normal}@media print,screen and (min-width: 920px){ul,ol,p{font-size:var(--size-plus1)}}ul b,ul strong,ol b,ol strong,p b,p strong{font-weight:var(--weight-sbold)}ul.plus,ol.plus,p.plus{font-size:var(--size-plus2)}ul.lead,ol.lead,p.lead{font-size:var(--size-plus2)}ul.lead.plus,ol.lead.plus,p.lead.plus{font-size:var(--size-plus3);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}@media print,screen and (min-width: 920px){.--sticky{position:sticky;top:0}}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);min-height:100vh}@media screen and (min-width: 920px){body{padding-bottom:0}}body.--lock{overflow:hidden}ul,ol,p{font-family:var(--body-font);color:var(--black);font-weight:var(--weight-normal);line-height:var(--body-line-height);font-size:1rem;text-align:inherit;margin-bottom:1.25em}@media print,screen and (min-width: 920px){ul,ol,p{font-size:var(--size-plus1)}}ul.small,ol.small,p.small{font-size:var(--size)}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)}.button.marquee-btn{cursor:pointer;margin-top:.9rem;background:var(--hoverstate);height:1.8rem;border:none !important;border-radius:1.8rem;width:12rem;overflow:hidden;display:flex;align-items:center;transform:none;padding:1.125rem 0;position:relative}.button.marquee-btn .marquee{width:100%;opacity:0;transition:opacity 100ms cubic-bezier(0.215, 0.61, 0.355, 1);display:flex;align-items:center}.button.marquee-btn>div,.button.marquee-btn .marquee span{color:var(--marqueecolor);font-size:var(--size);font-size:min(var(--size),1.35rem);line-height:1.8rem;text-transform:none;line-height:1}.button.marquee-btn>div{transition:opacity 500ms cubic-bezier(0.215, 0.61, 0.355, 1);position:absolute;text-align:center;width:100%}.button.marquee-btn:hover div{opacity:0;transition:opacity 100ms cubic-bezier(0.215, 0.61, 0.355, 1)}.button.marquee-btn:hover .marquee{opacity:1;transition:opacity 500ms cubic-bezier(0.215, 0.61, 0.355, 1)}.text-left{text-align:left}.text-right{text-align:right}.text-center{text-align:center}.h1,.h2,.h3,.h4,.h5,.h6,h1,h2,h3,h4,h5,h6{text-transform:uppercase;margin:2.75rem 0 .45rem;font-family:var(--header-font);font-weight:var(--weight-normal);line-height:var(--header-line-height);color:var(--black);margin:0 0 .9rem 0}.h3,h3,.h4,.h5,.h6,h4,h5,h6{color:var(--black)}.h4,.h5,.h6,h4,h5,h6{text-transform:uppercase}h1,.h1{margin-top:0;font-size:var(--size-plus6)}h1.large,.h1.large{font-size:var(--size-plus8)}@media print,screen and (min-width: 920px){h1.large,.h1.large{display:block;opacity:0;transform:translate3d(0, 50%, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 12deg);transform-style:preserve-3d}}h1.large.--is-admin,.h1.large.--is-admin{opacity:1;transform:none}.is-inview .h1.large,.is-inview h1.large,[data-scroll-section-inview] .h1.large,[data-scroll-section-inview] h1.large{opacity:1;transform:none;transition-duration:1.2s}h2,.h2{font-size:var(--size-plus5)}h3,.h3{font-size:var(--size-plus4)}h4,.h4{font-size:var(--size-plus3)}h5,.h5{font-size:var(--size-plus2)}h5,.h5{font-size:var(--size-plus1)}small,.text_small{font-size:var(--size-minus2)}a{color:var(--brand);text-decoration:none;transition:background-color 150ms ease,color 150ms ease}a:hover{color:var(--darkgrey)}p a{text-decoration:underline}.line-container{position:relative}.line-container .line{position:absolute;background:var(--black)}.line-container .line.relative{position:relative}.line-container .line.horizontal{width:100%;height:1px}.line-container .line.horizontal.offset{left:-1.8rem;width:calc(100% + 1.8em)}.line-container .line.horizontal.padding{left:1.8rem;width:calc(100% - 1.8em)}.line-container .line.vertical{width:1px;height:100%}.line-container .line.vertical.offset{top:-1.8rem;height:calc(100% + 1.8em)}.line-container .line.vertical.padding{top:1.8rem;height:calc(100% - 1.8em)}.line-container .line.center{left:50%;left:calc(50% - .5px)}@keyframes blink{5%{opacity:0}40%{opacity:0}60%{opacity:1}95%{opacity:1}}@keyframes slide-right{0%{transform:translate(-100%)}to{transform:none}}@keyframes fade{0%{opacity:0}to{opacity:1}}@keyframes type{0%{opacity:0}40%{opacity:0}60%{opacity:1}to{opacity:1}}.--border-offset{position:relative}.--border-offset:after{position:absolute;display:block;content:" ";height:4px;bottom:-2px;width:1.8rem;background:var(--white);left:0px;z-index:2}.--border-offset-top{position:relative}.--border-offset-top:after{position:absolute;display:block;content:" ";height:4px;top:-2px;width:1.8rem;background:var(--white);right:0px;z-index:2}html,body{scroll-padding-top:0}header#primary{position:fixed;top:0;left:0;width:100%;padding:.9rem 0;z-index:999;background:var(--white)}@media print,screen and (min-width: 920px){header#primary{padding:1.3125rem 0}}header#primary .hamburger-container-grid{min-height:3.6rem}header#primary .border-cell{border:var(--line);border-right:none}@media print,screen and (min-width: 920px){header#primary .border-cell{height:4rem}}header#primary .hamburger-container{display:flex;border:var(--line);min-height:3.6rem;padding:.45rem .9rem;align-items:center;flex-direction:row;justify-content:flex-end}@media print,screen and (min-width: 920px){header#primary .hamburger-container{height:4rem;padding:.45rem 1.8rem}}header#primary .hamburger-container span{margin-right:.9em;margin-left:.45em;font-size:var(--size-plus1);text-transform:uppercase;line-height:1;display:block}header#primary .hamburger{display:flex;width:2.7rem;height:1.8rem;flex-direction:column;flex-wrap:wrap;justify-content:space-around}header#primary .hamburger.is-active .line:nth-child(1){transform:rotate(-45deg) translateY(0.725em) translateX(0)}header#primary .hamburger.is-active .line:nth-child(2){opacity:0;-ms-transform:translateX(-100%);-o-transform:translateX(-100%);transform:translateX(-100%)}header#primary .hamburger.is-active .line:nth-child(3){transform:rotate(45deg) translateY(-0.725em) translateX(0)}header#primary .hamburger .line{width:2.7rem;height:1px;background-color:var(--black);display:block;margin:0 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}@media print,screen and (min-width: 920px){header#primary.headroom{will-change:transform;transition:transform 200ms linear}header#primary.headroom.headroom--pinned{transform:translateY(0%)}header#primary.headroom.headroom--unpinned{transform:translateY(-100%)}}header#primary .logo{margin-right:.9rem;display:flex}@media print,screen and (min-width: 920px){header#primary .logo{margin-right:1.3125rem;transition:all 500ms ease;backface-visibility:hidden}header#primary .logo:hover{transform:perspective(3000px) rotateY(25deg) rotateX(25deg)}}@media print,screen and (min-width: 920px)and (min-width: 2000px){header#primary .logo:hover{transform:rotateY(25deg) rotateX(25deg) translate3d(-2.8rem, 2.8rem, 5.6rem) perspective(30000px)}}header#primary .logo svg,header#primary .logo img{max-width:100%;width:auto;height:3.6rem}@media print,screen and (min-width: 920px){header#primary .logo svg,header#primary .logo img{height:4rem}}@media print,screen and (min-width: 1400px){header#primary .logo svg,header#primary .logo img{height:5.5625rem}}header#primary .logo svg line,header#primary .logo img line{stroke-width:2px}header#primary .menu-cell-container-outer{background:var(--bg);display:flex;flex-direction:row;justify-content:center;align-items:center;flex-wrap:nowrap;border-left:var(--line);border-top:var(--line);border-bottom:var(--line);transition:none}header#primary .menu-cell-container-outer:last-of-type{border-right:var(--line)}header#primary .menu-cell-container-outer .menu-cell-container{position:relative;overflow:visible;width:auto}header#primary .menu-cell-container-outer .menu-cell-container .menu-cell-inner{position:relative;overflow:hidden;width:100%;line-height:1}header#primary .menu-cell-container-outer .menu-cell-container .menu-cell-inner .cell-text{text-transform:uppercase;position:relative;z-index:2;transition:transform 500ms cubic-bezier(0.23, 1, 0.32, 1);font-size:.85rem}@media print,screen and (min-width: 1400px){header#primary .menu-cell-container-outer .menu-cell-container .menu-cell-inner .cell-text{font-size:var(--size)}}header#primary .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-cell-container-outer.current_page_item{pointer-events:none}header#primary .menu-cell-container-outer.current_page_item .cell-text{border-bottom:var(--line)}header#primary .menu-cell-container-outer:hover .menu-cell-container .cell-text{transform:translate(0px, -101%)}header#primary .menu-cell-container-outer:hover .menu-cell-container .cell-text.absolute{transform:translate(0px, 0%)}nav#mobile{display:none}nav#mobile .menu-cell-container-outer{flex:unset;background:var(--bg);display:flex;flex-direction:column;justify-content:center;align-items:flex-start;flex-wrap:nowrap;transition:none}nav#mobile .menu-cell-container-outer .menu-cell-container{position:relative;overflow:visible;width:auto}nav#mobile .menu-cell-container-outer .menu-cell-container .menu-cell-inner{position:relative;overflow:hidden;width:auto;line-height:1}nav#mobile .menu-cell-container-outer .menu-cell-container .menu-cell-inner .cell-text{text-transform:uppercase;position:relative;z-index:2;transition:transform 500ms cubic-bezier(0.23, 1, 0.32, 1)}nav#mobile .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%)}nav#mobile .menu-cell-container-outer.current_page_item{pointer-events:none}nav#mobile .menu-cell-container-outer.current_page_item .cell-text{border-bottom:var(--line)}nav#mobile .menu-cell-container-outer:hover .menu-cell-container .cell-text{transform:translate(0px, -101%)}nav#mobile .menu-cell-container-outer:hover .menu-cell-container .cell-text.absolute{transform:translate(0px, 0%)}@media screen and (min-width: 920px){nav#mobile{z-index:999;background:var(--bg);display:block;position:fixed;bottom:0;height:100vh;left:0;width:100vw;padding:1.3125rem 1.8rem;transition:all ease 500ms;transform:translateX(100vw);pointer-events:none;display:flex;flex-direction:row;justify-content:flex-start;align-items:flex-start}nav#mobile.is-active{pointer-events:auto;transform:translateX(0)}nav#mobile .mobile-inner{padding:7.2rem 3.6rem 0 10.2rem;border-left:var(--line);border-right:var(--line);border-bottom:var(--line);width:100%;height:100%;gap:3.6rem 7.2rem;display:flex;flex-direction:row;justify-content:flex-start;position:relative}nav#mobile .mobile-inner:after{content:" ";position:absolute;z-index:2;background:var(--white);bottom:-1px;width:1.8rem;left:0;height:3px}nav#mobile .menu-cell-container-outer .menu-cell-container .menu-cell-inner .cell-text{font-size:var(--size-plus7)}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:0;margin:1.8em 0;display:flex;flex-direction:column;gap:.65em}nav#mobile ul li{text-transform:uppercase;font-size:var(--size-plus7);color:var(--black)}nav#mobile ul.social{max-width:40rem;flex-direction:row;flex-wrap:wrap;justify-content:flex-start;align-items:flex-start;align-content:flex-start;gap:.9rem 1.8rem}nav#mobile ul.social li{margin:0;width:45%;font-size:var(--size-plus2)}}@media screen and (max-width: 920px){nav#mobile{z-index:999;background:var(--bg);display:block;position:fixed;bottom:0;height:100%;left:0;width:100vw;padding:5.2rem 1.8rem 1.8rem;transition:all ease 500ms;transform:translateX(100vw);pointer-events:none;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}nav#mobile.is-active{pointer-events:auto;transform:translateX(0)}nav#mobile .mobile-inner{padding:1.8em 3.6rem;border-left:var(--line);border-right:var(--line);border-bottom:var(--line);width:100%;height:100%;display:flex;flex-direction:column;justify-content:center;position:relative}nav#mobile .mobile-inner:after{content:" ";position:absolute;z-index:2;width:1.8rem;background:var(--white);bottom:-1px;left:0;height:3px}nav#mobile .menu-cell-container-outer .menu-cell-container .menu-cell-inner .cell-text{font-size:var(--size-plus7)}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:0;margin:1.8em 0;display:flex;flex-direction:column;gap:.65em}nav#mobile ul li{text-transform:uppercase;font-size:var(--size-plus7);color:var(--black)}nav#mobile ul.social li{font-size:var(--size)}}footer#primary{position:relative;width:100%;padding:2.7em 0 0}footer#primary .footer-dark{padding:2.7em 0 0 0;background:var(--mediumgrey);--black: var(--white);display:block}footer#primary .media-link{display:block;height:100%;width:100%}footer#primary .primary-sponsors-logo{border-top:var(--line)}footer#primary .primary-sponsors-logo .grid-x{display:flex;flex-wrap:wrap}footer#primary .primary-sponsors-logo .cell{display:flex;align-items:stretch;text-align:center}@media print,screen and (min-width: 920px){footer#primary .primary-sponsors-logo .cell{border-right:var(--line)}}footer#primary .primary-sponsors-logo .cell:last-of-type{border-right:none}footer#primary .primary-sponsors-logo .cell img{object-fit:contain;padding:.45em}@media print,screen and (min-width: 920px){footer#primary .primary-sponsors-logo .cell img{padding:2.7em}}footer#primary .border-top-bottom{padding-top:1.8em;margin-top:1.8em;border-top:1px solid var(--white);padding-bottom:1.8em;margin-bottom:1.8em;border-bottom:1px solid var(--white)}@media print,screen and (min-width: 920px){footer#primary .border-top-bottom{padding-top:3.6em;padding-bottom:3.6em}}footer#primary .footer-text-container{position:relative}footer#primary .footer-text-container .questions{position:absolute;bottom:0}footer#primary .footer-text-container .questions p{margin:.45rem 0 0 0;font-size:var(--size);max-width:30ch}footer#primary ul{list-style:none;padding:0;margin:0;display:flex;gap:.9em;flex-direction:column}footer#primary ul li{text-transform:uppercase;font-size:var(--size-plus0)}footer#primary ul li a{color:var(--black);display:inline-block;position:relative}footer#primary ul li a:before{content:" ";position:absolute;bottom:0;height:1px;left:0;width:100%;transform:scaleX(0);transform-origin:left center;transition:ease 500ms;background:var(--black)}footer#primary ul li.current_page_item a:before,footer#primary ul li a:hover:before{transform:scaleX(1)}footer#primary .small-print{margin-top:-0.9rem}footer#primary .small-print ul{display:flex;flex-wrap:wrap;gap:.225em .9em;flex-direction:row}@media print,screen and (min-width: 920px){footer#primary .small-print ul{flex-wrap:nowrap}}@media print,screen and (min-width: 920px){footer#primary .small-print ul{gap:1.8em}}footer#primary .small-print ul li{text-transform:none}footer#primary .extra-small-print p{font-size:var(--size-plus0);margin:0}footer#primary p.h1{font-size:var(--size-plus8);color:var(--yellow);font-weight:var(--weight-normal)}footer#primary .logo{margin-right:.9rem;display:flex}@media print,screen and (min-width: 920px){footer#primary .logo{margin-right:1.3125rem}}footer#primary .logo svg,footer#primary .logo img{width:100%;height:auto;max-width:3.6rem}@media print,screen and (min-width: 920px){footer#primary .logo svg,footer#primary .logo img{max-width:7.2rem}}footer#primary .logo svg line,footer#primary .logo img line{stroke-width:2px}#primary-container{min-height:100vh;padding:150px 0;padding:var(--menuheight) 0;margin:-0.9rem 0 0;padding-bottom:0;margin-bottom:1.8rem;position:relative}@media print,screen and (min-width: 920px){#primary-container{margin:-1.3125rem 1.8rem 0;border-left:var(--line);border-right:var(--line)}#primary-container:before{z-index:0;content:"";content:"";position:fixed;top:0;left:1.8rem;border-top:7.2rem solid var(--white);border-right:1.8rem solid rgba(0,0,0,0);width:0}}@media print,screen and (min-width: 920px)and (min-width: 920px){#primary-container:before{border-top:3.6rem solid var(--white);border-right:3.6rem solid rgba(0,0,0,0);border-top:calc(var(--menuheight) + 3.6rem) solid var(--white);border-right:calc(var(--menuheight) + 3.6rem) solid rgba(0,0,0,0)}}@media print,screen and (min-width: 920px){#primary-container:after{z-index:0;content:"";content:"";position:fixed;top:0;right:1.8em;border-top:3.6rem solid var(--white);border-left:1.8rem solid rgba(0,0,0,0);width:0}}@media print,screen and (min-width: 920px)and (min-width: 920px){#primary-container:after{border-top:1.8rem solid var(--white);border-left:1.8rem solid rgba(0,0,0,0);border-top:1.8rem solid var(--white);border-left:1.8rem solid rgba(0,0,0,0)}}#scroll-container.writing{min-height:100vh}#scroll-container p{margin:.45em 0}#scroll-container p em{font-style:normal;font-size:75%}.spaces-spacer{position:relative;width:100%;height:7.2rem}@media print,screen and (min-width: 920px){.spaces-spacer{height:14.4rem}}@media print,screen and (max-width: 920px){.spaces-project{padding-top:3.6rem;padding-bottom:3.6rem}}.spaces-project h1,.spaces-project h2,.spaces-project h3,.spaces-project h4,.spaces-project h5,.spaces-project h6{font-size:var(--size-plus0);margin:.45rem 0}@media print,screen and (max-width: 920px){.circle,.cursor-container{display:none !important}}.circle{pointer-events:none;position:absolute;width:75px;height:75px;top:0;left:0;margin:0;background:var(--cream);color:var(--black);opacity:1;transition:color ease 500ms;border-radius:100%;backface-visibility:hidden;visibility:hidden;transform-origin:top left;margin-top:.9em;margin-left:.9em;z-index:999}@media print,screen and (max-width: 920px){.circle{display:none}}.circle.init{visibility:visible}.circle.dot{transform:scale(0.1);background:var(--black)}.circle.dot:after{display:none}.circle.marquee-on{transform:scale(1);background:var(--hoverstate);height:1.8rem;border-radius:1.8rem;width:15rem;padding:1.35em 0;overflow:hidden;display:flex;align-items:center;transform:none}.circle.marquee-on span{color:var(--marqueecolor);font-size:var(--size-plus1);line-height:1.8rem;white-space:nowrap;text-transform:none;line-height:1}.circle.marquee-on .marquee-1,.circle.marquee-on .marquee-2{position:absolute;top:calc(50% - var(--size-plus1)*.5);left:0;height:100%;transform:translate3d(0, 0, 0);white-space:nowrap;transition:all 600ms cubic-bezier(0.25, 0.1, 0.25, 1)}.circle.marquee-on .marquee-1{animation:marquee calc(var(--speed)*3) linear infinite}@media print,screen and (min-width: 920px){.circle.marquee-on .marquee-1{animation:marquee var(--speed) linear infinite}}.circle.marquee-on .marquee-2{animation:marquee2 calc(var(--speed)*3) linear infinite}@media print,screen and (min-width: 920px){.circle.marquee-on .marquee-2{animation:marquee2 var(--speed) linear infinite}}.circle:after{content:"open";text-transform:uppercase;font-family:var(--body-font);font-weight:var(--weight-normal);letter-spacing:.02em;text-align:center;position:absolute;top:52.25%;left:0;width:100%;transition:color ease 500ms;font-size:var(--size-minus1);transform:translateY(-50%)}.circle.next:after{content:"next"}.circle.prev:after{content:"prev"}.circle.open:after{content:"open"}.circle.about:after{content:"about"}.spaces-fp-image,.spaces-fp-auto,.spaces-fp{position:relative;z-index:1;height:100vh;width:100%;overflow:hidden}.spaces-fp-image .spaces-fp-inner,.spaces-fp-auto .spaces-fp-inner,.spaces-fp .spaces-fp-inner{position:absolute;top:0;left:0;width:100%;height:100%}.spaces-fp-image video,.spaces-fp-image img,.spaces-fp-auto video,.spaces-fp-auto img,.spaces-fp video,.spaces-fp img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover}.spaces-fp-image img,.spaces-fp-auto img,.spaces-fp img{z-index:1}.spaces-fp-image video,.spaces-fp-auto video,.spaces-fp video{z-index:2}#writing-container{padding-top:calc(var(--menuheight)*2);padding-bottom:25vh}#writing-container .lead p{font-size:var(--size-plus3)}#writing-container article p{font-size:var(--size-plus0);margin:.9rem auto}@media print,screen and (min-width: 920px){#writing-container article p{max-width:75%}}#writing-container article img{margin:3.6rem 0;width:100%;max-height:75vh;object-fit:contain}.spaces-writing{margin-top:5.6rem;margin-bottom:1.8rem}@media print,screen and (min-width: 920px){.spaces-writing.spaces-writing-1{margin-top:15vh}.spaces-writing.spaces-writing-2{margin-top:-30vh;margin-bottom:7.5vh;pointer-events:none !important;z-index:2}.spaces-writing.spaces-writing-2 a{pointer-events:auto}.spaces-writing.spaces-writing-3{margin-bottom:3.6rem}}.spaces-writing h1,.spaces-writing h2,.spaces-writing h3,.spaces-writing h4,.spaces-writing h5,.spaces-writing h6,.spaces-writing p{font-size:var(--size-plus2);margin:0;text-transform:none}.spaces-writing h2{margin:.9rem 0}.spaces-writing p{font-size:var(--size-plus0)}@media print,screen and (min-width: 920px){.spaces-writing p{opacity:0;transition:opacity ease 500ms}}.spaces-writing img,.spaces-writing video{filter:grayscale(100%);transition:filter ease 500ms}.spaces-writing a:hover img{filter:grayscale(0%)}.spaces-writing a:hover p{opacity:1}.block{background:var(--white)}.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.media,.block.media-row-layout{padding-top:1.8rem;padding-bottom:1.8rem}.block.media.--disable-padding-top,.block.media-row-layout.--disable-padding-top{padding-top:0}.block.media.--disable-padding-bottom,.block.media-row-layout.--disable-padding-bottom{padding-bottom:0}.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.block-big-type{margin:1.8rem 0;overflow:hidden;padding:3.6rem .9rem}@media print,screen and (min-width: 920px){.block.block-big-type{padding:.9rem}}@media print,screen and (min-width: 920px){.block.block-big-type .grid-x{height:33vw}}.block.block-big-type span.title{font-size:var(--size-plus12);text-transform:uppercase;line-height:1;display:block}@media print,screen and (min-width: 920px){.block.block-big-type span.title{opacity:0;transform:translate3d(0, 50%, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 12deg);transform-style:preserve-3d}.block.block-big-type span.title:first-child{transition-delay:.1s}.block.block-big-type span.title:nth-child(2){transition-delay:.2s}.block.block-big-type span.title:nth-child(3){transition-delay:.3s}.block.block-big-type span.title:nth-child(4){transition-delay:.4s}.block.block-big-type span.title:nth-child(5){transition-delay:.5s}.block.block-big-type span.title:nth-child(6){transition-delay:.6s}}.block.block-big-type .is-inview .title-container span.title,.block.block-big-type[data-scroll-section-inview] .title-container span.title{opacity:1;transform:none;transition-duration:1.2s}.block.block-title-type{padding:3.6rem 0 1.8rem 0}@media print,screen and (min-width: 920px){.block.block-title-type{padding:.9rem}}@media print,screen and (min-width: 920px){.block.block-title-type{padding:4.5rem 1.8rem}}.block.block-title-type span.title{font-size:var(--size-plus-huge);text-transform:uppercase;line-height:.9}@media print,screen and (min-width: 920px){.block.block-title-type span.title{font-size:var(--size-plus-mhuge)}}.block.block-title-type span.title.admin{font-size:var(--size-plus6)}.block.block-title-type .is-inview .title-container,.block.block-title-type[data-scroll-section-inview] .title-container{display:flex;flex-direction:column}.block.block-title-type .is-inview .title-container span.title .tl,.block.block-title-type[data-scroll-section-inview] .title-container span.title .tl{animation:type .1s linear forwards;opacity:0}.block.block-title-type .is-inview .title-container span.title .tl:nth-child(30n+2),.block.block-title-type[data-scroll-section-inview] .title-container span.title .tl:nth-child(30n+2){animation-delay:75ms}.block.block-title-type .is-inview .title-container span.title .tl:nth-child(30n+3),.block.block-title-type[data-scroll-section-inview] .title-container span.title .tl:nth-child(30n+3){animation-delay:150ms}.block.block-title-type .is-inview .title-container span.title .tl:nth-child(30n+4),.block.block-title-type[data-scroll-section-inview] .title-container span.title .tl:nth-child(30n+4){animation-delay:225ms}.block.block-title-type .is-inview .title-container span.title .tl:nth-child(30n+5),.block.block-title-type[data-scroll-section-inview] .title-container span.title .tl:nth-child(30n+5){animation-delay:300ms}.block.block-title-type .is-inview .title-container span.title .tl:nth-child(30n+6),.block.block-title-type[data-scroll-section-inview] .title-container span.title .tl:nth-child(30n+6){animation-delay:375ms}.block.block-title-type .is-inview .title-container span.title .tl:nth-child(30n+7),.block.block-title-type[data-scroll-section-inview] .title-container span.title .tl:nth-child(30n+7){animation-delay:450ms}.block.block-title-type .is-inview .title-container span.title .tl:nth-child(30n+8),.block.block-title-type[data-scroll-section-inview] .title-container span.title .tl:nth-child(30n+8){animation-delay:525ms}.block.block-title-type .is-inview .title-container span.title .tl:nth-child(30n+9),.block.block-title-type[data-scroll-section-inview] .title-container span.title .tl:nth-child(30n+9){animation-delay:600ms}.block.block-title-type .is-inview .title-container span.title .tl:nth-child(30n+10),.block.block-title-type[data-scroll-section-inview] .title-container span.title .tl:nth-child(30n+10){animation-delay:675ms}.block.block-title-type .is-inview .title-container span.title .tl:nth-child(30n+11),.block.block-title-type[data-scroll-section-inview] .title-container span.title .tl:nth-child(30n+11){animation-delay:750ms}.block.block-title-type .is-inview .title-container span.title .tl:nth-child(30n+12),.block.block-title-type[data-scroll-section-inview] .title-container span.title .tl:nth-child(30n+12){animation-delay:825ms}.block.block-title-type .is-inview .title-container span.title .tl:nth-child(30n+13),.block.block-title-type[data-scroll-section-inview] .title-container span.title .tl:nth-child(30n+13){animation-delay:900ms}.block.block-title-type .is-inview .title-container span.title .tl:nth-child(30n+14),.block.block-title-type[data-scroll-section-inview] .title-container span.title .tl:nth-child(30n+14){animation-delay:975ms}.block.block-title-type .is-inview .title-container span.title .tl:nth-child(30n+15),.block.block-title-type[data-scroll-section-inview] .title-container span.title .tl:nth-child(30n+15){animation-delay:1050ms}.block.block-title-type .is-inview .title-container span.title .tl:nth-child(30n+16),.block.block-title-type[data-scroll-section-inview] .title-container span.title .tl:nth-child(30n+16){animation-delay:1125ms}.block.block-title-type .is-inview .title-container span.title .tl:nth-child(30n+17),.block.block-title-type[data-scroll-section-inview] .title-container span.title .tl:nth-child(30n+17){animation-delay:1200ms}.block.block-title-type .is-inview .title-container span.title .tl:nth-child(30n+18),.block.block-title-type[data-scroll-section-inview] .title-container span.title .tl:nth-child(30n+18){animation-delay:1275ms}.block.block-title-type .is-inview .title-container span.title .tl:nth-child(30n+19),.block.block-title-type[data-scroll-section-inview] .title-container span.title .tl:nth-child(30n+19){animation-delay:1350ms}.block.block-title-type .is-inview .title-container span.title .tl:nth-child(30n+20),.block.block-title-type[data-scroll-section-inview] .title-container span.title .tl:nth-child(30n+20){animation-delay:1425ms}.block.block-title-type .is-inview .title-container span.title .tl:nth-child(30n+21),.block.block-title-type[data-scroll-section-inview] .title-container span.title .tl:nth-child(30n+21){animation-delay:1500ms}.block.block-title-type .is-inview .title-container span.title .tl:nth-child(30n+22),.block.block-title-type[data-scroll-section-inview] .title-container span.title .tl:nth-child(30n+22){animation-delay:1575ms}.block.block-title-type .is-inview .title-container span.title .tl:nth-child(30n+23),.block.block-title-type[data-scroll-section-inview] .title-container span.title .tl:nth-child(30n+23){animation-delay:1650ms}.block.block-title-type .is-inview .title-container span.title .tl:nth-child(30n+24),.block.block-title-type[data-scroll-section-inview] .title-container span.title .tl:nth-child(30n+24){animation-delay:1725ms}.block.block-title-type .is-inview .title-container span.title .tl:nth-child(30n+25),.block.block-title-type[data-scroll-section-inview] .title-container span.title .tl:nth-child(30n+25){animation-delay:1800ms}.block.block-title-type .is-inview .title-container span.title .tl:nth-child(30n+26),.block.block-title-type[data-scroll-section-inview] .title-container span.title .tl:nth-child(30n+26){animation-delay:1875ms}.block.block-title-type .is-inview .title-container span.title .tl:nth-child(30n+27),.block.block-title-type[data-scroll-section-inview] .title-container span.title .tl:nth-child(30n+27){animation-delay:1950ms}.block.block-title-type .is-inview .title-container span.title .tl:nth-child(30n+28),.block.block-title-type[data-scroll-section-inview] .title-container span.title .tl:nth-child(30n+28){animation-delay:2025ms}.block.block-title-type .is-inview .title-container span.title .tl:nth-child(30n+29),.block.block-title-type[data-scroll-section-inview] .title-container span.title .tl:nth-child(30n+29){animation-delay:2100ms}.block.block-title-type .is-inview .title-container span.title .tl:nth-child(30n+30),.block.block-title-type[data-scroll-section-inview] .title-container span.title .tl:nth-child(30n+30){animation-delay:2175ms}.block.block-title-type .is-inview .title-container span.title .tl:nth-child(30n+31),.block.block-title-type[data-scroll-section-inview] .title-container span.title .tl:nth-child(30n+31){animation-delay:2250ms}.block.block-title-perspective{padding:3.6rem 0 1.8rem 0}@media print,screen and (min-width: 920px){.block.block-title-perspective{padding:.9rem}}@media print,screen and (min-width: 920px){.block.block-title-perspective{padding:4.5rem 1.8rem}}.block.block-title-perspective span.title{font-size:var(--size-plus-huge);text-transform:uppercase;line-height:.9}@media print,screen and (min-width: 920px){.block.block-title-perspective span.title{font-size:var(--size-plus-mhuge)}}.block.block-title-perspective span.title.admin{font-size:var(--size-plus6)}.block.block-title-perspective .title-container{display:flex;flex-direction:column}.block.block-title-perspective .title-container span.title{display:block}@media print,screen and (min-width: 920px){.block.block-title-perspective .title-container span.title{opacity:0;transform:translate3d(0, 120%, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 6deg);transform-style:preserve-3d}.block.block-title-perspective .title-container span.title:first-child{transition-delay:.1s}.block.block-title-perspective .title-container span.title:nth-child(2){transition-delay:.2s}.block.block-title-perspective .title-container span.title:nth-child(3){transition-delay:.3s}.block.block-title-perspective .title-container span.title:nth-child(4){transition-delay:.4s}.block.block-title-perspective .title-container span.title:nth-child(5){transition-delay:.5s}.block.block-title-perspective .title-container span.title:nth-child(6){transition-delay:.6s}}.block.block-title-perspective .is-inview .title-container span.title,.block.block-title-perspective[data-scroll-section-inview] .title-container span.title{opacity:1;transform:none;transition-duration:.8s}.block.block-marquee h5{line-height:var(--size-plus1);font-size:var(--size-plus2);white-space:nowrap;text-transform:uppercase;border-top:var(--line);border-bottom:var(--line);padding:.9rem;padding:1.35rem .9rem;text-transform:capitalize;margin:0;border-right:var(--line)}@media print,screen and (min-width: 920px){.block.block-marquee h5{padding:2.135rem 1.8rem}}.block.block-fp-1{overflow:hidden}.block.block-fp-1 .grid-container:after,.block.block-fp-1 .grid-container:before{content:" ";height:1.8rem;left:0;width:100%;background-color:var(--white);position:absolute;z-index:2}.block.block-fp-1 .grid-container:before{top:0}.block.block-fp-1 .grid-container:after{bottom:0}.block.block-fp-1 .grid-container{z-index:1;position:relative}.block.block-fp-1 .--left{margin-top:.9rem;margin-bottom:.9rem}@media print,screen and (min-width: 920px){.block.block-fp-1 .--left{padding-right:1.8rem}}.block.block-fp-1 .flex-image{height:50vw;padding-bottom:0;margin:.9rem 0}@media print,screen and (min-width: 920px){.block.block-fp-1 .flex-image{margin:.9rem 0;height:25vw}.block.block-fp-1 .flex-image:first-of-type{margin-top:0}.block.block-fp-1 .flex-image:last-of-type{margin-bottom:0}}.block.block-fp-1 .flex-image img{height:100%;object-fit:cover}.block.block-fp-1 .text-outer{background:var(--mediumgrey);padding:.9em;margin:.45rem 0;gap:.9em;min-height:100vw;display:inline-flex}@media print,screen and (min-width: 920px){.block.block-fp-1 .text-outer{gap:2.7em;padding:1.8em}}.block.block-fp-1 .text-outer .logo{display:flex;align-items:flex-end}.block.block-fp-1 .text-outer svg,.block.block-fp-1 .text-outer img{height:25vw;width:auto}@media print,screen and (max-width: 920px){.block.block-fp-1 .text-outer svg,.block.block-fp-1 .text-outer img{height:100vw;max-width:3.6rem;margin-right:.9rem}}@media print,screen and (min-width: 920px){.block.block-fp-1 .text-outer{min-height:25vw}}.block.block-fp-1 .text-outer .text-inner{height:100%;min-height:100vw;display:flex;flex-direction:column;justify-content:space-between}@media print,screen and (min-width: 920px){.block.block-fp-1 .text-outer .text-inner{min-height:25vw}}.block.block-fp-1 .text-outer .text-inner h2{margin:.9rem 0;color:var(--yellow);font-size:var(--size-plus10)}.block.block-fp-1 .text-outer .text-inner p{margin:0;color:var(--white)}.block.block-fp-speakers{padding-top:1.8rem;padding-bottom:1.8rem}@media print,screen and (min-width: 920px){.block.block-fp-speakers .line-container .line.vertical.offset{height:calc(100% + 3.6rem)}}.block.block-fp-speakers .cta{background:var(--bg);z-index:2;margin-left:1px;margin-right:1px;width:calc(100% - 2px);margin-top:-1.8rem;margin-bottom:0;padding-top:2.7rem;padding-bottom:2.7rem}@media print,screen and (min-width: 920px){.block.block-fp-speakers .cta{padding-top:3.6rem;padding-bottom:3.6rem;padding-top:10vh;padding-bottom:10vh;border-top:1.8rem solid var(--white)}}.block.block-fp-speakers .cta a{text-transform:uppercase;font-size:var(--size-plus2)}.block.block-fp-speakers .speaker-single .roller-marquee{display:none}.block.block-fp-speakers .speaker-single .image-card{cursor:pointer}.block.block-fp-speakers .panel{padding:1.8em;background:var(--red);margin-bottom:1.8rem}@media print,screen and (min-width: 920px){.block.block-fp-speakers .panel{min-height:100vh;min-height:calc(100vh - var(--menuheight)*.5);transition:all 400ms cubic-bezier(0.215, 0.61, 0.355, 1);transform:translateX(-110%);transform-style:preserve-3d;display:inline-block}}.block.block-fp-speakers .panel p{margin:0}.block.block-fp-speakers .panel .cell{margin-top:1.35rem;margin-bottom:1.35rem}@media print,screen and (min-width: 920px){.block.block-fp-speakers .is-inview .panel{transform:translateX(0)}}.block.block-cta-block{border-top:var(--line);border-bottom:var(--line);padding-top:1.8rem;padding-bottom:1.8rem;margin-top:1.8rem}.block.block-type{padding-top:3.6rem;padding-bottom:3.6rem}@media print,screen and (min-width: 920px){.block.block-type{padding-top:7.2rem;padding-bottom:7.2rem}}.block.block-type.--padding-top-reduce{padding-top:1.8rem}@media print,screen and (min-width: 920px){.block.block-type.--padding-top-reduce{padding-top:3.6rem}}.block.block-type.--padding-top-none{padding-top:.9em}.block.block-type.--padding-bottom-reduce{padding-bottom:1.8rem}@media print,screen and (min-width: 920px){.block.block-type.--padding-bottom-reduce{padding-bottom:3.6rem}}.block.block-type.--padding-bottom-none{padding-bottom:.9em}.block.block-type .grid-margin-y>.cell{margin-top:.45em;margin-bottom:.45em}.block.block-type h1,.block.block-type h2,.block.block-type h3,.block.block-type h4,.block.block-type h5,.block.block-type h6{margin:0}.block.block-type h1.big-header.h1,.block.block-type h2.big-header.h1,.block.block-type h3.big-header.h1,.block.block-type h4.big-header.h1,.block.block-type h5.big-header.h1,.block.block-type h6.big-header.h1{font-size:var(--size-plus-huge)}.block.block-type h1.big-header.h2,.block.block-type h2.big-header.h2,.block.block-type h3.big-header.h2,.block.block-type h4.big-header.h2,.block.block-type h5.big-header.h2,.block.block-type h6.big-header.h2{font-size:var(--size-plus13)}.block.block-type h1.big-header.h3,.block.block-type h2.big-header.h3,.block.block-type h3.big-header.h3,.block.block-type h4.big-header.h3,.block.block-type h5.big-header.h3,.block.block-type h6.big-header.h3{font-size:var(--size-plus6)}.block.block-type h1.big-header.h4,.block.block-type h2.big-header.h4,.block.block-type h3.big-header.h4,.block.block-type h4.big-header.h4,.block.block-type h5.big-header.h4,.block.block-type h6.big-header.h4{font-size:var(--size-plus4)}.block.block-type h1.big-header.h5,.block.block-type h2.big-header.h5,.block.block-type h3.big-header.h5,.block.block-type h4.big-header.h5,.block.block-type h5.big-header.h5,.block.block-type h6.big-header.h5{font-size:var(--size-plus2)}.block.block-type .quote p{margin:.45rem 0}.block.block-type .quote .lead p{line-height:1;text-transform:uppercase;font-size:var(--size-plus4)}.block.block-type .quote hr{margin:.9rem 0;max-width:1.8rem}.block.block-type .quote.big .lead p{font-size:var(--size-plus10)}.block.block-cta-text{position:relative;margin:0 0 -2.7rem 0;padding:0}.block.block-cta-text.--yellow{--lightgrey: var(--yellow)}.block.block-cta-text.--red{--lightgrey: var(--red)}.block.block-cta-text.--blue{--lightgrey: var(--blue)}.block.block-cta-text.--black{--lightgrey: var(--black)}.block.block-cta-text .cta{position:initial;background:var(--bg);z-index:2;margin-left:1px;margin-right:1px;width:calc(100% - 2px);margin-bottom:0;margin-top:0;padding-top:3.6rem;padding-bottom:3.6rem}@media print,screen and (min-width: 920px){.block.block-cta-text .cta{padding-top:5.2rem;padding-bottom:5.2rem;padding-top:15vh;padding-bottom:15vh}}.block.block-cta-text .cta a{text-transform:uppercase;font-size:var(--size-plus3)}.block.block-committee{padding-top:1.8rem;padding-bottom:1.8rem}.block.block-committee .speaker-single,.block.block-speakers .speaker-single{cursor:pointer;padding-top:1.35rem;padding-bottom:1.35rem;overflow:visible;position:relative;position:relative}.block.block-committee .speaker-single.last-of-type,.block.block-speakers .speaker-single.last-of-type{margin-bottom:.9rem}.block.block-committee .speaker-single .person-card,.block.block-speakers .speaker-single .person-card{display:none}@media print,screen and (min-width: 920px){.block.block-committee .speaker-single .person-card,.block.block-speakers .speaker-single .person-card{display:block;position:absolute;z-index:3;top:50%;height:15vw;width:15vw;right:15vw;opacity:0;pointer-events:none;box-sizing:border-box;transition:all 600ms cubic-bezier(0.215, 0.61, 0.355, 1) scale(0.25);transform:rotate(12.5deg) translateY(-50%)}.block.block-committee .speaker-single .person-card video,.block.block-committee .speaker-single .person-card iframe,.block.block-committee .speaker-single .person-card img,.block.block-speakers .speaker-single .person-card video,.block.block-speakers .speaker-single .person-card iframe,.block.block-speakers .speaker-single .person-card img{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1;object-fit:cover;filter:grayscale(100%)}}@media print,screen and (min-width: 920px){.block.block-committee .speaker-single:hover .person-card,.block.block-speakers .speaker-single:hover .person-card{opacity:1;transform:rotate(0) translateY(-50%);transition:all 400ms cubic-bezier(0.215, 0.61, 0.355, 1)}}.block.block-committee .speaker-single .first,.block.block-speakers .speaker-single .first{text-align:right}.block.block-committee .speaker-single .first span,.block.block-speakers .speaker-single .first span{line-height:var(--size-plus5);font-size:var(--size);vertical-align:top}.block.block-committee .speaker-single .last,.block.block-speakers .speaker-single .last{text-align:left}.block.block-committee .speaker-single .last span,.block.block-speakers .speaker-single .last span{line-height:var(--size-plus8);font-size:var(--size-plus8);text-transform:uppercase;vertical-align:top}.block.block-committee .speaker-single .marquee,.block.block-speakers .speaker-single .marquee{pointer-events:none;opacity:0;transition:all 300ms cubic-bezier(0.215, 0.61, 0.355, 1);border:none;z-index:2;position:absolute;top:0;left:0;width:100%}@media print,screen and (max-width: 920px){.block.block-committee .speaker-single .marquee,.block.block-speakers .speaker-single .marquee{display:none !important}}.block.block-committee .speaker-single .marquee span,.block.block-speakers .speaker-single .marquee span{font-size:var(--size-plus1);white-space:nowrap;height:var(--size-plus1);text-transform:none;line-height:1;color:var(--marqueecolor)}.block.block-committee .speaker-single .marquee span span,.block.block-speakers .speaker-single .marquee span span{margin:0 .49em}@media print,screen and (min-width: 920px){.block.block-committee .speaker-single .marquee,.block.block-speakers .speaker-single .marquee{display:flex;align-items:center;width:calc(100% + 3.6rem);top:0;bottom:0;height:100%;margin-left:-1.8rem;margin-right:-3.8rem}}.block.block-committee .speaker-single .marquee span,.block.block-speakers .speaker-single .marquee span{text-transform:none}.block.block-committee .speaker-single .speaker-single-text,.block.block-speakers .speaker-single .speaker-single-text{z-index:1;position:relative}.block.block-committee .speaker-single:after,.block.block-speakers .speaker-single:after{content:" ";position:absolute;transition:all 200ms cubic-bezier(0.215, 0.61, 0.355, 1);top:50%;transform:translateY(-50%);left:0;width:100%;z-index:1;background:var(--hoverstate);height:100%;max-height:0px}@media print,screen and (max-width: 920px){.block.block-committee .speaker-single:after,.block.block-speakers .speaker-single:after{display:none}}@media print,screen and (min-width: 920px){.block.block-committee .speaker-single:after,.block.block-speakers .speaker-single:after{width:calc(100% + 5.4rem);left:-1.8rem;right:-3.8rem}}.block.block-committee .speaker-single:hover .marquee,.block.block-speakers .speaker-single:hover .marquee{transition:all 600ms cubic-bezier(0.215, 0.61, 0.355, 1);opacity:1}.block.block-committee .speaker-single:hover:after,.block.block-speakers .speaker-single:hover:after{transition:all 600ms cubic-bezier(0.215, 0.61, 0.355, 1);max-height:3.6rem}.block.block-committee h2,.block.block-speakers h2{color:var(--hoverstate);margin:.9rem 0}.block.block-committee .line-container,.block.block-speakers .line-container{margin-bottom:.9em}.block.block-committee .line-container.last,.block.block-speakers .line-container.last{margin-bottom:1px}@media print,screen and (min-width: 920px){.block.block-committee .speakers-panel,.block.block-speakers .speakers-panel{margin-left:0}.block.block-committee .speakers-panel.medium-3,.block.block-speakers .speakers-panel.medium-3{width:calc(25% - 1.8rem)}}.block.block-committee .speakers-panel .panel,.block.block-speakers .speakers-panel .panel{background-color:var(--hoverstate);display:flex;height:100%;flex-direction:row;flex-wrap:wrap;justify-content:flex-start;align-items:center;padding:1.8em}.block.block-committee .speakers-panel .panel h3,.block.block-speakers .speakers-panel .panel h3{margin:0;text-transform:none;font-weight:var(--weight-normal);color:var(--white);line-height:var(--body-line-height);font-size:var(--size-plus3)}@media print,screen and (min-width: 920px){.block.block-committee .speakers-panel .panel,.block.block-speakers .speakers-panel .panel{position:relative}.block.block-committee .speakers-panel .panel:after,.block.block-speakers .speakers-panel .panel:after{content:" ";position:absolute;bottom:.9rem;left:.9rem;right:.9rem;background:var(--white);height:1px}}.block.block-committee .people-grid:last-of-type .panel:after,.block.block-speakers .people-grid:last-of-type .panel:after{display:none}.block.block-title-media h1{z-index:4;line-height:1;font-size:var(--size-plus-huge);position:absolute;top:0;left:0;background:var(--white);padding:.9rem;margin:0}@media print,screen and (min-width: 920px){.block.block-title-media h1{padding:1.8rem 3.6rem 1.8rem 0}}.block.block-accordion{margin-top:1.8rem;border-bottom:var(--line)}.block.block-accordion .title-block{border-right:none;border-bottom:var(--line)}@media print,screen and (min-width: 920px){.block.block-accordion .title-block{border-bottom:none;border-right:var(--line)}}.block.block-accordion .title-block h3{margin:0;padding:1.8rem;font-weight:var(--weight-sbold)}@media print,screen and (min-width: 920px){.block.block-accordion .title-block h3{padding:.9em}}.block.block-accordion .title-block h3 span{display:block;font-weight:var(--weight-normal)}.block.block-accordion .accordian{padding:1.8rem 1.8rem 0}.block.block-accordion .accordian .line-container{width:calc(100% + 3.6rem);margin-left:-1.8rem;margin-top:1.8rem;margin-bottom:0}.block.block-accordion .accordian .accordian-title{cursor:pointer}.block.block-accordion .accordian .accordian-title.disable{cursor:default}.block.block-accordion .accordian .accordian-title.disable:hover h5,.block.block-accordion .accordian .accordian-title.disable h5{transform:none}.block.block-accordion .accordian .accordian-title h5{font-size:var(--size-plus3);transition:750ms all cubic-bezier(0.215, 0.61, 0.355, 1);margin:.45rem 0;text-transform:none}@media print,screen and (min-width: 920px){.block.block-accordion .accordian .accordian-title h5{margin:0}}.block.block-accordion .accordian .accordian-title:hover h5{transform:translateX(0.45em)}.block.block-accordion .accordian .accordian-title .plus{transition:750ms all cubic-bezier(0.215, 0.61, 0.355, 1)}.block.block-accordion .accordian .accordian-title:hover .plus{transform:rotate(180deg)}.block.block-accordion .accordian .accordian-text{display:none;padding:.9rem 0;overflow:hidden}.block.block-accordion .accordian .accordian-text p{margin:.9rem 0 0 0;max-width:60ch}.block.block-accordion .accordian .plus rect{transition:all ease 500ms;transform:scaleY(1);transform-origin:50% 50%}.block.block-accordion .accordian.active:hover h5,.block.block-accordion .accordian.active h5{transform:none}.block.block-accordion .accordian.active .accordian-title .plus .vertical-line{transform:scaleY(0)}.block.block-accordion .accordian.active .accordian-title:hover .plus .vertical-line{transform:scaleY(1) rotate(45deg)}.block.block-accordion .accordian.active .accordian-title:hover .plus .horizontal-line{transform:scaleY(1) rotate(45deg)}.speaker-modal{position:fixed;z-index:99999;top:0;left:0;width:100%;height:100%;transform:translateY(-100%);pointer-events:none;transition:all 1ms .8s cubic-bezier(0.19, 1, 0.22, 1)}.speaker-modal.--border-offset:after,.speaker-modal.--border-offset-top:after{display:none}@media print,screen and (max-width: 920px){.speaker-modal{opacity:0;display:none}}.speaker-modal .speaker-modal-inner{z-index:2;position:absolute;top:0;height:100%;right:0;width:100%;overflow-x:hidden}@media print,screen and (min-width: 920px){.speaker-modal .speaker-modal-inner{width:60rem}}.speaker-modal .speaker-modal-inner .speaker-modal-inner-cell{background:var(--bg);margin:.45rem;padding:1.8rem;transform:translateX(100%);transition:transform .8s cubic-bezier(0.19, 1, 0.22, 1)}@media print,screen and (max-width: 920px){.speaker-modal .speaker-modal-inner .speaker-modal-inner-cell{padding:.45rem}}.speaker-modal .speaker-modal-inner .speaker-modal-inner-cell.close-modal-cell{display:flex;justify-content:flex-end;background-color:var(--hoverstate)}.speaker-modal .speaker-modal-inner .speaker-modal-inner-cell.person-modal-cell{min-height:100vh;min-height:calc(100vh - 7.2rem);transition:transform .8s cubic-bezier(0.19, 1, 0.22, 1) .2s}.speaker-modal .speaker-modal-inner img{filter:grayscale(100%)}.speaker-modal .speaker-modal-inner h3{line-height:1;font-size:var(--size-plus9);margin:0;display:flex;flex-direction:column}.speaker-modal .speaker-modal-inner h3 span.fn{text-transform:none;vertical-align:top;padding-top:1em;font-size:var(--size-plus2);display:inline-block}.speaker-modal .speaker-modal-inner .panel{padding:1.8rem;border:var(--line);position:relative}@media print,screen and (max-width: 920px){.speaker-modal .speaker-modal-inner .panel{padding:3.6rem}}@media print,screen and (min-width: 920px){.speaker-modal .speaker-modal-inner .panel .align-self-top{position:sticky;top:1.8rem}}.speaker-modal .speaker-modal-inner .panel p:last-of-type{margin-bottom:0}.speaker-modal .speaker-modal-inner .panel:before{content:" ";width:2px;height:1.8rem;position:absolute;top:0px;left:-1px;background:var(--white);z-index:2}.speaker-modal .speaker-modal-inner .panel:after{content:" ";height:2px;width:1.8rem;position:absolute;right:0px;bottom:-1px;background:var(--white);z-index:2}.speaker-modal:before{content:" ";z-index:1;position:absolute;top:0;left:0;width:100%;height:100%;opacity:.4;transform:translateX(-100%);background:var(--black);transition:transform 1.6s cubic-bezier(0.19, 1, 0.22, 1)}.speaker-modal.--active{transform:translateX(0);pointer-events:auto;transition:none}@media print,screen and (max-width: 920px){.speaker-modal.--active{opacity:1}}.speaker-modal.--active:before{opacity:.4;transform:translateX(0)}.speaker-modal.--active .speaker-modal-inner-cell{transform:translateX(0)}#trans{position:fixed;top:0;left:0;width:100%;height:100%;background:#fff;transition:opacity ease 600ms;z-index:999;opacity:0;touch-action:none;pointer-events:none}#trans.in{opacity:1}#trans.reset.out{opacity:1}.block-mailchimp .content{width:100%;gap:.9em;display:flex;flex-direction:column;flex-wrap:nowrap}@media print,screen and (min-width: 920px){.block-mailchimp .content{gap:7.2em;flex-direction:row}.block-mailchimp .content.submit{justify-content:flex-end;padding-top:3.6em;padding-bottom:3.6em}}.block-mailchimp .input{position:relative;z-index:1;flex:1;min-width:10em}.block-mailchimp input#submit{transition:all 500ms cubic-bezier(0.215, 0.61, 0.355, 1);cursor:pointer;background:var(--hoverstate);height:2em;border:1px solid var(--hoverstate) !important;border-radius:1.8rem;min-width:12rem;overflow:hidden;display:inline-block;transform:none;justify-content:center;line-height:var(--size);font-size:var(--size);margin:0;padding:.45em 1.8em}.block-mailchimp input#submit:hover{color:var(--hoverstate);background-color:rgba(0,0,0,0)}.block-mailchimp .input__field{position:relative;display:block;float:right;padding:.8em;width:60%;border:none;border-radius:0;background:rgba(0,0,0,0);color:var(--black);-webkit-appearance:none}.block-mailchimp .input__field:focus{outline:none}.block-mailchimp .input__label{display:inline-block;padding:0 1em;width:30%;color:var(--black);font-size:1.125em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.block-mailchimp .input__label-content{position:relative;display:block;padding:1.8em 0 0;width:100%}.block-mailchimp .input__field--haruki{padding:.4em .25em;width:100%;background:rgba(0,0,0,0);color:var(--black);font-size:1.125em}.block-mailchimp .input__label--haruki{position:absolute;width:100%;text-align:left;pointer-events:none}.block-mailchimp .input__label-content--haruki{transition:transform .3s}.block-mailchimp .input__label--haruki::before,.block-mailchimp .input__label--haruki::after{content:"";position:absolute;left:0;z-index:-1;width:100%;height:2px;background:var(--black);transition:transform .3s}.block-mailchimp .input__label--haruki::before{top:0}.block-mailchimp .input__label--haruki::after{bottom:0}.block-mailchimp .input__field--haruki:focus+.input__label--haruki .input__label-content--haruki,.block-mailchimp .input--filled+.input__label--hoshi{transform:translate3d(0, 0, 0)}.block-mailchimp .input--hoshi{overflow:hidden}.block-mailchimp .input__field--hoshi{margin-top:1em;padding:1.35em 0;width:100%;background:rgba(0,0,0,0);color:var(--black)}.block-mailchimp .input__label--hoshi{position:absolute;bottom:0;left:0;padding:0;width:100%;height:100%;text-align:left;pointer-events:none}.block-mailchimp .input__label-content--hoshi{position:absolute;color:var(--mediumgrey)}.block-mailchimp .input__label--hoshi::before,.block-mailchimp .input__label--hoshi::after{content:"";position:absolute;top:0;left:0;width:100%;height:calc(100% - 10px);border-bottom:1px solid var(--mediumgrey)}.block-mailchimp .input__label--hoshi::after{margin-top:1px;border-bottom:2px solid var(--red);transform:translate3d(-100%, 0, 0);transition:transform .3s}.block-mailchimp .input__label--hoshi-color-1::after{border-color:var(--red)}.block-mailchimp .input__label--hoshi-color-2::after{border-color:var(--yellow)}.block-mailchimp .input__label--hoshi-color-3::after{border-color:var(--blue)}.block-mailchimp .input__field--hoshi:focus+.input__label--hoshi::after,.block-mailchimp .input--filled .input__label--hoshi::after{transform:translate3d(0, 0, 0)}.block-mailchimp .input--filled .input__label--hoshi .input__label-content--hoshi{animation:anim-1 .3s forwards;transition:opacity ease 500ms}.block-mailchimp span.input.input--hoshi.input--filled .input__label--hoshi span{opacity:.15 !important;animation:none;transform:translate3d(0, -40%, 0)}.block-mailchimp .input__field--hoshi:focus+.input__label--hoshi .input__label-content--hoshi{animation:anim-1 .3s forwards}@-webkit-keyframes anim-1{50%{opacity:0;transform:translate3d(1em, 0, 0)}51%{opacity:0;transform:translate3d(-1em, -40%, 0)}100%{opacity:1;transform:translate3d(0, -40%, 0)}}@keyframes anim-1{50%{opacity:0;transform:translate3d(1em, 0, 0)}51%{opacity:0;transform:translate3d(-1em, -40%, 0)}100%{opacity:1;transform:translate3d(0, -40%, 0)}}.block-form fieldset{border:none;padding:0;margin:0}.block-form fieldset .frm_fields_container{width:100%;display:flex;gap:.9em;flex-direction:column;flex-wrap:nowrap}@media print,screen and (min-width: 920px){.block-form fieldset .frm_fields_container{gap:1.8em}}.block-form fieldset .frm_fields_container .frm_description{display:none}.block-form fieldset .frm_fields_container .frm_verify{display:none}@media print,screen and (min-width: 920px){.block-form fieldset .frm_fields_container{flex-direction:row;flex-wrap:wrap;justify-content:space-between}}.block-form fieldset .frm_fields_container>.frm_form_field{width:100%;margin:.9em 0}@media print,screen and (min-width: 920px){.block-form fieldset .frm_fields_container>.frm_form_field{margin:0;width:auto;min-width:30%;flex-grow:1}}@media print,screen and (min-width: 920px)and (min-width: 1300px){.block-form fieldset .frm_fields_container>.frm_form_field{min-width:20%}}.block-form fieldset .frm_fields_container>.frm_form_field label{display:none}.block-form fieldset .frm_fields_container>.frm_form_field input{width:100%;border:none;border-bottom:1px solid var(--red);padding:.45em 0}.block-form fieldset .frm_fields_container>.frm_form_field.yellow{--red: var(--yellow)}.block-form fieldset .frm_fields_container>.frm_form_field.blue{--red: var(--blue)}.block-form fieldset .frm_none_container{display:none}.block-form fieldset .frm_submit,.block-form fieldset.submit{flex:1;min-width:100%;display:inline-flex;justify-content:flex-end;padding-top:1.8em;padding-bottom:.9em}@media print,screen and (min-width: 920px){.block-form fieldset .frm_submit,.block-form fieldset.submit{padding-top:4.5em;padding-bottom:1.8em}}.block-form fieldset .input{position:relative;z-index:1;flex:1;min-width:10em}.block-form fieldset .frm_submit button{transition:all 500ms cubic-bezier(0.215, 0.61, 0.355, 1);cursor:pointer;background:var(--hoverstate);height:auto;border:1px solid var(--hoverstate) !important;border-radius:1.8rem;min-width:15rem;overflow:hidden;display:inline-block;transform:none;justify-content:center;color:var(--white);line-height:1;font-size:var(--size);margin:0;line-height:1;display:block;padding:1em 1.8em}.block-form fieldset .frm_submit button:hover{color:var(--hoverstate);background-color:rgba(0,0,0,0)}.block-form fieldset .input__field{position:relative;display:block;float:right;padding:.8em;width:60%;border:none;border-radius:0;background:rgba(0,0,0,0);color:var(--black);-webkit-appearance:none}.block-form fieldset .input__field:focus{outline:none}.block-form fieldset .input__label{display:inline-block;padding:0 1em;width:30%;color:var(--black);font-size:1.125em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.block-form fieldset .input__label-content{position:relative;display:block;padding:1.8em 0 0;width:100%}.block-form fieldset .input__field--haruki{padding:.4em .25em;width:100%;background:rgba(0,0,0,0);color:var(--black);font-size:1.125em}.block-form fieldset .input__label--haruki{position:absolute;width:100%;text-align:left;pointer-events:none}.block-form fieldset .input__label-content--haruki{transition:transform .3s}.block-form fieldset .input__label--haruki::before,.block-form fieldset .input__label--haruki::after{content:"";position:absolute;left:0;z-index:-1;width:100%;height:2px;background:var(--black);transition:transform .3s}.block-form fieldset .input__label--haruki::before{top:0}.block-form fieldset .input__label--haruki::after{bottom:0}.block-form fieldset .input__field--haruki:focus+.input__label--haruki .input__label-content--haruki,.block-form fieldset .input--filled+.input__label--hoshi{transform:translate3d(0, 0, 0)}.block-form fieldset .input--hoshi{overflow:hidden}.block-form fieldset .input__field--hoshi{margin-top:1em;padding:1.35em 0;width:100%;background:rgba(0,0,0,0);color:var(--black)}.block-form fieldset .input__label--hoshi{position:absolute;bottom:0;left:0;padding:0;width:100%;height:100%;text-align:left;pointer-events:none}.block-form fieldset .input__label-content--hoshi{position:absolute;color:var(--mediumgrey)}.block-form fieldset .input__label--hoshi::before,.block-form fieldset .input__label--hoshi::after{content:"";position:absolute;top:0;left:0;width:100%;height:calc(100% - 10px);border-bottom:1px solid var(--mediumgrey)}.block-form fieldset .input__label--hoshi::after{margin-top:1px;border-bottom:2px solid var(--red);transform:translate3d(-100%, 0, 0);transition:transform .3s}.block-form fieldset .input__label--hoshi-color-1::after{border-color:var(--red)}.block-form fieldset .input__label--hoshi-color-2::after{border-color:var(--yellow)}.block-form fieldset .input__label--hoshi-color-3::after{border-color:var(--blue)}.block-form fieldset .input__field--hoshi:focus+.input__label--hoshi::after,.block-form fieldset .input--filled .input__label--hoshi::after{transform:translate3d(0, 0, 0)}.block-form fieldset .input--filled .input__label--hoshi .input__label-content--hoshi{animation:anim-1 .3s forwards;transition:opacity ease 500ms}.block-form fieldset span.input.input--hoshi.input--filled .input__label--hoshi span{opacity:.15 !important;animation:none;transform:translate3d(0, -40%, 0)}.block-form fieldset .input__field--hoshi:focus+.input__label--hoshi .input__label-content--hoshi{animation:anim-1 .3s forwards}@-webkit-keyframes anim-1{50%{opacity:0;transform:translate3d(1em, 0, 0)}51%{opacity:0;transform:translate3d(-1em, -40%, 0)}100%{opacity:1;transform:translate3d(0, -40%, 0)}}@keyframes anim-1{50%{opacity:0;transform:translate3d(1em, 0, 0)}51%{opacity:0;transform:translate3d(-1em, -40%, 0)}100%{opacity:1;transform:translate3d(0, -40%, 0)}}@media print,screen and (min-width: 920px){.frm_message{width:50%;margin-left:50%;padding:1.8em}}

/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VSb290IjoiaHR0cHM6Ly9kZXYubmVlZHRoaW5raW5nLmNvbS93aWxkL2FwcC90aGVtZXMvbmVlZC9hc3NldHMvc2NzcyIsInNvdXJjZXMiOlsiZmlsZTovLy92YXIvd3d3L2h0bWwvc3BhY2VzL2FwcC90aGVtZXMvc3BhY2VzL2Fzc2V0cy9zY3NzL2J1aWxkLnNjc3MiLCJmaWxlOi8vL3Zhci93d3cvaHRtbC9zcGFjZXMvYXBwL3RoZW1lcy9zcGFjZXMvYXNzZXRzL3Njc3MvdGhlbWUuc2NzcyIsImZpbGU6Ly8vdmFyL3d3dy9odG1sL3NwYWNlcy9hcHAvdGhlbWVzL3NwYWNlcy9hc3NldHMvc2Nzcy9mb3VuZGF0aW9uL3ZlbmRvci9ub3JtYWxpemUuc2NzcyIsImZpbGU6Ly8vdmFyL3d3dy9odG1sL3NwYWNlcy9hcHAvdGhlbWVzL3NwYWNlcy9hc3NldHMvc2Nzcy9mb3VuZGF0aW9uL19nbG9iYWwuc2NzcyIsImZpbGU6Ly8vdmFyL3d3dy9odG1sL3NwYWNlcy9hcHAvdGhlbWVzL3NwYWNlcy9hc3NldHMvc2Nzcy9mb3VuZGF0aW9uL3V0aWwvX3VuaXQuc2NzcyIsImZpbGU6Ly8vdmFyL3d3dy9odG1sL3NwYWNlcy9hcHAvdGhlbWVzL3NwYWNlcy9hc3NldHMvc2Nzcy9mb3VuZGF0aW9uL3V0aWwvX21peGlucy5zY3NzIiwiZmlsZTovLy92YXIvd3d3L2h0bWwvc3BhY2VzL2FwcC90aGVtZXMvc3BhY2VzL2Fzc2V0cy9zY3NzL2ZvdW5kYXRpb24veHktZ3JpZC9fY2xhc3Nlcy5zY3NzIiwiZmlsZTovLy92YXIvd3d3L2h0bWwvc3BhY2VzL2FwcC90aGVtZXMvc3BhY2VzL2Fzc2V0cy9zY3NzL2ZvdW5kYXRpb24veHktZ3JpZC9fZ3V0dGVycy5zY3NzIiwiZmlsZTovLy92YXIvd3d3L2h0bWwvc3BhY2VzL2FwcC90aGVtZXMvc3BhY2VzL2Fzc2V0cy9zY3NzL2ZvdW5kYXRpb24veHktZ3JpZC9fZ3JpZC5zY3NzIiwiZmlsZTovLy92YXIvd3d3L2h0bWwvc3BhY2VzL2FwcC90aGVtZXMvc3BhY2VzL2Fzc2V0cy9zY3NzL2ZvdW5kYXRpb24veHktZ3JpZC9fY2VsbC5zY3NzIiwiZmlsZTovLy92YXIvd3d3L2h0bWwvc3BhY2VzL2FwcC90aGVtZXMvc3BhY2VzL2Fzc2V0cy9zY3NzL2ZvdW5kYXRpb24vdXRpbC9fYnJlYWtwb2ludC5zY3NzIiwiZmlsZTovLy92YXIvd3d3L2h0bWwvc3BhY2VzL2FwcC90aGVtZXMvc3BhY2VzL2Fzc2V0cy9zY3NzL2ZvdW5kYXRpb24veHktZ3JpZC9fbGF5b3V0LnNjc3MiLCJmaWxlOi8vL3Zhci93d3cvaHRtbC9zcGFjZXMvYXBwL3RoZW1lcy9zcGFjZXMvYXNzZXRzL3Njc3MvZm91bmRhdGlvbi94eS1ncmlkL19jb2xsYXBzZS5zY3NzIiwiZmlsZTovLy92YXIvd3d3L2h0bWwvc3BhY2VzL2FwcC90aGVtZXMvc3BhY2VzL2Fzc2V0cy9zY3NzL2ZvdW5kYXRpb24veHktZ3JpZC9fcG9zaXRpb24uc2NzcyIsImZpbGU6Ly8vdmFyL3d3dy9odG1sL3NwYWNlcy9hcHAvdGhlbWVzL3NwYWNlcy9hc3NldHMvc2Nzcy9mb3VuZGF0aW9uL3h5LWdyaWQvX2ZyYW1lLnNjc3MiLCJmaWxlOi8vL3Zhci93d3cvaHRtbC9zcGFjZXMvYXBwL3RoZW1lcy9zcGFjZXMvYXNzZXRzL3Njc3MvZm91bmRhdGlvbi9jb21wb25lbnRzL19mbGV4LnNjc3MiLCJmaWxlOi8vL3Zhci93d3cvaHRtbC9zcGFjZXMvYXBwL3RoZW1lcy9zcGFjZXMvYXNzZXRzL3Njc3MvZm91bmRhdGlvbi91dGlsL19mbGV4LnNjc3MiLCJmaWxlOi8vL3Zhci93d3cvaHRtbC9zcGFjZXMvYXBwL3RoZW1lcy9zcGFjZXMvYXNzZXRzL3Njc3MvZm91bmRhdGlvbi9jb21wb25lbnRzL192aXNpYmlsaXR5LnNjc3MiLCJmaWxlOi8vL3Zhci93d3cvaHRtbC9zcGFjZXMvYXBwL3RoZW1lcy9zcGFjZXMvYXNzZXRzL3Njc3Mvc2Nyb2xsLnNjc3MiLCJmaWxlOi8vL3Zhci93d3cvaHRtbC9zcGFjZXMvYXBwL3RoZW1lcy9zcGFjZXMvYXNzZXRzL3Njc3MvYXBwLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBaUJRLDZDQ0NSLHFEQUtDLDBFQUNBLHdFQUNBLHdCQUNBLHdCQUNBLHFCQUNBLG9CQUNBLG1CQUdBLGFBQ0Esd0JBQ0Esd0JBQ0Esc0JBQ0Esd0JBQ0EsMEJBQ0EsNEJBQ0EsOEJBQ0EsOEJBQ0EsOEJBQ0EsOEJBQ0EsNkJBQ0EsK0JBQ0EsK0JBQ0EsOEJBQ0EsK0JBQ0Esa0NBQ0EsbUNBQ0EsbUNBb0NBLGNBQ0EsaUJBQ0EsaUJBQ0EsNkJBQ0Esb0JBQ0EscUJBQ0Esa0JBQ0EscUJBQ0Esc0JBQ0Esd0JBQ0EsaUJBQ0EsNEJBR0EsZUFFQSxrQkFFQSxnQkFHQSwrQkF4REEsMkNBakNELHFEQWtDRSxpQkFDQSxvQkFDQSx1QkFDQSwwQkFDQSw2QkFDQSw0QkFDQSw2QkFDQSw2QkFDQSw2QkFDQSw2QkFDQSw0QkFDQSw2QkFDQSxpQ0FDQSxtQ0FDQSxtQ0FDQSx5Q0FDQSwrQ0FDQSxtREFDQSxrREFDQSxtREFDQSxtREFDQSw2QkFDQSw2QkFDQSw0QkFDQSw2QkFDQSw2QkFDQSw4QkFDQSw4QkFDQSxpQ0FDQSxrQ0FDQSxvQ0MvRUEsNEVBUUEsS0FDRSxpQkFDQSw4QkFRRixLQUNFLFNBTUYsR0FDRSxjQUNBLGVBU0YsR0FDRSx1QkFDQSxTQUNBLGlCQU1GLElBQ0UsZ0NBQ0EsY0FRRixFQUNFLCtCQU1GLFlBQ0UsZ0JBQ0EsaUNBS0YsU0FFRSxtQkFNRixjQUdFLGdDQUNBLGNBS0YsTUFDRSxjQU1GLFFBRUUsY0FDQSxjQUNBLGtCQUNBLHdCQUdGLElBQ0UsZUFHRixJQUNFLFdBUUYsSUFDRSxrQkFTRixzQ0FLRSxvQkFDQSxlQUNBLGlCQUNBLFNBTUYsYUFFRSxpQkFNRixjQUVFLG9CQUtGLGdEQUlFLDBCQUtGLHdIQUlFLGtCQUNBLFVBS0YsNEdBSUUsOEJBS0YsU0FDRSwyQkFRRixPQUNFLHNCQUNBLGNBQ0EsY0FDQSxlQUNBLFVBQ0EsbUJBS0YsU0FDRSx3QkFLRixTQUNFLGNBTUYsNkJBRUUsc0JBQ0EsVUFLRixrRkFFRSxZQU1GLGNBQ0UsNkJBQ0Esb0JBS0YseUNBQ0Usd0JBTUYsNkJBQ0UsMEJBQ0EsYUFRRixRQUNFLGNBS0YsUUFDRSxrQkFRRixTQUNFLGFBS0YsU0FDRSxhQVFBLG9PQUNFLGFBS0osa0JBQ0UsMkJBQ0EseUJDdkpGLGVBQ0UsOEVBR0YsS0FDRSxzQkFDQSxVQzFJZSxLRDhJakIscUJBR0UsbUJBSUYsS0FDRSxTQUNBLFVBVUEsV0F4SEksUUEwSEosWUE5R2UsbURBK0dmLFlBdkZtQixPQXdGbkIsWUExSmdCLElBMkpoQixNQWpJSSxRQW9JRixtQ0FDQSxrQ0FJSixJQUVFLHFCQUNBLHNCQUdBLGVBQ0EsWUFDQSwrQkFJRixTQUNFLFlBQ0EsZ0JBQ0EsY0F4R1ksRUE0R2QsT0FDRSxzQkFDQSxXQUNBLGNBL0dZLEVBc0haLDZHQUdFLDBCQUtKLE9BRUUsVUFDQSxnQkFDQSxTQUNBLGNBbklZLEVBb0laLHlCQUNBLGNBQ0EsT0EvR21CLEtFaUZyQiw4QkFDRSxVRmlDRixJQUNFLGNBQ0EsaUNBSUYsc0NBS0Usb0JBSUYsWUFDRSx5QkFHRixXQUNFLHdCR25QRixnQkM2QkkseUNDdkJKLFVMQ2EsMkJLQ2Isa0JGTEUsc0JDMEJFLHlDQ3ZCSixVRkYrQixLRUcvQixpQkFDQSxrQkZERSxxQkNzQkUsK0JDdkJKLFVGRStCLEtFRC9CLGlCQUNBLGtCRktBLFFFU0EsYUFDQSxtQkZOQSxNR3FHQSxjQUlFLGFBQ0EsWUFzQ0EsTUFUTSxLSHBJTixXR2tHRixXSDlGRSxhRzhGRixjSHhGRSxjR21JQSxNQVRNLEtIdEhOLGdCRytIQSxNQVRNLEtIdEdKLHlQQUNFLGdCSWlIQSw0Q0psSEYsdVFBQ0UsaUJJaUhBLDRDSmxIRix5UEFDRSxpQkFhSiwrTUdzREYsY0h2Q0ksaUJHa0ZGLE1BVE0sY0h6RUosaUJHa0ZGLE1BVE0sZUh6RUosaUJHa0ZGLE1BVE0sSUh6RUosaUJHa0ZGLE1BVE0sZUh6RUosaUJHa0ZGLE1BVE0sZUh6RUosaUJHa0ZGLE1BVE0sSUh6RUosaUJHa0ZGLE1BVE0sZUh6RUosaUJHa0ZGLE1BVE0sZUh6RUosaUJHa0ZGLE1BVE0sSUh6RUosa0JHa0ZGLE1BVE0sZUh6RUosa0JHa0ZGLE1BVE0sZUh6RUosa0JHa0ZGLE1BVE0sS0NZRiw0Q0p6R0YscUJHMkRKLFdBMkNFLE1BVE0sS0h4Rk4sa1BHc0RGLGNIaERJLHVCRzJGRixNQVRNLEtIekVKLGtCR2tGRixNQVRNLGNIekVKLGtCR2tGRixNQVRNLGVIekVKLGtCR2tGRixNQVRNLElIekVKLGtCR2tGRixNQVRNLGVIekVKLGtCR2tGRixNQVRNLGVIekVKLGtCR2tGRixNQVRNLElIekVKLGtCR2tGRixNQVRNLGVIekVKLGtCR2tGRixNQVRNLGVIekVKLGtCR2tGRixNQVRNLElIekVKLG1CR2tGRixNQVRNLGVIekVKLG1CR2tGRixNQVRNLGVIekVKLG1CR2tGRixNQVRNLE1DWUYsNENKekdGLG9CRzJESixXQTJDRSxNQVRNLEtIeEZOLHFPR3NERixjSGhESSxzQkcyRkYsTUFUTSxLSHpFSixpQkdrRkYsTUFUTSxjSHpFSixpQkdrRkYsTUFUTSxlSHpFSixpQkdrRkYsTUFUTSxJSHpFSixpQkdrRkYsTUFUTSxlSHpFSixpQkdrRkYsTUFUTSxlSHpFSixpQkdrRkYsTUFUTSxJSHpFSixpQkdrRkYsTUFUTSxlSHpFSixpQkdrRkYsTUFUTSxlSHpFSixpQkdrRkYsTUFUTSxJSHpFSixrQkdrRkYsTUFUTSxlSHpFSixrQkdrRkYsTUFUTSxlSHpFSixrQkdrRkYsTUFUTSxNSGpFUixrQ0FDRSxXQUlGLGtDQUNFLFlBOEJGLGVDOUZJLHlDRGtHRixxQkdrQ0EsTUFUTSxvQkYzSEosdUNEc0VKLHFCRzhERSxNQVRNLEtIakRSLHVCRzBERSxNQVRNLEtIekNOLHdCR2tEQSxNQVRNLDZCSHpDTix3QkdrREEsTUFUTSw4Qkh6Q04sd0JHa0RBLE1BVE0sbUJIekNOLHdCR2tEQSxNQVRNLDhCSHpDTix3QkdrREEsTUFUTSw4Qkh6Q04sd0JHa0RBLE1BVE0sbUJIekNOLHdCR2tEQSxNQVRNLDhCSHpDTix3QkdrREEsTUFUTSw4Qkh6Q04sd0JHa0RBLE1BVE0sbUJIekNOLHlCR2tEQSxNQVRNLDhCSHpDTix5QkdrREEsTUFUTSw4Qkh6Q04seUJHa0RBLE1BVE0sb0JDWUYsNENKakVOLDRCRzhERSxNQVRNLEtIakRSLDhCRzBERSxNQVRNLEtIekNOLHlCR2tEQSxNQVRNLDZCSHpDTix5QkdrREEsTUFUTSw4Qkh6Q04seUJHa0RBLE1BVE0sbUJIekNOLHlCR2tEQSxNQVRNLDhCSHpDTix5QkdrREEsTUFUTSw4Qkh6Q04seUJHa0RBLE1BVE0sbUJIekNOLHlCR2tEQSxNQVRNLDhCSHpDTix5QkdrREEsTUFUTSw4Qkh6Q04seUJHa0RBLE1BVE0sbUJIekNOLDBCR2tEQSxNQVRNLDhCSHpDTiwwQkdrREEsTUFUTSw4Qkh6Q04sMEJHa0RBLE1BVE0scUJDWUYsNENKakVOLDJCRzhERSxNQVRNLEtIakRSLDZCRzBERSxNQVRNLEtIekNOLHdCR2tEQSxNQVRNLDZCSHpDTix3QkdrREEsTUFUTSw4Qkh6Q04sd0JHa0RBLE1BVE0sbUJIekNOLHdCR2tEQSxNQVRNLDhCSHpDTix3QkdrREEsTUFUTSw4Qkh6Q04sd0JHa0RBLE1BVE0sbUJIekNOLHdCR2tEQSxNQVRNLDhCSHpDTix3QkdrREEsTUFUTSw4Qkh6Q04sd0JHa0RBLE1BVE0sbUJIekNOLHlCR2tEQSxNQVRNLDhCSHpDTix5QkdrREEsTUFUTSw4Qkh6Q04seUJHa0RBLE1BVE0scUJIVU4sZ0NDcklFLHlDRDJJRiwyQ0MzSUUseUNEZ0pGLHNCQ2hKRSx5Q0lUSixrQkY2SUUsTUFUTSxLRXBJUixrQkY2SUUsTUFUTSxJRXBJUixrQkY2SUUsTUFUTSxlRXBJUixrQkY2SUUsTUFUTSxJRXBJUixrQkY2SUUsTUFUTSxJRXBJUixrQkY2SUUsTUFUTSxlRXBJUixrQkY2SUUsTUFUTSxlRXBJUixrQkY2SUUsTUFUTSxNRXBJUixrQkY2SUUsTUFUTSxlRXBJUixtQkY2SUUsTUFUTSxJRXBJUixtQkY2SUUsTUFUTSxjRXBJUixtQkY2SUUsTUFUTSxjQ1lGLDRDQ2hKTixtQkY2SUUsTUFUTSxLRXBJUixtQkY2SUUsTUFUTSxJRXBJUixtQkY2SUUsTUFUTSxlRXBJUixtQkY2SUUsTUFUTSxJRXBJUixtQkY2SUUsTUFUTSxJRXBJUixtQkY2SUUsTUFUTSxlRXBJUixtQkY2SUUsTUFUTSxlRXBJUixtQkY2SUUsTUFUTSxNRXBJUixtQkY2SUUsTUFUTSxlRXBJUixvQkY2SUUsTUFUTSxJRXBJUixvQkY2SUUsTUFUTSxjRXBJUixvQkY2SUUsTUFUTSxlQ1lGLDRDQ2hKTixrQkY2SUUsTUFUTSxLRXBJUixrQkY2SUUsTUFUTSxJRXBJUixrQkY2SUUsTUFUTSxlRXBJUixrQkY2SUUsTUFUTSxJRXBJUixrQkY2SUUsTUFUTSxJRXBJUixrQkY2SUUsTUFUTSxlRXBJUixrQkY2SUUsTUFUTSxlRXBJUixrQkY2SUUsTUFUTSxNRXBJUixrQkY2SUUsTUFUTSxlRXBJUixtQkY2SUUsTUFUTSxJRXBJUixtQkY2SUUsTUFUTSxjRXBJUixtQkY2SUUsTUFUTSxlRXBJUixnQ0Y2SUUsTUFUTSxvQkVwSVIsZ0NGNklFLE1BVE0sbUJFcElSLGdDRjZJRSxNQVRNLDhCRXBJUixnQ0Y2SUUsTUFUTSxtQkVwSVIsZ0NGNklFLE1BVE0sbUJFcElSLGdDRjZJRSxNQVRNLDhCRXBJUixnQ0Y2SUUsTUFUTSw4QkVwSVIsZ0NGNklFLE1BVE0scUJFcElSLGdDRjZJRSxNQVRNLDhCRXBJUixpQ0Y2SUUsTUFUTSxtQkVwSVIsaUNGNklFLE1BVE0sNkJFcElSLGlDRjZJRSxNQVRNLDZCQ1lGLDRDQ2hKTixpQ0Y2SUUsTUFUTSxvQkVwSVIsaUNGNklFLE1BVE0sbUJFcElSLGlDRjZJRSxNQVRNLDhCRXBJUixpQ0Y2SUUsTUFUTSxtQkVwSVIsaUNGNklFLE1BVE0sbUJFcElSLGlDRjZJRSxNQVRNLDhCRXBJUixpQ0Y2SUUsTUFUTSw4QkVwSVIsaUNGNklFLE1BVE0scUJFcElSLGlDRjZJRSxNQVRNLDhCRXBJUixrQ0Y2SUUsTUFUTSxtQkVwSVIsa0NGNklFLE1BVE0sNkJFcElSLGtDRjZJRSxNQVRNLDhCQ1lGLDRDQ2hKTixnQ0Y2SUUsTUFUTSxvQkVwSVIsZ0NGNklFLE1BVE0sbUJFcElSLGdDRjZJRSxNQVRNLDhCRXBJUixnQ0Y2SUUsTUFUTSxtQkVwSVIsZ0NGNklFLE1BVE0sbUJFcElSLGdDRjZJRSxNQVRNLDhCRXBJUixnQ0Y2SUUsTUFUTSw4QkVwSVIsZ0NGNklFLE1BVE0scUJFcElSLGdDRjZJRSxNQVRNLDhCRXBJUixpQ0Y2SUUsTUFUTSxtQkVwSVIsaUNGNklFLE1BVE0sNkJFcElSLGlDRjZJRSxNQVRNLDhCSG1FSix1Qk05TUUsNkJBR0YsNkJBRUksNkJBc0JFLGdDSHlIUixNQVRNLGNHaEhFLGdDSHlIUixNQVRNLGVHaEhFLGdDSHlIUixNQVRNLElHaEhFLGdDSHlIUixNQVRNLGVHaEhFLGdDSHlIUixNQVRNLGVHaEhFLGdDSHlIUixNQVRNLElHaEhFLGdDSHlIUixNQVRNLGVHaEhFLGdDSHlIUixNQVRNLGVHaEhFLGdDSHlIUixNQVRNLElHaEhFLGlDSHlIUixNQVRNLGVHaEhFLGlDSHlIUixNQVRNLGVHaEhFLGlDSHlIUixNQVRNLEtDWUYsNENFNUhJLGlDSHlIUixNQVRNLGNHaEhFLGlDSHlIUixNQVRNLGVHaEhFLGlDSHlIUixNQVRNLElHaEhFLGlDSHlIUixNQVRNLGVHaEhFLGlDSHlIUixNQVRNLGVHaEhFLGlDSHlIUixNQVRNLElHaEhFLGlDSHlIUixNQVRNLGVHaEhFLGlDSHlIUixNQVRNLGVHaEhFLGlDSHlIUixNQVRNLElHaEhFLGtDSHlIUixNQVRNLGVHaEhFLGtDSHlIUixNQVRNLGVHaEhFLGtDSHlIUixNQVRNLE1DWUYsNENFNUhJLGdDSHlIUixNQVRNLGNHaEhFLGdDSHlIUixNQVRNLGVHaEhFLGdDSHlIUixNQVRNLElHaEhFLGdDSHlIUixNQVRNLGVHaEhFLGdDSHlIUixNQVRNLGVHaEhFLGdDSHlIUixNQVRNLElHaEhFLGdDSHlIUixNQVRNLGVHaEhFLGdDSHlIUixNQVRNLGVHaEhFLGdDSHlIUixNQVRNLElHaEhFLGlDSHlIUixNQVRNLGVHaEhFLGlDSHlIUixNQVRNLGVHaEhFLGlDSHlIUixNQVRNLE1IeUVKLHdCTTdLRSw2QkFHRiw4QkFFSSwrQkYyR0YsNENKdURGLHdCTTlNRSw2QkFHRiw4QkFFSSw4QkZrSkYsNENFcklJLGlDSGtJUixNQVRNLGNHekhFLGlDSGtJUixNQVRNLGVHekhFLGlDSGtJUixNQVRNLElHekhFLGlDSGtJUixNQVRNLGVHekhFLGlDSGtJUixNQVRNLGVHekhFLGlDSGtJUixNQVRNLElHekhFLGlDSGtJUixNQVRNLGVHekhFLGlDSGtJUixNQVRNLGVHekhFLGlDSGtJUixNQVRNLElHekhFLGtDSGtJUixNQVRNLGVHekhFLGtDSGtJUixNQVRNLGVHekhFLGtDSGtJUixNQVRNLE1DWUYsNENFNUhJLGtDSHlIUixNQVRNLGNHaEhFLGtDSHlIUixNQVRNLGVHaEhFLGtDSHlIUixNQVRNLElHaEhFLGtDSHlIUixNQVRNLGVHaEhFLGtDSHlIUixNQVRNLGVHaEhFLGtDSHlIUixNQVRNLElHaEhFLGtDSHlIUixNQVRNLGVHaEhFLGtDSHlIUixNQVRNLGVHaEhFLGtDSHlIUixNQVRNLElHaEhFLG1DSHlIUixNQVRNLGVHaEhFLG1DSHlIUixNQVRNLGVHaEhFLG1DSHlIUixNQVRNLE1DWUYsNENFNUhJLGlDSHlIUixNQVRNLGNHaEhFLGlDSHlIUixNQVRNLGVHaEhFLGlDSHlIUixNQVRNLElHaEhFLGlDSHlIUixNQVRNLGVHaEhFLGlDSHlIUixNQVRNLGVHaEhFLGlDSHlIUixNQVRNLElHaEhFLGlDSHlIUixNQVRNLGVHaEhFLGlDSHlIUixNQVRNLGVHaEhFLGlDSHlIUixNQVRNLElHaEhFLGtDSHlIUixNQVRNLGVHaEhFLGtDSHlIUixNQVRNLGVHaEhFLGtDSHlIUixNQVRNLE1DWUYsNENKNkRGLHlCTTdLRSw2QkFHRiwrQkFFSSxnQ0YyR0YsNENKdURGLHVCTTlNRSw2QkFHRiw2QkFFSSw4QkZrSkYsNENFcklJLGdDSGtJUixNQVRNLGNHekhFLGdDSGtJUixNQVRNLGVHekhFLGdDSGtJUixNQVRNLElHekhFLGdDSGtJUixNQVRNLGVHekhFLGdDSGtJUixNQVRNLGVHekhFLGdDSGtJUixNQVRNLElHekhFLGdDSGtJUixNQVRNLGVHekhFLGdDSGtJUixNQVRNLGVHekhFLGdDSGtJUixNQVRNLElHekhFLGlDSGtJUixNQVRNLGVHekhFLGlDSGtJUixNQVRNLGVHekhFLGlDSGtJUixNQVRNLE1DWUYsNENFcklJLGlDSGtJUixNQVRNLGNHekhFLGlDSGtJUixNQVRNLGVHekhFLGlDSGtJUixNQVRNLElHekhFLGlDSGtJUixNQVRNLGVHekhFLGlDSGtJUixNQVRNLGVHekhFLGlDSGtJUixNQVRNLElHekhFLGlDSGtJUixNQVRNLGVHekhFLGlDSGtJUixNQVRNLGVHekhFLGlDSGtJUixNQVRNLElHekhFLGtDSGtJUixNQVRNLGVHekhFLGtDSGtJUixNQVRNLGVHekhFLGtDSGtJUixNQVRNLE1DWUYsNENFNUhJLGdDSHlIUixNQVRNLGNHaEhFLGdDSHlIUixNQVRNLGVHaEhFLGdDSHlIUixNQVRNLElHaEhFLGdDSHlIUixNQVRNLGVHaEhFLGdDSHlIUixNQVRNLGVHaEhFLGdDSHlIUixNQVRNLElHaEhFLGdDSHlIUixNQVRNLGVHaEhFLGdDSHlIUixNQVRNLGVHaEhFLGdDSHlIUixNQVRNLElHaEhFLGlDSHlIUixNQVRNLGVHaEhFLGlDSHlIUixNQVRNLGVHaEhFLGlDSHlIUixNQVRNLE1DWUYsNENKNkRGLHdCTTdLRSw2QkFHRiw4QkFFSSxnQ05zTEosZ0JPbk1GLGVQdU1FLCtCT3ZNRixrQ1BtTUUsZ0JPbk1GLDBCUHVNRSwrQk92TUYsNkNQbU1FLGdCT25NRiwyQlB1TUUsK0JPdk1GLDhDUG1NRSxnQk9uTUYsZ0JQdU1FLCtCT3ZNRixtQ1BtTUUsZ0JPbk1GLDJCUHVNRSwrQk92TUYsOENQbU1FLGdCT25NRiwyQlB1TUUsK0JPdk1GLDhDUG1NRSxnQk9uTUYsZ0JQdU1FLCtCT3ZNRixtQ1BtTUUsZ0JPbk1GLDJCUHVNRSwrQk92TUYsOENQbU1FLGdCT25NRiwyQlB1TUUsK0JPdk1GLDhDUG1NRSxnQk9uTUYsZ0JQdU1FLCtCT3ZNRixtQ1BtTUUsaUJPbk1GLDJCUHVNRSxnQ092TUYsOENQbU1FLGlCT25NRiwyQlB1TUUsZ0NPdk1GLDhDSHdISSw0Q0oyRUYsaUJPbk1GLGVQdU1FLGdDT3ZNRixrQ1BtTUUsaUJPbk1GLDBCUHVNRSxnQ092TUYsNkNQbU1FLGlCT25NRiwyQlB1TUUsZ0NPdk1GLDhDUG1NRSxpQk9uTUYsZ0JQdU1FLGdDT3ZNRixtQ1BtTUUsaUJPbk1GLDJCUHVNRSxnQ092TUYsOENQbU1FLGlCT25NRiwyQlB1TUUsZ0NPdk1GLDhDUG1NRSxpQk9uTUYsZ0JQdU1FLGdDT3ZNRixtQ1BtTUUsaUJPbk1GLDJCUHVNRSxnQ092TUYsOENQbU1FLGlCT25NRiwyQlB1TUUsZ0NPdk1GLDhDUG1NRSxpQk9uTUYsZ0JQdU1FLGdDT3ZNRixtQ1BtTUUsa0JPbk1GLDJCUHVNRSxpQ092TUYsOENQbU1FLGtCT25NRiwyQlB1TUUsaUNPdk1GLCtDSHdISSw0Q0oyRUYsZ0JPbk1GLGVQdU1FLCtCT3ZNRixrQ1BtTUUsZ0JPbk1GLDBCUHVNRSwrQk92TUYsNkNQbU1FLGdCT25NRiwyQlB1TUUsK0JPdk1GLDhDUG1NRSxnQk9uTUYsZ0JQdU1FLCtCT3ZNRixtQ1BtTUUsZ0JPbk1GLDJCUHVNRSwrQk92TUYsOENQbU1FLGdCT25NRiwyQlB1TUUsK0JPdk1GLDhDUG1NRSxnQk9uTUYsZ0JQdU1FLCtCT3ZNRixtQ1BtTUUsZ0JPbk1GLDJCUHVNRSwrQk92TUYsOENQbU1FLGdCT25NRiwyQlB1TUUsK0JPdk1GLDhDUG1NRSxnQk9uTUYsZ0JQdU1FLCtCT3ZNRixtQ1BtTUUsaUJPbk1GLDJCUHVNRSxnQ092TUYsOENQbU1FLGlCT25NRiwyQlB1TUUsZ0NPdk1GLCtDUHlORixRRS9PQSxhQUNBLHdCRmtQRSxjR3JJRixZQUNBLGdCSHdJRSxjRzVHQSxPQVRNLEtIeUhOLGdCR2hIQSxPQVRNLEtIdUlKLHlQQUNFLGdCSTVIQSw0Q0oySEYsdVFBQ0UsaUJJNUhBLDRDSjJIRix5UEFDRSxpQkFZRiwrTUd0TEosY0hxTU0saUJHMUpKLE9BVE0sY0htS0YsaUJHMUpKLE9BVE0sZUhtS0YsaUJHMUpKLE9BVE0sSUhtS0YsaUJHMUpKLE9BVE0sZUhtS0YsaUJHMUpKLE9BVE0sZUhtS0YsaUJHMUpKLE9BVE0sSUhtS0YsaUJHMUpKLE9BVE0sZUhtS0YsaUJHMUpKLE9BVE0sZUhtS0YsaUJHMUpKLE9BVE0sSUhtS0Ysa0JHMUpKLE9BVE0sZUhtS0Ysa0JHMUpKLE9BVE0sZUhtS0Ysa0JHMUpKLE9BVE0sS0NZRiw0Q0ptSUEscUJHakxOLFdBMkNFLE9BVE0sS0hvSkosa1BHdExKLGNINExNLHVCR2pKSixPQVRNLEtIbUtGLGtCRzFKSixPQVRNLGNIbUtGLGtCRzFKSixPQVRNLGVIbUtGLGtCRzFKSixPQVRNLElIbUtGLGtCRzFKSixPQVRNLGVIbUtGLGtCRzFKSixPQVRNLGVIbUtGLGtCRzFKSixPQVRNLElIbUtGLGtCRzFKSixPQVRNLGVIbUtGLGtCRzFKSixPQVRNLGVIbUtGLGtCRzFKSixPQVRNLElIbUtGLG1CRzFKSixPQVRNLGVIbUtGLG1CRzFKSixPQVRNLGVIbUtGLG1CRzFKSixPQVRNLE1DWUYsNENKbUlBLG9CR2pMTixXQTJDRSxPQVRNLEtIb0pKLHFPR3RMSixjSDRMTSxzQkdqSkosT0FUTSxLSG1LRixpQkcxSkosT0FUTSxjSG1LRixpQkcxSkosT0FUTSxlSG1LRixpQkcxSkosT0FUTSxJSG1LRixpQkcxSkosT0FUTSxlSG1LRixpQkcxSkosT0FUTSxlSG1LRixpQkcxSkosT0FUTSxJSG1LRixpQkcxSkosT0FUTSxlSG1LRixpQkcxSkosT0FUTSxlSG1LRixpQkcxSkosT0FUTSxJSG1LRixrQkcxSkosT0FUTSxlSG1LRixrQkcxSkosT0FUTSxlSG1LRixrQkcxSkosT0FUTSxNSCtLSixnQ0MxU0EseUNEK1NBLHNCQy9TQSx5Q0Q4RkosZUM5RkkseUNEa0dGLHFCR2tDQSxPQVRNLG9CRjNISix1Q0RzRUoscUJHOERFLE9BVE0sS0hqRFIsdUJHMERFLE9BVE0sS0h6Q04sd0JHa0RBLE9BVE0sNkJIekNOLHdCR2tEQSxPQVRNLDhCSHpDTix3QkdrREEsT0FUTSxtQkh6Q04sd0JHa0RBLE9BVE0sOEJIekNOLHdCR2tEQSxPQVRNLDhCSHpDTix3QkdrREEsT0FUTSxtQkh6Q04sd0JHa0RBLE9BVE0sOEJIekNOLHdCR2tEQSxPQVRNLDhCSHpDTix3QkdrREEsT0FUTSxtQkh6Q04seUJHa0RBLE9BVE0sOEJIekNOLHlCR2tEQSxPQVRNLDhCSHpDTix5QkdrREEsT0FUTSxvQkNZRiw0Q0pqRU4sNEJHOERFLE9BVE0sS0hqRFIsOEJHMERFLE9BVE0sS0h6Q04seUJHa0RBLE9BVE0sNkJIekNOLHlCR2tEQSxPQVRNLDhCSHpDTix5QkdrREEsT0FUTSxtQkh6Q04seUJHa0RBLE9BVE0sOEJIekNOLHlCR2tEQSxPQVRNLDhCSHpDTix5QkdrREEsT0FUTSxtQkh6Q04seUJHa0RBLE9BVE0sOEJIekNOLHlCR2tEQSxPQVRNLDhCSHpDTix5QkdrREEsT0FUTSxtQkh6Q04sMEJHa0RBLE9BVE0sOEJIekNOLDBCR2tEQSxPQVRNLDhCSHpDTiwwQkdrREEsT0FUTSxxQkNZRiw0Q0pqRU4sMkJHOERFLE9BVE0sS0hqRFIsNkJHMERFLE9BVE0sS0h6Q04sd0JHa0RBLE9BVE0sNkJIekNOLHdCR2tEQSxPQVRNLDhCSHpDTix3QkdrREEsT0FUTSxtQkh6Q04sd0JHa0RBLE9BVE0sOEJIekNOLHdCR2tEQSxPQVRNLDhCSHpDTix3QkdrREEsT0FUTSxtQkh6Q04sd0JHa0RBLE9BVE0sOEJIekNOLHdCR2tEQSxPQVRNLDhCSHpDTix3QkdrREEsT0FUTSxtQkh6Q04seUJHa0RBLE9BVE0sOEJIekNOLHlCR2tEQSxPQVRNLDhCSHpDTix5QkdrREEsT0FUTSxxQkhrTVIsWVFwVkUsZ0JBQ0Esa0JBQ0EsaUJBQ0Esb0JBbUNJLFlSa1ROLGtCQUNFLFdBR0YsWVFuU0UsZ0JBQ0EsZUFHRixpQ0FDQSw0Q1JrU0EsY1EzU0UsZ0JBQ0EsZ0JBQ0EsZ0JBTUYsaUNBQ0EsNENSdVNBLHNCUWhTQSxhQUNBLHNCQUNBLGdCQUVBLDhCQUNFLGdCQUNBLGlCSm1GSSw0Q0o4TUosbUJRNVdBLGdCQUNBLGtCQUNBLGlCQUNBLG9CQW1DSSxZUjBVSix5QkFDRSxXQUdGLG1CUTNUQSxnQkFDQSxlQUdGLGlDQUNBLDRDUjBURSw2QlFuVEYsYUFDQSxzQkFDQSxnQkFFQSxxQ0FDRSxnQkFDQSxpQlJpVEEscUJRdlVBLGdCQUNBLGdCQUNBLGdCQU1GLGlDQUNBLDZDSmdHTSw0Q0o4TUosa0JRNVdBLGdCQUNBLGtCQUNBLGlCQUNBLG9CQW1DSSxZUjBVSix3QkFDRSxXQUdGLGtCUTNUQSxnQkFDQSxlQUdGLGlDQUNBLDRDUjBURSw0QlFuVEYsYUFDQSxzQkFDQSxnQkFFQSxvQ0FDRSxnQkFDQSxpQlJpVEEsb0JRdlVBLGdCQUNBLGdCQUNBLGdCQU1GLGlDQUNBLDZDUnFVSSxtQlFuWUYsZ0JBQ0Esa0JBQ0EsaUJBQ0Esb0JBaUNJLGFSaVdBLFdJdk9BLDRDSjJPQSwwQlF6WUosZ0JBQ0Esa0JBQ0EsaUJBQ0Esb0JBaUNJLGFSdVdFLFlJN09GLDRDSjJPQSx5QlF6WUosZ0JBQ0Esa0JBQ0EsaUJBQ0Esb0JBaUNJLGFSdVdFLFlBTUoseUJBQ0UsWUlwUEEsNENKdVBBLGdDQUNFLGFJeFBGLDRDSnVQQSwrQkFDRSxhQWpTUixlQzlGSSx5Q0RrR0YscUJHa0NBLE9BVE0sb0JGM0hKLHVDRHNFSixxQkc4REUsT0FUTSxLSGpEUix1QkcwREUsT0FUTSxLSHpDTix3QkdrREEsT0FUTSw2Qkh6Q04sd0JHa0RBLE9BVE0sOEJIekNOLHdCR2tEQSxPQVRNLG1CSHpDTix3QkdrREEsT0FUTSw4Qkh6Q04sd0JHa0RBLE9BVE0sOEJIekNOLHdCR2tEQSxPQVRNLG1CSHpDTix3QkdrREEsT0FUTSw4Qkh6Q04sd0JHa0RBLE9BVE0sOEJIekNOLHdCR2tEQSxPQVRNLG1CSHpDTix5QkdrREEsT0FUTSw4Qkh6Q04seUJHa0RBLE9BVE0sOEJIekNOLHlCR2tEQSxPQVRNLG9CQ1lGLDRDSmpFTiw0Qkc4REUsT0FUTSxLSGpEUiw4QkcwREUsT0FUTSxLSHpDTix5QkdrREEsT0FUTSw2Qkh6Q04seUJHa0RBLE9BVE0sOEJIekNOLHlCR2tEQSxPQVRNLG1CSHpDTix5QkdrREEsT0FUTSw4Qkh6Q04seUJHa0RBLE9BVE0sOEJIekNOLHlCR2tEQSxPQVRNLG1CSHpDTix5QkdrREEsT0FUTSw4Qkh6Q04seUJHa0RBLE9BVE0sOEJIekNOLHlCR2tEQSxPQVRNLG1CSHpDTiwwQkdrREEsT0FUTSw4Qkh6Q04sMEJHa0RBLE9BVE0sOEJIekNOLDBCR2tEQSxPQVRNLHFCQ1lGLDRDSmpFTiwyQkc4REUsT0FUTSxLSGpEUiw2QkcwREUsT0FUTSxLSHpDTix3QkdrREEsT0FUTSw2Qkh6Q04sd0JHa0RBLE9BVE0sOEJIekNOLHdCR2tEQSxPQVRNLG1CSHpDTix3QkdrREEsT0FUTSw4Qkh6Q04sd0JHa0RBLE9BVE0sOEJIekNOLHdCR2tEQSxPQVRNLG1CSHpDTix3QkdrREEsT0FUTSw4Qkh6Q04sd0JHa0RBLE9BVE0sOEJIekNOLHdCR2tEQSxPQVRNLG1CSHpDTix5QkdrREEsT0FUTSw4Qkh6Q04seUJHa0RBLE9BVE0sOEJIekNOLHlCR2tEQSxPQVRNLHFCSDJRTiwwQlF0WUksNEJKdUlBLDRDSm1RRixpQ1ExWUUsNkJKdUlBLDRDSm1RRixnQ1ExWUUsNkJDaUNKLFlDbkJGLGdCQWhCUSxXRG1DTixhQ25CRixnQkFoQlEsU0RtQ04sY0NuQkYsZ0JBaEJRLE9EbUNOLGVDbkJGLGdCQWhCUSxjRG1DTixjQ25CRixnQkFoQlEsYUQ0Q0YsK0JDNUJOLGdCQWhCUSxXRDRDRixnQ0M1Qk4sZ0JBaEJRLFNENENGLGlDQzVCTixnQkFoQlEsT0RxRE4sV0NwQ0YsWUFSUSxXRGdETixnQkN4QkYsV0FQUSxXRDJCTixjQ3BDRixZQVJRLFNEZ0ROLG1CQ3hCRixXQVBRLFNEMkJOLGNDcENGLFlBUlEsT0RnRE4sbUJDeEJGLFdBUFEsT0QyQk4sZUNwQ0YsWUFSUSxRRGdETixvQkN4QkYsV0FQUSxRRHFDUixxQkMvQ0EsZ0JBaEJRLE9BaUJSLFlBUlEsT0R3RE4scUJBTUUsZUNoQ0osTUQrQmUsRUFDWCxlQ2hDSixNRCtCZSxFQUNYLGVDaENKLE1EK0JlLEVBQ1gsZUNoQ0osTUQrQmUsRUFDWCxlQ2hDSixNRCtCZSxFQUNYLGVDaENKLE1EK0JlLEVMbUVULDRDS2xFRixnQkNoQ0osTUQrQmUsRUFDWCxnQkNoQ0osTUQrQmUsRUFDWCxnQkNoQ0osTUQrQmUsRUFDWCxnQkNoQ0osTUQrQmUsRUFDWCxnQkNoQ0osTUQrQmUsRUFDWCxnQkNoQ0osTUQrQmUsR0xtRVQsNENLbEVGLGVDaENKLE1EK0JlLEVBQ1gsZUNoQ0osTUQrQmUsRUFDWCxlQ2hDSixNRCtCZSxFQUNYLGVDaENKLE1EK0JlLEVBQ1gsZUNoQ0osTUQrQmUsRUFDWCxlQ2hDSixNRCtCZSxHQTVGZixnQkNZQSxhRFJBLGlCQUNFLGNBR0YsaUJBQ0UsY0FHRixtQkFDRSxjQUlBLGNDc0RGLGVBcEVtQixJRGNqQixzQkNzREYsZUFwRW1CLFlEY2pCLGlCQ3NERixlQXBFbUIsT0RjakIseUJDc0RGLGVBcEVtQixlTjRKYiw0Q0twSUUsdUJDZlIsYURtQlEsd0JBQ0UsY0FHRix3QkFDRSxjQUdGLDBCQUNFLGNBSUEscUJDMkJWLGVBcEVtQixJRHlDVCw2QkMyQlYsZUFwRW1CLFlEeUNULHdCQzJCVixlQXBFbUIsT0R5Q1QsZ0NDMkJWLGVBcEVtQixnQk40SmIsNENLcElFLHNCQ2ZSLGFEbUJRLHVCQUNFLGNBR0YsdUJBQ0UsY0FHRix5QkFDRSxjQUlBLG9CQzJCVixlQXBFbUIsSUR5Q1QsNEJDMkJWLGVBcEVtQixZRHlDVCx1QkMyQlYsZUFwRW1CLE9EeUNULCtCQzJCVixlQXBFbUIsZ0JDNENuQixNQUNFLHdCQUdGLFdBQ0Usa0JBRUYsU0FDRSxtQlB3R0ksZ0RPekZKLHFCQTdCQSx5QkFuQkEsa0VBb0RBLHFCQW5ERSx5QlB3SUUsNENPbEdGLGlCQTVCRix5QlBrSUksMENPbEdGLGlCQXBFRix5QlBrS0ksdUVPekZKLHNCQTdCQSx5QkFuQkEseUVBb0RBLHNCQW5ERSx5QlB3SUUsNENPbEdGLGdCQTVCRix5QlBrSUksMENPbEdGLGdCQXBFRix5QlBrS0ksdUVPekZKLHFCQTdCQSx5QkFuQkEsd0VBb0RBLHFCQW5ERSx5QkEwREosNEJac0hBLDZCQUNBLHFCQUNBLHNCQUNBLHFCQUNBLDJCQUNBLGlDQUNBLDhCQUNBLG9CWXRIRSwyQ1pnSUYsMkJBQ0Esc0JBQ0EsdUJBQ0EsNEJBQ0EscUJBQ0EsOEJZOUhBLHVDQUVFLHlCUGtFSSwyQ09wRU4sdUNBS0ksMEJQK0RFLDBDT3BFTix1Q0FTSSx5QkFJSix1Q0FFRSx3QlBxREksMkNPdkROLHVDQUtJLHlCUGtERSwwQ092RE4sdUNBU0ksMEJBS0osb0JBQ0UsYUFFRixvQkFDRSxjQUVGLCtDQUNFLG9CQUNFLHlCQUVGLG9CQUNFLHlCQUtKLGFBQ0UsYUFFRixxRUFDRSxhQUNFLHlCQUVGLGFBQ0UseUJBS0osaUJBQ0UsYUFFRiwyQkFDRSxjQUVGLDJCQUNFLGFDL0tKLGtHQUNBLHVCQUNFLGdCQUdGLHlCQUNFLHlCQUNBLHNCQUNBLHFCQUNBLGlCQUdGLHdCQUNFLGdCQUdGLDJDQUNFLGlCQUdGLDJEQUNFLGFBQ0EscUJBRUEsbUJBRUEsbUJBQ0EsWUFHRix5REFDRSxxQkFDQSxtQkFDQSxtQkFDQSxZQUdGLGFBQ0Usa0JBQ0EsUUFDQSxNQUNBLFdBQ0EsWUFDQSw4QkFDQSxxQ0FDQSxVQUVGLG1CQUNFLHVCQUVGLHdGQUdFLFVBRUYsZ0RBQ0UsV0FDQSxZQUNBLFNBQ0EsU0FDQSxvQkFFRixzREFDRSxzQkFHRixtQkFDRSxrQkFDQSxNQUNBLFFBQ0Esc0JBQ0EsV0FDQSxVQUNBLG1CQUNBLFdBQ0Esb0JBQ0EsWUFFRix3Q0FDRSx3QkFDQSxnQkFFRixzREFDRSxXQUNBLFNDakZGLFVBRUMseUJBQ0EsMkJBR0QsZ0JBQ0MsZUFLQSxvQ0FFQywyQkFFRCwrQkFDQyx3QkFJRixxQkFHQyw4QkFDQSxzQkFFRCw2QkFJQyx3QkFHRCxpQkFDQyw2QkFFRCxZQUNDLDZCQUdELG1CQUNDLFNBQ0EsVUFHRCx5RUFLQyx3QkFHRCxjQUVDLGVBQ0EsZ0RBRUMsdUJBSUYsU0FFQyxnQ0FHRCxhQUNDLGtCQUNBLFdBQ0EsYUFDQSx5Q0FDQSxrQkFDQyxhQUVELGtCQUNDLFlBRUQseUJBQ0MsWUFHQSw2RUFHQyw0QkFJRCxnRkFHQyw2QkFHRix3REFHQyxrQkFDQSxNQUNBLE9BQ0EsV0FDQSxZQUNBLFVBQ0EsbUJBT0MsMkNBSEQsOElBSUUsa0JBS0YsZ0ZBR0MsbUJBQ0EsdUJBR0Esa0dBR0Msb0JBSUQsMkdBR0MsdUJBSUQsMkdBR0MsdUJBTUgsOEJBRUMsV0FDQSxZQUVELHFCQUNDLDZCQUNBLGdCQUNBLFVBQ0EsOEJBQ0EsZ0ZBR0MsNEJBQ0Esb0VBRUQsZ0NBQ0MsVUFDQSxpSEFHQyx3QkFRSixXQUNDLG1CQUNBLGlCQUNBLGFBQ0EsWUFFQSwyQ0FORCxXQU9FLGdCQU1GLFNBQ0Msa0JBSUEsU0FDQSxnQkFDQSxnQkFDQSxrQkFDQSx1QkFDQSwwQkFDQSxhQUNBLGFBVkEsMkNBRkQsU0FHRSxvQkFVRCxjQUNDLDRCQUNBLG1CQUNBLHlCQUNBLG9CQUNBLGNBQ0EsMEJBQ0EsbUJBQ0MsZUFJRix3Q0FFQyxrQkFDQSxxQ0FDQSxPQUNBLFlBQ0EsK0JBQ0EsbUJBQ0Esc0RBRUQsb0JBQ0MsdURBQ0EsMkNBRkQsb0JBR0UsZ0RBR0Ysb0JBQ0Msd0RBQ0EsMkNBRkQsb0JBR0UsaURBS0gsbUJBQ0MsS0FDQyx5QkFFRCxHQUNDLDZCQUlGLG9CQUNDLEtBQ0MsMkJBRUQsR0FDQywwQkFHRiwwQkFDQyxLQUNDLDRCQUVELEdBQ0MsMEJBSUYsMkJBQ0MsS0FDQyx5QkFFRCxHQUNDLDRCQUlGLGFBQ0MsZ0JBQ0Esa0JBNkRBLGtCQTVEQSxzQkFDQyxrQkFDQSxRQUNBLDJCQUNBLFlBQ0EsT0FDQSxXQUNBLFVBQ0EsMEJBQ0EsWUFDQSxVQUNBLFVBQ0EsMkJBQ0MseUJBQ0EsNEJBQ0EsbUJBQ0EseUJBQ0EscUJBQ0Esb0JBQ0EsY0FDQSwwQkFDQSxlQUNBLHlCQUVELGtFQUVDLGtCQUVBLE9BQ0EsWUFDQSwrQkFDQSxtQkFDQSxzREFDQSxhQUNBLDRFQUNDLGNBR0YsaUNBQ0MsdURBQ0EsMkNBRkQsaUNBR0UsZ0RBR0YsaUNBQ0Msd0RBQ0EsMkNBRkQsaUNBR0UsaURBSUgsZUFDQyxXQUdELHVCQUNDLFVBQ0EsMEJBQ0Esa0JBR0QsbUJBQ0MsWUFDQSxrQkFDQSwwQkFDQSxRQUNBLDJCQUNBLE9BQ0EsV0FDQSxVQUNBLDZCQUNBLFlBQ0EsZUFDQSxVQU1BLDRCQUNDLFVBRUQseUJBQ0Msa0JBSUgsMkNBQ0MsdURBQ0MsaUJBSUYsZ0JBQ0Msa0JBQ0Esb0JBSUEsV0FDQSxXQUNBLGdCQUxBLDJDQUhELGdCQUlFLHFCQUtELHFDQUNDLCtCQUNBLHNCQUVELGtDQUNDLDRCQUVELG1DQUNDLDZCQUVELG9DQUNDLDhCQUVELHdEQUVDLGdDQUdELDRCQUNDLGFBQ0EsMkNBRkQsNEJBR0UsYUFDQSxtQkFDQSxpQkFDQSx1QkFDQSxtQkFDQSxZQUNBLGtCQUNBLE1BQ0EsT0FDQSxXQUNBLFVBQ0EsK0JBQ0MsNkJBS0gsNEJBQ0Msc0JBQ0EsYUFDQSxzQkFDQSxZQUNBLGtCQUNBLFFBQ0EsT0FDQSxXQUNBLFVBQ0EsMkNBVkQsNEJBV0UsNEJBR0QsaUNBQ0MsZUFDQSxhQUNBLHNCQUNBLDhCQUNBLHNCQUNBLHFDQUNDLGFBQ0EsMkNBRkQscUNBR0UsZUFHRixtQ0FDQyxTQUVELDRDQUNDLFdBRUQsK0NBQ0MsV0FDQSwyQ0FGRCwrQ0FHRSxVQUNBLGlCQUVELDJEQUNDLGFBQ0EsZUFDQSxVQUNBLDRCQUNBLDZCQUNBLHlCQUNBLG1CQUNBLGlDQUNBLG9DQUNBLGdDQUNBLGdCQUNBLCtEQUNDLGNBQ0Esa0JBQ0Esb0JBS0osb0NBQ0MsWUFDQSxrQkFDQSxrRkFFQyxrQkFDQSxNQUNBLE9BQ0EsV0FDQSxZQUNBLGlCQUtGLGtDQUNDLDRCQUVELGtDQUNDLHdCQU9ILHdCQUVDLGtCQUNBLFdBQ0EsV0FDQSxnQkFDQSxxQkFDQSxzQkFDQSxVQUNBLGtEQUNDLGVBRUQsOERBQ0MsZ0JBQ0Esa0ZBQ0Msa0JBQ0EsTUFDQSxPQUNBLFdBQ0EsWUFHRiwwR0FHQyxrQkFDQSxNQUNBLE9BQ0EsV0FDQSxZQUNBLFVBRUQsc0NBQ0MsVUFFRCxnQ0FDQyxrQkFDQSxRQUNBLFNBQ0EsVUFDQSxnQ0FDQSxZQUNBLGFBRUQsc0NBQ0MsWUFFRCxzQ0FDQyxvQkFFRCxrREFDQyxVQUNBLGtCQUNBLE1BQ0EsT0FDQSxXQUNBLFlBQ0Esb0pBRUMsWUFHRixrQ0FDQyxlQUNBLHdGQUVDLHVCQUdBLGdIQUVDLHVCQUlILG9DQUNDLG1CQUNBLGdCQUVELDhDQUNDLFlBQ0EsbUJBQ0EsdUJBSUEsZ0xBRUMsWUFDQSxpQkFHRixzQ0FDQyxrQ0FDQSxrREFDQywwQkFFRCxrREFDQywwQkFFRCxnREFDQywwQkFHRiw4Q0FDQyw2QkFDQSxnQkFDQSxVQUNBLDhCQUNBLDRLQUdDLDRCQUNBLG9FQUVELG9FQUNDLFVBQ0EsOE9BR0Msd0JBY0YsMFFBQ0MsVUFDQSxzNkJBR0Msd0JBTUosWUFDQyxrQkFDQSxjQUNBLHNCQUNBLFdBQ0EsV0FDQSxvQkFpQkEsbUNBaEJBLHFEQUdDLGtCQUNBLE1BQ0EsT0FDQSxXQUNBLFlBQ0EsVUFDQSxpQkFDQSx1QkFFRCwyQ0FuQkQsWUFvQkUsdUVBQ0EsNEJBR0QsMkNBRUUsbUNBQ0MsK0VBS0Qsb0NBQ0MsaUZBTUosMkNBQ0MsWUFDQyx5QkFJRiwyQ0FDQyxhQUNDLHlCQUdGLDJDQUNDLFdBQ0MseUJBR0YsNENBQ0MsVUFDQyx5QkFHRiw0Q0FDQyxhQUNDLHlCQU1GLEdBQ0MsV0FDQSxXQUNBLGdCQUNBLHdCQUNBLFlBR0QsUUFHQyxlQUlBLGdCQUNBLGFBQ0EscUJBQ0EsbUJBTkEsMkNBSkQsUUFLRSw2QkFNRCwyQ0FFQyxnQ0FFRCx1QkFDQyw0QkFFRCx1QkFDQyw0QkFDQSxzQ0FDQyw0QkFDQSxzQ0FDQSxnQ0FJSCxXQUNDLGdCQUVELFlBQ0MsaUJBRUQsYUFDQyxrQkFJQSwyQ0FERCxVQUVFLGdCQUNBLE9BTUYsS0FDQyxlQUdELEtBQ0MsMkJBQ0EsNkJBQ0EsaUNBQ0Esb0NBQ0EsbUJBQ0EsaUJBQ0EscUNBUEQsS0FRRSxrQkFFRCxZQUNDLGdCQUlGLFFBR0MsNkJBQ0EsbUJBQ0EsaUNBQ0Esb0NBQ0EsZUFJQSxtQkFDQSxxQkFKQSwyQ0FSRCxRQVNFLDZCQVFELDBCQUNDLHNCQUlGLGtCQUVDLDZCQUdELEVBQ0MsbUJBQ0EscUJBQ0EsV0FDQyw2Q0FFRCxRQUNDLHNCQUlGLG9CQUNDLGVBQ0EsaUJBQ0EsNkJBQ0EsY0FDQSx1QkFDQSxxQkFDQSxZQUNBLGdCQUNBLGFBQ0EsbUJBQ0EsZUFDQSxtQkFDQSxrQkFDQSw2QkFDQyxXQUNBLFVBQ0EsNkRBQ0EsYUFDQSxtQkFFRCwwREFFQywwQkFDQSxzQkFDQSxtQ0FFQSxtQkFDQSxvQkFDQSxjQUVELHdCQUNDLDZEQUNBLGtCQUNBLGtCQUNBLFdBR0EsOEJBQ0MsVUFDQSw2REFFRCxtQ0FDQyxVQUNBLDZEQUtILFdBQ0MsZ0JBRUQsWUFDQyxpQkFFRCxhQUNDLGtCQUdELDBDQVlDLHlCQUNBLHdCQUNBLCtCQUNBLGlDQUNBLHNDQUNBLG1CQUNBLG1CQUVELDRCQVFDLG1CQUVELHFCQU1DLHlCQUdELE9BRUMsYUFDQSw0QkFDQSxtQkFDQyw0QkFDQSwyQ0FGRCxtQkFHRSxjQUNBLFVBQ0Esa0dBQ0EsNkJBRUQseUNBQ0MsVUFDQSxlQU1GLHNIQUVDLFVBQ0EsZUFDQSx5QkFJRixPQUVDLDRCQUdELE9BRUMsNEJBR0QsT0FFQyw0QkFHRCxPQUVDLDRCQUVELE9BRUMsNEJBR0Qsa0JBRUMsNkJBR0QsRUFDQyxtQkFDQSxxQkFDQSxXQUNDLDZDQUVELFFBQ0Msc0JBSUYsSUFDQywwQkFLRCxnQkFDQyxrQkFDQSxzQkFDQyxrQkFJQSx3QkFIQSwrQkFDQyxrQkFHRCxpQ0FDQyxXQUNBLFdBQ0Esd0NBQ0MsYUFDQSx5QkFFRCx5Q0FDQyxZQUNBLHlCQUdGLCtCQUNDLFVBQ0EsWUFDQSxzQ0FDQyxZQUNBLDBCQUVELHVDQUNDLFdBQ0EsMEJBR0YsNkJBQ0MsU0FDQSxzQkFPSCxpQkFDQyxHQUNDLFVBRUQsSUFDQyxVQUVELElBQ0MsVUFFRCxJQUNDLFdBR0YsdUJBQ0MsR0FDQywyQkFFRCxHQUNDLGdCQUdGLGdCQUNDLEdBQ0MsVUFFRCxHQUNDLFdBR0YsZ0JBQ0MsR0FDQyxVQUVELElBQ0MsVUFFRCxJQUNDLFVBRUQsR0FDQyxXQUtGLGlCQUNDLGtCQUNBLHVCQUNDLGtCQUNBLGNBQ0EsWUFDQSxXQUNBLFlBQ0EsYUFDQSx3QkFDQSxTQUNBLFVBR0YscUJBQ0Msa0JBQ0EsMkJBQ0Msa0JBQ0EsY0FDQSxZQUNBLFdBQ0EsU0FDQSxhQUNBLHdCQUNBLFVBQ0EsVUFNRixVQUVDLHFCQUdELGVBQ0MsZUFDQSxNQUNBLE9BQ0EsV0FDQSxnQkFDQSxZQUNBLHdCQUNBLDJDQVJELGVBU0UscUJBRUQseUNBQ0Msa0JBRUQsNEJBQ0MsbUJBQ0Esa0JBQ0EsMkNBSEQsNEJBSUUsYUFHRixvQ0FDQyxhQUNBLG1CQUNBLGtCQUNBLHFCQUtBLG1CQUNBLG1CQUNBLHlCQU5BLDJDQUxELG9DQU1FLFlBQ0EsdUJBS0QseUNBQ0Msa0JBQ0Esa0JBQ0EsNEJBQ0EseUJBQ0EsY0FDQSxjQUdGLDBCQUNDLGFBQ0EsYUFDQSxjQUNBLHNCQUNBLGVBQ0EsNkJBQ0EsdURBQ0MsMkRBR0QsdURBQ0MsVUFDQSxnQ0FDQSwrQkFDQSw0QkFHRCx1REFDQywyREFHRCxnQ0FDQyxhQUNBLFdBQ0EsOEJBQ0EsY0FDQSxjQUNBLHVDQUNBLGtDQUNBLCtCQUdELGdDQUNDLGVBS0QsMkNBREQsd0JBRUUsc0JBQ0Esa0NBQ0EseUNBQ0MseUJBRUQsMkNBQ0MsNkJBSUgscUJBQ0MsbUJBQ0EsYUFDQSwyQ0FIRCxxQkFJRSx1QkFDQSwwQkFDQSwyQkFFQSwyQkFDQyw2REFDQSxrRUFGRCwyQkFHRSxtR0FJSCxrREFFQyxlQUNBLFdBQ0EsY0FDQSwyQ0FMRCxrREFNRSxhQUVELDRDQVJELGtEQVNFLGtCQUVELDREQUNDLGlCQUlILDBDQUNDLHFCQUNBLGFBQ0EsbUJBQ0EsdUJBQ0EsbUJBQ0EsaUJBQ0Esd0JBQ0EsdUJBQ0EsMEJBQ0EsZ0JBQ0EsdURBQ0MseUJBRUQsK0RBQ0Msa0JBQ0EsaUJBQ0EsV0FDQSxnRkFDQyxrQkFDQSxnQkFDQSxXQUNBLGNBQ0EsMkZBQ0MseUJBQ0Esa0JBQ0EsVUFDQSwwREFDQSxpQkFDQSw0Q0FORCwyRkFPRSx1QkFFRCxvR0FDQyxrQkFDQSxNQUNBLFVBQ0EsY0FDQSw2QkFLSiw0REFDQyxvQkFDQSx1RUFDQywwQkFJRCxnRkFDQyxnQ0FDQSx5RkFDQyw2QkFPTCxXQUNDLGFBQ0Esc0NBQ0MsV0FDQSxxQkFDQSxhQUNBLHNCQUNBLHVCQUNBLHVCQUNBLGlCQUNBLGdCQUNBLDJEQUNDLGtCQUNBLGlCQUNBLFdBQ0EsNEVBQ0Msa0JBQ0EsZ0JBQ0EsV0FDQSxjQUNBLHVGQUNDLHlCQUNBLGtCQUNBLFVBQ0EsMERBQ0EsZ0dBQ0Msa0JBQ0EsTUFDQSxVQUNBLGNBQ0EsNkJBS0osd0RBQ0Msb0JBQ0EsbUVBQ0MsMEJBSUQsNEVBQ0MsZ0NBQ0EscUZBQ0MsNkJBS0oscUNBbERELFdBbURFLFlBQ0EscUJBQ0EsY0FDQSxlQUNBLFNBQ0EsYUFDQSxPQUNBLFlBQ0EseUJBQ0EsMEJBQ0EsNEJBQ0Esb0JBQ0EsYUFDQSxtQkFDQSwyQkFDQSx1QkFDQSxxQkFDQyxvQkFDQSx3QkFFRCx5QkFDQyxnQ0FDQSx3QkFDQSx5QkFDQSwwQkFDQSxXQUNBLFlBQ0Esa0JBQ0EsYUFDQSxtQkFDQSwyQkFDQSxrQkFDQSwrQkFDQyxZQUNBLGtCQUNBLFVBQ0Esd0JBQ0EsWUFDQSxhQUNBLE9BQ0EsV0FHRix1RkFDQyw0QkFFRCwrRkFDQyw0QkFFRCxjQUNDLGdCQUNBLFVBQ0EsZUFDQSxhQUNBLHNCQUNBLFVBQ0EsaUJBQ0MseUJBQ0EsNEJBQ0EsbUJBRUQscUJBQ0MsZ0JBQ0EsbUJBQ0EsZUFDQSwyQkFDQSx1QkFDQSx5QkFDQSxpQkFDQSx3QkFDQyxTQUNBLFVBQ0EsNkJBTUoscUNBaklELFdBa0lFLFlBQ0EscUJBQ0EsY0FDQSxlQUNBLFNBQ0EsWUFDQSxPQUNBLFlBQ0EsNkJBQ0EsMEJBQ0EsNEJBQ0Esb0JBQ0EsYUFDQSxzQkFDQSx1QkFDQSx1QkFDQSxxQkFDQyxvQkFDQSx3QkFFRCx5QkFDQyxxQkFDQSx3QkFDQSx5QkFDQSwwQkFDQSxXQUNBLFlBQ0EsYUFDQSxzQkFDQSx1QkFDQSxrQkFDQSwrQkFDQyxZQUNBLGtCQUNBLFVBQ0EsYUFDQSx3QkFDQSxZQUNBLE9BQ0EsV0FHRix1RkFDQyw0QkFFRCwrRkFDQyw0QkFHRCxjQUNDLGdCQUNBLFVBQ0EsZUFDQSxhQUNBLHNCQUNBLFVBQ0EsaUJBQ0MseUJBQ0EsNEJBQ0EsbUJBR0Esd0JBQ0MsdUJBT0wsZUFDQyxrQkFDQSxXQUNBLGtCQUNBLDRCQUNDLG9CQUNBLDZCQUNBLHNCQUNBLGNBRUQsMkJBQ0MsY0FDQSxZQUNBLFdBRUQsc0NBQ0MsdUJBRUEsOENBQ0MsYUFDQSxlQUVELDRDQUNDLGFBQ0Esb0JBT0Esa0JBTkEsMkNBSEQsNENBSUUsMEJBRUQseURBQ0Msa0JBR0QsZ0RBQ0MsbUJBQ0EsY0FDQSwyQ0FIRCxnREFJRSxlQUtKLGtDQUNDLGtCQUNBLGlCQUNBLGtDQUNBLHFCQUNBLG9CQUNBLHFDQUNBLDJDQVBELGtDQVFFLGtCQUNBLHNCQUdGLHNDQUNDLGtCQUNBLGlEQUNDLGtCQUNBLFNBQ0EsbURBQ0Msb0JBQ0Esc0JBQ0EsZUFJSCxrQkFDQyxnQkFDQSxVQUNBLFNBQ0EsYUFDQSxTQUNBLHNCQUNBLHFCQUVDLHlCQUNBLDRCQUNBLHVCQUNDLG1CQUNBLHFCQUNBLGtCQUNBLDhCQUNDLFlBQ0Esa0JBQ0EsU0FDQSxXQUNBLE9BQ0EsV0FDQSxvQkFDQSw2QkFDQSxzQkFDQSx3QkFLRCxvRkFDQyxvQkFLSiw0QkFDQyxtQkFDQSwrQkFDQyxhQUNBLGVBSUEsZ0JBSUEsbUJBUEEsMkNBSEQsK0JBSUUsa0JBR0QsMkNBUEQsK0JBUUUsV0FHRCxrQ0FDQyxvQkFJSCxvQ0FDQyw0QkFDQSxTQUVELG9CQUNDLDRCQUNBLG9CQUNBLGlDQUVELHFCQUNDLG1CQUNBLGFBQ0EsMkNBSEQscUJBSUUsd0JBRUQsa0RBRUMsV0FDQSxZQUVBLGlCQUNBLDJDQU5ELGtEQU9FLGtCQUVELDREQUNDLGlCQVFKLG1CQUNDLGlCQUNBLGdCQUNBLDRCQUNBLG1CQUNBLGlCQUNBLHFCQUNBLGtCQUNBLDJDQVJELG1CQVNFLDJCQUNBLHdCQUNBLHlCQUNBLDBCQUNDLFVBQ0EsV0FDQSxXQUNBLGVBQ0EsTUFDQSxZQUNBLHFDQUNBLHdDQU9BLFNBTkEsaUVBVEQsMEJBVUUscUNBQ0Esd0NBQ0EsK0RBQ0EsbUVBakJILDJDQXFCQyx5QkFDQyxVQUNBLFdBQ0EsV0FDQSxlQUNBLE1BQ0EsWUFDQSxxQ0FDQSx1Q0FPQSxTQU5BLGlFQVRELHlCQVVFLHFDQUNBLHVDQUNBLHFDQUNBLHdDQVVILDBCQUNDLGlCQUVELG9CQUtDLGVBSkEsdUJBQ0Msa0JBQ0EsY0FRSCxlQUNDLGtCQUNBLFdBQ0EsY0FDQSwyQ0FKRCxlQUtFLGdCQUtELDJDQURELGdCQUVFLG1CQUNBLHVCQUVELGtIQU1DLDRCQUNBLGdCQUtGLDJDQUNDLDBCQUVDLHlCQUlGLFFBSUMsb0JBQ0Esa0JBQ0EsV0FDQSxZQUNBLE1BQ0EsT0FDQSxTQUNBLHdCQUNBLG1CQUNBLFVBQ0EsNEJBQ0EsbUJBQ0EsMkJBQ0Esa0JBQ0EsMEJBQ0EsZ0JBQ0EsaUJBSUEsWUF2QkEsMkNBREQsUUFFRSxjQW1CRCxhQUNDLG1CQUdELFlBQ0MscUJBQ0Esd0JBQ0Esa0JBQ0MsYUFHRixtQkFDQyxtQkFDQSw2QkFDQSxjQUNBLHFCQUNBLFlBQ0EsaUJBQ0EsZ0JBQ0EsYUFDQSxtQkFDQSxlQUNBLHdCQUNDLDBCQUNBLDRCQUNBLG1CQUNBLG1CQUNBLG9CQUNBLGNBRUQsNERBRUMsa0JBQ0EscUNBQ0EsT0FDQSxZQUNBLCtCQUNBLG1CQUNBLHNEQUVELDhCQUNDLHVEQUNBLDJDQUZELDhCQUdFLGdEQUdGLDhCQUNDLHdEQUNBLDJDQUZELDhCQUdFLGlEQUtILGNBQ0MsZUFDQSx5QkFDQSw2QkFDQSxpQ0FDQSxxQkFDQSxrQkFDQSxrQkFDQSxXQUNBLE9BQ0EsV0FDQSw0QkFDQSw2QkFDQSwyQkFHQSxtQkFDQyxlQUlELG1CQUNDLGVBSUQsbUJBQ0MsZUFJRCxvQkFDQyxnQkFNSCw0Q0FHQyxrQkFDQSxVQUNBLGFBQ0EsV0FDQSxnQkFDQSwrRkFDQyxrQkFDQSxNQUNBLE9BQ0EsV0FDQSxZQUVELHNIQUVDLGtCQUNBLE1BQ0EsT0FDQSxXQUNBLFlBQ0EsaUJBRUQsd0RBQ0MsVUFFRCw4REFDQyxVQU1GLG1CQUNDLHNDQUNBLG9CQUNBLDJCQUNDLDRCQUdBLDZCQUNDLDRCQUlBLGtCQUhBLDJDQUZELDZCQUdFLGVBSUYsK0JBQ0MsZ0JBQ0EsV0FDQSxnQkFDQSxtQkFLSCxnQkFFQyxrQkFDQSxxQkFDQSwyQ0FDQyxpQ0FDQyxnQkFFRCxpQ0FDQyxpQkFDQSxvQkFDQSwrQkFDQSxVQUNBLG1DQUNDLG9CQUdGLGlDQUNDLHNCQUlGLG9JQU9DLDRCQUNBLFNBQ0Esb0JBRUQsbUJBQ0MsZUFFRCxrQkFDQyw0QkFDQSwyQ0FGRCxrQkFHRSxVQUNBLCtCQUdGLDBDQUVDLHVCQUNBLDZCQUdBLDRCQUNDLHFCQUVELDBCQUNDLFVBT0gsT0FDQyx3QkFDQSxZQUNDLFdBQ0EsV0FDQSx3QkFFRCxhQUNDLFdBQ0EsYUFDQSwwQ0FIRCxhQUlFLGNBR0YscUNBRUMsbUJBSUEsc0JBSEEsaUZBQ0MsY0FHRCx1RkFDQyxpQkFJRCwwQkFDQyxnQkFDQSxhQUNBLHlDQUNBLDJCQUNBLDJCQUVELHdDQUNDLHVDQUNBLCtCQUNBLCtCQUdBLHFDQUNDLGdCQUlILHNCQUNDLGdCQUNBLGdCQUNBLHFCQUNBLDJDQUpELHNCQUtFLGVBR0EsMkNBREQsOEJBRUUsYUFJRixpQ0FDQyw2QkFDQSx5QkFDQSxjQUNBLGNBQ0EsMkNBTEQsaUNBTUUsVUFDQSxrR0FDQSw0QkFDQSw2Q0FDQyxxQkFFRCw4Q0FDQyxxQkFFRCw4Q0FDQyxxQkFFRCw4Q0FDQyxxQkFFRCw4Q0FDQyxxQkFFRCw4Q0FDQyxzQkFPRCwySUFDQyxVQUNBLGVBQ0EseUJBS0osd0JBQ0MsMEJBQ0EsMkNBRkQsd0JBR0UsZUFFRCwyQ0FMRCx3QkFNRSx1QkFFRCxtQ0FDQyxnQ0FPQSx5QkFDQSxlQVBBLDJDQUZELG1DQUdFLGtDQUVELHlDQUNDLDRCQU9ELHlIQUNDLGFBQ0Esc0JBS0MsdUpBQ0MsbUNBQ0EsVUFNQyx5TEFDQyxnQkFKTyxLQUdSLHlMQUNDLGdCQUpPLE1BR1IseUxBQ0MsZ0JBSk8sTUFHUix5TEFDQyxnQkFKTyxNQUdSLHlMQUNDLGdCQUpPLE1BR1IseUxBQ0MsZ0JBSk8sTUFHUix5TEFDQyxnQkFKTyxNQUdSLHlMQUNDLGdCQUpPLE1BR1IsMkxBQ0MsZ0JBSk8sTUFHUiwyTEFDQyxnQkFKTyxNQUdSLDJMQUNDLGdCQUpPLE1BR1IsMkxBQ0MsZ0JBSk8sTUFHUiwyTEFDQyxnQkFKTyxNQUdSLDJMQUNDLGdCQUpPLE9BR1IsMkxBQ0MsZ0JBSk8sT0FHUiwyTEFDQyxnQkFKTyxPQUdSLDJMQUNDLGdCQUpPLE9BR1IsMkxBQ0MsZ0JBSk8sT0FHUiwyTEFDQyxnQkFKTyxPQUdSLDJMQUNDLGdCQUpPLE9BR1IsMkxBQ0MsZ0JBSk8sT0FHUiwyTEFDQyxnQkFKTyxPQUdSLDJMQUNDLGdCQUpPLE9BR1IsMkxBQ0MsZ0JBSk8sT0FHUiwyTEFDQyxnQkFKTyxPQUdSLDJMQUNDLGdCQUpPLE9BR1IsMkxBQ0MsZ0JBSk8sT0FHUiwyTEFDQyxnQkFKTyxPQUdSLDJMQUNDLGdCQUpPLE9BR1IsMkxBQ0MsZ0JBSk8sT0FZZCwrQkFDQywwQkFDQSwyQ0FGRCwrQkFHRSxlQUVELDJDQUxELCtCQU1FLHVCQUVELDBDQUNDLGdDQU9BLHlCQUNBLGVBUEEsMkNBRkQsMENBR0Usa0NBRUQsZ0RBQ0MsNEJBS0YsZ0RBQ0MsYUFDQSxzQkFDQSwyREFDQyxjQUNBLDJDQUZELDJEQUdFLFVBQ0Esa0dBQ0EsNEJBQ0EsdUVBQ0MscUJBRUQsd0VBQ0MscUJBRUQsd0VBQ0MscUJBRUQsd0VBQ0MscUJBRUQsd0VBQ0MscUJBRUQsd0VBQ0Msc0JBUUYsNkpBQ0MsVUFDQSxlQUNBLHdCQU1ILHdCQUNDLDhCQUNBLDRCQUNBLG1CQUNBLHlCQUNBLHVCQUNBLDBCQUNBLGNBQ0Esc0JBSUEsMEJBQ0EsU0FDQSx5QkFMQSwyQ0FURCx3QkFVRSx5QkFPSCxrQkFDQyxnQkFFQyxpRkFFQyxZQUNBLGNBQ0EsT0FDQSxXQUNBLDhCQUNBLGtCQUNBLFVBRUQseUNBQ0MsTUFFRCx3Q0FDQyxTQUdGLGtDQUNDLFVBQ0Esa0JBRUQsMEJBQ0MsaUJBQ0Esb0JBQ0EsMkNBSEQsMEJBSUUsc0JBR0YsOEJBQ0MsWUFDQSxpQkFDQSxlQUNBLDJDQUpELDhCQUtFLGVBQ0EsWUFDQSw0Q0FDQyxhQUVELDJDQUNDLGlCQUlGLGtDQUNDLFlBQ0EsaUJBR0YsOEJBQ0MsNkJBQ0EsYUFDQSxnQkFDQSxTQW9CQSxpQkFJQSxvQkF2QkEsMkNBTEQsOEJBTUUsVUFDQSxlQUVELG9DQUNDLGFBQ0EscUJBRUQsb0VBRUMsWUFDQSxXQUNBLDJDQUpELG9FQUtFLGFBQ0EsaUJBQ0Esb0JBS0YsMkNBekJELDhCQTBCRSxpQkFHRCwwQ0FDQyxZQUNBLGlCQUtBLGFBQ0Esc0JBQ0EsOEJBTkEsMkNBSEQsMENBSUUsaUJBTUQsNkNBQ0MsZUFDQSxvQkFDQSw2QkFFRCw0Q0FDQyxTQUNBLG1CQUtKLHlCQUNDLG1CQUNBLHNCQUNBLDJDQUNDLCtEQUNDLDRCQUlGLDhCQUNDLHFCQUNBLFVBQ0EsZ0JBQ0EsaUJBQ0EsdUJBQ0EsbUJBQ0EsZ0JBQ0EsbUJBQ0Esc0JBQ0EsMkNBVkQsOEJBV0UsbUJBQ0Esc0JBQ0EsaUJBQ0Esb0JBQ0Esc0NBRUQsZ0NBQ0MseUJBQ0EsNEJBSUQseURBQ0MsYUFFRCxxREFDQyxlQUdGLGdDQUNDLGNBQ0Esc0JBU0EscUJBUkEsMkNBSEQsZ0NBSUUsaUJBQ0EsOENBQ0EseURBQ0EsNEJBQ0EsNEJBQ0Esc0JBR0Qsa0NBQ0MsU0FFRCxzQ0FDQyxtQkFDQSxzQkFHRiwyQ0FDQywyQ0FDQyx5QkFJSCx1QkFDQyx1QkFDQSwwQkFDQSxtQkFDQSxzQkFDQSxrQkFFRCxrQkFDQyxtQkFDQSxzQkFDQSwyQ0FIRCxrQkFJRSxtQkFDQSx1QkFFRCx1Q0FDQyxtQkFDQSwyQ0FGRCx1Q0FHRSxvQkFHRixxQ0FDQyxpQkFFRCwwQ0FDQyxzQkFDQSwyQ0FGRCwwQ0FHRSx1QkFHRix3Q0FDQyxvQkFFRCx1Q0FDQyxpQkFDQSxvQkFFRCw4SEFNQyxTQUVDLGtOQUNDLGdDQUVELGtOQUNDLDZCQUVELGtOQUNDLDRCQUVELGtOQUNDLDRCQUVELGtOQUNDLDRCQUtGLDJCQUNDLGdCQUdBLGlDQUNDLGNBQ0EseUJBQ0EsNEJBR0YsNEJBQ0MsZUFDQSxpQkFFRCxxQ0FDQyw2QkFJSCxzQkFDQyxrQkFDQSxxQkFDQSxVQUNBLCtCQUNDLDJCQUVELDRCQUNDLHdCQUVELDZCQUNDLHlCQUVELDhCQUNDLDBCQUVELDJCQUNDLGlCQUNBLHFCQUNBLFVBQ0EsZ0JBQ0EsaUJBQ0EsdUJBQ0EsZ0JBQ0EsYUFDQSxtQkFDQSxzQkFDQSwyQ0FYRCwyQkFZRSxtQkFDQSxzQkFDQSxpQkFDQSxxQkFFRCw2QkFDQyx5QkFDQSw0QkFJSCx1QkFDQyxtQkFDQSxzQkFJQSw2RUFDQyxlQUNBLG9CQUNBLHVCQXlEQSxpQkFDQSxrQkE2Q0Esa0JBdEdBLHVHQUNDLG9CQUVELHVHQUNDLGFBQ0EsMkNBRkQsdUdBR0UsY0FDQSxrQkFDQSxVQUNBLFFBQ0EsWUFDQSxXQUNBLFdBQ0EsVUFDQSxvQkFDQSxzQkFhQSxxRUFDQSwyQ0FiQSx1VkFHQyxrQkFDQSxNQUNBLE9BQ0EsV0FDQSxZQUNBLFVBQ0EsaUJBQ0Esd0JBT0YsMkNBREQsbUhBRUUsVUFDQSxxQ0FDQSwwREFHRiwyRkFDQyxpQkFDQSxxR0FDQyw4QkFDQSxzQkFDQSxtQkFHRix5RkFDQyxnQkFDQSxtR0FDQyw4QkFDQSw0QkFDQSx5QkFDQSxtQkFLRiwrRkFJQyxvQkFDQSxVQUNBLHlEQUNBLFlBQ0EsVUFDQSxrQkFDQSxNQUNBLE9BQ0EsV0FYQSwyQ0FERCwrRkFFRSx5QkFXRCx5R0FDQyw0QkFDQSxtQkFDQSx5QkFDQSxvQkFDQSxjQUNBLDBCQUNBLG1IQUNDLGVBSUYsMkNBekJELCtGQTBCRSxhQUNBLG1CQUNBLDBCQUNBLE1BQ0EsU0FDQSxZQUNBLG9CQUNBLHNCQUdELHlHQUNDLG9CQUdGLHVIQUNDLFVBQ0Esa0JBR0QseUZBSUMsWUFDQSxrQkFDQSx5REFDQSxRQUNBLDJCQUNBLE9BQ0EsV0FNQSxVQUNBLDZCQUNBLFlBQ0EsZUFsQkEsMkNBREQseUZBRUUsY0FTRCwyQ0FYRCx5RkFZRSwwQkFDQSxhQUNBLGVBUUQsMkdBQ0MseURBQ0EsVUFFRCxxR0FDQyx5REFDQSxrQkFJSCxtREFDQyx3QkFDQSxlQUVELDZFQUNDLG1CQUNBLHVGQUNDLGtCQUlELDJDQURELDZFQUVFLGNBQ0EsK0ZBQ0MsMEJBR0YsMkZBQ0MsbUNBQ0EsYUFDQSxZQUNBLG1CQUNBLGVBQ0EsMkJBQ0EsbUJBQ0EsY0FDQSxpR0FDQyxTQUNBLG9CQUNBLGlDQUNBLG1CQUNBLG9DQUNBLDRCQUVELDJDQWpCRCwyRkFrQkUsa0JBQ0EsdUdBQ0MsWUFDQSxrQkFDQSxhQUNBLFdBQ0EsWUFDQSx3QkFDQSxZQVFELDJIQUNDLGFBT0osNEJBQ0MsVUFDQSxjQUNBLGdDQUNBLGtCQUNBLE1BQ0EsT0FDQSx3QkFDQSxjQUlBLFNBSEEsMkNBVEQsNEJBVUUsZ0NBS0gsdUJBcUJDLGtCQUNBLDBCQXJCQSxvQ0FDQyxrQkFDQSwwQkFDQSwyQ0FIRCxvQ0FJRSxtQkFDQSwwQkFFRCx1Q0FDQyxTQUNBLGVBSUEsZ0NBSEEsMkNBSEQsdUNBSUUsY0FHRCw0Q0FDQyxjQUNBLGlDQU1ILGtDQUNDLHdCQUNBLGtEQUNDLDBCQUNBLG9CQUNBLGtCQUNBLGdCQUVELG1EQUNDLGVBQ0EsMkRBQ0MsZUFDQSxrSUFFQyxlQUdGLHNEQUNDLDRCQUNBLHlEQUNBLGdCQUlBLG9CQUhBLDJDQUpELHNEQUtFLFVBS0QsNERBQ0MsNkJBR0YseURBQ0MseURBRUQsK0RBQ0MseUJBR0Ysa0RBQ0MsYUFDQSxnQkFDQSxnQkFDQSxvREFDQyxtQkFDQSxlQUdGLDZDQUNDLDBCQUNBLG9CQUNBLHlCQUdBLDhGQUVDLGVBR0QsK0VBQ0Msb0JBRUQscUZBQ0Msa0NBRUQsdUZBQ0Msa0NBT0wsZUFPQyxlQUNBLGNBQ0EsTUFDQSxPQUNBLFdBQ0EsWUFDQSw0QkFDQSxvQkFDQSxzREFaQyw4RUFDQyxhQVlGLDJDQWhCRCxlQWlCRSxVQUNBLGNBRUQsb0NBQ0MsVUFDQSxrQkFDQSxNQUNBLFlBQ0EsUUFDQSxXQUlBLGtCQUhBLDJDQVBELG9DQVFFLGFBR0QsOERBQ0MscUJBQ0EsY0FDQSxlQUNBLDJCQUNBLHdEQUNBLDJDQU5ELDhEQU9FLGdCQUVELCtFQUNDLGFBQ0EseUJBQ0EsbUNBRUQsZ0ZBQ0MsaUJBQ0EsZ0NBQ0EsNERBR0Ysd0NBQ0MsdUJBRUQsdUNBQ0MsY0FDQSw0QkFFQSxTQUNBLGFBQ0Esc0JBQ0EsK0NBQ0Msb0JBQ0EsbUJBQ0EsZ0JBQ0EsNEJBQ0EscUJBR0YsMkNBQ0MsZUFJQSxtQkFDQSxrQkFKQSwyQ0FGRCwyQ0FHRSxnQkFJRCwyQ0FDQywyREFDQyxnQkFDQSxZQUlELDBEQUNDLGdCQUdGLGtEQUNDLFlBQ0EsVUFDQSxjQUNBLGtCQUNBLFFBQ0EsVUFDQSx3QkFDQSxVQUVELGlEQUNDLFlBQ0EsV0FDQSxhQUNBLGtCQUNBLFVBQ0EsWUFDQSx3QkFDQSxVQUlILHNCQUNDLFlBQ0EsVUFDQSxrQkFDQSxNQUNBLE9BQ0EsV0FDQSxZQUNBLFdBQ0EsNEJBQ0Esd0JBQ0EseURBRUQsd0JBQ0Msd0JBQ0Esb0JBQ0EsZ0JBQ0EsMkNBSkQsd0JBS0UsV0FHRCwrQkFDQyxXQUNBLHdCQUVELGtEQUNDLHdCQU9ILE9BQ0MsZUFDQSxNQUNBLE9BQ0EsV0FDQSxZQUNBLGdCQUNBLDhCQUNBLFlBQ0EsVUFDQSxrQkFDQSxvQkFDQSxVQUNDLFVBR0EsaUJBQ0MsVUFNRiwwQkFDQyxXQUNBLFNBQ0EsYUFDQSxzQkFXQSxpQkFUQSwyQ0FORCwwQkFPRSxVQUNBLG1CQUNBLGlDQUNDLHlCQUNBLGtCQUNBLHNCQUtILHdCQUNDLGtCQUNBLFVBQ0EsT0FDQSxlQUdELDhCQUNDLHlEQUVBLGVBQ0EsNkJBQ0EsV0FDQSw4Q0FDQSxxQkFDQSxnQkFDQSxnQkFDQSxxQkFDQSxlQUNBLHVCQUNBLHdCQUNBLHNCQUNBLFNBQ0Esb0JBQ0Esb0NBQ0Msd0JBQ0EsK0JBSUYsK0JBQ0Msa0JBQ0EsY0FDQSxZQUNBLGFBQ0EsVUFDQSxZQUNBLGdCQUNBLHlCQUNBLG1CQUNBLHdCQUdELHFDQUNDLGFBR0QsK0JBQ0MscUJBQ0EsY0FDQSxVQUNBLG1CQUNBLGtCQUNBLG1DQUNBLGtDQUNBLDJCQUNBLHlCQUNBLHdCQUNBLHNCQUNBLHFCQUNBLGlCQUdELHVDQUNDLGtCQUNBLGNBQ0Esa0JBQ0EsV0FLRCx1Q0FDQyxtQkFDQSxXQUNBLHlCQUNBLG1CQUNBLGtCQUdELHVDQUNDLGtCQUNBLFdBQ0EsZ0JBQ0Esb0JBR0QsK0NBQ0MseUJBR0QsNkZBRUMsV0FDQSxrQkFDQSxPQUNBLFdBQ0EsV0FDQSxXQUNBLHdCQUNBLHlCQUdELCtDQUNDLE1BR0QsOENBQ0MsU0FHRCxzSkFFQywrQkFHRCwrQkFDQyxnQkFHRCxzQ0FDQyxlQUNBLGlCQUNBLFdBQ0EseUJBQ0EsbUJBR0Qsc0NBQ0Msa0JBQ0EsU0FDQSxPQUNBLFVBQ0EsV0FDQSxZQUNBLGdCQUNBLG9CQUdELDhDQUNDLGtCQUNBLHdCQUdELDJGQUVDLFdBQ0Esa0JBQ0EsTUFDQSxPQUNBLFdBQ0EseUJBQ0EsMENBR0QsNkNBQ0MsZUFDQSxtQ0FDQSxtQ0FDQSx5QkFHRCxxREFDQyx3QkFHRCxxREFDQywyQkFHRCxxREFDQyx5QkFHRCxvSUFFQywrQkFHQSxrRkFDQyw4QkFDQSw4QkFJRixpRkFDQyx1QkFDQSxlQUNBLGtDQUdELDhGQUNDLDhCQUdELDBCQUNDLElBQ0MsVUFDQSxpQ0FFRCxJQUNDLFVBQ0EscUNBRUQsS0FDQyxVQUNBLG1DQUlGLGtCQUNDLElBQ0MsVUFDQSxpQ0FFRCxJQUNDLFVBQ0EscUNBRUQsS0FDQyxVQUNBLG1DQU1GLHFCQUNDLFlBQ0EsVUFDQSxTQUNBLDJDQUNDLFdBQ0EsYUFDQSxTQUlBLHNCQTRDQSxpQkEvQ0EsMkNBSkQsMkNBS0UsV0FHRCw0REFDQyxhQUVELHVEQUNDLGFBRUQsMkNBZEQsMkNBZUUsbUJBQ0EsZUFDQSwrQkFHRCwyREFDQyxXQUNBLGNBQ0EsMkNBSEQsMkRBSUUsU0FDQSxXQUNBLGNBQ0EsYUFDQSxrRUFSRiwyREFTRyxlQUdGLGlFQUNDLGFBRUQsaUVBQ0MsV0FDQSxZQUNBLG1DQUNBLGdCQUtELGtFQUNDLHFCQUVELGdFQUNDLG1CQUtILHlDQUNDLGFBRUQsNkRBRUMsT0FDQSxlQUNBLG9CQUNBLHlCQUNBLGtCQUNBLG9CQUNBLDJDQVJELDZEQVNFLGtCQUNBLHNCQVlGLDRCQUNDLGtCQUNBLFVBQ0EsT0FDQSxlQUdELHdDQUNDLHlEQUVBLGVBQ0EsNkJBQ0EsWUFDQSw4Q0FDQSxxQkFDQSxnQkFDQSxnQkFDQSxxQkFDQSxlQUNBLHVCQUNBLG1CQUNBLGNBQ0Esc0JBQ0EsU0FDQSxjQUNBLGNBQ0Esa0JBQ0EsOENBQ0Msd0JBQ0EsK0JBSUYsbUNBQ0Msa0JBQ0EsY0FDQSxZQUNBLGFBQ0EsVUFDQSxZQUNBLGdCQUNBLHlCQUNBLG1CQUNBLHdCQUdELHlDQUNDLGFBR0QsbUNBQ0MscUJBQ0EsY0FDQSxVQUNBLG1CQUNBLGtCQUNBLG1DQUNBLGtDQUNBLDJCQUNBLHlCQUNBLHdCQUNBLHNCQUNBLHFCQUNBLGlCQUdELDJDQUNDLGtCQUNBLGNBQ0Esa0JBQ0EsV0FLRCwyQ0FDQyxtQkFDQSxXQUNBLHlCQUNBLG1CQUNBLGtCQUdELDJDQUNDLGtCQUNBLFdBQ0EsZ0JBQ0Esb0JBR0QsbURBQ0MseUJBR0QscUdBRUMsV0FDQSxrQkFDQSxPQUNBLFdBQ0EsV0FDQSxXQUNBLHdCQUNBLHlCQUdELG1EQUNDLE1BR0Qsa0RBQ0MsU0FHRCw4SkFFQywrQkFHRCxtQ0FDQyxnQkFHRCwwQ0FDQyxlQUNBLGlCQUNBLFdBQ0EseUJBQ0EsbUJBR0QsMENBQ0Msa0JBQ0EsU0FDQSxPQUNBLFVBQ0EsV0FDQSxZQUNBLGdCQUNBLG9CQUdELGtEQUNDLGtCQUNBLHdCQUdELG1HQUVDLFdBQ0Esa0JBQ0EsTUFDQSxPQUNBLFdBQ0EseUJBQ0EsMENBR0QsaURBQ0MsZUFDQSxtQ0FDQSxtQ0FDQSx5QkFHRCx5REFDQyx3QkFHRCx5REFDQywyQkFHRCx5REFDQyx5QkFHRCw0SUFFQywrQkFHQSxzRkFDQyw4QkFDQSw4QkFJRixxRkFDQyx1QkFDQSxlQUNBLGtDQUdELGtHQUNDLDhCQUdELDBCQUNDLElBQ0MsVUFDQSxpQ0FFRCxJQUNDLFVBQ0EscUNBRUQsS0FDQyxVQUNBLG1DQUlGLGtCQUNDLElBQ0MsVUFDQSxpQ0FFRCxJQUNDLFVBQ0EscUNBRUQsS0FDQyxVQUNBLG1DQU9ILDJDQURELGFBRUUsVUFDQSxnQkFDQSIsImZpbGUiOiJtYWluLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogU3RpcnRpbmdhbGUgU2ltcGxlIFNBU1MgQnVpbGRcbiAqL1xuXG4vLyBIQVJEIFZBUklBQkxFU1xuJHNpdGUtd2lkdGg6IDE3NXJlbTtcbiRtZWRpdW0tYnJlYWtwb2ludDogOTIwcHg7XG4kbGFyZ2UtYnJlYWtwb2ludDogMTQwMHB4O1xuJGJhc2U6IDFyZW07XG4kYmFzZXZ3OiAxLjF2dztcbiRzY2FsZTogMS4xMjU7XG4kbXNjYWxlOiAxLjA1O1xuJGh1Z2VzY2FsZTogMTMuMzM7XG4kZ3JpZC1wYWRkaW5nLWd1dHRlcnM6IDMuNmVtO1xuJGdyaWQtbWFyZ2luLWd1dHRlcnM6IDMuNmVtO1xuJGdyaWQtY29sdW1uczogMTI7XG5cbkBpbXBvcnQgdXJsKFwiaHR0cHM6Ly91c2UudHlwZWtpdC5uZXQvZXhlMWFoYi5jc3NcIik7XG5AaW1wb3J0IFwidGhlbWVcIjtcblxuLy8gLS0tIFJlc2V0IChub3JtYWxpemUuY3NzKSAmIEZvdW5kYXRpb24gR3JpZCAoVmVyc2lvbiA2LjUuMSkgLS0tXG4vLyBAaW1wb3J0IFwiZ3JpZFwiO1xuQGltcG9ydCBcImZvdW5kYXRpb24vZm91bmRhdGlvblwiO1xuXG4vLyBHbG9iYWwgc3R5bGVzXG5AaW5jbHVkZSBmb3VuZGF0aW9uLWdsb2JhbC1zdHlsZXM7XG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLWZvcm1zO1xuLy8gQGluY2x1ZGUgZm91bmRhdGlvbi10eXBvZ3JhcGh5O1xuLy8gR3JpZHMgKGNob29zZSBvbmUpXG5AaW5jbHVkZSBmb3VuZGF0aW9uLXh5LWdyaWQtY2xhc3Nlcztcbi8vIEBpbmNsdWRlIGZvdW5kYXRpb24tZ3JpZDtcbi8vIEBpbmNsdWRlIGZvdW5kYXRpb24tZmxleC1ncmlkO1xuXG4vLyBHZW5lcmljIGNvbXBvbmVudHNcbi8vIEBpbmNsdWRlIGZvdW5kYXRpb24tYnV0dG9uO1xuLy8gQGluY2x1ZGUgZm91bmRhdGlvbi1idXR0b24tZ3JvdXA7XG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLWNsb3NlLWJ1dHRvbjtcbi8vIEBpbmNsdWRlIGZvdW5kYXRpb24tbGFiZWw7XG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLXByb2dyZXNzLWJhcjtcbi8vIEBpbmNsdWRlIGZvdW5kYXRpb24tc2xpZGVyO1xuLy8gQGluY2x1ZGUgZm91bmRhdGlvbi1yYW5nZS1pbnB1dDtcbi8vIEBpbmNsdWRlIGZvdW5kYXRpb24tc3dpdGNoO1xuLy8gQGluY2x1ZGUgZm91bmRhdGlvbi10YWJsZTtcbi8vIEJhc2ljIGNvbXBvbmVudHNcbi8vIEBpbmNsdWRlIGZvdW5kYXRpb24tYmFkZ2U7XG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLWJyZWFkY3J1bWJzO1xuLy8gQGluY2x1ZGUgZm91bmRhdGlvbi1jYWxsb3V0O1xuLy8gQGluY2x1ZGUgZm91bmRhdGlvbi1jYXJkO1xuLy8gQGluY2x1ZGUgZm91bmRhdGlvbi1kcm9wZG93bjtcbi8vIEBpbmNsdWRlIGZvdW5kYXRpb24tcGFnaW5hdGlvbjtcbi8vIEBpbmNsdWRlIGZvdW5kYXRpb24tdG9vbHRpcDtcblxuLy8gQ29udGFpbmVyc1xuLy8gQGluY2x1ZGUgZm91bmRhdGlvbi1hY2NvcmRpb247XG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLW1lZGlhLW9iamVjdDtcbi8vIEBpbmNsdWRlIGZvdW5kYXRpb24tb3JiaXQ7XG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLXJlc3BvbnNpdmUtZW1iZWQ7XG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLXRhYnM7XG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLXRodW1ibmFpbDtcbi8vIE1lbnUtYmFzZWQgY29udGFpbmVyc1xuLy8gQGluY2x1ZGUgZm91bmRhdGlvbi1tZW51O1xuLy8gQGluY2x1ZGUgZm91bmRhdGlvbi1tZW51LWljb247XG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLWFjY29yZGlvbi1tZW51O1xuLy8gQGluY2x1ZGUgZm91bmRhdGlvbi1kcmlsbGRvd24tbWVudTtcbi8vIEBpbmNsdWRlIGZvdW5kYXRpb24tZHJvcGRvd24tbWVudTtcblxuLy8gTGF5b3V0IGNvbXBvbmVudHNcbi8vIEBpbmNsdWRlIGZvdW5kYXRpb24tb2ZmLWNhbnZhcztcbi8vIEBpbmNsdWRlIGZvdW5kYXRpb24tcmV2ZWFsO1xuLy8gQGluY2x1ZGUgZm91bmRhdGlvbi1zdGlja3k7XG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLXRpdGxlLWJhcjtcbi8vIEBpbmNsdWRlIGZvdW5kYXRpb24tdG9wLWJhcjtcblxuLy8gSGVscGVyc1xuLy8gQGluY2x1ZGUgZm91bmRhdGlvbi1mbG9hdC1jbGFzc2VzO1xuQGluY2x1ZGUgZm91bmRhdGlvbi1mbGV4LWNsYXNzZXM7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLXZpc2liaWxpdHktY2xhc3Nlcztcbi8vIEBpbmNsdWRlIGZvdW5kYXRpb24tcHJvdG90eXBlLWNsYXNzZXM7XG5cbi8vIC8vIE1vdGlvbiBVSVxuLy8gQGluY2x1ZGUgbW90aW9uLXVpLXRyYW5zaXRpb25zO1xuLy8gQGluY2x1ZGUgbW90aW9uLXVpLWFuaW1hdGlvbnM7XG5cbi8vIExvY29tb3RpdmUgc2Nyb2xsXG5AaW1wb3J0IFwic2Nyb2xsXCI7XG5cbi8vIEJ1cmdlcnNcbi8vIEBpbXBvcnQgXCJoYW1idXJnZXJzL2hhbWJ1cmdlcnNcIjtcbi8vIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtZWRpdW0tYnJlYWtwb2ludCkge1xuLy8gICAgIEBpbXBvcnQgXCJhb3MvYW9zXCI7XG4vLyB9XG5cbi8vIC0tLSBBcHBzIC0tLVxuQGltcG9ydCBcImFwcFwiO1xuIiwiQHVzZSBcInNhc3M6bWF0aFwiO1xuXG4vLyAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjXG4vLyBGT05UU1xuLy8gIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjI1xuLy8gQGZvbnQtZmFjZSB7XG4vLyBcdGZvbnQtZmFtaWx5OiBcIldIWVwiO1xuLy8gXHRzcmM6IHVybChcIi4uL2ZvbnRzL1dIWUJldGExLVdIWS53b2ZmXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi9mb250cy9XSFlCZXRhMS1XSFkud29mZjJcIikgZm9ybWF0KFwid29mZlwiKTtcbi8vIH1cbi8vIEBmb250LWZhY2Uge1xuLy8gXHRmb250LWZhbWlseTogXCJXSFlOT1RcIjtcbi8vIFx0c3JjOiB1cmwoXCIuLi9mb250cy9XSFlCZXRhMS1XSFlOT1Qud29mZlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiLi4vZm9udHMvV0hZQmV0YTEtV0hZTk9ULndvZmYyXCIpIGZvcm1hdChcIndvZmZcIik7XG4vLyB9XG5cbi8vICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyNcbi8vIENTUyBWQVJTXG4vLyAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjXG5cbi5hY2YtYmxvY2stcHJldmlldyxcbltkYXRhLXRoZW1lPVwiY3JlYW1cIl0sXG4jdGlueW1jZSxcbjpyb290IHtcblx0Ly8gRk9OVFNcblx0LS1oZWFkZXItZm9udDogXCJjYW5hZGEtdHlwZS1naWJzb25cIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuXHQtLWJvZHktZm9udDogXCJjYW5hZGEtdHlwZS1naWJzb25cIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuXHQtLWJvZHktbGluZS1oZWlnaHQ6IDEuNDtcblx0LS1oZWFkZXItbGluZS1oZWlnaHQ6IDE7XG5cdC0td2VpZ2h0LW5vcm1hbDogNDAwO1xuXHQtLXdlaWdodC1zYm9sZDogNTAwO1xuXHQtLXdlaWdodC1ib2xkOiA3MDA7XG5cblx0Ly8gVFlQRSBTQ0FMRSAoTUFKT1IgVEhJUkQpXG5cdC0tc2l6ZTogMTZweDtcblx0LS1zaXplLW1pbnVzMTogMC43MDdyZW07XG5cdC0tc2l6ZS1taW51czI6IDAuODc1cmVtO1xuXHQtLXNpemUtcGx1czE6ICN7JGJhc2UgKiBtYXRoLnBvdygkbXNjYWxlLCAxKX07XG5cdC0tc2l6ZS1wbHVzMjogI3skYmFzZSAqIG1hdGgucG93KCRtc2NhbGUsIDIpfTtcblx0LS1zaXplLXBsdXMzOiAjeyRiYXNlICogbWF0aC5wb3coJG1zY2FsZSwgMyl9O1xuXHQtLXNpemUtcGx1czQ6ICN7JGJhc2UgKiBtYXRoLnBvdygkbXNjYWxlLCA0KX07XG5cdC0tc2l6ZS1wbHVzNTogI3skYmFzZSAqIG1hdGgucG93KCRtc2NhbGUsIDUpfTtcblx0LS1zaXplLXBsdXM2OiAjeyRiYXNlICogbWF0aC5wb3coJG1zY2FsZSwgNil9O1xuXHQtLXNpemUtcGx1czc6ICN7JGJhc2UgKiBtYXRoLnBvdygkbXNjYWxlLCA3KX07XG5cdC0tc2l6ZS1wbHVzODogI3skYmFzZSAqIG1hdGgucG93KCRtc2NhbGUsIDgpfTtcblx0LS1zaXplLXBsdXM5OiAjeyRiYXNlICogbWF0aC5wb3coJG1zY2FsZSwgOSl9O1xuXHQtLXNpemUtcGx1czEwOiAjeyRiYXNlICogbWF0aC5wb3coJG1zY2FsZSwgMTApfTtcblx0LS1zaXplLXBsdXMxMTogI3skYmFzZSAqIG1hdGgucG93KCRtc2NhbGUsIDExKX07XG5cdC0tc2l6ZS1wbHVzMTI6ICN7JGJhc2UgKiBtYXRoLnBvdygkbXNjYWxlLCAxMil9O1xuXHQtLXNpemUtcGx1czEzOiAjeyRiYXNlICogbWF0aC5wb3coJG1zY2FsZSwgMTQpfTtcblx0LS1zaXplLXBsdXMtaHVnZTogI3skYmFzZSAqIG1hdGgucG93KCRtc2NhbGUsIDE1KX07XG5cdC0tc2l6ZS1wbHVzLW1odWdlOiAjeyRiYXNlICogbWF0aC5wb3coJG1zY2FsZSwgMTcuNSl9O1xuXHQtLXNpemUtcGx1cy14aHVnZTogI3skYmFzZSAqIG1hdGgucG93KCRtc2NhbGUsIDIwKX07XG5cdEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtLWJyZWFrcG9pbnQpIHtcblx0XHQtLXNpemU6ICN7JGJhc2V2dyAqIDAuODI1fTtcblx0XHQtLXNpemUtcGx1czA6ICN7JGJhc2V2dyAqIG1hdGgucG93KCRzY2FsZSwgMCl9O1xuXHRcdC0tc2l6ZS1wbHVzMTogI3skYmFzZXZ3ICogbWF0aC5wb3coJHNjYWxlLCAxKX07XG5cdFx0LS1zaXplLXBsdXMyOiAjeyRiYXNldncgKiBtYXRoLnBvdygkc2NhbGUsIDIpfTtcblx0XHQtLXNpemUtcGx1czM6ICN7JGJhc2V2dyAqIG1hdGgucG93KCRzY2FsZSwgMyl9O1xuXHRcdC0tc2l6ZS1wbHVzNDogI3skYmFzZXZ3ICogbWF0aC5wb3coJHNjYWxlLCAzLjUpfTtcblx0XHQtLXNpemUtcGx1czU6ICN7JGJhc2V2dyAqIG1hdGgucG93KCRzY2FsZSwgNSl9O1xuXHRcdC0tc2l6ZS1wbHVzNjogI3skYmFzZXZ3ICogbWF0aC5wb3coJHNjYWxlLCA1Ljc1KX07XG5cdFx0LS1zaXplLXBsdXM3OiAjeyRiYXNldncgKiBtYXRoLnBvdygkc2NhbGUsIDYuNSl9O1xuXHRcdC0tc2l6ZS1wbHVzODogI3skYmFzZXZ3ICogbWF0aC5wb3coJHNjYWxlLCA4KX07XG5cdFx0LS1zaXplLXBsdXM5OiAjeyRiYXNldncgKiBtYXRoLnBvdygkc2NhbGUsIDkpfTtcblx0XHQtLXNpemUtcGx1czEwOiAjeyRiYXNldncgKiBtYXRoLnBvdygkc2NhbGUsIDEwKX07XG5cdFx0LS1zaXplLXBsdXMtaHVnZTogI3skYmFzZXZ3ICogbWF0aC5wb3coJHNjYWxlLCAxNSl9O1xuXHRcdC0tc2l6ZS1wbHVzLXhodWdlOiAjeyRiYXNldncgKiBtYXRoLnBvdygkc2NhbGUsIDE5KX07XG5cdFx0LS1zaXplLXBsdXMwOiBtYXgoI3skYmFzZXZ3ICogbWF0aC5wb3coJHNjYWxlLCAwKX0sICN7JGJhc2UgKiBtYXRoLnBvdygkc2NhbGUsIDEpfSk7XG5cdFx0LS1zaXplLXBsdXMxOiBtYXgoI3skYmFzZXZ3ICogbWF0aC5wb3coJHNjYWxlLCAxKX0sICN7JGJhc2UgKiBtYXRoLnBvdygkc2NhbGUsIDIpfSk7XG5cdFx0LS1zaXplLXBsdXMyOiBtYXgoI3skYmFzZXZ3ICogbWF0aC5wb3coJHNjYWxlLCAyKX0sICN7JGJhc2UgKiBtYXRoLnBvdygkc2NhbGUsIDMpfSk7XG5cdFx0LS1zaXplLXBsdXMzOiBtYXgoI3skYmFzZXZ3ICogbWF0aC5wb3coJHNjYWxlLCAzKX0sICN7JGJhc2UgKiBtYXRoLnBvdygkc2NhbGUsIDQpfSk7XG5cdFx0LS1zaXplLXBsdXM0OiBtYXgoI3skYmFzZXZ3ICogbWF0aC5wb3coJHNjYWxlLCAzLjUpfSwgI3skYmFzZSAqIG1hdGgucG93KCRzY2FsZSwgNC41KX0pO1xuXHRcdC0tc2l6ZS1wbHVzNTogbWF4KCN7JGJhc2V2dyAqIG1hdGgucG93KCRzY2FsZSwgNSl9LCAjeyRiYXNlICogbWF0aC5wb3coJHNjYWxlLCA2KX0pO1xuXHRcdC0tc2l6ZS1wbHVzNjogbWF4KCN7JGJhc2V2dyAqIG1hdGgucG93KCRzY2FsZSwgNS43NSl9LCAjeyRiYXNlICogbWF0aC5wb3coJHNjYWxlLCA2Ljc1KX0pO1xuXHRcdC0tc2l6ZS1wbHVzNzogI3skYmFzZXZ3ICogbWF0aC5wb3coJHNjYWxlLCA2LjUpfTtcblx0XHQtLXNpemUtcGx1czg6ICN7JGJhc2V2dyAqIG1hdGgucG93KCRzY2FsZSwgOCl9O1xuXHRcdC0tc2l6ZS1wbHVzOTogI3skYmFzZXZ3ICogbWF0aC5wb3coJHNjYWxlLCA5KX07XG5cdFx0LS1zaXplLXBsdXMxMDogI3skYmFzZXZ3ICogbWF0aC5wb3coJHNjYWxlLCAxMCl9O1xuXHRcdC0tc2l6ZS1wbHVzMTE6ICN7JGJhc2V2dyAqIG1hdGgucG93KCRzY2FsZSwgMTEpfTtcblx0XHQtLXNpemUtcGx1czEyOiAjeyRiYXNldncgKiBtYXRoLnBvdygkc2NhbGUsIDEyKX07XG5cdFx0LS1zaXplLXBsdXMxMzogI3skYmFzZXZ3ICogbWF0aC5wb3coJHNjYWxlLCAxMil9O1xuXHRcdC0tc2l6ZS1wbHVzLWh1Z2U6ICN7JGJhc2V2dyAqIG1hdGgucG93KCRzY2FsZSwgMTUpfTtcblx0XHQtLXNpemUtcGx1cy1taHVnZTogI3skYmFzZXZ3ICogbWF0aC5wb3coJHNjYWxlLCAxNSl9O1xuXHRcdC0tc2l6ZS1wbHVzLXhodWdlOiAjeyRiYXNldncgKiBtYXRoLnBvdygkc2NhbGUsIDE5KX07XG5cdH1cblxuXHQvLyAvLyBDT0xPVVIgU0NIRU1FXG5cdC0tYmc6ICNmZmZmZmY7XG5cdC0td2hpdGU6ICNmZmZmZmY7XG5cdC0tYmxhY2s6ICMwMDAwMDA7XG5cdC0tbWFycXVlZWNvbG9yOiB2YXIoLS1ibGFjayk7XG5cdC0tb2ZmYmxhY2s6ICMwMDAwMDA7XG5cdC0tcHVyZXdoaXRlOiAjZmZmZmZmO1xuXHQtLXB1cmVibGFjazogIzAwMDtcblx0LS1saWdodGdyZXk6ICNlYWVhZTg7XG5cdC0tbWVkaXVtZ3JleTogIzU3NTk2Njtcblx0LS1ncmV5OiByZ2IoODQsIDg0LCA4NCk7XG5cdC0tY3JlYW06ICNmZmZkZjU7XG5cdC0tZGFya2dyZXk6IHJnYig1NSwgNTUsIDU1KTtcblx0LyogI0ZGNTk1OSAqL1xuXHQvLyAtLXJlZDogI2ZmNTk1OTtcblx0LS1yZWQ6ICNmZjQwNTA7XG5cdC8qICNGQ0MzMDAgKi9cblx0LS15ZWxsb3c6ICNmY2MzMDA7XG5cdC8qICM1NjY1OUMgKi9cblx0LS1ibHVlOiAjNTY2NTljO1xuXG5cdC8vIEdFTkVSQUxcblx0LS1saW5lOiAxcHggc29saWQgdmFyKC0tYmxhY2spO1xufVxuIiwiLy8gc2Fzcy1saW50OmRpc2FibGUgbm8tdmVuZG9yLXByZWZpeGVzXG5cbkBtaXhpbiBmb3VuZGF0aW9uLW5vcm1hbGl6ZSgpIHtcbiAgLyohIG5vcm1hbGl6ZS5jc3MgdjguMC4wIHwgTUlUIExpY2Vuc2UgfCBnaXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcyAqL1xuXG4gIC8vIERvY3VtZW50XG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gMS4gQ29ycmVjdCB0aGUgbGluZSBoZWlnaHQgaW4gYWxsIGJyb3dzZXJzLlxuICAvLyAyLiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluIGlPUy5cblxuICBodG1sIHtcbiAgICBsaW5lLWhlaWdodDogMS4xNTsgLy8gMVxuICAgIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLy8gMlxuICB9XG5cbiAgLy8gU2VjdGlvbnNcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyBSZW1vdmUgdGhlIG1hcmdpbiBpbiBhbGwgYnJvd3NlcnMuXG5cbiAgYm9keSB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgLy8gQ29ycmVjdCB0aGUgZm9udCBzaXplIGFuZCBtYXJnaW4gb24gYGgxYCBlbGVtZW50cyB3aXRoaW4gYHNlY3Rpb25gIGFuZFxuICAvLyBgYXJ0aWNsZWAgY29udGV4dHMgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgU2FmYXJpLlxuXG4gIGgxIHtcbiAgICBmb250LXNpemU6IDJlbTtcbiAgICBtYXJnaW46IDAuNjdlbSAwO1xuICB9XG5cbiAgLy8gR3JvdXBpbmcgY29udGVudFxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIEZpcmVmb3guXG4gIC8vIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuXG4gIGhyIHtcbiAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLy8gMVxuICAgIGhlaWdodDogMDsgLy8gMVxuICAgIG92ZXJmbG93OiB2aXNpYmxlOyAvLyAyXG4gIH1cblxuICAvLyAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICAvLyAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG5cbiAgcHJlIHtcbiAgICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8vIDFcbiAgICBmb250LXNpemU6IDFlbTsgLy8gMlxuICB9XG5cbiAgLy8gVGV4dC1sZXZlbCBzZW1hbnRpY3NcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBvbiBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG5cbiAgYSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAvLyAxLiBSZW1vdmUgdGhlIGJvdHRvbSBib3JkZXIgaW4gQ2hyb21lIDU3LVxuICAvLyAyLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgSUUsIE9wZXJhLCBhbmQgU2FmYXJpLlxuXG4gIGFiYnJbdGl0bGVdIHtcbiAgICBib3JkZXItYm90dG9tOiAwOyAvLyAxXG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOyAvLyAyXG4gIH1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuXG4gIGIsXG4gIHN0cm9uZyB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbiAgfVxuXG4gIC8vIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gIC8vIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cblxuICBjb2RlLFxuICBrYmQsXG4gIHNhbXAge1xuICAgIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLy8gMVxuICAgIGZvbnQtc2l6ZTogMWVtOyAvLyAyXG4gIH1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cblxuICBzbWFsbCB7XG4gICAgZm9udC1zaXplOiA4MCU7XG4gIH1cblxuICAvLyBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbiAgLy8gYWxsIGJyb3dzZXJzLlxuXG4gIHN1YixcbiAgc3VwIHtcbiAgICBmb250LXNpemU6IDc1JTtcbiAgICBsaW5lLWhlaWdodDogMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICB9XG5cbiAgc3ViIHtcbiAgICBib3R0b206IC0wLjI1ZW07XG4gIH1cblxuICBzdXAge1xuICAgIHRvcDogLTAuNWVtO1xuICB9XG5cbiAgLy8gRW1iZWRkZWQgY29udGVudFxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIFJlbW92ZSB0aGUgYm9yZGVyIG9uIGltYWdlcyBpbnNpZGUgbGlua3MgaW4gSUUgMTAuXG5cbiAgaW1nIHtcbiAgICBib3JkZXItc3R5bGU6IG5vbmU7XG4gIH1cblxuICAvLyBGb3Jtc1xuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIDEuIENoYW5nZSB0aGUgZm9udCBzdHlsZXMgaW4gYWxsIGJyb3dzZXJzLlxuICAvLyAyLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmkuXG5cbiAgYnV0dG9uLFxuICBpbnB1dCxcbiAgb3B0Z3JvdXAsXG4gIHNlbGVjdCxcbiAgdGV4dGFyZWEge1xuICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0OyAvLyAxXG4gICAgZm9udC1zaXplOiAxMDAlOyAvLyAxXG4gICAgbGluZS1oZWlnaHQ6IDEuMTU7IC8vIDFcbiAgICBtYXJnaW46IDA7IC8vIDJcbiAgfVxuXG4gIC8vIFNob3cgdGhlIG92ZXJmbG93IGluIElFLlxuICAvLyAxLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlLlxuXG4gIGJ1dHRvbixcbiAgaW5wdXQgeyAvLyAxXG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIH1cblxuICAvLyBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEVkZ2UsIEZpcmVmb3gsIGFuZCBJRS5cbiAgLy8gMS4gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94LlxuXG4gIGJ1dHRvbixcbiAgc2VsZWN0IHsgLy8gMVxuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICB9XG5cbiAgLy8gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cblxuICBidXR0b24sXG4gIFt0eXBlPVwiYnV0dG9uXCJdLFxuICBbdHlwZT1cInJlc2V0XCJdLFxuICBbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG4gIH1cblxuICAvLyBSZW1vdmUgdGhlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBpbiBGaXJlZm94LlxuXG4gIGJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcbiAgW3R5cGU9XCJidXR0b25cIl06Oi1tb3otZm9jdXMtaW5uZXIsXG4gIFt0eXBlPVwicmVzZXRcIl06Oi1tb3otZm9jdXMtaW5uZXIsXG4gIFt0eXBlPVwic3VibWl0XCJdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgICBib3JkZXItc3R5bGU6IG5vbmU7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIC8vIFJlc3RvcmUgdGhlIGZvY3VzIHN0eWxlcyB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZS5cblxuICBidXR0b246LW1vei1mb2N1c3JpbmcsXG4gIFt0eXBlPVwiYnV0dG9uXCJdOi1tb3otZm9jdXNyaW5nLFxuICBbdHlwZT1cInJlc2V0XCJdOi1tb3otZm9jdXNyaW5nLFxuICBbdHlwZT1cInN1Ym1pdFwiXTotbW96LWZvY3VzcmluZyB7XG4gICAgb3V0bGluZTogMXB4IGRvdHRlZCBCdXR0b25UZXh0O1xuICB9XG5cbiAgLy8gQ29ycmVjdCB0aGUgcGFkZGluZyBpbiBGaXJlZm94LlxuXG4gIGZpZWxkc2V0IHtcbiAgICBwYWRkaW5nOiAwLjM1ZW0gMC43NWVtIDAuNjI1ZW07XG4gIH1cblxuICAvLyAxLiBDb3JyZWN0IHRoZSB0ZXh0IHdyYXBwaW5nIGluIEVkZ2UgYW5kIElFLlxuICAvLyAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG4gIC8vIDMuIFJlbW92ZSB0aGUgcGFkZGluZyBzbyBkZXZlbG9wZXJzIGFyZSBub3QgY2F1Z2h0IG91dCB3aGVuIHRoZXkgemVybyBvdXRcbiAgLy8gICAgYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBhbGwgYnJvd3NlcnMuXG5cbiAgbGVnZW5kIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvLyAxXG4gICAgY29sb3I6IGluaGVyaXQ7IC8vIDJcbiAgICBkaXNwbGF5OiB0YWJsZTsgLy8gMVxuICAgIG1heC13aWR0aDogMTAwJTsgLy8gMVxuICAgIHBhZGRpbmc6IDA7IC8vIDNcbiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsOyAvLyAxXG4gIH1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuXG4gIHByb2dyZXNzIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIH1cblxuICAvLyBSZW1vdmUgdGhlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFIDEwKy5cblxuICB0ZXh0YXJlYSB7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gIH1cblxuICAvLyAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC5cbiAgLy8gMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLlxuXG4gIFt0eXBlPVwiY2hlY2tib3hcIl0sXG4gIFt0eXBlPVwicmFkaW9cIl0ge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8vIDFcbiAgICBwYWRkaW5nOiAwOyAvLyAyXG4gIH1cblxuICAvLyBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG5cbiAgW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG4gIFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cblxuICAvLyAxLiBDb3JyZWN0IHRoZSBvZGQgYXBwZWFyYW5jZSBpbiBDaHJvbWUgYW5kIFNhZmFyaS5cbiAgLy8gMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG5cbiAgW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvLyAxXG4gICAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7IC8vIDJcbiAgfVxuXG4gIC8vIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cblxuICBbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICB9XG5cbiAgLy8gMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAgLy8gMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuXG4gIDo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvLyAxXG4gICAgZm9udDogaW5oZXJpdDsgLy8gMlxuICB9XG5cbiAgLy8gSW50ZXJhY3RpdmVcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBFZGdlLCBJRSAxMCssIGFuZCBGaXJlZm94LlxuXG4gIGRldGFpbHMge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgLy8gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gYWxsIGJyb3dzZXJzLlxuXG4gIHN1bW1hcnkge1xuICAgIGRpc3BsYXk6IGxpc3QtaXRlbTtcbiAgfVxuXG4gIC8vIE1pc2NcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMCsuXG5cbiAgdGVtcGxhdGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMC5cblxuICBbaGlkZGVuXSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC8vIERpc2FibGUgb3V0bGluZSB3aGVuIGludGVudCBpcyBjbGVhcmx5IG1vdXNlIGFuZCB0b3VjaFxuICBbZGF0YS13aGF0aW50ZW50PVwibW91c2VcIl0sXG4gIFtkYXRhLXdoYXRpbnRlbnQ9XCJ0b3VjaFwiXSxcbiAgW2RhdGEtd2hhdGlucHV0PVwibW91c2VcIl0sXG4gIFtkYXRhLXdoYXRpbnB1dD1cInRvdWNoXCJdIHtcbiAgICAqLCAqOmZvY3VzIHtcbiAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLy8gRGlzYWJsZSBpT1MgY2FsbG91dHMgd2hlbiBkcmFnZ2FibGUgaXMgZmFsc2VcbiAgW2RyYWdnYWJsZT1mYWxzZV0ge1xuICAgIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcbiAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vIHNhc3MtbGludDpkaXNhYmxlIG5vLWNvbG9yLWxpdGVyYWxzLCBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ2xvYmFsXG4vLy8vXG5cbkBpbXBvcnQgXCJ1dGlsL3V0aWxcIjtcblxuJHh5LWdyaWQ6IHRydWU7XG4vLy8gRm9udCBzaXplIGF0dHJpYnV0ZSBhcHBsaWVkIHRvIGA8aHRtbD5gIGFuZCBgPGJvZHk+YC4gV2UgdXNlIDEwMCUgYnkgZGVmYXVsdCBzbyB0aGUgdmFsdWUgaXMgaW5oZXJpdGVkIGZyb20gdGhlIHVzZXIncyBicm93c2VyIHNldHRpbmdzLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1mb250LXNpemU6IDEwMCUgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgd2lkdGggb2YgeW91ciBzaXRlLiBVc2VkIGJ5IHRoZSBncmlkIHRvIGRldGVybWluZSByb3cgd2lkdGguXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLXdpZHRoOiByZW0tY2FsYygxOTAwKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbGluZSBoZWlnaHQgZm9yIGFsbCB0eXBlLiBgJGdsb2JhbC1saW5laGVpZ2h0YCBpcyAyNHB4IHdoaWxlIGAkZ2xvYmFsLWZvbnQtc2l6ZWAgaXMgMTZweFxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1saW5laGVpZ2h0OiAxLjUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvcnMgdXNlZCBmb3IgYnV0dG9ucywgY2FsbG91dHMsIGxpbmtzLCBldGMuIFRoZXJlIG11c3QgYWx3YXlzIGJlIGEgY29sb3IgY2FsbGVkIGBwcmltYXJ5YC5cbi8vLyBAdHlwZSBNYXBcbiRmb3VuZGF0aW9uLXBhbGV0dGU6IChcbiAgXCJwcmltYXJ5XCI6ICMxNzc5YmEsXG4gIFwic2Vjb25kYXJ5XCI6ICM3Njc2NzYsXG4gIFwic3VjY2Vzc1wiOiAjM2FkYjc2LFxuICBcIndhcm5pbmdcIjogI2ZmYWUwMCxcbiAgXCJhbGVydFwiOiAjY2M0YjM3LFxuKSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIGxpZ2h0IGdyYXkgVUkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRsaWdodC1ncmF5OiAjZTZlNmU2ICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3IgbWVkaXVtIGdyYXkgVUkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRtZWRpdW0tZ3JheTogI2NhY2FjYSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIGRhcmsgZ3JheSBVSSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJGRhcmstZ3JheTogIzhhOGE4YSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIGJsYWNrIHVpIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kYmxhY2s6ICMwYTBhMGEgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciB3aGl0ZSB1aSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJHdoaXRlOiAjZmVmZWZlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgYm9keS5cbi8vLyBAdHlwZSBDb2xvclxuJGJvZHktYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiB0aGUgYm9keS5cbi8vLyBAdHlwZSBDb2xvclxuJGJvZHktZm9udC1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzdGFjayBvZiB0aGUgYm9keS5cbi8vLyBAdHlwZSBMaXN0XG4kYm9keS1mb250LWZhbWlseTogXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWYgIWRlZmF1bHQ7XG5cbi8vLyBTZXQgdG8gYHRydWVgIHRvIGVuYWJsZSBzYWZlIHBhZGRpbmcgb24gdGhlIGJvZHkgZm9yIG5vbi1yZWN0YW5ndWxhciBkZXZpY2VzIChpLmUuIHBob25lcyB3aXRoIG5vdGNoZXMpXG4vLy8gQHR5cGUgQm9vbGVhblxuJGJvZHktc2FmZS1wYWRkaW5nOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8vIFNldCB0byBgdHJ1ZWAgdG8gZW5hYmxlIGFudGlhbGlhc2VkIHR5cGUsIHVzaW5nIHRoZSBgLXdlYmtpdC1mb250LXNtb290aGluZ2AgYW5kIGAtbW96LW9zeC1mb250LXNtb290aGluZ2AgQ1NTIHByb3BlcnRpZXMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGJvZHktYW50aWFsaWFzZWQ6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgbWFyZ2luIG9uIGNvbXBvbmVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLW1hcmdpbjogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBwYWRkaW5nIG9uIGNvbXBvbmVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLXBhZGRpbmc6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgcG9zaXRpb25pbmcgb24gY29tcG9uZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtcG9zaXRpb246IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgZm9udCB3ZWlnaHQgdXNlZCBmb3Igbm9ybWFsIHR5cGUuXG4vLy8gQHR5cGUgS2V5d29yZCB8IE51bWJlclxuJGdsb2JhbC13ZWlnaHQtbm9ybWFsOiBub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgZm9udCB3ZWlnaHQgdXNlZCBmb3IgYm9sZCB0eXBlLlxuLy8vIEB0eXBlIEtleXdvcmQgfCBOdW1iZXJcbiRnbG9iYWwtd2VpZ2h0LWJvbGQ6IGJvbGQgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgYWxsIGVsZW1lbnRzIHRoYXQgaGF2ZSBhIGJvcmRlciByYWRpdXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLXJhZGl1czogMCAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBhbGwgbWVudSBzdHlsZXMuIENhbiBiZSBvdmVyd3JpdHRlbiBhdCBpbmRpdmlkdWFsIG1lbnUgY29tcG9uZW50IGxldmVsLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1tZW51LXBhZGRpbmc6IDAuN3JlbSAxcmVtICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIGFsbCBtZW51IHN0eWxlcy4gTmVzdGVkIG1hcmdpbiBmb3Igc3VibWVudS5cbiRnbG9iYWwtbWVudS1uZXN0ZWQtbWFyZ2luOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gU2V0cyB0aGUgdGV4dCBkaXJlY3Rpb24gb2YgdGhlIENTUy4gQ2FuIGJlIGVpdGhlciBgbHRyYCBvciBgcnRsYC5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kZ2xvYmFsLXRleHQtZGlyZWN0aW9uOiBsdHIgIWRlZmF1bHQ7XG5cbi8vLyBFbmFibGVzIGZsZXhib3ggZm9yIGNvbXBvbmVudHMgdGhhdCBzdXBwb3J0IGl0LlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRnbG9iYWwtZmxleGJveDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEVuYWJsZWQgcmVzcG9uc2l2ZSBicmVha3BvaW50cyBmb3IgcHJvdG90eXBlcyBpZiBhcHBsaWNhYmxlXG4vLy8gQHR5cGUgQm9vbGVhblxuJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM6IGZhbHNlICFkZWZhdWx0O1xuXG4vLy8gQnV0dG9uIGN1cnNvcidzIHZhbHVlLCBgYXV0b2AgYnkgZGVmYXVsdFxuLy8vIEB0eXBlIEtleXdvcmRcbiRnbG9iYWwtYnV0dG9uLWN1cnNvcjogYXV0byAhZGVmYXVsdDtcblxuQGlmIG5vdCBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCBwcmltYXJ5KSB7XG4gIEBlcnJvciAnSW4gJGZvdW5kYXRpb24tcGFsZXR0ZSwgeW91IG11c3QgaGF2ZSBhIGNvbG9yIG5hbWVkIFwicHJpbWFyeVwiLic7XG59XG5cbi8vIEludGVybmFsIHZhcmlhYmxlcyB1c2VkIGZvciB0ZXh0IGRpcmVjdGlvblxuJGdsb2JhbC1sZWZ0OiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IHJ0bCwgcmlnaHQsIGxlZnQpO1xuJGdsb2JhbC1yaWdodDogaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBydGwsIGxlZnQsIHJpZ2h0KTtcblxuLy8gSW50ZXJuYWwgdmFyaWFibGUgdGhhdCBjb250YWlucyB0aGUgZmxleCBqdXN0aWZ5aW5nIG9wdGlvbnNcbiQtemYtZmxleC1qdXN0aWZ5OiAtemYtZmxleC1qdXN0aWZ5KCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24pO1xuXG4vLy8gR2xvYmFsIHRvbGVyYW5jZSBmb3IgY29sb3IgcGljayBjb250cmFzdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtY29sb3ItcGljay1jb250cmFzdC10b2xlcmFuY2U6IDAgIWRlZmF1bHQ7XG5cbi8vIEludGVybmFsIHZhcmlhYmxlcyB1c2VkIGZvciBjb2xvcnNcbkBpbmNsdWRlIGFkZC1mb3VuZGF0aW9uLWNvbG9ycztcblxuQG1peGluIGZvdW5kYXRpb24tZ2xvYmFsLXN0eWxlcyB7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tbm9ybWFsaXplO1xuXG4gIC8vIFRoZXNlIHN0eWxlcyBhcmUgYXBwbGllZCB0byBhIDxtZXRhPiB0YWcsIHdoaWNoIGlzIHJlYWQgYnkgdGhlIEZvdW5kYXRpb24gSmF2YVNjcmlwdFxuICAuZm91bmRhdGlvbi1tcSB7XG4gICAgZm9udC1mYW1pbHk6IFwiI3stemYtYnAtc2VyaWFsaXplKCRicmVha3BvaW50cyl9XCI7XG4gIH1cblxuICBodG1sIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGZvbnQtc2l6ZTogJGdsb2JhbC1mb250LXNpemU7XG4gIH1cblxuICAvLyBTZXQgYm94LXNpemluZyBnbG9iYWxseSB0byBoYW5kbGUgcGFkZGluZyBhbmQgYm9yZGVyIHdpZHRoc1xuICAqLFxuICAqOjpiZWZvcmUsXG4gICo6OmFmdGVyIHtcbiAgICBib3gtc2l6aW5nOiBpbmhlcml0O1xuICB9XG5cbiAgLy8gRGVmYXVsdCBib2R5IHN0eWxlc1xuICBib2R5IHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgIEBpZiAoJGJvZHktc2FmZS1wYWRkaW5nKSB7XG4gICAgICAvLyB1c2luZyBlbnZpcm9ubWVudCB2YXJpYWJsZXMgdG8gYWNjb3VudCBmb3Igbm9uLXJlY3Rhbmd1bGFyIGRpc3BsYXlzIGUuZy4gcGhvbmVzIHdpdGggbm90Y2hlc1xuICAgICAgcGFkZGluZy10b3A6IGVudihzYWZlLWFyZWEtaW5zZXQtdG9wKTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IGVudihzYWZlLWFyZWEtaW5zZXQtcmlnaHQpO1xuICAgICAgcGFkZGluZy1ib3R0b206IGVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tKTtcbiAgICAgIHBhZGRpbmctbGVmdDogZW52KHNhZmUtYXJlYS1pbnNldC1sZWZ0KTtcbiAgICB9XG5cbiAgICBiYWNrZ3JvdW5kOiAkYm9keS1iYWNrZ3JvdW5kO1xuXG4gICAgZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG4gICAgbGluZS1oZWlnaHQ6ICRnbG9iYWwtbGluZWhlaWdodDtcbiAgICBjb2xvcjogJGJvZHktZm9udC1jb2xvcjtcblxuICAgIEBpZiAoJGJvZHktYW50aWFsaWFzZWQpIHtcbiAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkOyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXZlbmRvci1wcmVmaXhlc1xuICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby12ZW5kb3ItcHJlZml4ZXNcbiAgICB9XG4gIH1cblxuICBpbWcge1xuICAgIC8vIEdldCByaWQgb2YgZ2FwIHVuZGVyIGltYWdlcyBieSBtYWtpbmcgdGhlbSBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IGJ5IGRlZmF1bHRcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuICAgIC8vIEdyaWQgZGVmYXVsdHMgdG8gZ2V0IGltYWdlcyBhbmQgZW1iZWRzIHRvIHdvcmsgcHJvcGVybHlcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIC1tcy1pbnRlcnBvbGF0aW9uLW1vZGU6IGJpY3ViaWM7XG4gIH1cblxuICAvLyBNYWtlIHN1cmUgdGV4dGFyZWEgdGFrZXMgb24gaGVpZ2h0IGF1dG9tYXRpY2FsbHlcbiAgdGV4dGFyZWEge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtaW4taGVpZ2h0OiA1MHB4O1xuICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICB9XG5cbiAgLy8gTWFrZSBzZWxlY3QgZWxlbWVudHMgYXJlIDEwMCUgd2lkdGggYnkgZGVmYXVsdFxuICBzZWxlY3Qge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gIH1cblxuICAvLyBTdHlsZXMgR29vZ2xlIE1hcHMgYW5kIE1hcFF1ZXN0IGVtYmVkcyBwcm9wZXJseVxuICAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLWlkc1xuICAubWFwX2NhbnZhcyxcbiAgLm1xYS1kaXNwbGF5IHtcbiAgICBpbWcsXG4gICAgZW1iZWQsXG4gICAgb2JqZWN0IHtcbiAgICAgIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC8vIFJlc2V0IDxidXR0b24+IHN0eWxlcyBjcmVhdGVkIGJ5IG1vc3QgYnJvd3NlcnNcbiAgYnV0dG9uIHtcbiAgICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gICAgcGFkZGluZzogMDtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBjdXJzb3I6ICRnbG9iYWwtYnV0dG9uLWN1cnNvcjtcbiAgfVxuXG4gIC8vIFByZXZlbnQgdGV4dCBvdmVyZmxvdyBvbiBwcmVcbiAgcHJlIHtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gIH1cblxuICAvLyBNYWtlIHJlc2V0IGluaGVyaXQgZm9udC1mYW1pbHkgaW5zdGVhZCBvZiBzZXR0aW5ncyBzYW5zLXNlcmlmXG4gIGJ1dHRvbixcbiAgaW5wdXQsXG4gIG9wdGdyb3VwLFxuICBzZWxlY3QsXG4gIHRleHRhcmVhIHtcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIEludGVybmFsIGNsYXNzZXMgdG8gc2hvdy9oaWRlIGVsZW1lbnRzIGluIEphdmFTY3JpcHRcbiAgLmlzLXZpc2libGUge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuaXMtaGlkZGVuIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuQGltcG9ydCAnbWF0aCc7XG5cbiR1bml0LXdhcm5pbmdzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8vXG4vLy8gQGdyb3VwIGZ1bmN0aW9uc1xuLy8vL1xuXG4kZ2xvYmFsLWZvbnQtc2l6ZTogMTAwJSAhZGVmYXVsdDtcblxuLy8vIFJlbW92ZXMgdGhlIHVuaXQgKGUuZy4gcHgsIGVtLCByZW0pIGZyb20gYSB2YWx1ZSwgcmV0dXJuaW5nIHRoZSBudW1iZXIgb25seS5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbnVtIC0gTnVtYmVyIHRvIHN0cmlwIHVuaXQgZnJvbS5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IFRoZSBzYW1lIG51bWJlciwgc2FucyB1bml0LlxuQGZ1bmN0aW9uIHN0cmlwLXVuaXQoJG51bSkge1xuICBAcmV0dXJuIGRpdmlkZSgkbnVtLCAkbnVtICogMCArIDEpO1xufVxuXG4vLy8gQ29udmVydHMgb25lIG9yIG1vcmUgcGl4ZWwgdmFsdWVzIGludG8gbWF0Y2hpbmcgcmVtIHZhbHVlcy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICR2YWx1ZXMgLSBPbmUgb3IgbW9yZSB2YWx1ZXMgdG8gY29udmVydC4gQmUgc3VyZSB0byBzZXBhcmF0ZSB0aGVtIHdpdGggc3BhY2VzIGFuZCBub3QgY29tbWFzLiBJZiB5b3UgbmVlZCB0byBjb252ZXJ0IGEgY29tbWEtc2VwYXJhdGVkIGxpc3QsIHdyYXAgdGhlIGxpc3QgaW4gcGFyZW50aGVzZXMuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYXNlIFtudWxsXSAtIFRoZSBiYXNlIHZhbHVlIHRvIHVzZSB3aGVuIGNhbGN1bGF0aW5nIHRoZSBgcmVtYC4gSWYgeW91J3JlIHVzaW5nIEZvdW5kYXRpb24gb3V0IG9mIHRoZSBib3gsIHRoaXMgaXMgMTZweC4gSWYgdGhpcyBwYXJhbWV0ZXIgaXMgYG51bGxgLCB0aGUgZnVuY3Rpb24gd2lsbCByZWZlcmVuY2UgdGhlIGAkZ2xvYmFsLWZvbnQtc2l6ZWAgdmFyaWFibGUgYXMgdGhlIGJhc2UuXG4vLy9cbi8vLyBAcmV0dXJucyB7TGlzdH0gQSBsaXN0IG9mIGNvbnZlcnRlZCB2YWx1ZXMuXG5AZnVuY3Rpb24gcmVtLWNhbGMoJHZhbHVlcywgJGJhc2U6IG51bGwpIHtcbiAgJHJlbS12YWx1ZXM6ICgpO1xuICAkY291bnQ6IGxlbmd0aCgkdmFsdWVzKTtcblxuICAvLyBJZiBubyBiYXNlIGlzIGRlZmluZWQsIGRlZmVyIHRvIHRoZSBnbG9iYWwgZm9udCBzaXplXG4gIEBpZiAkYmFzZSA9PSBudWxsIHtcbiAgICAkYmFzZTogJGdsb2JhbC1mb250LXNpemU7XG4gIH1cblxuICAvLyBJZiB0aGUgYmFzZSBmb250IHNpemUgaXMgYSAlLCB0aGVuIG11bHRpcGx5IGl0IGJ5IDE2cHhcbiAgLy8gVGhpcyBpcyBiZWNhdXNlIDEwMCUgZm9udCBzaXplID0gMTZweCBpbiBtb3N0IGFsbCBicm93c2Vyc1xuICBAaWYgdW5pdCgkYmFzZSkgPT0gJyUnIHtcbiAgICAkYmFzZTogZGl2aWRlKCRiYXNlLCAxMDAlKSAqIDE2cHg7XG4gIH1cblxuICAvLyBVc2luZyByZW0gYXMgYmFzZSBhbGxvd3MgY29ycmVjdCBzY2FsaW5nXG4gIEBpZiB1bml0KCRiYXNlKSA9PSAncmVtJyB7XG4gICAgJGJhc2U6IHN0cmlwLXVuaXQoJGJhc2UpICogMTZweDtcbiAgfVxuXG4gIEBpZiAkY291bnQgPT0gMSB7XG4gICAgQHJldHVybiAtemYtdG8tcmVtKCR2YWx1ZXMsICRiYXNlKTtcbiAgfVxuXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGNvdW50IHtcbiAgICAkcmVtLXZhbHVlczogYXBwZW5kKCRyZW0tdmFsdWVzLCAtemYtdG8tcmVtKG50aCgkdmFsdWVzLCAkaSksICRiYXNlKSk7XG4gIH1cblxuICBAcmV0dXJuICRyZW0tdmFsdWVzO1xufVxuXG4vLyBDb252ZXJ0cyBhIHVuaXRsZXNzLCBwaXhlbCwgb3IgcmVtIHZhbHVlIHRvIGVtLCBmb3IgdXNlIGluIGJyZWFrcG9pbnRzLlxuQGZ1bmN0aW9uIC16Zi1icC10by1lbSgkdmFsdWUpIHtcbiAgLy8gUGl4ZWwgYW5kIHVuaXRsZXNzIHZhbHVlcyBhcmUgY29udmVydGVkIHRvIHJlbXNcbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAncHgnIG9yIHVuaXRsZXNzKCR2YWx1ZSkge1xuICAgICR2YWx1ZTogcmVtLWNhbGMoJHZhbHVlLCAkYmFzZTogMTZweCk7XG4gIH1cblxuICAvLyBUaGVuIHRoZSB2YWx1ZSBpcyBjb252ZXJ0ZWQgdG8gZW1zXG4gIEByZXR1cm4gc3RyaXAtdW5pdCgkdmFsdWUpICogMWVtO1xufVxuXG4vLy8gQ29udmVydHMgYSBwaXhlbCB2YWx1ZSB0byBtYXRjaGluZyByZW0gdmFsdWUuICpBbnkqIHZhbHVlIHBhc3NlZCwgcmVnYXJkbGVzcyBvZiB1bml0LCBpcyBhc3N1bWVkIHRvIGJlIGEgcGl4ZWwgdmFsdWUuIEJ5IGRlZmF1bHQsIHRoZSBiYXNlIHBpeGVsIHZhbHVlIHVzZWQgdG8gY2FsY3VsYXRlIHRoZSByZW0gdmFsdWUgaXMgdGFrZW4gZnJvbSB0aGUgYCRnbG9iYWwtZm9udC1zaXplYCB2YXJpYWJsZS5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkdmFsdWUgLSBQaXhlbCB2YWx1ZSB0byBjb252ZXJ0LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFzZSBbbnVsbF0gLSBCYXNlIGZvciBwaXhlbCBjb252ZXJzaW9uLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gQSBudW1iZXIgaW4gcmVtcywgY2FsY3VsYXRlZCBiYXNlZCBvbiB0aGUgZ2l2ZW4gdmFsdWUgYW5kIHRoZSBiYXNlIHBpeGVsIHZhbHVlLiByZW0gdmFsdWVzIGFyZSBwYXNzZWQgdGhyb3VnaCBhcyBpcy5cbkBmdW5jdGlvbiAtemYtdG8tcmVtKCR2YWx1ZSwgJGJhc2U6IG51bGwpIHtcbiAgLy8gQ2hlY2sgaWYgdGhlIHZhbHVlIGlzIGEgbnVtYmVyXG4gIEBpZiB0eXBlLW9mKCR2YWx1ZSkgIT0gJ251bWJlcicge1xuICAgIEBpZiAkdW5pdC13YXJuaW5ncyB7XG4gICAgICBAd2FybiBpbnNwZWN0KCR2YWx1ZSkgKyAnIHdhcyBwYXNzZWQgdG8gcmVtLWNhbGMoKSwgd2hpY2ggaXMgbm90IGEgbnVtYmVyLic7XG4gICAgfVxuICAgIEByZXR1cm4gJHZhbHVlO1xuICB9XG5cbiAgLy8gVHJhbnNmb3JtIGVtIGludG8gcmVtIGlmIHNvbWVvbmUgaGFuZHMgb3ZlciAnZW0nc1xuICBAaWYgdW5pdCgkdmFsdWUpID09ICdlbScge1xuICAgICR2YWx1ZTogc3RyaXAtdW5pdCgkdmFsdWUpICogMXJlbTtcbiAgfVxuXG4gIC8vIENhbGN1bGF0ZSByZW0gaWYgdW5pdHMgZm9yICR2YWx1ZSBpcyBub3QgcmVtIG9yIGVtXG4gIEBpZiB1bml0KCR2YWx1ZSkgIT0gJ3JlbScge1xuICAgICR2YWx1ZTogZGl2aWRlKHN0cmlwLXVuaXQoJHZhbHVlKSwgc3RyaXAtdW5pdCgkYmFzZSkpICogMXJlbTtcbiAgfVxuXG4gIC8vIFR1cm4gMHJlbSBpbnRvIDBcbiAgQGlmICR2YWx1ZSA9PSAwcmVtIHtcbiAgICAkdmFsdWU6IDA7XG4gIH1cblxuICBAcmV0dXJuICR2YWx1ZTtcbn1cblxuLy8vIENvbnZlcnRzIGEgcGl4ZWwsIHBlcmNlbnRhZ2UsIHJlbSBvciBlbSB2YWx1ZSB0byBhIHVuaXRsZXNzIHZhbHVlIGJhc2VkIG9uIGEgZ2l2ZW4gZm9udCBzaXplLiBJZGVhbCBmb3Igd29ya2luZyBvdXQgdW5pdGxlc3MgbGluZSBoZWlnaHRzLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR2YWx1ZSAtIFZhbHVlIHRvIGNvbnZlcnQgdG8gYSB1bml0bGVzcyBsaW5lIGhlaWdodFxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFzZSAtIFRoZSBmb250IHNpemUgdG8gdXNlIHRvIHdvcmsgb3V0IHRoZSBsaW5lIGhlaWdodCAtIGRlZmF1bHRzIHRvICRnbG9iYWwtZm9udC1zaXplXG4vLy9cbi8vLyBAcmV0dXJuIHtOdW1iZXJ9IC0gVW5pdGxlc3MgbnVtYmVyXG5AZnVuY3Rpb24gdW5pdGxlc3MtY2FsYygkdmFsdWUsICRiYXNlOiBudWxsKSB7XG5cbiAgLy8gSWYgbm8gYmFzZSBpcyBkZWZpbmVkLCBkZWZlciB0byB0aGUgZ2xvYmFsIGZvbnQgc2l6ZVxuICBAaWYgJGJhc2UgPT0gbnVsbCB7XG4gICAgJGJhc2U6ICRnbG9iYWwtZm9udC1zaXplO1xuICB9XG5cbiAgLy8gRmlyc3QsIGxldHMgY29udmVydCBvdXIgJGJhc2UgdG8gcGl4ZWxzXG5cbiAgLy8gSWYgdGhlIGJhc2UgZm9udCBzaXplIGlzIGEgJSwgdGhlbiBtdWx0aXBseSBpdCBieSAxNnB4XG4gIEBpZiB1bml0KCRiYXNlKSA9PSAnJScge1xuICAgICRiYXNlOiBkaXZpZGUoJGJhc2UsIDEwMCUpICogMTZweDtcbiAgfVxuXG4gIEBpZiB1bml0KCRiYXNlKSA9PSAncmVtJyB7XG4gICAgJGJhc2U6IHN0cmlwLXVuaXQoJGJhc2UpICogMTZweDtcbiAgfVxuXG4gIEBpZiB1bml0KCRiYXNlKSA9PSAnZW0nIHtcbiAgICAkYmFzZTogc3RyaXAtdW5pdCgkYmFzZSkgKiAxNnB4O1xuICB9XG5cbiAgLy8gTm93IGxldCdzIGNvbnZlcnQgb3VyIHZhbHVlIHRvIHBpeGVscyB0b29cbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAnJScge1xuICAgICR2YWx1ZTogZGl2aWRlKCR2YWx1ZSwgMTAwJSkgKiAkYmFzZTtcbiAgfVxuXG4gIEBpZiB1bml0KCR2YWx1ZSkgPT0gJ3JlbScge1xuICAgICR2YWx1ZTogc3RyaXAtdW5pdCgkdmFsdWUpICogJGJhc2U7XG4gIH1cblxuICBAaWYgdW5pdCgkdmFsdWUpID09ICdlbScge1xuICAgICR2YWx1ZTogc3RyaXAtdW5pdCgkdmFsdWUpICogJGJhc2U7XG4gIH1cblxuICAvLyAncHgnXG4gIEBpZiB1bml0KCR2YWx1ZSkgPT0gJ3B4JyB7XG4gICAgQHJldHVybiBkaXZpZGUoc3RyaXAtdW5pdCgkdmFsdWUpLCBzdHJpcC11bml0KCRiYXNlKSk7XG4gIH1cblxuICAvLyBhc3N1bWUgdGhhdCBsaW5lLWhlaWdodHMgZ3JlYXRlciB0aGFuIDEwIGFyZSBtZWFudCB0byBiZSBhYnNvbHV0ZSBpbiAncHgnXG4gIEBpZiB1bml0bGVzcygkdmFsdWUpIGFuZCAoJHZhbHVlID4gMTApIHtcbiAgICBAcmV0dXJuIGRpdmlkZSgkdmFsdWUsIHN0cmlwLXVuaXQoJGJhc2UpKTtcbiAgfVxuXG4gIEByZXR1cm4gJHZhbHVlO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZ1bmN0aW9uc1xuLy8vL1xuXG4vLyBQYXRjaCB0byBmaXggaXNzdWUgIzEyMDgwXG4kLXpmLWJwLXZhbHVlOiBudWxsO1xuXG4vLy8gQ3JlYXRlcyBhbiBpbm5lciBib3gtc2hhZG93IGZvciBvbmx5IG9uZSBzaWRlXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaWRlIC0gU2lkZSB0aGUgc2hhZG93IGlzIHN1cHBvc2VkIHRvIGFwcGVhci4gQ2FuIGJlIGB0b3BgLCBgbGVmdGAsIGByaWdodGAgb3IgYGJvdHRvbWAuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRzaXplIC0gV2lkdGggZm9yIHRoZSB0YXJnZXQgc2lkZS5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgLSBDb2xvciBvZiB0aGUgc2hhZG93LlxuQG1peGluIGlubmVyLXNpZGUtc2hhZG93KFxuICAkc2lkZTogYm90dG9tLFxuICAkc2l6ZTogMjBweCxcbiAgJGNvbG9yOiByZ2JhKCRibGFjaywgMC4yNSlcbikge1xuXG4gICRoZWxwZXI6IHJvdW5kKCRzaXplICogMC42NSk7XG5cbiAgQGlmICgkc2lkZSA9PSB0b3ApIHtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwICRoZWxwZXIgJHNpemUgKC0xKSokaGVscGVyICRjb2xvcjtcbiAgfSBAZWxzZSBpZiAoJHNpZGUgPT0gbGVmdCkge1xuICAgIGJveC1zaGFkb3c6IGluc2V0ICRoZWxwZXIgMCAkc2l6ZSAoLTEpKiRoZWxwZXIgJGNvbG9yO1xuICB9IEBlbHNlIGlmICgkc2lkZSA9PSByaWdodCkge1xuICAgIGJveC1zaGFkb3c6IGluc2V0ICgtMSkqJGhlbHBlciAwICRzaXplICgtMSkqJGhlbHBlciAkY29sb3I7XG4gIH0gQGVsc2UgaWYgKCRzaWRlID09IGJvdHRvbSkge1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgKC0xKSokaGVscGVyICRzaXplICgtMSkqJGhlbHBlciAkY29sb3I7XG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBDU1MgdHJpYW5nbGUsIHdoaWNoIGNhbiBiZSB1c2VkIGZvciBkcm9wZG93biBhcnJvd3MsIGRyb3Bkb3duIHBpcHMsIGFuZCBtb3JlLiBVc2UgdGhpcyBtaXhpbiBpbnNpZGUgYSBgJjo6YmVmb3JlYCBvciBgJjo6YWZ0ZXJgIHNlbGVjdG9yLCB0byBhdHRhY2ggdGhlIHRyaWFuZ2xlIHRvIGFuIGV4aXN0aW5nIGVsZW1lbnQuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJHRyaWFuZ2xlLXNpemUgLSBXaWR0aCBvZiB0aGUgdHJpYW5nbGUuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJHRyaWFuZ2xlLWNvbG9yIC0gQ29sb3Igb2YgdGhlIHRyaWFuZ2xlLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHRyaWFuZ2xlLWRpcmVjdGlvbiAtIERpcmVjdGlvbiB0aGUgdHJpYW5nbGUgcG9pbnRzLiBDYW4gYmUgYHVwYCwgYHJpZ2h0YCwgYGRvd25gLCBvciBgbGVmdGAuXG5AbWl4aW4gY3NzLXRyaWFuZ2xlKFxuICAkdHJpYW5nbGUtc2l6ZSxcbiAgJHRyaWFuZ2xlLWNvbG9yLFxuICAkdHJpYW5nbGUtZGlyZWN0aW9uXG4pIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG5cbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXdpZHRoOiAkdHJpYW5nbGUtc2l6ZTtcblxuICBjb250ZW50OiAnJztcblxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gZG93bikge1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgYm9yZGVyLWNvbG9yOiAkdHJpYW5nbGUtY29sb3IgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIH1cbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IHVwKSB7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICR0cmlhbmdsZS1jb2xvcjtcbiAgfVxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gcmlnaHQpIHtcbiAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAkdHJpYW5nbGUtY29sb3I7XG4gIH1cbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IGxlZnQpIHtcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICR0cmlhbmdsZS1jb2xvciB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIG1lbnUgaWNvbiB3aXRoIGEgc2V0IHdpZHRoLCBoZWlnaHQsIG51bWJlciBvZiBiYXJzLCBhbmQgY29sb3JzLiBUaGUgbWl4aW4gdXNlcyB0aGUgaGVpZ2h0IG9mIHRoZSBpY29uIGFuZCB0aGUgd2VpZ2h0IG9mIHRoZSBiYXJzIHRvIGRldGVybWluZSBzcGFjaW5nLiA8ZGl2IGNsYXNzPVwiZG9jcy1leGFtcGxlLWJ1cmdlclwiPjwvZGl2PlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYmxhY2tdIC0gQ29sb3IgdG8gdXNlIGZvciB0aGUgaWNvbi5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3ItaG92ZXIgWyRkYXJrLWdyYXldIC0gQ29sb3IgdG8gdXNlIHdoZW4gdGhlIGljb24gaXMgaG92ZXJlZCBvdmVyLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2lkdGggWzIwcHhdIC0gV2lkdGggb2YgdGhlIGljb24uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRoZWlnaHQgWzE2cHhdIC0gSGVpZ2h0IG9mIHRoZSBpY29uLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2VpZ2h0IFsycHhdIC0gSGVpZ2h0IG9mIGluZGl2aWR1YWwgYmFycyBpbiB0aGUgaWNvbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGJhcnMgWzNdIC0gTnVtYmVyIG9mIGJhcnMgaW4gdGhlIGljb24uXG5AbWl4aW4gaGFtYnVyZ2VyKFxuICAkY29sb3I6ICRibGFjayxcbiAgJGNvbG9yLWhvdmVyOiAkZGFyay1ncmF5LFxuICAkd2lkdGg6IDIwcHgsXG4gICRoZWlnaHQ6IDE2cHgsXG4gICR3ZWlnaHQ6IDJweCxcbiAgJGJhcnM6IDNcbikge1xuICAvLyBib3gtc2hhZG93IENTUyBvdXRwdXRcbiAgJHNoYWRvdzogKCk7XG4gICRob3Zlci1zaGFkb3c6ICgpO1xuXG4gIC8vIFNwYWNpbmcgYmV0d2VlbiBiYXJzIGlzIGNhbGN1bGF0ZWQgYmFzZWQgb24gdGhlIHRvdGFsIGhlaWdodCBvZiB0aGUgaWNvbiBhbmQgdGhlIHdlaWdodCBvZiBlYWNoIGJhclxuICAkc3BhY2luZzogZGl2aWRlKCRoZWlnaHQgLSAoJHdlaWdodCAqICRiYXJzKSwgJGJhcnMgLSAxKTtcblxuICBAaWYgdW5pdCgkc3BhY2luZykgPT0gJ3B4JyB7XG4gICAgJHNwYWNpbmc6IGZsb29yKCRzcGFjaW5nKTtcbiAgfVxuXG4gIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggJGJhcnMge1xuICAgICRvZmZzZXQ6ICgkd2VpZ2h0ICsgJHNwYWNpbmcpICogKCRpIC0gMSk7XG4gICAgJHNoYWRvdzogYXBwZW5kKCRzaGFkb3csIDAgJG9mZnNldCAwICRjb2xvciwgY29tbWEpO1xuICB9XG5cbiAgLy8gSWNvbiBjb250YWluZXJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHdpZHRoOiAkd2lkdGg7XG4gIGhlaWdodDogJGhlaWdodDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gIC8vIEljb24gYmFyc1xuICAmOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuXG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAkd2VpZ2h0O1xuXG4gICAgYmFja2dyb3VuZDogJGNvbG9yO1xuICAgIGJveC1zaGFkb3c6ICRzaGFkb3c7XG5cbiAgICBjb250ZW50OiAnJztcbiAgfVxuXG4gIC8vIEhvdmVyIHN0YXRlXG4gIEBpZiAkY29sb3ItaG92ZXIge1xuICAgIC8vIEdlbmVyYXRlIENTU1xuICAgIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggJGJhcnMge1xuICAgICAgJG9mZnNldDogKCR3ZWlnaHQgKyAkc3BhY2luZykgKiAoJGkgLSAxKTtcbiAgICAgICRob3Zlci1zaGFkb3c6IGFwcGVuZCgkaG92ZXItc2hhZG93LCAwICRvZmZzZXQgMCAkY29sb3ItaG92ZXIsIGNvbW1hKTtcbiAgICB9XG5cbiAgICAmOmhvdmVyOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAkY29sb3ItaG92ZXI7XG4gICAgICBib3gtc2hhZG93OiAkaG92ZXItc2hhZG93O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBhIGRvd253YXJkLWZhY2luZyB0cmlhbmdsZSBhcyBhIGJhY2tncm91bmQgaW1hZ2UgdG8gYW4gZWxlbWVudC4gVGhlIGltYWdlIGlzIGZvcm1hdHRlZCBhcyBhbiBTVkcsIG1ha2luZyBpdCBlYXN5IHRvIGNoYW5nZSB0aGUgY29sb3IuIEJlY2F1c2UgSW50ZXJuZXQgRXhwbG9yZXIgZG9lc24ndCBzdXBwb3J0IGVuY29kZWQgU1ZHcyBhcyBiYWNrZ3JvdW5kIGltYWdlcywgYSBQTkcgZmFsbGJhY2sgaXMgYWxzbyBpbmNsdWRlZC5cbi8vLyBUaGVyZSBhcmUgdHdvIFBORyBmYWxsYmFja3M6IGEgYmxhY2sgdHJpYW5nbGUgYW5kIGEgd2hpdGUgdHJpYW5nbGUuIFRoZSBvbmUgdXNlZCBkZXBlbmRzIG9uIHRoZSBsaWdodG5lc3Mgb2YgdGhlIGlucHV0IGNvbG9yLlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYmxhY2tdIC0gQ29sb3IgdG8gdXNlIGZvciB0aGUgdHJpYW5nbGUuXG5AbWl4aW4gYmFja2dyb3VuZC10cmlhbmdsZSgkY29sb3I6ICRibGFjaykge1xuICAkcmdiOiAncmdiJTI4I3tyb3VuZChyZWQoJGNvbG9yKSl9LCAje3JvdW5kKGdyZWVuKCRjb2xvcikpfSwgI3tyb3VuZChibHVlKCRjb2xvcikpfSUyOSc7XG5cbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWw7dXRmOCw8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2ZXJzaW9uPVwiMS4xXCIgd2lkdGg9XCIzMlwiIGhlaWdodD1cIjI0XCIgdmlld0JveD1cIjAgMCAzMiAyNFwiPjxwb2x5Z29uIHBvaW50cz1cIjAsMCAzMiwwIDE2LDI0XCIgc3R5bGU9XCJmaWxsOiAjeyRyZ2J9XCI+PC9wb2x5Z29uPjwvc3ZnPicpO1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDBcXDApIHtcbiAgICBAaWYgbGlnaHRuZXNzKCRjb2xvcikgPCA2MCUge1xuICAgICAgLy8gV2hpdGUgdHJpYW5nbGVcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFDQUFBQUFZQ0FZQUFBQ2JVLzgwQUFBQUdYUkZXSFJUYjJaMGQyRnlaUUJCWkc5aVpTQkpiV0ZuWlZKbFlXUjVjY2xsUEFBQUFJcEpSRUZVZU5yRWtja05nREFNQkJmUmtFdDBPYlJCQmRzR1hVRGdtUWZLNFhoSDJtOGN6UUFBeTI3UjN0c3c0UWZlMng4dU9PNm9ZTGI2R2xPb3IzR0Yrc3dVUkFPbVVKK1J3dEVKczlXdlRHRVl4QlhxSTFNUUFaaENmVVFLUnpETVZqK1R3ckFJVjZqdlNVRWtZQXIxTFNrY3lUQmIvVitLWWZYN3hBZXVzcTNzTER0R0gza0VHQUNQV0lmbE5aZmhSUUFBQUFCSlJVNUVya0pnZ2c9PScpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAvLyBCbGFjayB0cmlhbmdsZVxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUNBQUFBQVlDQVlBQUFDYlUvODBBQUFBR1hSRldIUlRiMlowZDJGeVpRQkJaRzlpWlNCSmJXRm5aVkpsWVdSNWNjbGxQQUFBQU1CSlJFRlVlTnJFbGxzT2hDQU1SVnN6QzlJbHpVN0tDbVZIVEpzb01XWU1VdHB5djlCZ2J1WFFCNVpTZGdCWVlZNHljZ0Jpdms4S1lGc1FNZk1pVFRCUDRvM25VekNLek9hYkxKYkx5Mi9nMzFldkdrQWdpblI0L1plZ0tINXFYM2JKQ3NjQTN0MHgza2dPNXRRRnloaEZmNTB4UnFGTGJ5TVVOSlF6Z3lqR1Mvd2dDcHZLcWtSQnB1V3JFNFY5ZCsxRTRkUFVYcUlnMTA3U1FPRS8yRFJReE13VER5Z0lJblZERVQ5VDNsQ29qLzZqL1ZDbUdqWk9sMmxLcFo4QUF3RFFQN3pJaW1ER0ZRQUFBQUJKUlU1RXJrSmdnZz09Jyk7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBcHBsaWVzIHRoZSBtaWNybyBjbGVhcmZpeCBoYWNrIHBvcHVsYXJpemVkIGJ5IE5pY29sYXMgR2FsbGFnaGVyLiBJbmNsdWRlIHRoaXMgbWl4aW4gb24gYSBjb250YWluZXIgaWYgaXRzIGNoaWxkcmVuIGFyZSBhbGwgZmxvYXRlZCwgdG8gZ2l2ZSB0aGUgY29udGFpbmVyIGEgcHJvcGVyIGhlaWdodC5cbi8vLyBUaGUgY2xlYXJmaXggaXMgYXVnbWVudGVkIHdpdGggc3BlY2lmaWMgc3R5bGVzIHRvIHByZXZlbnQgYm9yZGVycyBpbiBmbGV4Ym94IGVudmlyb25tZW50c1xuLy8vIEBsaW5rIGh0dHA6Ly9uaWNvbGFzZ2FsbGFnaGVyLmNvbS9taWNyby1jbGVhcmZpeC1oYWNrLyBNaWNybyBDbGVhcmZpeCBIYWNrXG4vLy8gQGxpbmsgaHR0cDovL2RhbmlzYWRlc2lnbmVyLmNvbS9ibG9nL2ZsZXhib3gtY2xlYXItZml4LXBzZXVkby1lbGVtZW50cy8gRmxleGJveCBmaXhcbkBtaXhpbiBjbGVhcmZpeCB7XG4gICY6OmJlZm9yZSxcbiAgJjo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6ICcgJztcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleC1iYXNpczogMDtcbiAgICAgIG9yZGVyOiAxO1xuICAgIH1cbiAgfVxuXG4gICY6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxufVxuXG4vLy8gQWRkcyBDU1MgZm9yIGEgXCJxdWFudGl0eSBxdWVyeVwiIHNlbGVjdG9yIHRoYXQgYXV0b21hdGljYWxseSBzaXplcyBlbGVtZW50cyBiYXNlZCBvbiBob3cgbWFueSB0aGVyZSBhcmUgaW5zaWRlIGEgY29udGFpbmVyLlxuLy8vIEBsaW5rIGh0dHA6Ly9hbGlzdGFwYXJ0LmNvbS9hcnRpY2xlL3F1YW50aXR5LXF1ZXJpZXMtZm9yLWNzcyBRdWFudGl0eSBRdWVyaWVzIGZvciBDU1Ncbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbWF4IC0gTWF4aW11bSBudW1iZXIgb2YgaXRlbXMgdG8gZGV0ZWN0LiBUaGUgaGlnaGVyIHRoaXMgbnVtYmVyIGlzLCB0aGUgbW9yZSBDU1MgdGhhdCdzIHJlcXVpcmVkIHRvIGNvdmVyIGVhY2ggbnVtYmVyIG9mIGl0ZW1zLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGVsZW0gW2xpXSAtIFRhZyB0byB1c2UgZm9yIHNpYmxpbmcgc2VsZWN0b3JzLlxuQG1peGluIGF1dG8td2lkdGgoJG1heCwgJGVsZW06IGxpKSB7XG4gIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggJG1heCB7XG4gICAgJjpudGgtbGFzdC1jaGlsZCgjeyRpfSk6Zmlyc3QtY2hpbGQsXG4gICAgJjpudGgtbGFzdC1jaGlsZCgjeyRpfSk6Zmlyc3QtY2hpbGQgfiAjeyRlbGVtfSB7XG4gICAgICB3aWR0aDogcGVyY2VudGFnZShkaXZpZGUoMSwgJGkpKTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIFJlbW92ZXMgdGhlIGZvY3VzIHJpbmcgYXJvdW5kIGFuIGVsZW1lbnQgd2hlbiBhIG1vdXNlIGlucHV0IGlzIGRldGVjdGVkLlxuQG1peGluIGRpc2FibGUtbW91c2Utb3V0bGluZSB7XG4gIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAmIHtcbiAgICBvdXRsaW5lOiAwO1xuICB9XG59XG5cbi8vLyBNYWtlcyBhbiBlbGVtZW50IHZpc3VhbGx5IGhpZGRlbiwgYnV0IHN0aWxsIGFjY2Vzc2libGUgdG8ga2V5Ym9hcmRzIGFuZCBhc3Npc3RpdmUgZGV2aWNlcy5cbi8vLyBAbGluayBodHRwOi8vc25vb2suY2EvYXJjaGl2ZXMvaHRtbF9hbmRfY3NzL2hpZGluZy1jb250ZW50LWZvci1hY2Nlc3NpYmlsaXR5IEhpZGluZyBDb250ZW50IGZvciBBY2Nlc3NpYmlsaXR5XG4vLy8gQGxpbmsgaHR0cDovL2h1Z29naXJhdWRlbC5jb20vMjAxNi8xMC8xMy9jc3MtaGlkZS1hbmQtc2Vlay9cbi8vL1xuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGVuZm9yY2UgLSBJZiBgdHJ1ZWAsIHVzZSBgIWltcG9ydGFudGAgb24gYXBwbGllZCBwcm9wZXJ0aWVzXG5AbWl4aW4gZWxlbWVudC1pbnZpc2libGUoXG4gICRlbmZvcmNlOiB0cnVlXG4pIHtcbiAgJGltcG9ydGFudDogaWYoJGVuZm9yY2UsICchaW1wb3J0YW50JywgbnVsbCk7XG5cbiAgcG9zaXRpb246IGFic29sdXRlICN7JGltcG9ydGFudH07XG4gIHdpZHRoOiAxcHggI3skaW1wb3J0YW50fTtcbiAgaGVpZ2h0OiAxcHggI3skaW1wb3J0YW50fTtcbiAgcGFkZGluZzogMCAjeyRpbXBvcnRhbnR9O1xuICBvdmVyZmxvdzogaGlkZGVuICN7JGltcG9ydGFudH07XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCkgI3skaW1wb3J0YW50fTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcCAjeyRpbXBvcnRhbnR9O1xuICBib3JkZXI6IDAgI3skaW1wb3J0YW50fTtcbn1cblxuLy8vIFJldmVyc2VzIHRoZSBDU1Mgb3V0cHV0IGNyZWF0ZWQgYnkgdGhlIGBlbGVtZW50LWludmlzaWJsZSgpYCBtaXhpbi5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRlbmZvcmNlIC0gSWYgYHRydWVgLCB1c2UgYCFpbXBvcnRhbnRgIG9uIGFwcGxpZWQgcHJvcGVydGllc1xuQG1peGluIGVsZW1lbnQtaW52aXNpYmxlLW9mZihcbiAgJGVuZm9yY2U6IHRydWVcbikge1xuICAkaW1wb3J0YW50OiBpZigkZW5mb3JjZSwgJyFpbXBvcnRhbnQnLCBudWxsKTtcblxuICBwb3NpdGlvbjogc3RhdGljICN7JGltcG9ydGFudH07XG4gIHdpZHRoOiBhdXRvICN7JGltcG9ydGFudH07XG4gIGhlaWdodDogYXV0byAjeyRpbXBvcnRhbnR9O1xuICBvdmVyZmxvdzogdmlzaWJsZSAjeyRpbXBvcnRhbnR9O1xuICBjbGlwOiBhdXRvICN7JGltcG9ydGFudH07XG4gIHdoaXRlLXNwYWNlOiBub3JtYWwgI3skaW1wb3J0YW50fTtcbn1cblxuLy8vIFZlcnRpY2FsbHkgY2VudGVycyB0aGUgZWxlbWVudCBpbnNpZGUgb2YgaXRzIGZpcnN0IG5vbi1zdGF0aWMgcGFyZW50LFxuLy8vIEBsaW5rIGh0dHA6Ly93d3cuc2l0ZXBvaW50LmNvbS9jZW50ZXJpbmctd2l0aC1zYXNzLyBDZW50ZXJpbmcgV2l0aCBTYXNzXG5AbWl4aW4gdmVydGljYWwtY2VudGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuXG4vLy8gSG9yaXpvbnRhbGx5IGNlbnRlcnMgdGhlIGVsZW1lbnQgaW5zaWRlIG9mIGl0cyBmaXJzdCBub24tc3RhdGljIHBhcmVudCxcbi8vLyBAbGluayBodHRwOi8vd3d3LnNpdGVwb2ludC5jb20vY2VudGVyaW5nLXdpdGgtc2Fzcy8gQ2VudGVyaW5nIFdpdGggU2Fzc1xuQG1peGluIGhvcml6b250YWwtY2VudGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbn1cblxuLy8vIEFic29sdXRlbHkgY2VudGVycyB0aGUgZWxlbWVudCBpbnNpZGUgb2YgaXRzIGZpcnN0IG5vbi1zdGF0aWMgcGFyZW50LFxuLy8vIEBsaW5rIGh0dHA6Ly93d3cuc2l0ZXBvaW50LmNvbS9jZW50ZXJpbmctd2l0aC1zYXNzLyBDZW50ZXJpbmcgV2l0aCBTYXNzXG5AbWl4aW4gYWJzb2x1dGUtY2VudGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbn1cblxuLy8vIEl0ZXJhdGVzIHRocm91Z2ggYnJlYWtwb2ludHMgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnQtY2xhc3Nlc2AgYW5kIHByaW50cyB0aGUgQ1NTIGluc2lkZSB0aGUgbWl4aW4gYXQgZWFjaCBicmVha3BvaW50J3MgbWVkaWEgcXVlcnkuIFVzZSB0aGlzIHdpdGggdGhlIGdyaWQsIG9yIGFueSBvdGhlciBjb21wb25lbnQgdGhhdCBoYXMgcmVzcG9uc2l2ZSBjbGFzc2VzLlxuLy8vXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkc21hbGwgW3RydWVdIC0gSWYgYGZhbHNlYCwgdGhlIG1peGluIHdpbGwgc2tpcCB0aGUgYHNtYWxsYCBicmVha3BvaW50LiBVc2UgdGhpcyB3aXRoIGNvbXBvbmVudHMgdGhhdCBkb24ndCBwcmVmaXggY2xhc3NlcyB3aXRoIGBzbWFsbC1gLCBvbmx5IGBtZWRpdW0tYCBhbmQgdXAuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkYXV0by1pbnNlcnQtYnJlYWtwb2ludHMgW3RydWVdIC0gSWYgYGZhbHNlYCwgdGhlIG1peGluIHdpbGwgaXRlcmF0ZSBvdmVyIGJyZWFrcG9pbnRzIHdpdGhvdXQgZG9pbmcgdGhlIG1lZGlhIHF1ZXJ5IGl0c2VsZi4gVXNlZnVsIGZvciBtb3JlIGNvbXBsZXggbWVkaWEgcXVlcnkgZ2VuZXJhdGlvbiBhcyBpbiB0aGUgbWFyZ2luIGdyaWQuXG5AbWl4aW4gLXpmLWVhY2gtYnJlYWtwb2ludChcbiAgJHNtYWxsOiB0cnVlLFxuICAkYXV0by1pbnNlcnQtYnJlYWtwb2ludHM6IHRydWVcbikge1xuICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50LWluKGF1dG8sIC16Zi1ib29sKCRzbWFsbCksIC16Zi1ib29sKCRhdXRvLWluc2VydC1icmVha3BvaW50cykpIHtcbiAgICBAY29udGVudFxuICB9O1xufVxuXG4vLy8gSXRlcmF0ZXMgd2l0aCBgQGNvbnRlbnRgIHRocm91Z2ggdGhlIGdpdmVuIGxpc3Qgb2YgYnJlYWtwb2ludHMgYCRicmVha3BvaW50c2AuXG4vLy9cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZHxMaXN0fSAkYnJlYWtwb2ludHMgW2F1dG9dIC0gQnJlYWtwb2ludHMgdG8gaXRlcmF0ZXMgb24uIEl0IGNhbiBiZSBhIGJyZWFrcG9pbnQgbmFtZSwgbGlzdCBvZiBicmVha3BvaW50cyBvciBgYXV0b2AgZm9yIGFsbCBicmVha3BvaW50cy5cbi8vLyBAcGFyYW0ge0Jvb2xlYW58TnVsbH0gJHplcm8tYnJlYWtwb2ludCBbbnVsbF0gLSBXaGV0aGVyIHRoZSB6ZXJvLWJyZWFrcG9pbnQgKG9mdGVuIGBzbWFsbGApIG11c3QgYmUgaW5jbHVkZWQuIElmIGB0cnVlYCwgaXQgd2lsbCBhbHdheXMgYmUgYWRkZWQgdG8gdGhlIGxpc3QgaWYgbm90IGFscmVhZHkgdGhlcmUuIElmIGBmYWxzZWAsIGl0IHdpbGwgYWx3YXlzIGJlIHJlbW92ZWQuIERvZXMgbm90aGluZyBieSBkZWZhdWx0LlxuLy8vIEBwYXJhbSB7Qm9vbGVhbnxLZXl3b3JkfSAkbWVkaWEtcXVlcmllcyBbdHJ1ZV0gLSBXaGV0aGVyIG1lZGlhLXF1ZXJpZXMgbXVzdCBiZSBnZW5lcmF0ZWQuIElmIGBmb3ItbGlzdHNgLCBvbmx5IGdlbmVyYXRlIG1lZGlhLXF1ZXJpZXMgd2hlbiBgJGJyZWFrcG9pbnRzYCBpcyBhIGxpc3QuXG5AbWl4aW4gLXpmLWVhY2gtYnJlYWtwb2ludC1pbihcbiAgJGJyZWFrcG9pbnRzOiBhdXRvLFxuICAkemVyby1icmVha3BvaW50OiBudWxsLFxuICAkbWVkaWEtcXVlcmllczogdHJ1ZVxuKSB7XG4gICQtbGlzdDogKCk7XG4gICQtYnJlYWtwb2ludHMtaXMtYS1saXN0OiB0cnVlO1xuXG4gIC8vIFJldHJpZXZlIHRoZSBsaXN0IG9mIGJyZWFrcG9pbnQocykgdG8gaXRlcmF0ZSBvbi5cbiAgQGlmICRicmVha3BvaW50cyA9PSBhdXRvIHtcbiAgICAkLWxpc3Q6ICRicmVha3BvaW50LWNsYXNzZXM7XG4gIH1cbiAgQGVsc2UgaWYgdHlwZS1vZigkYnJlYWtwb2ludHMpID09ICdsaXN0JyB7XG4gICAgJC1saXN0OiAkYnJlYWtwb2ludHM7XG4gIH1cbiAgQGVsc2UgaWYgdHlwZS1vZigkYnJlYWtwb2ludHMpID09ICdzdHJpbmcnIHtcbiAgICAkLWxpc3Q6ICgkYnJlYWtwb2ludHMpO1xuICAgICQtYnJlYWtwb2ludHMtaXMtYS1saXN0OiBmYWxzZTtcbiAgfVxuICBAZWxzZSB7XG4gICAgQGVycm9yICdXcm9uZyBzeW50YXggZm9yIFwiJGJyZWFrcG9pbnRzXCIgaW4gXCItemYtZWFjaC1icmVha3BvaW50LWluKClcIi4gR290IFwiI3skYnJlYWtwb2ludHN9XCIgKCN7dHlwZS1vZigkYnJlYWtwb2ludHMpfSkuIEV4cGVjdGVkIGEgYnJlYWtwb2ludCBuYW1lLCBhIGxpc3Qgb2YgYnJlYWtwb2ludHMgb3IgXCJhdXRvXCInO1xuICB9XG5cbiAgLy8gQWRkIG9yIHJlbW92ZSB0aGUgemVybyBicmVha3BvaW50IGFjY29yZGluZyB0byBgJHplcm8tYnJlYWtwb2ludGBcbiAgQGlmICR6ZXJvLWJyZWFrcG9pbnQgPT0gdHJ1ZSB7XG4gICAgJC1saXN0OiBqb2luKCgkLXpmLXplcm8tYnJlYWtwb2ludCksIHNsLXJlbW92ZSgkLWxpc3QsICQtemYtemVyby1icmVha3BvaW50KSk7XG4gIH1cbiAgQGVsc2UgaWYgJHplcm8tYnJlYWtwb2ludCA9PSBmYWxzZSB7XG4gICAgJC1saXN0OiBzbC1yZW1vdmUoJC1saXN0LCAkLXpmLXplcm8tYnJlYWtwb2ludCk7XG4gIH1cblxuICAvLyBJdGVyYXRlIG9uIGJyZWFrcG9pbnQocylcbiAgQGVhY2ggJGJwIGluICQtbGlzdCB7XG4gICAgJG9sZC16Zi1zaXplOiBudWxsO1xuICAgIEBpZiBnbG9iYWwtdmFyaWFibGUtZXhpc3RzKC16Zi1zaXplKSB7XG4gICAgICAkb2xkLXpmLXNpemU6ICQtemYtc2l6ZTtcbiAgICB9XG4gICAgJC16Zi1zaXplOiAkYnAgIWdsb2JhbDtcblxuICAgIEBpZiAoJG1lZGlhLXF1ZXJpZXMgPT0gdHJ1ZSBvciAoJG1lZGlhLXF1ZXJpZXMgPT0gJ2Zvci1saXN0cycgYW5kICQtYnJlYWtwb2ludHMtaXMtYS1saXN0KSkge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnApIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cblxuICAgICQtemYtc2l6ZTogJG9sZC16Zi1zaXplICFnbG9iYWw7XG4gIH1cbn1cblxuLy8vIEdlbmVyYXRlIHRoZSBgQGNvbnRlbnRgIHBhc3NlZCB0byB0aGUgbWl4aW4gd2l0aCBhIHZhbHVlIGAkLXpmLWJwLXZhbHVlYCByZWxhdGVkIHRvIGEgYnJlYWtwb2ludCwgZGVwZW5kaW5nIG9uIHRoZSBgJG5hbWVgIHBhcmFtZXRlcjpcbi8vLyAtIEZvciBhIHNpbmdsZSB2YWx1ZSwgYCQtemYtYnAtdmFsdWVgIGlzIHRoaXMgdmFsdWUuXG4vLy8gLSBGb3IgYSBicmVha3BvaW50IG5hbWUsIGAkLXpmLWJwLXZhbHVlYCBpcyB0aGUgY29ycmVzcG9uZGluZyBicmVha3BvaW50IHZhbHVlIGluIGAkbWFwYC5cbi8vLyAtIEZvciBcImF1dG9cIiwgYCQtemYtYnAtdmFsdWVgIGlzIHRoZSBjb3JyZXNwb25kaW5nIGJyZWFrcG9pbnQgdmFsdWUgaW4gYCRtYXBgIGFuZCBpcyBwYXNzZWQgdG8gYEBjb250ZW50YCwgd2hpY2ggaXMgbWFkZSByZXNwb25zaXZlIGZvciBlYWNoIGJyZWFrcG9pbnQgb2YgYCRtYXBgLlxuLy8vIEBwYXJhbSB7TnVtYmVyfEFycmF5fEtleXdvcmR9ICRuYW1lIFthdXRvXSAtIFNpbmdsZSB2YWx1ZSwgYnJlYWtwb2ludCBuYW1lLCBvciBsaXN0IG9mIGJyZWFrcG9pbnQgbmFtZXMgdG8gdXNlLiBcImF1dG9cIiBieSBkZWZhdWx0LlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJG1hcCAtIE1hcCBvZiBicmVha3BvaW50cyBhbmQgdmFsdWVzIG9yIHNpbmdsZSB2YWx1ZSB0byB1c2UuXG5AbWl4aW4gLXpmLWJyZWFrcG9pbnQtdmFsdWUoXG4gICRuYW1lOiBhdXRvLFxuICAkbWFwOiBudWxsXG4pIHtcbiAgQGlmICRuYW1lID09IGF1dG8gYW5kIHR5cGUtb2YoJG1hcCkgPT0gJ21hcCcge1xuICAgIC8vIFwiYXV0b1wiXG4gICAgQGVhY2ggJGssICR2IGluICRtYXAge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkaykge1xuICAgICAgICBAaW5jbHVkZSAtemYtYnJlYWtwb2ludC12YWx1ZSgkdiwgJG1hcCkge1xuICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAvLyBicmVha3BvaW50IG5hbWVcbiAgICBAaWYgdHlwZS1vZigkbmFtZSkgPT0gJ3N0cmluZycge1xuICAgICAgJGJwLXZhbHVlOiAtemYtZ2V0LWJwLXZhbCgkbWFwLCAkbmFtZSk7XG4gICAgICBAaWYgJGJwLXZhbHVlICE9IG51bGwge1xuICAgICAgICAkbmFtZTogJGJwLXZhbHVlO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIGJyZWFrcG9pbnQgdmFsdWVcbiAgICAkLXpmLWJwLXZhbHVlOiAkbmFtZSAhZ2xvYmFsO1xuICAgIEBjb250ZW50O1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgeHktZ3JpZFxuLy8vL1xuXG4vLyBNYXJnaW4gR3JpZCBjbGFzc2VzXG5AbWl4aW4geHktYmFzZS1ncmlkLWNsYXNzZXMge1xuXG4gIC8vIEdyaWQgQ29udGFpbmVyXG4gIC5ncmlkLWNvbnRhaW5lciB7XG4gICAgQGluY2x1ZGUgeHktZ3JpZC1jb250YWluZXI7XG5cbiAgICAmLmZsdWlkIHtcbiAgICAgIEBpbmNsdWRlIHh5LWdyaWQtY29udGFpbmVyKDEwMCUpO1xuICAgIH1cblxuICAgICYuZnVsbCB7XG4gICAgICBAaW5jbHVkZSB4eS1ncmlkLWNvbnRhaW5lcigxMDAlLCAwKTtcbiAgICB9XG4gIH1cblxuICAvLyBCYXNlIGdyaWQgc3R5bGVzXG4gIC5ncmlkLXgge1xuICAgIEBpbmNsdWRlIHh5LWdyaWQ7XG4gIH1cblxuICAuY2VsbCB7XG4gICAgQGluY2x1ZGUgeHktY2VsbChmdWxsLCAkZ3V0dGVyLXR5cGU6IG5vbmUpO1xuXG4gICAgJi5hdXRvIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtYmFzZShhdXRvKTtcbiAgICB9XG5cbiAgICAmLnNocmluayB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLWJhc2Uoc2hyaW5rKTtcbiAgICB9XG5cbiAgfVxuICAuZ3JpZC14IHtcbiAgICA+IC5hdXRvIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc2l6ZShhdXRvLCAkZ3V0dGVyLXR5cGU6IG5vbmUpO1xuICAgIH1cblxuICAgID4gLnNocmluayB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLXNpemUoc2hyaW5rLCAkZ3V0dGVyLXR5cGU6IG5vbmUpO1xuICAgIH1cbiAgfVxuXG4gIC8vIEF1dG8gd2lkdGhcbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCgpIHtcbiAgICAvLyBUaGlzIGlzIGEgYml0IG9mIGEgaGFjay93b3JrYXJvdW5kLCBzZWUgdGhlc2UgaXNzdWVzICYgUFJzIGZvciB0aGUgYmFja3N0b3J5OlxuICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9mb3VuZGF0aW9uL2ZvdW5kYXRpb24tc2l0ZXMvaXNzdWVzLzEwMjQ0XG4gICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL2ZvdW5kYXRpb24vZm91bmRhdGlvbi1zaXRlcy9wdWxsLzEwMjIyIGFuZFxuICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9mb3VuZGF0aW9uL2ZvdW5kYXRpb24tc2l0ZXMvcHVsbC8xMDE2NFxuICAgIC5ncmlkLXgge1xuICAgICAgJHN0cjogXCI+IC4jeyQtemYtc2l6ZX0tc2hyaW5rLCA+IC4jeyQtemYtc2l6ZX0tZnVsbFwiO1xuICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcbiAgICAgICAgJHN0cjogJHN0ciArIFwiLCA+IC4jeyQtemYtc2l6ZX0tI3skaX1cIjtcbiAgICAgIH1cbiAgICAgICN7JHN0cn0ge1xuICAgICAgICBmbGV4LWJhc2lzOiBhdXRvO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoKSB7XG4gICAgLy8gUmVzcG9uc2l2ZSBcImF1dG9cIiBtb2RpZmllclxuICAgIEBpZiBub3QoJC16Zi1zaXplID09ICQtemYtemVyby1icmVha3BvaW50KSB7XG4gICAgICAuZ3JpZC14ID4gLiN7JC16Zi1zaXplfS1hdXRvIHtcbiAgICAgICAgQGluY2x1ZGUgeHktY2VsbChhdXRvLCAkZ3V0dGVyLXR5cGU6IG5vbmUpO1xuICAgICAgfVxuICAgIH1cblxuICAgICUteHktY2VsbC1iYXNlLXNocmluay1ob3Jpem9udGFsLSN7JC16Zi1zaXplfSB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLWJhc2Uoc2hyaW5rKTtcbiAgICB9XG5cbiAgICAvLyBSZXNwb25zaXZlIFwic2hyaW5rXCIgbW9kaWZpZXJcbiAgICBAaWYgbm90KCQtemYtc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCkge1xuICAgICAgLmdyaWQteCA+IC4jeyQtemYtc2l6ZX0tc2hyaW5rIHtcbiAgICAgICAgQGV4dGVuZCAlLXh5LWNlbGwtYmFzZS1zaHJpbmstaG9yaXpvbnRhbC0jeyQtemYtc2l6ZX07XG4gICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc2l6ZShzaHJpbmssICRndXR0ZXItdHlwZTogbm9uZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gUmVzcG9uc2l2ZSB3aWR0aCBtb2RpZmllcnNcbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgICAgLy8gU2l6aW5nIChwZXJjZW50YWdlKVxuICAgICAgLmdyaWQteCA+IC4jeyQtemYtc2l6ZX0tI3skaX0ge1xuICAgICAgICBAZXh0ZW5kICUteHktY2VsbC1iYXNlLXNocmluay1ob3Jpem9udGFsLSN7JC16Zi1zaXplfTtcbiAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1zaXplKCRpLCAkZ3V0dGVyLXR5cGU6IG5vbmUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFJlc2V0IHdpZHRoIHdoZW4gdXNpbmcgYC5ncmlkLW1hcmdpbi14YCBub3Qgb24gYC5ncmlkLXhgXG4gIC5ncmlkLW1hcmdpbi14Om5vdCguZ3JpZC14KSA+IC5jZWxsIHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxuXG4gIC8vIFJlc2V0IGhlaWdodCB3aGVuIHVzaW5nIGAuZ3JpZC1tYXJnaW4teWAgbm90IG9uIGAuZ3JpZC15YFxuICAuZ3JpZC1tYXJnaW4teTpub3QoLmdyaWQteSkgPiAuY2VsbCB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG59XG5cbkBtaXhpbiAteHktYnJlYWtwb2ludC1jZWxsLWNsYXNzZXMoJGNsYXNzLWJyZWFrcG9pbnQsICRndXR0ZXItYnJlYWtwb2ludCwgJHZlcnRpY2FsKSB7XG4gICRwcmVmaXg6IGlmKCRjbGFzcy1icmVha3BvaW50ID09ICQtemYtemVyby1icmVha3BvaW50LCAnJywgJyN7JGNsYXNzLWJyZWFrcG9pbnR9LScpO1xuICA+IC4jeyRwcmVmaXh9YXV0byB7XG4gICAgQGluY2x1ZGUgeHktY2VsbC1zaXplKGF1dG8sICR2ZXJ0aWNhbDogJHZlcnRpY2FsKTtcbiAgfVxuXG4gID4gLiN7JHByZWZpeH1zaHJpbmsge1xuICAgIEBpbmNsdWRlIHh5LWNlbGwtc2l6ZShzaHJpbmssICR2ZXJ0aWNhbDogJHZlcnRpY2FsKTtcbiAgfVxuXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgLy8gU2l6aW5nIChwZXJjZW50YWdlKVxuICAgICRjbGFzc25hbWU6IGlmKCR2ZXJ0aWNhbCwgJy4jeyRjbGFzcy1icmVha3BvaW50fS0jeyRpfScsICcuI3skY2xhc3MtYnJlYWtwb2ludH0tI3skaX0nKTtcblxuICAgID4gI3skY2xhc3NuYW1lfSB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLXNpemUoJGksICR2ZXJ0aWNhbDogJHZlcnRpY2FsKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gTWFyZ2luIEdyaWQgY2xhc3Nlc1xuQG1peGluIHh5LW1hcmdpbi1ncmlkLWNsYXNzZXMoXG4gICRndXR0ZXItcG9zaXRpb246IGxlZnQgcmlnaHQsXG4gICR2ZXJ0aWNhbDogZmFsc2UsXG4gICR3cmFwcGluZy1zZWxlY3RvcjogJy5ncmlkLW1hcmdpbi14J1xuKXtcbiAgI3skd3JhcHBpbmctc2VsZWN0b3J9IHtcbiAgICBAaW5jbHVkZSB4eS1ndXR0ZXJzKCRuZWdhdGl2ZTogdHJ1ZSwgJGd1dHRlci1wb3NpdGlvbjogJGd1dHRlci1wb3NpdGlvbik7XG5cbiAgICAvLyBCYXNlIGNlbGwgc3R5bGVzXG4gICAgPiAuY2VsbCB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsKCR2ZXJ0aWNhbDogJHZlcnRpY2FsLCAkb3V0cHV0OiAoc2l6ZSBndXR0ZXJzKSk7XG4gICAgfVxuXG4gICAgLy8gYmFzZSBzdHlsZXMgbmVlZCB0byBhbGwgYmUgYmVmb3JlIHRoZSBhdXRvIGFuZCBzaHJpbmsgc3R5bGVzXG4gICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCgpIHtcbiAgICAgIEBpZih0eXBlLW9mKCRncmlkLW1hcmdpbi1ndXR0ZXJzKSA9PSAnbWFwJyBhbmQgbWFwLWhhcy1rZXkoJGdyaWQtbWFyZ2luLWd1dHRlcnMsICQtemYtc2l6ZSkgYW5kICQtemYtc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCkge1xuICAgICAgICA+IC5jZWxsIHtcbiAgICAgICAgICBAaW5jbHVkZSB4eS1jZWxsKCR2ZXJ0aWNhbDogJHZlcnRpY2FsLCAkb3V0cHV0OiAoc2l6ZSBndXR0ZXJzKSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCkge1xuXG4gICAgICAvLyBUaGlzIGlzIHB1cmVseSBmb3IgcmVzcG9uc2l2ZSBndXR0ZXJzIC0gdGhlIG1hcmdpbiBncmlkIGhhcyB0byBnbyBiYWNrIGFuZCBhZGp1c3Qgd2lkdGhzIChvciBoZWlnaHRzKVxuICAgICAgLy8gZm9yIGFsbCBwcmlvciBicmVha3BvaW50cy5cbiAgICAgIC8vIEFzIHRoZWlyIGd1dHRlciBpcyBkZWZpbmVkIHdpdGggdGhlaXIgd2lkdGgvaGVpZ2h0LCBldmVuIGJyZWFrcG9pbnQgd2l0aG91dCBhIG5ldyBtYXJnaW4gbXVzdCBiZVxuICAgICAgLy8gZ2VuZXJhdGVkIHRvIG5vdCBoYXZpbmcgdGhlaXIgd2lkdGgvaGVpZ2h0IG92ZXJyaWRlZCBieSByZS1hZGp1c3RlZCBzbWFsbGVyIGJyZWFrcG9pbnRzLlxuICAgICAgQGlmKHR5cGUtb2YoJGdyaWQtbWFyZ2luLWd1dHRlcnMpID09ICdtYXAnIGFuZCBtYXAtaGFzLWtleSgkZ3JpZC1tYXJnaW4tZ3V0dGVycywgJC16Zi1zaXplKSkge1xuICAgICAgICBAZWFjaCAkYnAgaW4gLXpmLWJyZWFrcG9pbnRzLWxlc3MtdGhhbigkLXpmLXNpemUpIHtcbiAgICAgICAgICBAaW5jbHVkZSAteHktYnJlYWtwb2ludC1jZWxsLWNsYXNzZXMoJGJwLCAkLXpmLXNpemUsICR2ZXJ0aWNhbCk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgLXh5LWJyZWFrcG9pbnQtY2VsbC1jbGFzc2VzKCQtemYtc2l6ZSwgJC16Zi1zaXplLCAkdmVydGljYWwpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBQYWRkaW5nIEdyaWQgY2xhc3Nlc1xuQG1peGluIHh5LXBhZGRpbmctZ3JpZC1jbGFzc2VzIHtcbiAgLmdyaWQtcGFkZGluZy14IHtcblxuICAgIC8vIE5lZ2F0aXZlIG1hcmdpbiBmb3IgbmVzdGVkIGdyaWRzXG4gICAgLmdyaWQtcGFkZGluZy14IHtcbiAgICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJG5lZ2F0aXZlOiB0cnVlKTtcbiAgICB9XG5cbiAgICAvLyBOZWdhdGl2ZSBtYXJnaW4gZm9yIGdyaWRzIHdpdGhpbiBgZ3JpZC1jb250YWluZXIvZ3JpZC1jb250YWluZXIuZmx1aWRgXG4gICAgLy8gVGhpcyBhbGxvd3MgbWFyZ2luIGFuZCBwYWRkaW5nIGdyaWRzIHRvIGxpbmUgdXAgd2l0aCBlYWNob3RoZXJcbiAgICAuZ3JpZC1jb250YWluZXI6bm90KC5mdWxsKSA+ICYge1xuICAgICAgQGluY2x1ZGUgeHktZ3V0dGVycygkbmVnYXRpdmU6IHRydWUpO1xuICAgIH1cblxuICAgIC8vIEJhc2UgY2VsbCBzdHlsZXNcbiAgICA+IC5jZWxsIHtcbiAgICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJGd1dHRlcnM6ICRncmlkLXBhZGRpbmctZ3V0dGVycywgJGd1dHRlci10eXBlOiBwYWRkaW5nKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gQmxvY2sgR3JpZCBjbGFzc2VzXG5AbWl4aW4geHktYmxvY2stZ3JpZC1jbGFzc2VzKCRtYXJnaW4tZ3JpZDogdHJ1ZSwgJHBhZGRpbmctZ3JpZDogdHJ1ZSkge1xuICBAaWYgJHBhZGRpbmctZ3JpZCB7XG4gICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCB7XG4gICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICR4eS1ibG9jay1ncmlkLW1heCB7XG4gICAgICAgIC4jeyQtemYtc2l6ZX0tdXAtI3skaX0ge1xuICAgICAgICAgIEBpbmNsdWRlIHh5LWdyaWQtbGF5b3V0KCRuOiAkaSwgJHNlbGVjdG9yOiAnLmNlbGwnLCAkZ3V0dGVyLXR5cGU6IHBhZGRpbmcsICRvdXRwdXQ6IChzaXplKSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaWYgJG1hcmdpbi1ncmlkIHtcbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50IHtcbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJHh5LWJsb2NrLWdyaWQtbWF4IHtcbiAgICAgICAgLy8gVGhpcyBpcyBwdXJlbHkgZm9yIHJlc3BvbnNpdmUgZ3V0dGVycyAtIHRoZSBtYXJnaW4gZ3JpZCBoYXMgdG8gZ28gYmFjayBhbmQgYWRqdXN0IHdpZHRocyAob3IgaGVpZ2h0cylcbiAgICAgICAgLy8gZm9yIHByaW9yIGJyZWFrcG9pbnRzIGJhc2VkIG9uIHRoZSByZXNwb25zaXZlIGd1dHRlci5cbiAgICAgICAgQGlmKHR5cGUtb2YoJGdyaWQtbWFyZ2luLWd1dHRlcnMpID09ICdtYXAnIGFuZCBtYXAtaGFzLWtleSgkZ3JpZC1tYXJnaW4tZ3V0dGVycywgJC16Zi1zaXplKSkge1xuICAgICAgICAgIEBlYWNoICRicCBpbiAtemYtYnJlYWtwb2ludHMtbGVzcy10aGFuKCQtemYtc2l6ZSkge1xuICAgICAgICAgICAgQGlmKG1hcC1oYXMta2V5KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCAkYnApKSB7XG4gICAgICAgICAgICAgIC5ncmlkLW1hcmdpbi14LiN7JGJwfS11cC0jeyRpfSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1sYXlvdXQoJG46ICRpLCAkc2VsZWN0b3I6ICcuY2VsbCcsICRndXR0ZXItdHlwZTogbWFyZ2luLCAkb3V0cHV0OiAoc2l6ZSkpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICR4eS1ibG9jay1ncmlkLW1heCB7XG4gICAgICAgIC5ncmlkLW1hcmdpbi14LiN7JC16Zi1zaXplfS11cC0jeyRpfSB7XG4gICAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1sYXlvdXQoJG46ICRpLCAkc2VsZWN0b3I6ICcuY2VsbCcsICRndXR0ZXItdHlwZTogbWFyZ2luLCAkb3V0cHV0OiAoc2l6ZSkpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIENvbGxhcHNlIGNsYXNzZXNcbkBtaXhpbiB4eS1jb2xsYXBzZS1ncmlkLWNsYXNzZXMoJG1hcmdpbi1ncmlkOiB0cnVlLCAkcGFkZGluZy1ncmlkOiB0cnVlKSB7XG4gIEBlYWNoICRicCBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICBAaWYgJG1hcmdpbi1ncmlkIHtcbiAgICAgIC4jeyRicH0tbWFyZ2luLWNvbGxhcHNlIHtcbiAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1jb2xsYXBzZSgkZ3V0dGVyLXR5cGU6IG1hcmdpbiwgJG1pbi1icmVha3BvaW50OiAkYnApO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkcGFkZGluZy1ncmlkIHtcbiAgICAgIC4jeyRicH0tcGFkZGluZy1jb2xsYXBzZSB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWdyaWQtY29sbGFwc2UoJGd1dHRlci10eXBlOiBwYWRkaW5nLCAkbWluLWJyZWFrcG9pbnQ6ICRicCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIE9mZnNldCBjbGFzc2VzXG5AbWl4aW4geHktb2Zmc2V0LWNlbGwtY2xhc3NlcyB7XG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQge1xuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgICAvLyBPZmZzZXRzXG4gICAgICAkbzogJGkgLSAxO1xuXG4gICAgICAuI3skLXpmLXNpemV9LW9mZnNldC0jeyRvfSB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtb2Zmc2V0KCRvLCAkZ3V0dGVyczogJGdyaWQtcGFkZGluZy1ndXR0ZXJzLCAkZ3V0dGVyLXR5cGU6IHBhZGRpbmcpO1xuICAgICAgfVxuXG4gICAgICAuZ3JpZC1tYXJnaW4teCA+IC4jeyQtemYtc2l6ZX0tb2Zmc2V0LSN7JG99IHtcbiAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1vZmZzZXQoJG8pO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBWZXJ0aWNhbCBHcmlkIGNsYXNzZXNcbkBtaXhpbiB4eS12ZXJ0aWNhbC1ncmlkLWNsYXNzZXMoXG4gICRtYXJnaW4tZ3JpZDogdHJ1ZSxcbiAgJHBhZGRpbmctZ3JpZDogdHJ1ZVxuKSB7XG5cbiAgLy8gQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCgpIHtcbiAgLy8gICBAaWYgbm90KCQtemYtc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCkge1xuICAvLyAgIH1cbiAgLy8gfVxuXG4gIC5ncmlkLXkge1xuICAgIEBpbmNsdWRlIHh5LWdyaWQodmVydGljYWwsIGZhbHNlKTtcblxuXG4gICAgPiAuY2VsbCB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLXJlc2V0KCk7XG4gICAgfVxuXG4gICAgPiAuYXV0byB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLXNpemUoYXV0bywgJGd1dHRlci10eXBlOiBub25lLCAkdmVydGljYWw6IHRydWUpO1xuICAgIH1cblxuICAgID4gLnNocmluayB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLXNpemUoc2hyaW5rLCAkZ3V0dGVyLXR5cGU6IG5vbmUsICR2ZXJ0aWNhbDogdHJ1ZSk7XG4gICAgfVxuXG5cbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCkge1xuICAgICAgLy8gVGhpcyBpcyBhIGJpdCBvZiBhIGhhY2svd29ya2Fyb3VuZCwgc2VlIHRoZXNlIGlzc3VlcyBhbmQgUFJzIGZvciB0aGUgYmFja3N0b3J5OlxuICAgICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL2ZvdW5kYXRpb24vZm91bmRhdGlvbi1zaXRlcy9pc3N1ZXMvMTAyNDRcbiAgICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9mb3VuZGF0aW9uL2ZvdW5kYXRpb24tc2l0ZXMvcHVsbC8xMDIyMiBhbmRcbiAgICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9mb3VuZGF0aW9uL2ZvdW5kYXRpb24tc2l0ZXMvcHVsbC8xMDE2NFxuICAgICAgJHN0cjogXCI+IC4jeyQtemYtc2l6ZX0tc2hyaW5rLCA+IC4jeyQtemYtc2l6ZX0tZnVsbFwiO1xuICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcbiAgICAgICAgJHN0cjogJHN0ciArIFwiLCA+IC4jeyQtemYtc2l6ZX0tI3skaX1cIjtcbiAgICAgIH1cbiAgICAgICN7JHN0cn0ge1xuICAgICAgICBmbGV4LWJhc2lzOiBhdXRvO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoKSB7XG4gICAgICAvLyBSZXNwb25zaXZlIFwiYXV0b1wiIG1vZGlmaWVyXG4gICAgICBAaWYgbm90KCQtemYtc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCkge1xuICAgICAgICA+IC4jeyQtemYtc2l6ZX0tYXV0byB7XG4gICAgICAgICAgQGluY2x1ZGUgeHktY2VsbChhdXRvLCAkZ3V0dGVyLXR5cGU6IG5vbmUsICR2ZXJ0aWNhbDogdHJ1ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJS14eS1jZWxsLWJhc2Utc2hyaW5rLXZlcnRpY2FsLSN7JC16Zi1zaXplfSB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtYmFzZShzaHJpbmspO1xuICAgICAgfVxuXG4gICAgICAvLyBSZXNwb25zaXZlIFwic2hyaW5rXCIgbW9kaWZpZXJcbiAgICAgIEBpZiBub3QoJC16Zi1zaXplID09ICQtemYtemVyby1icmVha3BvaW50KSB7XG4gICAgICAgID4gLiN7JC16Zi1zaXplfS1zaHJpbmsge1xuICAgICAgICAgIEBleHRlbmQgJS14eS1jZWxsLWJhc2Utc2hyaW5rLXZlcnRpY2FsLSN7JC16Zi1zaXplfTtcbiAgICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLXNpemUoc2hyaW5rLCAkZ3V0dGVyLXR5cGU6IG5vbmUsICR2ZXJ0aWNhbDogdHJ1ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gUmVzcG9uc2l2ZSB3aWR0aCBtb2RpZmllcnNcbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgICAgIC8vIFNpemluZyAocGVyY2VudGFnZSlcbiAgICAgICAgPiAuI3skLXpmLXNpemV9LSN7JGl9IHtcbiAgICAgICAgICBAZXh0ZW5kICUteHktY2VsbC1iYXNlLXNocmluay12ZXJ0aWNhbC0jeyQtemYtc2l6ZX07XG4gICAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1zaXplKCRpLCAkZ3V0dGVyLXR5cGU6IG5vbmUsICR2ZXJ0aWNhbDogdHJ1ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgIH1cbiAgfVxuXG4gIEBpZiAkcGFkZGluZy1ncmlkIHtcbiAgICAuZ3JpZC1wYWRkaW5nLXkge1xuICAgICAgLy8gTmVnYXRpdmUgbWFyZ2luIGZvciBuZXN0ZWQgZ3JpZHNcbiAgICAgIC5ncmlkLXBhZGRpbmcteSB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJG5lZ2F0aXZlOiB0cnVlLCAkZ3V0dGVyLXBvc2l0aW9uOiB0b3AgYm90dG9tKTtcbiAgICAgIH1cblxuICAgICAgLy8gQmFzZSBjZWxsIHN0eWxlc1xuICAgICAgPiAuY2VsbCB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJGd1dHRlcnM6ICRncmlkLXBhZGRpbmctZ3V0dGVycywgJGd1dHRlci10eXBlOiBwYWRkaW5nLCAkZ3V0dGVyLXBvc2l0aW9uOiB0b3AgYm90dG9tKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaWYgJG1hcmdpbi1ncmlkIHtcbiAgICBAaW5jbHVkZSB4eS1tYXJnaW4tZ3JpZC1jbGFzc2VzKHRvcCBib3R0b20sIHRydWUsICcuZ3JpZC1tYXJnaW4teScpO1xuICB9XG5cbn1cblxuQG1peGluIHh5LWZyYW1lLWdyaWQtY2xhc3NlcygkdmVydGljYWwtZ3JpZDogdHJ1ZSwgJG1hcmdpbi1ncmlkOiB0cnVlKSB7XG4gIC8vIEZyYW1lZCBncmlkIHN0eWxlc1xuICAuZ3JpZC1mcmFtZSB7XG4gICAgQGluY2x1ZGUgeHktZ3JpZC1mcmFtZTtcbiAgfVxuXG4gIC5jZWxsIC5ncmlkLWZyYW1lIHtcbiAgICB3aWR0aDogMTAwJTsgLy8gU2FtZSBhcyBpbmNsdWRlIHdpdGggJG5lc3RlZCwgYnV0IHdpdGggbGVzcyBjc3NcbiAgfVxuXG4gIC5jZWxsLWJsb2NrIHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsLWJsb2NrKCk7XG4gIH1cblxuICAuY2VsbC1ibG9jay15IHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsLWJsb2NrKHRydWUpO1xuICB9XG5cblxuICAuY2VsbC1ibG9jay1jb250YWluZXIge1xuICAgIEBpbmNsdWRlIHh5LWNlbGwtYmxvY2stY29udGFpbmVyKCk7XG4gIH1cblxuXG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoZmFsc2UpIHtcblxuICAgIC4jeyQtemYtc2l6ZX0tZ3JpZC1mcmFtZSB7XG4gICAgICBAaW5jbHVkZSB4eS1ncmlkLWZyYW1lO1xuICAgIH1cblxuICAgIC5jZWxsIC4jeyQtemYtc2l6ZX0tZ3JpZC1mcmFtZSB7XG4gICAgICB3aWR0aDogMTAwJTsgLy8gU2FtZSBhcyBpbmNsdWRlIHdpdGggJG5lc3RlZCwgYnV0IHdpdGggbGVzcyBjc3NcbiAgICB9XG5cbiAgICAuI3skLXpmLXNpemV9LWNlbGwtYmxvY2sge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1ibG9jaygpO1xuICAgIH1cblxuICAgIC4jeyQtemYtc2l6ZX0tY2VsbC1ibG9jay1jb250YWluZXIge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1ibG9jay1jb250YWluZXIoKTtcbiAgICB9XG5cbiAgICAuI3skLXpmLXNpemV9LWNlbGwtYmxvY2steSB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLWJsb2NrKHRydWUpO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkdmVydGljYWwtZ3JpZCB7XG4gICAgLmdyaWQteSB7XG4gICAgICAmLmdyaWQtZnJhbWUge1xuICAgICAgICBAaW5jbHVkZSB4eS1ncmlkLWZyYW1lKHRydWUpO1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludChmYWxzZSkge1xuICAgICAgICAmLiN7JC16Zi1zaXplfS1ncmlkLWZyYW1lIHtcbiAgICAgICAgICBAaW5jbHVkZSB4eS1ncmlkLWZyYW1lKHRydWUpO1xuICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgIH1cbiAgICB9XG4gICAgLmNlbGwge1xuICAgICAgLmdyaWQteS5ncmlkLWZyYW1lIHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlOyAvLyBTYW1lIGFzIGluY2x1ZGUgd2l0aCAkbmVzdGVkLCBidXQgd2l0aCBsZXNzIGNzc1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludChmYWxzZSkge1xuICAgICAgICAuZ3JpZC15LiN7JC16Zi1zaXplfS1ncmlkLWZyYW1lIHtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7IC8vIFNhbWUgYXMgaW5jbHVkZSB3aXRoICRuZXN0ZWQsIGJ1dCB3aXRoIGxlc3MgY3NzXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGlmICRtYXJnaW4tZ3JpZCB7XG4gICAgQGluY2x1ZGUgeHktbWFyZ2luLWdyaWQtY2xhc3Nlcyh0b3AgYm90dG9tLCB0cnVlLCAnLmdyaWQtbWFyZ2luLXknKTtcbiAgICAuZ3JpZC1mcmFtZS5ncmlkLW1hcmdpbi15IHtcbiAgICAgIEBpbmNsdWRlIHh5LWdyaWQtZnJhbWUodHJ1ZSwgZmFsc2UsICRncmlkLW1hcmdpbi1ndXR0ZXJzLCAkaW5jbHVkZS1iYXNlOiBmYWxzZSk7XG4gICAgfVxuICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoZmFsc2UpIHtcbiAgICAgIC5ncmlkLW1hcmdpbi15LiN7JC16Zi1zaXplfS1ncmlkLWZyYW1lIHtcbiAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1mcmFtZSh0cnVlLCBmYWxzZSwgJGdyaWQtbWFyZ2luLWd1dHRlcnMsICQtemYtc2l6ZSwgZmFsc2UpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBGaW5hbCBjbGFzc2VzXG5AbWl4aW4gZm91bmRhdGlvbi14eS1ncmlkLWNsYXNzZXMoXG4gICRiYXNlLWdyaWQ6IHRydWUsXG4gICRtYXJnaW4tZ3JpZDogdHJ1ZSxcbiAgJHBhZGRpbmctZ3JpZDogdHJ1ZSxcbiAgJGJsb2NrLWdyaWQ6IHRydWUsXG4gICRjb2xsYXBzZTogdHJ1ZSxcbiAgJG9mZnNldDogdHJ1ZSxcbiAgJHZlcnRpY2FsLWdyaWQ6IHRydWUsXG4gICRmcmFtZS1ncmlkOiB0cnVlXG4pIHtcblxuICAvLyBCYXNlIGdyaWQgc3R5bGVzXG4gIEBpZigkYmFzZS1ncmlkKSB7XG4gICAgQGluY2x1ZGUgeHktYmFzZS1ncmlkLWNsYXNzZXMoKTtcbiAgfVxuXG4gIC8vIE1hcmdpbiBncmlkXG4gIEBpZigkbWFyZ2luLWdyaWQpIHtcbiAgICBAaW5jbHVkZSB4eS1tYXJnaW4tZ3JpZC1jbGFzc2VzKCk7XG4gIH1cblxuICAvLyBQYWRkaW5nIGdyaWRcbiAgQGlmKCRwYWRkaW5nLWdyaWQpIHtcbiAgICBAaW5jbHVkZSB4eS1wYWRkaW5nLWdyaWQtY2xhc3NlcygpO1xuICB9XG5cbiAgLy8gQmxvY2sgZ3JpZFxuICBAaWYoJGJsb2NrLWdyaWQpIHtcbiAgICBAaW5jbHVkZSB4eS1ibG9jay1ncmlkLWNsYXNzZXMoJG1hcmdpbi1ncmlkLCAkcGFkZGluZy1ncmlkKTtcbiAgfVxuXG4gIC8vIENvbGxhcHNlIGd1dHRlcnNcbiAgQGlmKCRjb2xsYXBzZSkge1xuICAgIEBpbmNsdWRlIHh5LWNvbGxhcHNlLWdyaWQtY2xhc3NlcygkbWFyZ2luLWdyaWQsICRwYWRkaW5nLWdyaWQpO1xuICB9XG5cbiAgLy8gT2Zmc2V0IGd1dHRlcnNcbiAgQGlmKCRvZmZzZXQpIHtcbiAgICBAaW5jbHVkZSB4eS1vZmZzZXQtY2VsbC1jbGFzc2VzKCk7XG4gIH1cblxuICAvLyBWZXJ0aWNhbCBncmlkXG4gIEBpZigkdmVydGljYWwtZ3JpZCkge1xuICAgIEBpbmNsdWRlIHh5LXZlcnRpY2FsLWdyaWQtY2xhc3NlcygkbWFyZ2luLWdyaWQsICRwYWRkaW5nLWdyaWQpO1xuICB9XG5cbiAgQGlmICgkZnJhbWUtZ3JpZCkge1xuICAgIEBpbmNsdWRlIHh5LWZyYW1lLWdyaWQtY2xhc3NlcygkdmVydGljYWwtZ3JpZCwgJG1hcmdpbi1ncmlkKVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgeHktZ3JpZFxuLy8vL1xuXG4vLy8gQ3JlYXRlIGd1dHRlcnMgZm9yIGEgY2VsbC9jb250YWluZXIuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1tYXJnaW4tZ3V0dGVyc10gLSBNYXAgb3Igc2luZ2xlIHZhbHVlIGZvciBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGd1dHRlci10eXBlIFttYXJnaW5dIC0gVHlwZSBvZiBndXR0ZXIgdG8gb3V0cHV0LiBBY2NlcHRzIGVpdGhlciBtYXJnaW4gb3IgcGFkZGluZy5cbi8vLyBAcGFyYW0ge0xpc3R9ICRndXR0ZXItcG9zaXRpb24gW3JpZ2h0IGxlZnRdIC0gVGhlIHBvc2l0aW9uIHRvIGFwcGx5IGd1dHRlcnMgdG8uIEFjY2VwdHMgYHRvcGAsIGBib3R0b21gLCBgbGVmdGAsIGByaWdodGAgaW4gYW55IGNvbWJpbmF0aW9uLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJG5lZ2F0aXZlIFtmYWxzZV0gLSBXaGV0aGVyIHRvIGFwcGx5IHRoZSBndXR0ZXIgYXMgYSBuZWdhdGl2ZSB2YWx1ZS4gQ29tbW9ubHkgdXNlZCBmb3IgbmVzdGVkIGdyaWRzLlxuQG1peGluIHh5LWd1dHRlcnMoXG4gICRndXR0ZXJzOiAkZ3JpZC1tYXJnaW4tZ3V0dGVycyxcbiAgJGd1dHRlci10eXBlOiBtYXJnaW4sXG4gICRndXR0ZXItcG9zaXRpb246IHJpZ2h0IGxlZnQsXG4gICRuZWdhdGl2ZTogZmFsc2Vcbikge1xuICAkb3BlcmF0b3I6IGlmKCRuZWdhdGl2ZSwgJy0nLCAnJyk7XG5cbiAgLy8gSWYgd2UgaGF2ZSBkZWNsYXJlZCBuZWdhdGl2ZSBndXR0ZXJzLCBmb3JjZSB0eXBlIHRvIGBtYXJnaW4uXG4gICRndXR0ZXItdHlwZTogaWYoJG5lZ2F0aXZlLCAnbWFyZ2luJywgJGd1dHRlci10eXBlKTtcblxuICAvLyBPdXRwdXQgb3VyIG1hcmdpbiBndXR0ZXJzLlxuICBAaWYgKHR5cGUtb2YoJGd1dHRlcnMpID09ICdtYXAnKSB7XG4gICAgQGluY2x1ZGUgLXpmLWJyZWFrcG9pbnQtdmFsdWUoYXV0bywgJGd1dHRlcnMpIHtcbiAgICAgICRndXR0ZXI6IHJlbS1jYWxjKCQtemYtYnAtdmFsdWUpICogMC41O1xuXG4gICAgICAvLyBMb29wIHRocm91Z2ggZWFjaCBndXR0ZXIgcG9zaXRpb25cbiAgICAgIEBlYWNoICR2YWx1ZSBpbiAkZ3V0dGVyLXBvc2l0aW9uIHtcbiAgICAgICAgI3skZ3V0dGVyLXR5cGV9LSN7JHZhbHVlfTogdW5xdW90ZShcIiN7JG9wZXJhdG9yfSN7JGd1dHRlcn1cIik7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICh0eXBlLW9mKCRndXR0ZXJzKSA9PSAnbnVtYmVyJykge1xuICAgICRndXR0ZXI6IHJlbS1jYWxjKCRndXR0ZXJzKSAqIDAuNTtcblxuICAgIC8vIExvb3AgdGhyb3VnaCBlYWNoIGd1dHRlciBwb3NpdGlvblxuICAgIEBlYWNoICR2YWx1ZSBpbiAkZ3V0dGVyLXBvc2l0aW9uIHtcbiAgICAgICN7JGd1dHRlci10eXBlfS0jeyR2YWx1ZX06IHVucXVvdGUoXCIjeyRvcGVyYXRvcn0jeyRndXR0ZXJ9XCIpO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHh5LWdyaWRcbi8vLy9cblxuLy8vIENyZWF0ZXMgYSBtYXggd2lkdGggY29udGFpbmVyLCBkZXNpZ25lZCB0byBob3VzZSB5b3VyIGdyaWQgY29udGVudC5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2lkdGggWyRncmlkLWNvbnRhaW5lcl0gLSBhIHdpZHRoIHRvIGxpbWl0IHRoZSBjb250YWluZXIgdG8uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRwYWRkaW5nIFskZ3JpZC1jb250YWluZXItcGFkZGluZ10gLSBwYWRkaW5ncyBvZiB0aGUgY29udGFpbmVyLlxuQG1peGluIHh5LWdyaWQtY29udGFpbmVyKFxuICAkd2lkdGg6ICRncmlkLWNvbnRhaW5lcixcbiAgJHBhZGRpbmc6ICRncmlkLWNvbnRhaW5lci1wYWRkaW5nXG4pIHtcbiAgQGluY2x1ZGUgeHktZ3V0dGVycygkZ3V0dGVyczogJHBhZGRpbmcsICRndXR0ZXItdHlwZTogcGFkZGluZyk7XG5cbiAgbWF4LXdpZHRoOiAkd2lkdGg7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG5cbi8vLyBDcmVhdGVzIGEgY29udGFpbmVyIGZvciB5b3VyIGZsZXggY2VsbHMuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXJlY3Rpb24gW2hvcml6b250YWxdIC0gRWl0aGVyIGhvcml6b250YWwgb3IgdmVydGljYWwgZGlyZWN0aW9uIG9mIGNlbGxzIHdpdGhpbi5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICR3cmFwIFt0cnVlXSAtIElmIHRoZSBjZWxscyB3aXRoaW4gc2hvdWxkIHdyYXAgb3Igbm90LlxuQG1peGluIHh5LWdyaWQoXG4gICRkaXJlY3Rpb246IGhvcml6b250YWwsXG4gICR3cmFwOiB0cnVlXG4pIHtcbiAgJGRpcmVjdGlvbjogaWYoJGRpcmVjdGlvbiA9PSAnaG9yaXpvbnRhbCcsIHJvdywgY29sdW1uKTtcbiAgJHdyYXA6IGlmKCR3cmFwLCB3cmFwLCBub3dyYXApO1xuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogJGRpcmVjdGlvbiAkd3JhcDtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB4eS1ncmlkXG4vLy8vXG5cbi8vLyBSZXR1cm5zIHRoZSBhcHByb3ByaWF0ZSBDU1MgZmxleCB2YWx1ZSBmb3IgYSBjZWxsIGJhc2UuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIFtmdWxsXSAtIFRoZSBzaXplIG9mIHlvdXIgY2VsbC4gQWNjZXB0cyBgZnVsbGAsIGBhdXRvYCwgYHNocmlua2AsIGBncm93YCwgb3IgYW55IG90aGVyIHZhbHVlIHJlcHJlc2VudGluZyBhIGNlbGwgc2l6ZSAoaXQgd2lsbCBiZSB0cmVhdGVkIGFzIGBzaHJpbmtgKS5cbi8vL1xuLy8vIEByZXR1cm5zIHtMaXN0fSBUaGUgY2VsbCBmbGV4IHByb3BlcnR5IHZhbHVlLlxuQGZ1bmN0aW9uIHh5LWNlbGwtYmFzZSgkc2l6ZTogZnVsbCkge1xuICBAaWYgKCRzaXplID09ICdhdXRvJykge1xuICAgIEByZXR1cm4gMSAxIDA7XG4gIH1cbiAgQGVsc2UgaWYgKCRzaXplID09ICdncm93Jykge1xuICAgIEByZXR1cm4gMSAwIGF1dG87XG4gIH1cbiAgQGVsc2UgaWYgKCRzaXplID09ICdzaHJpbmsnIG9yICRzaXplID09ICdmdWxsJyBvciB6Zi1pcy1mcmFjdGlvbigkc2l6ZSwgJGFsbG93LW5vLWRlbm9taW5hdG9yOiB0cnVlKSkge1xuICAgIEByZXR1cm4gMCAwIGF1dG87XG4gIH1cbiAgQHJldHVybiBudWxsO1xufVxuXG4vLy8gQ2FsY3VsYXRlIHRoZSBzaXplIG9mIGEgY2VsbCBndXR0ZXJzLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtbWFyZ2luLWd1dHRlcnNdIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSBmb3IgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGJyZWFrcG9pbnQgW251bGxdIC0gVGhlIG5hbWUgb2YgdGhlIGJyZWFrcG9pbnQgc2l6ZSBpbiB5b3VyIGd1dHRlcnMgbWFwIHRvIGdldCB0aGUgc2l6ZSBmcm9tLiBJZiBgYXV0b2AsIHJldHVybnMgdGhlIHJlc3BvbnNpdmUgZ3V0dGVycyBtYXAgYCRndXR0ZXJzYC4gSWYgdXNpbmcgd2l0aCB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdGhpcyB3aWxsIGJlIHNldCBhdXRvbWF0aWNhbGx5IHVubGVzcyBtYW51YWxseSBlbnRlcmVkLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcnxNYXB9IFRoZSBjZWxsIGd1dHRlciBzaXplIG9yIHRoZSByZXNwb25zaXZlIGd1dHRlcnMgbWFwLlxuQGZ1bmN0aW9uIHh5LWNlbGwtZ3V0dGVycyhcbiAgJGd1dHRlcnM6ICRncmlkLW1hcmdpbi1ndXR0ZXJzLFxuICAkYnJlYWtwb2ludDogbnVsbFxuKSB7XG4gIC8vIEZvciBgYXV0b2AsIHJldHVybnMgdGhlIHJlc3BvbnNpdmUgbWFwIGAkZ3V0dGVyc2AuXG4gIEBpZiAoJGJyZWFrcG9pbnQgPT0gJ2F1dG8nKSB7XG4gICAgQHJldHVybiAkZ3V0dGVycztcbiAgfVxuXG4gIC8vIFVzZSB0aGUgY29udGV4dHVhbCBicmVha3BvaW50IGJ5IGRlZmF1bHQuXG4gICRicmVha3BvaW50OiAtemYtY3VycmVudC1icmVha3BvaW50KCRicmVha3BvaW50KTtcblxuICBAaWYgKCRicmVha3BvaW50KSB7XG4gICAgQHJldHVybiAtemYtZ2V0LWJwLXZhbCgkZ3V0dGVycywgJGJyZWFrcG9pbnQpO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAcmV0dXJuIC16Zi1nZXQtYnAtdmFsKCRndXR0ZXJzLCAkLXpmLXplcm8tYnJlYWtwb2ludCkgb3IgMDtcbiAgfVxufVxuXG4vLy8gUmV0dXJucyB0aGUgcGVyY2VudGFnZSBzaXplIG9mIGEgY2VsbC5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRzaXplIFskZ3JpZC1jb2x1bW5zXSAtIFNpemUgdG8gbWFrZSB0aGUgY2VsbC4gWW91IGNhbiBwYXNzIGEgdmFsdWUgaW4gbXVsdGlwbGUgZm9ybWF0cywgc3VjaCBhcyBgNmAsIGA1MCVgLCBgMSBvZiAyYCBvciBgMS8zYC5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IFNpemUgb2YgdGhlIGNlbGwgKGluIHBlcmNlbnQpLlxuQGZ1bmN0aW9uIHh5LWNlbGwtc2l6ZShcbiAgJHNpemU6ICRncmlkLWNvbHVtbnNcbikge1xuICBAcmV0dXJuIGZyYWN0aW9uLXRvLXBlcmNlbnRhZ2UoJHNpemUsICRkZW5vbWluYXRvcjogJGdyaWQtY29sdW1ucyk7XG59XG5cbi8vLyBSZXR1cm5zIHRoZSBhcHByb3ByaWF0ZSBDU1MgdmFsdWUgZm9yIGEgY2VsbCBzaXplLlxuLy8vXG4vLy8gR3V0dGVycy1yZWxhdGVkIGFyZ3VtZW50cyBhcmUgcmVxdWlyZWQgZm9yIGNlbGxzIHdpdGggbWFyZ2luIGd1dHRlcnMgKGJ5IGRlZmF1bHQpIGFzIHRoZSBndXR0ZXIgaXMgaW5jbHVkZWQgaW4gdGhlIHdpZHRoLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHNpemUgW2Z1bGxdIC0gVGhlIHNpemUgb2YgeW91ciBjZWxsLiBDYW4gYmUgYGZ1bGxgLCBgYXV0b2AsIGBzaHJpbmtgIG9yIGFueSBmcmFjdGlvbiBsaWtlIGA2YCwgYDUwJWAsIGAxIG9mIDJgIG9yIGAxLzJgLlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLW1hcmdpbi1ndXR0ZXJzXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgZm9yIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZ3V0dGVyLXR5cGUgW21hcmdpbl0gLSBUeXBlIG9mIGd1dHRlciB0byBvdXRwdXQuIEFjY2VwdHMgYG1hcmdpbmAsIGBwYWRkaW5nYCBvciBgbm9uZWAuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRicmVha3BvaW50IFtudWxsXSAtIFRoZSBuYW1lIG9mIHRoZSBicmVha3BvaW50IHNpemUgaW4geW91ciBndXR0ZXJzIG1hcCB0byBnZXQgdGhlIHNpemUgZnJvbS4gSWYgYGF1dG9gLCByZXR1cm5zIGEgbWFwIG9mIHNpemVzIGFkYXB0ZWQgdG8gcmVzcG9uc2l2ZSBndXR0ZXJzLiBJZiB1c2luZyB3aXRoIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0aGlzIHdpbGwgYmUgc2V0IGF1dG9tYXRpY2FsbHkgdW5sZXNzIG1hbnVhbGx5IGVudGVyZWQuXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfFN0cmluZ3xNYXB9IFRoZSBjZWxsIHNpemluZyBwcm9wZXJ0eSB2YWx1ZSwgb3IgYSByZXNwb25zaXZlIG1hcCBvZiB0aGVtLlxuQGZ1bmN0aW9uIHh5LWNlbGwtc2l6ZS1jc3MoXG4gICRzaXplOiBmdWxsLFxuICAkZ3V0dGVyczogJGdyaWQtbWFyZ2luLWd1dHRlcnMsXG4gICRndXR0ZXItdHlwZTogbWFyZ2luLFxuICAkYnJlYWtwb2ludDogbnVsbFxuKSB7XG4gICRtYXJnaW4tZ3V0dGVyOiAwO1xuXG4gIEBpZiAoJHNpemUgPT0gJ2F1dG8nIG9yICRzaXplID09ICdzaHJpbmsnKSB7XG4gICAgQHJldHVybiBhdXRvO1xuICB9XG5cbiAgLy8gRm9yIGNlbGxzIHdpdGggbWFyZ2luIGd1dHRlcnMsIHRoZSBndXR0ZXIgaXMgaW5jbHVkZWQgaW4gdGhlIHdpZHRoLlxuICBAaWYgKCRndXR0ZXItdHlwZSA9PSAnbWFyZ2luJykge1xuICAgICRtYXJnaW4tZ3V0dGVyOiB4eS1jZWxsLWd1dHRlcnMoJGd1dHRlcnMsICRicmVha3BvaW50KTtcbiAgICBAaWYgKCRtYXJnaW4tZ3V0dGVyID09IG51bGwpIHtcbiAgICAgIEBlcnJvciAneHktY2VsbC1zaXplOiBubyBndXR0ZXJzIHdlcmUgZm91bmQgaW4gYCRndXR0ZXJzYCBmb3IgXCIkYnJlYWtwb2ludDogI3skYnJlYWtwb2ludH1cIic7XG4gICAgfVxuICB9XG5cbiAgLy8gQ2FsY3VsYXRlIHRoZSBjZWxsIHNpemUgKG51bWJlcilcbiAgJHNpemUtcmF3OiBpZigkc2l6ZSA9PSAnZnVsbCcsIDEwMCUsIHh5LWNlbGwtc2l6ZSgkc2l6ZSkpO1xuXG4gIC8vIENhbGN1bGF0ZSB0aGUgY2VsbCBDU1Mgc2l6ZSBpbmNsdWRpbmcgZ3V0dGVycyAoc3RyaW5nKVxuICAvLyBJZiB0aGUgY2VsbCBoYXMgcmVzcG9uc2l2ZSBtYXJnaW4gZ3V0dGVycywgcmV0dXJuIGEgcmVzcG9uc2l2ZSBtYXAgb2Ygc2l6ZXMuXG4gIEBpZiB0eXBlLW9mKCRtYXJnaW4tZ3V0dGVyKSA9PSAnbWFwJyB7XG4gICAgJHJlc3BvbnNpdmUtY3NzLXNpemVzOiAoKTtcblxuICAgIEBlYWNoICRicCwgJG1nIGluICRtYXJnaW4tZ3V0dGVyIHtcbiAgICAgICRtZ2M6IHJlbS1jYWxjKCRtZyk7XG4gICAgICBAaWYgJG1nYyA9PSAwIHtcbiAgICAgICAgJG1nYzogMHJlbTtcbiAgICAgIH1cbiAgICAgICRzaXplLWNzczogaWYoJG1nID09IDAsICRzaXplLXJhdywgY2FsYygjeyRzaXplLXJhd30gLSAjeyRtZ30pKTtcbiAgICAgICRyZXNwb25zaXZlLWNzcy1zaXplczogbWFwLW1lcmdlKCRyZXNwb25zaXZlLWNzcy1zaXplcywgKCRicDogJHNpemUtY3NzKSk7XG4gICAgfVxuXG4gICAgQHJldHVybiAkcmVzcG9uc2l2ZS1jc3Mtc2l6ZXM7XG4gIH1cbiAgLy8gT3RoZXJ3aXNlLCByZXR1cm4gYSBzaW5nbGUgQ1NTIHNpemUuXG4gIEBlbHNlIHtcbiAgICAvLyBNYWtlIHN1cmUgdGhhdCAwIGlzIHRyYW5zbGF0ZWQgaW4gMHJlbSBmb3IgY2FsYygpXG4gICAgJG1nYzogcmVtLWNhbGMoJG1hcmdpbi1ndXR0ZXIpO1xuICAgIEBpZiAkbWdjID09IDAge1xuICAgICAgJG1nYzogMHJlbTtcbiAgICB9XG4gICAgJGNzcy1zaXplOiBpZigkbWFyZ2luLWd1dHRlciA9PSAwLCAkc2l6ZS1yYXcsIGNhbGMoI3skc2l6ZS1yYXd9IC0gI3skbWdjfSkpO1xuICAgIEByZXR1cm4gJGNzcy1zaXplO1xuICB9XG59XG5cbi8vLyBTZXRzIGJhc2UgZmxleCBwcm9wZXJ0aWVzIGZvciBjZWxscy5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgW2Z1bGxdIC0gVGhlIHNpemUgb2YgeW91ciBjZWxsLiBBY2NlcHRzIGBmdWxsYCwgYGF1dG9gLCBgc2hyaW5rYCwgYGdyb3dgLCBvciBhbnkgb3RoZXIgdmFsdWUgcmVwcmVzZW50aW5nIGEgY2VsbCBzaXplIChpdCB3aWxsIGJlIHRyZWF0ZWQgYXMgYHNocmlua2ApLlxuQG1peGluIHh5LWNlbGwtYmFzZSgkc2l6ZTogZnVsbCkge1xuICAkYmFzZTogeHktY2VsbC1iYXNlKCRzaXplKTtcblxuICBmbGV4OiAjeyRiYXNlfTtcblxuICAvLyBTZXQgYmFzZSBzdHlsZXMgZm9yIFwiZnVsbFwiIG9ubHlcbiAgQGlmKCRzaXplID09ICdmdWxsJykge1xuICAgIG1pbi1oZWlnaHQ6IDA7XG4gICAgbWluLXdpZHRoOiAwO1xuICB9XG59XG5cbi8vLyBSZXNldHMgYSBjZWxscyB3aWR0aCAob3IgaGVpZ2h0IGlmIHZlcnRpY2FsIGlzIHRydWUpIGFzIHdlbGwgYXMgc3RyaXBzIGl0cyBndXR0ZXJzLlxuLy8vXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkdmVydGljYWwgW2ZhbHNlXSAtIFNldCB0byB0cnVlIHRvIG91dHB1dCB2ZXJ0aWNhbCAoaGVpZ2h0KSBzdHlsZXMgcmF0aGVyIHRoYW4gd2lkdGhzLlxuQG1peGluIHh5LWNlbGwtcmVzZXQoJHZlcnRpY2FsOiB0cnVlKSB7XG4gICRkaXJlY3Rpb246IGlmKCR2ZXJ0aWNhbCA9PSB0cnVlLCBoZWlnaHQsIHdpZHRoKTtcbiAgI3skZGlyZWN0aW9ufTogYXV0bztcbiAgbWF4LSN7JGRpcmVjdGlvbn06IG5vbmU7XG59XG5cbi8vLyBTZXRzIHNpemluZyBwcm9wZXJ0aWVzIGZvciBjZWxscy5cbi8vL1xuLy8vIEd1dHRlcnMtcmVsYXRlZCBhcmd1bWVudHMgYXJlIHJlcXVpcmVkIGZvciBjZWxscyB3aXRoIG1hcmdpbiBndXR0ZXJzIChieSBkZWZhdWx0KSBhcyB0aGUgZ3V0dGVyIGlzIGluY2x1ZGVkIGluIHRoZSB3aWR0aC5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICRzaXplIFtmdWxsXSAtIFRoZSBzaXplIG9mIHlvdXIgY2VsbC4gQ2FuIGJlIGBmdWxsYCAoMTAwJSB3aWR0aCksIGBhdXRvYCAodXNlIGFsbCBhdmFpbGFibGUgc3BhY2UpLCBgc2hyaW5rYCAodXNlIG9ubHkgdGhlIHJlcXVpcmVkIHNwYWNlKSBvciBhbnkgZnJhY3Rpb24gKGA2YCwgYDUwJWAsIGAxIG9mIDJgIG9yIGAxLzJgLi4uKS5cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1tYXJnaW4tZ3V0dGVyc10gLSBNYXAgb3Igc2luZ2xlIHZhbHVlIGZvciBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGd1dHRlci10eXBlIFttYXJnaW5dIC0gVHlwZSBvZiBndXR0ZXIgdG8gb3V0cHV0LiBBY2NlcHRzIGBtYXJnaW5gLCBgcGFkZGluZ2Agb3IgYG5vbmVgLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkYnJlYWtwb2ludCBbbnVsbF0gLSBUaGUgbmFtZSBvZiB0aGUgYnJlYWtwb2ludCBzaXplIGluIHlvdXIgZ3V0dGVycyBtYXAgdG8gZ2V0IHRoZSBzaXplIGZyb20uIElmIGBhdXRvYCwgZ2VuZXJhdGVzIHNpemVzIGFkYXB0ZWQgZm9yIHJlc3BvbnNpdmUgZ3V0dGVycy4gSWYgdXNpbmcgd2l0aCB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdGhpcyB3aWxsIGJlIHNldCBhdXRvbWF0aWNhbGx5IHVubGVzcyBtYW51YWxseSBlbnRlcmVkLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHZlcnRpY2FsIFtmYWxzZV0gLSBTZXQgdG8gdHJ1ZSB0byBvdXRwdXQgdmVydGljYWwgKGhlaWdodCkgc3R5bGVzIHJhdGhlciB0aGFuIHdpZHRocy5cbkBtaXhpbiB4eS1jZWxsLXNpemUoXG4gICRzaXplOiBmdWxsLFxuICAkZ3V0dGVyczogJGdyaWQtbWFyZ2luLWd1dHRlcnMsXG4gICRndXR0ZXItdHlwZTogbWFyZ2luLFxuICAkYnJlYWtwb2ludDogbnVsbCxcbiAgJHZlcnRpY2FsOiBmYWxzZVxuKSB7XG4gICRzaXplczogeHktY2VsbC1zaXplLWNzcygkc2l6ZSwgJGd1dHRlcnMsICRndXR0ZXItdHlwZSwgJGJyZWFrcG9pbnQpO1xuICAkZGlyZWN0aW9uOiBpZigkdmVydGljYWwgPT0gdHJ1ZSwgaGVpZ2h0LCB3aWR0aCk7XG5cbiAgQGlmICh0eXBlLW9mKCRzaXplcykgPT0gJ21hcCcpIHtcbiAgICBAaW5jbHVkZSAtemYtYnJlYWtwb2ludC12YWx1ZShhdXRvLCAkc2l6ZXMpIHtcbiAgICAgICN7JGRpcmVjdGlvbn06ICQtemYtYnAtdmFsdWU7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAjeyRkaXJlY3Rpb259OiAkc2l6ZXM7XG4gIH1cbn1cblxuLy8vIFNldHMgZ3V0dGVycyBwcm9wZXJ0aWVzIGZvciBjZWxscy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLW1hcmdpbi1ndXR0ZXJzXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgZm9yIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZ3V0dGVyLXR5cGUgW21hcmdpbl0gLSBUeXBlIG9mIGd1dHRlciB0byBvdXRwdXQuIEFjY2VwdHMgYG1hcmdpbmAsIGBwYWRkaW5nYCBvciBgbm9uZWAuXG4vLy8gQHBhcmFtIHtMaXN0fSAkZ3V0dGVyLXBvc2l0aW9uIFtudWxsXSAtIFRoZSBwb3NpdGlvbiB0byBhcHBseSBndXR0ZXJzIHRvLiBBY2NlcHRzIGB0b3BgLCBgYm90dG9tYCwgYGxlZnRgLCBgcmlnaHRgIGluIGFueSBjb21iaW5hdGlvbi4gQnkgZGVmYXVsdCBgcmlnaHQgbGVmdGAgZm9yIGhvcml6b250YWwgY2VsbHMgYW5kIGB0b3AgYm90dG9tYCBmb3IgdmVydGljYWwgY2VsbHMuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRicmVha3BvaW50IFtudWxsXSAtIFRoZSBuYW1lIG9mIHRoZSBicmVha3BvaW50IHNpemUgaW4geW91ciBndXR0ZXJzIG1hcCB0byBnZXQgdGhlIHNpemUgZnJvbS4gSWYgYGF1dG9gLCBnZW5lcmF0ZXMgcmVzcG9uc2l2ZSBndXR0ZXJzLiBJZiB1c2luZyB3aXRoIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0aGlzIHdpbGwgYmUgc2V0IGF1dG9tYXRpY2FsbHkgdW5sZXNzIG1hbnVhbGx5IGVudGVyZWQuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkdmVydGljYWwgW2ZhbHNlXSAtIERpcmVjdGlvbiBvZiB0aGUgZ3V0dGVycyB0byBvdXRwdXQuIFNlZSBgJGd1dHRlci1wb3NpdGlvbmAuXG5AbWl4aW4geHktY2VsbC1ndXR0ZXJzKFxuICAkZ3V0dGVyczogJGdyaWQtbWFyZ2luLWd1dHRlcnMsXG4gICRndXR0ZXItdHlwZTogbWFyZ2luLFxuICAkZ3V0dGVyLXBvc2l0aW9uOiBudWxsLFxuICAkYnJlYWtwb2ludDogbnVsbCxcbiAgJHZlcnRpY2FsOiBmYWxzZVxuKSB7XG4gIC8vIEdldCB0aGUgZGVmYXVsdCBndXR0ZXIgcG9zaXRpb24gYWNjb3JkaW5nIHRvIGNlbGwgZGlyZWN0aW9uXG4gIEBpZigkZ3V0dGVyLXBvc2l0aW9uID09IG51bGwpIHtcbiAgICAkZ3V0dGVyLXBvc2l0aW9uOiBpZigkdmVydGljYWwgPT0gdHJ1ZSwgdG9wIGJvdHRvbSwgbGVmdCByaWdodCk7XG4gIH1cblxuICAvLyBHZXQgdGhlIGd1dHRlciB3aWR0aCBmb3IgdGhpcyBicmVha3BvaW50XG4gICRndXR0ZXItd2lkdGg6IHh5LWNlbGwtZ3V0dGVycygkZ3V0dGVycywgJGJyZWFrcG9pbnQpO1xuICBAaWYgKCRndXR0ZXItd2lkdGggPT0gbnVsbCkge1xuICAgIEBlcnJvciAneHktY2VsbC1ndXR0ZXJzOiBubyBndXR0ZXJzIHdlcmUgZm91bmQgaW4gYCRndXR0ZXJzYCBmb3IgXCIkYnJlYWtwb2ludDogI3skYnJlYWtwb2ludH1cIic7XG4gIH1cblxuICBAaWYgKCRndXR0ZXItdHlwZSBhbmQgJGd1dHRlci10eXBlICE9IG5vbmUpIHtcbiAgICBAaW5jbHVkZSB4eS1ndXR0ZXJzKCRndXR0ZXItd2lkdGgsICRndXR0ZXItdHlwZSwgJGd1dHRlci1wb3NpdGlvbik7XG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBjZWxsIGZvciB5b3VyIGdyaWQuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkc2l6ZSBbZnVsbF0gLSBUaGUgc2l6ZSBvZiB5b3VyIGNlbGwuIENhbiBiZSBgZnVsbGAgKDEwMCUgd2lkdGgpLCBgYXV0b2AgKHVzZSBhbGwgYXZhaWxhYmxlIHNwYWNlKSwgYHNocmlua2AgKHVzZSBvbmx5IHRoZSByZXF1aXJlZCBzcGFjZSkgb3IgYW55IGZyYWN0aW9uIChgNmAsIGA1MCVgLCBgMSBvZiAyYCBvciBgMS8yYC4uLikuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZ3V0dGVyLW91dHB1dCBbbnVsbF0gLSBbREVQUkVDQVRFRF0gV2hldGhlciBvciBub3QgdG8gb3V0cHV0IGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtbWFyZ2luLWd1dHRlcnNdIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSBmb3IgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRndXR0ZXItdHlwZSBbbWFyZ2luXSAtIFR5cGUgb2YgZ3V0dGVyIHRvIG91dHB1dC4gQWNjZXB0cyBgbWFyZ2luYCwgYHBhZGRpbmdgIG9yIGBub25lYC5cbi8vLyBAcGFyYW0ge0xpc3R9ICRndXR0ZXItcG9zaXRpb24gW251bGxdIC0gVGhlIHBvc2l0aW9uIHRvIGFwcGx5IGd1dHRlcnMgdG8uIEFjY2VwdHMgYHRvcGAsIGBib3R0b21gLCBgbGVmdGAsIGByaWdodGAgaW4gYW55IGNvbWJpbmF0aW9uLiBCeSBkZWZhdWx0IGByaWdodCBsZWZ0YCBmb3IgaG9yaXpvbnRhbCBjZWxscyBhbmQgYHRvcCBib3R0b21gIGZvciB2ZXJ0aWNhbCBjZWxscy5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGJyZWFrcG9pbnQgW251bGxdIC0gVGhlIG5hbWUgb2YgdGhlIGJyZWFrcG9pbnQgc2l6ZSBpbiB5b3VyIGd1dHRlcnMgbWFwIHRvIGdldCB0aGUgc2l6ZSBmcm9tLiBJZiBgYXV0b2AsIGdlbmVyYXRlcyByZXNwb25zaXZlIGd1dHRlcnMuIElmIHVzaW5nIHdpdGggdGhlIGBicmVha3BvaW50KClgIG1peGluIHRoaXMgd2lsbCBiZSBzZXQgYXV0b21hdGljYWxseSB1bmxlc3MgbWFudWFsbHkgZW50ZXJlZC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICR2ZXJ0aWNhbCBbZmFsc2VdIC0gU2V0IHRvIHRydWUgdG8gb3V0cHV0IHZlcnRpY2FsIChoZWlnaHQpIHN0eWxlcyByYXRoZXIgdGhhbiB3aWR0aHMuXG4vLy8gQHBhcmFtIHtMaXN0fSAkb3V0cHV0IFsoYmFzZSBzaXplIGd1dHRlcnMpXSAtIENlbGwgcGFydHMgdG8gb3V0cHV0LiBZb3Ugd2lsbCBuZWVkIHRvIGdlbmVyYXRlIG90aGVycyBwYXJ0cyBvZiB0aGUgY2VsbCBzZXBlcmF0ZWx5LCBpdCBtYXkgbm90IHdvcmsgcHJvcGVybHkgb3RoZXJ3aXNlLlxuQG1peGluIHh5LWNlbGwoXG4gICRzaXplOiBmdWxsLFxuICAkZ3V0dGVyLW91dHB1dDogbnVsbCxcbiAgJGd1dHRlcnM6ICRncmlkLW1hcmdpbi1ndXR0ZXJzLFxuICAkZ3V0dGVyLXR5cGU6IG1hcmdpbixcbiAgJGd1dHRlci1wb3NpdGlvbjogbnVsbCxcbiAgJGJyZWFrcG9pbnQ6IG51bGwsXG4gICR2ZXJ0aWNhbDogZmFsc2UsXG4gICRvdXRwdXQ6IChiYXNlIHNpemUgZ3V0dGVycylcbikge1xuICAvLyBEZWZhdWx0IGZvciAkZ3V0dGVyLW91dHB1dFxuICBAaWYgKCRndXR0ZXItb3V0cHV0ICE9IG51bGwpIHtcbiAgICBAd2FybiAneHktY2VsbDogJGd1dHRlci1vdXRwdXQgaXMgZGVwcmVjYXRlZCBhbmQgd2lsbCBiZSByZW1vdmVkLiBTZWUgbWlncmF0aW9uIG5vdGVzIGF0IGh0dHBzOi8vZ2l0LmlvL2ZvdW5kYXRpb24tNi02LTAnO1xuICAgIEBpZiAoJGd1dHRlci1vdXRwdXQgPT0gZmFsc2UpIHtcbiAgICAgICRvdXRwdXQ6IHNsLXJlbW92ZSgkb3V0cHV0LCBndXR0ZXJzKTtcbiAgICB9XG4gIH1cblxuICBAaWYgKGluZGV4KCRvdXRwdXQsIGJhc2UpKSB7XG4gICAgQGluY2x1ZGUgeHktY2VsbC1iYXNlKCRzaXplKTtcbiAgfVxuICBAaWYgKGluZGV4KCRvdXRwdXQsIHNpemUpKSB7XG4gICAgQGluY2x1ZGUgeHktY2VsbC1zaXplKCRzaXplLCAkZ3V0dGVycywgJGd1dHRlci10eXBlLCAkYnJlYWtwb2ludCwgJHZlcnRpY2FsKTtcbiAgfVxuICBAaWYgKGluZGV4KCRvdXRwdXQsIGd1dHRlcnMpKSB7XG4gICAgQGluY2x1ZGUgeHktY2VsbC1ndXR0ZXJzKCRndXR0ZXJzLCAkZ3V0dGVyLXR5cGUsICRndXR0ZXItcG9zaXRpb24sICRicmVha3BvaW50LCAkdmVydGljYWwpO1xuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgc2luZ2xlIGJyZWFrcG9pbnQgc2l6ZWQgZ3JpZC4gVXNlZCB0byBnZW5lcmF0ZSBvdXIgZ3JpZCBjbGFzc2VzLlxuLy8vXG4vLy8gYHh5LWNlbGwtc3RhdGljKClgIGlzIGRlcHJlY2F0ZWQgYW5kIHdpbGwgYmUgcmVtb3ZlZC5cbi8vLyBVc2UgYHh5LWNlbGwoKWAgaW5zdGVhZCB3aXRoIGAkb3V0cHV0OiAoc2l6ZSBndXR0ZXJzKWAgdG8gbm90IGdlbmVyYXRlIHRoZSBjZWxsIGJhc2UuXG4vLy8gU2VlIG1pZ3JhdGlvbiBub3RlcyBhdCBodHRwczovL2dpdC5pby9mb3VuZGF0aW9uLTYtNi0wXG4vLy9cbi8vLyBAZGVwcmVjYXRlZCB2Ni42LjBcbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICRzaXplIFtmdWxsXSAtIFRoZSBzaXplIG9mIHlvdXIgY2VsbC4gQ2FuIGJlIGBmdWxsYCAoMTAwJSB3aWR0aCksIGBhdXRvYCAodXNlIGFsbCBhdmFpbGFibGUgc3BhY2UpLCBgc2hyaW5rYCAodXNlIG9ubHkgdGhlIHJlcXVpcmVkIHNwYWNlKSBvciBhbnkgZnJhY3Rpb24gKGA2YCwgYDUwJWAsIGAxIG9mIDJgIG9yIGAxLzJgLi4uKS5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRndXR0ZXItb3V0cHV0IFt0cnVlXSAtIFdoZXRoZXIgb3Igbm90IHRvIG91dHB1dCBndXR0ZXJzLiBBbHdheXMgYHRydWVgIGZvciBtYXJnaW4gZ3V0dGVycy5cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1tYXJnaW4tZ3V0dGVyc10gLSBNYXAgb3Igc2luZ2xlIHZhbHVlIGZvciBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGd1dHRlci10eXBlIFttYXJnaW5dIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSBmb3IgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGJyZWFrcG9pbnQgW251bGxdIC0gVGhlIG5hbWUgb2YgdGhlIGJyZWFrcG9pbnQgc2l6ZSBpbiB5b3VyIGd1dHRlcnMgbWFwIHRvIGdldCB0aGUgc2l6ZSBmcm9tLiBJZiB1c2luZyB3aXRoIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0aGlzIHdpbGwgYmUgc2V0IGF1dG9tYXRpY2FsbHkgdW5sZXNzIG1hbnVhbGx5IGVudGVyZWQuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkdmVydGljYWwgW2ZhbHNlXSAtIFNldCB0byB0cnVlIHRvIG91dHB1dCB2ZXJ0aWNhbCAoaGVpZ2h0KSBzdHlsZXMgcmF0aGVyIHRoYW4gd2lkdGhzLlxuQG1peGluIHh5LWNlbGwtc3RhdGljKFxuICAkc2l6ZTogZnVsbCxcbiAgJGd1dHRlci1vdXRwdXQ6IHRydWUsXG4gICRndXR0ZXJzOiAkZ3JpZC1tYXJnaW4tZ3V0dGVycyxcbiAgJGd1dHRlci10eXBlOiBtYXJnaW4sXG4gICRicmVha3BvaW50OiAkLXpmLXplcm8tYnJlYWtwb2ludCxcbiAgJHZlcnRpY2FsOiBmYWxzZVxuKSB7XG4gIEB3YXJuICd4eS1jZWxsLXN0YXRpYygpIG1peGluIGlzIGRlcHJlY2F0ZWQgYW5kIHdpbGwgYmUgcmVtb3ZlZC4gVXNlIFwieHktY2VsbCgpXCIgaW5zdGVhZC4gU2VlIG1pZ3JhdGlvbiBub3RlcyBhdCBodHRwczovL2dpdC5pby9mb3VuZGF0aW9uLTYtNi0wJztcblxuICAkZ3V0dGVyOiAtemYtZ2V0LWJwLXZhbCgkZ3V0dGVycywgJGJyZWFrcG9pbnQpO1xuICAkZ3V0dGVyLXBvc2l0aW9uOiBpZigkdmVydGljYWwgPT0gdHJ1ZSwgdG9wIGJvdHRvbSwgbGVmdCByaWdodCk7XG5cbiAgJC1ndXR0ZXItb3V0cHV0OiBpZigkZ3V0dGVyLXR5cGUgPT0gJ21hcmdpbicsIHRydWUsICRndXR0ZXItb3V0cHV0KTtcbiAgJC1ndXR0ZXItbWFyZ2luOiBpZigkZ3V0dGVyLXR5cGUgPT0gJ21hcmdpbicsICRndXR0ZXIsIDApO1xuXG4gIEBpbmNsdWRlIC14eS1jZWxsLXByb3BlcnRpZXMoJHNpemUsICQtZ3V0dGVyLW1hcmdpbiwgJHZlcnRpY2FsKTtcbiAgQGlmICgkLWd1dHRlci1vdXRwdXQpIHtcbiAgICBAaW5jbHVkZSB4eS1ndXR0ZXJzKCRndXR0ZXIsICRndXR0ZXItdHlwZSwgJGd1dHRlci1wb3NpdGlvbik7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBicmVha3BvaW50c1xuLy8vL1xuXG4vLy8gUGF0Y2ggdG8gZml4IGlzc3VlICMxMjA4MFxuJC16Zi1zaXplOiBudWxsO1xuXG4vLy8gQSBsaXN0IG9mIG5hbWVkIGJyZWFrcG9pbnRzLiBZb3UgY2FuIHVzZSB0aGVzZSB3aXRoIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0byBxdWlja2x5IGNyZWF0ZSBtZWRpYSBxdWVyaWVzLlxuLy8vIEB0eXBlIE1hcFxuJGJyZWFrcG9pbnRzOiAoXG4gIFwic21hbGxcIjogMCxcbiAgXCJtZWRpdW1cIjogJG1lZGl1bS1icmVha3BvaW50LFxuICBcImxhcmdlXCI6ICRsYXJnZS1icmVha3BvaW50LFxuICBcInhsYXJnZVwiOiAxNjAwcHgsXG4gIFwieHhsYXJnZVwiOiAxOTIwcHgsXG4pICFkZWZhdWx0O1xuXG4vLy8gQSBsaXN0IG9mIG5hbWVkIEhpRFBJIGJyZWFrcG9pbnRzLiBZb3UgY2FuIHVzZSB0aGVzZSB3aXRoIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0byBxdWlja2x5IGNyZWF0ZSBtZWRpYSBxdWVyaWVzIGZvciByZXNvbHV0aW9ucy5cbi8vLyBWYWx1ZXMgbXVzdCByZXByZXNlbnQgdGhlIGRldmljZSBwaXhlbHMgLyB3ZWIgcGl4ZWxzIHJhdGlvbiBhbmQgYmUgdW5pdGxlc3Mgb3IgaW4gRFBQWC5cbi8vLyBAdHlwZSBNYXBcbiRicmVha3BvaW50cy1oaWRwaTogKFxuICBcImhpZHBpLTFcIjogMSxcbiAgXCJoaWRwaS0xLTVcIjogMS41LFxuICBcImhpZHBpLTJcIjogMixcbiAgXCJyZXRpbmFcIjogMixcbiAgXCJoaWRwaS0zXCI6IDMsXG4pICFkZWZhdWx0O1xuXG4vLy8gVGhlIGxhcmdlc3QgbmFtZWQgYnJlYWtwb2ludCBpbiB3aGljaCB0byBpbmNsdWRlIHByaW50IGFzIGEgbWVkaWEgdHlwZVxuLy8vIEB0eXBlIEtleXdvcmRcbiRwcmludC1icmVha3BvaW50OiBsYXJnZSAhZGVmYXVsdDtcblxuJC16Zi16ZXJvLWJyZWFrcG9pbnQ6IHNtYWxsICFkZWZhdWx0O1xuXG4kLXpmLWJyZWFrcG9pbnRzLWtleXM6IG1hcC10by1saXN0KCRicmVha3BvaW50cywgXCJrZXlzXCIpO1xuXG5AaWYgbnRoKG1hcC12YWx1ZXMoJGJyZWFrcG9pbnRzKSwgMSkgIT0gMCB7XG4gIEBlcnJvciAnVGhlIGZpcnN0IGtleSBpbiB0aGUgJGJyZWFrcG9pbnRzIG1hcCBtdXN0IGhhdmUgYSB2YWx1ZSBvZiBcIjBcIi4nO1xufSBAZWxzZSB7XG4gICQtemYtemVyby1icmVha3BvaW50OiBudGgobWFwLWtleXMoJGJyZWFrcG9pbnRzKSwgMSk7XG59XG5cbi8vLyBBbGwgb2YgdGhlIG5hbWVzIGluIHRoaXMgbGlzdCB3aWxsIGJlIG91dHB1dCBhcyBjbGFzc2VzIGluIHlvdXIgQ1NTLCBsaWtlIGAuc21hbGwtMTJgLCBgLm1lZGl1bS02YCwgYW5kIHNvIG9uLiBFYWNoIHZhbHVlIGluIHRoaXMgbGlzdCBtdXN0IGFsc28gYmUgaW4gdGhlIGAkYnJlYWtwb2ludHNgIG1hcC5cbi8vLyBAdHlwZSBMaXN0XG4kYnJlYWtwb2ludC1jbGFzc2VzOiAoc21hbGwgbWVkaXVtIGxhcmdlKSAhZGVmYXVsdDtcblxuLy8vIEdlbmVyYXRlcyBhIG1lZGlhIHF1ZXJ5IHN0cmluZyBtYXRjaGluZyB0aGUgaW5wdXQgdmFsdWUuIFJlZmVyIHRvIHRoZSBkb2N1bWVudGF0aW9uIGZvciB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdG8gc2VlIHdoYXQgdGhlIHBvc3NpYmxlIGlucHV0cyBhcmUuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkdmFsIFtzbWFsbF0gLSBCcmVha3BvaW50IG5hbWUsIG9yIHB4LCByZW0sIG9yIGVtIHZhbHVlIHRvIHByb2Nlc3MuXG5AZnVuY3Rpb24gYnJlYWtwb2ludCgkdmFsOiAkLXpmLXplcm8tYnJlYWtwb2ludCkge1xuICAvLyBXZWIgc3RhbmRhcmQgUGl4ZWxzIHBlciBpbmNoLiAoMWRkcHggLyAkc3RkLXdlYi1kcGkpID0gMWRwaVxuICAvLyBTZWUgaHR0cHM6Ly93d3cudzMub3JnL1RSL2Nzcy12YWx1ZXMtMy8jYWJzb2x1dGUtbGVuZ3Roc1xuICAkc3RkLXdlYi1kcGk6IDk2O1xuXG4gIC8vIFNpemUgb3Iga2V5d29yZFxuICAkYnA6IG50aCgkdmFsLCAxKTtcbiAgLy8gVmFsdWUgb2YgdGhlIGZvbGxvd2luZyBicmVha3BvaW50XG4gICRicC1uZXh0OiBudWxsO1xuICAvLyBWYWx1ZSBmb3IgbWF4LXdpZHRoIG1lZGlhIHF1ZXJpZXNcbiAgJGJwLW1pbjogbnVsbDtcbiAgLy8gVmFsdWUgZm9yIG1pbi13aWR0aCBtZWRpYSBxdWVyaWVzXG4gICRicC1tYXg6IG51bGw7XG4gIC8vIERpcmVjdGlvbiBvZiBtZWRpYSBxdWVyeSAodXAsIGRvd24sIG9yIG9ubHkpXG4gICRkaXI6IGlmKGxlbmd0aCgkdmFsKSA+IDEsIG50aCgkdmFsLCAyKSwgdXApO1xuICAvLyBJZiBuYW1lZCwgbmFtZSBvZiB0aGUgYnJlYWtwb2ludFxuICAkbmFtZTogbnVsbDtcbiAgLy8gSWYgdGhlIGJyZWFrcG9pbnQgaXMgYSBIaURQSSBicmVha3BvaW50XG4gICRoaWRwaTogZmFsc2U7XG5cbiAgLy8gT3JpZW50YXRpb24gbWVkaWEgcXVlcmllcyBoYXZlIGEgdW5pcXVlIHN5bnRheFxuICBAaWYgJGJwID09IFwibGFuZHNjYXBlXCIgb3IgJGJwID09IFwicG9ydHJhaXRcIiB7XG4gICAgQHJldHVybiBcIihvcmllbnRhdGlvbjogI3skYnB9KVwiO1xuICB9XG5cbiAgLy8gSWYgYSBicmVha3BvaW50IG5hbWUgaXMgZ2l2ZW4sIGdldCBpdHMgdmFsdWUgZnJvbSB0aGUgJGJyZWFrcG9pbnRzLyRicmVha3BvaW50cy1oaWRwaSBtYXAuXG4gIEBpZiB0eXBlLW9mKCRicCkgPT0gXCJzdHJpbmdcIiB7XG4gICAgQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgJGJwKSB7XG4gICAgICAkbmFtZTogJGJwO1xuICAgICAgJGJwOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJG5hbWUpO1xuICAgICAgJGJwLW5leHQ6IC16Zi1tYXAtbmV4dCgkYnJlYWtwb2ludHMsICRuYW1lKTtcbiAgICB9IEBlbHNlIGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cy1oaWRwaSwgJGJwKSB7XG4gICAgICAkbmFtZTogJGJwO1xuICAgICAgJGJwOiBtYXAtZ2V0KCRicmVha3BvaW50cy1oaWRwaSwgJG5hbWUpO1xuICAgICAgJGJwLW5leHQ6IC16Zi1tYXAtbmV4dC1udW1iZXIoJGJyZWFrcG9pbnRzLWhpZHBpLCAkYnApO1xuICAgICAgJGhpZHBpOiB0cnVlO1xuICAgIH0gQGVsc2Uge1xuICAgICAgJGJwOiAwO1xuICAgICAgQHdhcm4gJ2JyZWFrcG9pbnQoKTogXCIjeyR2YWx9XCIgaXMgbm90IGRlZmluZWQgaW4geW91ciBgJGJyZWFrcG9pbnRzYCBvciBgJGJyZWFrcG9pbnRzLWhpZHBpYCBzZXR0aW5nLic7XG4gICAgfVxuICB9XG5cbiAgQGlmIG5vdCAkbmFtZSBhbmQgJGRpciA9PSBcIm9ubHlcIiB7XG4gICAgQHdhcm4gJ2JyZWFrcG9pbnQoKTogT25seSBuYW1lZCBtZWRpYSBxdWVyaWVzIGNhbiBoYXZlIGFuIGBvbmx5YCByYW5nZS4nO1xuICAgIEByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIC8vIE9ubHkgJ29ubHknIGFuZCAndXAnIGhhdmUgYSBtaW4gbGltaXQuXG4gIEBpZiAkZGlyID09IFwib25seVwiIG9yICRkaXIgPT0gXCJ1cFwiIHtcbiAgICAkYnAtbWluOiBpZigkaGlkcGksIHN0cmlwLXVuaXQoJGJwKSwgLXpmLWJwLXRvLWVtKCRicCkpO1xuICB9XG4gIC8vIE9ubHkgJ29ubHknIGFuZCAnZG93bicgaGF2ZSBhIG1heCBsaW1pdC5cbiAgQGlmICRkaXIgPT0gXCJvbmx5XCIgb3IgJGRpciA9PSBcImRvd25cIiB7XG4gICAgLy8gSWYgdGhlIGJyZWFrcG9pbnQgaXMgYSB2YWx1ZSwgdXNlIGl0IGFzIG1heCBsaW1pdC5cbiAgICBAaWYgbm90ICRuYW1lIHtcbiAgICAgICRicC1tYXg6IGlmKCRoaWRwaSwgc3RyaXAtdW5pdCgkYnApLCAtemYtYnAtdG8tZW0oJGJwKSk7XG4gICAgfVxuICAgIC8vIElmIHRoZSBicmVha3BvaW50IGlzIG5hbWVkLCB0aGUgbWF4IGxpbWl0IGlzIHRoZSBmb2xsb3dpbmcgYnJlYWtwb2ludCAtIDFweC5cbiAgICBAZWxzZSBpZiAkYnAtbmV4dCB7XG4gICAgICAvLyBNYXggdmFsdWUgaXMgMC4ycHggdW5kZXIgdGhlIG5leHQgYnJlYWtwb2ludCAoMC4wMiAvIDE2ID0gMC4wMDEyNSkuXG4gICAgICAvLyBVc2UgYSBwcmVjaXNpb24gdW5kZXIgMXB4IHRvIHN1cHBvcnQgYnJvd3NlciB6b29tLCBidXQgbm90IHRvIGxvdyB0byBhdm9pZCByb3VuZGluZy5cbiAgICAgIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vZm91bmRhdGlvbi9mb3VuZGF0aW9uLXNpdGVzL2lzc3Vlcy8xMTMxM1xuICAgICAgJGJwLW1heDogaWYoJGhpZHBpLCAkYnAtbmV4dCAtIGRpdmlkZSgxLCAkc3RkLXdlYi1kcGkpLCAtemYtYnAtdG8tZW0oJGJwLW5leHQpIC0gMC4wMDEyNSk7XG4gICAgfVxuICB9XG5cbiAgLy8gR2VuZXJhdGUgdGhlIG1lZGlhIHF1ZXJ5IHN0cmluZyBmcm9tIG1pbiBhbmQgbWF4IGxpbWl0cy5cbiAgQGlmICRoaWRwaSB7XG4gICAgLy8gR2VuZXJhdGUgdmFsdWVzIGluIERQSSBpbnN0ZWFkIG9mIERQUFggZm9yIGFuIElFOS0xMS9PcGVyYSBtaW5pIGNvbXBhdGliaWxpdHkuXG4gICAgLy8gU2VlIGh0dHBzOi8vY2FuaXVzZS5jb20vI2ZlYXQ9Y3NzLW1lZGlhLXJlc29sdXRpb25cbiAgICAkYnAtbWluLWRwaTogaWYoJGJwLW1pbiwgJGJwLW1pbiAqICRzdGQtd2ViLWRwaSAqIDFkcGksICRicC1taW4pO1xuICAgICRicC1tYXgtZHBpOiBpZigkYnAtbWF4LCAkYnAtbWF4ICogJHN0ZC13ZWItZHBpICogMWRwaSwgJGJwLW1heCk7XG4gICAgQHJldHVybiB6Zi1zdHItam9pbihcbiAgICAgIC16Zi1icC1qb2luKCRicC1taW4sICRicC1tYXgsIFwiLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvXCIsIFwiLXdlYmtpdC1tYXgtZGV2aWNlLXBpeGVsLXJhdGlvXCIpLFxuICAgICAgLXpmLWJwLWpvaW4oJGJwLW1pbi1kcGksICRicC1tYXgtZHBpLCBcIm1pbi1yZXNvbHV0aW9uXCIsIFwibWF4LXJlc29sdXRpb25cIiksXG4gICAgICBcIiwgXCJcbiAgICApO1xuICB9IEBlbHNlIHtcbiAgICBAcmV0dXJuIC16Zi1icC1qb2luKCRicC1taW4sICRicC1tYXgpO1xuICB9XG59XG5cbi8vLyBXcmFwcyBhIG1lZGlhIHF1ZXJ5IGFyb3VuZCB0aGUgY29udGVudCB5b3UgcHV0IGluc2lkZSB0aGUgbWl4aW4uIFRoaXMgbWl4aW4gYWNjZXB0cyBhIG51bWJlciBvZiB2YWx1ZXM6XG4vLy8gIC0gSWYgYSBzdHJpbmcgaXMgcGFzc2VkLCB0aGUgbWl4aW4gd2lsbCBsb29rIGZvciBpdCBpbiB0aGUgYCRicmVha3BvaW50c2AgYW5kIGAkYnJlYWtwb2ludHMtaGlkcGlgIG1hcHMsIGFuZCB1c2UgYSBtZWRpYSBxdWVyeSB0aGVyZS5cbi8vLyAgLSBJZiBhIHBpeGVsIHZhbHVlIGlzIHBhc3NlZCwgaXQgd2lsbCBiZSBjb252ZXJ0ZWQgdG8gYW4gZW0gdmFsdWUgdXNpbmcgYCRnbG9iYWwtZm9udC1zaXplYCBhcyB0aGUgYmFzZS5cbi8vLyAgLSBJZiBhIHJlbSB2YWx1ZSBpcyBwYXNzZWQsIHRoZSB1bml0IHdpbGwgYmUgY2hhbmdlZCB0byBlbS5cbi8vLyAgLSBJZiBhbiBlbSB2YWx1ZSBpcyBwYXNzZWQsIHRoZSB2YWx1ZSB3aWxsIGJlIHVzZWQgYXMtaXMuXG4vLy9cbi8vLyBJZiBtdWx0aXBsZSB2YWx1ZXMgYXJlIHBhc3NlZCwgdGhlIG1peGluIHdpbGwgZ2VuZXJhdGUgYSBtZWRpYSBxdWVyeSBmb3IgZWFjaCBvZiB0aGVtIGFzIGRlc2NyaWJlZCBhYm92ZS5cbi8vLyBTaW5jZSB0aGUgY29udGVudCBpcyBkdXBsaWNhdGVkIGZvciBlYWNoIGJyZWFrcG9pbnQsIHRoaXMgbWl4aW4gc2hvdWxkIG9ubHkgYmUgdXNlZCB3aXRoIHByb3BlcnRpZXMgdGhhdFxuLy8vIGNoYW5nZSBhY3Jvc3MgYnJlYWtwb2ludHMuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkdmFsdWVzLi4uIC0gQnJlYWtwb2ludCBuYW1lIG9yIHB4L3JlbS9lbSB2YWx1ZSB0byBwcm9jZXNzLlxuLy8vXG4vLy8gQG91dHB1dCBJZiB0aGUgYnJlYWtwb2ludCBpcyBcIjBweCBhbmQgbGFyZ2VyXCIsIG91dHB1dHMgdGhlIGNvbnRlbnQgYXMtaXMuIE90aGVyd2lzZSwgb3V0cHV0cyB0aGUgY29udGVudCB3cmFwcGVkIGluIGEgbWVkaWEgcXVlcnkuXG5AbWl4aW4gYnJlYWtwb2ludCgkdmFsdWVzLi4uKSB7XG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggbGVuZ3RoKCR2YWx1ZXMpIHtcbiAgICAkdmFsdWU6IG50aCgkdmFsdWVzLCAkaSk7XG4gICAgJHN0cjogYnJlYWtwb2ludCgkdmFsdWUpO1xuICAgICRicDogaW5kZXgoJC16Zi1icmVha3BvaW50cy1rZXlzLCBudGgoJHZhbHVlLCAxKSk7XG4gICAgJHBicDogaW5kZXgoJC16Zi1icmVha3BvaW50cy1rZXlzLCAkcHJpbnQtYnJlYWtwb2ludCk7XG4gICAgLy8gRGlyZWN0aW9uIG9mIG1lZGlhIHF1ZXJ5ICh1cCwgZG93biwgb3Igb25seSlcbiAgICAkZGlyOiBpZihsZW5ndGgoJHZhbHVlKSA+IDEsIG50aCgkdmFsdWUsIDIpLCB1cCk7XG5cbiAgICAkb2xkLXpmLXNpemU6IG51bGw7XG5cbiAgICAvLyBNYWtlIGJyZWFrcG9pbnQgc2l6ZSBhdmFpbGFibGUgYXMgYSB2YXJpYWJsZVxuICAgIEBpZiBnbG9iYWwtdmFyaWFibGUtZXhpc3RzKC16Zi1zaXplKSB7XG4gICAgICAkb2xkLXpmLXNpemU6ICQtemYtc2l6ZTtcbiAgICB9XG4gICAgJC16Zi1zaXplOiBudGgoJHZhbHVlLCAxKSAhZ2xvYmFsOyAvLyBnZXQgdGhlIGZpcnN0IHZhbHVlIHRvIGFjY291bnQgZm9yIGBvbmx5YCBhbmQgYGRvd25gIGtleXdvcmRzXG5cbiAgICAvLyBJZiAkc3RyIGlzIHN0aWxsIGFuIGVtcHR5IHN0cmluZywgbm8gbWVkaWEgcXVlcnkgaXMgbmVlZGVkXG4gICAgQGlmICRzdHIgPT0gXCJcIiB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG5cbiAgICAvLyBPdGhlcndpc2UsIHdyYXAgdGhlIGNvbnRlbnQgaW4gYSBtZWRpYSBxdWVyeVxuICAgIEBlbHNlIHtcbiAgICAgIC8vIEZvciBuYW1lZCBicmVha3BvaW50cyBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gJHByaW50LWJyZWFrcG9pbnQsIGFkZCBwcmludCB0byB0aGUgbWVkaWEgdHlwZXNcbiAgICAgIC8vIGdlbmVyYXRlIHByaW50IGlmIHRoZSBicmVha3BvaW50IGFmZmVjdHMgdGhlIHByaW50LWJyZWFrcG9pbnQgKG9yIHNtYWxsZXIpLlxuICAgICAgLy8gVGhpcyBtZWFucyB0aGUgY3VycmVudCBjb25kaXRpb24gb25seSBuZWVkcyB0byBiZSBleHRlbmRlZCBzbyAnZG93bicgYWx3YXlzIGdlbmVyYXRlcyBwcmludC5cbiAgICAgIEBpZiAkYnAgIT0gbnVsbCBhbmQgKCRicCA8PSAkcGJwIG9yICRkaXIgPT0gZG93bikge1xuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgI3skc3RyfSB7XG4gICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAjeyRzdHJ9IHtcbiAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICQtemYtc2l6ZTogJG9sZC16Zi1zaXplICFnbG9iYWw7XG4gIH1cbn1cblxuLy8vIENvbnZlcnRzIHRoZSBicmVha3BvaW50cyBtYXAgdG8gYSBVUkwtZW5jb2RlZCBzdHJpbmcsIGxpa2UgdGhpczogYGtleTE9dmFsdWUxJmtleTI9dmFsdWUyYC4gVGhlIHZhbHVlIGlzIHRoZW4gZHJvcHBlZCBpbnRvIHRoZSBDU1MgZm9yIGEgc3BlY2lhbCBgPG1ldGE+YCB0YWcsIHdoaWNoIGlzIHJlYWQgYnkgdGhlIEZvdW5kYXRpb24gSmF2YVNjcmlwdC4gVGhpcyBpcyBob3cgd2UgdHJhbnNmZXIgdmFsdWVzIGZyb20gU2FzcyB0byBKYXZhU2NyaXB0LCBzbyB0aGV5IGNhbiBiZSBkZWZpbmVkIGluIG9uZSBwbGFjZS5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TWFwfSAkbWFwIC0gTWFwIHRvIGNvbnZlcnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7U3RyaW5nfSBBIHN0cmluZyBjb250YWluaW5nIHRoZSBtYXAncyBjb250ZW50cy5cbkBmdW5jdGlvbiAtemYtYnAtc2VyaWFsaXplKCRtYXApIHtcbiAgJHN0cjogXCJcIjtcbiAgQGVhY2ggJGtleSwgJHZhbHVlIGluICRtYXAge1xuICAgICRzdHI6ICRzdHIgKyAka2V5ICsgXCI9XCIgKyAtemYtYnAtdG8tZW0oJHZhbHVlKSArIFwiJlwiO1xuICB9XG4gICRzdHI6IHN0ci1zbGljZSgkc3RyLCAxLCAtMik7XG5cbiAgQHJldHVybiAkc3RyO1xufVxuXG4vLy8gRmluZCB0aGUgbmV4dCBrZXkgaW4gYSBtYXAuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge01hcH0gJG1hcCAtIE1hcCB0byB0cmF2ZXJzZS5cbi8vLyBAcGFyYW0ge01peGVkfSAka2V5IC0gS2V5IHRvIHVzZSBhcyBhIHN0YXJ0aW5nIHBvaW50LlxuLy8vXG4vLy8gQHJldHVybnMge01peGVkfSBUaGUgdmFsdWUgZm9yIHRoZSBrZXkgYWZ0ZXIgYCRrZXlgLCBpZiBgJGtleWAgd2FzIGZvdW5kLiBJZiBgJGtleWAgd2FzIG5vdCBmb3VuZCwgb3IgYCRrZXlgIHdhcyB0aGUgbGFzdCB2YWx1ZSBpbiB0aGUgbWFwLCByZXR1cm5zIGBudWxsYC5cbkBmdW5jdGlvbiAtemYtbWFwLW5leHQoJG1hcCwgJGtleSkge1xuICAvLyBTdG9yZSB0aGUga2V5cyBvZiB0aGUgbWFwIGFzIGEgbGlzdFxuICAkdmFsdWVzOiBtYXAta2V5cygkbWFwKTtcblxuICAkaTogMDtcblxuICAvLyBJZiB0aGUgS2V5IEV4aXN0cywgR2V0IHRoZSBpbmRleCBvZiB0aGUga2V5IHdpdGhpbiB0aGUgbWFwIGFuZCBhZGQgMSB0byBpdCBmb3IgdGhlIG5leHQgYnJlYWtwb2ludCBpbiB0aGUgbWFwXG4gIEBpZiAobWFwLWhhcy1rZXkoJG1hcCwgJGtleSkpIHtcbiAgICAkaTogaW5kZXgoJHZhbHVlcywgJGtleSkgKyAxO1xuICB9XG5cbiAgLy8gSWYgdGhlIGtleSBkb2Vzbid0IGV4aXN0LCBvciBpdCdzIHRoZSBsYXN0IGtleSBpbiB0aGUgbWFwLCByZXR1cm4gbnVsbFxuICBAaWYgKCRpID4gbGVuZ3RoKCRtYXApIG9yICRpID09IDApIHtcbiAgICBAcmV0dXJuIG51bGw7XG4gIH1cbiAgLy8gT3RoZXJ3aXNlLCByZXR1cm4gdGhlIHZhbHVlXG4gIEBlbHNlIHtcbiAgICBAcmV0dXJuIG1hcC1nZXQoJG1hcCwgbnRoKCR2YWx1ZXMsICRpKSk7XG4gIH1cbn1cblxuLy8vIEZpbmQgdGhlIG5leHQgbnVtYmVyIGluIGEgbWFwLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtNYXB9ICRtYXAgLSBNYXAgdG8gdHJhdmVyc2UuXG4vLy8gQHBhcmFtIHtNaXhlZH0gJG51bWJlciAtIE51bWJlciB0byB1c2UgYXMgYSBzdGFydGluZyBwb2ludC5cbi8vL1xuLy8vIEByZXR1cm5zIHtNaXhlZH0gVGhlIG51bWJlciBmb2xsb3dpbmcgYCRudW1iZXJgLCBpZiBgJG51bWJlcmAgd2FzIGZvdW5kLiBJZiBgJG51bWJlcmAgd2FzIG5vdCBmb3VuZCwgb3IgYCRudW1iZXJgIHdhcyB0aGUgYmlnZ2VzdCBudW1iZXIgaW4gdGhlIG1hcCwgcmV0dXJucyBgbnVsbGAuXG5AZnVuY3Rpb24gLXpmLW1hcC1uZXh0LW51bWJlcigkbWFwLCAkbnVtYmVyKSB7XG4gICRuZXh0LW51bWJlcjogbnVsbDtcblxuICBAZWFjaCAkaywgJHYgaW4gJG1hcCB7XG4gICAgQGlmIHR5cGUtb2YoJHYpID09IFwibnVtYmVyXCIgYW5kICR2ID4gJG51bWJlciBhbmQgKCRuZXh0LW51bWJlciA9PSBudWxsIG9yICR2IDwgJG5leHQtbnVtYmVyKSB7XG4gICAgICAkbmV4dC1udW1iZXI6ICR2O1xuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gJG5leHQtbnVtYmVyO1xufVxuXG4vLy8gUmV0dXJuIGEgbGlzdCBvZiBvdXIgbmFtZWQgYnJlYWtwb2ludHMgbGVzcyB0aGFuICRrZXkuIFVzZWZ1bCBmb3IgZGVhbGluZyB3aXRoXG4vLy8gcmVzcG9uc2l2ZSBndXR0ZXJzIGZvciB0aGUgZ3JpZC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAka2V5IC0gS2V5IHRvIHVzZSBhcyBsYXN0IGJyZWFrcG9pbnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7QXJyYXl9IFRoZSBsaXN0IG9mIGJyZWFrcG9pbnRzIHVwIHRvIGFuZC4gSWYgJGtleSBpcyBhdXRvLCByZXR1cm5zIGJyZWFrcG9pbnRzIGFib3ZlIHRoZSB6ZXJvXG5AZnVuY3Rpb24gLXpmLWJyZWFrcG9pbnRzLWxlc3MtdGhhbigka2V5KSB7XG4gICRsaXN0OiAoKTtcbiAgJGZvdW5kLWtleTogZmFsc2U7XG5cbiAgQGVhY2ggJG5hbWUgaW4gJC16Zi1icmVha3BvaW50cy1rZXlzIHtcbiAgICBAaWYgKCRuYW1lID09ICRrZXkpIHtcbiAgICAgICRmb3VuZC1rZXk6IHRydWU7XG4gICAgfVxuICAgIEBpZiBub3QgJGZvdW5kLWtleSB7XG4gICAgICAkbGlzdDogYXBwZW5kKCRsaXN0LCAkbmFtZSk7XG4gICAgfVxuICB9XG4gIEByZXR1cm4gJGxpc3Q7XG59XG5cbi8vLyBSZXR1cm4gYSBsaXN0IG9mIG91ciBuYW1lZCBicmVha3BvaW50cyBsZXNzIHRoYW4gJGtleS4gVXNlZnVsIGZvciBkZWFsaW5nIHdpdGhcbi8vLyByZXNwb25zaXZlIGd1dHRlcnMgZm9yIHRoZSBncmlkLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRicmVha3BvaW50IC0gYSBuYW1lZCBvciBub24tbmFtZWQgYnJlYWtwb2ludC5cbi8vL1xuLy8vIEByZXR1cm5zIHtBcnJheX0gVGhlIGxpc3Qgb2YgYnJlYWtwb2ludHMgdXAgdG8gYW5kLiBJZiAka2V5IGlzIGF1dG8sIHJldHVybnMgYnJlYWtwb2ludHMgYWJvdmUgdGhlIHplcm9cbkBmdW5jdGlvbiAtemYtY2xvc2VzdC1uYW1lZC1icmVha3BvaW50KCRicmVha3BvaW50KSB7XG4gICRsYXN0OiAkLXpmLXplcm8tYnJlYWtwb2ludDtcbiAgJGZvdW5kOiBmYWxzZTtcblxuICAkdmFsdWU6IHVuaXRsZXNzLWNhbGMoJGJyZWFrcG9pbnQsIDFweCk7XG4gIEBlYWNoICRrZXksICR2YWwgaW4gJGJyZWFrcG9pbnRzIHtcbiAgICBAaWYgbm90ICRmb3VuZCB7XG4gICAgICBAaWYgdW5pdGxlc3MtY2FsYygkdmFsKSA+ICR2YWx1ZSB7XG4gICAgICAgICRmb3VuZDogdHJ1ZTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAkbGFzdDogJGtleTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICRsYXN0O1xufVxuXG4vLy8gR2V0IGEgdmFsdWUgZm9yIGEgYnJlYWtwb2ludCBmcm9tIGEgcmVzcG9uc2l2ZSBjb25maWcgbWFwIG9yIHNpbmdsZSB2YWx1ZS5cbi8vLyAtIElmIHRoZSBjb25maWcgaXMgYSBzaW5nbGUgdmFsdWUsIHJldHVybiBpdCByZWdhcmRsZXNzIG9mIGAkdmFsdWVgLlxuLy8vIC0gSWYgdGhlIGNvbmZpZyBpcyBhIG1hcCBhbmQgaGFzIHRoZSBrZXkgYCR2YWx1ZWAsIHRoZSBleGFjdCBicmVha3BvaW50IHZhbHVlIGlzIHJldHVybmVkLlxuLy8vIC0gSWYgdGhlIGNvbmZpZyBpcyBhIG1hcCBhbmQgZG9lcyAqbm90KiBoYXZlIHRoZSBicmVha3BvaW50LCB0aGUgdmFsdWUgbWF0Y2hpbmcgdGhlIG5leHQgbG93ZXN0IGJyZWFrcG9pbnQgaW4gdGhlIGNvbmZpZyBtYXAgaXMgcmV0dXJuZWQuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRtYXAgLSBSZXNwb25zaXZlIGNvbmZpZyBtYXAgb3Igc2luZ2xlIHZhbHVlLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHZhbHVlIC0gQnJlYWtwb2ludCBuYW1lIHRvIHVzZS5cbi8vL1xuLy8vIEByZXR1cm4ge01peGVkfSBUaGUgY29ycmVzcG9uZGluZyBicmVha3BvaW50IHZhbHVlLlxuQGZ1bmN0aW9uIC16Zi1nZXQtYnAtdmFsKCRtYXAsICR2YWx1ZSkge1xuICAvLyBJZiB0aGUgZ2l2ZW4gbWFwIGlzIGEgc2luZ2xlIHZhbHVlLCByZXR1cm4gaXRcbiAgQGlmIHR5cGUtb2YoJG1hcCkgPT0gXCJudW1iZXJcIiB7XG4gICAgQHJldHVybiAkbWFwO1xuICB9XG5cbiAgLy8gQ2hlY2sgaWYgdGhlIGJyZWFrcG9pbnQgbmFtZSBleGlzdHMgZ2xvYmFsbHlcbiAgQGlmIG5vdCBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsICR2YWx1ZSkge1xuICAgIEBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gXCJudW1iZXJcIiB7XG4gICAgICAkdmFsdWU6IC16Zi1jbG9zZXN0LW5hbWVkLWJyZWFrcG9pbnQoJHZhbHVlKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIEByZXR1cm4gbnVsbDtcbiAgICB9XG4gIH1cbiAgLy8gQ2hlY2sgaWYgdGhlIGJyZWFrcG9pbnQgbmFtZSBleGlzdHMgaW4gdGhlIGxvY2FsIGNvbmZpZyBtYXBcbiAgQGVsc2UgaWYgbWFwLWhhcy1rZXkoJG1hcCwgJHZhbHVlKSB7XG4gICAgLy8gSWYgaXQgZG9lcywganVzdCByZXR1cm4gdGhlIHZhbHVlXG4gICAgQHJldHVybiBtYXAtZ2V0KCRtYXAsICR2YWx1ZSk7XG4gIH1cbiAgLy8gT3RoZXJ3aXNlLCBmaW5kIHRoZSBuZXh0IGxvd2VzdCBicmVha3BvaW50IGFuZCByZXR1cm4gdGhhdCB2YWx1ZVxuICBAZWxzZSB7XG4gICAgJGFuY2hvcjogbnVsbDtcbiAgICAkZm91bmQ6IGZhbHNlO1xuXG4gICAgQGVhY2ggJGtleSwgJHZhbCBpbiAkYnJlYWtwb2ludHMge1xuICAgICAgQGlmIG5vdCAkZm91bmQge1xuICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJG1hcCwgJGtleSkge1xuICAgICAgICAgICRhbmNob3I6ICRrZXk7XG4gICAgICAgIH1cbiAgICAgICAgQGlmICRrZXkgPT0gJHZhbHVlIHtcbiAgICAgICAgICAkZm91bmQ6IHRydWU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBAcmV0dXJuIG1hcC1nZXQoJG1hcCwgJGFuY2hvcik7XG4gIH1cbn1cblxuLy8vIFJldHVybiB0aGUgYmVzdCBicmVha3BvaW50IHRvIHVzZSBhY2NvcmRpbmcgdG8gdGhlIGNhbGxpbmcgY29udGV4dC4gSXQgcmV0dXJucyBpbiBvcmRlcjpcbi8vLyAxLiB0aGUgZ2l2ZW4gYCR2YWx1ZWAgYXJndW1lbnQgaWYgaXQgaXMgbm90IG51bGwuXG4vLy8gMi4gdGhlIGdsb2JhbCBicmVha3BvaW50IGNvbnRleHQgYCQtemYtc2l6ZWAgaWYgaXQgaXMgbm90IG51bGwgKGxpa2UgaWYgY2FsbGVkIGluc2lkZSB0aGVuIGBicmVha3BvaW50KClgIG1peGluKVxuLy8vIDMuIHRoZSBnaXZlbiBgJGRlZmF1bHRgIGFyZ3VtZW50LlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkdmFsdWUgW251bGxdIC0gQnJlYWtwb2ludCB0byB1c2UgaW4gcHJpb3JpdHkgaWYgbm9uLW51bGwuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZGVmYXVsdCBbbnVsbF0gLSBCcmVha3BvaW50IHRvIHVzZSBieSBkZWZhdWx0IGlmIG5vIG90aGVyIHZhbHVlIGNhbiBiZSB1c2VkLlxuLy8vXG4vLy8gQHJldHVybiB7S2V5d29yZH0gVGhlIHJlc29sdmVkIGJyZWFrcG9pbnQuXG5AZnVuY3Rpb24gLXpmLWN1cnJlbnQtYnJlYWtwb2ludCgkdmFsdWU6IG51bGwsICRkZWZhdWx0OiBudWxsKSB7XG4gIEBpZiAoJHZhbHVlICE9IG51bGwpIHtcbiAgICBAcmV0dXJuICR2YWx1ZTtcbiAgfSBAZWxzZSBpZiAodmFyaWFibGUtZXhpc3RzKC16Zi1zaXplKSBhbmQgdHlwZS1vZigkLXpmLXNpemUpICE9IFwibnVtYmVyXCIpIGFuZCAkLXpmLXNpemUgIT0gbnVsbCB7XG4gICAgQHJldHVybiAkLXpmLXNpemU7XG4gIH0gQGVsc2Uge1xuICAgIEByZXR1cm4gJGRlZmF1bHQ7XG4gIH1cbn1cblxuLy8vIFJldHVybiBtZWRpYSBxdWVyeSBzdHJpbmcgZnJvbSB0aGUgZ2l2ZW4gbWluIGFuZC9vciBtYXggbGltaXRzLlxuLy8vIElmIGEgbGltaXQgaXMgZXF1YWwgdG8gYG51bGxgIG9yIGAwYCwgaXQgaXMgaWdub3JlZC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbWluIFswXSAtIE1pbiBtZWRpYSBxdWVyeSBsaW1pdC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJG1heCBbMF0gLSBNYXggbWVkaWEgcXVlcnkgbGltaXQuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRtaW4tbmFtZSBbJ21pbi13aWR0aCddIC0gTmFtZSBvZiB0aGUgbWluIG1lZGlhIHF1ZXJ5IGxpbWl0LlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkZGVsaW1pdGVyIFsnbWF4LXdpZHRoJ10gLSBOYW1lIG9mIHRoZSBtYXggbWVkaWEgcXVlcnkgbGltaXQuXG4vLy9cbi8vLyBAcmV0dXJucyB7U3RyaW5nfSBNZWRpYSBRdWVyeSBzdHJpbmcuXG5AZnVuY3Rpb24gLXpmLWJwLWpvaW4oJG1pbjogMCwgJG1heDogMCwgJG1pbi1uYW1lOiBcIm1pbi13aWR0aFwiLCAkbWF4LW5hbWU6IFwibWF4LXdpZHRoXCIpIHtcbiAgQHJldHVybiB6Zi1zdHItam9pbihcbiAgICBpZigkbWluIGFuZCAkbWluID4gMCwgXCIoI3skbWluLW5hbWV9OiAjeyRtaW59KVwiLCBudWxsKSxcbiAgICBpZigkbWF4IGFuZCAkbWF4ID4gMCwgXCIoI3skbWF4LW5hbWV9OiAjeyRtYXh9KVwiLCBudWxsKSxcbiAgICBcIiBhbmQgXCJcbiAgKTtcbn1cblxuJHNtYWxsLXVwOiBcIlwiO1xuJHNtYWxsLW9ubHk6IFwiXCI7XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIHNtYWxsKSB7XG4gICRzbWFsbC11cDogc2NyZWVuO1xuICAkc21hbGwtb25seTogdW5xdW90ZShcInNjcmVlbiBhbmQgI3ticmVha3BvaW50KHNtYWxsIG9ubHkpfVwiKTtcbn1cblxuJG1lZGl1bS11cDogXCJcIjtcbiRtZWRpdW0tb25seTogXCJcIjtcblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgbWVkaXVtKSB7XG4gICRtZWRpdW0tdXA6IHVucXVvdGUoXCJzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0pfVwiKTtcbiAgJG1lZGl1bS1vbmx5OiB1bnF1b3RlKFwic2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtIG9ubHkpfVwiKTtcbn1cblxuJGxhcmdlLXVwOiBcIlwiO1xuJGxhcmdlLW9ubHk6IFwiXCI7XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIGxhcmdlKSB7XG4gICRsYXJnZS11cDogdW5xdW90ZShcInNjcmVlbiBhbmQgI3ticmVha3BvaW50KGxhcmdlKX1cIik7XG4gICRsYXJnZS1vbmx5OiB1bnF1b3RlKFwic2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobGFyZ2Ugb25seSl9XCIpO1xufVxuXG4keGxhcmdlLXVwOiBcIlwiO1xuJHhsYXJnZS1vbmx5OiBcIlwiO1xuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCB4bGFyZ2UpIHtcbiAgJHhsYXJnZS11cDogdW5xdW90ZShcInNjcmVlbiBhbmQgI3ticmVha3BvaW50KHhsYXJnZSl9XCIpO1xuICAkeGxhcmdlLW9ubHk6IHVucXVvdGUoXCJzY3JlZW4gYW5kICN7YnJlYWtwb2ludCh4bGFyZ2Ugb25seSl9XCIpO1xufVxuXG4keHhsYXJnZS11cDogXCJcIjtcblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgeHhsYXJnZSkge1xuICAkeHhsYXJnZS11cDogdW5xdW90ZShcInNjcmVlbiBhbmQgI3ticmVha3BvaW50KHh4bGFyZ2UpfVwiKTtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB4eS1ncmlkXG4vLy8vXG5cbi8vLyBTaXplcyBjaGlsZCBlbGVtZW50cyBzbyB0aGF0IGAkbmAgbnVtYmVyIG9mIGl0ZW1zIGFwcGVhciBvbiBlYWNoIHJvdy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbiAtIE51bWJlciBvZiBlbGVtZW50cyB0byBkaXNwbGF5IHBlciByb3cuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRzZWxlY3RvciBbJy5jZWxsJ10gLSBTZWxlY3RvcihzKSB0byB1c2UgZm9yIGNoaWxkIGVsZW1lbnRzLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGd1dHRlci1vdXRwdXQgW251bGxdIC0gW0RFUFJFQ0FURURdIFdoZXRoZXIgb3Igbm90IHRvIG91dHB1dCBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLW1hcmdpbi1ndXR0ZXJzXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgZm9yIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZ3V0dGVyLXR5cGUgW21hcmdpbl0gLSBUeXBlIG9mIGd1dHRlciB0byBvdXRwdXQuIEFjY2VwdHMgYG1hcmdpbmAsIGBwYWRkaW5nYCBvciBgbm9uZWAuXG4vLy8gQHBhcmFtIHtMaXN0fSAkZ3V0dGVyLXBvc2l0aW9uIFtudWxsXSAtIFRoZSBwb3NpdGlvbiB0byBhcHBseSBndXR0ZXJzIHRvLiBBY2NlcHRzIGB0b3BgLCBgYm90dG9tYCwgYGxlZnRgLCBgcmlnaHRgIGluIGFueSBjb21iaW5hdGlvbi4gQnkgZGVmYXVsdCBgcmlnaHQgbGVmdGAgZm9yIGhvcml6b250YWwgY2VsbHMgYW5kIGB0b3AgYm90dG9tYCBmb3IgdmVydGljYWwgY2VsbHMuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRicmVha3BvaW50IFtudWxsXSAtIFRoZSBicmVha3BvaW50IHRvIHVzZSBmb3IgdGhlIGNlbGwgZ2VuZXJhdGlvbi4gSWYgdXNpbmcgd2l0aCB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdGhpcyB3aWxsIGJlIHNldCBhdXRvbWF0aWNhbGx5IHVubGVzcyBtYW51YWxseSBlbnRlcmVkLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHZlcnRpY2FsIFtmYWxzZV0gLSBTZXQgdG8gdHJ1ZSB0byBvdXRwdXQgdmVydGljYWwgKGhlaWdodCkgc3R5bGVzIHJhdGhlciB0aGFuIHdpZHRocy5cbi8vLyBAcGFyYW0ge0xpc3R9ICRvdXRwdXQgWyhiYXNlIHNpemUgZ3V0dGVycyldIC0gQ2VsbCBwYXJ0cyB0byBvdXRwdXQuIFlvdSB3aWxsIG5lZWQgdG8gZ2VuZXJhdGUgb3RoZXJzIHBhcnRzIG9mIHRoZSBjZWxsIHNlcGVyYXRlbHksIGl0IG1heSBub3Qgd29yayBjb3JyZWN0bHkgb3RoZXJ3aXNlLlxuQG1peGluIHh5LWdyaWQtbGF5b3V0KFxuICAkbixcbiAgJHNlbGVjdG9yOiAnLmNlbGwnLFxuICAkZ3V0dGVyLW91dHB1dDogbnVsbCxcbiAgJGd1dHRlcnM6ICRncmlkLW1hcmdpbi1ndXR0ZXJzLFxuICAkZ3V0dGVyLXR5cGU6IG1hcmdpbixcbiAgJGd1dHRlci1wb3NpdGlvbjogbnVsbCxcbiAgJGJyZWFrcG9pbnQ6IG51bGwsXG4gICR2ZXJ0aWNhbDogZmFsc2UsXG4gICRvdXRwdXQ6IChiYXNlIHNpemUgZ3V0dGVycylcbikge1xuICAkc2l6ZTogcGVyY2VudGFnZShkaXZpZGUoMSwgJG4pKTtcblxuICAmID4gI3skc2VsZWN0b3J9IHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsKCRzaXplLCAkZ3V0dGVyLW91dHB1dCwgJGd1dHRlcnMsICRndXR0ZXItdHlwZSwgJGd1dHRlci1wb3NpdGlvbiwgJGJyZWFrcG9pbnQsICR2ZXJ0aWNhbCwgJG91dHB1dCk7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB4eS1ncmlkXG4vLy8vXG5cbi8vLyBDb2xsYXBzZXMgdGhlIGdyaWQgYSBjZWxscyB3aXRoaW4gaXQuXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJHNlbGVjdG9yIFsuY2VsbF0gLSBUaGUgY2hpbGQgZWxlbWVudCB0byByZW1vdmUgdGhlIGd1dHRlciBmcm9tLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGd1dHRlci10eXBlIFttYXJnaW5dIC0gVGhlIHR5cGUgb2YgZ3V0dGVyIHRvIHJlbW92ZS5cbi8vLyBAcGFyYW0ge0xpc3R9ICRndXR0ZXItcG9zaXRpb24gW3JpZ2h0IGxlZnRdIC0gVGhlIHBvc2l0aW9ucyB0byByZW1vdmUgZ3V0dGVycyBmcm9tLiBBY2NlcHRzIGB0b3BgLCBgYm90dG9tYCwgYGxlZnRgLCBgcmlnaHRgIGluIGFueSBjb21iaW5hdGlvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRtaW4tYnJlYWtwb2ludCBbJC16Zi16ZXJvLWJyZWFrcG9pbnRdIC0gTWluaW11bSBicmVha3BvaW50IGluIGAkYnJlYWtwb2ludC1jbGFzc2VzYCBmb3Igd2hpY2ggdG8gY29sbGFwc2UgdGhlIGd1dHRlci5cbkBtaXhpbiB4eS1ncmlkLWNvbGxhcHNlKFxuICAkc2VsZWN0b3I6ICcuY2VsbCcsXG4gICRndXR0ZXItdHlwZTogbWFyZ2luLFxuICAkZ3V0dGVyLXBvc2l0aW9uOiByaWdodCBsZWZ0LFxuICAkbWluLWJyZWFrcG9pbnQ6ICQtemYtemVyby1icmVha3BvaW50XG4pIHtcbiAgLy8gRmlyc3QsIGxldHMgbmVnYXRlIGFueSBtYXJnaW5zIG9uIHRoZSB0b3AgbGV2ZWxcbiAgQGlmICgkZ3V0dGVyLXR5cGUgPT0gJ21hcmdpbicpIHtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1pbi1icmVha3BvaW50KSB7XG4gICAgICBAZWFjaCAkdmFsdWUgaW4gJGd1dHRlci1wb3NpdGlvbiB7XG4gICAgICAgIG1hcmdpbi0jeyR2YWx1ZX06IDA7XG4gICAgICB9XG5cbiAgICAgID4gI3skc2VsZWN0b3J9IHtcbiAgICAgICAgQGVhY2ggJHZhbHVlIGluICRndXR0ZXItcG9zaXRpb24ge1xuICAgICAgICAgIG1hcmdpbi0jeyR2YWx1ZX06IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAkZXhjbHVkZWQtYnBzOiAtemYtYnJlYWtwb2ludHMtbGVzcy10aGFuKCRtaW4tYnJlYWtwb2ludCk7XG5cbiAgICAvLyBPdXRwdXQgbmV3IHdpZHRocyB0byBub3QgaW5jbHVkZSBndXR0ZXJzXG4gICAgQGVhY2ggJGJwIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgICAgQGlmKHNsLWNvbnRhaW4oJGV4Y2x1ZGVkLWJwcywgJGJwKSkge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtaW4tYnJlYWtwb2ludCkge1xuICAgICAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgICAgICAgICAvLyBTaXppbmcgKHBlcmNlbnRhZ2UpXG4gICAgICAgICAgICA+IC4jeyRicH0tI3skaX0ge1xuICAgICAgICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLXNpemUoJGksICRndXR0ZXItdHlwZTogbm9uZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnApIHtcbiAgICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgICAgICAgICAgLy8gU2l6aW5nIChwZXJjZW50YWdlKVxuICAgICAgICAgICAgPiAuI3skYnB9LSN7JGl9IHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1zaXplKCRpLCAkZ3V0dGVyLXR5cGU6IG5vbmUpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtaW4tYnJlYWtwb2ludCkge1xuICAgICAgQGVhY2ggJHZhbHVlIGluICRndXR0ZXItcG9zaXRpb24ge1xuICAgICAgICBtYXJnaW4tI3skdmFsdWV9OiAwO1xuICAgICAgfVxuXG4gICAgICA+ICN7JHNlbGVjdG9yfSB7XG4gICAgICAgIEBlYWNoICR2YWx1ZSBpbiAkZ3V0dGVyLXBvc2l0aW9uIHtcbiAgICAgICAgICBwYWRkaW5nLSN7JHZhbHVlfTogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHh5LWdyaWRcbi8vLy9cblxuLy8vIFJldHVybnMgdGhlIGFwcHJvcHJpYXRlIENTUyB2YWx1ZSB0byBvZmZzZXQgYSBjZWxsLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TGlzdH0gJG4gLSBTaXplIHRvIG9mZnNldCBieS4gWW91IGNhbiBwYXNzIGluIGFueSB2YWx1ZSBhY2NlcHRlZCBieSB0aGUgYHh5LWNlbGwoKWAgbWl4aW4sIHN1Y2ggYXMgYDZgLCBgNTAlYCwgb3IgYDEgb2YgMmAuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtbWFyZ2luLWd1dHRlcnNdIE1hcCBvZiBndXR0ZXJzIG9yIHNpbmdsZSB2YWx1ZSB0byB1c2UgZm9yIHJlc3BvbnNpdmUgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRndXR0ZXItdHlwZSBbbWFyZ2luXSBUaGUgdHlwZSBvZiBndXR0ZXIgdG8gdXNlLiBDYW4gYmUgYG1hcmdpbmAgb3IgYHBhZGRpbmdgXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRicmVha3BvaW50IFtudWxsXSAtIFRoZSBuYW1lIG9mIHRoZSBicmVha3BvaW50IHNpemUgaW4geW91ciBndXR0ZXJzIG1hcCB0byBnZXQgdGhlIHNpemUgZnJvbS4gSWYgdXNpbmcgd2l0aCB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdGhpcyB3aWxsIGJlIHNldCBhdXRvbWF0aWNhbGx5IHVubGVzcyBtYW51YWxseSBlbnRlcmVkLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcnxTdHJpbmd9IFRoZSBjZWxsIG9mZnNldCBwcm9wZXJ0eSB2YWx1ZS5cbkBmdW5jdGlvbiB4eS1jZWxsLW9mZnNldChcbiAgJG4sXG4gICRndXR0ZXJzOiAkZ3JpZC1tYXJnaW4tZ3V0dGVycyxcbiAgJGd1dHRlci10eXBlOiBtYXJnaW4sXG4gICRicmVha3BvaW50OiBudWxsXG4pIHtcbiAgJGJyZWFrcG9pbnQ6IC16Zi1jdXJyZW50LWJyZWFrcG9pbnQoJGJyZWFrcG9pbnQsICRkZWZhdWx0OiAkLXpmLXplcm8tYnJlYWtwb2ludCk7XG4gICRzaXplOiB4eS1jZWxsLXNpemUoJG4pO1xuXG4gICRvZmZzZXQ6ICRzaXplO1xuICBAaWYgKCRndXR0ZXItdHlwZSA9PSAnbWFyZ2luJykge1xuICAgIC8vIE1ha2Ugc3VyZSB0aGF0IDAgaXMgdHJhbnNsYXRlZCBpbiAwcmVtIGZvciBjYWxjKClcbiAgICAkZ3V0dGVyOiByZW0tY2FsYyh4eS1jZWxsLWd1dHRlcnMoJGd1dHRlcnMsICRicmVha3BvaW50KSk7XG4gICAgQGlmICRndXR0ZXIgPT0gMCB7XG4gICAgICAkZ3V0dGVyOiAwcmVtO1xuICAgIH1cbiAgICAkb2Zmc2V0OiBpZigkZ3V0dGVyID09IDAsICRzaXplLCBjYWxjKCN7JHNpemV9ICsgI3skZ3V0dGVyfSAvIDIpKTtcbiAgfVxuICBAcmV0dXJuICRvZmZzZXQ7XG59XG5cbi8vLyBPZmZzZXRzIGEgY29sdW1uIHRvIHRoZSByaWdodC9ib3R0b20gYnkgYCRuYCBjb2x1bW5zLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TGlzdH0gJG4gLSBTaXplIHRvIG9mZnNldCBieS4gWW91IGNhbiBwYXNzIGluIGFueSB2YWx1ZSBhY2NlcHRlZCBieSB0aGUgYHh5LWNlbGwoKWAgbWl4aW4sIHN1Y2ggYXMgYDZgLCBgNTAlYCwgb3IgYDEgb2YgMmAuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtbWFyZ2luLWd1dHRlcnNdIE1hcCBvZiBndXR0ZXJzIG9yIHNpbmdsZSB2YWx1ZSB0byB1c2UgZm9yIHJlc3BvbnNpdmUgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRndXR0ZXItdHlwZSBbbWFyZ2luXSBUaGUgdHlwZSBvZiBndXR0ZXIgdG8gdXNlLiBDYW4gYmUgYG1hcmdpbmAgb3IgYHBhZGRpbmdgXG4vLy8gQHBhcmFtIHtOdW1iZXJ8QXJyYXl8S2V5d29yZH0gJGJyZWFrcG9pbnQgW251bGxdIC0gQnJlYWtwb2ludCB0byB1c2UgZm9yIGAkZ3V0dGVyc2AuIEl0IGNhbiBiZSBhIGJyZWFrcG9pbnQgbmFtZSwgbGlzdCBvZiBicmVha3BvaW50cyBvciBgYXV0b2AgZm9yIGFsbCBicmVha3BvaW50cy4gSWYgYSBsaXN0IGlzIGdpdmVuLCBtZWRpYS1xdWVyaWVzIHdpbGwgYmUgZ2VuZXJhdGVkLiBJZiB1c2luZyB3aXRoIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0aGlzIHdpbGwgYmUgc2V0IGF1dG9tYXRpY2FsbHkgdW5sZXNzIG1hbnVhbGx5IGVudGVyZWQuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkdmVydGljYWwgW2ZhbHNlXSBTZXRzIHRoZSBkaXJlY3Rpb24gb2YgdGhlIG9mZnNldC4gSWYgc2V0IHRvIHRydWUgd2lsbCBhcHBseSBtYXJnaW4tdG9wIGluc3RlYWQuXG5AbWl4aW4geHktY2VsbC1vZmZzZXQoXG4gICRuLFxuICAkZ3V0dGVyczogJGdyaWQtbWFyZ2luLWd1dHRlcnMsXG4gICRndXR0ZXItdHlwZTogbWFyZ2luLFxuICAkYnJlYWtwb2ludDogbnVsbCxcbiAgJHZlcnRpY2FsOiBmYWxzZVxuKSB7XG4gICRicmVha3BvaW50OiAtemYtY3VycmVudC1icmVha3BvaW50KCRicmVha3BvaW50LCAkZGVmYXVsdDogJC16Zi16ZXJvLWJyZWFrcG9pbnQpO1xuICAkZGlyZWN0aW9uOiBpZigkdmVydGljYWwsICd0b3AnLCAkZ2xvYmFsLWxlZnQpO1xuXG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQtaW4oJGJyZWFrcG9pbnQsICRtZWRpYS1xdWVyaWVzOiAnZm9yLWxpc3RzJykge1xuICAgICRvZmZzZXQ6IHh5LWNlbGwtb2Zmc2V0KCRuLCAkZ3V0dGVycywgJGd1dHRlci10eXBlKTtcbiAgICBtYXJnaW4tI3skZGlyZWN0aW9ufTogI3skb2Zmc2V0fTtcbiAgfVxufVxuIiwiLy8gc2Fzcy1saW50OmRpc2FibGUgbm8tdmVuZG9yLXByZWZpeGVzXG5cbi8vLyBNb2RpZmllcyBhIGdyaWQgdG8gZ2l2ZSBpdCBcImZyYW1lXCIgYmVoYXZpb3IgKG5vIG92ZXJmbG93LCBubyB3cmFwLCBzdHJldGNoIGJlaGF2aW9yKVxuLy8vXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkdmVydGljYWwgW2ZhbHNlXSAtIElzIGdyaWQgdmVydGljYWwgb3IgaG9yaXpvbnRhbC4gU2hvdWxkIG1hdGNoIGdyaWQuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkbmVzdGVkIFtmYWxzZV0gLSBJcyBncmlkIG5lc3RlZCBvciBub3QuIElmIG5lc3RlZCBpcyB0cnVlIHRoaXMgc2V0cyB0aGUgZnJhbWUgdG8gMTAwJSBoZWlnaHQsIG90aGVyd2lzZSB3aWxsIGJlIDEwMHZoLlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgW251bGxdIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSBmb3IgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGJyZWFrcG9pbnQgW251bGxdIC0gVGhlIG5hbWUgb2YgdGhlIGJyZWFrcG9pbnQgc2l6ZSBpbiB5b3VyIGd1dHRlcnMgbWFwIHRvIGdldCB0aGUgc2l6ZSBmcm9tLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGluY2x1ZGUtYmFzZSBbdHJ1ZV0gLSBJbmNsdWRlIHRoZSBiYXNlIHN0eWxlcyB0aGF0IGRvbid0IHZhcnkgcGVyIGJyZWFrcG9pbnQuXG5AbWl4aW4geHktZ3JpZC1mcmFtZShcbiAgJHZlcnRpY2FsOiBmYWxzZSxcbiAgJG5lc3RlZDogZmFsc2UsXG4gICRndXR0ZXJzOiBudWxsLFxuICAkYnJlYWtwb2ludDogbnVsbCxcbiAgJGluY2x1ZGUtYmFzZTogdHJ1ZVxuKSB7XG5cbiAgQGlmICRpbmNsdWRlLWJhc2Uge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICB9XG5cbiAgQGlmICRicmVha3BvaW50ID09IG51bGwgYW5kIHR5cGUtb2YoJGd1dHRlcnMpID09ICdtYXAnIHtcbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCkge1xuICAgICAgQGluY2x1ZGUgeHktZ3JpZC1mcmFtZSgkdmVydGljYWwsICRuZXN0ZWQsICRndXR0ZXJzLCAkLXpmLXNpemUsIGZhbHNlKTtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIC8vIEdldCBvdXIgZ3V0dGVycyBpZiBhcHBsaWNhYmxlXG4gICAgJGd1dHRlcjogLXpmLWdldC1icC12YWwoJGd1dHRlcnMsICRicmVha3BvaW50KTtcblxuICAgIC8vIElmIHdlIGhhdmUgYSBndXR0ZXIsIGFkZCBpdCB0byB0aGUgd2lkdGgvaGVpZ2h0XG4gICAgQGlmICRndXR0ZXIge1xuICAgICAgQGlmICR2ZXJ0aWNhbCA9PSB0cnVlIHtcbiAgICAgICAgJHVuaXQ6IGlmKCRuZXN0ZWQgPT0gdHJ1ZSwgMTAwJSwgMTAwdmgpO1xuICAgICAgICAkZ3V0dGVyOiByZW0tY2FsYygkZ3V0dGVyKTtcbiAgICAgICAgLy8gTWFrZSBzdXJlIHRoYXQgMCBpcyB0cmFuc2xhdGVkIGluIDByZW0gZm9yIGNhbGMoKVxuICAgICAgICBAaWYgJGd1dHRlciA9PSAwIHtcbiAgICAgICAgICAkZ3V0dGVyOiAwcmVtO1xuICAgICAgICB9XG4gICAgICAgIGhlaWdodDogY2FsYygjeyR1bml0fSArICN7JGd1dHRlcn0pO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgICR1bml0OiBpZigkbmVzdGVkID09IHRydWUsIDEwMCUsIDEwMHZ3KTtcbiAgICAgICAgJGd1dHRlcjogcmVtLWNhbGMoJGd1dHRlcik7XG4gICAgICAgIC8vIE1ha2Ugc3VyZSB0aGF0IDAgaXMgdHJhbnNsYXRlZCBpbiAwcmVtIGZvciBjYWxjKClcbiAgICAgICAgQGlmICRndXR0ZXIgPT0gMCB7XG4gICAgICAgICAgJGd1dHRlcjogMHJlbTtcbiAgICAgICAgfVxuICAgICAgICB3aWR0aDogY2FsYygjeyR1bml0fSArICN7JGd1dHRlcn0pO1xuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAaWYgJHZlcnRpY2FsID09IHRydWUge1xuICAgICAgICBoZWlnaHQ6IGlmKCRuZXN0ZWQgPT0gdHJ1ZSwgMTAwJSwgMTAwdmgpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIHdpZHRoOiBpZigkbmVzdGVkID09IHRydWUsIDEwMCUsIDEwMHZ3KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIE1vZGlmaWVzIGEgY2VsbCB0byBnaXZlIGl0IFwiYmxvY2tcIiBiZWhhdmlvciAob3ZlcmZsb3cgYXV0bywgaW5lcnRpYWwgc2Nyb2xsaW5nKVxuLy8vXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkdmVydGljYWwgW2ZhbHNlXSAtIElzIGdyaWQgdmVydGljYWwgb3IgaG9yaXpvbnRhbC4gU2hvdWxkIG1hdGNoIGdyaWQuXG5AbWl4aW4geHktY2VsbC1ibG9jayhcbiAgJHZlcnRpY2FsOiBmYWxzZVxuKSB7XG4gICRwcm9wZXJ0eTogaWYoJHZlcnRpY2FsID09IHRydWUsICdvdmVyZmxvdy15JywgJ292ZXJmbG93LXgnKTtcblxuICBAaWYgJHZlcnRpY2FsID09IHRydWUge1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICB9IEBlbHNlIHtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuXG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7XG59XG5cbi8vLyBDb250YWluZXIgZm9yIGluc2lkZSBhIGdyaWQgZnJhbWUgY29udGFpbmluZyBtdWx0aXBsZSBibG9ja3MuIFR5cGljYWxseSB1c2VkXG4vLy8gYXMgYSBtb2RpZmllciBmb3IgYSBgLmNlbGxgIHRvIGFsbG93IHRoZSBjZWxsIHRvIHBhc3MgYWxvbmcgZmxleCBzaXppbmdcbi8vLyBjb25zdHJhaW50cyAvIGZyb20gcGFyZW50cyB0byBjaGlsZHJlbi5cbkBtaXhpbiB4eS1jZWxsLWJsb2NrLWNvbnRhaW5lcigpIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbWF4LWhlaWdodDogMTAwJTtcblxuICA+IC5ncmlkLXgge1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBGbGV4Ym94IFV0aWxpdGllc1xuLy8vL1xuLy9cbi8vLyBEZWZhdWx0IHZhbHVlIGZvciB0aGUgY291bnQgb2Ygc291cmNlIG9yZGVyaW5nYFxuLy8vIEB0eXBlIE51bWJlclxuJGZsZXgtc291cmNlLW9yZGVyaW5nLWNvdW50OiA2ICFkZWZhdWx0O1xuXG4vLy8gUXVpY2tseSBkaXNhYmxlL2VuYWJsZSBSZXNwb25zaXZlIGJyZWFrcG9pbnRzIGZvciBWYW5pbGxhIEZsZXggSGVscGVycy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kZmxleGJveC1yZXNwb25zaXZlLWJyZWFrcG9pbnRzOiB0cnVlICFkZWZhdWx0O1xuXG5AbWl4aW4gZmxleC1oZWxwZXJzIHtcbiAgLmZsZXgtY29udGFpbmVyIHtcbiAgICBAaW5jbHVkZSBmbGV4O1xuICB9XG5cbiAgLmZsZXgtY2hpbGQtYXV0byB7XG4gICAgZmxleDogMSAxIGF1dG87XG4gIH1cblxuICAuZmxleC1jaGlsZC1ncm93IHtcbiAgICBmbGV4OiAxIDAgYXV0bztcbiAgfVxuXG4gIC5mbGV4LWNoaWxkLXNocmluayB7XG4gICAgZmxleDogMCAxIGF1dG87XG4gIH1cblxuICBAZWFjaCAkZGlyLCAkcHJvcCBpbiAkLXpmLWZsZXgtZGlyZWN0aW9uIHtcbiAgICAuZmxleC1kaXItI3skZGlyfSB7XG4gICAgICBAaW5jbHVkZSBmbGV4LWRpcmVjdGlvbigkcHJvcCk7XG4gICAgfVxuICB9XG5cbiAgQGlmICgkZmxleGJveC1yZXNwb25zaXZlLWJyZWFrcG9pbnRzKSB7XG4gICAgLy8gTG9vcCB0aHJvdWdoIFJlc3BvbnNpdmUgQnJlYWtwb2ludHNcbiAgICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgICAgQGlmICRzaXplICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAuI3skc2l6ZX0tZmxleC1jb250YWluZXIge1xuICAgICAgICAgICAgQGluY2x1ZGUgZmxleDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuI3skc2l6ZX0tZmxleC1jaGlsZC1hdXRvIHtcbiAgICAgICAgICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC4jeyRzaXplfS1mbGV4LWNoaWxkLWdyb3cge1xuICAgICAgICAgICAgZmxleDogMSAwIGF1dG87XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLiN7JHNpemV9LWZsZXgtY2hpbGQtc2hyaW5rIHtcbiAgICAgICAgICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIEBlYWNoICRkaXIsICRwcm9wIGluICQtemYtZmxleC1kaXJlY3Rpb24ge1xuICAgICAgICAgICAgLiN7JHNpemV9LWZsZXgtZGlyLSN7JGRpcn0ge1xuICAgICAgICAgICAgICBAaW5jbHVkZSBmbGV4LWRpcmVjdGlvbigkcHJvcCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZsZXgtY2xhc3NlcyB7XG4gIC8vIEhvcml6b250YWwgYWxpZ25tZW50IHVzaW5nIGp1c3RpZnktY29udGVudFxuICBAZWFjaCAkaGRpciwgJHByb3AgaW4gJC16Zi1mbGV4LWp1c3RpZnkge1xuICAgIC5hbGlnbi0jeyRoZGlyfSB7XG4gICAgICBAaW5jbHVkZSBmbGV4LWFsaWduKCR4OiAkaGRpcik7XG4gICAgfVxuICB9XG4gIFxuICAvLyBIb3Jpem9udGFsIGFsaWdubWVudCBTcGVjaWZpY2FsbHkgZm9yIFZlcnRpY2FsIE1lbnVcbiAgQGVhY2ggJGhkaXIsICRwcm9wIGluIG1hcC1yZW1vdmUoJC16Zi1mbGV4LWp1c3RpZnksICdqdXN0aWZ5JywgJ3NwYWNlZCcpIHtcbiAgICAuYWxpZ24tI3skaGRpcn0ge1xuICAgICAgJi52ZXJ0aWNhbCB7XG4gICAgICAgICYubWVudSA+IGxpID4gYSB7XG4gICAgICAgICAgQGluY2x1ZGUgZmxleC1hbGlnbigkeDogJGhkaXIpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gVmVydGljYWwgYWxpZ25tZW50IHVzaW5nIGFsaWduLWl0ZW1zIGFuZCBhbGlnbi1zZWxmXG4gIEBlYWNoICR2ZGlyLCAkcHJvcCBpbiAkLXpmLWZsZXgtYWxpZ24ge1xuICAgIC5hbGlnbi0jeyR2ZGlyfSB7XG4gICAgICBAaW5jbHVkZSBmbGV4LWFsaWduKCR5OiAkdmRpcik7XG4gICAgfVxuXG4gICAgLmFsaWduLXNlbGYtI3skdmRpcn0ge1xuICAgICAgQGluY2x1ZGUgZmxleC1hbGlnbi1zZWxmKCR5OiAkdmRpcik7XG4gICAgfVxuICB9XG5cbiAgLy8gQ2VudHJhbCBhbGlnbm1lbnQgb2YgY29udGVudFxuICAuYWxpZ24tY2VudGVyLW1pZGRsZSB7XG4gICAgQGluY2x1ZGUgZmxleC1hbGlnbigkeDogY2VudGVyLCAkeTogbWlkZGxlKTtcbiAgICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XG4gIH1cblxuICAvLyBTb3VyY2Ugb3JkZXJpbmdcbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCB7XG4gICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZmxleC1zb3VyY2Utb3JkZXJpbmctY291bnQge1xuICAgICAgLiN7JC16Zi1zaXplfS1vcmRlci0jeyRpfSB7XG4gICAgICAgIEBpbmNsdWRlIGZsZXgtb3JkZXIoJGkpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFZhbmlsbGEgRmxleGJveCBIZWxwZXJzXG4gIEBpbmNsdWRlIGZsZXgtaGVscGVycztcbn1cbiIsIkBmdW5jdGlvbiAtemYtZmxleC1qdXN0aWZ5KCR0ZXh0LWRpcmVjdGlvbikge1xuICAkLXpmLWZsZXgtanVzdGlmeTogKFxuICAgICdsZWZ0JzogaWYoJHRleHQtZGlyZWN0aW9uID09IHJ0bCwgZmxleC1lbmQsIGZsZXgtc3RhcnQpLFxuICAgICdyaWdodCc6IGlmKCR0ZXh0LWRpcmVjdGlvbiA9PSBydGwsIGZsZXgtc3RhcnQsIGZsZXgtZW5kKSxcbiAgICAnY2VudGVyJzogY2VudGVyLFxuICAgICdqdXN0aWZ5Jzogc3BhY2UtYmV0d2VlbixcbiAgICAnc3BhY2VkJzogc3BhY2UtYXJvdW5kLFxuICApO1xuXG4gIEByZXR1cm4gJC16Zi1mbGV4LWp1c3RpZnk7XG59XG5cblxuJC16Zi1mbGV4LWFsaWduOiAoXG4gICd0b3AnOiBmbGV4LXN0YXJ0LFxuICAnYm90dG9tJzogZmxleC1lbmQsXG4gICdtaWRkbGUnOiBjZW50ZXIsXG4gICdzdHJldGNoJzogc3RyZXRjaCxcbik7XG5cbiQtemYtZmxleC1kaXJlY3Rpb246IChcbiAgJ3Jvdyc6IHJvdyxcbiAgJ3Jvdy1yZXZlcnNlJzogcm93LXJldmVyc2UsXG4gICdjb2x1bW4nOiBjb2x1bW4sXG4gICdjb2x1bW4tcmV2ZXJzZSc6IGNvbHVtbi1yZXZlcnNlLFxuKTtcblxuLy8vIEVuYWJsZXMgZmxleGJveCBieSBhZGRpbmcgYGRpc3BsYXk6IGZsZXhgIHRvIHRoZSBlbGVtZW50LlxuQG1peGluIGZsZXgge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuXG4vLy8gSG9yaXpvbnRhbGx5IG9yIHZlcnRpY2FsbHkgYWxpZ25zIHRoZSBpdGVtcyB3aXRoaW4gYSBmbGV4IGNvbnRhaW5lci5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHggW251bGxdIC0gSG9yaXpvbnRhbCBhbGlnbm1lbnQgdG8gdXNlLiBDYW4gYmUgYGxlZnRgLCBgcmlnaHRgLCBgY2VudGVyYCwgYGp1c3RpZnlgLCBvciBgc3BhY2VkYC4gT3IsIHNldCBpdCB0byBgbnVsbGAgKHRoZSBkZWZhdWx0KSB0byBub3Qgc2V0IGhvcml6b250YWwgYWxpZ25tZW50LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHkgW251bGxdIC0gVmVydGljYWwgYWxpZ25tZW50IHRvIHVzZS4gQ2FuIGJlIGB0b3BgLCBgYm90dG9tYCwgYG1pZGRsZWAsIG9yIGBzdHJldGNoYC4gT3IsIHNldCBpdCB0byBgbnVsbGAgKHRoZSBkZWZhdWx0KSB0byBub3Qgc2V0IHZlcnRpY2FsIGFsaWdubWVudC5cbkBtaXhpbiBmbGV4LWFsaWduKCR4OiBudWxsLCAkeTogbnVsbCkge1xuICBAaWYgJHgge1xuICAgIEBpZiBtYXAtaGFzLWtleSgkLXpmLWZsZXgtanVzdGlmeSwgJHgpIHtcbiAgICAgICR4OiBtYXAtZ2V0KCQtemYtZmxleC1qdXN0aWZ5LCAkeCk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEB3YXJuICdmbGV4LWdyaWQtcm93LWFsaWduKCk6ICN7JHh9IGlzIG5vdCBhIHZhbGlkIHZhbHVlIGZvciBob3Jpem9udGFsIGFsaWdubWVudC4gVXNlIGxlZnQsIHJpZ2h0LCBjZW50ZXIsIGp1c3RpZnksIG9yIHNwYWNlZC4nO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkeSB7XG4gICAgQGlmIG1hcC1oYXMta2V5KCQtemYtZmxleC1hbGlnbiwgJHkpIHtcbiAgICAgICR5OiBtYXAtZ2V0KCQtemYtZmxleC1hbGlnbiwgJHkpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAd2FybiAnZmxleC1ncmlkLXJvdy1hbGlnbigpOiAjeyR5fSBpcyBub3QgYSB2YWxpZCB2YWx1ZSBmb3IgdmVydGljYWwgYWxpZ25tZW50LiBVc2UgdG9wLCBib3R0b20sIG1pZGRsZSwgb3Igc3RyZXRjaC4nO1xuICAgIH1cbiAgfVxuXG4gIGp1c3RpZnktY29udGVudDogJHg7XG4gIGFsaWduLWl0ZW1zOiAkeTtcbn1cblxuLy8vIFZlcnRpY2FsbHkgYWxpZ24gYSBzaW5nbGUgY29sdW1uIHdpdGhpbiBhIGZsZXggcm93LiBBcHBseSB0aGlzIG1peGluIHRvIGEgZmxleCBjb2x1bW4uXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR5IFtudWxsXSAtIFZlcnRpY2FsIGFsaWdubWVudCB0byB1c2UuIENhbiBiZSBgdG9wYCwgYGJvdHRvbWAsIGBtaWRkbGVgLCBvciBgc3RyZXRjaGAuIE9yLCBzZXQgaXQgdG8gYG51bGxgICh0aGUgZGVmYXVsdCkgdG8gbm90IHNldCB2ZXJ0aWNhbCBhbGlnbm1lbnQuXG5AbWl4aW4gZmxleC1hbGlnbi1zZWxmKCR5OiBudWxsKSB7XG4gIEBpZiAkeSB7XG4gICAgQGlmIG1hcC1oYXMta2V5KCQtemYtZmxleC1hbGlnbiwgJHkpIHtcbiAgICAgICR5OiBtYXAtZ2V0KCQtemYtZmxleC1hbGlnbiwgJHkpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAd2FybiAnZmxleC1ncmlkLWNvbHVtbi1hbGlnbigpOiAjeyR5fSBpcyBub3QgYSB2YWxpZCB2YWx1ZSBmb3IgYWxpZ25tZW50LiBVc2UgdG9wLCBib3R0b20sIG1pZGRsZSwgb3Igc3RyZXRjaC4nO1xuICAgIH1cbiAgfVxuXG4gIGFsaWduLXNlbGY6ICR5O1xufVxuXG4vLy8gQ2hhbmdlcyB0aGUgc291cmNlIG9yZGVyIG9mIGEgZmxleCBjaGlsZC4gQ2hpbGRyZW4gd2l0aCBsb3dlciBudW1iZXJzIGFwcGVhciBmaXJzdCBpbiB0aGUgbGF5b3V0LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkb3JkZXIgWzBdIC0gT3JkZXIgbnVtYmVyIHRvIGFwcGx5LlxuQG1peGluIGZsZXgtb3JkZXIoJG9yZGVyOiAwKSB7XG4gIG9yZGVyOiAkb3JkZXI7XG59XG5cbi8vLyBDaGFuZ2UgZmxleC1kaXJlY3Rpb25cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXJlY3Rpb24gW3Jvd10gLSBGbGV4IGRpcmVjdGlvbiB0byB1c2UuIENhbiBiZVxuLy8vICAgLSByb3cgKGRlZmF1bHQpOiBzYW1lIGFzIHRleHQgZGlyZWN0aW9uXG4vLy8gICAtIHJvdy1yZXZlcnNlOiBvcHBvc2l0ZSB0byB0ZXh0IGRpcmVjdGlvblxuLy8vICAgLSBjb2x1bW46IHNhbWUgYXMgcm93IGJ1dCB0b3AgdG8gYm90dG9tXG4vLy8gICAtIGNvbHVtbi1yZXZlcnNlOiBzYW1lIGFzIHJvdy1yZXZlcnNlIHRvcCB0byBib3R0b21cbkBtaXhpbiBmbGV4LWRpcmVjdGlvbigkZGlyZWN0aW9uOiByb3cpIHtcbiAgZmxleC1kaXJlY3Rpb246ICRkaXJlY3Rpb247XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLyBIaWRlIGFuIGVsZW1lbnQgYnkgZGVmYXVsdCwgb25seSBkaXNwbGF5aW5nIGl0IGFib3ZlIGEgY2VydGFpbiBzY3JlZW4gc2l6ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIC0gQnJlYWtwb2ludCB0byB1c2UuICoqTXVzdCBiZSBhIGJyZWFrcG9pbnQgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnRzYC4qKlxuQG1peGluIHNob3ctZm9yKCRzaXplKSB7XG4gICRzaXplOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJHNpemUpO1xuICAvLyBNYXggdmFsdWUgaXMgMC4ycHggdW5kZXIgdGhlIG5leHQgYnJlYWtwb2ludCAoMC4wMiAvIDE2ID0gMC4wMDEyNSkuXG4gIC8vIFVzZSBhIHByZWNpc2lvbiB1bmRlciAxcHggdG8gc3VwcG9ydCBicm93c2VyIHpvb20sIGJ1dCBub3QgdG8gbG93IHRvIGF2b2lkIHJvdW5kaW5nLlxuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL2ZvdW5kYXRpb24vZm91bmRhdGlvbi1zaXRlcy9pc3N1ZXMvMTEzMTNcbiAgJHNpemU6IC16Zi1icC10by1lbSgkc2l6ZSkgLSAwLjAwMTI1O1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUgZG93bikge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLy8gSGlkZSBhbiBlbGVtZW50IGJ5IGRlZmF1bHQsIG9ubHkgZGlzcGxheWluZyBpdCB3aXRoaW4gYSBjZXJ0YWluIGJyZWFrcG9pbnQuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSAtIEJyZWFrcG9pbnQgdG8gdXNlLiAqKk11c3QgYmUgYSBicmVha3BvaW50IGRlZmluZWQgaW4gYCRicmVha3BvaW50c2AuKipcbkBtaXhpbiBzaG93LWZvci1vbmx5KCRzaXplKSB7XG4gICRsb3dlci1ib3VuZC1zaXplOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJHNpemUpO1xuICAkdXBwZXItYm91bmQtc2l6ZTogLXpmLW1hcC1uZXh0KCRicmVha3BvaW50cywgJHNpemUpO1xuXG4gIC8vIG1vcmUgb2Z0ZW4gdGhhbiBub3QgdGhpcyB3aWxsIGJlIGNvcnJlY3QsIGp1c3Qgb25lIHRpbWUgcm91bmQgdGhlIGxvb3AgaXQgd29uJ3Qgc28gc2V0IGluIHNjb3BlIGhlcmVcbiAgJGxvd2VyLWJvdW5kOiAtemYtYnAtdG8tZW0oJGxvd2VyLWJvdW5kLXNpemUpIC0gMC4wMDEyNTtcbiAgLy8gdGVzdCBhY3R1YWwgbG93ZXItYm91bmQtc2l6ZSwgaWYgMCBzZXQgaXQgdG8gMGVtXG4gIEBpZiBzdHJpcC11bml0KCRsb3dlci1ib3VuZC1zaXplKSA9PSAwIHtcbiAgICAkbG93ZXItYm91bmQ6IC16Zi1icC10by1lbSgkbG93ZXItYm91bmQtc2l6ZSk7XG4gIH1cblxuICBAaWYgJHVwcGVyLWJvdW5kLXNpemUgPT0gbnVsbCB7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGxvd2VyLWJvdW5kKSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAkdXBwZXItYm91bmQ6IC16Zi1icC10by1lbSgkdXBwZXItYm91bmQtc2l6ZSk7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbG93ZXItYm91bmQpLCBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICR1cHBlci1ib3VuZCkge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuXG5cbi8vLyBTaG93IGFuIGVsZW1lbnQgYnkgZGVmYXVsdCwgYW5kIGhpZGUgaXQgYWJvdmUgYSBjZXJ0YWluIHNjcmVlbiBzaXplLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBCcmVha3BvaW50IHRvIHVzZS4gKipNdXN0IGJlIGEgYnJlYWtwb2ludCBkZWZpbmVkIGluIGAkYnJlYWtwb2ludHNgLioqXG5AbWl4aW4gaGlkZS1mb3IoJHNpemUpIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLy8gU2hvdyBhbiBlbGVtZW50IGJ5IGRlZmF1bHQsIGFuZCBoaWRlIGl0IGFib3ZlIGEgY2VydGFpbiBzY3JlZW4gc2l6ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIC0gQnJlYWtwb2ludCB0byB1c2UuICoqTXVzdCBiZSBhIGJyZWFrcG9pbnQgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnRzYC4qKlxuQG1peGluIGhpZGUtZm9yLW9ubHkoJHNpemUpIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSBvbmx5KSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXZpc2liaWxpdHktY2xhc3NlcyB7XG4gIC8vIEJhc2ljIGhpZGluZyBjbGFzc2VzXG4gIC5oaWRlIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuaW52aXNpYmxlIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cbiAgLnZpc2libGUge1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cblxuICAvLyBSZXNwb25zaXZlIHZpc2liaWxpdHkgY2xhc3Nlc1xuICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgLmhpZGUtZm9yLSN7JHNpemV9IHtcbiAgICAgICAgQGluY2x1ZGUgaGlkZS1mb3IoJHNpemUpO1xuICAgICAgfVxuXG4gICAgICAuc2hvdy1mb3ItI3skc2l6ZX0ge1xuICAgICAgICBAaW5jbHVkZSBzaG93LWZvcigkc2l6ZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmhpZGUtZm9yLSN7JHNpemV9LW9ubHkge1xuICAgICAgQGluY2x1ZGUgaGlkZS1mb3Itb25seSgkc2l6ZSk7XG4gICAgfVxuXG4gICAgLnNob3ctZm9yLSN7JHNpemV9LW9ubHkge1xuICAgICAgQGluY2x1ZGUgc2hvdy1mb3Itb25seSgkc2l6ZSk7XG4gICAgfVxuICB9XG5cbiAgLy8gU2NyZWVuIHJlYWRlciB2aXNpYmlsaXR5IGNsYXNzZXNcbiAgLy8gTmVlZCBhIFwiaGlkZS1mb3Itc3JcIiBjbGFzcz8gQWRkIGFyaWEtaGlkZGVuPSd0cnVlJyB0byB0aGUgZWxlbWVudFxuICAuc2hvdy1mb3Itc3IsXG4gIC5zaG93LW9uLWZvY3VzIHtcbiAgICBAaW5jbHVkZSBlbGVtZW50LWludmlzaWJsZTtcbiAgfVxuXG4gIC8vIE9ubHkgZGlzcGxheSB0aGUgZWxlbWVudCB3aGVuIGl0J3MgZm9jdXNlZFxuICAuc2hvdy1vbi1mb2N1cyB7XG4gICAgJjphY3RpdmUsXG4gICAgJjpmb2N1cyB7XG4gICAgICBAaW5jbHVkZSBlbGVtZW50LWludmlzaWJsZS1vZmY7XG4gICAgfVxuICB9XG5cbiAgLy8gTGFuZHNjYXBlIGFuZCBwb3J0cmFpdCB2aXNpYmlsaXR5XG4gIC5zaG93LWZvci1sYW5kc2NhcGUsXG4gIC5oaWRlLWZvci1wb3J0cmFpdCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFuZHNjYXBlKSB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocG9ydHJhaXQpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAuaGlkZS1mb3ItbGFuZHNjYXBlLFxuICAuc2hvdy1mb3ItcG9ydHJhaXQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFuZHNjYXBlKSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChwb3J0cmFpdCkge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAvLyBEYXJrIE1vZGUgVmlzaWJpbGl0eVxuICAuc2hvdy1mb3ItZGFyay1tb2RlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5oaWRlLWZvci1kYXJrLW1vZGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyaykge1xuICAgIC5zaG93LWZvci1kYXJrLW1vZGUge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB9XG4gICAgLmhpZGUtZm9yLWRhcmstbW9kZSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgLy8gSUUxMCsgVmlzaWJpbGl0eVxuICAuc2hvdy1mb3ItaWUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgQG1lZGlhIGFsbCBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpIHtcbiAgICAuc2hvdy1mb3ItaWUge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB9XG4gICAgLmhpZGUtZm9yLWllIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAvLyBTdGlja3kgVmlzaWJpbGl0eVxuICAuc2hvdy1mb3Itc3RpY2t5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5pcy1zdHVjayAuc2hvdy1mb3Itc3RpY2t5IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAuaXMtc3R1Y2sgLmhpZGUtZm9yLXN0aWNreSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuIiwiLyohIGxvY29tb3RpdmUtc2Nyb2xsIHY0LjEuMyB8IE1JVCBMaWNlbnNlIHwgaHR0cHM6Ly9naXRodWIuY29tL2xvY29tb3RpdmVtdGwvbG9jb21vdGl2ZS1zY3JvbGwgKi9cbmh0bWwuaGFzLXNjcm9sbC1zbW9vdGgge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG5odG1sLmhhcy1zY3JvbGwtZHJhZ2dpbmcge1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xufVxuXG4uaGFzLXNjcm9sbC1zbW9vdGggYm9keSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5oYXMtc2Nyb2xsLXNtb290aCBbZGF0YS1zY3JvbGwtY29udGFpbmVyXSB7XG4gIG1pbi1oZWlnaHQ6IDEwMHZoO1xufVxuXG5bZGF0YS1zY3JvbGwtZGlyZWN0aW9uPVwiaG9yaXpvbnRhbFwiXSBbZGF0YS1zY3JvbGwtY29udGFpbmVyXSB7XG4gIGhlaWdodDogMTAwdmg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgLy8gZGlzcGxheTogZmxleDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgLy8gZml4IHNlY3Rpb24gZ2Fwc1xuICB0ZXh0LWFsaWduOiBqdXN0aWZ5O1xuICBmb250LXNpemU6IDA7XG59XG5cbltkYXRhLXNjcm9sbC1kaXJlY3Rpb249XCJob3Jpem9udGFsXCJdIFtkYXRhLXNjcm9sbC1zZWN0aW9uXSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4uYy1zY3JvbGxiYXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMXB4O1xuICBoZWlnaHQ6IDEwMCU7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciByaWdodDtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MsIG9wYWNpdHkgMC4zcztcbiAgb3BhY2l0eTogMDtcbn1cbi5jLXNjcm9sbGJhcjpob3ZlciB7XG4gIHRyYW5zZm9ybTogc2NhbGVYKDEuNDUpO1xufVxuLmMtc2Nyb2xsYmFyOmhvdmVyLFxuLmhhcy1zY3JvbGwtc2Nyb2xsaW5nIC5jLXNjcm9sbGJhcixcbi5oYXMtc2Nyb2xsLWRyYWdnaW5nIC5jLXNjcm9sbGJhciB7XG4gIG9wYWNpdHk6IDE7XG59XG5bZGF0YS1zY3JvbGwtZGlyZWN0aW9uPVwiaG9yaXpvbnRhbFwiXSAuYy1zY3JvbGxiYXIge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMHB4O1xuICB0b3A6IGF1dG87XG4gIGJvdHRvbTogMDtcbiAgdHJhbnNmb3JtOiBzY2FsZVkoMSk7XG59XG5bZGF0YS1zY3JvbGwtZGlyZWN0aW9uPVwiaG9yaXpvbnRhbFwiXSAuYy1zY3JvbGxiYXI6aG92ZXIge1xuICB0cmFuc2Zvcm06IHNjYWxlWSgxLjMpO1xufVxuXG4uYy1zY3JvbGxiYXJfdGh1bWIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IGJsYWNrO1xuICBvcGFjaXR5OiAwLjU7XG4gIHdpZHRoOiA3cHg7XG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gIG1hcmdpbjogMnB4O1xuICBjdXJzb3I6IC13ZWJraXQtZ3JhYjtcbiAgY3Vyc29yOiBncmFiO1xufVxuLmhhcy1zY3JvbGwtZHJhZ2dpbmcgLmMtc2Nyb2xsYmFyX3RodW1iIHtcbiAgY3Vyc29yOiAtd2Via2l0LWdyYWJiaW5nO1xuICBjdXJzb3I6IGdyYWJiaW5nO1xufVxuW2RhdGEtc2Nyb2xsLWRpcmVjdGlvbj1cImhvcml6b250YWxcIl0gLmMtc2Nyb2xsYmFyX3RodW1iIHtcbiAgcmlnaHQ6IGF1dG87XG4gIGJvdHRvbTogMDtcbn1cbiIsIkB1c2UgXCJzYXNzOm1hdGhcIjtcblxuLy8gaHR0cHM6Ly9zdGFja292ZXJmbG93LmNvbS9xdWVzdGlvbnMvMTc0NzQ5MzAvZGlzYWJsZS1jaHJvbWUtdHdvLWZpbmdlcnMtYmFjay1mb3J3YXJkLXN3aXBlXG5odG1sLFxuYm9keSB7XG5cdG92ZXJzY3JvbGwtYmVoYXZpb3I6IG5vbmU7XG5cdG92ZXJzY3JvbGwtYmVoYXZpb3IteDogbm9uZTtcbn1cblxuLmdyaWQtY29udGFpbmVyIHtcblx0bWF4LXdpZHRoOiAxMDAlO1xufVxuXG4vLyBESVNBQkxFIE1PVElPTlxuLi0tZGlzYWJsZW1vdGlvbiB7XG5cdCYsXG5cdCoge1xuXHRcdHRyYW5zaXRpb246IG5vbmUgIWltcG9ydGFudDtcblx0fVxuXHQuc2hvb3QtdGlja2VyIHtcblx0XHRkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG5cdH1cbn1cblxuKixcbio6OmJlZm9yZSxcbio6OmFmdGVyIHtcblx0LXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuKixcbio6YWN0aXZlLFxuKjpmb2N1cyxcbio6dmlzaXRlZCB7XG5cdG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuOjotbW96LXNlbGVjdGlvbiB7XG5cdGJhY2tncm91bmQ6IHZhcigtLW1lZGl1bWdyZXkpO1xufVxuOjpzZWxlY3Rpb24ge1xuXHRiYWNrZ3JvdW5kOiB2YXIoLS1tZWRpdW1ncmV5KTtcbn1cblxuOjotbW96LWZvY3VzLWlubmVyIHtcblx0Ym9yZGVyOiAwO1xuXHRwYWRkaW5nOiAwO1xufVxuXG4uc2NyZWVuLXJlYWRlcixcbi5mcm1fc2NyZWVuX3JlYWRlcixcbi5oaWRlLFxuLnZpc3VhbGx5SGlkZGVuLFxuLnZpc3VhbGx5LWhpZGRlbiB7XG5cdGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLi0tem9vbSxcbi56b29tIHtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHRpbWcsXG5cdHZpZGVvIHtcblx0XHR0cmFuc2l0aW9uOiBhbGwgZWFzZSAycztcblx0fVxufVxuXG5zdHJvbmcsXG5iIHtcblx0Zm9udC13ZWlnaHQ6IHZhcigtLXdlaWdodC1zYm9sZCk7XG59XG5cbi5mbGV4LWhlaWdodCB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0d2lkdGg6IDEwMCU7XG5cdGhlaWdodDogMTAwdmg7XG5cdGhlaWdodDogY2FsYygxMDB2aCAtIGNhbGModmFyKC0tbWVudWhlaWdodCkgKiAxKSk7XG5cdCYuZnVsbCB7XG5cdFx0aGVpZ2h0OiAxMDB2aDtcblx0fVxuXHQmLmhhbGYge1xuXHRcdGhlaWdodDogNTB2aDtcblx0fVxuXHQmLmZpbGwtaGVpZ2h0IHtcblx0XHRoZWlnaHQ6IDEwMCU7XG5cdH1cblx0Ji4tLWxlZnQge1xuXHRcdHZpZGVvLFxuXHRcdGlmcmFtZSxcblx0XHRpbWcge1xuXHRcdFx0b2JqZWN0LXBvc2l0aW9uOiBsZWZ0IGNlbnRlcjtcblx0XHR9XG5cdH1cblx0Ji4tLXJpZ2h0IHtcblx0XHR2aWRlbyxcblx0XHRpZnJhbWUsXG5cdFx0aW1nIHtcblx0XHRcdG9iamVjdC1wb3NpdGlvbjogcmlnaHQgY2VudGVyO1xuXHRcdH1cblx0fVxuXHR2aWRlbyxcblx0aWZyYW1lLFxuXHRpbWcge1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR0b3A6IDA7XG5cdFx0bGVmdDogMDtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0ei1pbmRleDogMTtcblx0XHRvYmplY3QtZml0OiBjb250YWluO1xuXHR9XG5cdCYuY292ZXIsXG5cdCYuZml0IHtcblx0XHR2aWRlbyxcblx0XHRpZnJhbWUsXG5cdFx0aW1nIHtcblx0XHRcdEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtLWJyZWFrcG9pbnQpIHtcblx0XHRcdFx0b2JqZWN0LWZpdDogY292ZXI7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cdCYuY29udGFpbiB7XG5cdFx0dmlkZW8sXG5cdFx0aWZyYW1lLFxuXHRcdGltZyB7XG5cdFx0XHRvYmplY3QtZml0OiBjb250YWluO1xuXHRcdFx0b2JqZWN0LXBvc2l0aW9uOiBjZW50ZXI7XG5cdFx0fVxuXHRcdCYuLS10b3Age1xuXHRcdFx0dmlkZW8sXG5cdFx0XHRpZnJhbWUsXG5cdFx0XHRpbWcge1xuXHRcdFx0XHRvYmplY3QtcG9zaXRpb246IHRvcDtcblx0XHRcdH1cblx0XHR9XG5cdFx0Ji4tLW1pZGRsZSB7XG5cdFx0XHR2aWRlbyxcblx0XHRcdGlmcmFtZSxcblx0XHRcdGltZyB7XG5cdFx0XHRcdG9iamVjdC1wb3NpdGlvbjogY2VudGVyO1xuXHRcdFx0fVxuXHRcdH1cblx0XHQmLi0tYm90dG9tIHtcblx0XHRcdHZpZGVvLFxuXHRcdFx0aWZyYW1lLFxuXHRcdFx0aW1nIHtcblx0XHRcdFx0b2JqZWN0LXBvc2l0aW9uOiBib3R0b207XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG4uZmxleC1yb3cge1xuXHRpbWcsXG5cdHZpZGVvIHtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRoZWlnaHQ6IGF1dG87XG5cdH1cblx0Ji5hbmltYXRlLWluIHtcblx0XHRiYWNrZ3JvdW5kOiB2YXIoLS1ob3ZlcnN0YXRlKTtcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHRcdG9wYWNpdHk6IDA7XG5cdFx0dHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGxpbmVhcjtcblx0XHRpbWcsXG5cdFx0dmlkZW8sXG5cdFx0aWZyYW1lIHtcblx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG5cdFx0XHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC45NXMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSkgMTUwbXM7XG5cdFx0fVxuXHRcdCYuLS1pcy1hZG1pbiB7XG5cdFx0XHRvcGFjaXR5OiAxO1xuXHRcdFx0aW1nLFxuXHRcdFx0dmlkZW8sXG5cdFx0XHRpZnJhbWUge1xuXHRcdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi8vIE1FRElBIFJPV1xuXG4ubWVkaWEtcm93IHtcblx0ZmxleC1kaXJlY3Rpb246IHJvdztcblx0ZmxleC13cmFwOiBub3dyYXA7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGdhcDogMCAwLjlyZW07XG5cblx0QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtZWRpdW0tYnJlYWtwb2ludCkge1xuXHRcdGdhcDogMCAxLjg3NXJlbTtcblx0fVxufVxuXG4vLyBTQ1JPTExJTkcgTUFSUVVFRVxuXG4ubWFycXVlZSB7XG5cdHBhZGRpbmc6IDEuMzVyZW0gMDtcblx0QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtZWRpdW0tYnJlYWtwb2ludCkge1xuXHRcdHBhZGRpbmc6IDIuMTM1cmVtIDA7XG5cdH1cblx0bWFyZ2luOiAwO1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHRtYXgtd2lkdGg6IDEwMHZ3O1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdGJvcmRlci10b3A6IHZhcigtLWxpbmUpO1xuXHRib3JkZXItYm90dG9tOiB2YXIoLS1saW5lKTtcblx0ZGlzcGxheTogZmxleDtcblx0LS1zcGVlZDogMjBzO1xuXHQ+IHNwYW4ge1xuXHRcdGZvbnQtc2l6ZTogdmFyKC0tc2l6ZS1wbHVzMSk7XG5cdFx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcblx0XHRoZWlnaHQ6IHZhcigtLXNpemUtcGx1czEpO1xuXHRcdHRleHQtdHJhbnNmb3JtOiBub25lO1xuXHRcdGxpbmUtaGVpZ2h0OiAxO1xuXHRcdGNvbG9yOiB2YXIoLS1tYXJxdWVlY29sb3IpO1xuXHRcdHNwYW4ge1xuXHRcdFx0bWFyZ2luOiAwIDAuNDllbTtcblx0XHR9XG5cdH1cblxuXHQubWFycXVlZS0xLFxuXHQubWFycXVlZS0yIHtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOiBjYWxjKDUwJSAtIGNhbGModmFyKC0tc2l6ZS1wbHVzMSkgKiAwLjUpKTtcblx0XHRsZWZ0OiAwO1xuXHRcdGhlaWdodDogMTAwJTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuXHRcdHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cdFx0dHJhbnNpdGlvbjogYWxsIDYwMG1zIGN1YmljLWJlemllcigwLjI1LCAwLjEsIDAuMjUsIDEpO1xuXHR9XG5cdC5tYXJxdWVlLTEge1xuXHRcdGFuaW1hdGlvbjogbWFycXVlZSBjYWxjKHZhcigtLXNwZWVkKSAqIDMpIGxpbmVhciBpbmZpbml0ZTtcblx0XHRAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bS1icmVha3BvaW50KSB7XG5cdFx0XHRhbmltYXRpb246IG1hcnF1ZWUgdmFyKC0tc3BlZWQpIGxpbmVhciBpbmZpbml0ZTtcblx0XHR9XG5cdH1cblx0Lm1hcnF1ZWUtMiB7XG5cdFx0YW5pbWF0aW9uOiBtYXJxdWVlMiBjYWxjKHZhcigtLXNwZWVkKSAqIDMpIGxpbmVhciBpbmZpbml0ZTtcblx0XHRAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bS1icmVha3BvaW50KSB7XG5cdFx0XHRhbmltYXRpb246IG1hcnF1ZWUyIHZhcigtLXNwZWVkKSBsaW5lYXIgaW5maW5pdGU7XG5cdFx0fVxuXHR9XG59XG5cbkBrZXlmcmFtZXMgbWFycXVlZSB7XG5cdGZyb20ge1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSk7XG5cdH1cblx0dG8ge1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG5cdH1cbn1cblxuQGtleWZyYW1lcyBtYXJxdWVlMiB7XG5cdGZyb20ge1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcblx0fVxuXHR0byB7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKTtcblx0fVxufVxuQGtleWZyYW1lcyBtYXJxdWVlcmV2ZXJzZSB7XG5cdGZyb20ge1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG5cdH1cblx0dG8ge1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSk7XG5cdH1cbn1cblxuQGtleWZyYW1lcyBtYXJxdWVlcmV2ZXJzZTIge1xuXHRmcm9tIHtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpO1xuXHR9XG5cdHRvIHtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG5cdH1cbn1cblxuLm1hcnF1ZWUtY3RhIHtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHQubWFycXVlZSB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHRvcDogNTAlO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcblx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0bGVmdDogMDtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRvcGFjaXR5OiAwO1xuXHRcdHRyYW5zaXRpb246IGFsbCBlYXNlIDUwMG1zO1xuXHRcdGJvcmRlcjogbm9uZTtcblx0XHR6LWluZGV4OiAzO1xuXHRcdHBhZGRpbmc6IDA7XG5cdFx0c3BhbiB7XG5cdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdFx0Zm9udC1zaXplOiB2YXIoLS1zaXplLXBsdXMxKTtcblx0XHRcdHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cdFx0XHRoZWlnaHQ6IHZhcigtLXNpemUtcGx1czEpO1xuXHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0dGV4dC10cmFuc2Zvcm06IG5vbmU7XG5cdFx0XHRsaW5lLWhlaWdodDogMTtcblx0XHRcdGNvbG9yOiB2YXIoLS1tYXJxdWVlY29sb3IpO1xuXHRcdFx0bWFyZ2luOiAwIDAuNDllbTtcblx0XHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdFx0fVxuXHRcdC5tYXJxdWVlLTEsXG5cdFx0Lm1hcnF1ZWUtMiB7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHQvLyB0b3A6IGNhbGMoNTAlIC0gdmFyKC0tc2l6ZS1wbHVzMSkpO1xuXHRcdFx0bGVmdDogMDtcblx0XHRcdGhlaWdodDogYXV0bztcblx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG5cdFx0XHR3aGl0ZS1zcGFjZTogbm93cmFwO1xuXHRcdFx0dHJhbnNpdGlvbjogYWxsIDYwMG1zIGN1YmljLWJlemllcigwLjI1LCAwLjEsIDAuMjUsIDEpO1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdHNwYW4ge1xuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdH1cblx0XHR9XG5cdFx0Lm1hcnF1ZWUtMSB7XG5cdFx0XHRhbmltYXRpb246IG1hcnF1ZWUgY2FsYyh2YXIoLS1zcGVlZCkgKiAzKSBsaW5lYXIgaW5maW5pdGU7XG5cdFx0XHRAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bS1icmVha3BvaW50KSB7XG5cdFx0XHRcdGFuaW1hdGlvbjogbWFycXVlZSB2YXIoLS1zcGVlZCkgbGluZWFyIGluZmluaXRlO1xuXHRcdFx0fVxuXHRcdH1cblx0XHQubWFycXVlZS0yIHtcblx0XHRcdGFuaW1hdGlvbjogbWFycXVlZTIgY2FsYyh2YXIoLS1zcGVlZCkgKiAzKSBsaW5lYXIgaW5maW5pdGU7XG5cdFx0XHRAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bS1icmVha3BvaW50KSB7XG5cdFx0XHRcdGFuaW1hdGlvbjogbWFycXVlZTIgdmFyKC0tc3BlZWQpIGxpbmVhciBpbmZpbml0ZTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblx0YSB7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdH1cblx0Ly8gPiBhLFxuXHQuY3RhLXRleHQge1xuXHRcdHotaW5kZXg6IDE7XG5cdFx0dHJhbnNpdGlvbjogYWxsIGVhc2UgNTAwbXM7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR9XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0JjphZnRlciB7XG5cdFx0Y29udGVudDogXCIgXCI7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHRyYW5zaXRpb246IGFsbCBlYXNlIDUwMG1zO1xuXHRcdHRvcDogNTAlO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcblx0XHRsZWZ0OiAwO1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdHotaW5kZXg6IDE7XG5cdFx0YmFja2dyb3VuZDogdmFyKC0taG92ZXJzdGF0ZSk7XG5cdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdG1heC1oZWlnaHQ6IDBweDtcblx0XHR6LWluZGV4OiAyO1xuXHR9XG5cdCY6aG92ZXIge1xuXHRcdC8vIC5jdGEtdGV4dCB7XG5cdFx0Ly8gb3ZlcmZsb3c6IDA7XG5cdFx0Ly8gfVxuXHRcdC5tYXJxdWVlIHtcblx0XHRcdG9wYWNpdHk6IDE7XG5cdFx0fVxuXHRcdCY6YWZ0ZXIge1xuXHRcdFx0bWF4LWhlaWdodDogMy42cmVtO1xuXHRcdH1cblx0fVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtZWRpdW0tYnJlYWtwb2ludCkge1xuXHQuYmxvY2stY3RhLWJsb2NrLWNlbGwuY2VsbC5ibG9jay1jdGEtYmxvY2stY2VsbC1tYXJnaW4ge1xuXHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdH1cbn1cblxuLmZsZXgtY3RhLWhvdmVyIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRwYWRkaW5nLWJvdHRvbTogMTUwJTtcblx0QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtZWRpdW0tYnJlYWtwb2ludCkge1xuXHRcdHBhZGRpbmctYm90dG9tOiAxMDAlO1xuXHR9XG5cdGhlaWdodDogMHB4O1xuXHR3aWR0aDogMTAwJTtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0Ji4tLXllbGxvdyAuZmxleC1ob3ZlciB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0teWVsbG93KTtcblx0XHQtLWJsYWNrOiB2YXIoLS1ibGFjayk7XG5cdH1cblx0Ji4tLXJlZCAuZmxleC1ob3ZlciB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcmVkKTtcblx0fVxuXHQmLi0tYmx1ZSAuZmxleC1ob3ZlciB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmx1ZSk7XG5cdH1cblx0Ji4tLWJsYWNrIC5mbGV4LWhvdmVyIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ibGFjayk7XG5cdH1cblx0LmZsZXgtdGl0bGUsXG5cdC5mbGV4LWhvdmVyIHtcblx0XHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gZWFzZSA1MDBtcztcblx0fVxuXG5cdC5mbGV4LXRpdGxlIHtcblx0XHRkaXNwbGF5OiBub25lO1xuXHRcdEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtLWJyZWFrcG9pbnQpIHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRmbGV4LWRpcmVjdGlvbjogcm93O1xuXHRcdFx0ZmxleC13cmFwOiBub3dyYXA7XG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHR0b3A6IDA7XG5cdFx0XHRsZWZ0OiAwO1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHR6LWluZGV4OiAxO1xuXHRcdFx0aDMge1xuXHRcdFx0XHRmb250LXNpemU6IHZhcigtLXNpemUtcGx1czgpO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC5mbGV4LWhvdmVyIHtcblx0XHQtLWJsYWNrOiB2YXIoLS13aGl0ZSk7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdGhlaWdodDogMTAwJTtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOiAxcHg7XG5cdFx0bGVmdDogMDtcblx0XHR3aWR0aDogMTAwJTtcblx0XHR6LWluZGV4OiAxO1xuXHRcdEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtLWJyZWFrcG9pbnQpIHtcblx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTtcblx0XHR9XG5cblx0XHQudG9wIHtcblx0XHRcdG1pbi1oZWlnaHQ6IDUwJTtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHRcdFx0YWxpZ24tY29udGVudDogc3RyZXRjaDtcblx0XHRcdD4gZGl2IHtcblx0XHRcdFx0cGFkZGluZzogMC45ZW07XG5cdFx0XHRcdEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtLWJyZWFrcG9pbnQpIHtcblx0XHRcdFx0XHRwYWRkaW5nOiAxLjhlbTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdFx0cCB7XG5cdFx0XHRcdG1hcmdpbjogMDtcblx0XHRcdH1cblx0XHRcdC50b3AtaW5uZXIge1xuXHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdH1cblx0XHRcdC5ib3R0b20taW5uZXIge1xuXHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtZWRpdW0tYnJlYWtwb2ludCkge1xuXHRcdFx0XHRcdHdpZHRoOiA2MCU7XG5cdFx0XHRcdFx0bWFyZ2luLWxlZnQ6IDQwJTtcblx0XHRcdFx0fVxuXHRcdFx0XHQuY3RhLWJ1dHRvbiB7XG5cdFx0XHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdFx0XHRmbGV4LXdyYXA6IHdyYXA7XG5cdFx0XHRcdFx0Z2FwOiAwLjQ1ZW07XG5cdFx0XHRcdFx0Zm9udC1zaXplOiB2YXIoLS1zaXplLXBsdXMxKTtcblx0XHRcdFx0XHRmb250LWZhbWlseTogdmFyKC0tYm9keS1mb250KTtcblx0XHRcdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdFx0XHRcdGNvbG9yOiB2YXIoLS1ibGFjayk7XG5cdFx0XHRcdFx0Zm9udC13ZWlnaHQ6IHZhcigtLXdlaWdodC1ub3JtYWwpO1xuXHRcdFx0XHRcdGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LWxpbmUtaGVpZ2h0KTtcblx0XHRcdFx0XHRmb250LXdlaWdodDogdmFyKC0td2VpZ2h0LXNib2xkKTtcblx0XHRcdFx0XHRtYXJnaW4tdG9wOiAwLjllbTtcblx0XHRcdFx0XHRzdmcge1xuXHRcdFx0XHRcdFx0aGVpZ2h0OiAxLjM1ZW07XG5cdFx0XHRcdFx0XHRmaWxsOiB2YXIoLS1ibGFjayk7XG5cdFx0XHRcdFx0XHRtYXJnaW4tbGVmdDogLTAuNDVlbTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdFx0LmJvdHRvbSB7XG5cdFx0XHRmbGV4LWdyb3c6IDE7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRpbWcsXG5cdFx0XHR2aWRlbyB7XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0dG9wOiAwO1xuXHRcdFx0XHRsZWZ0OiAwO1xuXHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdFx0XHRvYmplY3QtZml0OiBjb3Zlcjtcblx0XHRcdH1cblx0XHR9XG5cdH1cblx0Jjpob3ZlciB7XG5cdFx0LmZsZXgtdGl0bGUge1xuXHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcblx0XHR9XG5cdFx0LmZsZXgtaG92ZXIge1xuXHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuXHRcdH1cblx0fVxufVxuXG4vLyBSRVNQT05TSVZFIE1FRElBXG5cbi5mbGV4LXZpZGVvLFxuLmZsZXgtaW1hZ2Uge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHdpZHRoOiAxMDAlO1xuXHRoZWlnaHQ6IDBweDtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRwYWRkaW5nLWJvdHRvbTogNTYuMjUlO1xuXHR6LWluZGV4OiAxO1xuXHQmLmVtYmVkLXJldmVhbCB7XG5cdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHR9XG5cdCYucGFyYWxsYXgtY29udGFpbmVyIHtcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHRcdC5wYXJhbGxheCB7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHR0b3A6IDA7XG5cdFx0XHRsZWZ0OiAwO1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0fVxuXHR9XG5cdHZpZGVvLFxuXHRpZnJhbWUsXG5cdGltZyB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHRvcDogMDtcblx0XHRsZWZ0OiAwO1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdGhlaWdodDogYXV0bztcblx0XHR6LWluZGV4OiAxO1xuXHR9XG5cdGlmcmFtZSB7XG5cdFx0ei1pbmRleDogMztcblx0fVxuXHRzdmcge1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR0b3A6IDUwJTtcblx0XHRsZWZ0OiA1MCU7XG5cdFx0ei1pbmRleDogMjtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcblx0XHR3aWR0aDogMTYycHg7XG5cdFx0aGVpZ2h0OiAxNjJweDtcblx0fVxuXHRpZnJhbWUge1xuXHRcdGhlaWdodDogMTAwJTtcblx0fVxuXHQmLnNxdWFyZSB7XG5cdFx0cGFkZGluZy1ib3R0b206IDEwMCU7XG5cdH1cblx0LmVtYmVkLWxheWVyIHtcblx0XHR6LWluZGV4OiAzO1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR0b3A6IDA7XG5cdFx0bGVmdDogMDtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0LmdyaWQtY29udGFpbmVyLFxuXHRcdC5ncmlkLXgge1xuXHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdH1cblx0fVxuXHQmLnpvb20ge1xuXHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHRpbWcsXG5cdFx0dmlkZW8ge1xuXHRcdFx0dHJhbnNpdGlvbjogYWxsIGVhc2UgMnM7XG5cdFx0fVxuXHRcdCY6aG92ZXIge1xuXHRcdFx0aW1nLFxuXHRcdFx0dmlkZW8ge1xuXHRcdFx0XHR0cmFuc2Zvcm06IHNjYWxlKDEuMTI1KTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblx0Ji5yb3VuZCB7XG5cdFx0Ym9yZGVyLXJhZGl1czogMTAwJTtcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHR9XG5cdCYuc2hyaW5rIGltZyB7XG5cdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdG9iamVjdC1maXQ6IGNvbnRhaW47XG5cdFx0b2JqZWN0LXBvc2l0aW9uOiBjZW50ZXI7XG5cdH1cblx0Ji5maXQsXG5cdCYuY292ZXIge1xuXHRcdGltZyxcblx0XHR2aWRlbyB7XG5cdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0XHRvYmplY3QtZml0OiBjb3Zlcjtcblx0XHR9XG5cdH1cblx0Ji5ib3JkZXIge1xuXHRcdGJvcmRlcjogMC42MjVyZW0gc29saWQgdmFyKC0tYmxhY2spO1xuXHRcdCYuZ3JlZW4ge1xuXHRcdFx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1ncmVlbik7XG5cdFx0fVxuXHRcdCYuY3JlYW0ge1xuXHRcdFx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1jcmVhbSk7XG5cdFx0fVxuXHRcdCYuYmx1ZSB7XG5cdFx0XHRib3JkZXItY29sb3I6IHZhcigtLWJsYWNrKTtcblx0XHR9XG5cdH1cblx0Ji5hbmltYXRlLWluIHtcblx0XHRiYWNrZ3JvdW5kOiB2YXIoLS1ob3ZlcnN0YXRlKTtcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHRcdG9wYWNpdHk6IDA7XG5cdFx0dHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGxpbmVhcjtcblx0XHRpbWcsXG5cdFx0dmlkZW8sXG5cdFx0aWZyYW1lIHtcblx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG5cdFx0XHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC45NXMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSkgMTUwbXM7XG5cdFx0fVxuXHRcdCYuLS1pcy1hZG1pbiB7XG5cdFx0XHRvcGFjaXR5OiAxO1xuXHRcdFx0aW1nLFxuXHRcdFx0dmlkZW8sXG5cdFx0XHRpZnJhbWUge1xuXHRcdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG4uaXMtaW52aWV3IHtcblx0Ji5mbGV4LXJvdyxcblx0LmZsZXgtcm93LFxuXHQmLmZsZXgtaGVpZ2h0LFxuXHQuZmxleC1oZWlnaHQsXG5cdCYuZmxleC1pbWFnZSxcblx0Ji5mbGV4LXZpZGVvLFxuXHQuZmxleC1pbWFnZSxcblx0LmZsZXgtdmlkZW8ge1xuXHRcdCYuYW5pbWF0ZS1pbiB7XG5cdFx0XHRvcGFjaXR5OiAxO1xuXHRcdFx0aW1nLFxuXHRcdFx0dmlkZW8sXG5cdFx0XHRpZnJhbWUge1xuXHRcdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi5pbWFnZS1jYXJkIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRkaXNwbGF5OiBibG9jaztcblx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcblx0d2lkdGg6IDEwMCU7XG5cdGhlaWdodDogMHB4O1xuXHRwYWRkaW5nLWJvdHRvbTogMTAwJTtcblx0dmlkZW8sXG5cdGlmcmFtZSxcblx0aW1nIHtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOiAwO1xuXHRcdGxlZnQ6IDA7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdHotaW5kZXg6IDE7XG5cdFx0b2JqZWN0LWZpdDogY292ZXI7XG5cdFx0ZmlsdGVyOiBncmF5c2NhbGUoMTAwJSk7XG5cdH1cblx0QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtZWRpdW0tYnJlYWtwb2ludCkge1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWigxMDAwcHgpIHBlcnNwZWN0aXZlKDE1MDBweCkgcm90YXRlWSgwKSByb3RhdGVYKDApO1xuXHRcdGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcblx0fVxuXHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gNTAwbXMgZWFzZSAwcztcblx0QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtZWRpdW0tYnJlYWtwb2ludCkge1xuXHRcdCYucGVyc3BlY3RpdmUtbGVmdCB7XG5cdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVaKDEwMDBweCkgcGVyc3BlY3RpdmUoMzAwMHB4KSByb3RhdGVZKDI1ZGVnKSByb3RhdGVYKDI1ZGVnKTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQmLnBlcnNwZWN0aXZlLXJpZ2h0IHtcblx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMTAwMHB4KSBwZXJzcGVjdGl2ZSgzMDAwcHgpIHJvdGF0ZVkoLTI1ZGVnKSByb3RhdGVYKDI1ZGVnKTtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtZWRpdW0tYnJlYWtwb2ludCkge1xuXHQuc21hbGwtb25seSB7XG5cdFx0ZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuXHR9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbWVkaXVtLWJyZWFrcG9pbnQpIHtcblx0Lm1lZGl1bS1vbmx5IHtcblx0XHRkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG5cdH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbWVkaXVtLWJyZWFrcG9pbnQpIHtcblx0Lm1lZGl1bS11cCB7XG5cdFx0ZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuXHR9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGxhcmdlLWJyZWFrcG9pbnQpIHtcblx0LmxhcmdlLXVwIHtcblx0XHRkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG5cdH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbGFyZ2UtYnJlYWtwb2ludCkge1xuXHQubWVkaXVtLW9ubHkge1xuXHRcdGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcblx0fVxufVxuXG4vLyBCQVNFIFRFWFRcblxuaHIge1xuXHR3aWR0aDogMTAwJTtcblx0aGVpZ2h0OiAxcHg7XG5cdG1hcmdpbjogMS44cmVtIDA7XG5cdGJhY2tncm91bmQ6IHZhcigtLWJsYWNrKTtcblx0Ym9yZGVyOiBub25lO1xufVxuXG51bCxcbm9sLFxucCB7XG5cdGZvbnQtc2l6ZTogMXJlbTtcblx0QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtZWRpdW0tYnJlYWtwb2ludCkge1xuXHRcdGZvbnQtc2l6ZTogdmFyKC0tc2l6ZS1wbHVzMSk7XG5cdH1cblx0dGV4dC1hbGlnbjogbGVmdDtcblx0bWFyZ2luLXRvcDogMDtcblx0bWFyZ2luLWJvdHRvbTogMS4yNWVtO1xuXHR3aGl0ZS1zcGFjZTogbm9ybWFsO1xuXHRiLFxuXHRzdHJvbmcge1xuXHRcdGZvbnQtd2VpZ2h0OiB2YXIoLS13ZWlnaHQtc2JvbGQpO1xuXHR9XG5cdCYucGx1cyB7XG5cdFx0Zm9udC1zaXplOiB2YXIoLS1zaXplLXBsdXMyKTtcblx0fVxuXHQmLmxlYWQge1xuXHRcdGZvbnQtc2l6ZTogdmFyKC0tc2l6ZS1wbHVzMik7XG5cdFx0Ji5wbHVzIHtcblx0XHRcdGZvbnQtc2l6ZTogdmFyKC0tc2l6ZS1wbHVzMyk7XG5cdFx0XHRsaW5lLWhlaWdodDogdmFyKC0taGVhZGVyLWxpbmUtaGVpZ2h0KTtcblx0XHRcdGZvbnQtd2VpZ2h0OiB2YXIoLS13ZWlnaHQtbGlnaHQpO1xuXHRcdH1cblx0fVxufVxuLnRleHQtbGVmdCB7XG5cdHRleHQtYWxpZ246IGxlZnQ7XG59XG4udGV4dC1yaWdodCB7XG5cdHRleHQtYWxpZ246IHJpZ2h0O1xufVxuLnRleHQtY2VudGVyIHtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uLS1zdGlja3kge1xuXHRAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bS1icmVha3BvaW50KSB7XG5cdFx0cG9zaXRpb246IHN0aWNreTtcblx0XHR0b3A6IDA7XG5cdH1cbn1cblxuLy8gQkFTRSBGT1JNQVRUSU5HXG5cbmh0bWwge1xuXHRmb250LXNpemU6IDEwMCU7XG59XG5cbmJvZHkge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZyk7XG5cdGZvbnQtZmFtaWx5OiB2YXIoLS1ib2R5LWZvbnQpO1xuXHRmb250LXdlaWdodDogdmFyKC0td2VpZ2h0LW5vcm1hbCk7XG5cdGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LWxpbmUtaGVpZ2h0KTtcblx0Y29sb3I6IHZhcigtLWJsYWNrKTtcblx0bWluLWhlaWdodDogMTAwdmg7XG5cdEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtZWRpdW0tYnJlYWtwb2ludCkge1xuXHRcdHBhZGRpbmctYm90dG9tOiAwO1xuXHR9XG5cdCYuLS1sb2NrIHtcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHR9XG59XG5cbnVsLFxub2wsXG5wIHtcblx0Zm9udC1mYW1pbHk6IHZhcigtLWJvZHktZm9udCk7XG5cdGNvbG9yOiB2YXIoLS1ibGFjayk7XG5cdGZvbnQtd2VpZ2h0OiB2YXIoLS13ZWlnaHQtbm9ybWFsKTtcblx0bGluZS1oZWlnaHQ6IHZhcigtLWJvZHktbGluZS1oZWlnaHQpO1xuXHRmb250LXNpemU6IDFyZW07XG5cdEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtLWJyZWFrcG9pbnQpIHtcblx0XHRmb250LXNpemU6IHZhcigtLXNpemUtcGx1czEpO1xuXHR9XG5cdHRleHQtYWxpZ246IGluaGVyaXQ7XG5cdG1hcmdpbi1ib3R0b206IDEuMjVlbTtcblx0c3Ryb25nLFxuXHRlbSB7XG5cdFx0Ly8gY29sb3I6IHZhcigtLWJyYW5kKTtcblx0fVxuXHQmLnNtYWxsIHtcblx0XHRmb250LXNpemU6IHZhcigtLXNpemUpO1xuXHR9XG59XG5cbnNtYWxsLFxuLnRleHRfc21hbGwge1xuXHRmb250LXNpemU6IHZhcigtLXNpemUtbWludXMyKTtcbn1cblxuYSB7XG5cdGNvbG9yOiB2YXIoLS1ibGFjayk7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0dHJhbnNpdGlvbjpcblx0XHRiYWNrZ3JvdW5kLWNvbG9yIDE1MG1zIGVhc2UsXG5cdFx0Y29sb3IgMTUwbXMgZWFzZTtcblx0Jjpob3ZlciB7XG5cdFx0Y29sb3I6IHZhcigtLWRhcmtncmV5KTtcblx0fVxufVxuXG4uYnV0dG9uLm1hcnF1ZWUtYnRuIHtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHRtYXJnaW4tdG9wOiAwLjlyZW07XG5cdGJhY2tncm91bmQ6IHZhcigtLWhvdmVyc3RhdGUpO1xuXHRoZWlnaHQ6IDEuOHJlbTtcblx0Ym9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG5cdGJvcmRlci1yYWRpdXM6IDEuOHJlbTtcblx0d2lkdGg6IDEycmVtO1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHR0cmFuc2Zvcm06IG5vbmU7XG5cdHBhZGRpbmc6IDEuMTI1cmVtIDA7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0Lm1hcnF1ZWUge1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdG9wYWNpdHk6IDA7XG5cdFx0dHJhbnNpdGlvbjogb3BhY2l0eSAxMDBtcyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdH1cblx0PiBkaXYsXG5cdC5tYXJxdWVlIHNwYW4ge1xuXHRcdGNvbG9yOiB2YXIoLS1tYXJxdWVlY29sb3IpO1xuXHRcdGZvbnQtc2l6ZTogdmFyKC0tc2l6ZSk7XG5cdFx0Zm9udC1zaXplOiBtaW4odmFyKC0tc2l6ZSksIDEuMzVyZW0pO1xuXG5cdFx0bGluZS1oZWlnaHQ6IDEuOHJlbTtcblx0XHR0ZXh0LXRyYW5zZm9ybTogbm9uZTtcblx0XHRsaW5lLWhlaWdodDogMTtcblx0fVxuXHQ+IGRpdiB7XG5cdFx0dHJhbnNpdGlvbjogb3BhY2l0eSA1MDBtcyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdHdpZHRoOiAxMDAlO1xuXHR9XG5cdCY6aG92ZXIge1xuXHRcdGRpdiB7XG5cdFx0XHRvcGFjaXR5OiAwO1xuXHRcdFx0dHJhbnNpdGlvbjogb3BhY2l0eSAxMDBtcyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcblx0XHR9XG5cdFx0Lm1hcnF1ZWUge1xuXHRcdFx0b3BhY2l0eTogMTtcblx0XHRcdHRyYW5zaXRpb246IG9wYWNpdHkgNTAwbXMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG5cdFx0fVxuXHR9XG59XG5cbi50ZXh0LWxlZnQge1xuXHR0ZXh0LWFsaWduOiBsZWZ0O1xufVxuLnRleHQtcmlnaHQge1xuXHR0ZXh0LWFsaWduOiByaWdodDtcbn1cbi50ZXh0LWNlbnRlciB7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmgxLFxuLmgyLFxuLmgzLFxuLmg0LFxuLmg1LFxuLmg2LFxuaDEsXG5oMixcbmgzLFxuaDQsXG5oNSxcbmg2IHtcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0bWFyZ2luOiAyLjc1cmVtIDAgMC40NXJlbTtcblx0Zm9udC1mYW1pbHk6IHZhcigtLWhlYWRlci1mb250KTtcblx0Zm9udC13ZWlnaHQ6IHZhcigtLXdlaWdodC1ub3JtYWwpO1xuXHRsaW5lLWhlaWdodDogdmFyKC0taGVhZGVyLWxpbmUtaGVpZ2h0KTtcblx0Y29sb3I6IHZhcigtLWJsYWNrKTtcblx0bWFyZ2luOiAwIDAgMC45cmVtIDA7XG59XG4uaDMsXG5oMyxcbi5oNCxcbi5oNSxcbi5oNixcbmg0LFxuaDUsXG5oNiB7XG5cdGNvbG9yOiB2YXIoLS1ibGFjayk7XG59XG4uaDQsXG4uaDUsXG4uaDYsXG5oNCxcbmg1LFxuaDYge1xuXHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG5oMSxcbi5oMSB7XG5cdG1hcmdpbi10b3A6IDA7XG5cdGZvbnQtc2l6ZTogdmFyKC0tc2l6ZS1wbHVzNik7XG5cdCYubGFyZ2Uge1xuXHRcdGZvbnQtc2l6ZTogdmFyKC0tc2l6ZS1wbHVzOCk7XG5cdFx0QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtZWRpdW0tYnJlYWtwb2ludCkge1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRvcGFjaXR5OiAwO1xuXHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCA1MCUsIDApIHNjYWxlM2QoMSwgMSwgMSkgcm90YXRlWCgwKSByb3RhdGVZKDApIHJvdGF0ZVooMCkgc2tldygwLCAxMmRlZyk7XG5cdFx0XHR0cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkO1xuXHRcdH1cblx0XHQmLi0taXMtYWRtaW4ge1xuXHRcdFx0b3BhY2l0eTogMTtcblx0XHRcdHRyYW5zZm9ybTogbm9uZTtcblx0XHR9XG5cdH1cbn1cbi5pcy1pbnZpZXcsXG5bZGF0YS1zY3JvbGwtc2VjdGlvbi1pbnZpZXddIHtcblx0LmgxLmxhcmdlLFxuXHRoMS5sYXJnZSB7XG5cdFx0b3BhY2l0eTogMTtcblx0XHR0cmFuc2Zvcm06IG5vbmU7XG5cdFx0dHJhbnNpdGlvbi1kdXJhdGlvbjogMS4ycztcblx0fVxufVxuXG5oMixcbi5oMiB7XG5cdGZvbnQtc2l6ZTogdmFyKC0tc2l6ZS1wbHVzNSk7XG59XG5cbmgzLFxuLmgzIHtcblx0Zm9udC1zaXplOiB2YXIoLS1zaXplLXBsdXM0KTtcbn1cblxuaDQsXG4uaDQge1xuXHRmb250LXNpemU6IHZhcigtLXNpemUtcGx1czMpO1xufVxuXG5oNSxcbi5oNSB7XG5cdGZvbnQtc2l6ZTogdmFyKC0tc2l6ZS1wbHVzMik7XG59XG5oNSxcbi5oNSB7XG5cdGZvbnQtc2l6ZTogdmFyKC0tc2l6ZS1wbHVzMSk7XG59XG5cbnNtYWxsLFxuLnRleHRfc21hbGwge1xuXHRmb250LXNpemU6IHZhcigtLXNpemUtbWludXMyKTtcbn1cblxuYSB7XG5cdGNvbG9yOiB2YXIoLS1icmFuZCk7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0dHJhbnNpdGlvbjpcblx0XHRiYWNrZ3JvdW5kLWNvbG9yIDE1MG1zIGVhc2UsXG5cdFx0Y29sb3IgMTUwbXMgZWFzZTtcblx0Jjpob3ZlciB7XG5cdFx0Y29sb3I6IHZhcigtLWRhcmtncmV5KTtcblx0fVxufVxuXG5wIGEge1xuXHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuLy8gTElORVNcblxuLmxpbmUtY29udGFpbmVyIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHQubGluZSB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdCYucmVsYXRpdmUge1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdH1cblx0XHRiYWNrZ3JvdW5kOiB2YXIoLS1ibGFjayk7XG5cdFx0Ji5ob3Jpem9udGFsIHtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0aGVpZ2h0OiAxcHg7XG5cdFx0XHQmLm9mZnNldCB7XG5cdFx0XHRcdGxlZnQ6IC0xLjhyZW07XG5cdFx0XHRcdHdpZHRoOiBjYWxjKDEwMCUgKyAxLjhlbSk7XG5cdFx0XHR9XG5cdFx0XHQmLnBhZGRpbmcge1xuXHRcdFx0XHRsZWZ0OiAxLjhyZW07XG5cdFx0XHRcdHdpZHRoOiBjYWxjKDEwMCUgLSAxLjhlbSk7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdCYudmVydGljYWwge1xuXHRcdFx0d2lkdGg6IDFweDtcblx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdCYub2Zmc2V0IHtcblx0XHRcdFx0dG9wOiAtMS44cmVtO1xuXHRcdFx0XHRoZWlnaHQ6IGNhbGMoMTAwJSArIDEuOGVtKTtcblx0XHRcdH1cblx0XHRcdCYucGFkZGluZyB7XG5cdFx0XHRcdHRvcDogMS44cmVtO1xuXHRcdFx0XHRoZWlnaHQ6IGNhbGMoMTAwJSAtIDEuOGVtKTtcblx0XHRcdH1cblx0XHR9XG5cdFx0Ji5jZW50ZXIge1xuXHRcdFx0bGVmdDogNTAlO1xuXHRcdFx0bGVmdDogY2FsYyg1MCUgLSAwLjVweCk7XG5cdFx0fVxuXHR9XG59XG5cbi8vIEFOSU1BVElPTlNcblxuQGtleWZyYW1lcyBibGluayB7XG5cdDUlIHtcblx0XHRvcGFjaXR5OiAwO1xuXHR9XG5cdDQwJSB7XG5cdFx0b3BhY2l0eTogMDtcblx0fVxuXHQ2MCUge1xuXHRcdG9wYWNpdHk6IDE7XG5cdH1cblx0OTUlIHtcblx0XHRvcGFjaXR5OiAxO1xuXHR9XG59XG5Aa2V5ZnJhbWVzIHNsaWRlLXJpZ2h0IHtcblx0MCUge1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlKC0xMDAlKTtcblx0fVxuXHR0byB7XG5cdFx0dHJhbnNmb3JtOiBub25lO1xuXHR9XG59XG5Aa2V5ZnJhbWVzIGZhZGUge1xuXHQwJSB7XG5cdFx0b3BhY2l0eTogMDtcblx0fVxuXHR0byB7XG5cdFx0b3BhY2l0eTogMTtcblx0fVxufVxuQGtleWZyYW1lcyB0eXBlIHtcblx0MCUge1xuXHRcdG9wYWNpdHk6IDA7XG5cdH1cblx0NDAlIHtcblx0XHRvcGFjaXR5OiAwO1xuXHR9XG5cdDYwJSB7XG5cdFx0b3BhY2l0eTogMTtcblx0fVxuXHR0byB7XG5cdFx0b3BhY2l0eTogMTtcblx0fVxufVxuXG4vLyBCT1JERVJcbi4tLWJvcmRlci1vZmZzZXQge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdCY6YWZ0ZXIge1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRjb250ZW50OiBcIiBcIjtcblx0XHRoZWlnaHQ6IDRweDtcblx0XHRib3R0b206IC0ycHg7XG5cdFx0d2lkdGg6IDEuOHJlbTtcblx0XHRiYWNrZ3JvdW5kOiB2YXIoLS13aGl0ZSk7XG5cdFx0bGVmdDogMHB4O1xuXHRcdHotaW5kZXg6IDI7XG5cdH1cbn1cbi4tLWJvcmRlci1vZmZzZXQtdG9wIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHQmOmFmdGVyIHtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0Y29udGVudDogXCIgXCI7XG5cdFx0aGVpZ2h0OiA0cHg7XG5cdFx0dG9wOiAtMnB4O1xuXHRcdHdpZHRoOiAxLjhyZW07XG5cdFx0YmFja2dyb3VuZDogdmFyKC0td2hpdGUpO1xuXHRcdHJpZ2h0OiAwcHg7XG5cdFx0ei1pbmRleDogMjtcblx0fVxufVxuXG4vLyBIRUFERVJcblxuaHRtbCxcbmJvZHkge1xuXHRzY3JvbGwtcGFkZGluZy10b3A6IDA7XG59XG5cbmhlYWRlciNwcmltYXJ5IHtcblx0cG9zaXRpb246IGZpeGVkO1xuXHR0b3A6IDA7XG5cdGxlZnQ6IDA7XG5cdHdpZHRoOiAxMDAlO1xuXHRwYWRkaW5nOiAwLjlyZW0gMDtcblx0ei1pbmRleDogOTk5O1xuXHRiYWNrZ3JvdW5kOiB2YXIoLS13aGl0ZSk7XG5cdEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtLWJyZWFrcG9pbnQpIHtcblx0XHRwYWRkaW5nOiAxLjMxMjVyZW0gMDtcblx0fVxuXHQuaGFtYnVyZ2VyLWNvbnRhaW5lci1ncmlkIHtcblx0XHRtaW4taGVpZ2h0OiAzLjZyZW07XG5cdH1cblx0LmJvcmRlci1jZWxsIHtcblx0XHRib3JkZXI6IHZhcigtLWxpbmUpO1xuXHRcdGJvcmRlci1yaWdodDogbm9uZTtcblx0XHRAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bS1icmVha3BvaW50KSB7XG5cdFx0XHRoZWlnaHQ6IDRyZW07XG5cdFx0fVxuXHR9XG5cdC5oYW1idXJnZXItY29udGFpbmVyIHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGJvcmRlcjogdmFyKC0tbGluZSk7XG5cdFx0bWluLWhlaWdodDogMy42cmVtO1xuXHRcdHBhZGRpbmc6IDAuNDVyZW0gMC45cmVtO1xuXHRcdEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtLWJyZWFrcG9pbnQpIHtcblx0XHRcdGhlaWdodDogNHJlbTtcblx0XHRcdHBhZGRpbmc6IDAuNDVyZW0gMS44cmVtO1xuXHRcdH1cblx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cdFx0anVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcblx0XHRzcGFuIHtcblx0XHRcdG1hcmdpbi1yaWdodDogMC45ZW07XG5cdFx0XHRtYXJnaW4tbGVmdDogMC40NWVtO1xuXHRcdFx0Zm9udC1zaXplOiB2YXIoLS1zaXplLXBsdXMxKTtcblx0XHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdFx0XHRsaW5lLWhlaWdodDogMTtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdH1cblx0fVxuXHQuaGFtYnVyZ2VyIHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdHdpZHRoOiAyLjdyZW07XG5cdFx0aGVpZ2h0OiAxLjhyZW07XG5cdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHRmbGV4LXdyYXA6IHdyYXA7XG5cdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG5cdFx0Ji5pcy1hY3RpdmUgLmxpbmU6bnRoLWNoaWxkKDEpIHtcblx0XHRcdHRyYW5zZm9ybTogcm90YXRlKC00NWRlZykgdHJhbnNsYXRlWSgwLjcyNWVtKSB0cmFuc2xhdGVYKDApO1xuXHRcdH1cblxuXHRcdCYuaXMtYWN0aXZlIC5saW5lOm50aC1jaGlsZCgyKSB7XG5cdFx0XHRvcGFjaXR5OiAwO1xuXHRcdFx0LW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG5cdFx0XHQtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xuXHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcblx0XHR9XG5cblx0XHQmLmlzLWFjdGl2ZSAubGluZTpudGgtY2hpbGQoMykge1xuXHRcdFx0dHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpIHRyYW5zbGF0ZVkoLTAuNzI1ZW0pIHRyYW5zbGF0ZVgoMCk7XG5cdFx0fVxuXG5cdFx0LmxpbmUge1xuXHRcdFx0d2lkdGg6IDIuN3JlbTtcblx0XHRcdGhlaWdodDogMXB4O1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmxhY2spO1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRtYXJnaW46IDAgYXV0bztcblx0XHRcdC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG5cdFx0XHQtby10cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcblx0XHRcdHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xuXHRcdH1cblxuXHRcdCY6aG92ZXIge1xuXHRcdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHRcdH1cblx0fVxuXG5cdCYuaGVhZHJvb20ge1xuXHRcdEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtLWJyZWFrcG9pbnQpIHtcblx0XHRcdHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm07XG5cdFx0XHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMjAwbXMgbGluZWFyO1xuXHRcdFx0Ji5oZWFkcm9vbS0tcGlubmVkIHtcblx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAlKTtcblx0XHRcdH1cblx0XHRcdCYuaGVhZHJvb20tLXVucGlubmVkIHtcblx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblx0LmxvZ28ge1xuXHRcdG1hcmdpbi1yaWdodDogMC45cmVtO1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtZWRpdW0tYnJlYWtwb2ludCkge1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiAxLjMxMjVyZW07XG5cdFx0XHR0cmFuc2l0aW9uOiBhbGwgNTAwbXMgZWFzZTtcblx0XHRcdGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcblxuXHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMzAwMHB4KSByb3RhdGVZKDI1ZGVnKSByb3RhdGVYKDI1ZGVnKTtcblx0XHRcdFx0QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDIwMDBweCkge1xuXHRcdFx0XHRcdHRyYW5zZm9ybTogcm90YXRlWSgyNWRlZykgcm90YXRlWCgyNWRlZykgdHJhbnNsYXRlM2QoLTIuOHJlbSwgMi44cmVtLCA1LjZyZW0pIHBlcnNwZWN0aXZlKDMwMDAwcHgpO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHRcdHN2Zyxcblx0XHRpbWcge1xuXHRcdFx0bWF4LXdpZHRoOiAxMDAlO1xuXHRcdFx0d2lkdGg6IGF1dG87XG5cdFx0XHRoZWlnaHQ6IDMuNnJlbTtcblx0XHRcdEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtLWJyZWFrcG9pbnQpIHtcblx0XHRcdFx0aGVpZ2h0OiA0cmVtO1xuXHRcdFx0fVxuXHRcdFx0QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRsYXJnZS1icmVha3BvaW50KSB7XG5cdFx0XHRcdGhlaWdodDogNS41NjI1cmVtO1xuXHRcdFx0fVxuXHRcdFx0bGluZSB7XG5cdFx0XHRcdHN0cm9rZS13aWR0aDogMnB4O1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXHQubWVudS1jZWxsLWNvbnRhaW5lci1vdXRlciB7XG5cdFx0YmFja2dyb3VuZDogdmFyKC0tYmcpO1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0ZmxleC1kaXJlY3Rpb246IHJvdztcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdGZsZXgtd3JhcDogbm93cmFwO1xuXHRcdGJvcmRlci1sZWZ0OiB2YXIoLS1saW5lKTtcblx0XHRib3JkZXItdG9wOiB2YXIoLS1saW5lKTtcblx0XHRib3JkZXItYm90dG9tOiB2YXIoLS1saW5lKTtcblx0XHR0cmFuc2l0aW9uOiBub25lO1xuXHRcdCY6bGFzdC1vZi10eXBlIHtcblx0XHRcdGJvcmRlci1yaWdodDogdmFyKC0tbGluZSk7XG5cdFx0fVxuXHRcdC5tZW51LWNlbGwtY29udGFpbmVyIHtcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdG92ZXJmbG93OiB2aXNpYmxlO1xuXHRcdFx0d2lkdGg6IGF1dG87XG5cdFx0XHQubWVudS1jZWxsLWlubmVyIHtcblx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0bGluZS1oZWlnaHQ6IDE7XG5cdFx0XHRcdC5jZWxsLXRleHQge1xuXHRcdFx0XHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdFx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0XHRcdHotaW5kZXg6IDI7XG5cdFx0XHRcdFx0dHJhbnNpdGlvbjogdHJhbnNmb3JtIDUwMG1zIGN1YmljLWJlemllcigwLjIzLCAxLCAwLjMyLCAxKTtcblx0XHRcdFx0XHRmb250LXNpemU6IDAuODVyZW07XG5cdFx0XHRcdFx0QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRsYXJnZS1icmVha3BvaW50KSB7XG5cdFx0XHRcdFx0XHRmb250LXNpemU6IHZhcigtLXNpemUpO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHQmLmFic29sdXRlIHtcblx0XHRcdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0XHRcdHRvcDogMDtcblx0XHRcdFx0XHRcdHotaW5kZXg6IDE7XG5cdFx0XHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDEwMSUpO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0XHQmLmN1cnJlbnRfcGFnZV9pdGVtIHtcblx0XHRcdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXHRcdFx0LmNlbGwtdGV4dCB7XG5cdFx0XHRcdGJvcmRlci1ib3R0b206IHZhcigtLWxpbmUpO1xuXHRcdFx0fVxuXHRcdH1cblx0XHQmOmhvdmVyIHtcblx0XHRcdC5tZW51LWNlbGwtY29udGFpbmVyIC5jZWxsLXRleHQge1xuXHRcdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwcHgsIC0xMDElKTtcblx0XHRcdFx0Ji5hYnNvbHV0ZSB7XG5cdFx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUoMHB4LCAwJSk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxubmF2I21vYmlsZSB7XG5cdGRpc3BsYXk6IG5vbmU7XG5cdC5tZW51LWNlbGwtY29udGFpbmVyLW91dGVyIHtcblx0XHRmbGV4OiB1bnNldDtcblx0XHRiYWNrZ3JvdW5kOiB2YXIoLS1iZyk7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRcdGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuXHRcdGZsZXgtd3JhcDogbm93cmFwO1xuXHRcdHRyYW5zaXRpb246IG5vbmU7XG5cdFx0Lm1lbnUtY2VsbC1jb250YWluZXIge1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0b3ZlcmZsb3c6IHZpc2libGU7XG5cdFx0XHR3aWR0aDogYXV0bztcblx0XHRcdC5tZW51LWNlbGwtaW5uZXIge1xuXHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRcdG92ZXJmbG93OiBoaWRkZW47XG5cdFx0XHRcdHdpZHRoOiBhdXRvO1xuXHRcdFx0XHRsaW5lLWhlaWdodDogMTtcblx0XHRcdFx0LmNlbGwtdGV4dCB7XG5cdFx0XHRcdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRcdFx0ei1pbmRleDogMjtcblx0XHRcdFx0XHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gNTAwbXMgY3ViaWMtYmV6aWVyKDAuMjMsIDEsIDAuMzIsIDEpO1xuXHRcdFx0XHRcdCYuYWJzb2x1dGUge1xuXHRcdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRcdFx0dG9wOiAwO1xuXHRcdFx0XHRcdFx0ei1pbmRleDogMTtcblx0XHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMTAxJSk7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHRcdCYuY3VycmVudF9wYWdlX2l0ZW0ge1xuXHRcdFx0cG9pbnRlci1ldmVudHM6IG5vbmU7XG5cdFx0XHQuY2VsbC10ZXh0IHtcblx0XHRcdFx0Ym9yZGVyLWJvdHRvbTogdmFyKC0tbGluZSk7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdCY6aG92ZXIge1xuXHRcdFx0Lm1lbnUtY2VsbC1jb250YWluZXIgLmNlbGwtdGV4dCB7XG5cdFx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlKDBweCwgLTEwMSUpO1xuXHRcdFx0XHQmLmFic29sdXRlIHtcblx0XHRcdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwcHgsIDAlKTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXHRAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtLWJyZWFrcG9pbnQpIHtcblx0XHR6LWluZGV4OiA5OTk7XG5cdFx0YmFja2dyb3VuZDogdmFyKC0tYmcpO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdHBvc2l0aW9uOiBmaXhlZDtcblx0XHRib3R0b206IDA7XG5cdFx0aGVpZ2h0OiAxMDB2aDtcblx0XHRsZWZ0OiAwO1xuXHRcdHdpZHRoOiAxMDB2dztcblx0XHRwYWRkaW5nOiAxLjMxMjVyZW0gMS44cmVtO1xuXHRcdHRyYW5zaXRpb246IGFsbCBlYXNlIDUwMG1zO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDB2dyk7XG5cdFx0cG9pbnRlci1ldmVudHM6IG5vbmU7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRmbGV4LWRpcmVjdGlvbjogcm93O1xuXHRcdGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblx0XHRhbGlnbi1pdGVtczogZmxleC1zdGFydDtcblx0XHQmLmlzLWFjdGl2ZSB7XG5cdFx0XHRwb2ludGVyLWV2ZW50czogYXV0bztcblx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcblx0XHR9XG5cdFx0Lm1vYmlsZS1pbm5lciB7XG5cdFx0XHRwYWRkaW5nOiA3LjJyZW0gMy42cmVtIDAgMTAuMnJlbTtcblx0XHRcdGJvcmRlci1sZWZ0OiB2YXIoLS1saW5lKTtcblx0XHRcdGJvcmRlci1yaWdodDogdmFyKC0tbGluZSk7XG5cdFx0XHRib3JkZXItYm90dG9tOiB2YXIoLS1saW5lKTtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdFx0Z2FwOiAzLjZyZW0gNy4ycmVtO1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0Y29udGVudDogXCIgXCI7XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0ei1pbmRleDogMjtcblx0XHRcdFx0YmFja2dyb3VuZDogdmFyKC0td2hpdGUpO1xuXHRcdFx0XHRib3R0b206IC0xcHg7XG5cdFx0XHRcdHdpZHRoOiAxLjhyZW07XG5cdFx0XHRcdGxlZnQ6IDA7XG5cdFx0XHRcdGhlaWdodDogM3B4O1xuXHRcdFx0fVxuXHRcdH1cblx0XHQubWVudS1jZWxsLWNvbnRhaW5lci1vdXRlciAubWVudS1jZWxsLWNvbnRhaW5lciAubWVudS1jZWxsLWlubmVyIC5jZWxsLXRleHQge1xuXHRcdFx0Zm9udC1zaXplOiB2YXIoLS1zaXplLXBsdXM3KTtcblx0XHR9XG5cdFx0LnNvY2lhbCAubWVudS1jZWxsLWNvbnRhaW5lci1vdXRlciAubWVudS1jZWxsLWNvbnRhaW5lciAubWVudS1jZWxsLWlubmVyIC5jZWxsLXRleHQge1xuXHRcdFx0Zm9udC1zaXplOiB2YXIoLS1zaXplLXBsdXMyKTtcblx0XHR9XG5cdFx0dWwge1xuXHRcdFx0bGlzdC1zdHlsZTogbm9uZTtcblx0XHRcdHBhZGRpbmc6IDA7XG5cdFx0XHRtYXJnaW46IDEuOGVtIDA7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHRcdGdhcDogMC42NWVtO1xuXHRcdFx0bGkge1xuXHRcdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdFx0XHRmb250LXNpemU6IHZhcigtLXNpemUtcGx1czcpO1xuXHRcdFx0XHRjb2xvcjogdmFyKC0tYmxhY2spO1xuXHRcdFx0fVxuXHRcdFx0Ji5zb2NpYWwge1xuXHRcdFx0XHRtYXgtd2lkdGg6IDQwcmVtO1xuXHRcdFx0XHRmbGV4LWRpcmVjdGlvbjogcm93O1xuXHRcdFx0XHRmbGV4LXdyYXA6IHdyYXA7XG5cdFx0XHRcdGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblx0XHRcdFx0YWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG5cdFx0XHRcdGFsaWduLWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cdFx0XHRcdGdhcDogMC45cmVtIDEuOHJlbTtcblx0XHRcdFx0bGkge1xuXHRcdFx0XHRcdG1hcmdpbjogMDtcblx0XHRcdFx0XHR3aWR0aDogNDUlO1xuXHRcdFx0XHRcdGZvbnQtc2l6ZTogdmFyKC0tc2l6ZS1wbHVzMik7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHRAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbWVkaXVtLWJyZWFrcG9pbnQpIHtcblx0XHR6LWluZGV4OiA5OTk7XG5cdFx0YmFja2dyb3VuZDogdmFyKC0tYmcpO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdHBvc2l0aW9uOiBmaXhlZDtcblx0XHRib3R0b206IDA7XG5cdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdGxlZnQ6IDA7XG5cdFx0d2lkdGg6IDEwMHZ3O1xuXHRcdHBhZGRpbmc6IDUuMnJlbSAxLjhyZW0gMS44cmVtO1xuXHRcdHRyYW5zaXRpb246IGFsbCBlYXNlIDUwMG1zO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDB2dyk7XG5cdFx0cG9pbnRlci1ldmVudHM6IG5vbmU7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRcdGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuXHRcdCYuaXMtYWN0aXZlIHtcblx0XHRcdHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuXHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuXHRcdH1cblx0XHQubW9iaWxlLWlubmVyIHtcblx0XHRcdHBhZGRpbmc6IDEuOGVtIDMuNnJlbTtcblx0XHRcdGJvcmRlci1sZWZ0OiB2YXIoLS1saW5lKTtcblx0XHRcdGJvcmRlci1yaWdodDogdmFyKC0tbGluZSk7XG5cdFx0XHRib3JkZXItYm90dG9tOiB2YXIoLS1saW5lKTtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdCY6YWZ0ZXIge1xuXHRcdFx0XHRjb250ZW50OiBcIiBcIjtcblx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHR6LWluZGV4OiAyO1xuXHRcdFx0XHR3aWR0aDogMS44cmVtO1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiB2YXIoLS13aGl0ZSk7XG5cdFx0XHRcdGJvdHRvbTogLTFweDtcblx0XHRcdFx0bGVmdDogMDtcblx0XHRcdFx0aGVpZ2h0OiAzcHg7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdC5tZW51LWNlbGwtY29udGFpbmVyLW91dGVyIC5tZW51LWNlbGwtY29udGFpbmVyIC5tZW51LWNlbGwtaW5uZXIgLmNlbGwtdGV4dCB7XG5cdFx0XHRmb250LXNpemU6IHZhcigtLXNpemUtcGx1czcpO1xuXHRcdH1cblx0XHQuc29jaWFsIC5tZW51LWNlbGwtY29udGFpbmVyLW91dGVyIC5tZW51LWNlbGwtY29udGFpbmVyIC5tZW51LWNlbGwtaW5uZXIgLmNlbGwtdGV4dCB7XG5cdFx0XHRmb250LXNpemU6IHZhcigtLXNpemUtcGx1czIpO1xuXHRcdH1cblxuXHRcdHVsIHtcblx0XHRcdGxpc3Qtc3R5bGU6IG5vbmU7XG5cdFx0XHRwYWRkaW5nOiAwO1xuXHRcdFx0bWFyZ2luOiAxLjhlbSAwO1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdFx0XHRnYXA6IDAuNjVlbTtcblx0XHRcdGxpIHtcblx0XHRcdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XHRcdFx0Zm9udC1zaXplOiB2YXIoLS1zaXplLXBsdXM3KTtcblx0XHRcdFx0Y29sb3I6IHZhcigtLWJsYWNrKTtcblx0XHRcdH1cblx0XHRcdCYuc29jaWFsIHtcblx0XHRcdFx0bGkge1xuXHRcdFx0XHRcdGZvbnQtc2l6ZTogdmFyKC0tc2l6ZSk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuZm9vdGVyI3ByaW1hcnkge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHdpZHRoOiAxMDAlO1xuXHRwYWRkaW5nOiAyLjdlbSAwIDA7XG5cdC5mb290ZXItZGFyayB7XG5cdFx0cGFkZGluZzogMi43ZW0gMCAwIDA7XG5cdFx0YmFja2dyb3VuZDogdmFyKC0tbWVkaXVtZ3JleSk7XG5cdFx0LS1ibGFjazogdmFyKC0td2hpdGUpO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHR9XG5cdC5tZWRpYS1saW5rIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdH1cblx0LnByaW1hcnktc3BvbnNvcnMtbG9nbyB7XG5cdFx0Ym9yZGVyLXRvcDogdmFyKC0tbGluZSk7XG5cblx0XHQuZ3JpZC14IHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7IC8qIHVzZSBmbGV4Ym94ICovXG5cdFx0XHRmbGV4LXdyYXA6IHdyYXA7IC8qIGFsbG93IGNlbGxzIHRvIHdyYXAgdG8gbmV3IGxpbmVzICovXG5cdFx0fVxuXHRcdC5jZWxsIHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7IC8qIHVzZSBmbGV4Ym94ICovXG5cdFx0XHRhbGlnbi1pdGVtczogc3RyZXRjaDsgLyogc3RyZXRjaCBjZWxsIGNvbnRlbnRzIHRvIGZpbGwgaGVpZ2h0ICovXG5cdFx0XHRAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bS1icmVha3BvaW50KSB7XG5cdFx0XHRcdGJvcmRlci1yaWdodDogdmFyKC0tbGluZSk7XG5cdFx0XHR9XG5cdFx0XHQmOmxhc3Qtb2YtdHlwZSB7XG5cdFx0XHRcdGJvcmRlci1yaWdodDogbm9uZTtcblx0XHRcdH1cblx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcdGltZyB7XG5cdFx0XHRcdG9iamVjdC1maXQ6IGNvbnRhaW47XG5cdFx0XHRcdHBhZGRpbmc6IDAuNDVlbTtcblx0XHRcdFx0QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtZWRpdW0tYnJlYWtwb2ludCkge1xuXHRcdFx0XHRcdHBhZGRpbmc6IDIuN2VtO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cdC5ib3JkZXItdG9wLWJvdHRvbSB7XG5cdFx0cGFkZGluZy10b3A6IDEuOGVtO1xuXHRcdG1hcmdpbi10b3A6IDEuOGVtO1xuXHRcdGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS13aGl0ZSk7XG5cdFx0cGFkZGluZy1ib3R0b206IDEuOGVtO1xuXHRcdG1hcmdpbi1ib3R0b206IDEuOGVtO1xuXHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS13aGl0ZSk7XG5cdFx0QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtZWRpdW0tYnJlYWtwb2ludCkge1xuXHRcdFx0cGFkZGluZy10b3A6IDMuNmVtO1xuXHRcdFx0cGFkZGluZy1ib3R0b206IDMuNmVtO1xuXHRcdH1cblx0fVxuXHQuZm9vdGVyLXRleHQtY29udGFpbmVyIHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0LnF1ZXN0aW9ucyB7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRib3R0b206IDA7XG5cdFx0XHRwIHtcblx0XHRcdFx0bWFyZ2luOiAwLjQ1cmVtIDAgMCAwO1xuXHRcdFx0XHRmb250LXNpemU6IHZhcigtLXNpemUpO1xuXHRcdFx0XHRtYXgtd2lkdGg6IDMwY2g7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cdHVsIHtcblx0XHRsaXN0LXN0eWxlOiBub25lO1xuXHRcdHBhZGRpbmc6IDA7XG5cdFx0bWFyZ2luOiAwO1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0Z2FwOiAwLjllbTtcblx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdGxpIHtcblx0XHRcdC8qIFBST0ZJTEUgKi9cblx0XHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdFx0XHRmb250LXNpemU6IHZhcigtLXNpemUtcGx1czApO1xuXHRcdFx0YSB7XG5cdFx0XHRcdGNvbG9yOiB2YXIoLS1ibGFjayk7XG5cdFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0XHQmOmJlZm9yZSB7XG5cdFx0XHRcdFx0Y29udGVudDogXCIgXCI7XG5cdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRcdGJvdHRvbTogMDtcblx0XHRcdFx0XHRoZWlnaHQ6IDFweDtcblx0XHRcdFx0XHRsZWZ0OiAwO1xuXHRcdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRcdHRyYW5zZm9ybTogc2NhbGVYKDApO1xuXHRcdFx0XHRcdHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgY2VudGVyO1xuXHRcdFx0XHRcdHRyYW5zaXRpb246IGVhc2UgNTAwbXM7XG5cdFx0XHRcdFx0YmFja2dyb3VuZDogdmFyKC0tYmxhY2spO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHQmLmN1cnJlbnRfcGFnZV9pdGVtIGEsXG5cdFx0XHRhOmhvdmVyIHtcblx0XHRcdFx0JjpiZWZvcmUge1xuXHRcdFx0XHRcdHRyYW5zZm9ybTogc2NhbGVYKDEpO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cdC5zbWFsbC1wcmludCB7XG5cdFx0bWFyZ2luLXRvcDogLTAuOXJlbTtcblx0XHR1bCB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0ZmxleC13cmFwOiB3cmFwO1xuXHRcdFx0QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtZWRpdW0tYnJlYWtwb2ludCkge1xuXHRcdFx0XHRmbGV4LXdyYXA6IG5vd3JhcDtcblx0XHRcdH1cblx0XHRcdGdhcDogMC4yMjVlbSAwLjllbTtcblx0XHRcdEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtLWJyZWFrcG9pbnQpIHtcblx0XHRcdFx0Z2FwOiAxLjhlbTtcblx0XHRcdH1cblx0XHRcdGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cdFx0XHRsaSB7XG5cdFx0XHRcdHRleHQtdHJhbnNmb3JtOiBub25lO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXHQuZXh0cmEtc21hbGwtcHJpbnQgcCB7XG5cdFx0Zm9udC1zaXplOiB2YXIoLS1zaXplLXBsdXMwKTtcblx0XHRtYXJnaW46IDA7XG5cdH1cblx0cC5oMSB7XG5cdFx0Zm9udC1zaXplOiB2YXIoLS1zaXplLXBsdXM4KTtcblx0XHRjb2xvcjogdmFyKC0teWVsbG93KTtcblx0XHRmb250LXdlaWdodDogdmFyKC0td2VpZ2h0LW5vcm1hbCk7XG5cdH1cblx0LmxvZ28ge1xuXHRcdG1hcmdpbi1yaWdodDogMC45cmVtO1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtZWRpdW0tYnJlYWtwb2ludCkge1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiAxLjMxMjVyZW07XG5cdFx0fVxuXHRcdHN2Zyxcblx0XHRpbWcge1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRoZWlnaHQ6IGF1dG87XG5cblx0XHRcdG1heC13aWR0aDogMy42cmVtO1xuXHRcdFx0QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtZWRpdW0tYnJlYWtwb2ludCkge1xuXHRcdFx0XHRtYXgtd2lkdGg6IDcuMnJlbTtcblx0XHRcdH1cblx0XHRcdGxpbmUge1xuXHRcdFx0XHRzdHJva2Utd2lkdGg6IDJweDtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuLy8gV1JBUFBFUlxuXG4jcHJpbWFyeS1jb250YWluZXIge1xuXHRtaW4taGVpZ2h0OiAxMDB2aDtcblx0cGFkZGluZzogMTUwcHggMDtcblx0cGFkZGluZzogdmFyKC0tbWVudWhlaWdodCkgMDtcblx0bWFyZ2luOiAtMC45cmVtIDAgMDtcblx0cGFkZGluZy1ib3R0b206IDA7XG5cdG1hcmdpbi1ib3R0b206IDEuOHJlbTtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bS1icmVha3BvaW50KSB7XG5cdFx0bWFyZ2luOiAtMS4zMTI1cmVtIDEuOHJlbSAwO1xuXHRcdGJvcmRlci1sZWZ0OiB2YXIoLS1saW5lKTtcblx0XHRib3JkZXItcmlnaHQ6IHZhcigtLWxpbmUpO1xuXHRcdCY6YmVmb3JlIHtcblx0XHRcdHotaW5kZXg6IDA7XG5cdFx0XHRjb250ZW50OiBcIlwiO1xuXHRcdFx0Y29udGVudDogXCJcIjtcblx0XHRcdHBvc2l0aW9uOiBmaXhlZDtcblx0XHRcdHRvcDogMDtcblx0XHRcdGxlZnQ6IDEuOHJlbTtcblx0XHRcdGJvcmRlci10b3A6IDcuMnJlbSBzb2xpZCB2YXIoLS13aGl0ZSk7XG5cdFx0XHRib3JkZXItcmlnaHQ6IDEuOHJlbSBzb2xpZCB0cmFuc3BhcmVudDtcblx0XHRcdEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtLWJyZWFrcG9pbnQpIHtcblx0XHRcdFx0Ym9yZGVyLXRvcDogMy42cmVtIHNvbGlkIHZhcigtLXdoaXRlKTtcblx0XHRcdFx0Ym9yZGVyLXJpZ2h0OiAzLjZyZW0gc29saWQgdHJhbnNwYXJlbnQ7XG5cdFx0XHRcdGJvcmRlci10b3A6IGNhbGModmFyKC0tbWVudWhlaWdodCkgKyAzLjZyZW0pIHNvbGlkIHZhcigtLXdoaXRlKTtcblx0XHRcdFx0Ym9yZGVyLXJpZ2h0OiBjYWxjKHZhcigtLW1lbnVoZWlnaHQpICsgMy42cmVtKSBzb2xpZCB0cmFuc3BhcmVudDtcblx0XHRcdH1cblx0XHRcdHdpZHRoOiAwO1xuXHRcdH1cblx0XHQmOmFmdGVyIHtcblx0XHRcdHotaW5kZXg6IDA7XG5cdFx0XHRjb250ZW50OiBcIlwiO1xuXHRcdFx0Y29udGVudDogXCJcIjtcblx0XHRcdHBvc2l0aW9uOiBmaXhlZDtcblx0XHRcdHRvcDogMDtcblx0XHRcdHJpZ2h0OiAxLjhlbTtcblx0XHRcdGJvcmRlci10b3A6IDMuNnJlbSBzb2xpZCB2YXIoLS13aGl0ZSk7XG5cdFx0XHRib3JkZXItbGVmdDogMS44cmVtIHNvbGlkIHRyYW5zcGFyZW50O1xuXHRcdFx0QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtZWRpdW0tYnJlYWtwb2ludCkge1xuXHRcdFx0XHRib3JkZXItdG9wOiAxLjhyZW0gc29saWQgdmFyKC0td2hpdGUpO1xuXHRcdFx0XHRib3JkZXItbGVmdDogMS44cmVtIHNvbGlkIHRyYW5zcGFyZW50O1xuXHRcdFx0XHRib3JkZXItdG9wOiAxLjhyZW0gc29saWQgdmFyKC0td2hpdGUpO1xuXHRcdFx0XHRib3JkZXItbGVmdDogMS44cmVtIHNvbGlkIHRyYW5zcGFyZW50O1xuXHRcdFx0fVxuXHRcdFx0d2lkdGg6IDA7XG5cdFx0fVxuXHR9XG59XG5cbi8vIEJMT0NLU1xuXG4jc2Nyb2xsLWNvbnRhaW5lciB7XG5cdCYud3JpdGluZyB7XG5cdFx0bWluLWhlaWdodDogMTAwdmg7XG5cdH1cblx0cCB7XG5cdFx0ZW0ge1xuXHRcdFx0Zm9udC1zdHlsZTogbm9ybWFsO1xuXHRcdFx0Zm9udC1zaXplOiA3NSU7XG5cdFx0fVxuXHRcdG1hcmdpbjogMC40NWVtIDA7XG5cdH1cbn1cblxuLy8gUFJPSkVDVCBGUFxuXG4uc3BhY2VzLXNwYWNlciB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0d2lkdGg6IDEwMCU7XG5cdGhlaWdodDogNy4ycmVtO1xuXHRAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bS1icmVha3BvaW50KSB7XG5cdFx0aGVpZ2h0OiAxNC40cmVtO1xuXHR9XG59XG5cbi5zcGFjZXMtcHJvamVjdCB7XG5cdEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbWVkaXVtLWJyZWFrcG9pbnQpIHtcblx0XHRwYWRkaW5nLXRvcDogMy42cmVtO1xuXHRcdHBhZGRpbmctYm90dG9tOiAzLjZyZW07XG5cdH1cblx0aDEsXG5cdGgyLFxuXHRoMyxcblx0aDQsXG5cdGg1LFxuXHRoNiB7XG5cdFx0Zm9udC1zaXplOiB2YXIoLS1zaXplLXBsdXMwKTtcblx0XHRtYXJnaW46IDAuNDVyZW0gMDtcblx0fVxufVxuXG4vLyBDSVJDTEVcbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbWVkaXVtLWJyZWFrcG9pbnQpIHtcblx0LmNpcmNsZSxcblx0LmN1cnNvci1jb250YWluZXIge1xuXHRcdGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcblx0fVxufVxuXG4uY2lyY2xlIHtcblx0QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtZWRpdW0tYnJlYWtwb2ludCkge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cblx0cG9pbnRlci1ldmVudHM6IG5vbmU7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0d2lkdGg6IDc1cHg7XG5cdGhlaWdodDogNzVweDtcblx0dG9wOiAwO1xuXHRsZWZ0OiAwO1xuXHRtYXJnaW46IDA7XG5cdGJhY2tncm91bmQ6IHZhcigtLWNyZWFtKTtcblx0Y29sb3I6IHZhcigtLWJsYWNrKTtcblx0b3BhY2l0eTogMTtcblx0dHJhbnNpdGlvbjogY29sb3IgZWFzZSA1MDBtcztcblx0Ym9yZGVyLXJhZGl1czogMTAwJTtcblx0YmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuXHR2aXNpYmlsaXR5OiBoaWRkZW47XG5cdHRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xuXHRtYXJnaW4tdG9wOiAwLjllbTtcblx0bWFyZ2luLWxlZnQ6IDAuOWVtO1xuXHQmLmluaXQge1xuXHRcdHZpc2liaWxpdHk6IHZpc2libGU7XG5cdH1cblx0ei1pbmRleDogOTk5O1xuXHQmLmRvdCB7XG5cdFx0dHJhbnNmb3JtOiBzY2FsZSgwLjEpO1xuXHRcdGJhY2tncm91bmQ6IHZhcigtLWJsYWNrKTtcblx0XHQmOmFmdGVyIHtcblx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0fVxuXHR9XG5cdCYubWFycXVlZS1vbiB7XG5cdFx0dHJhbnNmb3JtOiBzY2FsZSgxKTtcblx0XHRiYWNrZ3JvdW5kOiB2YXIoLS1ob3ZlcnN0YXRlKTtcblx0XHRoZWlnaHQ6IDEuOHJlbTtcblx0XHRib3JkZXItcmFkaXVzOiAxLjhyZW07XG5cdFx0d2lkdGg6IDE1cmVtO1xuXHRcdHBhZGRpbmc6IDEuMzVlbSAwO1xuXHRcdG92ZXJmbG93OiBoaWRkZW47XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdHRyYW5zZm9ybTogbm9uZTtcblx0XHRzcGFuIHtcblx0XHRcdGNvbG9yOiB2YXIoLS1tYXJxdWVlY29sb3IpO1xuXHRcdFx0Zm9udC1zaXplOiB2YXIoLS1zaXplLXBsdXMxKTtcblx0XHRcdGxpbmUtaGVpZ2h0OiAxLjhyZW07XG5cdFx0XHR3aGl0ZS1zcGFjZTogbm93cmFwO1xuXHRcdFx0dGV4dC10cmFuc2Zvcm06IG5vbmU7XG5cdFx0XHRsaW5lLWhlaWdodDogMTtcblx0XHR9XG5cdFx0Lm1hcnF1ZWUtMSxcblx0XHQubWFycXVlZS0yIHtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdHRvcDogY2FsYyg1MCUgLSBjYWxjKHZhcigtLXNpemUtcGx1czEpICogMC41KSk7XG5cdFx0XHRsZWZ0OiAwO1xuXHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcblx0XHRcdHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cdFx0XHR0cmFuc2l0aW9uOiBhbGwgNjAwbXMgY3ViaWMtYmV6aWVyKDAuMjUsIDAuMSwgMC4yNSwgMSk7XG5cdFx0fVxuXHRcdC5tYXJxdWVlLTEge1xuXHRcdFx0YW5pbWF0aW9uOiBtYXJxdWVlIGNhbGModmFyKC0tc3BlZWQpICogMykgbGluZWFyIGluZmluaXRlO1xuXHRcdFx0QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtZWRpdW0tYnJlYWtwb2ludCkge1xuXHRcdFx0XHRhbmltYXRpb246IG1hcnF1ZWUgdmFyKC0tc3BlZWQpIGxpbmVhciBpbmZpbml0ZTtcblx0XHRcdH1cblx0XHR9XG5cdFx0Lm1hcnF1ZWUtMiB7XG5cdFx0XHRhbmltYXRpb246IG1hcnF1ZWUyIGNhbGModmFyKC0tc3BlZWQpICogMykgbGluZWFyIGluZmluaXRlO1xuXHRcdFx0QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtZWRpdW0tYnJlYWtwb2ludCkge1xuXHRcdFx0XHRhbmltYXRpb246IG1hcnF1ZWUyIHZhcigtLXNwZWVkKSBsaW5lYXIgaW5maW5pdGU7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0JjphZnRlciB7XG5cdFx0Y29udGVudDogXCJvcGVuXCI7XG5cdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XHRmb250LWZhbWlseTogdmFyKC0tYm9keS1mb250KTtcblx0XHRmb250LXdlaWdodDogdmFyKC0td2VpZ2h0LW5vcm1hbCk7XG5cdFx0bGV0dGVyLXNwYWNpbmc6IDAuMDJlbTtcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHRvcDogNTIuMjUlO1xuXHRcdGxlZnQ6IDA7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0dHJhbnNpdGlvbjogY29sb3IgZWFzZSA1MDBtcztcblx0XHRmb250LXNpemU6IHZhcigtLXNpemUtbWludXMxKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG5cdH1cblx0Ji5uZXh0IHtcblx0XHQmOmFmdGVyIHtcblx0XHRcdGNvbnRlbnQ6IFwibmV4dFwiO1xuXHRcdH1cblx0fVxuXHQmLnByZXYge1xuXHRcdCY6YWZ0ZXIge1xuXHRcdFx0Y29udGVudDogXCJwcmV2XCI7XG5cdFx0fVxuXHR9XG5cdCYub3BlbiB7XG5cdFx0JjphZnRlciB7XG5cdFx0XHRjb250ZW50OiBcIm9wZW5cIjtcblx0XHR9XG5cdH1cblx0Ji5hYm91dCB7XG5cdFx0JjphZnRlciB7XG5cdFx0XHRjb250ZW50OiBcImFib3V0XCI7XG5cdFx0fVxuXHR9XG59XG5cbi8vIEZST05UIFBBR0Vcbi5zcGFjZXMtZnAtaW1hZ2UsXG4uc3BhY2VzLWZwLWF1dG8sXG4uc3BhY2VzLWZwIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR6LWluZGV4OiAxO1xuXHRoZWlnaHQ6IDEwMHZoO1xuXHR3aWR0aDogMTAwJTtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0LnNwYWNlcy1mcC1pbm5lciB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHRvcDogMDtcblx0XHRsZWZ0OiAwO1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdGhlaWdodDogMTAwJTtcblx0fVxuXHR2aWRlbyxcblx0aW1nIHtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOiAwO1xuXHRcdGxlZnQ6IDA7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdG9iamVjdC1maXQ6IGNvdmVyO1xuXHR9XG5cdGltZyB7XG5cdFx0ei1pbmRleDogMTtcblx0fVxuXHR2aWRlbyB7XG5cdFx0ei1pbmRleDogMjtcblx0fVxufVxuXG4vLyBXUklUSU5HXG5cbiN3cml0aW5nLWNvbnRhaW5lciB7XG5cdHBhZGRpbmctdG9wOiBjYWxjKHZhcigtLW1lbnVoZWlnaHQpICogMik7XG5cdHBhZGRpbmctYm90dG9tOiAyNXZoO1xuXHQubGVhZCBwIHtcblx0XHRmb250LXNpemU6IHZhcigtLXNpemUtcGx1czMpO1xuXHR9XG5cdGFydGljbGUge1xuXHRcdHAge1xuXHRcdFx0Zm9udC1zaXplOiB2YXIoLS1zaXplLXBsdXMwKTtcblx0XHRcdEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtLWJyZWFrcG9pbnQpIHtcblx0XHRcdFx0bWF4LXdpZHRoOiA3NSU7XG5cdFx0XHR9XG5cdFx0XHRtYXJnaW46IDAuOXJlbSBhdXRvO1xuXHRcdH1cblx0XHRpbWcge1xuXHRcdFx0bWFyZ2luOiAzLjZyZW0gMDtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0bWF4LWhlaWdodDogNzV2aDtcblx0XHRcdG9iamVjdC1maXQ6IGNvbnRhaW47XG5cdFx0fVxuXHR9XG59XG5cbi5zcGFjZXMtd3JpdGluZyB7XG5cdC8vIFBPU0lUSU9OXG5cdG1hcmdpbi10b3A6IDUuNnJlbTtcblx0bWFyZ2luLWJvdHRvbTogMS44cmVtO1xuXHRAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bS1icmVha3BvaW50KSB7XG5cdFx0Ji5zcGFjZXMtd3JpdGluZy0xIHtcblx0XHRcdG1hcmdpbi10b3A6IDE1dmg7XG5cdFx0fVxuXHRcdCYuc3BhY2VzLXdyaXRpbmctMiB7XG5cdFx0XHRtYXJnaW4tdG9wOiAtMzB2aDtcblx0XHRcdG1hcmdpbi1ib3R0b206IDcuNXZoO1xuXHRcdFx0cG9pbnRlci1ldmVudHM6IG5vbmUgIWltcG9ydGFudDtcblx0XHRcdHotaW5kZXg6IDI7XG5cdFx0XHRhIHtcblx0XHRcdFx0cG9pbnRlci1ldmVudHM6IGF1dG87XG5cdFx0XHR9XG5cdFx0fVxuXHRcdCYuc3BhY2VzLXdyaXRpbmctMyB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAzLjZyZW07XG5cdFx0fVxuXHR9XG5cdC8vIEZPUk1BVElOR1xuXHRoMSxcblx0aDIsXG5cdGgzLFxuXHRoNCxcblx0aDUsXG5cdGg2LFxuXHRwIHtcblx0XHRmb250LXNpemU6IHZhcigtLXNpemUtcGx1czIpO1xuXHRcdG1hcmdpbjogMDtcblx0XHR0ZXh0LXRyYW5zZm9ybTogbm9uZTtcblx0fVxuXHRoMiB7XG5cdFx0bWFyZ2luOiAwLjlyZW0gMDtcblx0fVxuXHRwIHtcblx0XHRmb250LXNpemU6IHZhcigtLXNpemUtcGx1czApO1xuXHRcdEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtLWJyZWFrcG9pbnQpIHtcblx0XHRcdG9wYWNpdHk6IDA7XG5cdFx0XHR0cmFuc2l0aW9uOiBvcGFjaXR5IGVhc2UgNTAwbXM7XG5cdFx0fVxuXHR9XG5cdGltZyxcblx0dmlkZW8ge1xuXHRcdGZpbHRlcjogZ3JheXNjYWxlKDEwMCUpO1xuXHRcdHRyYW5zaXRpb246IGZpbHRlciBlYXNlIDUwMG1zO1xuXHR9XG5cdGE6aG92ZXIge1xuXHRcdGltZyB7XG5cdFx0XHRmaWx0ZXI6IGdyYXlzY2FsZSgwJSk7XG5cdFx0fVxuXHRcdHAge1xuXHRcdFx0b3BhY2l0eTogMTtcblx0XHR9XG5cdH1cbn1cblxuLy8gQkxPQ0tTXG5cbi5ibG9jayB7XG5cdGJhY2tncm91bmQ6IHZhcigtLXdoaXRlKTtcblx0Ji5saW5lIHtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRoZWlnaHQ6IDFweDtcblx0XHRiYWNrZ3JvdW5kOiB2YXIoLS1ibGFjayk7XG5cdH1cblx0Ji5icmVhayB7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0aGVpZ2h0OiAyLjdlbTtcblx0XHRAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuXHRcdFx0aGVpZ2h0OiAzLjZlbTtcblx0XHR9XG5cdH1cblx0Ji5tZWRpYSxcblx0Ji5tZWRpYS1yb3ctbGF5b3V0IHtcblx0XHRwYWRkaW5nLXRvcDogMS44cmVtO1xuXHRcdCYuLS1kaXNhYmxlLXBhZGRpbmctdG9wIHtcblx0XHRcdHBhZGRpbmctdG9wOiAwO1xuXHRcdH1cblx0XHRwYWRkaW5nLWJvdHRvbTogMS44cmVtO1xuXHRcdCYuLS1kaXNhYmxlLXBhZGRpbmctYm90dG9tIHtcblx0XHRcdHBhZGRpbmctYm90dG9tOiAwO1xuXHRcdH1cblx0fVxuXHQmLm1lZGlhIHtcblx0XHQuZmxleC1oZWlnaHQge1xuXHRcdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0XHRcdGhlaWdodDogMTAwdmg7XG5cdFx0XHRoZWlnaHQ6IGNhbGMoMTAwdmggLSBjYWxjKHZhcigtLW1lbnVoZWlnaHQpICogMikpO1xuXHRcdFx0bWFyZ2luOiB2YXIoLS1zaXplLXBsdXM2KSAwO1xuXHRcdFx0bWFyZ2luOiB2YXIoLS1tZW51aGVpZ2h0KSAwO1xuXHRcdH1cblx0XHQuYWxpZ24tYm90dG9tIC5mbGV4LWhlaWdodCB7XG5cdFx0XHRoZWlnaHQ6IGNhbGMoMTAwdmggLSB2YXIoLS1tZW51aGVpZ2h0KSk7XG5cdFx0XHRtYXJnaW46IHZhcigtLXNpemUtcGx1czYpIDAgMCAwO1xuXHRcdFx0bWFyZ2luOiB2YXIoLS1tZW51aGVpZ2h0KSAwIDAgMDtcblx0XHR9XG5cdFx0Ji4tLWlzLWFkbWluIHtcblx0XHRcdC5mbGV4LWhlaWdodCB7XG5cdFx0XHRcdG1pbi1oZWlnaHQ6IDQwdnc7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cdCYuYmxvY2stYmlnLXR5cGUge1xuXHRcdG1hcmdpbjogMS44cmVtIDA7XG5cdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0XHRwYWRkaW5nOiAzLjZyZW0gMC45cmVtO1xuXHRcdEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtLWJyZWFrcG9pbnQpIHtcblx0XHRcdHBhZGRpbmc6IDAuOXJlbTtcblx0XHR9XG5cdFx0LmdyaWQteCB7XG5cdFx0XHRAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bS1icmVha3BvaW50KSB7XG5cdFx0XHRcdGhlaWdodDogMzN2dztcblx0XHRcdH1cblx0XHR9XG5cblx0XHRzcGFuLnRpdGxlIHtcblx0XHRcdGZvbnQtc2l6ZTogdmFyKC0tc2l6ZS1wbHVzMTIpO1xuXHRcdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XHRcdGxpbmUtaGVpZ2h0OiAxO1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bS1icmVha3BvaW50KSB7XG5cdFx0XHRcdG9wYWNpdHk6IDA7XG5cdFx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgNTAlLCAwKSBzY2FsZTNkKDEsIDEsIDEpIHJvdGF0ZVgoMCkgcm90YXRlWSgwKSByb3RhdGVaKDApIHNrZXcoMCwgMTJkZWcpO1xuXHRcdFx0XHR0cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkO1xuXHRcdFx0XHQmOmZpcnN0LWNoaWxkIHtcblx0XHRcdFx0XHR0cmFuc2l0aW9uLWRlbGF5OiAwLjFzO1xuXHRcdFx0XHR9XG5cdFx0XHRcdCY6bnRoLWNoaWxkKDIpIHtcblx0XHRcdFx0XHR0cmFuc2l0aW9uLWRlbGF5OiAwLjJzO1xuXHRcdFx0XHR9XG5cdFx0XHRcdCY6bnRoLWNoaWxkKDMpIHtcblx0XHRcdFx0XHR0cmFuc2l0aW9uLWRlbGF5OiAwLjNzO1xuXHRcdFx0XHR9XG5cdFx0XHRcdCY6bnRoLWNoaWxkKDQpIHtcblx0XHRcdFx0XHR0cmFuc2l0aW9uLWRlbGF5OiAwLjRzO1xuXHRcdFx0XHR9XG5cdFx0XHRcdCY6bnRoLWNoaWxkKDUpIHtcblx0XHRcdFx0XHR0cmFuc2l0aW9uLWRlbGF5OiAwLjVzO1xuXHRcdFx0XHR9XG5cdFx0XHRcdCY6bnRoLWNoaWxkKDYpIHtcblx0XHRcdFx0XHR0cmFuc2l0aW9uLWRlbGF5OiAwLjZzO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHRcdC5pcy1pbnZpZXcsXG5cdFx0JltkYXRhLXNjcm9sbC1zZWN0aW9uLWludmlld10ge1xuXHRcdFx0LnRpdGxlLWNvbnRhaW5lciB7XG5cdFx0XHRcdHNwYW4udGl0bGUge1xuXHRcdFx0XHRcdG9wYWNpdHk6IDE7XG5cdFx0XHRcdFx0dHJhbnNmb3JtOiBub25lO1xuXHRcdFx0XHRcdHRyYW5zaXRpb24tZHVyYXRpb246IDEuMnM7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblx0Ji5ibG9jay10aXRsZS10eXBlIHtcblx0XHRwYWRkaW5nOiAzLjZyZW0gMCAxLjhyZW0gMDtcblx0XHRAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bS1icmVha3BvaW50KSB7XG5cdFx0XHRwYWRkaW5nOiAwLjlyZW07XG5cdFx0fVxuXHRcdEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtLWJyZWFrcG9pbnQpIHtcblx0XHRcdHBhZGRpbmc6IDQuNXJlbSAxLjhyZW07XG5cdFx0fVxuXHRcdHNwYW4udGl0bGUge1xuXHRcdFx0Zm9udC1zaXplOiB2YXIoLS1zaXplLXBsdXMtaHVnZSk7XG5cdFx0XHRAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bS1icmVha3BvaW50KSB7XG5cdFx0XHRcdGZvbnQtc2l6ZTogdmFyKC0tc2l6ZS1wbHVzLW1odWdlKTtcblx0XHRcdH1cblx0XHRcdCYuYWRtaW4ge1xuXHRcdFx0XHRmb250LXNpemU6IHZhcigtLXNpemUtcGx1czYpO1xuXHRcdFx0fVxuXHRcdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XHRcdGxpbmUtaGVpZ2h0OiAwLjk7XG5cdFx0fVxuXHRcdC5pcy1pbnZpZXcsXG5cdFx0JltkYXRhLXNjcm9sbC1zZWN0aW9uLWludmlld10ge1xuXHRcdFx0LnRpdGxlLWNvbnRhaW5lciB7XG5cdFx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdFx0XHRcdHNwYW4udGl0bGUge1xuXHRcdFx0XHRcdCRhbmltYXRpb24tZGVsYXktc3RlcDogNzVtcztcblx0XHRcdFx0XHQkYW5pbWF0aW9uLWRlbGF5LW11bHRpcGxpZXI6IDMwO1xuXG5cdFx0XHRcdFx0LnRsIHtcblx0XHRcdFx0XHRcdGFuaW1hdGlvbjogdHlwZSAwLjFzIGxpbmVhciBmb3J3YXJkcztcblx0XHRcdFx0XHRcdG9wYWNpdHk6IDA7XG5cblx0XHRcdFx0XHRcdEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGFuaW1hdGlvbi1kZWxheS1tdWx0aXBsaWVyIHtcblx0XHRcdFx0XHRcdFx0JGRlbGF5OiAkaSAqICRhbmltYXRpb24tZGVsYXktc3RlcDtcblx0XHRcdFx0XHRcdFx0JGluZGV4OiAkaSArIDE7XG5cblx0XHRcdFx0XHRcdFx0JjpudGgtY2hpbGQoI3szMH1uICsgI3skaW5kZXh9KSB7XG5cdFx0XHRcdFx0XHRcdFx0YW5pbWF0aW9uLWRlbGF5OiAkZGVsYXk7XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblx0Ji5ibG9jay10aXRsZS1wZXJzcGVjdGl2ZSB7XG5cdFx0cGFkZGluZzogMy42cmVtIDAgMS44cmVtIDA7XG5cdFx0QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtZWRpdW0tYnJlYWtwb2ludCkge1xuXHRcdFx0cGFkZGluZzogMC45cmVtO1xuXHRcdH1cblx0XHRAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bS1icmVha3BvaW50KSB7XG5cdFx0XHRwYWRkaW5nOiA0LjVyZW0gMS44cmVtO1xuXHRcdH1cblx0XHRzcGFuLnRpdGxlIHtcblx0XHRcdGZvbnQtc2l6ZTogdmFyKC0tc2l6ZS1wbHVzLWh1Z2UpO1xuXHRcdFx0QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtZWRpdW0tYnJlYWtwb2ludCkge1xuXHRcdFx0XHRmb250LXNpemU6IHZhcigtLXNpemUtcGx1cy1taHVnZSk7XG5cdFx0XHR9XG5cdFx0XHQmLmFkbWluIHtcblx0XHRcdFx0Zm9udC1zaXplOiB2YXIoLS1zaXplLXBsdXM2KTtcblx0XHRcdH1cblx0XHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdFx0XHRsaW5lLWhlaWdodDogMC45O1xuXHRcdH1cblx0XHQudGl0bGUtY29udGFpbmVyIHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdFx0c3Bhbi50aXRsZSB7XG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bS1icmVha3BvaW50KSB7XG5cdFx0XHRcdFx0b3BhY2l0eTogMDtcblx0XHRcdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEyMCUsIDApIHNjYWxlM2QoMSwgMSwgMSkgcm90YXRlWCgwKSByb3RhdGVZKDApIHJvdGF0ZVooMCkgc2tldygwLCA2ZGVnKTtcblx0XHRcdFx0XHR0cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkO1xuXHRcdFx0XHRcdCY6Zmlyc3QtY2hpbGQge1xuXHRcdFx0XHRcdFx0dHJhbnNpdGlvbi1kZWxheTogMC4xcztcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0JjpudGgtY2hpbGQoMikge1xuXHRcdFx0XHRcdFx0dHJhbnNpdGlvbi1kZWxheTogMC4ycztcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0JjpudGgtY2hpbGQoMykge1xuXHRcdFx0XHRcdFx0dHJhbnNpdGlvbi1kZWxheTogMC4zcztcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0JjpudGgtY2hpbGQoNCkge1xuXHRcdFx0XHRcdFx0dHJhbnNpdGlvbi1kZWxheTogMC40cztcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0JjpudGgtY2hpbGQoNSkge1xuXHRcdFx0XHRcdFx0dHJhbnNpdGlvbi1kZWxheTogMC41cztcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0JjpudGgtY2hpbGQoNikge1xuXHRcdFx0XHRcdFx0dHJhbnNpdGlvbi1kZWxheTogMC42cztcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdFx0LmlzLWludmlldyxcblx0XHQmW2RhdGEtc2Nyb2xsLXNlY3Rpb24taW52aWV3XSB7XG5cdFx0XHQudGl0bGUtY29udGFpbmVyIHtcblx0XHRcdFx0c3Bhbi50aXRsZSB7XG5cdFx0XHRcdFx0b3BhY2l0eTogMTtcblx0XHRcdFx0XHR0cmFuc2Zvcm06IG5vbmU7XG5cdFx0XHRcdFx0dHJhbnNpdGlvbi1kdXJhdGlvbjogMC44cztcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXHQmLmJsb2NrLW1hcnF1ZWUge1xuXHRcdGg1IHtcblx0XHRcdGxpbmUtaGVpZ2h0OiB2YXIoLS1zaXplLXBsdXMxKTtcblx0XHRcdGZvbnQtc2l6ZTogdmFyKC0tc2l6ZS1wbHVzMik7XG5cdFx0XHR3aGl0ZS1zcGFjZTogbm93cmFwO1xuXHRcdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XHRcdGJvcmRlci10b3A6IHZhcigtLWxpbmUpO1xuXHRcdFx0Ym9yZGVyLWJvdHRvbTogdmFyKC0tbGluZSk7XG5cdFx0XHRwYWRkaW5nOiAwLjlyZW07XG5cdFx0XHRwYWRkaW5nOiAxLjM1cmVtIDAuOXJlbTtcblx0XHRcdEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtLWJyZWFrcG9pbnQpIHtcblx0XHRcdFx0cGFkZGluZzogMi4xMzVyZW0gMS44cmVtO1xuXHRcdFx0fVxuXHRcdFx0dGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG5cdFx0XHRtYXJnaW46IDA7XG5cdFx0XHRib3JkZXItcmlnaHQ6IHZhcigtLWxpbmUpO1xuXHRcdH1cblx0fVxuXHQmLmJsb2NrLWZwLTEge1xuXHRcdG92ZXJmbG93OiBoaWRkZW47XG5cdFx0LmdyaWQtY29udGFpbmVyIHtcblx0XHRcdCY6YWZ0ZXIsXG5cdFx0XHQmOmJlZm9yZSB7XG5cdFx0XHRcdGNvbnRlbnQ6IFwiIFwiO1xuXHRcdFx0XHRoZWlnaHQ6IDEuOHJlbTtcblx0XHRcdFx0bGVmdDogMDtcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdoaXRlKTtcblx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHR6LWluZGV4OiAyO1xuXHRcdFx0fVxuXHRcdFx0JjpiZWZvcmUge1xuXHRcdFx0XHR0b3A6IDA7XG5cdFx0XHR9XG5cdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0Ym90dG9tOiAwO1xuXHRcdFx0fVxuXHRcdH1cblx0XHQuZ3JpZC1jb250YWluZXIge1xuXHRcdFx0ei1pbmRleDogMTtcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHR9XG5cdFx0Li0tbGVmdCB7XG5cdFx0XHRtYXJnaW4tdG9wOiAwLjlyZW07XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAwLjlyZW07XG5cdFx0XHRAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bS1icmVha3BvaW50KSB7XG5cdFx0XHRcdHBhZGRpbmctcmlnaHQ6IDEuOHJlbTtcblx0XHRcdH1cblx0XHR9XG5cdFx0LmZsZXgtaW1hZ2Uge1xuXHRcdFx0aGVpZ2h0OiA1MHZ3O1xuXHRcdFx0cGFkZGluZy1ib3R0b206IDA7XG5cdFx0XHRtYXJnaW46IDAuOXJlbSAwO1xuXHRcdFx0QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtZWRpdW0tYnJlYWtwb2ludCkge1xuXHRcdFx0XHRtYXJnaW46IDAuOXJlbSAwO1xuXHRcdFx0XHRoZWlnaHQ6IDI1dnc7XG5cdFx0XHRcdCY6Zmlyc3Qtb2YtdHlwZSB7XG5cdFx0XHRcdFx0bWFyZ2luLXRvcDogMDtcblx0XHRcdFx0fVxuXHRcdFx0XHQmOmxhc3Qtb2YtdHlwZSB7XG5cdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHRpbWcge1xuXHRcdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0XHRcdG9iamVjdC1maXQ6IGNvdmVyO1xuXHRcdFx0fVxuXHRcdH1cblx0XHQudGV4dC1vdXRlciB7XG5cdFx0XHRiYWNrZ3JvdW5kOiB2YXIoLS1tZWRpdW1ncmV5KTtcblx0XHRcdHBhZGRpbmc6IDAuOWVtO1xuXHRcdFx0bWFyZ2luOiAwLjQ1cmVtIDA7XG5cdFx0XHRnYXA6IDAuOWVtO1xuXHRcdFx0QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtZWRpdW0tYnJlYWtwb2ludCkge1xuXHRcdFx0XHRnYXA6IDIuN2VtO1xuXHRcdFx0XHRwYWRkaW5nOiAxLjhlbTtcblx0XHRcdH1cblx0XHRcdC5sb2dvIHtcblx0XHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdFx0YWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuXHRcdFx0fVxuXHRcdFx0c3ZnLFxuXHRcdFx0aW1nIHtcblx0XHRcdFx0aGVpZ2h0OiAyNXZ3O1xuXHRcdFx0XHR3aWR0aDogYXV0bztcblx0XHRcdFx0QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtZWRpdW0tYnJlYWtwb2ludCkge1xuXHRcdFx0XHRcdGhlaWdodDogMTAwdnc7XG5cdFx0XHRcdFx0bWF4LXdpZHRoOiAzLjZyZW07XG5cdFx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAwLjlyZW07XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0bWluLWhlaWdodDogMTAwdnc7XG5cdFx0XHRAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bS1icmVha3BvaW50KSB7XG5cdFx0XHRcdG1pbi1oZWlnaHQ6IDI1dnc7XG5cdFx0XHR9XG5cdFx0XHRkaXNwbGF5OiBpbmxpbmUtZmxleDtcblx0XHRcdC50ZXh0LWlubmVyIHtcblx0XHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdFx0XHRtaW4taGVpZ2h0OiAxMDB2dztcblx0XHRcdFx0QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtZWRpdW0tYnJlYWtwb2ludCkge1xuXHRcdFx0XHRcdG1pbi1oZWlnaHQ6IDI1dnc7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cdFx0XHRcdGgyIHtcblx0XHRcdFx0XHRtYXJnaW46IDAuOXJlbSAwO1xuXHRcdFx0XHRcdGNvbG9yOiB2YXIoLS15ZWxsb3cpO1xuXHRcdFx0XHRcdGZvbnQtc2l6ZTogdmFyKC0tc2l6ZS1wbHVzMTApO1xuXHRcdFx0XHR9XG5cdFx0XHRcdHAge1xuXHRcdFx0XHRcdG1hcmdpbjogMDtcblx0XHRcdFx0XHRjb2xvcjogdmFyKC0td2hpdGUpO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cdCYuYmxvY2stZnAtc3BlYWtlcnMge1xuXHRcdHBhZGRpbmctdG9wOiAxLjhyZW07XG5cdFx0cGFkZGluZy1ib3R0b206IDEuOHJlbTtcblx0XHRAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bS1icmVha3BvaW50KSB7XG5cdFx0XHQubGluZS1jb250YWluZXIgLmxpbmUudmVydGljYWwub2Zmc2V0IHtcblx0XHRcdFx0aGVpZ2h0OiBjYWxjKDEwMCUgKyAzLjZyZW0pO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC5jdGEge1xuXHRcdFx0YmFja2dyb3VuZDogdmFyKC0tYmcpO1xuXHRcdFx0ei1pbmRleDogMjtcblx0XHRcdG1hcmdpbi1sZWZ0OiAxcHg7XG5cdFx0XHRtYXJnaW4tcmlnaHQ6IDFweDtcblx0XHRcdHdpZHRoOiBjYWxjKDEwMCUgLSAycHgpO1xuXHRcdFx0bWFyZ2luLXRvcDogLTEuOHJlbTtcblx0XHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0XHRwYWRkaW5nLXRvcDogMi43cmVtO1xuXHRcdFx0cGFkZGluZy1ib3R0b206IDIuN3JlbTtcblx0XHRcdEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtLWJyZWFrcG9pbnQpIHtcblx0XHRcdFx0cGFkZGluZy10b3A6IDMuNnJlbTtcblx0XHRcdFx0cGFkZGluZy1ib3R0b206IDMuNnJlbTtcblx0XHRcdFx0cGFkZGluZy10b3A6IDEwdmg7XG5cdFx0XHRcdHBhZGRpbmctYm90dG9tOiAxMHZoO1xuXHRcdFx0XHRib3JkZXItdG9wOiAxLjhyZW0gc29saWQgdmFyKC0td2hpdGUpO1xuXHRcdFx0fVxuXHRcdFx0YSB7XG5cdFx0XHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdFx0XHRcdGZvbnQtc2l6ZTogdmFyKC0tc2l6ZS1wbHVzMik7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdC5zcGVha2VyLXNpbmdsZSB7XG5cdFx0XHQucm9sbGVyLW1hcnF1ZWUge1xuXHRcdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdFx0fVxuXHRcdFx0LmltYWdlLWNhcmQge1xuXHRcdFx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdC5wYW5lbCB7XG5cdFx0XHRwYWRkaW5nOiAxLjhlbTtcblx0XHRcdGJhY2tncm91bmQ6IHZhcigtLXJlZCk7XG5cdFx0XHRAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bS1icmVha3BvaW50KSB7XG5cdFx0XHRcdG1pbi1oZWlnaHQ6IDEwMHZoO1xuXHRcdFx0XHRtaW4taGVpZ2h0OiBjYWxjKDEwMHZoIC0gY2FsYyh2YXIoLS1tZW51aGVpZ2h0KSAqIDAuNSkpO1xuXHRcdFx0XHR0cmFuc2l0aW9uOiBhbGwgNDAwbXMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG5cdFx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTEwJSk7XG5cdFx0XHRcdHRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7XG5cdFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdH1cblx0XHRcdG1hcmdpbi1ib3R0b206IDEuOHJlbTtcblx0XHRcdHAge1xuXHRcdFx0XHRtYXJnaW46IDA7XG5cdFx0XHR9XG5cdFx0XHQuY2VsbCB7XG5cdFx0XHRcdG1hcmdpbi10b3A6IDEuMzVyZW07XG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IDEuMzVyZW07XG5cdFx0XHR9XG5cdFx0fVxuXHRcdEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtLWJyZWFrcG9pbnQpIHtcblx0XHRcdC5pcy1pbnZpZXcgLnBhbmVsIHtcblx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXHQmLmJsb2NrLWN0YS1ibG9jayB7XG5cdFx0Ym9yZGVyLXRvcDogdmFyKC0tbGluZSk7XG5cdFx0Ym9yZGVyLWJvdHRvbTogdmFyKC0tbGluZSk7XG5cdFx0cGFkZGluZy10b3A6IDEuOHJlbTtcblx0XHRwYWRkaW5nLWJvdHRvbTogMS44cmVtO1xuXHRcdG1hcmdpbi10b3A6IDEuOHJlbTtcblx0fVxuXHQmLmJsb2NrLXR5cGUge1xuXHRcdHBhZGRpbmctdG9wOiAzLjZyZW07XG5cdFx0cGFkZGluZy1ib3R0b206IDMuNnJlbTtcblx0XHRAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bS1icmVha3BvaW50KSB7XG5cdFx0XHRwYWRkaW5nLXRvcDogNy4ycmVtO1xuXHRcdFx0cGFkZGluZy1ib3R0b206IDcuMnJlbTtcblx0XHR9XG5cdFx0Ji4tLXBhZGRpbmctdG9wLXJlZHVjZSB7XG5cdFx0XHRwYWRkaW5nLXRvcDogMS44cmVtO1xuXHRcdFx0QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtZWRpdW0tYnJlYWtwb2ludCkge1xuXHRcdFx0XHRwYWRkaW5nLXRvcDogMy42cmVtO1xuXHRcdFx0fVxuXHRcdH1cblx0XHQmLi0tcGFkZGluZy10b3Atbm9uZSB7XG5cdFx0XHRwYWRkaW5nLXRvcDogMC45ZW07XG5cdFx0fVxuXHRcdCYuLS1wYWRkaW5nLWJvdHRvbS1yZWR1Y2Uge1xuXHRcdFx0cGFkZGluZy1ib3R0b206IDEuOHJlbTtcblx0XHRcdEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtLWJyZWFrcG9pbnQpIHtcblx0XHRcdFx0cGFkZGluZy1ib3R0b206IDMuNnJlbTtcblx0XHRcdH1cblx0XHR9XG5cdFx0Ji4tLXBhZGRpbmctYm90dG9tLW5vbmUge1xuXHRcdFx0cGFkZGluZy1ib3R0b206IDAuOWVtO1xuXHRcdH1cblx0XHQuZ3JpZC1tYXJnaW4teSA+IC5jZWxsIHtcblx0XHRcdG1hcmdpbi10b3A6IDAuNDVlbTtcblx0XHRcdG1hcmdpbi1ib3R0b206IDAuNDVlbTtcblx0XHR9XG5cdFx0aDEsXG5cdFx0aDIsXG5cdFx0aDMsXG5cdFx0aDQsXG5cdFx0aDUsXG5cdFx0aDYge1xuXHRcdFx0bWFyZ2luOiAwO1xuXHRcdFx0Ji5iaWctaGVhZGVyIHtcblx0XHRcdFx0Ji5oMSB7XG5cdFx0XHRcdFx0Zm9udC1zaXplOiB2YXIoLS1zaXplLXBsdXMtaHVnZSk7XG5cdFx0XHRcdH1cblx0XHRcdFx0Ji5oMiB7XG5cdFx0XHRcdFx0Zm9udC1zaXplOiB2YXIoLS1zaXplLXBsdXMxMyk7XG5cdFx0XHRcdH1cblx0XHRcdFx0Ji5oMyB7XG5cdFx0XHRcdFx0Zm9udC1zaXplOiB2YXIoLS1zaXplLXBsdXM2KTtcblx0XHRcdFx0fVxuXHRcdFx0XHQmLmg0IHtcblx0XHRcdFx0XHRmb250LXNpemU6IHZhcigtLXNpemUtcGx1czQpO1xuXHRcdFx0XHR9XG5cdFx0XHRcdCYuaDUge1xuXHRcdFx0XHRcdGZvbnQtc2l6ZTogdmFyKC0tc2l6ZS1wbHVzMik7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdFx0LnF1b3RlIHtcblx0XHRcdHAge1xuXHRcdFx0XHRtYXJnaW46IDAuNDVyZW0gMDtcblx0XHRcdH1cblx0XHRcdC5sZWFkIHtcblx0XHRcdFx0cCB7XG5cdFx0XHRcdFx0bGluZS1oZWlnaHQ6IDE7XG5cdFx0XHRcdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XHRcdFx0XHRmb250LXNpemU6IHZhcigtLXNpemUtcGx1czQpO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHRociB7XG5cdFx0XHRcdG1hcmdpbjogMC45cmVtIDA7XG5cdFx0XHRcdG1heC13aWR0aDogMS44cmVtO1xuXHRcdFx0fVxuXHRcdFx0Ji5iaWcgLmxlYWQgcCB7XG5cdFx0XHRcdGZvbnQtc2l6ZTogdmFyKC0tc2l6ZS1wbHVzMTApO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXHQmLmJsb2NrLWN0YS10ZXh0IHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0bWFyZ2luOiAwIDAgLTIuN3JlbSAwO1xuXHRcdHBhZGRpbmc6IDA7XG5cdFx0Ji4tLXllbGxvdyB7XG5cdFx0XHQtLWxpZ2h0Z3JleTogdmFyKC0teWVsbG93KTtcblx0XHR9XG5cdFx0Ji4tLXJlZCB7XG5cdFx0XHQtLWxpZ2h0Z3JleTogdmFyKC0tcmVkKTtcblx0XHR9XG5cdFx0Ji4tLWJsdWUge1xuXHRcdFx0LS1saWdodGdyZXk6IHZhcigtLWJsdWUpO1xuXHRcdH1cblx0XHQmLi0tYmxhY2sge1xuXHRcdFx0LS1saWdodGdyZXk6IHZhcigtLWJsYWNrKTtcblx0XHR9XG5cdFx0LmN0YSB7XG5cdFx0XHRwb3NpdGlvbjogaW5pdGlhbDsgLy8gZXh0ZW5kIGFmdGVyIGludG8gcGFyZW50XG5cdFx0XHRiYWNrZ3JvdW5kOiB2YXIoLS1iZyk7XG5cdFx0XHR6LWluZGV4OiAyO1xuXHRcdFx0bWFyZ2luLWxlZnQ6IDFweDtcblx0XHRcdG1hcmdpbi1yaWdodDogMXB4O1xuXHRcdFx0d2lkdGg6IGNhbGMoMTAwJSAtIDJweCk7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHRcdFx0bWFyZ2luLXRvcDogMDtcblx0XHRcdHBhZGRpbmctdG9wOiAzLjZyZW07XG5cdFx0XHRwYWRkaW5nLWJvdHRvbTogMy42cmVtO1xuXHRcdFx0QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtZWRpdW0tYnJlYWtwb2ludCkge1xuXHRcdFx0XHRwYWRkaW5nLXRvcDogNS4ycmVtO1xuXHRcdFx0XHRwYWRkaW5nLWJvdHRvbTogNS4ycmVtO1xuXHRcdFx0XHRwYWRkaW5nLXRvcDogMTV2aDtcblx0XHRcdFx0cGFkZGluZy1ib3R0b206IDE1dmg7XG5cdFx0XHR9XG5cdFx0XHRhIHtcblx0XHRcdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XHRcdFx0Zm9udC1zaXplOiB2YXIoLS1zaXplLXBsdXMzKTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblx0Ji5ibG9jay1jb21taXR0ZWUge1xuXHRcdHBhZGRpbmctdG9wOiAxLjhyZW07XG5cdFx0cGFkZGluZy1ib3R0b206IDEuOHJlbTtcblx0fVxuXHQmLmJsb2NrLWNvbW1pdHRlZSxcblx0Ji5ibG9jay1zcGVha2VycyB7XG5cdFx0LnNwZWFrZXItc2luZ2xlIHtcblx0XHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHRcdHBhZGRpbmctdG9wOiAxLjM1cmVtO1xuXHRcdFx0cGFkZGluZy1ib3R0b206IDEuMzVyZW07XG5cdFx0XHQmLmxhc3Qtb2YtdHlwZSB7XG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IDAuOXJlbTtcblx0XHRcdH1cblx0XHRcdC5wZXJzb24tY2FyZCB7XG5cdFx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0XHRcdEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtLWJyZWFrcG9pbnQpIHtcblx0XHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdFx0ei1pbmRleDogMztcblx0XHRcdFx0XHR0b3A6IDUwJTtcblx0XHRcdFx0XHRoZWlnaHQ6IDE1dnc7XG5cdFx0XHRcdFx0d2lkdGg6IDE1dnc7XG5cdFx0XHRcdFx0cmlnaHQ6IDE1dnc7XG5cdFx0XHRcdFx0b3BhY2l0eTogMDtcblx0XHRcdFx0XHRwb2ludGVyLWV2ZW50czogbm9uZTtcblx0XHRcdFx0XHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXHRcdFx0XHRcdHZpZGVvLFxuXHRcdFx0XHRcdGlmcmFtZSxcblx0XHRcdFx0XHRpbWcge1xuXHRcdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRcdFx0dG9wOiAwO1xuXHRcdFx0XHRcdFx0bGVmdDogMDtcblx0XHRcdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdFx0XHRcdFx0ei1pbmRleDogMTtcblx0XHRcdFx0XHRcdG9iamVjdC1maXQ6IGNvdmVyO1xuXHRcdFx0XHRcdFx0ZmlsdGVyOiBncmF5c2NhbGUoMTAwJSk7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdHRyYW5zaXRpb246IGFsbCA2MDBtcyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKSBzY2FsZSgwLjI1KTtcblx0XHRcdFx0XHR0cmFuc2Zvcm06IHJvdGF0ZSgxMi41ZGVnKSB0cmFuc2xhdGVZKC01MCUpO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHQmOmhvdmVyIC5wZXJzb24tY2FyZCB7XG5cdFx0XHRcdEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtLWJyZWFrcG9pbnQpIHtcblx0XHRcdFx0XHRvcGFjaXR5OiAxO1xuXHRcdFx0XHRcdHRyYW5zZm9ybTogcm90YXRlKDApIHRyYW5zbGF0ZVkoLTUwJSk7XG5cdFx0XHRcdFx0dHJhbnNpdGlvbjogYWxsIDQwMG1zIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHQuZmlyc3Qge1xuXHRcdFx0XHR0ZXh0LWFsaWduOiByaWdodDtcblx0XHRcdFx0c3BhbiB7XG5cdFx0XHRcdFx0bGluZS1oZWlnaHQ6IHZhcigtLXNpemUtcGx1czUpO1xuXHRcdFx0XHRcdGZvbnQtc2l6ZTogdmFyKC0tc2l6ZSk7XG5cdFx0XHRcdFx0dmVydGljYWwtYWxpZ246IHRvcDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdFx0Lmxhc3Qge1xuXHRcdFx0XHR0ZXh0LWFsaWduOiBsZWZ0O1xuXHRcdFx0XHRzcGFuIHtcblx0XHRcdFx0XHRsaW5lLWhlaWdodDogdmFyKC0tc2l6ZS1wbHVzOCk7XG5cdFx0XHRcdFx0Zm9udC1zaXplOiB2YXIoLS1zaXplLXBsdXM4KTtcblx0XHRcdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdFx0XHRcdHZlcnRpY2FsLWFsaWduOiB0b3A7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdG92ZXJmbG93OiB2aXNpYmxlO1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0Lm1hcnF1ZWUge1xuXHRcdFx0XHRAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1lZGl1bS1icmVha3BvaW50KSB7XG5cdFx0XHRcdFx0ZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuXHRcdFx0XHR9XG5cdFx0XHRcdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXHRcdFx0XHRvcGFjaXR5OiAwO1xuXHRcdFx0XHR0cmFuc2l0aW9uOiBhbGwgMzAwbXMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG5cdFx0XHRcdGJvcmRlcjogbm9uZTtcblx0XHRcdFx0ei1pbmRleDogMjtcblx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHR0b3A6IDA7XG5cdFx0XHRcdGxlZnQ6IDA7XG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRzcGFuIHtcblx0XHRcdFx0XHRmb250LXNpemU6IHZhcigtLXNpemUtcGx1czEpO1xuXHRcdFx0XHRcdHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cdFx0XHRcdFx0aGVpZ2h0OiB2YXIoLS1zaXplLXBsdXMxKTtcblx0XHRcdFx0XHR0ZXh0LXRyYW5zZm9ybTogbm9uZTtcblx0XHRcdFx0XHRsaW5lLWhlaWdodDogMTtcblx0XHRcdFx0XHRjb2xvcjogdmFyKC0tbWFycXVlZWNvbG9yKTtcblx0XHRcdFx0XHRzcGFuIHtcblx0XHRcdFx0XHRcdG1hcmdpbjogMCAwLjQ5ZW07XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cblx0XHRcdFx0QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtZWRpdW0tYnJlYWtwb2ludCkge1xuXHRcdFx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdFx0XHR3aWR0aDogY2FsYygxMDAlICsgMy42cmVtKTtcblx0XHRcdFx0XHR0b3A6IDA7XG5cdFx0XHRcdFx0Ym90dG9tOiAwO1xuXHRcdFx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdFx0XHRtYXJnaW4tbGVmdDogLTEuOHJlbTtcblx0XHRcdFx0XHRtYXJnaW4tcmlnaHQ6IC0zLjhyZW07XG5cdFx0XHRcdH1cblxuXHRcdFx0XHRzcGFuIHtcblx0XHRcdFx0XHR0ZXh0LXRyYW5zZm9ybTogbm9uZTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdFx0LnNwZWFrZXItc2luZ2xlLXRleHQge1xuXHRcdFx0XHR6LWluZGV4OiAxO1xuXHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHR9XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtZWRpdW0tYnJlYWtwb2ludCkge1xuXHRcdFx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0XHRcdH1cblx0XHRcdFx0Y29udGVudDogXCIgXCI7XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0dHJhbnNpdGlvbjogYWxsIDIwMG1zIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xuXHRcdFx0XHR0b3A6IDUwJTtcblx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuXHRcdFx0XHRsZWZ0OiAwO1xuXHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtZWRpdW0tYnJlYWtwb2ludCkge1xuXHRcdFx0XHRcdHdpZHRoOiBjYWxjKDEwMCUgKyA1LjRyZW0pO1xuXHRcdFx0XHRcdGxlZnQ6IC0xLjhyZW07XG5cdFx0XHRcdFx0cmlnaHQ6IC0zLjhyZW07XG5cdFx0XHRcdH1cblx0XHRcdFx0ei1pbmRleDogMTtcblx0XHRcdFx0YmFja2dyb3VuZDogdmFyKC0taG92ZXJzdGF0ZSk7XG5cdFx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdFx0bWF4LWhlaWdodDogMHB4O1xuXHRcdFx0fVxuXHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdC5tYXJxdWVlIHtcblx0XHRcdFx0XHR0cmFuc2l0aW9uOiBhbGwgNjAwbXMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG5cdFx0XHRcdFx0b3BhY2l0eTogMTtcblx0XHRcdFx0fVxuXHRcdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0XHR0cmFuc2l0aW9uOiBhbGwgNjAwbXMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG5cdFx0XHRcdFx0bWF4LWhlaWdodDogMy42cmVtO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHRcdGgyIHtcblx0XHRcdGNvbG9yOiB2YXIoLS1ob3ZlcnN0YXRlKTtcblx0XHRcdG1hcmdpbjogMC45cmVtIDA7XG5cdFx0fVxuXHRcdC5saW5lLWNvbnRhaW5lciB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAwLjllbTtcblx0XHRcdCYubGFzdCB7XG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IDFweDtcblx0XHRcdH1cblx0XHR9XG5cdFx0LnNwZWFrZXJzLXBhbmVsIHtcblx0XHRcdEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtLWJyZWFrcG9pbnQpIHtcblx0XHRcdFx0bWFyZ2luLWxlZnQ6IDA7XG5cdFx0XHRcdCYubWVkaXVtLTMge1xuXHRcdFx0XHRcdHdpZHRoOiBjYWxjKDI1JSAtIDEuOHJlbSk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdC5wYW5lbCB7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWhvdmVyc3RhdGUpO1xuXHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0XHRcdGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cdFx0XHRcdGZsZXgtd3JhcDogd3JhcDtcblx0XHRcdFx0anVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuXHRcdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdFx0XHRwYWRkaW5nOiAxLjhlbTtcblx0XHRcdFx0aDMge1xuXHRcdFx0XHRcdG1hcmdpbjogMDtcblx0XHRcdFx0XHR0ZXh0LXRyYW5zZm9ybTogbm9uZTtcblx0XHRcdFx0XHRmb250LXdlaWdodDogdmFyKC0td2VpZ2h0LW5vcm1hbCk7XG5cdFx0XHRcdFx0Y29sb3I6IHZhcigtLXdoaXRlKTtcblx0XHRcdFx0XHRsaW5lLWhlaWdodDogdmFyKC0tYm9keS1saW5lLWhlaWdodCk7XG5cdFx0XHRcdFx0Zm9udC1zaXplOiB2YXIoLS1zaXplLXBsdXMzKTtcblx0XHRcdFx0fVxuXHRcdFx0XHRAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bS1icmVha3BvaW50KSB7XG5cdFx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0XHRcdCY6YWZ0ZXIge1xuXHRcdFx0XHRcdFx0Y29udGVudDogXCIgXCI7XG5cdFx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdFx0XHRib3R0b206IDAuOXJlbTtcblx0XHRcdFx0XHRcdGxlZnQ6IDAuOXJlbTtcblx0XHRcdFx0XHRcdHJpZ2h0OiAwLjlyZW07XG5cdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiB2YXIoLS13aGl0ZSk7XG5cdFx0XHRcdFx0XHRoZWlnaHQ6IDFweDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdFx0LnBlb3BsZS1ncmlkIHtcblx0XHRcdCY6bGFzdC1vZi10eXBlIHtcblx0XHRcdFx0LnBhbmVsIHtcblx0XHRcdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cdCYuYmxvY2stdGl0bGUtbWVkaWEge1xuXHRcdGgxIHtcblx0XHRcdHotaW5kZXg6IDQ7XG5cdFx0XHRsaW5lLWhlaWdodDogMTtcblx0XHRcdGZvbnQtc2l6ZTogdmFyKC0tc2l6ZS1wbHVzLWh1Z2UpO1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0dG9wOiAwO1xuXHRcdFx0bGVmdDogMDtcblx0XHRcdGJhY2tncm91bmQ6IHZhcigtLXdoaXRlKTtcblx0XHRcdHBhZGRpbmc6IDAuOXJlbTtcblx0XHRcdEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtLWJyZWFrcG9pbnQpIHtcblx0XHRcdFx0cGFkZGluZzogMS44cmVtIDMuNnJlbSAxLjhyZW0gMDtcblx0XHRcdH1cblx0XHRcdG1hcmdpbjogMDtcblx0XHR9XG5cdH1cblx0Ji5ibG9jay1hY2NvcmRpb24ge1xuXHRcdC50aXRsZS1ibG9jayB7XG5cdFx0XHRib3JkZXItcmlnaHQ6IG5vbmU7XG5cdFx0XHRib3JkZXItYm90dG9tOiB2YXIoLS1saW5lKTtcblx0XHRcdEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtLWJyZWFrcG9pbnQpIHtcblx0XHRcdFx0Ym9yZGVyLWJvdHRvbTogbm9uZTtcblx0XHRcdFx0Ym9yZGVyLXJpZ2h0OiB2YXIoLS1saW5lKTtcblx0XHRcdH1cblx0XHRcdGgzIHtcblx0XHRcdFx0bWFyZ2luOiAwO1xuXHRcdFx0XHRwYWRkaW5nOiAxLjhyZW07XG5cdFx0XHRcdEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtLWJyZWFrcG9pbnQpIHtcblx0XHRcdFx0XHRwYWRkaW5nOiAwLjllbTtcblx0XHRcdFx0fVxuXHRcdFx0XHRmb250LXdlaWdodDogdmFyKC0td2VpZ2h0LXNib2xkKTtcblx0XHRcdFx0c3BhbiB7XG5cdFx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRcdFx0Zm9udC13ZWlnaHQ6IHZhcigtLXdlaWdodC1ub3JtYWwpO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHRcdG1hcmdpbi10b3A6IDEuOHJlbTtcblx0XHRib3JkZXItYm90dG9tOiB2YXIoLS1saW5lKTtcblx0XHQuYWNjb3JkaWFuIHtcblx0XHRcdHBhZGRpbmc6IDEuOHJlbSAxLjhyZW0gMDtcblx0XHRcdC5saW5lLWNvbnRhaW5lciB7XG5cdFx0XHRcdHdpZHRoOiBjYWxjKDEwMCUgKyAzLjZyZW0pO1xuXHRcdFx0XHRtYXJnaW4tbGVmdDogLTEuOHJlbTtcblx0XHRcdFx0bWFyZ2luLXRvcDogMS44cmVtO1xuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHRcdFx0fVxuXHRcdFx0LmFjY29yZGlhbi10aXRsZSB7XG5cdFx0XHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHRcdFx0Ji5kaXNhYmxlIHtcblx0XHRcdFx0XHRjdXJzb3I6IGRlZmF1bHQ7XG5cdFx0XHRcdFx0Jjpob3ZlciBoNSxcblx0XHRcdFx0XHRoNSB7XG5cdFx0XHRcdFx0XHR0cmFuc2Zvcm06IG5vbmU7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHRcdGg1IHtcblx0XHRcdFx0XHRmb250LXNpemU6IHZhcigtLXNpemUtcGx1czMpO1xuXHRcdFx0XHRcdHRyYW5zaXRpb246IDc1MG1zIGFsbCBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcblx0XHRcdFx0XHRtYXJnaW46IDAuNDVyZW0gMDtcblx0XHRcdFx0XHRAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bS1icmVha3BvaW50KSB7XG5cdFx0XHRcdFx0XHRtYXJnaW46IDA7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdHRleHQtdHJhbnNmb3JtOiBub25lO1xuXHRcdFx0XHR9XG5cdFx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRcdGg1IHtcblx0XHRcdFx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwLjQ1ZW0pO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0XHQucGx1cyB7XG5cdFx0XHRcdFx0dHJhbnNpdGlvbjogNzUwbXMgYWxsIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xuXHRcdFx0XHR9XG5cdFx0XHRcdCY6aG92ZXIgLnBsdXMge1xuXHRcdFx0XHRcdHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdC5hY2NvcmRpYW4tdGV4dCB7XG5cdFx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0XHRcdHBhZGRpbmc6IDAuOXJlbSAwO1xuXHRcdFx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHRcdFx0XHRwIHtcblx0XHRcdFx0XHRtYXJnaW46IDAuOXJlbSAwIDAgMDtcblx0XHRcdFx0XHRtYXgtd2lkdGg6IDYwY2g7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdC5wbHVzIHJlY3Qge1xuXHRcdFx0XHR0cmFuc2l0aW9uOiBhbGwgZWFzZSA1MDBtcztcblx0XHRcdFx0dHJhbnNmb3JtOiBzY2FsZVkoMSk7XG5cdFx0XHRcdHRyYW5zZm9ybS1vcmlnaW46IDUwJSA1MCU7XG5cdFx0XHR9XG5cdFx0XHQmLmFjdGl2ZSB7XG5cdFx0XHRcdCY6aG92ZXIgaDUsXG5cdFx0XHRcdGg1IHtcblx0XHRcdFx0XHR0cmFuc2Zvcm06IG5vbmU7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQuYWNjb3JkaWFuLXRpdGxlIC5wbHVzIC52ZXJ0aWNhbC1saW5lIHtcblx0XHRcdFx0XHR0cmFuc2Zvcm06IHNjYWxlWSgwKTtcblx0XHRcdFx0fVxuXHRcdFx0XHQuYWNjb3JkaWFuLXRpdGxlOmhvdmVyIC5wbHVzIC52ZXJ0aWNhbC1saW5lIHtcblx0XHRcdFx0XHR0cmFuc2Zvcm06IHNjYWxlWSgxKSByb3RhdGUoNDVkZWcpO1xuXHRcdFx0XHR9XG5cdFx0XHRcdC5hY2NvcmRpYW4tdGl0bGU6aG92ZXIgLnBsdXMgLmhvcml6b250YWwtbGluZSB7XG5cdFx0XHRcdFx0dHJhbnNmb3JtOiBzY2FsZVkoMSkgcm90YXRlKDQ1ZGVnKTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG4uc3BlYWtlci1tb2RhbCB7XG5cdCYuLS1ib3JkZXItb2Zmc2V0LFxuXHQmLi0tYm9yZGVyLW9mZnNldC10b3Age1xuXHRcdCY6YWZ0ZXIge1xuXHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHR9XG5cdH1cblx0cG9zaXRpb246IGZpeGVkO1xuXHR6LWluZGV4OiA5OTk5OTtcblx0dG9wOiAwO1xuXHRsZWZ0OiAwO1xuXHR3aWR0aDogMTAwJTtcblx0aGVpZ2h0OiAxMDAlO1xuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xuXHRwb2ludGVyLWV2ZW50czogbm9uZTtcblx0dHJhbnNpdGlvbjogYWxsIDFtcyAwLjhzIGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKTtcblx0QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtZWRpdW0tYnJlYWtwb2ludCkge1xuXHRcdG9wYWNpdHk6IDA7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxuXHQuc3BlYWtlci1tb2RhbC1pbm5lciB7XG5cdFx0ei1pbmRleDogMjtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOiAwO1xuXHRcdGhlaWdodDogMTAwJTtcblx0XHRyaWdodDogMDtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bS1icmVha3BvaW50KSB7XG5cdFx0XHR3aWR0aDogNjByZW07XG5cdFx0fVxuXHRcdG92ZXJmbG93LXg6IGhpZGRlbjtcblx0XHQuc3BlYWtlci1tb2RhbC1pbm5lci1jZWxsIHtcblx0XHRcdGJhY2tncm91bmQ6IHZhcigtLWJnKTtcblx0XHRcdG1hcmdpbjogMC40NXJlbTtcblx0XHRcdHBhZGRpbmc6IDEuOHJlbTtcblx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcblx0XHRcdHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjhzIGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKTtcblx0XHRcdEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbWVkaXVtLWJyZWFrcG9pbnQpIHtcblx0XHRcdFx0cGFkZGluZzogMC40NXJlbTtcblx0XHRcdH1cblx0XHRcdCYuY2xvc2UtbW9kYWwtY2VsbCB7XG5cdFx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRcdGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWhvdmVyc3RhdGUpO1xuXHRcdFx0fVxuXHRcdFx0Ji5wZXJzb24tbW9kYWwtY2VsbCB7XG5cdFx0XHRcdG1pbi1oZWlnaHQ6IDEwMHZoO1xuXHRcdFx0XHRtaW4taGVpZ2h0OiBjYWxjKDEwMHZoIC0gNy4ycmVtKTtcblx0XHRcdFx0dHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuOHMgY3ViaWMtYmV6aWVyKDAuMTksIDEsIDAuMjIsIDEpIDAuMnM7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdGltZyB7XG5cdFx0XHRmaWx0ZXI6IGdyYXlzY2FsZSgxMDAlKTtcblx0XHR9XG5cdFx0aDMge1xuXHRcdFx0bGluZS1oZWlnaHQ6IDE7XG5cdFx0XHRmb250LXNpemU6IHZhcigtLXNpemUtcGx1czkpO1xuXG5cdFx0XHRtYXJnaW46IDA7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHRcdHNwYW4uZm4ge1xuXHRcdFx0XHR0ZXh0LXRyYW5zZm9ybTogbm9uZTtcblx0XHRcdFx0dmVydGljYWwtYWxpZ246IHRvcDtcblx0XHRcdFx0cGFkZGluZy10b3A6IDFlbTtcblx0XHRcdFx0Zm9udC1zaXplOiB2YXIoLS1zaXplLXBsdXMyKTtcblx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0fVxuXHRcdH1cblx0XHQucGFuZWwge1xuXHRcdFx0cGFkZGluZzogMS44cmVtO1xuXHRcdFx0QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtZWRpdW0tYnJlYWtwb2ludCkge1xuXHRcdFx0XHRwYWRkaW5nOiAzLjZyZW07XG5cdFx0XHR9XG5cdFx0XHRib3JkZXI6IHZhcigtLWxpbmUpO1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtZWRpdW0tYnJlYWtwb2ludCkge1xuXHRcdFx0XHQuYWxpZ24tc2VsZi10b3Age1xuXHRcdFx0XHRcdHBvc2l0aW9uOiBzdGlja3k7XG5cdFx0XHRcdFx0dG9wOiAxLjhyZW07XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdHAge1xuXHRcdFx0XHQmOmxhc3Qtb2YtdHlwZSB7XG5cdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdFx0JjpiZWZvcmUge1xuXHRcdFx0XHRjb250ZW50OiBcIiBcIjtcblx0XHRcdFx0d2lkdGg6IDJweDtcblx0XHRcdFx0aGVpZ2h0OiAxLjhyZW07XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0dG9wOiAwcHg7XG5cdFx0XHRcdGxlZnQ6IC0xcHg7XG5cdFx0XHRcdGJhY2tncm91bmQ6IHZhcigtLXdoaXRlKTtcblx0XHRcdFx0ei1pbmRleDogMjtcblx0XHRcdH1cblx0XHRcdCY6YWZ0ZXIge1xuXHRcdFx0XHRjb250ZW50OiBcIiBcIjtcblx0XHRcdFx0aGVpZ2h0OiAycHg7XG5cdFx0XHRcdHdpZHRoOiAxLjhyZW07XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0cmlnaHQ6IDBweDtcblx0XHRcdFx0Ym90dG9tOiAtMXB4O1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiB2YXIoLS13aGl0ZSk7XG5cdFx0XHRcdHotaW5kZXg6IDI7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cdCY6YmVmb3JlIHtcblx0XHRjb250ZW50OiBcIiBcIjtcblx0XHR6LWluZGV4OiAxO1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR0b3A6IDA7XG5cdFx0bGVmdDogMDtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0b3BhY2l0eTogMC40O1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG5cdFx0YmFja2dyb3VuZDogdmFyKC0tYmxhY2spO1xuXHRcdHRyYW5zaXRpb246IHRyYW5zZm9ybSAxLjZzIGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKTtcblx0fVxuXHQmLi0tYWN0aXZlIHtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG5cdFx0cG9pbnRlci1ldmVudHM6IGF1dG87XG5cdFx0dHJhbnNpdGlvbjogbm9uZTtcblx0XHRAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1lZGl1bS1icmVha3BvaW50KSB7XG5cdFx0XHRvcGFjaXR5OiAxO1xuXHRcdH1cblxuXHRcdCY6YmVmb3JlIHtcblx0XHRcdG9wYWNpdHk6IDAuNDtcblx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcblx0XHR9XG5cdFx0LnNwZWFrZXItbW9kYWwtaW5uZXItY2VsbCB7XG5cdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG5cdFx0fVxuXHR9XG59XG5cbi8vIFRSQU5TXG5cbiN0cmFucyB7XG5cdHBvc2l0aW9uOiBmaXhlZDtcblx0dG9wOiAwO1xuXHRsZWZ0OiAwO1xuXHR3aWR0aDogMTAwJTtcblx0aGVpZ2h0OiAxMDAlO1xuXHRiYWNrZ3JvdW5kOiAjZmZmO1xuXHR0cmFuc2l0aW9uOiBvcGFjaXR5IGVhc2UgNjAwbXM7XG5cdHotaW5kZXg6IDk5OTtcblx0b3BhY2l0eTogMDtcblx0dG91Y2gtYWN0aW9uOiBub25lO1xuXHRwb2ludGVyLWV2ZW50czogbm9uZTtcblx0Ji5pbiB7XG5cdFx0b3BhY2l0eTogMTtcblx0fVxuXHQmLnJlc2V0IHtcblx0XHQmLm91dCB7XG5cdFx0XHRvcGFjaXR5OiAxO1xuXHRcdH1cblx0fVxufVxuXG4uYmxvY2stbWFpbGNoaW1wIHtcblx0LmNvbnRlbnQge1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdGdhcDogMC45ZW07XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG5cdFx0QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtZWRpdW0tYnJlYWtwb2ludCkge1xuXHRcdFx0Z2FwOiA3LjJlbTtcblx0XHRcdGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cdFx0XHQmLnN1Ym1pdCB7XG5cdFx0XHRcdGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5cdFx0XHRcdHBhZGRpbmctdG9wOiAzLjZlbTtcblx0XHRcdFx0cGFkZGluZy1ib3R0b206IDMuNmVtO1xuXHRcdFx0fVxuXHRcdH1cblx0XHRmbGV4LXdyYXA6IG5vd3JhcDtcblx0fVxuXHQuaW5wdXQge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHR6LWluZGV4OiAxO1xuXHRcdGZsZXg6IDE7XG5cdFx0bWluLXdpZHRoOiAxMGVtO1xuXHR9XG5cblx0aW5wdXQjc3VibWl0IHtcblx0XHR0cmFuc2l0aW9uOiBhbGwgNTAwbXMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG5cblx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0YmFja2dyb3VuZDogdmFyKC0taG92ZXJzdGF0ZSk7XG5cdFx0aGVpZ2h0OiAyZW07XG5cdFx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0taG92ZXJzdGF0ZSkgIWltcG9ydGFudDtcblx0XHRib3JkZXItcmFkaXVzOiAxLjhyZW07XG5cdFx0bWluLXdpZHRoOiAxMnJlbTtcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHR0cmFuc2Zvcm06IG5vbmU7XG5cdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdFx0bGluZS1oZWlnaHQ6IHZhcigtLXNpemUpO1xuXHRcdGZvbnQtc2l6ZTogdmFyKC0tc2l6ZSk7XG5cdFx0bWFyZ2luOiAwO1xuXHRcdHBhZGRpbmc6IDAuNDVlbSAxLjhlbTtcblx0XHQmOmhvdmVyIHtcblx0XHRcdGNvbG9yOiB2YXIoLS1ob3ZlcnN0YXRlKTtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXHRcdH1cblx0fVxuXG5cdC5pbnB1dF9fZmllbGQge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRmbG9hdDogcmlnaHQ7XG5cdFx0cGFkZGluZzogMC44ZW07XG5cdFx0d2lkdGg6IDYwJTtcblx0XHRib3JkZXI6IG5vbmU7XG5cdFx0Ym9yZGVyLXJhZGl1czogMDtcblx0XHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblx0XHRjb2xvcjogdmFyKC0tYmxhY2spO1xuXHRcdC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsgLyogZm9yIGJveCBzaGFkb3dzIHRvIHNob3cgb24gaU9TICovXG5cdH1cblxuXHQuaW5wdXRfX2ZpZWxkOmZvY3VzIHtcblx0XHRvdXRsaW5lOiBub25lO1xuXHR9XG5cblx0LmlucHV0X19sYWJlbCB7XG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdHBhZGRpbmc6IDAgMWVtO1xuXHRcdHdpZHRoOiAzMCU7XG5cdFx0Y29sb3I6IHZhcigtLWJsYWNrKTtcblx0XHRmb250LXNpemU6IDEuMTI1ZW07XG5cdFx0LXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG5cdFx0LW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcblx0XHQtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG5cdFx0LXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcblx0XHQta2h0bWwtdXNlci1zZWxlY3Q6IG5vbmU7XG5cdFx0LW1vei11c2VyLXNlbGVjdDogbm9uZTtcblx0XHQtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG5cdFx0dXNlci1zZWxlY3Q6IG5vbmU7XG5cdH1cblxuXHQuaW5wdXRfX2xhYmVsLWNvbnRlbnQge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRwYWRkaW5nOiAxLjhlbSAwIDA7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdH1cblxuXHQvKiBJbmRpdmlkdWFsIHN0eWxlcyAqL1xuXG5cdC5pbnB1dF9fZmllbGQtLWhhcnVraSB7XG5cdFx0cGFkZGluZzogMC40ZW0gMC4yNWVtO1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuXHRcdGNvbG9yOiB2YXIoLS1ibGFjayk7XG5cdFx0Zm9udC1zaXplOiAxLjEyNWVtO1xuXHR9XG5cblx0LmlucHV0X19sYWJlbC0taGFydWtpIHtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0dGV4dC1hbGlnbjogbGVmdDtcblx0XHRwb2ludGVyLWV2ZW50czogbm9uZTtcblx0fVxuXG5cdC5pbnB1dF9fbGFiZWwtY29udGVudC0taGFydWtpIHtcblx0XHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcztcblx0fVxuXG5cdC5pbnB1dF9fbGFiZWwtLWhhcnVraTo6YmVmb3JlLFxuXHQuaW5wdXRfX2xhYmVsLS1oYXJ1a2k6OmFmdGVyIHtcblx0XHRjb250ZW50OiBcIlwiO1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRsZWZ0OiAwO1xuXHRcdHotaW5kZXg6IC0xO1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdGhlaWdodDogMnB4O1xuXHRcdGJhY2tncm91bmQ6IHZhcigtLWJsYWNrKTtcblx0XHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcztcblx0fVxuXG5cdC5pbnB1dF9fbGFiZWwtLWhhcnVraTo6YmVmb3JlIHtcblx0XHR0b3A6IDA7XG5cdH1cblxuXHQuaW5wdXRfX2xhYmVsLS1oYXJ1a2k6OmFmdGVyIHtcblx0XHRib3R0b206IDA7XG5cdH1cblxuXHQuaW5wdXRfX2ZpZWxkLS1oYXJ1a2k6Zm9jdXMgKyAuaW5wdXRfX2xhYmVsLS1oYXJ1a2kgLmlucHV0X19sYWJlbC1jb250ZW50LS1oYXJ1a2ksXG5cdC5pbnB1dC0tZmlsbGVkICsgLmlucHV0X19sYWJlbC0taG9zaGkge1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG5cdH1cblxuXHQuaW5wdXQtLWhvc2hpIHtcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHR9XG5cblx0LmlucHV0X19maWVsZC0taG9zaGkge1xuXHRcdG1hcmdpbi10b3A6IDFlbTtcblx0XHRwYWRkaW5nOiAxLjM1ZW0gMDtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblx0XHRjb2xvcjogdmFyKC0tYmxhY2spO1xuXHR9XG5cblx0LmlucHV0X19sYWJlbC0taG9zaGkge1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRib3R0b206IDA7XG5cdFx0bGVmdDogMDtcblx0XHRwYWRkaW5nOiAwO1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdGhlaWdodDogMTAwJTtcblx0XHR0ZXh0LWFsaWduOiBsZWZ0O1xuXHRcdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXHR9XG5cblx0LmlucHV0X19sYWJlbC1jb250ZW50LS1ob3NoaSB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdGNvbG9yOiB2YXIoLS1tZWRpdW1ncmV5KTtcblx0fVxuXG5cdC5pbnB1dF9fbGFiZWwtLWhvc2hpOjpiZWZvcmUsXG5cdC5pbnB1dF9fbGFiZWwtLWhvc2hpOjphZnRlciB7XG5cdFx0Y29udGVudDogXCJcIjtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOiAwO1xuXHRcdGxlZnQ6IDA7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0aGVpZ2h0OiBjYWxjKDEwMCUgLSAxMHB4KTtcblx0XHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tbWVkaXVtZ3JleSk7XG5cdH1cblxuXHQuaW5wdXRfX2xhYmVsLS1ob3NoaTo6YWZ0ZXIge1xuXHRcdG1hcmdpbi10b3A6IDFweDtcblx0XHRib3JkZXItYm90dG9tOiAycHggc29saWQgdmFyKC0tcmVkKTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcblx0XHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcztcblx0fVxuXG5cdC5pbnB1dF9fbGFiZWwtLWhvc2hpLWNvbG9yLTE6OmFmdGVyIHtcblx0XHRib3JkZXItY29sb3I6IHZhcigtLXJlZCk7XG5cdH1cblxuXHQuaW5wdXRfX2xhYmVsLS1ob3NoaS1jb2xvci0yOjphZnRlciB7XG5cdFx0Ym9yZGVyLWNvbG9yOiB2YXIoLS15ZWxsb3cpO1xuXHR9XG5cblx0LmlucHV0X19sYWJlbC0taG9zaGktY29sb3ItMzo6YWZ0ZXIge1xuXHRcdGJvcmRlci1jb2xvcjogdmFyKC0tYmx1ZSk7XG5cdH1cblxuXHQuaW5wdXRfX2ZpZWxkLS1ob3NoaTpmb2N1cyArIC5pbnB1dF9fbGFiZWwtLWhvc2hpOjphZnRlcixcblx0LmlucHV0LS1maWxsZWQgLmlucHV0X19sYWJlbC0taG9zaGk6OmFmdGVyIHtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuXHR9XG5cdC5pbnB1dC0tZmlsbGVkIC5pbnB1dF9fbGFiZWwtLWhvc2hpIHtcblx0XHQuaW5wdXRfX2xhYmVsLWNvbnRlbnQtLWhvc2hpIHtcblx0XHRcdGFuaW1hdGlvbjogYW5pbS0xIDAuM3MgZm9yd2FyZHM7XG5cdFx0XHR0cmFuc2l0aW9uOiBvcGFjaXR5IGVhc2UgNTAwbXM7XG5cdFx0fVxuXHR9XG5cblx0c3Bhbi5pbnB1dC5pbnB1dC0taG9zaGkuaW5wdXQtLWZpbGxlZCAuaW5wdXRfX2xhYmVsLS1ob3NoaSBzcGFuIHtcblx0XHRvcGFjaXR5OiAwLjE1ICFpbXBvcnRhbnQ7XG5cdFx0YW5pbWF0aW9uOiBub25lO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTQwJSwgMCk7XG5cdH1cblxuXHQuaW5wdXRfX2ZpZWxkLS1ob3NoaTpmb2N1cyArIC5pbnB1dF9fbGFiZWwtLWhvc2hpIC5pbnB1dF9fbGFiZWwtY29udGVudC0taG9zaGkge1xuXHRcdGFuaW1hdGlvbjogYW5pbS0xIDAuM3MgZm9yd2FyZHM7XG5cdH1cblxuXHRALXdlYmtpdC1rZXlmcmFtZXMgYW5pbS0xIHtcblx0XHQ1MCUge1xuXHRcdFx0b3BhY2l0eTogMDtcblx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMWVtLCAwLCAwKTtcblx0XHR9XG5cdFx0NTElIHtcblx0XHRcdG9wYWNpdHk6IDA7XG5cdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xZW0sIC00MCUsIDApO1xuXHRcdH1cblx0XHQxMDAlIHtcblx0XHRcdG9wYWNpdHk6IDE7XG5cdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC00MCUsIDApO1xuXHRcdH1cblx0fVxuXG5cdEBrZXlmcmFtZXMgYW5pbS0xIHtcblx0XHQ1MCUge1xuXHRcdFx0b3BhY2l0eTogMDtcblx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMWVtLCAwLCAwKTtcblx0XHR9XG5cdFx0NTElIHtcblx0XHRcdG9wYWNpdHk6IDA7XG5cdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xZW0sIC00MCUsIDApO1xuXHRcdH1cblx0XHQxMDAlIHtcblx0XHRcdG9wYWNpdHk6IDE7XG5cdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC00MCUsIDApO1xuXHRcdH1cblx0fVxufVxuXG4uYmxvY2stZm9ybSB7XG5cdGZpZWxkc2V0IHtcblx0XHRib3JkZXI6IG5vbmU7XG5cdFx0cGFkZGluZzogMDtcblx0XHRtYXJnaW46IDA7XG5cdFx0LmZybV9maWVsZHNfY29udGFpbmVyIHtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGdhcDogMC45ZW07XG5cdFx0XHRAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bS1icmVha3BvaW50KSB7XG5cdFx0XHRcdGdhcDogMS44ZW07XG5cdFx0XHR9XG5cdFx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdFx0LmZybV9kZXNjcmlwdGlvbiB7XG5cdFx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0XHR9XG5cdFx0XHQuZnJtX3ZlcmlmeSB7XG5cdFx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0XHR9XG5cdFx0XHRAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bS1icmVha3BvaW50KSB7XG5cdFx0XHRcdGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cdFx0XHRcdGZsZXgtd3JhcDogd3JhcDtcblx0XHRcdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHRcdFx0fVxuXG5cdFx0XHQ+IC5mcm1fZm9ybV9maWVsZCB7XG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRtYXJnaW46IDAuOWVtIDA7XG5cdFx0XHRcdEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtLWJyZWFrcG9pbnQpIHtcblx0XHRcdFx0XHRtYXJnaW46IDA7XG5cdFx0XHRcdFx0d2lkdGg6IGF1dG87XG5cdFx0XHRcdFx0bWluLXdpZHRoOiAzMCU7XG5cdFx0XHRcdFx0ZmxleC1ncm93OiAxO1xuXHRcdFx0XHRcdEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMzAwcHgpIHtcblx0XHRcdFx0XHRcdG1pbi13aWR0aDogMjAlO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0XHRsYWJlbCB7XG5cdFx0XHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdFx0fVxuXHRcdFx0XHRpbnB1dCB7XG5cdFx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdFx0Ym9yZGVyOiBub25lO1xuXHRcdFx0XHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1yZWQpO1xuXHRcdFx0XHRcdHBhZGRpbmc6IDAuNDVlbSAwO1xuXHRcdFx0XHR9XG5cdFx0XHRcdC8vICYucmVkIHtcblx0XHRcdFx0Ly8gXHQtLXJlZDogdmFyKC0tcmVkKTtcblx0XHRcdFx0Ly8gfVxuXHRcdFx0XHQmLnllbGxvdyB7XG5cdFx0XHRcdFx0LS1yZWQ6IHZhcigtLXllbGxvdyk7XG5cdFx0XHRcdH1cblx0XHRcdFx0Ji5ibHVlIHtcblx0XHRcdFx0XHQtLXJlZDogdmFyKC0tYmx1ZSk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdGZsZXgtd3JhcDogbm93cmFwO1xuXHRcdH1cblx0XHQuZnJtX25vbmVfY29udGFpbmVyIHtcblx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0fVxuXHRcdC5mcm1fc3VibWl0LFxuXHRcdCYuc3VibWl0IHtcblx0XHRcdGZsZXg6IDE7XG5cdFx0XHRtaW4td2lkdGg6IDEwMCU7XG5cdFx0XHRkaXNwbGF5OiBpbmxpbmUtZmxleDtcblx0XHRcdGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5cdFx0XHRwYWRkaW5nLXRvcDogMS44ZW07XG5cdFx0XHRwYWRkaW5nLWJvdHRvbTogMC45ZW07XG5cdFx0XHRAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bS1icmVha3BvaW50KSB7XG5cdFx0XHRcdHBhZGRpbmctdG9wOiA0LjVlbTtcblx0XHRcdFx0cGFkZGluZy1ib3R0b206IDEuOGVtO1xuXHRcdFx0fVxuXHRcdFx0Ly8gQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtZWRpdW0tYnJlYWtwb2ludCkge1xuXHRcdFx0Ly8gXHRtYXJnaW46MC40NXJlbSAwO1xuXHRcdFx0Ly8gfVxuXG5cdFx0XHQvLyBidXR0b24ge1xuXHRcdFx0Ly8gXHRwYWRkaW5nOiAwLjllbSAwLjQ1ZW07XG5cdFx0XHQvLyBcdGNvbG9yOiB2YXIoLS13aGl0ZSk7XG5cdFx0XHQvLyB9XG5cdFx0fVxuXG5cdFx0LmlucHV0IHtcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdHotaW5kZXg6IDE7XG5cdFx0XHRmbGV4OiAxO1xuXHRcdFx0bWluLXdpZHRoOiAxMGVtO1xuXHRcdH1cblxuXHRcdC5mcm1fc3VibWl0IGJ1dHRvbiB7XG5cdFx0XHR0cmFuc2l0aW9uOiBhbGwgNTAwbXMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG5cblx0XHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHRcdGJhY2tncm91bmQ6IHZhcigtLWhvdmVyc3RhdGUpO1xuXHRcdFx0aGVpZ2h0OiBhdXRvO1xuXHRcdFx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0taG92ZXJzdGF0ZSkgIWltcG9ydGFudDtcblx0XHRcdGJvcmRlci1yYWRpdXM6IDEuOHJlbTtcblx0XHRcdG1pbi13aWR0aDogMTVyZW07XG5cdFx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0dHJhbnNmb3JtOiBub25lO1xuXHRcdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdFx0XHRjb2xvcjogdmFyKC0td2hpdGUpO1xuXHRcdFx0bGluZS1oZWlnaHQ6IDE7XG5cdFx0XHRmb250LXNpemU6IHZhcigtLXNpemUpO1xuXHRcdFx0bWFyZ2luOiAwO1xuXHRcdFx0bGluZS1oZWlnaHQ6IDE7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdHBhZGRpbmc6IDFlbSAxLjhlbTtcblx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRjb2xvcjogdmFyKC0taG92ZXJzdGF0ZSk7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC5pbnB1dF9fZmllbGQge1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRmbG9hdDogcmlnaHQ7XG5cdFx0XHRwYWRkaW5nOiAwLjhlbTtcblx0XHRcdHdpZHRoOiA2MCU7XG5cdFx0XHRib3JkZXI6IG5vbmU7XG5cdFx0XHRib3JkZXItcmFkaXVzOiAwO1xuXHRcdFx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG5cdFx0XHRjb2xvcjogdmFyKC0tYmxhY2spO1xuXHRcdFx0LXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyAvKiBmb3IgYm94IHNoYWRvd3MgdG8gc2hvdyBvbiBpT1MgKi9cblx0XHR9XG5cblx0XHQuaW5wdXRfX2ZpZWxkOmZvY3VzIHtcblx0XHRcdG91dGxpbmU6IG5vbmU7XG5cdFx0fVxuXG5cdFx0LmlucHV0X19sYWJlbCB7XG5cdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRwYWRkaW5nOiAwIDFlbTtcblx0XHRcdHdpZHRoOiAzMCU7XG5cdFx0XHRjb2xvcjogdmFyKC0tYmxhY2spO1xuXHRcdFx0Zm9udC1zaXplOiAxLjEyNWVtO1xuXHRcdFx0LXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG5cdFx0XHQtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuXHRcdFx0LXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xuXHRcdFx0LXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcblx0XHRcdC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTtcblx0XHRcdC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG5cdFx0XHQtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG5cdFx0XHR1c2VyLXNlbGVjdDogbm9uZTtcblx0XHR9XG5cblx0XHQuaW5wdXRfX2xhYmVsLWNvbnRlbnQge1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRwYWRkaW5nOiAxLjhlbSAwIDA7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHR9XG5cblx0XHQvKiBJbmRpdmlkdWFsIHN0eWxlcyAqL1xuXG5cdFx0LmlucHV0X19maWVsZC0taGFydWtpIHtcblx0XHRcdHBhZGRpbmc6IDAuNGVtIDAuMjVlbTtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG5cdFx0XHRjb2xvcjogdmFyKC0tYmxhY2spO1xuXHRcdFx0Zm9udC1zaXplOiAxLjEyNWVtO1xuXHRcdH1cblxuXHRcdC5pbnB1dF9fbGFiZWwtLWhhcnVraSB7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdHRleHQtYWxpZ246IGxlZnQ7XG5cdFx0XHRwb2ludGVyLWV2ZW50czogbm9uZTtcblx0XHR9XG5cblx0XHQuaW5wdXRfX2xhYmVsLWNvbnRlbnQtLWhhcnVraSB7XG5cdFx0XHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcztcblx0XHR9XG5cblx0XHQuaW5wdXRfX2xhYmVsLS1oYXJ1a2k6OmJlZm9yZSxcblx0XHQuaW5wdXRfX2xhYmVsLS1oYXJ1a2k6OmFmdGVyIHtcblx0XHRcdGNvbnRlbnQ6IFwiXCI7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRsZWZ0OiAwO1xuXHRcdFx0ei1pbmRleDogLTE7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdGhlaWdodDogMnB4O1xuXHRcdFx0YmFja2dyb3VuZDogdmFyKC0tYmxhY2spO1xuXHRcdFx0dHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3M7XG5cdFx0fVxuXG5cdFx0LmlucHV0X19sYWJlbC0taGFydWtpOjpiZWZvcmUge1xuXHRcdFx0dG9wOiAwO1xuXHRcdH1cblxuXHRcdC5pbnB1dF9fbGFiZWwtLWhhcnVraTo6YWZ0ZXIge1xuXHRcdFx0Ym90dG9tOiAwO1xuXHRcdH1cblxuXHRcdC5pbnB1dF9fZmllbGQtLWhhcnVraTpmb2N1cyArIC5pbnB1dF9fbGFiZWwtLWhhcnVraSAuaW5wdXRfX2xhYmVsLWNvbnRlbnQtLWhhcnVraSxcblx0XHQuaW5wdXQtLWZpbGxlZCArIC5pbnB1dF9fbGFiZWwtLWhvc2hpIHtcblx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG5cdFx0fVxuXG5cdFx0LmlucHV0LS1ob3NoaSB7XG5cdFx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHRcdH1cblxuXHRcdC5pbnB1dF9fZmllbGQtLWhvc2hpIHtcblx0XHRcdG1hcmdpbi10b3A6IDFlbTtcblx0XHRcdHBhZGRpbmc6IDEuMzVlbSAwO1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblx0XHRcdGNvbG9yOiB2YXIoLS1ibGFjayk7XG5cdFx0fVxuXG5cdFx0LmlucHV0X19sYWJlbC0taG9zaGkge1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0Ym90dG9tOiAwO1xuXHRcdFx0bGVmdDogMDtcblx0XHRcdHBhZGRpbmc6IDA7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdHRleHQtYWxpZ246IGxlZnQ7XG5cdFx0XHRwb2ludGVyLWV2ZW50czogbm9uZTtcblx0XHR9XG5cblx0XHQuaW5wdXRfX2xhYmVsLWNvbnRlbnQtLWhvc2hpIHtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdGNvbG9yOiB2YXIoLS1tZWRpdW1ncmV5KTtcblx0XHR9XG5cblx0XHQuaW5wdXRfX2xhYmVsLS1ob3NoaTo6YmVmb3JlLFxuXHRcdC5pbnB1dF9fbGFiZWwtLWhvc2hpOjphZnRlciB7XG5cdFx0XHRjb250ZW50OiBcIlwiO1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0dG9wOiAwO1xuXHRcdFx0bGVmdDogMDtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0aGVpZ2h0OiBjYWxjKDEwMCUgLSAxMHB4KTtcblx0XHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1tZWRpdW1ncmV5KTtcblx0XHR9XG5cblx0XHQuaW5wdXRfX2xhYmVsLS1ob3NoaTo6YWZ0ZXIge1xuXHRcdFx0bWFyZ2luLXRvcDogMXB4O1xuXHRcdFx0Ym9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIHZhcigtLXJlZCk7XG5cdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcblx0XHRcdHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzO1xuXHRcdH1cblxuXHRcdC5pbnB1dF9fbGFiZWwtLWhvc2hpLWNvbG9yLTE6OmFmdGVyIHtcblx0XHRcdGJvcmRlci1jb2xvcjogdmFyKC0tcmVkKTtcblx0XHR9XG5cblx0XHQuaW5wdXRfX2xhYmVsLS1ob3NoaS1jb2xvci0yOjphZnRlciB7XG5cdFx0XHRib3JkZXItY29sb3I6IHZhcigtLXllbGxvdyk7XG5cdFx0fVxuXG5cdFx0LmlucHV0X19sYWJlbC0taG9zaGktY29sb3ItMzo6YWZ0ZXIge1xuXHRcdFx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1ibHVlKTtcblx0XHR9XG5cblx0XHQuaW5wdXRfX2ZpZWxkLS1ob3NoaTpmb2N1cyArIC5pbnB1dF9fbGFiZWwtLWhvc2hpOjphZnRlcixcblx0XHQuaW5wdXQtLWZpbGxlZCAuaW5wdXRfX2xhYmVsLS1ob3NoaTo6YWZ0ZXIge1xuXHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcblx0XHR9XG5cdFx0LmlucHV0LS1maWxsZWQgLmlucHV0X19sYWJlbC0taG9zaGkge1xuXHRcdFx0LmlucHV0X19sYWJlbC1jb250ZW50LS1ob3NoaSB7XG5cdFx0XHRcdGFuaW1hdGlvbjogYW5pbS0xIDAuM3MgZm9yd2FyZHM7XG5cdFx0XHRcdHRyYW5zaXRpb246IG9wYWNpdHkgZWFzZSA1MDBtcztcblx0XHRcdH1cblx0XHR9XG5cblx0XHRzcGFuLmlucHV0LmlucHV0LS1ob3NoaS5pbnB1dC0tZmlsbGVkIC5pbnB1dF9fbGFiZWwtLWhvc2hpIHNwYW4ge1xuXHRcdFx0b3BhY2l0eTogMC4xNSAhaW1wb3J0YW50O1xuXHRcdFx0YW5pbWF0aW9uOiBub25lO1xuXHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtNDAlLCAwKTtcblx0XHR9XG5cblx0XHQuaW5wdXRfX2ZpZWxkLS1ob3NoaTpmb2N1cyArIC5pbnB1dF9fbGFiZWwtLWhvc2hpIC5pbnB1dF9fbGFiZWwtY29udGVudC0taG9zaGkge1xuXHRcdFx0YW5pbWF0aW9uOiBhbmltLTEgMC4zcyBmb3J3YXJkcztcblx0XHR9XG5cblx0XHRALXdlYmtpdC1rZXlmcmFtZXMgYW5pbS0xIHtcblx0XHRcdDUwJSB7XG5cdFx0XHRcdG9wYWNpdHk6IDA7XG5cdFx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMWVtLCAwLCAwKTtcblx0XHRcdH1cblx0XHRcdDUxJSB7XG5cdFx0XHRcdG9wYWNpdHk6IDA7XG5cdFx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTFlbSwgLTQwJSwgMCk7XG5cdFx0XHR9XG5cdFx0XHQxMDAlIHtcblx0XHRcdFx0b3BhY2l0eTogMTtcblx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtNDAlLCAwKTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHRAa2V5ZnJhbWVzIGFuaW0tMSB7XG5cdFx0XHQ1MCUge1xuXHRcdFx0XHRvcGFjaXR5OiAwO1xuXHRcdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDFlbSwgMCwgMCk7XG5cdFx0XHR9XG5cdFx0XHQ1MSUge1xuXHRcdFx0XHRvcGFjaXR5OiAwO1xuXHRcdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xZW0sIC00MCUsIDApO1xuXHRcdFx0fVxuXHRcdFx0MTAwJSB7XG5cdFx0XHRcdG9wYWNpdHk6IDE7XG5cdFx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTQwJSwgMCk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi5mcm1fbWVzc2FnZSB7XG5cdEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtLWJyZWFrcG9pbnQpIHtcblx0XHR3aWR0aDogNTAlO1xuXHRcdG1hcmdpbi1sZWZ0OiA1MCU7XG5cdFx0cGFkZGluZzogMS44ZW07XG5cdH1cbn1cbiJdfQ== */