@font-face{font-family:"cocplayfulminds";src:url("/css/fonts/cocplayfulminds.eot");src:url("/css/fonts/cocplayfulminds.eot?#iefix") format("embedded-opentype"),url("/css/fonts/cocplayfulminds.woff") format("woff"),url("/css/fonts/cocplayfulminds.ttf") format("truetype"),url("/css/fonts/cocplayfulminds.svg#cocplayfulminds") format("svg");font-weight:normal;font-style:normal}[data-icon]:before{font-family:"cocplayfulminds" !important;content:attr(data-icon);font-style:normal !important;font-weight:normal !important;font-variant:normal !important;text-transform:none !important;speak:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}[class^="icon-"]:before,[class*=" icon-"]:before{font-family:"cocplayfulminds" !important;font-style:normal !important;font-weight:normal !important;font-variant:normal !important;text-transform:none !important;speak:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.icon-arrow:before{content:"\61"}.icon-angle-right:before{content:"\62"}.icon-facebook-official:before{content:"\63"}.icon-instagram:before{content:"\64"}.icon-linkedin-square:before{content:"\65"}.icon-facebook-circled:before{content:"\66"}.icon-instagram-circle:before{content:"\67"}.icon-linkedin-circled:before{content:"\68"}.icon_heart_alt:before{content:"\e030"}.icon_heart:before{content:"\e089"}/*! 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:0.67em 0}hr{-webkit-box-sizing:content-box;box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace, monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;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:0.35em 0.75em 0.625em}legend{-webkit-box-sizing:border-box;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"]{-webkit-box-sizing:border-box;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}.foundation-mq{font-family:"small=0em&medium=46.0625em&large=48.0625em&xlarge=64.0625em&xxlarge=87.5em&huge=118.75em"}html{-webkit-box-sizing:border-box;box-sizing:border-box;font-size:18px}*,*::before,*::after{-webkit-box-sizing:inherit;box-sizing:inherit}body{margin:0;padding:0;background:#fff;font-family:"Helvetica Neue",Helvetica,Roboto,Arial,sans-serif;font-weight:normal;line-height:1.5;color:#000;-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{-webkit-box-sizing:border-box;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;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;border-radius:0;background:transparent;line-height:1;cursor:auto}[data-whatinput='mouse'] button{outline:0}pre{overflow:auto}button,input,optgroup,select,textarea{font-family:inherit}.is-visible{display:block !important}.is-hidden{display:none !important}[type='text'],[type='password'],[type='date'],[type='datetime'],[type='datetime-local'],[type='month'],[type='week'],[type='email'],[type='number'],[type='search'],[type='tel'],[type='time'],[type='url'],[type='color'],textarea{display:block;-webkit-box-sizing:border-box;box-sizing:border-box;width:100%;height:2.16667rem;margin:0 0 .88889rem;padding:.44444rem;border:1px solid #cacaca;border-radius:0;background-color:#fff;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);font-family:inherit;font-size:.88889rem;font-weight:normal;line-height:1.5;color:#000;-webkit-transition:border-color 0.25s ease-in-out,-webkit-box-shadow 0.5s;transition:border-color 0.25s ease-in-out,-webkit-box-shadow 0.5s;transition:box-shadow 0.5s,border-color 0.25s ease-in-out;transition:box-shadow 0.5s,border-color 0.25s ease-in-out,-webkit-box-shadow 0.5s;-webkit-appearance:none;-moz-appearance:none;appearance:none}[type='text']:focus,[type='password']:focus,[type='date']:focus,[type='datetime']:focus,[type='datetime-local']:focus,[type='month']:focus,[type='week']:focus,[type='email']:focus,[type='number']:focus,[type='search']:focus,[type='tel']:focus,[type='time']:focus,[type='url']:focus,[type='color']:focus,textarea:focus{outline:none;border:1px solid #8a8a8a;background-color:#fff;-webkit-box-shadow:0 0 5px #cacaca;box-shadow:0 0 5px #cacaca;-webkit-transition:border-color 0.25s ease-in-out,-webkit-box-shadow 0.5s;transition:border-color 0.25s ease-in-out,-webkit-box-shadow 0.5s;transition:box-shadow 0.5s,border-color 0.25s ease-in-out;transition:box-shadow 0.5s,border-color 0.25s ease-in-out,-webkit-box-shadow 0.5s}textarea{max-width:100%}textarea[rows]{height:auto}input:disabled,input[readonly],textarea:disabled,textarea[readonly]{background-color:#f1f3f3;cursor:not-allowed}[type='submit'],[type='button']{-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:0}input[type='search']{-webkit-box-sizing:border-box;box-sizing:border-box}::-webkit-input-placeholder{color:#cacaca}::-moz-placeholder{color:#cacaca}::-ms-input-placeholder{color:#cacaca}::placeholder{color:#cacaca}[type='file'],[type='checkbox'],[type='radio']{margin:0 0 .88889rem}[type='checkbox']+label,[type='radio']+label{display:inline-block;vertical-align:baseline;margin-left:.44444rem;margin-right:.88889rem;margin-bottom:0}[type='checkbox']+label[for],[type='radio']+label[for]{cursor:pointer}label>[type='checkbox'],label>[type='radio']{margin-right:.44444rem}[type='file']{width:100%}label{display:block;margin:0;font-size:.77778rem;font-weight:normal;line-height:1.8;color:#000}label.middle{margin:0 0 .88889rem;padding:.5rem 0}.help-text{margin-top:-.44444rem;font-size:.72222rem;font-style:italic;color:#000}.input-group{display:-webkit-box;display:-ms-flexbox;display:flex;width:100%;margin-bottom:.88889rem;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch}.input-group>:first-child,.input-group>:first-child.input-group-button>*{border-radius:0 0 0 0}.input-group>:last-child,.input-group>:last-child.input-group-button>*{border-radius:0 0 0 0}.input-group-label,.input-group-field,.input-group-button,.input-group-button a,.input-group-button input,.input-group-button button,.input-group-button label{margin:0;white-space:nowrap}.input-group-label{padding:0 1rem;border:1px solid #cacaca;background:#f1f3f3;color:#000;text-align:center;white-space:nowrap;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.input-group-label:first-child{border-right:0}.input-group-label:last-child{border-left:0}.input-group-field{border-radius:0;-webkit-box-flex:1;-ms-flex:1 1 0px;flex:1 1 0px;min-width:0}.input-group-button{padding-top:0;padding-bottom:0;text-align:center;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.input-group-button a,.input-group-button input,.input-group-button button,.input-group-button label{-ms-flex-item-align:stretch;align-self:stretch;height:auto;padding-top:0;padding-bottom:0;font-size:.88889rem}fieldset{margin:0;padding:0;border:0}legend{max-width:100%;margin-bottom:.44444rem}.fieldset{margin:1rem 0;padding:1.11111rem;border:1px solid #cacaca}.fieldset legend{margin:0;margin-left:-.16667rem;padding:0 .16667rem}select{height:2.16667rem;margin:0 0 .88889rem;padding:.44444rem;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid #cacaca;border-radius:0;background-color:#fff;font-family:inherit;font-size:.88889rem;font-weight:normal;line-height:1.5;color:#000;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' version='1.1' width='32' height='24' viewBox='0 0 32 24'><polygon points='0,0 32,0 16,24' style='fill: rgb%28138, 138, 138%29'></polygon></svg>");background-origin:content-box;background-position:right -.88889rem center;background-repeat:no-repeat;background-size:9px 6px;padding-right:1.33333rem;-webkit-transition:border-color 0.25s ease-in-out,-webkit-box-shadow 0.5s;transition:border-color 0.25s ease-in-out,-webkit-box-shadow 0.5s;transition:box-shadow 0.5s,border-color 0.25s ease-in-out;transition:box-shadow 0.5s,border-color 0.25s ease-in-out,-webkit-box-shadow 0.5s}@media screen and (min-width: 0\0){select{background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAYCAYAAACbU/80AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAIpJREFUeNrEkckNgDAMBBfRkEt0ObRBBdsGXUDgmQfK4XhH2m8czQAAy27R3tsw4Qfe2x8uOO6oYLb6GlOor3GF+swURAOmUJ+RwtEJs9WvTGEYxBXqI1MQAZhCfUQKRzDMVj+TwrAIV6jvSUEkYAr1LSkcyTBb/V+KYfX7xAeusq3sLDtGH3kEGACPWIflNZfhRQAAAABJRU5ErkJggg==")}}select:focus{outline:none;border:1px solid #8a8a8a;background-color:#fff;-webkit-box-shadow:0 0 5px #cacaca;box-shadow:0 0 5px #cacaca;-webkit-transition:border-color 0.25s ease-in-out,-webkit-box-shadow 0.5s;transition:border-color 0.25s ease-in-out,-webkit-box-shadow 0.5s;transition:box-shadow 0.5s,border-color 0.25s ease-in-out;transition:box-shadow 0.5s,border-color 0.25s ease-in-out,-webkit-box-shadow 0.5s}select:disabled{background-color:#f1f3f3;cursor:not-allowed}select::-ms-expand{display:none}select[multiple]{height:auto;background-image:none}.is-invalid-input:not(:focus){border-color:#cc4b37;background-color:#faedeb}.is-invalid-input:not(:focus)::-webkit-input-placeholder{color:#cc4b37}.is-invalid-input:not(:focus)::-moz-placeholder{color:#cc4b37}.is-invalid-input:not(:focus)::-ms-input-placeholder{color:#cc4b37}.is-invalid-input:not(:focus)::placeholder{color:#cc4b37}.is-invalid-label{color:#cc4b37}.form-error{display:none;margin-top:-.44444rem;margin-bottom:.88889rem;font-size:.66667rem;font-weight:bold;color:#cc4b37}.form-error.is-visible{display:block}div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,p,blockquote,th,td{margin:0;padding:0}p{margin-bottom:1rem;font-size:inherit;line-height:1.6;text-rendering:optimizeLegibility}em,i{font-style:italic;line-height:inherit}strong,b{font-weight:bold;line-height:inherit}small{font-size:80%;line-height:inherit}h1,.h1,h2,.h2,h3,.h3,h4,.h4,h5,.h5,h6,.h6{font-family:"Helvetica Neue",Helvetica,Roboto,Arial,sans-serif;font-style:normal;font-weight:bold;color:inherit;text-rendering:optimizeLegibility}h1 small,.h1 small,h2 small,.h2 small,h3 small,.h3 small,h4 small,.h4 small,h5 small,.h5 small,h6 small,.h6 small{line-height:0;color:#cacaca}h1,.h1{font-size:1.33333rem;line-height:1.2;margin-top:0;margin-bottom:.5rem}h2,.h2{font-size:1.11111rem;line-height:1.2;margin-top:0;margin-bottom:.5rem}h3,.h3{font-size:1.05556rem;line-height:1.2;margin-top:0;margin-bottom:.5rem}h4,.h4{font-size:1rem;line-height:1.2;margin-top:0;margin-bottom:.5rem}h5,.h5{font-size:.94444rem;line-height:1.2;margin-top:0;margin-bottom:.5rem}h6,.h6{font-size:.88889rem;line-height:1.2;margin-top:0;margin-bottom:.5rem}@media print, screen and (min-width: 46.0625em){h1,.h1{font-size:4.44444rem}h2,.h2{font-size:2.77778rem}h3,.h3{font-size:2.22222rem}h4,.h4{font-size:1.66667rem}h5,.h5{font-size:1.38889rem}h6,.h6{font-size:1.11111rem}}a{line-height:inherit;color:#2e8fff;text-decoration:none;cursor:pointer}a:hover,a:focus{color:#0478ff}a img{border:0}hr{clear:both;max-width:75.11111rem;height:0;margin:1.11111rem auto;border-top:0;border-right:0;border-bottom:1px solid #cacaca;border-left:0}ul,ol,dl{margin-bottom:1rem;list-style-position:outside;line-height:1.6}li{font-size:inherit}ul{margin-left:1.25rem;list-style-type:disc}ol{margin-left:1.25rem}ul ul,ol ul,ul ol,ol ol{margin-left:1.25rem;margin-bottom:0}dl{margin-bottom:1rem}dl dt{margin-bottom:.3rem;font-weight:bold}blockquote{margin:0 0 1rem;padding:.5rem 1.11111rem 0 1.05556rem;border-left:1px solid #cacaca}blockquote,blockquote p{line-height:1.6;color:#8a8a8a}cite{display:block;font-size:.72222rem;color:#8a8a8a}cite:before{content:"— "}abbr,abbr[title]{border-bottom:1px dotted #000;cursor:help;text-decoration:none}figure{margin:0}code{padding:.11111rem .27778rem .05556rem;border:1px solid #cacaca;background-color:#f1f3f3;font-family:Consolas,"Liberation Mono",Courier,monospace;font-weight:normal;color:#000}kbd{margin:0;padding:.11111rem .22222rem 0;background-color:#f1f3f3;font-family:Consolas,"Liberation Mono",Courier,monospace;color:#000}.subheader{margin-top:.2rem;margin-bottom:.5rem;font-weight:normal;line-height:1.4;color:#8a8a8a}.lead{font-size:22.5px;line-height:1.6}.stat{font-size:2.5rem;line-height:1}p+.stat{margin-top:-1rem}ul.no-bullet,ol.no-bullet{margin-left:0;list-style:none}.text-left{text-align:left}.text-right{text-align:right}.text-center{text-align:center}.text-justify{text-align:justify}@media print, screen and (min-width: 46.0625em){.medium-text-left{text-align:left}.medium-text-right{text-align:right}.medium-text-center{text-align:center}.medium-text-justify{text-align:justify}}@media print, screen and (min-width: 48.0625em){.large-text-left{text-align:left}.large-text-right{text-align:right}.large-text-center{text-align:center}.large-text-justify{text-align:justify}}@media screen and (min-width: 64.0625em){.xlarge-text-left{text-align:left}.xlarge-text-right{text-align:right}.xlarge-text-center{text-align:center}.xlarge-text-justify{text-align:justify}}@media screen and (min-width: 87.5em){.xxlarge-text-left{text-align:left}.xxlarge-text-right{text-align:right}.xxlarge-text-center{text-align:center}.xxlarge-text-justify{text-align:justify}}@media screen and (min-width: 118.75em){.huge-text-left{text-align:left}.huge-text-right{text-align:right}.huge-text-center{text-align:center}.huge-text-justify{text-align:justify}}.show-for-print{display:none !important}@media print{*{background:transparent !important;-webkit-box-shadow:none !important;box-shadow:none !important;color:black !important;text-shadow:none !important}.show-for-print{display:block !important}.hide-for-print{display:none !important}table.show-for-print{display:table !important}thead.show-for-print{display:table-header-group !important}tbody.show-for-print{display:table-row-group !important}tr.show-for-print{display:table-row !important}td.show-for-print{display:table-cell !important}th.show-for-print{display:table-cell !important}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}.ir a:after,a[href^='javascript:']:after,a[href^='#']:after{content:''}abbr[title]:after{content:" (" attr(title) ")"}pre,blockquote{border:1px solid #8a8a8a;page-break-inside:avoid}thead{display:table-header-group}tr,img{page-break-inside:avoid}img{max-width:100% !important}@page{margin:0.5cm}p,h2,h3{orphans:3;widows:3}h2,h3{page-break-after:avoid}.print-break-inside{page-break-inside:auto}}.grid-container{padding-right:.55556rem;padding-left:.55556rem;max-width:75.11111rem;margin:0 auto}@media print, screen and (min-width: 46.0625em){.grid-container{padding-right:.83333rem;padding-left:.83333rem}}.grid-container.fluid{padding-right:.55556rem;padding-left:.55556rem;max-width:100%;margin:0 auto}@media print, screen and (min-width: 46.0625em){.grid-container.fluid{padding-right:.83333rem;padding-left:.83333rem}}.grid-container.full{padding-right:0;padding-left:0;max-width:100%;margin:0 auto}.grid-x{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-flow:row wrap;flex-flow:row wrap}.cell{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;min-height:0px;min-width:0px;width:100%}.cell.auto{-webkit-box-flex:1;-ms-flex:1 1 0px;flex:1 1 0px}.cell.shrink{-webkit-box-flex:0;-ms-flex:0 0 auto;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{-ms-flex-preferred-size:auto;flex-basis:auto}@media print, screen and (min-width: 46.0625em){.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{-ms-flex-preferred-size:auto;flex-basis:auto}}@media print, screen and (min-width: 48.0625em){.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{-ms-flex-preferred-size:auto;flex-basis:auto}}@media screen and (min-width: 64.0625em){.grid-x>.xlarge-shrink,.grid-x>.xlarge-full,.grid-x>.xlarge-1,.grid-x>.xlarge-2,.grid-x>.xlarge-3,.grid-x>.xlarge-4,.grid-x>.xlarge-5,.grid-x>.xlarge-6,.grid-x>.xlarge-7,.grid-x>.xlarge-8,.grid-x>.xlarge-9,.grid-x>.xlarge-10,.grid-x>.xlarge-11,.grid-x>.xlarge-12{-ms-flex-preferred-size:auto;flex-basis:auto}}@media screen and (min-width: 87.5em){.grid-x>.xxlarge-shrink,.grid-x>.xxlarge-full,.grid-x>.xxlarge-1,.grid-x>.xxlarge-2,.grid-x>.xxlarge-3,.grid-x>.xxlarge-4,.grid-x>.xxlarge-5,.grid-x>.xxlarge-6,.grid-x>.xxlarge-7,.grid-x>.xxlarge-8,.grid-x>.xxlarge-9,.grid-x>.xxlarge-10,.grid-x>.xxlarge-11,.grid-x>.xxlarge-12{-ms-flex-preferred-size:auto;flex-basis:auto}}@media screen and (min-width: 118.75em){.grid-x>.huge-shrink,.grid-x>.huge-full,.grid-x>.huge-1,.grid-x>.huge-2,.grid-x>.huge-3,.grid-x>.huge-4,.grid-x>.huge-5,.grid-x>.huge-6,.grid-x>.huge-7,.grid-x>.huge-8,.grid-x>.huge-9,.grid-x>.huge-10,.grid-x>.huge-11,.grid-x>.huge-12{-ms-flex-preferred-size:auto;flex-basis:auto}}.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{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.grid-x>.small-1{width:8.33333%}.grid-x>.small-2{width:16.66667%}.grid-x>.small-3{width:25%}.grid-x>.small-4{width:33.33333%}.grid-x>.small-5{width:41.66667%}.grid-x>.small-6{width:50%}.grid-x>.small-7{width:58.33333%}.grid-x>.small-8{width:66.66667%}.grid-x>.small-9{width:75%}.grid-x>.small-10{width:83.33333%}.grid-x>.small-11{width:91.66667%}.grid-x>.small-12{width:100%}@media print, screen and (min-width: 46.0625em){.grid-x>.medium-auto{-webkit-box-flex:1;-ms-flex:1 1 0px;flex:1 1 0px;width:auto}.grid-x>.medium-shrink,.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{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.grid-x>.medium-shrink{width:auto}.grid-x>.medium-1{width:8.33333%}.grid-x>.medium-2{width:16.66667%}.grid-x>.medium-3{width:25%}.grid-x>.medium-4{width:33.33333%}.grid-x>.medium-5{width:41.66667%}.grid-x>.medium-6{width:50%}.grid-x>.medium-7{width:58.33333%}.grid-x>.medium-8{width:66.66667%}.grid-x>.medium-9{width:75%}.grid-x>.medium-10{width:83.33333%}.grid-x>.medium-11{width:91.66667%}.grid-x>.medium-12{width:100%}}@media print, screen and (min-width: 48.0625em){.grid-x>.large-auto{-webkit-box-flex:1;-ms-flex:1 1 0px;flex:1 1 0px;width:auto}.grid-x>.large-shrink,.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{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.grid-x>.large-shrink{width:auto}.grid-x>.large-1{width:8.33333%}.grid-x>.large-2{width:16.66667%}.grid-x>.large-3{width:25%}.grid-x>.large-4{width:33.33333%}.grid-x>.large-5{width:41.66667%}.grid-x>.large-6{width:50%}.grid-x>.large-7{width:58.33333%}.grid-x>.large-8{width:66.66667%}.grid-x>.large-9{width:75%}.grid-x>.large-10{width:83.33333%}.grid-x>.large-11{width:91.66667%}.grid-x>.large-12{width:100%}}@media screen and (min-width: 64.0625em){.grid-x>.xlarge-auto{-webkit-box-flex:1;-ms-flex:1 1 0px;flex:1 1 0px;width:auto}.grid-x>.xlarge-shrink,.grid-x>.xlarge-1,.grid-x>.xlarge-2,.grid-x>.xlarge-3,.grid-x>.xlarge-4,.grid-x>.xlarge-5,.grid-x>.xlarge-6,.grid-x>.xlarge-7,.grid-x>.xlarge-8,.grid-x>.xlarge-9,.grid-x>.xlarge-10,.grid-x>.xlarge-11,.grid-x>.xlarge-12{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.grid-x>.xlarge-shrink{width:auto}.grid-x>.xlarge-1{width:8.33333%}.grid-x>.xlarge-2{width:16.66667%}.grid-x>.xlarge-3{width:25%}.grid-x>.xlarge-4{width:33.33333%}.grid-x>.xlarge-5{width:41.66667%}.grid-x>.xlarge-6{width:50%}.grid-x>.xlarge-7{width:58.33333%}.grid-x>.xlarge-8{width:66.66667%}.grid-x>.xlarge-9{width:75%}.grid-x>.xlarge-10{width:83.33333%}.grid-x>.xlarge-11{width:91.66667%}.grid-x>.xlarge-12{width:100%}}@media screen and (min-width: 87.5em){.grid-x>.xxlarge-auto{-webkit-box-flex:1;-ms-flex:1 1 0px;flex:1 1 0px;width:auto}.grid-x>.xxlarge-shrink,.grid-x>.xxlarge-1,.grid-x>.xxlarge-2,.grid-x>.xxlarge-3,.grid-x>.xxlarge-4,.grid-x>.xxlarge-5,.grid-x>.xxlarge-6,.grid-x>.xxlarge-7,.grid-x>.xxlarge-8,.grid-x>.xxlarge-9,.grid-x>.xxlarge-10,.grid-x>.xxlarge-11,.grid-x>.xxlarge-12{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.grid-x>.xxlarge-shrink{width:auto}.grid-x>.xxlarge-1{width:8.33333%}.grid-x>.xxlarge-2{width:16.66667%}.grid-x>.xxlarge-3{width:25%}.grid-x>.xxlarge-4{width:33.33333%}.grid-x>.xxlarge-5{width:41.66667%}.grid-x>.xxlarge-6{width:50%}.grid-x>.xxlarge-7{width:58.33333%}.grid-x>.xxlarge-8{width:66.66667%}.grid-x>.xxlarge-9{width:75%}.grid-x>.xxlarge-10{width:83.33333%}.grid-x>.xxlarge-11{width:91.66667%}.grid-x>.xxlarge-12{width:100%}}@media screen and (min-width: 118.75em){.grid-x>.huge-auto{-webkit-box-flex:1;-ms-flex:1 1 0px;flex:1 1 0px;width:auto}.grid-x>.huge-shrink,.grid-x>.huge-1,.grid-x>.huge-2,.grid-x>.huge-3,.grid-x>.huge-4,.grid-x>.huge-5,.grid-x>.huge-6,.grid-x>.huge-7,.grid-x>.huge-8,.grid-x>.huge-9,.grid-x>.huge-10,.grid-x>.huge-11,.grid-x>.huge-12{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.grid-x>.huge-shrink{width:auto}.grid-x>.huge-1{width:8.33333%}.grid-x>.huge-2{width:16.66667%}.grid-x>.huge-3{width:25%}.grid-x>.huge-4{width:33.33333%}.grid-x>.huge-5{width:41.66667%}.grid-x>.huge-6{width:50%}.grid-x>.huge-7{width:58.33333%}.grid-x>.huge-8{width:66.66667%}.grid-x>.huge-9{width:75%}.grid-x>.huge-10{width:83.33333%}.grid-x>.huge-11{width:91.66667%}.grid-x>.huge-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:-.55556rem;margin-right:-.55556rem}@media print, screen and (min-width: 46.0625em){.grid-margin-x{margin-left:-.83333rem;margin-right:-.83333rem}}.grid-margin-x>.cell{width:calc(100% - 1.11111rem);margin-left:.55556rem;margin-right:.55556rem}@media print, screen and (min-width: 46.0625em){.grid-margin-x>.cell{width:calc(100% - 1.66667rem);margin-left:.83333rem;margin-right:.83333rem}}.grid-margin-x>.auto{width:auto}.grid-margin-x>.shrink{width:auto}.grid-margin-x>.small-1{width:calc(8.33333% - 1.11111rem)}.grid-margin-x>.small-2{width:calc(16.66667% - 1.11111rem)}.grid-margin-x>.small-3{width:calc(25% - 1.11111rem)}.grid-margin-x>.small-4{width:calc(33.33333% - 1.11111rem)}.grid-margin-x>.small-5{width:calc(41.66667% - 1.11111rem)}.grid-margin-x>.small-6{width:calc(50% - 1.11111rem)}.grid-margin-x>.small-7{width:calc(58.33333% - 1.11111rem)}.grid-margin-x>.small-8{width:calc(66.66667% - 1.11111rem)}.grid-margin-x>.small-9{width:calc(75% - 1.11111rem)}.grid-margin-x>.small-10{width:calc(83.33333% - 1.11111rem)}.grid-margin-x>.small-11{width:calc(91.66667% - 1.11111rem)}.grid-margin-x>.small-12{width:calc(100% - 1.11111rem)}@media print, screen and (min-width: 46.0625em){.grid-margin-x>.auto{width:auto}.grid-margin-x>.shrink{width:auto}.grid-margin-x>.small-1{width:calc(8.33333% - 1.66667rem)}.grid-margin-x>.small-2{width:calc(16.66667% - 1.66667rem)}.grid-margin-x>.small-3{width:calc(25% - 1.66667rem)}.grid-margin-x>.small-4{width:calc(33.33333% - 1.66667rem)}.grid-margin-x>.small-5{width:calc(41.66667% - 1.66667rem)}.grid-margin-x>.small-6{width:calc(50% - 1.66667rem)}.grid-margin-x>.small-7{width:calc(58.33333% - 1.66667rem)}.grid-margin-x>.small-8{width:calc(66.66667% - 1.66667rem)}.grid-margin-x>.small-9{width:calc(75% - 1.66667rem)}.grid-margin-x>.small-10{width:calc(83.33333% - 1.66667rem)}.grid-margin-x>.small-11{width:calc(91.66667% - 1.66667rem)}.grid-margin-x>.small-12{width:calc(100% - 1.66667rem)}.grid-margin-x>.medium-auto{width:auto}.grid-margin-x>.medium-shrink{width:auto}.grid-margin-x>.medium-1{width:calc(8.33333% - 1.66667rem)}.grid-margin-x>.medium-2{width:calc(16.66667% - 1.66667rem)}.grid-margin-x>.medium-3{width:calc(25% - 1.66667rem)}.grid-margin-x>.medium-4{width:calc(33.33333% - 1.66667rem)}.grid-margin-x>.medium-5{width:calc(41.66667% - 1.66667rem)}.grid-margin-x>.medium-6{width:calc(50% - 1.66667rem)}.grid-margin-x>.medium-7{width:calc(58.33333% - 1.66667rem)}.grid-margin-x>.medium-8{width:calc(66.66667% - 1.66667rem)}.grid-margin-x>.medium-9{width:calc(75% - 1.66667rem)}.grid-margin-x>.medium-10{width:calc(83.33333% - 1.66667rem)}.grid-margin-x>.medium-11{width:calc(91.66667% - 1.66667rem)}.grid-margin-x>.medium-12{width:calc(100% - 1.66667rem)}}@media print, screen and (min-width: 48.0625em){.grid-margin-x>.large-auto{width:auto}.grid-margin-x>.large-shrink{width:auto}.grid-margin-x>.large-1{width:calc(8.33333% - 1.66667rem)}.grid-margin-x>.large-2{width:calc(16.66667% - 1.66667rem)}.grid-margin-x>.large-3{width:calc(25% - 1.66667rem)}.grid-margin-x>.large-4{width:calc(33.33333% - 1.66667rem)}.grid-margin-x>.large-5{width:calc(41.66667% - 1.66667rem)}.grid-margin-x>.large-6{width:calc(50% - 1.66667rem)}.grid-margin-x>.large-7{width:calc(58.33333% - 1.66667rem)}.grid-margin-x>.large-8{width:calc(66.66667% - 1.66667rem)}.grid-margin-x>.large-9{width:calc(75% - 1.66667rem)}.grid-margin-x>.large-10{width:calc(83.33333% - 1.66667rem)}.grid-margin-x>.large-11{width:calc(91.66667% - 1.66667rem)}.grid-margin-x>.large-12{width:calc(100% - 1.66667rem)}}@media screen and (min-width: 64.0625em){.grid-margin-x>.xlarge-auto{width:auto}.grid-margin-x>.xlarge-shrink{width:auto}.grid-margin-x>.xlarge-1{width:calc(8.33333% - 1.66667rem)}.grid-margin-x>.xlarge-2{width:calc(16.66667% - 1.66667rem)}.grid-margin-x>.xlarge-3{width:calc(25% - 1.66667rem)}.grid-margin-x>.xlarge-4{width:calc(33.33333% - 1.66667rem)}.grid-margin-x>.xlarge-5{width:calc(41.66667% - 1.66667rem)}.grid-margin-x>.xlarge-6{width:calc(50% - 1.66667rem)}.grid-margin-x>.xlarge-7{width:calc(58.33333% - 1.66667rem)}.grid-margin-x>.xlarge-8{width:calc(66.66667% - 1.66667rem)}.grid-margin-x>.xlarge-9{width:calc(75% - 1.66667rem)}.grid-margin-x>.xlarge-10{width:calc(83.33333% - 1.66667rem)}.grid-margin-x>.xlarge-11{width:calc(91.66667% - 1.66667rem)}.grid-margin-x>.xlarge-12{width:calc(100% - 1.66667rem)}}@media screen and (min-width: 87.5em){.grid-margin-x>.xxlarge-auto{width:auto}.grid-margin-x>.xxlarge-shrink{width:auto}.grid-margin-x>.xxlarge-1{width:calc(8.33333% - 1.66667rem)}.grid-margin-x>.xxlarge-2{width:calc(16.66667% - 1.66667rem)}.grid-margin-x>.xxlarge-3{width:calc(25% - 1.66667rem)}.grid-margin-x>.xxlarge-4{width:calc(33.33333% - 1.66667rem)}.grid-margin-x>.xxlarge-5{width:calc(41.66667% - 1.66667rem)}.grid-margin-x>.xxlarge-6{width:calc(50% - 1.66667rem)}.grid-margin-x>.xxlarge-7{width:calc(58.33333% - 1.66667rem)}.grid-margin-x>.xxlarge-8{width:calc(66.66667% - 1.66667rem)}.grid-margin-x>.xxlarge-9{width:calc(75% - 1.66667rem)}.grid-margin-x>.xxlarge-10{width:calc(83.33333% - 1.66667rem)}.grid-margin-x>.xxlarge-11{width:calc(91.66667% - 1.66667rem)}.grid-margin-x>.xxlarge-12{width:calc(100% - 1.66667rem)}}@media screen and (min-width: 118.75em){.grid-margin-x>.huge-auto{width:auto}.grid-margin-x>.huge-shrink{width:auto}.grid-margin-x>.huge-1{width:calc(8.33333% - 1.66667rem)}.grid-margin-x>.huge-2{width:calc(16.66667% - 1.66667rem)}.grid-margin-x>.huge-3{width:calc(25% - 1.66667rem)}.grid-margin-x>.huge-4{width:calc(33.33333% - 1.66667rem)}.grid-margin-x>.huge-5{width:calc(41.66667% - 1.66667rem)}.grid-margin-x>.huge-6{width:calc(50% - 1.66667rem)}.grid-margin-x>.huge-7{width:calc(58.33333% - 1.66667rem)}.grid-margin-x>.huge-8{width:calc(66.66667% - 1.66667rem)}.grid-margin-x>.huge-9{width:calc(75% - 1.66667rem)}.grid-margin-x>.huge-10{width:calc(83.33333% - 1.66667rem)}.grid-margin-x>.huge-11{width:calc(91.66667% - 1.66667rem)}.grid-margin-x>.huge-12{width:calc(100% - 1.66667rem)}}.grid-padding-x .grid-padding-x{margin-right:-.55556rem;margin-left:-.55556rem}@media print, screen and (min-width: 46.0625em){.grid-padding-x .grid-padding-x{margin-right:-.83333rem;margin-left:-.83333rem}}.grid-container:not(.full)>.grid-padding-x{margin-right:-.55556rem;margin-left:-.55556rem}@media print, screen and (min-width: 46.0625em){.grid-container:not(.full)>.grid-padding-x{margin-right:-.83333rem;margin-left:-.83333rem}}.grid-padding-x>.cell{padding-right:.55556rem;padding-left:.55556rem}@media print, screen and (min-width: 46.0625em){.grid-padding-x>.cell{padding-right:.83333rem;padding-left:.83333rem}}.small-up-1>.cell{width:100%}.small-up-2>.cell{width:50%}.small-up-3>.cell{width:33.33333%}.small-up-4>.cell{width:25%}.small-up-5>.cell{width:20%}.small-up-6>.cell{width:16.66667%}.small-up-7>.cell{width:14.28571%}.small-up-8>.cell{width:12.5%}@media print, screen and (min-width: 46.0625em){.medium-up-1>.cell{width:100%}.medium-up-2>.cell{width:50%}.medium-up-3>.cell{width:33.33333%}.medium-up-4>.cell{width:25%}.medium-up-5>.cell{width:20%}.medium-up-6>.cell{width:16.66667%}.medium-up-7>.cell{width:14.28571%}.medium-up-8>.cell{width:12.5%}}@media print, screen and (min-width: 48.0625em){.large-up-1>.cell{width:100%}.large-up-2>.cell{width:50%}.large-up-3>.cell{width:33.33333%}.large-up-4>.cell{width:25%}.large-up-5>.cell{width:20%}.large-up-6>.cell{width:16.66667%}.large-up-7>.cell{width:14.28571%}.large-up-8>.cell{width:12.5%}}@media screen and (min-width: 64.0625em){.xlarge-up-1>.cell{width:100%}.xlarge-up-2>.cell{width:50%}.xlarge-up-3>.cell{width:33.33333%}.xlarge-up-4>.cell{width:25%}.xlarge-up-5>.cell{width:20%}.xlarge-up-6>.cell{width:16.66667%}.xlarge-up-7>.cell{width:14.28571%}.xlarge-up-8>.cell{width:12.5%}}@media screen and (min-width: 87.5em){.xxlarge-up-1>.cell{width:100%}.xxlarge-up-2>.cell{width:50%}.xxlarge-up-3>.cell{width:33.33333%}.xxlarge-up-4>.cell{width:25%}.xxlarge-up-5>.cell{width:20%}.xxlarge-up-6>.cell{width:16.66667%}.xxlarge-up-7>.cell{width:14.28571%}.xxlarge-up-8>.cell{width:12.5%}}@media screen and (min-width: 118.75em){.huge-up-1>.cell{width:100%}.huge-up-2>.cell{width:50%}.huge-up-3>.cell{width:33.33333%}.huge-up-4>.cell{width:25%}.huge-up-5>.cell{width:20%}.huge-up-6>.cell{width:16.66667%}.huge-up-7>.cell{width:14.28571%}.huge-up-8>.cell{width:12.5%}}.grid-margin-x.small-up-1>.cell{width:calc(100% - 1.11111rem)}.grid-margin-x.small-up-2>.cell{width:calc(50% - 1.11111rem)}.grid-margin-x.small-up-3>.cell{width:calc(33.33333% - 1.11111rem)}.grid-margin-x.small-up-4>.cell{width:calc(25% - 1.11111rem)}.grid-margin-x.small-up-5>.cell{width:calc(20% - 1.11111rem)}.grid-margin-x.small-up-6>.cell{width:calc(16.66667% - 1.11111rem)}.grid-margin-x.small-up-7>.cell{width:calc(14.28571% - 1.11111rem)}.grid-margin-x.small-up-8>.cell{width:calc(12.5% - 1.11111rem)}@media print, screen and (min-width: 46.0625em){.grid-margin-x.small-up-1>.cell{width:calc(100% - 1.66667rem)}.grid-margin-x.small-up-2>.cell{width:calc(50% - 1.66667rem)}.grid-margin-x.small-up-3>.cell{width:calc(33.33333% - 1.66667rem)}.grid-margin-x.small-up-4>.cell{width:calc(25% - 1.66667rem)}.grid-margin-x.small-up-5>.cell{width:calc(20% - 1.66667rem)}.grid-margin-x.small-up-6>.cell{width:calc(16.66667% - 1.66667rem)}.grid-margin-x.small-up-7>.cell{width:calc(14.28571% - 1.66667rem)}.grid-margin-x.small-up-8>.cell{width:calc(12.5% - 1.66667rem)}.grid-margin-x.medium-up-1>.cell{width:calc(100% - 1.66667rem)}.grid-margin-x.medium-up-2>.cell{width:calc(50% - 1.66667rem)}.grid-margin-x.medium-up-3>.cell{width:calc(33.33333% - 1.66667rem)}.grid-margin-x.medium-up-4>.cell{width:calc(25% - 1.66667rem)}.grid-margin-x.medium-up-5>.cell{width:calc(20% - 1.66667rem)}.grid-margin-x.medium-up-6>.cell{width:calc(16.66667% - 1.66667rem)}.grid-margin-x.medium-up-7>.cell{width:calc(14.28571% - 1.66667rem)}.grid-margin-x.medium-up-8>.cell{width:calc(12.5% - 1.66667rem)}}@media print, screen and (min-width: 48.0625em){.grid-margin-x.large-up-1>.cell{width:calc(100% - 1.66667rem)}.grid-margin-x.large-up-2>.cell{width:calc(50% - 1.66667rem)}.grid-margin-x.large-up-3>.cell{width:calc(33.33333% - 1.66667rem)}.grid-margin-x.large-up-4>.cell{width:calc(25% - 1.66667rem)}.grid-margin-x.large-up-5>.cell{width:calc(20% - 1.66667rem)}.grid-margin-x.large-up-6>.cell{width:calc(16.66667% - 1.66667rem)}.grid-margin-x.large-up-7>.cell{width:calc(14.28571% - 1.66667rem)}.grid-margin-x.large-up-8>.cell{width:calc(12.5% - 1.66667rem)}}@media screen and (min-width: 64.0625em){.grid-margin-x.xlarge-up-1>.cell{width:calc(100% - 1.66667rem)}.grid-margin-x.xlarge-up-2>.cell{width:calc(50% - 1.66667rem)}.grid-margin-x.xlarge-up-3>.cell{width:calc(33.33333% - 1.66667rem)}.grid-margin-x.xlarge-up-4>.cell{width:calc(25% - 1.66667rem)}.grid-margin-x.xlarge-up-5>.cell{width:calc(20% - 1.66667rem)}.grid-margin-x.xlarge-up-6>.cell{width:calc(16.66667% - 1.66667rem)}.grid-margin-x.xlarge-up-7>.cell{width:calc(14.28571% - 1.66667rem)}.grid-margin-x.xlarge-up-8>.cell{width:calc(12.5% - 1.66667rem)}}@media screen and (min-width: 87.5em){.grid-margin-x.xxlarge-up-1>.cell{width:calc(100% - 1.66667rem)}.grid-margin-x.xxlarge-up-2>.cell{width:calc(50% - 1.66667rem)}.grid-margin-x.xxlarge-up-3>.cell{width:calc(33.33333% - 1.66667rem)}.grid-margin-x.xxlarge-up-4>.cell{width:calc(25% - 1.66667rem)}.grid-margin-x.xxlarge-up-5>.cell{width:calc(20% - 1.66667rem)}.grid-margin-x.xxlarge-up-6>.cell{width:calc(16.66667% - 1.66667rem)}.grid-margin-x.xxlarge-up-7>.cell{width:calc(14.28571% - 1.66667rem)}.grid-margin-x.xxlarge-up-8>.cell{width:calc(12.5% - 1.66667rem)}}@media screen and (min-width: 118.75em){.grid-margin-x.huge-up-1>.cell{width:calc(100% - 1.66667rem)}.grid-margin-x.huge-up-2>.cell{width:calc(50% - 1.66667rem)}.grid-margin-x.huge-up-3>.cell{width:calc(33.33333% - 1.66667rem)}.grid-margin-x.huge-up-4>.cell{width:calc(25% - 1.66667rem)}.grid-margin-x.huge-up-5>.cell{width:calc(20% - 1.66667rem)}.grid-margin-x.huge-up-6>.cell{width:calc(16.66667% - 1.66667rem)}.grid-margin-x.huge-up-7>.cell{width:calc(14.28571% - 1.66667rem)}.grid-margin-x.huge-up-8>.cell{width:calc(12.5% - 1.66667rem)}}.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.33333%}.small-margin-collapse>.small-2{width:16.66667%}.small-margin-collapse>.small-3{width:25%}.small-margin-collapse>.small-4{width:33.33333%}.small-margin-collapse>.small-5{width:41.66667%}.small-margin-collapse>.small-6{width:50%}.small-margin-collapse>.small-7{width:58.33333%}.small-margin-collapse>.small-8{width:66.66667%}.small-margin-collapse>.small-9{width:75%}.small-margin-collapse>.small-10{width:83.33333%}.small-margin-collapse>.small-11{width:91.66667%}.small-margin-collapse>.small-12{width:100%}@media print, screen and (min-width: 46.0625em){.small-margin-collapse>.medium-1{width:8.33333%}.small-margin-collapse>.medium-2{width:16.66667%}.small-margin-collapse>.medium-3{width:25%}.small-margin-collapse>.medium-4{width:33.33333%}.small-margin-collapse>.medium-5{width:41.66667%}.small-margin-collapse>.medium-6{width:50%}.small-margin-collapse>.medium-7{width:58.33333%}.small-margin-collapse>.medium-8{width:66.66667%}.small-margin-collapse>.medium-9{width:75%}.small-margin-collapse>.medium-10{width:83.33333%}.small-margin-collapse>.medium-11{width:91.66667%}.small-margin-collapse>.medium-12{width:100%}}@media print, screen and (min-width: 48.0625em){.small-margin-collapse>.large-1{width:8.33333%}.small-margin-collapse>.large-2{width:16.66667%}.small-margin-collapse>.large-3{width:25%}.small-margin-collapse>.large-4{width:33.33333%}.small-margin-collapse>.large-5{width:41.66667%}.small-margin-collapse>.large-6{width:50%}.small-margin-collapse>.large-7{width:58.33333%}.small-margin-collapse>.large-8{width:66.66667%}.small-margin-collapse>.large-9{width:75%}.small-margin-collapse>.large-10{width:83.33333%}.small-margin-collapse>.large-11{width:91.66667%}.small-margin-collapse>.large-12{width:100%}}@media screen and (min-width: 64.0625em){.small-margin-collapse>.xlarge-1{width:8.33333%}.small-margin-collapse>.xlarge-2{width:16.66667%}.small-margin-collapse>.xlarge-3{width:25%}.small-margin-collapse>.xlarge-4{width:33.33333%}.small-margin-collapse>.xlarge-5{width:41.66667%}.small-margin-collapse>.xlarge-6{width:50%}.small-margin-collapse>.xlarge-7{width:58.33333%}.small-margin-collapse>.xlarge-8{width:66.66667%}.small-margin-collapse>.xlarge-9{width:75%}.small-margin-collapse>.xlarge-10{width:83.33333%}.small-margin-collapse>.xlarge-11{width:91.66667%}.small-margin-collapse>.xlarge-12{width:100%}}@media screen and (min-width: 87.5em){.small-margin-collapse>.xxlarge-1{width:8.33333%}.small-margin-collapse>.xxlarge-2{width:16.66667%}.small-margin-collapse>.xxlarge-3{width:25%}.small-margin-collapse>.xxlarge-4{width:33.33333%}.small-margin-collapse>.xxlarge-5{width:41.66667%}.small-margin-collapse>.xxlarge-6{width:50%}.small-margin-collapse>.xxlarge-7{width:58.33333%}.small-margin-collapse>.xxlarge-8{width:66.66667%}.small-margin-collapse>.xxlarge-9{width:75%}.small-margin-collapse>.xxlarge-10{width:83.33333%}.small-margin-collapse>.xxlarge-11{width:91.66667%}.small-margin-collapse>.xxlarge-12{width:100%}}@media screen and (min-width: 118.75em){.small-margin-collapse>.huge-1{width:8.33333%}.small-margin-collapse>.huge-2{width:16.66667%}.small-margin-collapse>.huge-3{width:25%}.small-margin-collapse>.huge-4{width:33.33333%}.small-margin-collapse>.huge-5{width:41.66667%}.small-margin-collapse>.huge-6{width:50%}.small-margin-collapse>.huge-7{width:58.33333%}.small-margin-collapse>.huge-8{width:66.66667%}.small-margin-collapse>.huge-9{width:75%}.small-margin-collapse>.huge-10{width:83.33333%}.small-margin-collapse>.huge-11{width:91.66667%}.small-margin-collapse>.huge-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: 46.0625em){.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: 46.0625em){.medium-margin-collapse>.small-1{width:8.33333%}.medium-margin-collapse>.small-2{width:16.66667%}.medium-margin-collapse>.small-3{width:25%}.medium-margin-collapse>.small-4{width:33.33333%}.medium-margin-collapse>.small-5{width:41.66667%}.medium-margin-collapse>.small-6{width:50%}.medium-margin-collapse>.small-7{width:58.33333%}.medium-margin-collapse>.small-8{width:66.66667%}.medium-margin-collapse>.small-9{width:75%}.medium-margin-collapse>.small-10{width:83.33333%}.medium-margin-collapse>.small-11{width:91.66667%}.medium-margin-collapse>.small-12{width:100%}}@media print, screen and (min-width: 46.0625em){.medium-margin-collapse>.medium-1{width:8.33333%}.medium-margin-collapse>.medium-2{width:16.66667%}.medium-margin-collapse>.medium-3{width:25%}.medium-margin-collapse>.medium-4{width:33.33333%}.medium-margin-collapse>.medium-5{width:41.66667%}.medium-margin-collapse>.medium-6{width:50%}.medium-margin-collapse>.medium-7{width:58.33333%}.medium-margin-collapse>.medium-8{width:66.66667%}.medium-margin-collapse>.medium-9{width:75%}.medium-margin-collapse>.medium-10{width:83.33333%}.medium-margin-collapse>.medium-11{width:91.66667%}.medium-margin-collapse>.medium-12{width:100%}}@media print, screen and (min-width: 48.0625em){.medium-margin-collapse>.large-1{width:8.33333%}.medium-margin-collapse>.large-2{width:16.66667%}.medium-margin-collapse>.large-3{width:25%}.medium-margin-collapse>.large-4{width:33.33333%}.medium-margin-collapse>.large-5{width:41.66667%}.medium-margin-collapse>.large-6{width:50%}.medium-margin-collapse>.large-7{width:58.33333%}.medium-margin-collapse>.large-8{width:66.66667%}.medium-margin-collapse>.large-9{width:75%}.medium-margin-collapse>.large-10{width:83.33333%}.medium-margin-collapse>.large-11{width:91.66667%}.medium-margin-collapse>.large-12{width:100%}}@media screen and (min-width: 64.0625em){.medium-margin-collapse>.xlarge-1{width:8.33333%}.medium-margin-collapse>.xlarge-2{width:16.66667%}.medium-margin-collapse>.xlarge-3{width:25%}.medium-margin-collapse>.xlarge-4{width:33.33333%}.medium-margin-collapse>.xlarge-5{width:41.66667%}.medium-margin-collapse>.xlarge-6{width:50%}.medium-margin-collapse>.xlarge-7{width:58.33333%}.medium-margin-collapse>.xlarge-8{width:66.66667%}.medium-margin-collapse>.xlarge-9{width:75%}.medium-margin-collapse>.xlarge-10{width:83.33333%}.medium-margin-collapse>.xlarge-11{width:91.66667%}.medium-margin-collapse>.xlarge-12{width:100%}}@media screen and (min-width: 87.5em){.medium-margin-collapse>.xxlarge-1{width:8.33333%}.medium-margin-collapse>.xxlarge-2{width:16.66667%}.medium-margin-collapse>.xxlarge-3{width:25%}.medium-margin-collapse>.xxlarge-4{width:33.33333%}.medium-margin-collapse>.xxlarge-5{width:41.66667%}.medium-margin-collapse>.xxlarge-6{width:50%}.medium-margin-collapse>.xxlarge-7{width:58.33333%}.medium-margin-collapse>.xxlarge-8{width:66.66667%}.medium-margin-collapse>.xxlarge-9{width:75%}.medium-margin-collapse>.xxlarge-10{width:83.33333%}.medium-margin-collapse>.xxlarge-11{width:91.66667%}.medium-margin-collapse>.xxlarge-12{width:100%}}@media screen and (min-width: 118.75em){.medium-margin-collapse>.huge-1{width:8.33333%}.medium-margin-collapse>.huge-2{width:16.66667%}.medium-margin-collapse>.huge-3{width:25%}.medium-margin-collapse>.huge-4{width:33.33333%}.medium-margin-collapse>.huge-5{width:41.66667%}.medium-margin-collapse>.huge-6{width:50%}.medium-margin-collapse>.huge-7{width:58.33333%}.medium-margin-collapse>.huge-8{width:66.66667%}.medium-margin-collapse>.huge-9{width:75%}.medium-margin-collapse>.huge-10{width:83.33333%}.medium-margin-collapse>.huge-11{width:91.66667%}.medium-margin-collapse>.huge-12{width:100%}}@media print, screen and (min-width: 46.0625em){.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: 48.0625em){.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: 48.0625em){.large-margin-collapse>.small-1{width:8.33333%}.large-margin-collapse>.small-2{width:16.66667%}.large-margin-collapse>.small-3{width:25%}.large-margin-collapse>.small-4{width:33.33333%}.large-margin-collapse>.small-5{width:41.66667%}.large-margin-collapse>.small-6{width:50%}.large-margin-collapse>.small-7{width:58.33333%}.large-margin-collapse>.small-8{width:66.66667%}.large-margin-collapse>.small-9{width:75%}.large-margin-collapse>.small-10{width:83.33333%}.large-margin-collapse>.small-11{width:91.66667%}.large-margin-collapse>.small-12{width:100%}}@media print, screen and (min-width: 48.0625em){.large-margin-collapse>.medium-1{width:8.33333%}.large-margin-collapse>.medium-2{width:16.66667%}.large-margin-collapse>.medium-3{width:25%}.large-margin-collapse>.medium-4{width:33.33333%}.large-margin-collapse>.medium-5{width:41.66667%}.large-margin-collapse>.medium-6{width:50%}.large-margin-collapse>.medium-7{width:58.33333%}.large-margin-collapse>.medium-8{width:66.66667%}.large-margin-collapse>.medium-9{width:75%}.large-margin-collapse>.medium-10{width:83.33333%}.large-margin-collapse>.medium-11{width:91.66667%}.large-margin-collapse>.medium-12{width:100%}}@media print, screen and (min-width: 48.0625em){.large-margin-collapse>.large-1{width:8.33333%}.large-margin-collapse>.large-2{width:16.66667%}.large-margin-collapse>.large-3{width:25%}.large-margin-collapse>.large-4{width:33.33333%}.large-margin-collapse>.large-5{width:41.66667%}.large-margin-collapse>.large-6{width:50%}.large-margin-collapse>.large-7{width:58.33333%}.large-margin-collapse>.large-8{width:66.66667%}.large-margin-collapse>.large-9{width:75%}.large-margin-collapse>.large-10{width:83.33333%}.large-margin-collapse>.large-11{width:91.66667%}.large-margin-collapse>.large-12{width:100%}}@media screen and (min-width: 64.0625em){.large-margin-collapse>.xlarge-1{width:8.33333%}.large-margin-collapse>.xlarge-2{width:16.66667%}.large-margin-collapse>.xlarge-3{width:25%}.large-margin-collapse>.xlarge-4{width:33.33333%}.large-margin-collapse>.xlarge-5{width:41.66667%}.large-margin-collapse>.xlarge-6{width:50%}.large-margin-collapse>.xlarge-7{width:58.33333%}.large-margin-collapse>.xlarge-8{width:66.66667%}.large-margin-collapse>.xlarge-9{width:75%}.large-margin-collapse>.xlarge-10{width:83.33333%}.large-margin-collapse>.xlarge-11{width:91.66667%}.large-margin-collapse>.xlarge-12{width:100%}}@media screen and (min-width: 87.5em){.large-margin-collapse>.xxlarge-1{width:8.33333%}.large-margin-collapse>.xxlarge-2{width:16.66667%}.large-margin-collapse>.xxlarge-3{width:25%}.large-margin-collapse>.xxlarge-4{width:33.33333%}.large-margin-collapse>.xxlarge-5{width:41.66667%}.large-margin-collapse>.xxlarge-6{width:50%}.large-margin-collapse>.xxlarge-7{width:58.33333%}.large-margin-collapse>.xxlarge-8{width:66.66667%}.large-margin-collapse>.xxlarge-9{width:75%}.large-margin-collapse>.xxlarge-10{width:83.33333%}.large-margin-collapse>.xxlarge-11{width:91.66667%}.large-margin-collapse>.xxlarge-12{width:100%}}@media screen and (min-width: 118.75em){.large-margin-collapse>.huge-1{width:8.33333%}.large-margin-collapse>.huge-2{width:16.66667%}.large-margin-collapse>.huge-3{width:25%}.large-margin-collapse>.huge-4{width:33.33333%}.large-margin-collapse>.huge-5{width:41.66667%}.large-margin-collapse>.huge-6{width:50%}.large-margin-collapse>.huge-7{width:58.33333%}.large-margin-collapse>.huge-8{width:66.66667%}.large-margin-collapse>.huge-9{width:75%}.large-margin-collapse>.huge-10{width:83.33333%}.large-margin-collapse>.huge-11{width:91.66667%}.large-margin-collapse>.huge-12{width:100%}}@media print, screen and (min-width: 48.0625em){.large-padding-collapse{margin-right:0;margin-left:0}.large-padding-collapse>.cell{padding-right:0;padding-left:0}}@media screen and (min-width: 64.0625em){.xlarge-margin-collapse{margin-right:0;margin-left:0}.xlarge-margin-collapse>.cell{margin-right:0;margin-left:0}}@media screen and (min-width: 64.0625em){.xlarge-margin-collapse>.small-1{width:8.33333%}.xlarge-margin-collapse>.small-2{width:16.66667%}.xlarge-margin-collapse>.small-3{width:25%}.xlarge-margin-collapse>.small-4{width:33.33333%}.xlarge-margin-collapse>.small-5{width:41.66667%}.xlarge-margin-collapse>.small-6{width:50%}.xlarge-margin-collapse>.small-7{width:58.33333%}.xlarge-margin-collapse>.small-8{width:66.66667%}.xlarge-margin-collapse>.small-9{width:75%}.xlarge-margin-collapse>.small-10{width:83.33333%}.xlarge-margin-collapse>.small-11{width:91.66667%}.xlarge-margin-collapse>.small-12{width:100%}}@media screen and (min-width: 64.0625em){.xlarge-margin-collapse>.medium-1{width:8.33333%}.xlarge-margin-collapse>.medium-2{width:16.66667%}.xlarge-margin-collapse>.medium-3{width:25%}.xlarge-margin-collapse>.medium-4{width:33.33333%}.xlarge-margin-collapse>.medium-5{width:41.66667%}.xlarge-margin-collapse>.medium-6{width:50%}.xlarge-margin-collapse>.medium-7{width:58.33333%}.xlarge-margin-collapse>.medium-8{width:66.66667%}.xlarge-margin-collapse>.medium-9{width:75%}.xlarge-margin-collapse>.medium-10{width:83.33333%}.xlarge-margin-collapse>.medium-11{width:91.66667%}.xlarge-margin-collapse>.medium-12{width:100%}}@media screen and (min-width: 64.0625em){.xlarge-margin-collapse>.large-1{width:8.33333%}.xlarge-margin-collapse>.large-2{width:16.66667%}.xlarge-margin-collapse>.large-3{width:25%}.xlarge-margin-collapse>.large-4{width:33.33333%}.xlarge-margin-collapse>.large-5{width:41.66667%}.xlarge-margin-collapse>.large-6{width:50%}.xlarge-margin-collapse>.large-7{width:58.33333%}.xlarge-margin-collapse>.large-8{width:66.66667%}.xlarge-margin-collapse>.large-9{width:75%}.xlarge-margin-collapse>.large-10{width:83.33333%}.xlarge-margin-collapse>.large-11{width:91.66667%}.xlarge-margin-collapse>.large-12{width:100%}}@media screen and (min-width: 64.0625em){.xlarge-margin-collapse>.xlarge-1{width:8.33333%}.xlarge-margin-collapse>.xlarge-2{width:16.66667%}.xlarge-margin-collapse>.xlarge-3{width:25%}.xlarge-margin-collapse>.xlarge-4{width:33.33333%}.xlarge-margin-collapse>.xlarge-5{width:41.66667%}.xlarge-margin-collapse>.xlarge-6{width:50%}.xlarge-margin-collapse>.xlarge-7{width:58.33333%}.xlarge-margin-collapse>.xlarge-8{width:66.66667%}.xlarge-margin-collapse>.xlarge-9{width:75%}.xlarge-margin-collapse>.xlarge-10{width:83.33333%}.xlarge-margin-collapse>.xlarge-11{width:91.66667%}.xlarge-margin-collapse>.xlarge-12{width:100%}}@media screen and (min-width: 87.5em){.xlarge-margin-collapse>.xxlarge-1{width:8.33333%}.xlarge-margin-collapse>.xxlarge-2{width:16.66667%}.xlarge-margin-collapse>.xxlarge-3{width:25%}.xlarge-margin-collapse>.xxlarge-4{width:33.33333%}.xlarge-margin-collapse>.xxlarge-5{width:41.66667%}.xlarge-margin-collapse>.xxlarge-6{width:50%}.xlarge-margin-collapse>.xxlarge-7{width:58.33333%}.xlarge-margin-collapse>.xxlarge-8{width:66.66667%}.xlarge-margin-collapse>.xxlarge-9{width:75%}.xlarge-margin-collapse>.xxlarge-10{width:83.33333%}.xlarge-margin-collapse>.xxlarge-11{width:91.66667%}.xlarge-margin-collapse>.xxlarge-12{width:100%}}@media screen and (min-width: 118.75em){.xlarge-margin-collapse>.huge-1{width:8.33333%}.xlarge-margin-collapse>.huge-2{width:16.66667%}.xlarge-margin-collapse>.huge-3{width:25%}.xlarge-margin-collapse>.huge-4{width:33.33333%}.xlarge-margin-collapse>.huge-5{width:41.66667%}.xlarge-margin-collapse>.huge-6{width:50%}.xlarge-margin-collapse>.huge-7{width:58.33333%}.xlarge-margin-collapse>.huge-8{width:66.66667%}.xlarge-margin-collapse>.huge-9{width:75%}.xlarge-margin-collapse>.huge-10{width:83.33333%}.xlarge-margin-collapse>.huge-11{width:91.66667%}.xlarge-margin-collapse>.huge-12{width:100%}}@media screen and (min-width: 64.0625em){.xlarge-padding-collapse{margin-right:0;margin-left:0}.xlarge-padding-collapse>.cell{padding-right:0;padding-left:0}}@media screen and (min-width: 87.5em){.xxlarge-margin-collapse{margin-right:0;margin-left:0}.xxlarge-margin-collapse>.cell{margin-right:0;margin-left:0}}@media screen and (min-width: 87.5em){.xxlarge-margin-collapse>.small-1{width:8.33333%}.xxlarge-margin-collapse>.small-2{width:16.66667%}.xxlarge-margin-collapse>.small-3{width:25%}.xxlarge-margin-collapse>.small-4{width:33.33333%}.xxlarge-margin-collapse>.small-5{width:41.66667%}.xxlarge-margin-collapse>.small-6{width:50%}.xxlarge-margin-collapse>.small-7{width:58.33333%}.xxlarge-margin-collapse>.small-8{width:66.66667%}.xxlarge-margin-collapse>.small-9{width:75%}.xxlarge-margin-collapse>.small-10{width:83.33333%}.xxlarge-margin-collapse>.small-11{width:91.66667%}.xxlarge-margin-collapse>.small-12{width:100%}}@media screen and (min-width: 87.5em){.xxlarge-margin-collapse>.medium-1{width:8.33333%}.xxlarge-margin-collapse>.medium-2{width:16.66667%}.xxlarge-margin-collapse>.medium-3{width:25%}.xxlarge-margin-collapse>.medium-4{width:33.33333%}.xxlarge-margin-collapse>.medium-5{width:41.66667%}.xxlarge-margin-collapse>.medium-6{width:50%}.xxlarge-margin-collapse>.medium-7{width:58.33333%}.xxlarge-margin-collapse>.medium-8{width:66.66667%}.xxlarge-margin-collapse>.medium-9{width:75%}.xxlarge-margin-collapse>.medium-10{width:83.33333%}.xxlarge-margin-collapse>.medium-11{width:91.66667%}.xxlarge-margin-collapse>.medium-12{width:100%}}@media screen and (min-width: 87.5em){.xxlarge-margin-collapse>.large-1{width:8.33333%}.xxlarge-margin-collapse>.large-2{width:16.66667%}.xxlarge-margin-collapse>.large-3{width:25%}.xxlarge-margin-collapse>.large-4{width:33.33333%}.xxlarge-margin-collapse>.large-5{width:41.66667%}.xxlarge-margin-collapse>.large-6{width:50%}.xxlarge-margin-collapse>.large-7{width:58.33333%}.xxlarge-margin-collapse>.large-8{width:66.66667%}.xxlarge-margin-collapse>.large-9{width:75%}.xxlarge-margin-collapse>.large-10{width:83.33333%}.xxlarge-margin-collapse>.large-11{width:91.66667%}.xxlarge-margin-collapse>.large-12{width:100%}}@media screen and (min-width: 87.5em){.xxlarge-margin-collapse>.xlarge-1{width:8.33333%}.xxlarge-margin-collapse>.xlarge-2{width:16.66667%}.xxlarge-margin-collapse>.xlarge-3{width:25%}.xxlarge-margin-collapse>.xlarge-4{width:33.33333%}.xxlarge-margin-collapse>.xlarge-5{width:41.66667%}.xxlarge-margin-collapse>.xlarge-6{width:50%}.xxlarge-margin-collapse>.xlarge-7{width:58.33333%}.xxlarge-margin-collapse>.xlarge-8{width:66.66667%}.xxlarge-margin-collapse>.xlarge-9{width:75%}.xxlarge-margin-collapse>.xlarge-10{width:83.33333%}.xxlarge-margin-collapse>.xlarge-11{width:91.66667%}.xxlarge-margin-collapse>.xlarge-12{width:100%}}@media screen and (min-width: 87.5em){.xxlarge-margin-collapse>.xxlarge-1{width:8.33333%}.xxlarge-margin-collapse>.xxlarge-2{width:16.66667%}.xxlarge-margin-collapse>.xxlarge-3{width:25%}.xxlarge-margin-collapse>.xxlarge-4{width:33.33333%}.xxlarge-margin-collapse>.xxlarge-5{width:41.66667%}.xxlarge-margin-collapse>.xxlarge-6{width:50%}.xxlarge-margin-collapse>.xxlarge-7{width:58.33333%}.xxlarge-margin-collapse>.xxlarge-8{width:66.66667%}.xxlarge-margin-collapse>.xxlarge-9{width:75%}.xxlarge-margin-collapse>.xxlarge-10{width:83.33333%}.xxlarge-margin-collapse>.xxlarge-11{width:91.66667%}.xxlarge-margin-collapse>.xxlarge-12{width:100%}}@media screen and (min-width: 118.75em){.xxlarge-margin-collapse>.huge-1{width:8.33333%}.xxlarge-margin-collapse>.huge-2{width:16.66667%}.xxlarge-margin-collapse>.huge-3{width:25%}.xxlarge-margin-collapse>.huge-4{width:33.33333%}.xxlarge-margin-collapse>.huge-5{width:41.66667%}.xxlarge-margin-collapse>.huge-6{width:50%}.xxlarge-margin-collapse>.huge-7{width:58.33333%}.xxlarge-margin-collapse>.huge-8{width:66.66667%}.xxlarge-margin-collapse>.huge-9{width:75%}.xxlarge-margin-collapse>.huge-10{width:83.33333%}.xxlarge-margin-collapse>.huge-11{width:91.66667%}.xxlarge-margin-collapse>.huge-12{width:100%}}@media screen and (min-width: 87.5em){.xxlarge-padding-collapse{margin-right:0;margin-left:0}.xxlarge-padding-collapse>.cell{padding-right:0;padding-left:0}}@media screen and (min-width: 118.75em){.huge-margin-collapse{margin-right:0;margin-left:0}.huge-margin-collapse>.cell{margin-right:0;margin-left:0}}@media screen and (min-width: 118.75em){.huge-margin-collapse>.small-1{width:8.33333%}.huge-margin-collapse>.small-2{width:16.66667%}.huge-margin-collapse>.small-3{width:25%}.huge-margin-collapse>.small-4{width:33.33333%}.huge-margin-collapse>.small-5{width:41.66667%}.huge-margin-collapse>.small-6{width:50%}.huge-margin-collapse>.small-7{width:58.33333%}.huge-margin-collapse>.small-8{width:66.66667%}.huge-margin-collapse>.small-9{width:75%}.huge-margin-collapse>.small-10{width:83.33333%}.huge-margin-collapse>.small-11{width:91.66667%}.huge-margin-collapse>.small-12{width:100%}}@media screen and (min-width: 118.75em){.huge-margin-collapse>.medium-1{width:8.33333%}.huge-margin-collapse>.medium-2{width:16.66667%}.huge-margin-collapse>.medium-3{width:25%}.huge-margin-collapse>.medium-4{width:33.33333%}.huge-margin-collapse>.medium-5{width:41.66667%}.huge-margin-collapse>.medium-6{width:50%}.huge-margin-collapse>.medium-7{width:58.33333%}.huge-margin-collapse>.medium-8{width:66.66667%}.huge-margin-collapse>.medium-9{width:75%}.huge-margin-collapse>.medium-10{width:83.33333%}.huge-margin-collapse>.medium-11{width:91.66667%}.huge-margin-collapse>.medium-12{width:100%}}@media screen and (min-width: 118.75em){.huge-margin-collapse>.large-1{width:8.33333%}.huge-margin-collapse>.large-2{width:16.66667%}.huge-margin-collapse>.large-3{width:25%}.huge-margin-collapse>.large-4{width:33.33333%}.huge-margin-collapse>.large-5{width:41.66667%}.huge-margin-collapse>.large-6{width:50%}.huge-margin-collapse>.large-7{width:58.33333%}.huge-margin-collapse>.large-8{width:66.66667%}.huge-margin-collapse>.large-9{width:75%}.huge-margin-collapse>.large-10{width:83.33333%}.huge-margin-collapse>.large-11{width:91.66667%}.huge-margin-collapse>.large-12{width:100%}}@media screen and (min-width: 118.75em){.huge-margin-collapse>.xlarge-1{width:8.33333%}.huge-margin-collapse>.xlarge-2{width:16.66667%}.huge-margin-collapse>.xlarge-3{width:25%}.huge-margin-collapse>.xlarge-4{width:33.33333%}.huge-margin-collapse>.xlarge-5{width:41.66667%}.huge-margin-collapse>.xlarge-6{width:50%}.huge-margin-collapse>.xlarge-7{width:58.33333%}.huge-margin-collapse>.xlarge-8{width:66.66667%}.huge-margin-collapse>.xlarge-9{width:75%}.huge-margin-collapse>.xlarge-10{width:83.33333%}.huge-margin-collapse>.xlarge-11{width:91.66667%}.huge-margin-collapse>.xlarge-12{width:100%}}@media screen and (min-width: 118.75em){.huge-margin-collapse>.xxlarge-1{width:8.33333%}.huge-margin-collapse>.xxlarge-2{width:16.66667%}.huge-margin-collapse>.xxlarge-3{width:25%}.huge-margin-collapse>.xxlarge-4{width:33.33333%}.huge-margin-collapse>.xxlarge-5{width:41.66667%}.huge-margin-collapse>.xxlarge-6{width:50%}.huge-margin-collapse>.xxlarge-7{width:58.33333%}.huge-margin-collapse>.xxlarge-8{width:66.66667%}.huge-margin-collapse>.xxlarge-9{width:75%}.huge-margin-collapse>.xxlarge-10{width:83.33333%}.huge-margin-collapse>.xxlarge-11{width:91.66667%}.huge-margin-collapse>.xxlarge-12{width:100%}}@media screen and (min-width: 118.75em){.huge-margin-collapse>.huge-1{width:8.33333%}.huge-margin-collapse>.huge-2{width:16.66667%}.huge-margin-collapse>.huge-3{width:25%}.huge-margin-collapse>.huge-4{width:33.33333%}.huge-margin-collapse>.huge-5{width:41.66667%}.huge-margin-collapse>.huge-6{width:50%}.huge-margin-collapse>.huge-7{width:58.33333%}.huge-margin-collapse>.huge-8{width:66.66667%}.huge-margin-collapse>.huge-9{width:75%}.huge-margin-collapse>.huge-10{width:83.33333%}.huge-margin-collapse>.huge-11{width:91.66667%}.huge-margin-collapse>.huge-12{width:100%}}@media screen and (min-width: 118.75em){.huge-padding-collapse{margin-right:0;margin-left:0}.huge-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% + .55556rem)}.small-offset-1{margin-left:8.33333%}.grid-margin-x>.small-offset-1{margin-left:calc(8.33333% + .55556rem)}.small-offset-2{margin-left:16.66667%}.grid-margin-x>.small-offset-2{margin-left:calc(16.66667% + .55556rem)}.small-offset-3{margin-left:25%}.grid-margin-x>.small-offset-3{margin-left:calc(25% + .55556rem)}.small-offset-4{margin-left:33.33333%}.grid-margin-x>.small-offset-4{margin-left:calc(33.33333% + .55556rem)}.small-offset-5{margin-left:41.66667%}.grid-margin-x>.small-offset-5{margin-left:calc(41.66667% + .55556rem)}.small-offset-6{margin-left:50%}.grid-margin-x>.small-offset-6{margin-left:calc(50% + .55556rem)}.small-offset-7{margin-left:58.33333%}.grid-margin-x>.small-offset-7{margin-left:calc(58.33333% + .55556rem)}.small-offset-8{margin-left:66.66667%}.grid-margin-x>.small-offset-8{margin-left:calc(66.66667% + .55556rem)}.small-offset-9{margin-left:75%}.grid-margin-x>.small-offset-9{margin-left:calc(75% + .55556rem)}.small-offset-10{margin-left:83.33333%}.grid-margin-x>.small-offset-10{margin-left:calc(83.33333% + .55556rem)}.small-offset-11{margin-left:91.66667%}.grid-margin-x>.small-offset-11{margin-left:calc(91.66667% + .55556rem)}@media print, screen and (min-width: 46.0625em){.medium-offset-0{margin-left:0%}.grid-margin-x>.medium-offset-0{margin-left:calc(0% + .83333rem)}.medium-offset-1{margin-left:8.33333%}.grid-margin-x>.medium-offset-1{margin-left:calc(8.33333% + .83333rem)}.medium-offset-2{margin-left:16.66667%}.grid-margin-x>.medium-offset-2{margin-left:calc(16.66667% + .83333rem)}.medium-offset-3{margin-left:25%}.grid-margin-x>.medium-offset-3{margin-left:calc(25% + .83333rem)}.medium-offset-4{margin-left:33.33333%}.grid-margin-x>.medium-offset-4{margin-left:calc(33.33333% + .83333rem)}.medium-offset-5{margin-left:41.66667%}.grid-margin-x>.medium-offset-5{margin-left:calc(41.66667% + .83333rem)}.medium-offset-6{margin-left:50%}.grid-margin-x>.medium-offset-6{margin-left:calc(50% + .83333rem)}.medium-offset-7{margin-left:58.33333%}.grid-margin-x>.medium-offset-7{margin-left:calc(58.33333% + .83333rem)}.medium-offset-8{margin-left:66.66667%}.grid-margin-x>.medium-offset-8{margin-left:calc(66.66667% + .83333rem)}.medium-offset-9{margin-left:75%}.grid-margin-x>.medium-offset-9{margin-left:calc(75% + .83333rem)}.medium-offset-10{margin-left:83.33333%}.grid-margin-x>.medium-offset-10{margin-left:calc(83.33333% + .83333rem)}.medium-offset-11{margin-left:91.66667%}.grid-margin-x>.medium-offset-11{margin-left:calc(91.66667% + .83333rem)}}@media print, screen and (min-width: 48.0625em){.large-offset-0{margin-left:0%}.grid-margin-x>.large-offset-0{margin-left:calc(0% + .83333rem)}.large-offset-1{margin-left:8.33333%}.grid-margin-x>.large-offset-1{margin-left:calc(8.33333% + .83333rem)}.large-offset-2{margin-left:16.66667%}.grid-margin-x>.large-offset-2{margin-left:calc(16.66667% + .83333rem)}.large-offset-3{margin-left:25%}.grid-margin-x>.large-offset-3{margin-left:calc(25% + .83333rem)}.large-offset-4{margin-left:33.33333%}.grid-margin-x>.large-offset-4{margin-left:calc(33.33333% + .83333rem)}.large-offset-5{margin-left:41.66667%}.grid-margin-x>.large-offset-5{margin-left:calc(41.66667% + .83333rem)}.large-offset-6{margin-left:50%}.grid-margin-x>.large-offset-6{margin-left:calc(50% + .83333rem)}.large-offset-7{margin-left:58.33333%}.grid-margin-x>.large-offset-7{margin-left:calc(58.33333% + .83333rem)}.large-offset-8{margin-left:66.66667%}.grid-margin-x>.large-offset-8{margin-left:calc(66.66667% + .83333rem)}.large-offset-9{margin-left:75%}.grid-margin-x>.large-offset-9{margin-left:calc(75% + .83333rem)}.large-offset-10{margin-left:83.33333%}.grid-margin-x>.large-offset-10{margin-left:calc(83.33333% + .83333rem)}.large-offset-11{margin-left:91.66667%}.grid-margin-x>.large-offset-11{margin-left:calc(91.66667% + .83333rem)}}@media screen and (min-width: 64.0625em){.xlarge-offset-0{margin-left:0%}.grid-margin-x>.xlarge-offset-0{margin-left:calc(0% + .83333rem)}.xlarge-offset-1{margin-left:8.33333%}.grid-margin-x>.xlarge-offset-1{margin-left:calc(8.33333% + .83333rem)}.xlarge-offset-2{margin-left:16.66667%}.grid-margin-x>.xlarge-offset-2{margin-left:calc(16.66667% + .83333rem)}.xlarge-offset-3{margin-left:25%}.grid-margin-x>.xlarge-offset-3{margin-left:calc(25% + .83333rem)}.xlarge-offset-4{margin-left:33.33333%}.grid-margin-x>.xlarge-offset-4{margin-left:calc(33.33333% + .83333rem)}.xlarge-offset-5{margin-left:41.66667%}.grid-margin-x>.xlarge-offset-5{margin-left:calc(41.66667% + .83333rem)}.xlarge-offset-6{margin-left:50%}.grid-margin-x>.xlarge-offset-6{margin-left:calc(50% + .83333rem)}.xlarge-offset-7{margin-left:58.33333%}.grid-margin-x>.xlarge-offset-7{margin-left:calc(58.33333% + .83333rem)}.xlarge-offset-8{margin-left:66.66667%}.grid-margin-x>.xlarge-offset-8{margin-left:calc(66.66667% + .83333rem)}.xlarge-offset-9{margin-left:75%}.grid-margin-x>.xlarge-offset-9{margin-left:calc(75% + .83333rem)}.xlarge-offset-10{margin-left:83.33333%}.grid-margin-x>.xlarge-offset-10{margin-left:calc(83.33333% + .83333rem)}.xlarge-offset-11{margin-left:91.66667%}.grid-margin-x>.xlarge-offset-11{margin-left:calc(91.66667% + .83333rem)}}@media screen and (min-width: 87.5em){.xxlarge-offset-0{margin-left:0%}.grid-margin-x>.xxlarge-offset-0{margin-left:calc(0% + .83333rem)}.xxlarge-offset-1{margin-left:8.33333%}.grid-margin-x>.xxlarge-offset-1{margin-left:calc(8.33333% + .83333rem)}.xxlarge-offset-2{margin-left:16.66667%}.grid-margin-x>.xxlarge-offset-2{margin-left:calc(16.66667% + .83333rem)}.xxlarge-offset-3{margin-left:25%}.grid-margin-x>.xxlarge-offset-3{margin-left:calc(25% + .83333rem)}.xxlarge-offset-4{margin-left:33.33333%}.grid-margin-x>.xxlarge-offset-4{margin-left:calc(33.33333% + .83333rem)}.xxlarge-offset-5{margin-left:41.66667%}.grid-margin-x>.xxlarge-offset-5{margin-left:calc(41.66667% + .83333rem)}.xxlarge-offset-6{margin-left:50%}.grid-margin-x>.xxlarge-offset-6{margin-left:calc(50% + .83333rem)}.xxlarge-offset-7{margin-left:58.33333%}.grid-margin-x>.xxlarge-offset-7{margin-left:calc(58.33333% + .83333rem)}.xxlarge-offset-8{margin-left:66.66667%}.grid-margin-x>.xxlarge-offset-8{margin-left:calc(66.66667% + .83333rem)}.xxlarge-offset-9{margin-left:75%}.grid-margin-x>.xxlarge-offset-9{margin-left:calc(75% + .83333rem)}.xxlarge-offset-10{margin-left:83.33333%}.grid-margin-x>.xxlarge-offset-10{margin-left:calc(83.33333% + .83333rem)}.xxlarge-offset-11{margin-left:91.66667%}.grid-margin-x>.xxlarge-offset-11{margin-left:calc(91.66667% + .83333rem)}}@media screen and (min-width: 118.75em){.huge-offset-0{margin-left:0%}.grid-margin-x>.huge-offset-0{margin-left:calc(0% + .83333rem)}.huge-offset-1{margin-left:8.33333%}.grid-margin-x>.huge-offset-1{margin-left:calc(8.33333% + .83333rem)}.huge-offset-2{margin-left:16.66667%}.grid-margin-x>.huge-offset-2{margin-left:calc(16.66667% + .83333rem)}.huge-offset-3{margin-left:25%}.grid-margin-x>.huge-offset-3{margin-left:calc(25% + .83333rem)}.huge-offset-4{margin-left:33.33333%}.grid-margin-x>.huge-offset-4{margin-left:calc(33.33333% + .83333rem)}.huge-offset-5{margin-left:41.66667%}.grid-margin-x>.huge-offset-5{margin-left:calc(41.66667% + .83333rem)}.huge-offset-6{margin-left:50%}.grid-margin-x>.huge-offset-6{margin-left:calc(50% + .83333rem)}.huge-offset-7{margin-left:58.33333%}.grid-margin-x>.huge-offset-7{margin-left:calc(58.33333% + .83333rem)}.huge-offset-8{margin-left:66.66667%}.grid-margin-x>.huge-offset-8{margin-left:calc(66.66667% + .83333rem)}.huge-offset-9{margin-left:75%}.grid-margin-x>.huge-offset-9{margin-left:calc(75% + .83333rem)}.huge-offset-10{margin-left:83.33333%}.grid-margin-x>.huge-offset-10{margin-left:calc(83.33333% + .83333rem)}.huge-offset-11{margin-left:91.66667%}.grid-margin-x>.huge-offset-11{margin-left:calc(91.66667% + .83333rem)}}.grid-y{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-flow:column nowrap;flex-flow:column nowrap}.grid-y>.cell{width:auto;max-width: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{-ms-flex-preferred-size:auto;flex-basis:auto}@media print, screen and (min-width: 46.0625em){.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{-ms-flex-preferred-size:auto;flex-basis:auto}}@media print, screen and (min-width: 48.0625em){.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{-ms-flex-preferred-size:auto;flex-basis:auto}}@media screen and (min-width: 64.0625em){.grid-y>.xlarge-shrink,.grid-y>.xlarge-full,.grid-y>.xlarge-1,.grid-y>.xlarge-2,.grid-y>.xlarge-3,.grid-y>.xlarge-4,.grid-y>.xlarge-5,.grid-y>.xlarge-6,.grid-y>.xlarge-7,.grid-y>.xlarge-8,.grid-y>.xlarge-9,.grid-y>.xlarge-10,.grid-y>.xlarge-11,.grid-y>.xlarge-12{-ms-flex-preferred-size:auto;flex-basis:auto}}@media screen and (min-width: 87.5em){.grid-y>.xxlarge-shrink,.grid-y>.xxlarge-full,.grid-y>.xxlarge-1,.grid-y>.xxlarge-2,.grid-y>.xxlarge-3,.grid-y>.xxlarge-4,.grid-y>.xxlarge-5,.grid-y>.xxlarge-6,.grid-y>.xxlarge-7,.grid-y>.xxlarge-8,.grid-y>.xxlarge-9,.grid-y>.xxlarge-10,.grid-y>.xxlarge-11,.grid-y>.xxlarge-12{-ms-flex-preferred-size:auto;flex-basis:auto}}@media screen and (min-width: 118.75em){.grid-y>.huge-shrink,.grid-y>.huge-full,.grid-y>.huge-1,.grid-y>.huge-2,.grid-y>.huge-3,.grid-y>.huge-4,.grid-y>.huge-5,.grid-y>.huge-6,.grid-y>.huge-7,.grid-y>.huge-8,.grid-y>.huge-9,.grid-y>.huge-10,.grid-y>.huge-11,.grid-y>.huge-12{-ms-flex-preferred-size:auto;flex-basis:auto}}.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{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.grid-y>.small-1{height:8.33333%}.grid-y>.small-2{height:16.66667%}.grid-y>.small-3{height:25%}.grid-y>.small-4{height:33.33333%}.grid-y>.small-5{height:41.66667%}.grid-y>.small-6{height:50%}.grid-y>.small-7{height:58.33333%}.grid-y>.small-8{height:66.66667%}.grid-y>.small-9{height:75%}.grid-y>.small-10{height:83.33333%}.grid-y>.small-11{height:91.66667%}.grid-y>.small-12{height:100%}@media print, screen and (min-width: 46.0625em){.grid-y>.medium-auto{-webkit-box-flex:1;-ms-flex:1 1 0px;flex:1 1 0px;height:auto}.grid-y>.medium-shrink,.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{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.grid-y>.medium-shrink{height:auto}.grid-y>.medium-1{height:8.33333%}.grid-y>.medium-2{height:16.66667%}.grid-y>.medium-3{height:25%}.grid-y>.medium-4{height:33.33333%}.grid-y>.medium-5{height:41.66667%}.grid-y>.medium-6{height:50%}.grid-y>.medium-7{height:58.33333%}.grid-y>.medium-8{height:66.66667%}.grid-y>.medium-9{height:75%}.grid-y>.medium-10{height:83.33333%}.grid-y>.medium-11{height:91.66667%}.grid-y>.medium-12{height:100%}}@media print, screen and (min-width: 48.0625em){.grid-y>.large-auto{-webkit-box-flex:1;-ms-flex:1 1 0px;flex:1 1 0px;height:auto}.grid-y>.large-shrink,.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{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.grid-y>.large-shrink{height:auto}.grid-y>.large-1{height:8.33333%}.grid-y>.large-2{height:16.66667%}.grid-y>.large-3{height:25%}.grid-y>.large-4{height:33.33333%}.grid-y>.large-5{height:41.66667%}.grid-y>.large-6{height:50%}.grid-y>.large-7{height:58.33333%}.grid-y>.large-8{height:66.66667%}.grid-y>.large-9{height:75%}.grid-y>.large-10{height:83.33333%}.grid-y>.large-11{height:91.66667%}.grid-y>.large-12{height:100%}}@media screen and (min-width: 64.0625em){.grid-y>.xlarge-auto{-webkit-box-flex:1;-ms-flex:1 1 0px;flex:1 1 0px;height:auto}.grid-y>.xlarge-shrink,.grid-y>.xlarge-1,.grid-y>.xlarge-2,.grid-y>.xlarge-3,.grid-y>.xlarge-4,.grid-y>.xlarge-5,.grid-y>.xlarge-6,.grid-y>.xlarge-7,.grid-y>.xlarge-8,.grid-y>.xlarge-9,.grid-y>.xlarge-10,.grid-y>.xlarge-11,.grid-y>.xlarge-12{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.grid-y>.xlarge-shrink{height:auto}.grid-y>.xlarge-1{height:8.33333%}.grid-y>.xlarge-2{height:16.66667%}.grid-y>.xlarge-3{height:25%}.grid-y>.xlarge-4{height:33.33333%}.grid-y>.xlarge-5{height:41.66667%}.grid-y>.xlarge-6{height:50%}.grid-y>.xlarge-7{height:58.33333%}.grid-y>.xlarge-8{height:66.66667%}.grid-y>.xlarge-9{height:75%}.grid-y>.xlarge-10{height:83.33333%}.grid-y>.xlarge-11{height:91.66667%}.grid-y>.xlarge-12{height:100%}}@media screen and (min-width: 87.5em){.grid-y>.xxlarge-auto{-webkit-box-flex:1;-ms-flex:1 1 0px;flex:1 1 0px;height:auto}.grid-y>.xxlarge-shrink,.grid-y>.xxlarge-1,.grid-y>.xxlarge-2,.grid-y>.xxlarge-3,.grid-y>.xxlarge-4,.grid-y>.xxlarge-5,.grid-y>.xxlarge-6,.grid-y>.xxlarge-7,.grid-y>.xxlarge-8,.grid-y>.xxlarge-9,.grid-y>.xxlarge-10,.grid-y>.xxlarge-11,.grid-y>.xxlarge-12{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.grid-y>.xxlarge-shrink{height:auto}.grid-y>.xxlarge-1{height:8.33333%}.grid-y>.xxlarge-2{height:16.66667%}.grid-y>.xxlarge-3{height:25%}.grid-y>.xxlarge-4{height:33.33333%}.grid-y>.xxlarge-5{height:41.66667%}.grid-y>.xxlarge-6{height:50%}.grid-y>.xxlarge-7{height:58.33333%}.grid-y>.xxlarge-8{height:66.66667%}.grid-y>.xxlarge-9{height:75%}.grid-y>.xxlarge-10{height:83.33333%}.grid-y>.xxlarge-11{height:91.66667%}.grid-y>.xxlarge-12{height:100%}}@media screen and (min-width: 118.75em){.grid-y>.huge-auto{-webkit-box-flex:1;-ms-flex:1 1 0px;flex:1 1 0px;height:auto}.grid-y>.huge-shrink,.grid-y>.huge-1,.grid-y>.huge-2,.grid-y>.huge-3,.grid-y>.huge-4,.grid-y>.huge-5,.grid-y>.huge-6,.grid-y>.huge-7,.grid-y>.huge-8,.grid-y>.huge-9,.grid-y>.huge-10,.grid-y>.huge-11,.grid-y>.huge-12{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.grid-y>.huge-shrink{height:auto}.grid-y>.huge-1{height:8.33333%}.grid-y>.huge-2{height:16.66667%}.grid-y>.huge-3{height:25%}.grid-y>.huge-4{height:33.33333%}.grid-y>.huge-5{height:41.66667%}.grid-y>.huge-6{height:50%}.grid-y>.huge-7{height:58.33333%}.grid-y>.huge-8{height:66.66667%}.grid-y>.huge-9{height:75%}.grid-y>.huge-10{height:83.33333%}.grid-y>.huge-11{height:91.66667%}.grid-y>.huge-12{height:100%}}.grid-padding-y .grid-padding-y{margin-top:-.55556rem;margin-bottom:-.55556rem}@media print, screen and (min-width: 46.0625em){.grid-padding-y .grid-padding-y{margin-top:-.83333rem;margin-bottom:-.83333rem}}.grid-padding-y>.cell{padding-top:.55556rem;padding-bottom:.55556rem}@media print, screen and (min-width: 46.0625em){.grid-padding-y>.cell{padding-top:.83333rem;padding-bottom:.83333rem}}.grid-margin-y{margin-top:-.55556rem;margin-bottom:-.55556rem}@media print, screen and (min-width: 46.0625em){.grid-margin-y{margin-top:-.83333rem;margin-bottom:-.83333rem}}.grid-margin-y>.cell{height:calc(100% - 1.11111rem);margin-top:.55556rem;margin-bottom:.55556rem}@media print, screen and (min-width: 46.0625em){.grid-margin-y>.cell{height:calc(100% - 1.66667rem);margin-top:.83333rem;margin-bottom:.83333rem}}.grid-margin-y>.auto{height:auto}.grid-margin-y>.shrink{height:auto}.grid-margin-y>.small-1{height:calc(8.33333% - 1.11111rem)}.grid-margin-y>.small-2{height:calc(16.66667% - 1.11111rem)}.grid-margin-y>.small-3{height:calc(25% - 1.11111rem)}.grid-margin-y>.small-4{height:calc(33.33333% - 1.11111rem)}.grid-margin-y>.small-5{height:calc(41.66667% - 1.11111rem)}.grid-margin-y>.small-6{height:calc(50% - 1.11111rem)}.grid-margin-y>.small-7{height:calc(58.33333% - 1.11111rem)}.grid-margin-y>.small-8{height:calc(66.66667% - 1.11111rem)}.grid-margin-y>.small-9{height:calc(75% - 1.11111rem)}.grid-margin-y>.small-10{height:calc(83.33333% - 1.11111rem)}.grid-margin-y>.small-11{height:calc(91.66667% - 1.11111rem)}.grid-margin-y>.small-12{height:calc(100% - 1.11111rem)}@media print, screen and (min-width: 46.0625em){.grid-margin-y>.auto{height:auto}.grid-margin-y>.shrink{height:auto}.grid-margin-y>.small-1{height:calc(8.33333% - 1.66667rem)}.grid-margin-y>.small-2{height:calc(16.66667% - 1.66667rem)}.grid-margin-y>.small-3{height:calc(25% - 1.66667rem)}.grid-margin-y>.small-4{height:calc(33.33333% - 1.66667rem)}.grid-margin-y>.small-5{height:calc(41.66667% - 1.66667rem)}.grid-margin-y>.small-6{height:calc(50% - 1.66667rem)}.grid-margin-y>.small-7{height:calc(58.33333% - 1.66667rem)}.grid-margin-y>.small-8{height:calc(66.66667% - 1.66667rem)}.grid-margin-y>.small-9{height:calc(75% - 1.66667rem)}.grid-margin-y>.small-10{height:calc(83.33333% - 1.66667rem)}.grid-margin-y>.small-11{height:calc(91.66667% - 1.66667rem)}.grid-margin-y>.small-12{height:calc(100% - 1.66667rem)}.grid-margin-y>.medium-auto{height:auto}.grid-margin-y>.medium-shrink{height:auto}.grid-margin-y>.medium-1{height:calc(8.33333% - 1.66667rem)}.grid-margin-y>.medium-2{height:calc(16.66667% - 1.66667rem)}.grid-margin-y>.medium-3{height:calc(25% - 1.66667rem)}.grid-margin-y>.medium-4{height:calc(33.33333% - 1.66667rem)}.grid-margin-y>.medium-5{height:calc(41.66667% - 1.66667rem)}.grid-margin-y>.medium-6{height:calc(50% - 1.66667rem)}.grid-margin-y>.medium-7{height:calc(58.33333% - 1.66667rem)}.grid-margin-y>.medium-8{height:calc(66.66667% - 1.66667rem)}.grid-margin-y>.medium-9{height:calc(75% - 1.66667rem)}.grid-margin-y>.medium-10{height:calc(83.33333% - 1.66667rem)}.grid-margin-y>.medium-11{height:calc(91.66667% - 1.66667rem)}.grid-margin-y>.medium-12{height:calc(100% - 1.66667rem)}}@media print, screen and (min-width: 48.0625em){.grid-margin-y>.large-auto{height:auto}.grid-margin-y>.large-shrink{height:auto}.grid-margin-y>.large-1{height:calc(8.33333% - 1.66667rem)}.grid-margin-y>.large-2{height:calc(16.66667% - 1.66667rem)}.grid-margin-y>.large-3{height:calc(25% - 1.66667rem)}.grid-margin-y>.large-4{height:calc(33.33333% - 1.66667rem)}.grid-margin-y>.large-5{height:calc(41.66667% - 1.66667rem)}.grid-margin-y>.large-6{height:calc(50% - 1.66667rem)}.grid-margin-y>.large-7{height:calc(58.33333% - 1.66667rem)}.grid-margin-y>.large-8{height:calc(66.66667% - 1.66667rem)}.grid-margin-y>.large-9{height:calc(75% - 1.66667rem)}.grid-margin-y>.large-10{height:calc(83.33333% - 1.66667rem)}.grid-margin-y>.large-11{height:calc(91.66667% - 1.66667rem)}.grid-margin-y>.large-12{height:calc(100% - 1.66667rem)}}@media screen and (min-width: 64.0625em){.grid-margin-y>.xlarge-auto{height:auto}.grid-margin-y>.xlarge-shrink{height:auto}.grid-margin-y>.xlarge-1{height:calc(8.33333% - 1.66667rem)}.grid-margin-y>.xlarge-2{height:calc(16.66667% - 1.66667rem)}.grid-margin-y>.xlarge-3{height:calc(25% - 1.66667rem)}.grid-margin-y>.xlarge-4{height:calc(33.33333% - 1.66667rem)}.grid-margin-y>.xlarge-5{height:calc(41.66667% - 1.66667rem)}.grid-margin-y>.xlarge-6{height:calc(50% - 1.66667rem)}.grid-margin-y>.xlarge-7{height:calc(58.33333% - 1.66667rem)}.grid-margin-y>.xlarge-8{height:calc(66.66667% - 1.66667rem)}.grid-margin-y>.xlarge-9{height:calc(75% - 1.66667rem)}.grid-margin-y>.xlarge-10{height:calc(83.33333% - 1.66667rem)}.grid-margin-y>.xlarge-11{height:calc(91.66667% - 1.66667rem)}.grid-margin-y>.xlarge-12{height:calc(100% - 1.66667rem)}}@media screen and (min-width: 87.5em){.grid-margin-y>.xxlarge-auto{height:auto}.grid-margin-y>.xxlarge-shrink{height:auto}.grid-margin-y>.xxlarge-1{height:calc(8.33333% - 1.66667rem)}.grid-margin-y>.xxlarge-2{height:calc(16.66667% - 1.66667rem)}.grid-margin-y>.xxlarge-3{height:calc(25% - 1.66667rem)}.grid-margin-y>.xxlarge-4{height:calc(33.33333% - 1.66667rem)}.grid-margin-y>.xxlarge-5{height:calc(41.66667% - 1.66667rem)}.grid-margin-y>.xxlarge-6{height:calc(50% - 1.66667rem)}.grid-margin-y>.xxlarge-7{height:calc(58.33333% - 1.66667rem)}.grid-margin-y>.xxlarge-8{height:calc(66.66667% - 1.66667rem)}.grid-margin-y>.xxlarge-9{height:calc(75% - 1.66667rem)}.grid-margin-y>.xxlarge-10{height:calc(83.33333% - 1.66667rem)}.grid-margin-y>.xxlarge-11{height:calc(91.66667% - 1.66667rem)}.grid-margin-y>.xxlarge-12{height:calc(100% - 1.66667rem)}}@media screen and (min-width: 118.75em){.grid-margin-y>.huge-auto{height:auto}.grid-margin-y>.huge-shrink{height:auto}.grid-margin-y>.huge-1{height:calc(8.33333% - 1.66667rem)}.grid-margin-y>.huge-2{height:calc(16.66667% - 1.66667rem)}.grid-margin-y>.huge-3{height:calc(25% - 1.66667rem)}.grid-margin-y>.huge-4{height:calc(33.33333% - 1.66667rem)}.grid-margin-y>.huge-5{height:calc(41.66667% - 1.66667rem)}.grid-margin-y>.huge-6{height:calc(50% - 1.66667rem)}.grid-margin-y>.huge-7{height:calc(58.33333% - 1.66667rem)}.grid-margin-y>.huge-8{height:calc(66.66667% - 1.66667rem)}.grid-margin-y>.huge-9{height:calc(75% - 1.66667rem)}.grid-margin-y>.huge-10{height:calc(83.33333% - 1.66667rem)}.grid-margin-y>.huge-11{height:calc(91.66667% - 1.66667rem)}.grid-margin-y>.huge-12{height:calc(100% - 1.66667rem)}}.grid-frame{overflow:hidden;position:relative;-ms-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-box-align:stretch;-ms-flex-align:stretch;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:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;max-height:100%}.cell-block-container>.grid-x{max-height:100%;-ms-flex-wrap:nowrap;flex-wrap:nowrap}@media print, screen and (min-width: 46.0625em){.medium-grid-frame{overflow:hidden;position:relative;-ms-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-box-align:stretch;-ms-flex-align:stretch;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:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;max-height:100%}.medium-cell-block-container>.grid-x{max-height:100%;-ms-flex-wrap:nowrap;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: 48.0625em){.large-grid-frame{overflow:hidden;position:relative;-ms-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-box-align:stretch;-ms-flex-align:stretch;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:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;max-height:100%}.large-cell-block-container>.grid-x{max-height:100%;-ms-flex-wrap:nowrap;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}}@media screen and (min-width: 64.0625em){.xlarge-grid-frame{overflow:hidden;position:relative;-ms-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch;width:100vw}.cell .xlarge-grid-frame{width:100%}.xlarge-cell-block{overflow-x:auto;max-width:100%;-webkit-overflow-scrolling:touch;-ms-overflow-style:-ms-autohiding-scrollbar}.xlarge-cell-block-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;max-height:100%}.xlarge-cell-block-container>.grid-x{max-height:100%;-ms-flex-wrap:nowrap;flex-wrap:nowrap}.xlarge-cell-block-y{overflow-y:auto;max-height:100%;min-height:100%;-webkit-overflow-scrolling:touch;-ms-overflow-style:-ms-autohiding-scrollbar}}@media screen and (min-width: 87.5em){.xxlarge-grid-frame{overflow:hidden;position:relative;-ms-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch;width:100vw}.cell .xxlarge-grid-frame{width:100%}.xxlarge-cell-block{overflow-x:auto;max-width:100%;-webkit-overflow-scrolling:touch;-ms-overflow-style:-ms-autohiding-scrollbar}.xxlarge-cell-block-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;max-height:100%}.xxlarge-cell-block-container>.grid-x{max-height:100%;-ms-flex-wrap:nowrap;flex-wrap:nowrap}.xxlarge-cell-block-y{overflow-y:auto;max-height:100%;min-height:100%;-webkit-overflow-scrolling:touch;-ms-overflow-style:-ms-autohiding-scrollbar}}@media screen and (min-width: 118.75em){.huge-grid-frame{overflow:hidden;position:relative;-ms-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch;width:100vw}.cell .huge-grid-frame{width:100%}.huge-cell-block{overflow-x:auto;max-width:100%;-webkit-overflow-scrolling:touch;-ms-overflow-style:-ms-autohiding-scrollbar}.huge-cell-block-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;max-height:100%}.huge-cell-block-container>.grid-x{max-height:100%;-ms-flex-wrap:nowrap;flex-wrap:nowrap}.huge-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{width:auto;overflow:hidden;position:relative;-ms-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch;height:100vh}@media print, screen and (min-width: 46.0625em){.grid-y.medium-grid-frame{width:auto;overflow:hidden;position:relative;-ms-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch;height:100vh}}@media print, screen and (min-width: 48.0625em){.grid-y.large-grid-frame{width:auto;overflow:hidden;position:relative;-ms-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch;height:100vh}}@media screen and (min-width: 64.0625em){.grid-y.xlarge-grid-frame{width:auto;overflow:hidden;position:relative;-ms-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch;height:100vh}}@media screen and (min-width: 87.5em){.grid-y.xxlarge-grid-frame{width:auto;overflow:hidden;position:relative;-ms-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch;height:100vh}}@media screen and (min-width: 118.75em){.grid-y.huge-grid-frame{width:auto;overflow:hidden;position:relative;-ms-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch;height:100vh}}.cell .grid-y.grid-frame{height:100%}@media print, screen and (min-width: 46.0625em){.cell .grid-y.medium-grid-frame{height:100%}}@media print, screen and (min-width: 48.0625em){.cell .grid-y.large-grid-frame{height:100%}}@media screen and (min-width: 64.0625em){.cell .grid-y.xlarge-grid-frame{height:100%}}@media screen and (min-width: 87.5em){.cell .grid-y.xxlarge-grid-frame{height:100%}}@media screen and (min-width: 118.75em){.cell .grid-y.huge-grid-frame{height:100%}}.grid-margin-y{margin-top:-.55556rem;margin-bottom:-.55556rem}@media print, screen and (min-width: 46.0625em){.grid-margin-y{margin-top:-.83333rem;margin-bottom:-.83333rem}}.grid-margin-y>.cell{height:calc(100% - 1.11111rem);margin-top:.55556rem;margin-bottom:.55556rem}@media print, screen and (min-width: 46.0625em){.grid-margin-y>.cell{height:calc(100% - 1.66667rem);margin-top:.83333rem;margin-bottom:.83333rem}}.grid-margin-y>.auto{height:auto}.grid-margin-y>.shrink{height:auto}.grid-margin-y>.small-1{height:calc(8.33333% - 1.11111rem)}.grid-margin-y>.small-2{height:calc(16.66667% - 1.11111rem)}.grid-margin-y>.small-3{height:calc(25% - 1.11111rem)}.grid-margin-y>.small-4{height:calc(33.33333% - 1.11111rem)}.grid-margin-y>.small-5{height:calc(41.66667% - 1.11111rem)}.grid-margin-y>.small-6{height:calc(50% - 1.11111rem)}.grid-margin-y>.small-7{height:calc(58.33333% - 1.11111rem)}.grid-margin-y>.small-8{height:calc(66.66667% - 1.11111rem)}.grid-margin-y>.small-9{height:calc(75% - 1.11111rem)}.grid-margin-y>.small-10{height:calc(83.33333% - 1.11111rem)}.grid-margin-y>.small-11{height:calc(91.66667% - 1.11111rem)}.grid-margin-y>.small-12{height:calc(100% - 1.11111rem)}@media print, screen and (min-width: 46.0625em){.grid-margin-y>.auto{height:auto}.grid-margin-y>.shrink{height:auto}.grid-margin-y>.small-1{height:calc(8.33333% - 1.66667rem)}.grid-margin-y>.small-2{height:calc(16.66667% - 1.66667rem)}.grid-margin-y>.small-3{height:calc(25% - 1.66667rem)}.grid-margin-y>.small-4{height:calc(33.33333% - 1.66667rem)}.grid-margin-y>.small-5{height:calc(41.66667% - 1.66667rem)}.grid-margin-y>.small-6{height:calc(50% - 1.66667rem)}.grid-margin-y>.small-7{height:calc(58.33333% - 1.66667rem)}.grid-margin-y>.small-8{height:calc(66.66667% - 1.66667rem)}.grid-margin-y>.small-9{height:calc(75% - 1.66667rem)}.grid-margin-y>.small-10{height:calc(83.33333% - 1.66667rem)}.grid-margin-y>.small-11{height:calc(91.66667% - 1.66667rem)}.grid-margin-y>.small-12{height:calc(100% - 1.66667rem)}.grid-margin-y>.medium-auto{height:auto}.grid-margin-y>.medium-shrink{height:auto}.grid-margin-y>.medium-1{height:calc(8.33333% - 1.66667rem)}.grid-margin-y>.medium-2{height:calc(16.66667% - 1.66667rem)}.grid-margin-y>.medium-3{height:calc(25% - 1.66667rem)}.grid-margin-y>.medium-4{height:calc(33.33333% - 1.66667rem)}.grid-margin-y>.medium-5{height:calc(41.66667% - 1.66667rem)}.grid-margin-y>.medium-6{height:calc(50% - 1.66667rem)}.grid-margin-y>.medium-7{height:calc(58.33333% - 1.66667rem)}.grid-margin-y>.medium-8{height:calc(66.66667% - 1.66667rem)}.grid-margin-y>.medium-9{height:calc(75% - 1.66667rem)}.grid-margin-y>.medium-10{height:calc(83.33333% - 1.66667rem)}.grid-margin-y>.medium-11{height:calc(91.66667% - 1.66667rem)}.grid-margin-y>.medium-12{height:calc(100% - 1.66667rem)}}@media print, screen and (min-width: 48.0625em){.grid-margin-y>.large-auto{height:auto}.grid-margin-y>.large-shrink{height:auto}.grid-margin-y>.large-1{height:calc(8.33333% - 1.66667rem)}.grid-margin-y>.large-2{height:calc(16.66667% - 1.66667rem)}.grid-margin-y>.large-3{height:calc(25% - 1.66667rem)}.grid-margin-y>.large-4{height:calc(33.33333% - 1.66667rem)}.grid-margin-y>.large-5{height:calc(41.66667% - 1.66667rem)}.grid-margin-y>.large-6{height:calc(50% - 1.66667rem)}.grid-margin-y>.large-7{height:calc(58.33333% - 1.66667rem)}.grid-margin-y>.large-8{height:calc(66.66667% - 1.66667rem)}.grid-margin-y>.large-9{height:calc(75% - 1.66667rem)}.grid-margin-y>.large-10{height:calc(83.33333% - 1.66667rem)}.grid-margin-y>.large-11{height:calc(91.66667% - 1.66667rem)}.grid-margin-y>.large-12{height:calc(100% - 1.66667rem)}}@media screen and (min-width: 64.0625em){.grid-margin-y>.xlarge-auto{height:auto}.grid-margin-y>.xlarge-shrink{height:auto}.grid-margin-y>.xlarge-1{height:calc(8.33333% - 1.66667rem)}.grid-margin-y>.xlarge-2{height:calc(16.66667% - 1.66667rem)}.grid-margin-y>.xlarge-3{height:calc(25% - 1.66667rem)}.grid-margin-y>.xlarge-4{height:calc(33.33333% - 1.66667rem)}.grid-margin-y>.xlarge-5{height:calc(41.66667% - 1.66667rem)}.grid-margin-y>.xlarge-6{height:calc(50% - 1.66667rem)}.grid-margin-y>.xlarge-7{height:calc(58.33333% - 1.66667rem)}.grid-margin-y>.xlarge-8{height:calc(66.66667% - 1.66667rem)}.grid-margin-y>.xlarge-9{height:calc(75% - 1.66667rem)}.grid-margin-y>.xlarge-10{height:calc(83.33333% - 1.66667rem)}.grid-margin-y>.xlarge-11{height:calc(91.66667% - 1.66667rem)}.grid-margin-y>.xlarge-12{height:calc(100% - 1.66667rem)}}@media screen and (min-width: 87.5em){.grid-margin-y>.xxlarge-auto{height:auto}.grid-margin-y>.xxlarge-shrink{height:auto}.grid-margin-y>.xxlarge-1{height:calc(8.33333% - 1.66667rem)}.grid-margin-y>.xxlarge-2{height:calc(16.66667% - 1.66667rem)}.grid-margin-y>.xxlarge-3{height:calc(25% - 1.66667rem)}.grid-margin-y>.xxlarge-4{height:calc(33.33333% - 1.66667rem)}.grid-margin-y>.xxlarge-5{height:calc(41.66667% - 1.66667rem)}.grid-margin-y>.xxlarge-6{height:calc(50% - 1.66667rem)}.grid-margin-y>.xxlarge-7{height:calc(58.33333% - 1.66667rem)}.grid-margin-y>.xxlarge-8{height:calc(66.66667% - 1.66667rem)}.grid-margin-y>.xxlarge-9{height:calc(75% - 1.66667rem)}.grid-margin-y>.xxlarge-10{height:calc(83.33333% - 1.66667rem)}.grid-margin-y>.xxlarge-11{height:calc(91.66667% - 1.66667rem)}.grid-margin-y>.xxlarge-12{height:calc(100% - 1.66667rem)}}@media screen and (min-width: 118.75em){.grid-margin-y>.huge-auto{height:auto}.grid-margin-y>.huge-shrink{height:auto}.grid-margin-y>.huge-1{height:calc(8.33333% - 1.66667rem)}.grid-margin-y>.huge-2{height:calc(16.66667% - 1.66667rem)}.grid-margin-y>.huge-3{height:calc(25% - 1.66667rem)}.grid-margin-y>.huge-4{height:calc(33.33333% - 1.66667rem)}.grid-margin-y>.huge-5{height:calc(41.66667% - 1.66667rem)}.grid-margin-y>.huge-6{height:calc(50% - 1.66667rem)}.grid-margin-y>.huge-7{height:calc(58.33333% - 1.66667rem)}.grid-margin-y>.huge-8{height:calc(66.66667% - 1.66667rem)}.grid-margin-y>.huge-9{height:calc(75% - 1.66667rem)}.grid-margin-y>.huge-10{height:calc(83.33333% - 1.66667rem)}.grid-margin-y>.huge-11{height:calc(91.66667% - 1.66667rem)}.grid-margin-y>.huge-12{height:calc(100% - 1.66667rem)}}.grid-frame.grid-margin-y{height:calc(100vh + 1.11111rem)}@media print, screen and (min-width: 46.0625em){.grid-frame.grid-margin-y{height:calc(100vh + 1.66667rem)}}@media print, screen and (min-width: 48.0625em){.grid-frame.grid-margin-y{height:calc(100vh + 1.66667rem)}}@media screen and (min-width: 64.0625em){.grid-frame.grid-margin-y{height:calc(100vh + 1.66667rem)}}@media screen and (min-width: 87.5em){.grid-frame.grid-margin-y{height:calc(100vh + 1.66667rem)}}@media screen and (min-width: 118.75em){.grid-frame.grid-margin-y{height:calc(100vh + 1.66667rem)}}@media print, screen and (min-width: 46.0625em){.grid-margin-y.medium-grid-frame{height:calc(100vh + 1.66667rem)}}@media print, screen and (min-width: 48.0625em){.grid-margin-y.large-grid-frame{height:calc(100vh + 1.66667rem)}}@media screen and (min-width: 64.0625em){.grid-margin-y.xlarge-grid-frame{height:calc(100vh + 1.66667rem)}}@media screen and (min-width: 87.5em){.grid-margin-y.xxlarge-grid-frame{height:calc(100vh + 1.66667rem)}}@media screen and (min-width: 118.75em){.grid-margin-y.huge-grid-frame{height:calc(100vh + 1.66667rem)}}.button{display:inline-block;vertical-align:middle;margin:0 0 1rem 0;padding:0.85em 1em;border:1px solid transparent;border-radius:0;-webkit-transition:background-color 0.25s ease-out,color 0.25s ease-out;transition:background-color 0.25s ease-out,color 0.25s ease-out;font-family:inherit;font-size:0.9rem;-webkit-appearance:none;line-height:1;text-align:center;cursor:pointer;background-color:#2e8fff;color:#fff}[data-whatinput='mouse'] .button{outline:0}.button:hover,.button:focus{background-color:#0177ff;color:#fff}.button.tiny{font-size:.6rem}.button.small{font-size:.75rem}.button.large{font-size:1.25rem}.button.expanded{display:block;width:100%;margin-right:0;margin-left:0}.button.primary{background-color:#2e8fff;color:#000}.button.primary:hover,.button.primary:focus{background-color:#0070f1;color:#000}.button.secondary{background-color:#fff;color:#000}.button.secondary:hover,.button.secondary:focus{background-color:#ccc;color:#000}.button.success{background-color:#3adb76;color:#000}.button.success:hover,.button.success:focus{background-color:#22bb5b;color:#000}.button.warning{background-color:#ffae00;color:#000}.button.warning:hover,.button.warning:focus{background-color:#cc8b00;color:#000}.button.alert{background-color:#cc4b37;color:#000}.button.alert:hover,.button.alert:focus{background-color:#a53b2a;color:#000}.button.disabled,.button[disabled]{opacity:.25;cursor:not-allowed}.button.disabled,.button.disabled:hover,.button.disabled:focus,.button[disabled],.button[disabled]:hover,.button[disabled]:focus{background-color:#2e8fff;color:#fff}.button.disabled.primary,.button[disabled].primary{opacity:.25;cursor:not-allowed}.button.disabled.primary,.button.disabled.primary:hover,.button.disabled.primary:focus,.button[disabled].primary,.button[disabled].primary:hover,.button[disabled].primary:focus{background-color:#2e8fff;color:#000}.button.disabled.secondary,.button[disabled].secondary{opacity:.25;cursor:not-allowed}.button.disabled.secondary,.button.disabled.secondary:hover,.button.disabled.secondary:focus,.button[disabled].secondary,.button[disabled].secondary:hover,.button[disabled].secondary:focus{background-color:#fff;color:#000}.button.disabled.success,.button[disabled].success{opacity:.25;cursor:not-allowed}.button.disabled.success,.button.disabled.success:hover,.button.disabled.success:focus,.button[disabled].success,.button[disabled].success:hover,.button[disabled].success:focus{background-color:#3adb76;color:#000}.button.disabled.warning,.button[disabled].warning{opacity:.25;cursor:not-allowed}.button.disabled.warning,.button.disabled.warning:hover,.button.disabled.warning:focus,.button[disabled].warning,.button[disabled].warning:hover,.button[disabled].warning:focus{background-color:#ffae00;color:#000}.button.disabled.alert,.button[disabled].alert{opacity:.25;cursor:not-allowed}.button.disabled.alert,.button.disabled.alert:hover,.button.disabled.alert:focus,.button[disabled].alert,.button[disabled].alert:hover,.button[disabled].alert:focus{background-color:#cc4b37;color:#000}.button.hollow{border:1px solid #2e8fff;color:#2e8fff}.button.hollow,.button.hollow:hover,.button.hollow:focus{background-color:transparent}.button.hollow.disabled,.button.hollow.disabled:hover,.button.hollow.disabled:focus,.button.hollow[disabled],.button.hollow[disabled]:hover,.button.hollow[disabled]:focus{background-color:transparent}.button.hollow:hover,.button.hollow:focus{border-color:#004697;color:#004697}.button.hollow:hover.disabled,.button.hollow:hover[disabled],.button.hollow:focus.disabled,.button.hollow:focus[disabled]{border:1px solid #2e8fff;color:#2e8fff}.button.hollow.primary{border:1px solid #2e8fff;color:#2e8fff}.button.hollow.primary:hover,.button.hollow.primary:focus{border-color:#004697;color:#004697}.button.hollow.primary:hover.disabled,.button.hollow.primary:hover[disabled],.button.hollow.primary:focus.disabled,.button.hollow.primary:focus[disabled]{border:1px solid #2e8fff;color:#2e8fff}.button.hollow.secondary{border:1px solid #fff;color:#fff}.button.hollow.secondary:hover,.button.hollow.secondary:focus{border-color:gray;color:gray}.button.hollow.secondary:hover.disabled,.button.hollow.secondary:hover[disabled],.button.hollow.secondary:focus.disabled,.button.hollow.secondary:focus[disabled]{border:1px solid #fff;color:#fff}.button.hollow.success{border:1px solid #3adb76;color:#3adb76}.button.hollow.success:hover,.button.hollow.success:focus{border-color:#157539;color:#157539}.button.hollow.success:hover.disabled,.button.hollow.success:hover[disabled],.button.hollow.success:focus.disabled,.button.hollow.success:focus[disabled]{border:1px solid #3adb76;color:#3adb76}.button.hollow.warning{border:1px solid #ffae00;color:#ffae00}.button.hollow.warning:hover,.button.hollow.warning:focus{border-color:#805700;color:#805700}.button.hollow.warning:hover.disabled,.button.hollow.warning:hover[disabled],.button.hollow.warning:focus.disabled,.button.hollow.warning:focus[disabled]{border:1px solid #ffae00;color:#ffae00}.button.hollow.alert{border:1px solid #cc4b37;color:#cc4b37}.button.hollow.alert:hover,.button.hollow.alert:focus{border-color:#67251a;color:#67251a}.button.hollow.alert:hover.disabled,.button.hollow.alert:hover[disabled],.button.hollow.alert:focus.disabled,.button.hollow.alert:focus[disabled]{border:1px solid #cc4b37;color:#cc4b37}.button.clear{border:1px solid #2e8fff;color:#2e8fff}.button.clear,.button.clear:hover,.button.clear:focus{background-color:transparent}.button.clear.disabled,.button.clear.disabled:hover,.button.clear.disabled:focus,.button.clear[disabled],.button.clear[disabled]:hover,.button.clear[disabled]:focus{background-color:transparent}.button.clear:hover,.button.clear:focus{border-color:#004697;color:#004697}.button.clear:hover.disabled,.button.clear:hover[disabled],.button.clear:focus.disabled,.button.clear:focus[disabled]{border:1px solid #2e8fff;color:#2e8fff}.button.clear,.button.clear.disabled,.button.clear[disabled],.button.clear:hover,.button.clear:hover.disabled,.button.clear:hover[disabled],.button.clear:focus,.button.clear:focus.disabled,.button.clear:focus[disabled]{border-color:transparent}.button.clear.primary{border:1px solid #2e8fff;color:#2e8fff}.button.clear.primary:hover,.button.clear.primary:focus{border-color:#004697;color:#004697}.button.clear.primary:hover.disabled,.button.clear.primary:hover[disabled],.button.clear.primary:focus.disabled,.button.clear.primary:focus[disabled]{border:1px solid #2e8fff;color:#2e8fff}.button.clear.primary,.button.clear.primary.disabled,.button.clear.primary[disabled],.button.clear.primary:hover,.button.clear.primary:hover.disabled,.button.clear.primary:hover[disabled],.button.clear.primary:focus,.button.clear.primary:focus.disabled,.button.clear.primary:focus[disabled]{border-color:transparent}.button.clear.secondary{border:1px solid #fff;color:#fff}.button.clear.secondary:hover,.button.clear.secondary:focus{border-color:gray;color:gray}.button.clear.secondary:hover.disabled,.button.clear.secondary:hover[disabled],.button.clear.secondary:focus.disabled,.button.clear.secondary:focus[disabled]{border:1px solid #fff;color:#fff}.button.clear.secondary,.button.clear.secondary.disabled,.button.clear.secondary[disabled],.button.clear.secondary:hover,.button.clear.secondary:hover.disabled,.button.clear.secondary:hover[disabled],.button.clear.secondary:focus,.button.clear.secondary:focus.disabled,.button.clear.secondary:focus[disabled]{border-color:transparent}.button.clear.success{border:1px solid #3adb76;color:#3adb76}.button.clear.success:hover,.button.clear.success:focus{border-color:#157539;color:#157539}.button.clear.success:hover.disabled,.button.clear.success:hover[disabled],.button.clear.success:focus.disabled,.button.clear.success:focus[disabled]{border:1px solid #3adb76;color:#3adb76}.button.clear.success,.button.clear.success.disabled,.button.clear.success[disabled],.button.clear.success:hover,.button.clear.success:hover.disabled,.button.clear.success:hover[disabled],.button.clear.success:focus,.button.clear.success:focus.disabled,.button.clear.success:focus[disabled]{border-color:transparent}.button.clear.warning{border:1px solid #ffae00;color:#ffae00}.button.clear.warning:hover,.button.clear.warning:focus{border-color:#805700;color:#805700}.button.clear.warning:hover.disabled,.button.clear.warning:hover[disabled],.button.clear.warning:focus.disabled,.button.clear.warning:focus[disabled]{border:1px solid #ffae00;color:#ffae00}.button.clear.warning,.button.clear.warning.disabled,.button.clear.warning[disabled],.button.clear.warning:hover,.button.clear.warning:hover.disabled,.button.clear.warning:hover[disabled],.button.clear.warning:focus,.button.clear.warning:focus.disabled,.button.clear.warning:focus[disabled]{border-color:transparent}.button.clear.alert{border:1px solid #cc4b37;color:#cc4b37}.button.clear.alert:hover,.button.clear.alert:focus{border-color:#67251a;color:#67251a}.button.clear.alert:hover.disabled,.button.clear.alert:hover[disabled],.button.clear.alert:focus.disabled,.button.clear.alert:focus[disabled]{border:1px solid #cc4b37;color:#cc4b37}.button.clear.alert,.button.clear.alert.disabled,.button.clear.alert[disabled],.button.clear.alert:hover,.button.clear.alert:hover.disabled,.button.clear.alert:hover[disabled],.button.clear.alert:focus,.button.clear.alert:focus.disabled,.button.clear.alert:focus[disabled]{border-color:transparent}.button.dropdown::after{display:block;width:0;height:0;border:inset .4em;content:'';border-bottom-width:0;border-top-style:solid;border-color:#fff transparent transparent;position:relative;top:0.4em;display:inline-block;float:right;margin-left:1em}.button.dropdown.hollow::after,.button.dropdown.clear::after{border-top-color:#2e8fff}.button.dropdown.hollow.primary::after,.button.dropdown.clear.primary::after{border-top-color:#2e8fff}.button.dropdown.hollow.secondary::after,.button.dropdown.clear.secondary::after{border-top-color:#fff}.button.dropdown.hollow.success::after,.button.dropdown.clear.success::after{border-top-color:#3adb76}.button.dropdown.hollow.warning::after,.button.dropdown.clear.warning::after{border-top-color:#ffae00}.button.dropdown.hollow.alert::after,.button.dropdown.clear.alert::after{border-top-color:#cc4b37}.button.arrow-only::after{top:-0.1em;float:none;margin-left:0}a.button:hover,a.button:focus{text-decoration:none}table{border-collapse:collapse;width:100%;margin-bottom:1rem;border-radius:0}thead,tbody,tfoot{border:1px solid #f2f2f2;background-color:#fff}caption{padding:.44444rem .55556rem .55556rem;font-weight:bold}thead{background:#f9f9f9;color:#000}tfoot{background:#f2f2f2;color:#000}thead tr,tfoot tr{background:transparent}thead th,thead td,tfoot th,tfoot td{padding:.44444rem .55556rem .55556rem;font-weight:bold;text-align:left}tbody th,tbody td{padding:.44444rem .55556rem .55556rem}tbody tr:nth-child(even){border-bottom:0;background-color:#f2f2f2}table.unstriped tbody{background-color:#fff}table.unstriped tbody tr{border-bottom:0;border-bottom:1px solid #f2f2f2;background-color:#fff}@media screen and (max-width: 48.06125em){table.stack thead{display:none}table.stack tfoot{display:none}table.stack tr,table.stack th,table.stack td{display:block}table.stack td{border-top:0}}table.scroll{display:block;width:100%;overflow-x:auto}table.hover thead tr:hover{background-color:#f4f4f4}table.hover tfoot tr:hover{background-color:#ededed}table.hover tbody tr:hover{background-color:#fafafa}table.hover:not(.unstriped) tr:nth-of-type(even):hover{background-color:#ededed}.table-scroll{overflow-x:auto}.accordion{margin-left:0;background:#fff;list-style-type:none}.accordion[disabled] .accordion-title{cursor:not-allowed}.accordion-item:first-child>:first-child{border-radius:0 0 0 0}.accordion-item:last-child>:last-child{border-radius:0 0 0 0}.accordion-title{position:relative;display:block;padding:1.25rem 1rem;border:1px solid #f1f3f3;border-bottom:0;font-size:.66667rem;line-height:1;color:#2e8fff}:last-child:not(.is-active)>.accordion-title{border-bottom:1px solid #f1f3f3;border-radius:0 0 0 0}.accordion-title:hover,.accordion-title:focus{background-color:#f1f3f3}.accordion-title::before{position:absolute;top:50%;right:1rem;margin-top:-0.5rem;content:'+'}.is-active>.accordion-title::before{content:'\2013'}.accordion-content{display:none;padding:1rem;border:1px solid #f1f3f3;border-bottom:0;background-color:#fff;color:#000}:last-child>.accordion-content:last-child{border-bottom:1px solid #f1f3f3}.responsive-embed,.flex-video{position:relative;height:0;margin-bottom:.88889rem;padding-bottom:75%;overflow:hidden}.responsive-embed iframe,.responsive-embed object,.responsive-embed embed,.responsive-embed video,.flex-video iframe,.flex-video object,.flex-video embed,.flex-video video{position:absolute;top:0;left:0;width:100%;height:100%}.responsive-embed.widescreen,.flex-video.widescreen{padding-bottom:56.25%}.menu{padding:0;margin:0;list-style:none;position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}[data-whatinput='mouse'] .menu li{outline:0}.menu a,.menu .button{line-height:1;text-decoration:none;display:block;padding:0.7rem 1rem}.menu input,.menu select,.menu a,.menu button{margin-bottom:0}.menu input{display:inline-block}.menu,.menu.horizontal{-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.menu.vertical{-ms-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.menu.expanded li{-webkit-box-flex:1;-ms-flex:1 1 0px;flex:1 1 0px}.menu.simple{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.menu.simple li+li{margin-left:1rem}.menu.simple a{padding:0}@media print, screen and (min-width: 46.0625em){.menu.medium-horizontal{-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.menu.medium-vertical{-ms-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.menu.medium-expanded li{-webkit-box-flex:1;-ms-flex:1 1 0px;flex:1 1 0px}.menu.medium-simple li{-webkit-box-flex:1;-ms-flex:1 1 0px;flex:1 1 0px}}@media print, screen and (min-width: 48.0625em){.menu.large-horizontal{-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.menu.large-vertical{-ms-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.menu.large-expanded li{-webkit-box-flex:1;-ms-flex:1 1 0px;flex:1 1 0px}.menu.large-simple li{-webkit-box-flex:1;-ms-flex:1 1 0px;flex:1 1 0px}}@media screen and (min-width: 64.0625em){.menu.xlarge-horizontal{-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.menu.xlarge-vertical{-ms-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.menu.xlarge-expanded li{-webkit-box-flex:1;-ms-flex:1 1 0px;flex:1 1 0px}.menu.xlarge-simple li{-webkit-box-flex:1;-ms-flex:1 1 0px;flex:1 1 0px}}@media screen and (min-width: 87.5em){.menu.xxlarge-horizontal{-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.menu.xxlarge-vertical{-ms-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.menu.xxlarge-expanded li{-webkit-box-flex:1;-ms-flex:1 1 0px;flex:1 1 0px}.menu.xxlarge-simple li{-webkit-box-flex:1;-ms-flex:1 1 0px;flex:1 1 0px}}@media screen and (min-width: 118.75em){.menu.huge-horizontal{-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.menu.huge-vertical{-ms-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.menu.huge-expanded li{-webkit-box-flex:1;-ms-flex:1 1 0px;flex:1 1 0px}.menu.huge-simple li{-webkit-box-flex:1;-ms-flex:1 1 0px;flex:1 1 0px}}.menu.nested{margin-right:0;margin-left:1rem}.menu.icons a{display:-webkit-box;display:-ms-flexbox;display:flex}.menu.icon-top a,.menu.icon-right a,.menu.icon-bottom a,.menu.icon-left a{display:-webkit-box;display:-ms-flexbox;display:flex}.menu.icon-left li a{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-flow:row nowrap;flex-flow:row nowrap}.menu.icon-left li a img,.menu.icon-left li a i,.menu.icon-left li a svg{margin-right:.25rem}.menu.icon-right li a{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-flow:row nowrap;flex-flow:row nowrap}.menu.icon-right li a img,.menu.icon-right li a i,.menu.icon-right li a svg{margin-left:.25rem}.menu.icon-top li a{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-flow:column nowrap;flex-flow:column nowrap}.menu.icon-top li a img,.menu.icon-top li a i,.menu.icon-top li a svg{-ms-flex-item-align:stretch;align-self:stretch;margin-bottom:.25rem;text-align:center}.menu.icon-bottom li a{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-flow:column nowrap;flex-flow:column nowrap}.menu.icon-bottom li a img,.menu.icon-bottom li a i,.menu.icon-bottom li a svg{-ms-flex-item-align:stretch;align-self:stretch;margin-bottom:.25rem;text-align:center}.menu .is-active>a{background:#2e8fff;color:#fff}.menu .active>a{background:#2e8fff;color:#fff}.menu.align-left{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.menu.align-right li{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.menu.align-right li .submenu li{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.menu.align-right.vertical li{display:block;text-align:right}.menu.align-right.vertical li .submenu li{text-align:right}.menu.align-right .nested{margin-right:1rem;margin-left:0}.menu.align-center li{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.menu.align-center li .submenu li{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.menu .menu-text{padding:0.7rem 1rem;font-weight:bold;line-height:1;color:inherit}.menu-centered>.menu{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.menu-centered>.menu li{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.menu-centered>.menu li .submenu li{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.no-js [data-responsive-menu] ul{display:none}.dropdown.menu>li.opens-left>.is-dropdown-submenu{top:100%;right:0;left:auto}.dropdown.menu>li.opens-right>.is-dropdown-submenu{top:100%;right:auto;left:0}.dropdown.menu>li.is-dropdown-submenu-parent>a{position:relative;padding-right:1.5rem}.dropdown.menu>li.is-dropdown-submenu-parent>a::after{display:block;width:0;height:0;border:inset 6px;content:'';border-bottom-width:0;border-top-style:solid;border-color:#2e8fff transparent transparent;right:5px;left:auto;margin-top:-3px}[data-whatinput='mouse'] .dropdown.menu a{outline:0}.dropdown.menu>li>a{padding:0.7rem 1rem}.dropdown.menu>li.is-active>a{background:rgba(0,0,0,0);color:#2e8fff}.no-js .dropdown.menu ul{display:none}.dropdown.menu .nested.is-dropdown-submenu{margin-right:0;margin-left:0}.dropdown.menu.vertical>li .is-dropdown-submenu{top:0}.dropdown.menu.vertical>li.opens-left>.is-dropdown-submenu{top:0;right:100%;left:auto}.dropdown.menu.vertical>li.opens-right>.is-dropdown-submenu{right:auto;left:100%}.dropdown.menu.vertical>li>a::after{right:14px}.dropdown.menu.vertical>li.opens-left>a::after{display:block;width:0;height:0;border:inset 6px;content:'';border-left-width:0;border-right-style:solid;border-color:transparent #2e8fff transparent transparent;right:auto;left:5px}.dropdown.menu.vertical>li.opens-right>a::after{display:block;width:0;height:0;border:inset 6px;content:'';border-right-width:0;border-left-style:solid;border-color:transparent transparent transparent #2e8fff}@media print, screen and (min-width: 46.0625em){.dropdown.menu.medium-horizontal>li.opens-left>.is-dropdown-submenu{top:100%;right:0;left:auto}.dropdown.menu.medium-horizontal>li.opens-right>.is-dropdown-submenu{top:100%;right:auto;left:0}.dropdown.menu.medium-horizontal>li.is-dropdown-submenu-parent>a{position:relative;padding-right:1.5rem}.dropdown.menu.medium-horizontal>li.is-dropdown-submenu-parent>a::after{display:block;width:0;height:0;border:inset 6px;content:'';border-bottom-width:0;border-top-style:solid;border-color:#2e8fff transparent transparent;right:5px;left:auto;margin-top:-3px}.dropdown.menu.medium-vertical>li .is-dropdown-submenu{top:0}.dropdown.menu.medium-vertical>li.opens-left>.is-dropdown-submenu{top:0;right:100%;left:auto}.dropdown.menu.medium-vertical>li.opens-right>.is-dropdown-submenu{right:auto;left:100%}.dropdown.menu.medium-vertical>li>a::after{right:14px}.dropdown.menu.medium-vertical>li.opens-left>a::after{display:block;width:0;height:0;border:inset 6px;content:'';border-left-width:0;border-right-style:solid;border-color:transparent #2e8fff transparent transparent;right:auto;left:5px}.dropdown.menu.medium-vertical>li.opens-right>a::after{display:block;width:0;height:0;border:inset 6px;content:'';border-right-width:0;border-left-style:solid;border-color:transparent transparent transparent #2e8fff}}@media print, screen and (min-width: 48.0625em){.dropdown.menu.large-horizontal>li.opens-left>.is-dropdown-submenu{top:100%;right:0;left:auto}.dropdown.menu.large-horizontal>li.opens-right>.is-dropdown-submenu{top:100%;right:auto;left:0}.dropdown.menu.large-horizontal>li.is-dropdown-submenu-parent>a{position:relative;padding-right:1.5rem}.dropdown.menu.large-horizontal>li.is-dropdown-submenu-parent>a::after{display:block;width:0;height:0;border:inset 6px;content:'';border-bottom-width:0;border-top-style:solid;border-color:#2e8fff transparent transparent;right:5px;left:auto;margin-top:-3px}.dropdown.menu.large-vertical>li .is-dropdown-submenu{top:0}.dropdown.menu.large-vertical>li.opens-left>.is-dropdown-submenu{top:0;right:100%;left:auto}.dropdown.menu.large-vertical>li.opens-right>.is-dropdown-submenu{right:auto;left:100%}.dropdown.menu.large-vertical>li>a::after{right:14px}.dropdown.menu.large-vertical>li.opens-left>a::after{display:block;width:0;height:0;border:inset 6px;content:'';border-left-width:0;border-right-style:solid;border-color:transparent #2e8fff transparent transparent;right:auto;left:5px}.dropdown.menu.large-vertical>li.opens-right>a::after{display:block;width:0;height:0;border:inset 6px;content:'';border-right-width:0;border-left-style:solid;border-color:transparent transparent transparent #2e8fff}}@media screen and (min-width: 64.0625em){.dropdown.menu.xlarge-horizontal>li.opens-left>.is-dropdown-submenu{top:100%;right:0;left:auto}.dropdown.menu.xlarge-horizontal>li.opens-right>.is-dropdown-submenu{top:100%;right:auto;left:0}.dropdown.menu.xlarge-horizontal>li.is-dropdown-submenu-parent>a{position:relative;padding-right:1.5rem}.dropdown.menu.xlarge-horizontal>li.is-dropdown-submenu-parent>a::after{display:block;width:0;height:0;border:inset 6px;content:'';border-bottom-width:0;border-top-style:solid;border-color:#2e8fff transparent transparent;right:5px;left:auto;margin-top:-3px}.dropdown.menu.xlarge-vertical>li .is-dropdown-submenu{top:0}.dropdown.menu.xlarge-vertical>li.opens-left>.is-dropdown-submenu{top:0;right:100%;left:auto}.dropdown.menu.xlarge-vertical>li.opens-right>.is-dropdown-submenu{right:auto;left:100%}.dropdown.menu.xlarge-vertical>li>a::after{right:14px}.dropdown.menu.xlarge-vertical>li.opens-left>a::after{display:block;width:0;height:0;border:inset 6px;content:'';border-left-width:0;border-right-style:solid;border-color:transparent #2e8fff transparent transparent;right:auto;left:5px}.dropdown.menu.xlarge-vertical>li.opens-right>a::after{display:block;width:0;height:0;border:inset 6px;content:'';border-right-width:0;border-left-style:solid;border-color:transparent transparent transparent #2e8fff}}@media screen and (min-width: 87.5em){.dropdown.menu.xxlarge-horizontal>li.opens-left>.is-dropdown-submenu{top:100%;right:0;left:auto}.dropdown.menu.xxlarge-horizontal>li.opens-right>.is-dropdown-submenu{top:100%;right:auto;left:0}.dropdown.menu.xxlarge-horizontal>li.is-dropdown-submenu-parent>a{position:relative;padding-right:1.5rem}.dropdown.menu.xxlarge-horizontal>li.is-dropdown-submenu-parent>a::after{display:block;width:0;height:0;border:inset 6px;content:'';border-bottom-width:0;border-top-style:solid;border-color:#2e8fff transparent transparent;right:5px;left:auto;margin-top:-3px}.dropdown.menu.xxlarge-vertical>li .is-dropdown-submenu{top:0}.dropdown.menu.xxlarge-vertical>li.opens-left>.is-dropdown-submenu{top:0;right:100%;left:auto}.dropdown.menu.xxlarge-vertical>li.opens-right>.is-dropdown-submenu{right:auto;left:100%}.dropdown.menu.xxlarge-vertical>li>a::after{right:14px}.dropdown.menu.xxlarge-vertical>li.opens-left>a::after{display:block;width:0;height:0;border:inset 6px;content:'';border-left-width:0;border-right-style:solid;border-color:transparent #2e8fff transparent transparent;right:auto;left:5px}.dropdown.menu.xxlarge-vertical>li.opens-right>a::after{display:block;width:0;height:0;border:inset 6px;content:'';border-right-width:0;border-left-style:solid;border-color:transparent transparent transparent #2e8fff}}@media screen and (min-width: 118.75em){.dropdown.menu.huge-horizontal>li.opens-left>.is-dropdown-submenu{top:100%;right:0;left:auto}.dropdown.menu.huge-horizontal>li.opens-right>.is-dropdown-submenu{top:100%;right:auto;left:0}.dropdown.menu.huge-horizontal>li.is-dropdown-submenu-parent>a{position:relative;padding-right:1.5rem}.dropdown.menu.huge-horizontal>li.is-dropdown-submenu-parent>a::after{display:block;width:0;height:0;border:inset 6px;content:'';border-bottom-width:0;border-top-style:solid;border-color:#2e8fff transparent transparent;right:5px;left:auto;margin-top:-3px}.dropdown.menu.huge-vertical>li .is-dropdown-submenu{top:0}.dropdown.menu.huge-vertical>li.opens-left>.is-dropdown-submenu{top:0;right:100%;left:auto}.dropdown.menu.huge-vertical>li.opens-right>.is-dropdown-submenu{right:auto;left:100%}.dropdown.menu.huge-vertical>li>a::after{right:14px}.dropdown.menu.huge-vertical>li.opens-left>a::after{display:block;width:0;height:0;border:inset 6px;content:'';border-left-width:0;border-right-style:solid;border-color:transparent #2e8fff transparent transparent;right:auto;left:5px}.dropdown.menu.huge-vertical>li.opens-right>a::after{display:block;width:0;height:0;border:inset 6px;content:'';border-right-width:0;border-left-style:solid;border-color:transparent transparent transparent #2e8fff}}.dropdown.menu.align-right .is-dropdown-submenu.first-sub{top:100%;right:0;left:auto}.is-dropdown-menu.vertical{width:100px}.is-dropdown-menu.vertical.align-right{float:right}.is-dropdown-submenu-parent{position:relative}.is-dropdown-submenu-parent a::after{position:absolute;top:50%;right:5px;left:auto;margin-top:-6px}.is-dropdown-submenu-parent.opens-inner>.is-dropdown-submenu{top:100%;left:auto}.is-dropdown-submenu-parent.opens-left>.is-dropdown-submenu{right:100%;left:auto}.is-dropdown-submenu-parent.opens-right>.is-dropdown-submenu{right:auto;left:100%}.is-dropdown-submenu{position:absolute;top:0;left:100%;z-index:1;display:none;min-width:200px;border:1px solid #cacaca;background:#fff}.dropdown .is-dropdown-submenu a{padding:0.7rem 1rem}.is-dropdown-submenu .is-dropdown-submenu-parent>a::after{right:14px}.is-dropdown-submenu .is-dropdown-submenu-parent.opens-left>a::after{display:block;width:0;height:0;border:inset 6px;content:'';border-left-width:0;border-right-style:solid;border-color:transparent #2e8fff transparent transparent;right:auto;left:5px}.is-dropdown-submenu .is-dropdown-submenu-parent.opens-right>a::after{display:block;width:0;height:0;border:inset 6px;content:'';border-right-width:0;border-left-style:solid;border-color:transparent transparent transparent #2e8fff}.is-dropdown-submenu .is-dropdown-submenu{margin-top:-1px}.is-dropdown-submenu>li{width:100%}.is-dropdown-submenu.js-dropdown-active{display:block}.align-left{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.align-right{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.align-center{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.align-justify{-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.align-spaced{-ms-flex-pack:distribute;justify-content:space-around}.align-left.vertical.menu>li>a{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.align-right.vertical.menu>li>a{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.align-center.vertical.menu>li>a{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.align-top{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.align-self-top{-ms-flex-item-align:start;align-self:flex-start}.align-bottom{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end}.align-self-bottom{-ms-flex-item-align:end;align-self:flex-end}.align-middle{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.align-self-middle{-ms-flex-item-align:center;align-self:center}.align-stretch{-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch}.align-self-stretch{-ms-flex-item-align:stretch;align-self:stretch}.align-center-middle{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-ms-flex-line-pack:center;align-content:center}.small-order-1{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.small-order-2{-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.small-order-3{-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.small-order-4{-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.small-order-5{-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.small-order-6{-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}@media print, screen and (min-width: 46.0625em){.medium-order-1{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.medium-order-2{-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.medium-order-3{-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.medium-order-4{-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.medium-order-5{-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.medium-order-6{-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}}@media print, screen and (min-width: 48.0625em){.large-order-1{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.large-order-2{-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.large-order-3{-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.large-order-4{-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.large-order-5{-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.large-order-6{-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}}@media screen and (min-width: 64.0625em){.xlarge-order-1{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.xlarge-order-2{-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.xlarge-order-3{-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.xlarge-order-4{-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.xlarge-order-5{-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.xlarge-order-6{-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}}@media screen and (min-width: 87.5em){.xxlarge-order-1{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.xxlarge-order-2{-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.xxlarge-order-3{-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.xxlarge-order-4{-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.xxlarge-order-5{-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.xxlarge-order-6{-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}}@media screen and (min-width: 118.75em){.huge-order-1{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.huge-order-2{-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.huge-order-3{-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.huge-order-4{-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.huge-order-5{-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.huge-order-6{-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}}.flex-container{display:-webkit-box;display:-ms-flexbox;display:flex}.flex-child-auto{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto}.flex-child-grow{-webkit-box-flex:1;-ms-flex:1 0 auto;flex:1 0 auto}.flex-child-shrink{-webkit-box-flex:0;-ms-flex:0 1 auto;flex:0 1 auto}.flex-dir-row{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.flex-dir-row-reverse{-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.flex-dir-column{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.flex-dir-column-reverse{-webkit-box-orient:vertical;-webkit-box-direction:reverse;-ms-flex-direction:column-reverse;flex-direction:column-reverse}@media print, screen and (min-width: 46.0625em){.medium-flex-container{display:-webkit-box;display:-ms-flexbox;display:flex}.medium-flex-child-auto{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto}.medium-flex-child-grow{-webkit-box-flex:1;-ms-flex:1 0 auto;flex:1 0 auto}.medium-flex-child-shrink{-webkit-box-flex:0;-ms-flex:0 1 auto;flex:0 1 auto}.medium-flex-dir-row{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.medium-flex-dir-row-reverse{-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.medium-flex-dir-column{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.medium-flex-dir-column-reverse{-webkit-box-orient:vertical;-webkit-box-direction:reverse;-ms-flex-direction:column-reverse;flex-direction:column-reverse}}@media print, screen and (min-width: 48.0625em){.large-flex-container{display:-webkit-box;display:-ms-flexbox;display:flex}.large-flex-child-auto{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto}.large-flex-child-grow{-webkit-box-flex:1;-ms-flex:1 0 auto;flex:1 0 auto}.large-flex-child-shrink{-webkit-box-flex:0;-ms-flex:0 1 auto;flex:0 1 auto}.large-flex-dir-row{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.large-flex-dir-row-reverse{-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.large-flex-dir-column{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.large-flex-dir-column-reverse{-webkit-box-orient:vertical;-webkit-box-direction:reverse;-ms-flex-direction:column-reverse;flex-direction:column-reverse}}@media screen and (min-width: 64.0625em){.xlarge-flex-container{display:-webkit-box;display:-ms-flexbox;display:flex}.xlarge-flex-child-auto{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto}.xlarge-flex-child-grow{-webkit-box-flex:1;-ms-flex:1 0 auto;flex:1 0 auto}.xlarge-flex-child-shrink{-webkit-box-flex:0;-ms-flex:0 1 auto;flex:0 1 auto}.xlarge-flex-dir-row{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.xlarge-flex-dir-row-reverse{-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.xlarge-flex-dir-column{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.xlarge-flex-dir-column-reverse{-webkit-box-orient:vertical;-webkit-box-direction:reverse;-ms-flex-direction:column-reverse;flex-direction:column-reverse}}@media screen and (min-width: 87.5em){.xxlarge-flex-container{display:-webkit-box;display:-ms-flexbox;display:flex}.xxlarge-flex-child-auto{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto}.xxlarge-flex-child-grow{-webkit-box-flex:1;-ms-flex:1 0 auto;flex:1 0 auto}.xxlarge-flex-child-shrink{-webkit-box-flex:0;-ms-flex:0 1 auto;flex:0 1 auto}.xxlarge-flex-dir-row{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.xxlarge-flex-dir-row-reverse{-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.xxlarge-flex-dir-column{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.xxlarge-flex-dir-column-reverse{-webkit-box-orient:vertical;-webkit-box-direction:reverse;-ms-flex-direction:column-reverse;flex-direction:column-reverse}}@media screen and (min-width: 118.75em){.huge-flex-container{display:-webkit-box;display:-ms-flexbox;display:flex}.huge-flex-child-auto{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto}.huge-flex-child-grow{-webkit-box-flex:1;-ms-flex:1 0 auto;flex:1 0 auto}.huge-flex-child-shrink{-webkit-box-flex:0;-ms-flex:0 1 auto;flex:0 1 auto}.huge-flex-dir-row{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.huge-flex-dir-row-reverse{-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.huge-flex-dir-column{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.huge-flex-dir-column-reverse{-webkit-box-orient:vertical;-webkit-box-direction:reverse;-ms-flex-direction:column-reverse;flex-direction:column-reverse}}.hide{display:none !important}.invisible{visibility:hidden}@media screen and (max-width: 46.06125em){.hide-for-small-only{display:none !important}}@media screen and (max-width: 0em), screen and (min-width: 46.0625em){.show-for-small-only{display:none !important}}@media print, screen and (min-width: 46.0625em){.hide-for-medium{display:none !important}}@media screen and (max-width: 46.06125em){.show-for-medium{display:none !important}}@media screen and (min-width: 46.0625em) and (max-width: 48.06125em){.hide-for-medium-only{display:none !important}}@media screen and (max-width: 46.06125em), screen and (min-width: 48.0625em){.show-for-medium-only{display:none !important}}@media print, screen and (min-width: 48.0625em){.hide-for-large{display:none !important}}@media screen and (max-width: 48.06125em){.show-for-large{display:none !important}}@media screen and (min-width: 48.0625em) and (max-width: 64.06125em){.hide-for-large-only{display:none !important}}@media screen and (max-width: 48.06125em), screen and (min-width: 64.0625em){.show-for-large-only{display:none !important}}@media screen and (min-width: 64.0625em){.hide-for-xlarge{display:none !important}}@media screen and (max-width: 64.06125em){.show-for-xlarge{display:none !important}}@media screen and (min-width: 64.0625em) and (max-width: 87.49875em){.hide-for-xlarge-only{display:none !important}}@media screen and (max-width: 64.06125em), screen and (min-width: 87.5em){.show-for-xlarge-only{display:none !important}}@media screen and (min-width: 87.5em){.hide-for-xxlarge{display:none !important}}@media screen and (max-width: 87.49875em){.show-for-xxlarge{display:none !important}}@media screen and (min-width: 87.5em) and (max-width: 118.74875em){.hide-for-xxlarge-only{display:none !important}}@media screen and (max-width: 87.49875em), screen and (min-width: 118.75em){.show-for-xxlarge-only{display:none !important}}@media screen and (min-width: 118.75em){.hide-for-huge{display:none !important}}@media screen and (max-width: 118.74875em){.show-for-huge{display:none !important}}@media screen and (min-width: 118.75em){.hide-for-huge-only{display:none !important}}@media screen and (max-width: 118.74875em){.show-for-huge-only{display:none !important}}.show-for-sr,.show-on-focus{position:absolute !important;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0}.show-on-focus:active,.show-on-focus:focus{position:static !important;width:auto;height:auto;overflow:visible;clip:auto;white-space:normal}.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}}body,html{overflow-x:hidden;height:100%}header .grid-container,main .grid-container,footer .grid-container{padding:0}@media print, screen and (min-width: 46.0625em){header .grid-container,main .grid-container,footer .grid-container{padding:0 1.5rem}}@media screen and (min-width: 64.0625em){header .grid-container,main .grid-container,footer .grid-container{padding:0 56px}}@media screen and (min-width: 87.5em){header .grid-container,main .grid-container,footer .grid-container{padding:0}}section{margin-bottom:0px}@media screen and (min-width: 64.0625em){section{margin-bottom:50px}}.is-dropdown-submenu-parent.opens-right>.is-dropdown-submenu{top:auto !important;left:0 !important}.is-dropdown-submenu-parent.opens-right>.is-dropdown-submenu li a{color:#000;text-align:left;font-size:90%;font-weight:normal}.is-dropdown-submenu-parent.opens-right>.is-dropdown-submenu li a:hover{background:rgba(46,143,255,0.1)}.is-dropdown-submenu-parent.opens-right>.is-dropdown-submenu li+li a{border-top:1px solid rgba(46,143,255,0.1)}.is-dropdown-submenu-parent.opens-left>.is-dropdown-submenu{top:auto !important;right:0 !important}.is-dropdown-submenu-parent.opens-left>.is-dropdown-submenu li a{color:#000;text-align:left;font-size:90%;font-weight:normal}.is-dropdown-submenu-parent.opens-left>.is-dropdown-submenu li a:hover{background:rgba(46,143,255,0.1)}.is-dropdown-submenu-parent.opens-left>.is-dropdown-submenu li+li a{border-top:1px solid rgba(46,143,255,0.1)}.mobilemenu li{width:100%;text-align:left}.mobilemenu li>a{padding-left:0}.mobilemenu li.is-dropdown-submenu-parent:after{content:"";width:8px;height:8px;display:inline-block;border-right:solid 2px;border-bottom:solid 2px;-webkit-transform:rotate(45deg);transform:rotate(45deg);border-color:#2f8fff;position:absolute;right:20px;top:16px}.mobilemenu li.is-dropdown-submenu-parent>a{width:auto;display:inline-block;position:relative;padding-left:0}.mobilemenu .is-dropdown-submenu{display:none}.google-maps iframe{width:100%}.terms-social{background:#2e8fff;padding:30px 0}.terms-social a{color:#fff}.terms-social__terms{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;list-style:none;margin:0;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;padding-bottom:35px}.terms-social__terms li:not(:last-child){padding-right:20px}@media print, screen and (min-width: 46.0625em){.terms-social__terms{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start;padding-bottom:0}}.terms-social__socials{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;list-style:none;margin:0;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.terms-social__socials li:not(:last-child){padding-right:20px}.terms-social__socials a{font-size:290%}.terms-social__socials a.icon-instagram-circle{font-size:312%}@media print, screen and (min-width: 46.0625em){.terms-social__socials{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}}.menu-contact{background:#f1f3f3;padding:15px 0 15px 0;text-align:center}@media print, screen and (min-width: 46.0625em){.menu-contact{text-align:initial;padding:75px 0 55px 0}}.menu-contact__menu{display:-webkit-box;display:-ms-flexbox;display:flex;list-style:none;padding-top:20px;padding-bottom:20px;margin:0;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}@media print, screen and (min-width: 46.0625em){.menu-contact__menu{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;padding-top:30px;padding-bottom:50px}}.menu-contact__menu>li{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;padding-right:1rem}.menu-contact__menu>li>a{font-weight:bold;font-size:20px;display:block;color:#000}.menu-contact__submenu{list-style:none;margin:0}.menu-contact__submenu li{margin-top:12px}.menu-contact__content{color:#2e8fff}@media print, screen and (min-width: 46.0625em){.menu-contact__content{padding-left:15px}}.menu-contact__phone{font-size:170%}.menu-contact__container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;padding-top:20px;padding-bottom:20px}@media print, screen and (min-width: 46.0625em){.menu-contact__container{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;border-left:2px solid #e2e2e2;padding-top:30px;padding-bottom:50px}}.menu-contact__heading{font-size:20px;font-weight:bold;color:#000}.favourites-menu{width:100%;right:-100%;position:fixed;z-index:4;-webkit-transition:right 0.5s ease-in;transition:right 0.5s ease-in;background:#fff;-webkit-box-shadow:0 0 25px 0 rgba(0,0,0,0.1);box-shadow:0 0 25px 0 rgba(0,0,0,0.1);height:100%;top:0;padding:2%;overflow-x:hidden}@media print, screen and (min-width: 46.0625em){.favourites-menu{width:100%;right:-100%;padding:4%}}@media print, screen and (min-width: 48.0625em){.favourites-menu{padding:6%}}@media screen and (min-width: 64.0625em){.favourites-menu{max-width:1166px;right:-1166px}}.favourites-menu--open{width:100%;height:100%;right:0;-webkit-transition:right 0.4s ease-out;transition:right 0.4s ease-out;overflow-y:auto;padding-bottom:50px;z-index:999}.favourites-menu--open .favourites-menu__cta{margin-left:-4%;margin-bottom:-0.2%}@media print, screen and (min-width: 46.0625em){.favourites-menu--open{max-width:100%;position:fixed}}@media screen and (min-width: 64.0625em){.favourites-menu--open{max-width:1166px}}.favourites-menu__heading{text-align:left;margin-top:20px}@media print, screen and (min-width: 46.0625em){.favourites-menu__heading{margin-top:0px;font-size:40px}}.favourites-menu__top-content{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline;margin-bottom:-30px;position:absolute;margin-top:60px}@media print, screen and (min-width: 46.0625em){.favourites-menu__top-content{margin-bottom:25px;position:initial;margin-top:unset}}.favourites-menu__top-content button{text-transform:uppercase;opacity:0.8;cursor:pointer;border-left:1px solid rgba(0,0,0,0.1);margin-left:8px;padding-left:10px;color:#2D8FFF}@media print, screen and (min-width: 46.0625em){.favourites-menu__top-content button{margin-left:13px;padding-left:13px}}.favourites-menu__top-content button:hover{color:#2D8FFF}.favourites-menu__cta{position:fixed;bottom:0;width:100%;margin-left:-0.1%;margin-bottom:-0.2%;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;padding:15px 25px 15px 25px;-webkit-box-shadow:0 -5px 5px -5px rgba(0,0,0,0.1);box-shadow:0 -5px 5px -5px rgba(0,0,0,0.1);display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0);z-index:1000;background:#fff}@media print, screen and (min-width: 48.0625em){.favourites-menu__cta{background:unset;position:unset;bottom:unset;width:unset;margin-left:unset;margin-bottom:unset;z-index:unset;display:unset;margin:unset;padding:unset;-webkit-box-shadow:unset;box-shadow:unset}}.favourites-menu__cta .button{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;font-size:18px;color:#2D8FFF;background:#F0F0F0;margin:0;border-radius:100px;text-transform:uppercase;padding:0.6em 1.5em;border-left:none}.favourites-menu__cta .button:hover,.favourites-menu__cta .button:focus{background-color:#dbdbdb}.favourites-menu__cta .button svg{margin-right:10px;width:27px;height:27px;margin-top:4px}.favourites-menu ul{list-style:none}.favourites-menu ul .method-list{padding:0}@media print, screen and (min-width: 46.0625em){.favourites-menu ul .method-list:nth-child(odd){padding:0 0.6rem 0 0}.favourites-menu ul .method-list:nth-child(even){padding:0 0 0 0.6rem}}.favourites-menu ul .method-list-item{margin-bottom:50px}.favourites-menu ul .method-list-item a{padding:0}.favourites-menu ul .method-list-item h4{color:#000;text-align:left}.favourites-menu ul .method-list-item__text{font-weight:400;color:#000;text-align:left}.favourites-menu ul .method-list-item__cta{font-weight:400;text-align:left}.favourite-overlay--open{background:rgba(0,0,0,0.7);display:-webkit-box;display:-ms-flexbox;display:flex;position:fixed;top:0;left:0;width:100%;height:100%;z-index:999}@media print{div{-webkit-column-break-inside:avoid;-moz-column-break-inside:avoid;break-inside:avoid;display:table}}.btn-close{position:absolute;right:32px;top:32px;width:20px;height:20px;opacity:0.8;cursor:pointer}.btn-close:hover{opacity:1}@media print, screen and (min-width: 46.0625em){.btn-close:hover:before{-webkit-transform:rotate(-45deg);transform:rotate(-45deg);-webkit-transition:-webkit-transform 0.3s;transition:-webkit-transform 0.3s;transition:transform 0.3s;transition:transform 0.3s, -webkit-transform 0.3s}.btn-close:hover:after{-webkit-transform:rotate(45deg);transform:rotate(45deg);-webkit-transition:-webkit-transform 0.3s;transition:-webkit-transform 0.3s;transition:transform 0.3s;transition:transform 0.3s, -webkit-transform 0.3s}}.btn-close:before,.btn-close:after{position:absolute;left:15px;content:' ';height:30px;width:2px;background-color:#2D8FFF}@media print, screen and (min-width: 46.0625em){.btn-close:before,.btn-close:after{height:20px}}.btn-close:before{-webkit-transform:rotate(45deg);transform:rotate(45deg);-webkit-transition:-webkit-transform 0.3s;transition:-webkit-transform 0.3s;transition:transform 0.3s;transition:transform 0.3s, -webkit-transform 0.3s}.btn-close:after{-webkit-transform:rotate(-45deg);transform:rotate(-45deg);-webkit-transition:-webkit-transform 0.3s;transition:-webkit-transform 0.3s;transition:transform 0.3s;transition:transform 0.3s, -webkit-transform 0.3s}.button--fixed-contact-btn{position:fixed;bottom:0;right:30px;border-radius:50px;padding:15px 35px;z-index:2}.event-time{background:#2e8fff;text-align:center;font-size:20px;line-height:1}.event-time__date{color:white;font-weight:300;text-transform:uppercase;padding:40px 0}.event-time__date>*{display:block}.event-time__date-numeric{font-weight:bold;font-size:34px;margin:5px 0}.event-time__duration{padding:15px;color:#2e8fff;background:#f0f0f0;font-weight:800}@media (min-width: 500px){.event-list-item{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}}.event-list-item__cal{margin-bottom:20px}@media (min-width: 500px){.event-list-item__cal{width:160px;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;margin-bottom:0}}.event-list-item__content{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;-ms-flex-negative:1;flex-shrink:1;margin-left:40px}.event-list-item__title{font-size:30px;margin-bottom:0}.event-list-item__location{font-size:20px;font-weight:bold;color:#1a1a1a}.event-list-item__description{font-size:18px;font-weight:normal;color:#4a4a4a}.umbraco-forms-label{font-weight:bold}.umbraco-forms-form .btn{background:white;border:1px solid #d9d9d9;cursor:pointer;padding:3px 10px}.umbraco-forms-form .field-validation-error{display:block;color:red}.umbraco-forms-form legend{font-weight:bold}.umbraco-forms-form input[type="text"]{margin-bottom:0}.umbraco-forms-form input[type="checkbox"]{display:none !important}.umbraco-forms-form input[type="checkbox"]+label{padding-left:20px;position:relative}.umbraco-forms-form input[type="checkbox"]+label:before{content:'';position:absolute;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%);left:0;width:14px;height:14px;border:1px solid #d9d9d9;border-radius:20%}.umbraco-forms-form input[type="checkbox"]:checked+label:after{content:'';position:absolute;top:50%;left:5px;width:4px;height:7px;border-bottom:1px solid black;border-right:1px solid black;z-index:1;-webkit-transform:translateY(-50%) rotate(45deg);transform:translateY(-50%) rotate(45deg)}.umbraco-forms-field{margin-bottom:20px}.coc-form.umbraco-forms{background-color:#fff;color:#000;padding:0}.coc-form.umbraco-forms-submitmessage{display:block;background:#fff;padding:50px 20px;text-align:center;font-weight:bold;font-size:2rem}.coc-form.umbraco-forms .field-validation-error{display:block;color:#e74c3c}.coc-form.umbraco-forms .input-validation-error{border:2px solid #e74c3c !important;color:#e74c3c}.coc-form.umbraco-forms--grey{padding:30px;background:#f0f0f0}.coc-form.umbraco-forms--grey input[type="radio"]:checked+label::after,.coc-form.umbraco-forms--grey input[type="radio"]+label::after,.coc-form.umbraco-forms--grey input[type="checkbox"]:checked+label::after,.coc-form.umbraco-forms--grey input[type="checkbox"]+label::after{background-color:#fff !important}.coc-form.umbraco-forms--blue{background:#2e8fff;color:#fff}.coc-form.umbraco-forms--blue .field-validation-error{color:#FFAA14}.coc-form.umbraco-forms--blue .input-validation-error,.coc-form.umbraco-forms--blue input[type="radio"]:not(:checked).input-validation-error+label,.coc-form.umbraco-forms--blue input[type="radio"]:checked.input-validation-error+label,.coc-form.umbraco-forms--blue input[type="checkbox"]:not(:checked).input-validation-error+label,.coc-form.umbraco-forms--blue input[type="checkbox"]:checked.input-validation-error+label,.coc-form.umbraco-forms--blue .checkboxlist input{border:2px solid #FFAA14 !important;color:#FFAA14}.coc-form.umbraco-forms--blue input[type="submit"]{background-color:#fff !important;color:#000 !important}.coc-form.umbraco-forms--blue input[type="submit"]:hover{background-color:#f0f0f0 !important}.coc-form.umbraco-forms--blue input[type="file"]+label{background-color:#fff !important;color:#000 !important}.coc-form.umbraco-forms--blue input[type="file"]:focus+label,.coc-form.umbraco-forms--blue input[type="file"]+label:hover{background-color:#f0f0f0 !important}.coc-form.umbraco-forms--purpel{padding:30px;background:#370037;color:#fff}.coc-form.umbraco-forms--purpel input[type="submit"]{background-color:#fff !important;color:#000 !important}.coc-form.umbraco-forms--purpel input[type="submit"]:hover{background-color:#f0f0f0 !important}.coc-form.umbraco-forms--purpel input[type="file"]+label{background-color:#fff !important;color:#000 !important}.coc-form.umbraco-forms--purpel input[type="file"]:focus+label,.coc-form.umbraco-forms--purpel input[type="file"]+label:hover{background-color:#f0f0f0 !important}.coc-form.umbraco-forms--yellow{padding:30px;background:#efc76b;color:#fff}.coc-form.umbraco-forms--yellow input[type="submit"]{background-color:#fff !important;color:#000 !important}.coc-form.umbraco-forms--yellow input[type="submit"]:hover{background-color:#f0f0f0 !important}.coc-form.umbraco-forms--yellow input[type="file"]+label{background-color:#fff !important;color:#000 !important}.coc-form.umbraco-forms--yellow input[type="file"]:focus+label,.coc-form.umbraco-forms--yellow input[type="file"]+label:hover{background-color:#f0f0f0 !important}.coc-form.umbraco-forms-label{font-weight:bold;color:currentColor;font-size:1rem}.coc-form.umbraco-forms select,.coc-form.umbraco-forms [type='text'],.coc-form.umbraco-forms [type='password'],.coc-form.umbraco-forms [type='date'],.coc-form.umbraco-forms [type='datetime'],.coc-form.umbraco-forms [type='datetime-local'],.coc-form.umbraco-forms [type='email'],.coc-form.umbraco-forms [type='number'],.coc-form.umbraco-forms textarea{border:1px solid #ccc;-webkit-box-shadow:none;box-shadow:none;height:50px;font-size:1rem;padding:0 20px;margin-bottom:5px;border-radius:3px}.coc-form.umbraco-forms select:focus,.coc-form.umbraco-forms [type='text']:focus,.coc-form.umbraco-forms [type='password']:focus,.coc-form.umbraco-forms [type='date']:focus,.coc-form.umbraco-forms [type='datetime']:focus,.coc-form.umbraco-forms [type='datetime-local']:focus,.coc-form.umbraco-forms [type='email']:focus,.coc-form.umbraco-forms [type='number']:focus,.coc-form.umbraco-forms textarea:focus{border:2px solid #ccc}.coc-form.umbraco-forms textarea{height:150px;padding:10px 20px}.coc-form.umbraco-forms input[type="radio"]:not(:checked),.coc-form.umbraco-forms input[type="radio"]:checked,.coc-form.umbraco-forms input[type="checkbox"]:not(:checked),.coc-form.umbraco-forms input[type="checkbox"]:checked,.coc-form.umbraco-forms .checkboxlist input{position:absolute;left:-9999px;visibility:hidden;opacity:0}.coc-form.umbraco-forms input[type="radio"]:not(:checked).input-validation-error+label,.coc-form.umbraco-forms input[type="radio"]:checked.input-validation-error+label,.coc-form.umbraco-forms input[type="checkbox"]:not(:checked).input-validation-error+label,.coc-form.umbraco-forms input[type="checkbox"]:checked.input-validation-error+label,.coc-form.umbraco-forms .checkboxlist input.input-validation-error+label{border:2px solid #e74c3c !important}.coc-form.umbraco-forms input[type="radio"]:not(:checked)+label:hover::before,.coc-form.umbraco-forms input[type="radio"]:checked+label:hover::before,.coc-form.umbraco-forms input[type="checkbox"]:not(:checked)+label:hover::before,.coc-form.umbraco-forms input[type="checkbox"]:checked+label:hover::before,.coc-form.umbraco-forms .checkboxlist input+label:hover::before{opacity:.3}.coc-form.umbraco-forms input[type="radio"]+label,.coc-form.umbraco-forms input[type="checkbox"]+label{display:inline-block;width:100%;padding:0;padding-left:35px;margin:0;font-size:1rem;margin-bottom:8px;position:relative;cursor:pointer;z-index:2;overflow:hidden;-webkit-transition:color .2s ease-in-out;transition:color .2s ease-in-out;border-radius:3px}.coc-form.umbraco-forms input[type="radio"]+label::before,.coc-form.umbraco-forms input[type="radio"]+label:after,.coc-form.umbraco-forms input[type="checkbox"]+label::before,.coc-form.umbraco-forms input[type="checkbox"]+label:after{width:25px;height:25px;content:'';margin-top:2px;border:none;background-color:#f1f3f3;background-repeat:no-repeat;background-position:3px 4px;z-index:2;position:absolute;left:0;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%);cursor:pointer;-webkit-transition:all 200ms ease-in;transition:all 200ms ease-in;border-radius:3px}.coc-form.umbraco-forms input[type="radio"]+label::before,.coc-form.umbraco-forms input[type="checkbox"]+label::before{background-image:url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 25 25' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5.414 11L4 12.414l5.414 5.414L20.828 6.414 19.414 5l-10 10z' fill='%23ffffff' fill-rule='nonzero'/%3E%3C/svg%3E ");opacity:0;z-index:3;background-color:#008fff}.coc-form.umbraco-forms input[type="radio"]:checked+label:hover::before,.coc-form.umbraco-forms input[type="radio"]:checked+label:before,.coc-form.umbraco-forms input[type="checkbox"]:checked+label:hover::before,.coc-form.umbraco-forms input[type="checkbox"]:checked+label:before{opacity:1}.coc-form.umbraco-forms input[type="radio"]+label::after,.coc-form.umbraco-forms input[type="radio"]+label::before{border-radius:50%}.coc-form.umbraco-forms-field{margin-bottom:20px}.coc-form.umbraco-forms input[type="submit"]{margin:0;border-radius:100px;text-transform:uppercase;padding:1.2em 1.5em;-webkit-transition:all ease-in-out 350ms;transition:all ease-in-out 350ms;display:inline-block;vertical-align:middle;border:1px solid transparent;font-family:inherit;font-size:0.9rem;line-height:1;text-align:center;cursor:pointer;background-color:#2e8fff;color:#fff}.coc-form.umbraco-forms input[type="submit"]:hover{background-color:#0478ff}.coc-form.umbraco-forms input[type="file"]{width:0.1px;height:0.1px;opacity:0;overflow:hidden;position:absolute;z-index:-1}.coc-form.umbraco-forms input[type="file"]+label{margin:10px 0 0;border-radius:100px;text-transform:uppercase;padding:1.2em 1.5em;-webkit-transition:all ease-in-out 350ms;transition:all ease-in-out 350ms;display:inline-block;vertical-align:middle;border:1px solid transparent;font-family:inherit;font-size:0.9rem;font-weight:bold;line-height:1;text-align:center;cursor:pointer;background-color:#2e8fff;color:#fff}.coc-form.umbraco-forms input[type="file"]:focus+label,.coc-form.umbraco-forms input[type="file"]+label:hover{background-color:#0478ff}.pika-single .pika-table tr,.pika-single .pika-table thead,.pika-single .pika-table tbody{border:none;background:transparent !important}.pika-single .pika-table th{color:#000;font-size:14px}.pika-single .pika-table .pika-button{background:transparent;font-size:14px;text-align:center}.pika-single .pika-table .pika-button:hover{color:#fff;background:#ff8000;-webkit-box-shadow:none;box-shadow:none;border-radius:3px}.pika-single .pika-table .is-selected .pika-button{color:#fff;font-weight:bold;background:#2e8fff;-webkit-box-shadow:inset 0 1px 3px #178fe5;box-shadow:inset 0 1px 3px #178fe5;border-radius:3px}.member-type-item{background:#F2F3F3;padding:30px 30px 30px}.member-type-item__title{text-transform:uppercase;font-size:18px;display:block;margin:0}@media print, screen and (min-width: 46.0625em){.member-type-item__title{display:inline-block}}.member-type-item__price{font-size:16px;display:block;margin-bottom:0.5rem}@media print, screen and (min-width: 46.0625em){.member-type-item__price{padding-left:15px;display:inline-block;margin-left:17px;line-height:31px;border-left:1px solid #c4c4c4}}.member-type-item__description{font-size:14px;margin:0}@media print, screen and (min-width: 48.0625em){.member-type-item__description{font-size:16px}}.member-type-item__top{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.member-type-item__info{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:1;flex-shrink:1;width:100%}@media print, screen and (min-width: 46.0625em){.member-type-item__info{width:60%}}@media print, screen and (min-width: 48.0625em){.member-type-item__info{width:70%}}.member-type-item__expander{height:0;position:relative;overflow:hidden;-webkit-transition:height 0.3s ease-in-out;transition:height 0.3s ease-in-out}.member-type-item__expander-inner{padding-top:30px;position:absolute;bottom:0;width:100%;left:0}@media print, screen and (min-width: 46.0625em){.member-type-item__expander-inner{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-wrap:wrap;flex-wrap:wrap}}.member-type-item__section-checkmark{width:25px;height:25px;border-radius:50%;position:relative;display:inline-block;vertical-align:middle;margin-right:10px}.member-type-item__section-checkmark:after{content:'';position:absolute;width:5px;height:11px;border-bottom:1px solid white;border-right:1px solid white;display:block;top:50%;left:50%;-webkit-transform-origin:center;transform-origin:center;-webkit-transform:translate(-60%, -60%) rotate(45deg);transform:translate(-60%, -60%) rotate(45deg)}.member-type-item__list-section{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;-webkit-box-sizing:border-box;box-sizing:border-box;width:100%}@media print, screen and (min-width: 46.0625em){.member-type-item__list-section{width:calc(50% - 30px)}}@media screen and (min-width: 64.0625em){.member-type-item__list-section{width:100%}}@media screen and (min-width: 87.5em){.member-type-item__list-section{width:calc(50% - 30px)}}.member-type-item__list-section h4{margin-bottom:20px;font-size:16px}.member-type-item__list-section:not(:last-child){margin-bottom:30px}@media print, screen and (min-width: 46.0625em){.member-type-item__list-section:not(:last-child){margin-bottom:0}}@media screen and (min-width: 64.0625em){.member-type-item__list-section:not(:last-child){margin-bottom:30px}}@media screen and (min-width: 87.5em){.member-type-item__list-section:not(:last-child){margin-bottom:0}}.member-type-item__list-section--obligations .member-type-item__list-item:before{background-color:#380038}.member-type-item__list-section--obligations .member-type-item__section-checkmark{background-color:#380038}.member-type-item__list-section--benefits .member-type-item__list-item:before{background-color:#2e8fff}.member-type-item__list-section--benefits .member-type-item__section-checkmark{background-color:#2e8fff}.member-type-item__list{margin:0;list-style:none}.member-type-item__list-item{padding-left:30px;position:relative;font-size:14px}.member-type-item__list-item:before{content:'';width:6px;height:6px;border-radius:50%;display:inline-block;position:absolute;left:10px;top:10px}.member-type-item__list-item:not(:last-child){margin-bottom:5px}.member-type-item__list-item.member-type-item__list-item--unavailable{color:#B2B2B2;text-decoration:line-through}.member-type-item__list-item.member-type-item__list-item--unavailable:before{background-color:#B2B2B2}.member-type-item__toggle-btn{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;cursor:pointer;position:relative;right:-30px;background:#2e8fff;height:53px;width:53px;color:white}@media print, screen and (min-width: 46.0625em){.member-type-item__toggle-btn{width:auto;padding:0 60px}}@media screen and (min-width: 64.0625em){.member-type-item__toggle-btn{width:53px;padding:0}}@media screen and (min-width: 87.5em){.member-type-item__toggle-btn{right:-50px;padding:0 60px;width:auto}}.member-type-item__toggle-btn:before{content:'';width:14px;height:14px;border-left:2px solid white;border-top:2px solid white;-webkit-transform-origin:31% 31%;transform-origin:31% 31%;-webkit-transform:translateY(25%) rotate(225deg);transform:translateY(25%) rotate(225deg);display:inline-block;-webkit-transition:-webkit-transform 0.2s ease-in-out 0.1s;transition:-webkit-transform 0.2s ease-in-out 0.1s;transition:transform 0.2s ease-in-out 0.1s;transition:transform 0.2s ease-in-out 0.1s, -webkit-transform 0.2s ease-in-out 0.1s;margin-left:5px}@media print, screen and (min-width: 46.0625em){.member-type-item__toggle-btn:before{margin-right:20px;margin-left:0}}@media screen and (min-width: 64.0625em){.member-type-item__toggle-btn:before{margin-right:0;margin-left:5px}}@media screen and (min-width: 87.5em){.member-type-item__toggle-btn:before{margin-right:20px;margin-left:0}}.member-type-item__toggle-btn__text{display:none}@media print, screen and (min-width: 46.0625em){.member-type-item__toggle-btn__text{display:inline-block}}@media screen and (min-width: 64.0625em){.member-type-item__toggle-btn__text{display:none}}@media screen and (min-width: 87.5em){.member-type-item__toggle-btn__text{display:inline-block}}.member-type-item--open .member-type-item__toggle-btn:before{-webkit-transform:translateY(25%) rotate(45deg);transform:translateY(25%) rotate(45deg)}.method-list-item{position:relative;margin-bottom:30px}@media print{.method-list-item{display:inline}.method-list-item h4,.method-list-item p{page-break-inside:avoid}}@media print, screen and (min-width: 46.0625em){.method-list-item{margin-bottom:80px}}.method-list-item__text{min-height:70px}.method-list-item a{text-decoration:none;color:#000}.method-list-item a .method-list-item__image{margin-bottom:20px}.method-list-item a h4{font-size:20px}@media print, screen and (min-width: 46.0625em){.method-list-item a h4{font-size:30px}}.method-list-item a img{width:100%}.method-list-item__cta .button{color:#fff;margin:0;border-radius:100px;text-transform:uppercase;font-size:14px;padding:0.95em 1.8em}@media print, screen and (min-width: 46.0625em){.method-list-item__cta .button{font-size:16px;padding:1.05em 2.7em}}.method-list{padding:0 0.6rem}.method-list ul{list-style:none}.method-list__load-more{margin:0 auto 70px auto}.method-list__load-more .button{border-radius:100px;background:#F0F0F0;color:#2e8fff;text-transform:uppercase;padding:1.05em 2.7em}.method-list__load-more .button:hover,.method-list__load-more .button:focus{background:#dbdbdb}.favourite-btn{position:absolute;margin:20px;right:0;cursor:pointer}.favourite-btn__btn{background:#FFFFFF;border-radius:50px;padding:0.65rem;cursor:pointer}@media print, screen and (min-width: 48.0625em){.favourite-btn__btn{padding:0.9rem 0.8rem 0.7rem 0.8rem}}.favourite-btn__btn svg{width:23px;height:23px}@media print, screen and (min-width: 48.0625em){.favourite-btn__btn svg{width:30px;height:30px}}.favourite-btn .heart-icon-filled{display:none}.favourite-btn .heart-icon-outline{display:block}.favourite-btn--fav .heart-icon-outline{display:none}.favourite-btn--fav .heart-icon-filled{display:block}.favourite-btn--fav .favourite-btn__label--not-fav{display:none}.favourite-btn--fav .favourite-btn__label--fav{display:block}.favourite-btn__label{font-size:18px;margin-left:1rem}.favourite-btn__label--not-fav{display:block}.favourite-btn__label--fav{display:none}.coc-feature-section{background:transparent !important;padding:1rem 0rem}@media print, screen and (min-width: 48.0625em){.coc-feature-section .grid-container{paddding:0 56px !important}}@media screen and (min-width: 64.0625em){.coc-feature-section{padding-top:40px}}.coc-feature-section--expanded{padding:0}@media screen and (min-width: 64.0625em){.coc-feature-section--expanded{padding:50px 0}}.coc-feature-section__media-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-line-pack:center;align-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.coc-feature-section__cta a{margin:0;border-radius:100px;text-transform:uppercase;padding:1.2em 1.5em;-webkit-transition:all ease-in-out 350ms;transition:all ease-in-out 350ms}.coc-feature-section__cta a:hover{opacity:.8}.coc-feature-section__heading{margin:0 0 1.2rem}.coc-feature-section__heading h2{margin:0}@media screen and (max-width: 48.06125em){.coc-feature-section__heading h2.h3{font-size:1.5rem}}.coc-feature-section__body{margin:0 0 1.55rem}.coc-feature-section__body p:last-child{margin:0}.coc-feature-section__media{position:relative;max-width:100%;width:100%}.coc-feature-section__media .slick-list{overflow:hidden}.coc-feature-section__media img{width:100%;-webkit-transform:scale(1.02);transform:scale(1.02)}.coc-feature-section__media .slick-slide{overflow:hidden;height:auto}.coc-feature-section__media:before{background-color:inherit;position:absolute;bottom:-40px;width:100%;height:100%;z-index:-1;content:''}.coc-feature-section__content{padding:2rem 1.5rem 1.5rem}@media screen and (min-width: 64.0625em){.coc-feature-section__content{padding:50px}}.coc-feature-section .slick-dots{position:absolute;top:50%;width:16px;margin:0;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.coc-feature-section .slick-dots li{width:16px;height:16px;background:#f1f3f3;border-radius:50%;cursor:pointer;list-style:none;margin:8px 0;-webkit-transition:all ease-in-out 200ms;transition:all ease-in-out 200ms}.coc-feature-section .slick-dots li.slick-active{background:#2e8fff}.coc-feature-section .slick-dots li:hover{background:#94c6ff}.coc-feature-section .slick-dots li button{font-size:1;opacity:0}.coc-feature-section:nth-child(odd) .grid-x{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.coc-feature-section:nth-child(odd) .coc-feature-section__media:before{right:-40px !important}.coc-feature-section:nth-child(odd) .coc-feature-section__content{padding-left:50px}.coc-feature-section:nth-child(odd) .slick-dots{left:-36px}.coc-feature-section:nth-child(odd) .coc-feature-section--expanded{margin-left:50px}.coc-feature-section:nth-child(odd) .coc-feature-section--expanded .coc-feature-section__media{margin-left:-50px}@media screen and (min-width: 64.0625em){.coc-feature-section:nth-child(odd) .coc-feature-section--expanded .coc-feature-section__content{padding-right:50px}}.coc-feature-section:nth-child(even) .grid-x{-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.coc-feature-section:nth-child(even) .coc-feature-section__media:before{left:-40px}@media screen and (min-width: 64.0625em){.coc-feature-section:nth-child(even) .coc-feature-section__content{padding-right:50px}}.coc-feature-section:nth-child(even) .slick-dots{right:-36px}.coc-feature-section:nth-child(even) .coc-feature-section--expanded{margin-right:50px}.coc-feature-section:nth-child(even) .coc-feature-section--expanded .coc-feature-section__media{margin-right:-50px}.coc-feature-section:nth-child(even) .coc-feature-section--expanded .coc-feature-section__media:before{display:none}@media screen and (min-width: 64.0625em){.coc-feature-section:nth-child(even) .coc-feature-section--expanded .coc-feature-section__content{padding-right:0;padding-left:50px}}.coc-feature-section--left .grid-x{-webkit-box-orient:horizontal !important;-webkit-box-direction:normal !important;-ms-flex-direction:row !important;flex-direction:row !important}@media screen and (max-width: 87.49875em){.coc-feature-section--left .coc-feature-section__media-wrapper{padding-left:3rem;margin:0}}.coc-feature-section--left .coc-feature-section__media:before{right:-40px !important;left:auto !important}@media screen and (max-width: 87.49875em){.coc-feature-section--left .coc-feature-section__media:before{right:-20px !important;bottom:-20px}}@media screen and (min-width: 64.0625em){.coc-feature-section--left .coc-feature-section__content{padding-right:0 !important;padding-left:50px !important}}.coc-feature-section--left .slick-dots{right:auto !important;left:-36px !important}@media screen and (max-width: 87.49875em){.coc-feature-section--left .slick-dots{left:-30.5px !important}}.coc-feature-section--left .coc-feature-section--expanded{margin-right:0 !important;margin-left:50px !important}@media screen and (max-width: 87.49875em){.coc-feature-section--left .coc-feature-section--expanded .coc-feature-section__media-wrapper{padding-left:0rem;margin:0}}.coc-feature-section--left .coc-feature-section--expanded .coc-feature-section__media{margin-right:0 !important;margin-left:-50px !important}.coc-feature-section--left .coc-feature-section--expanded .coc-feature-section__media:before{display:none}@media screen and (max-width: 64.06125em){.coc-feature-section--left .coc-feature-section--expanded .coc-feature-section__media{margin-left:0 !important}}@media screen and (min-width: 64.0625em){.coc-feature-section--left .coc-feature-section--expanded .coc-feature-section__content{padding-right:50px !important;padding-left:20px !important}}.coc-feature-section--right .grid-x{-webkit-box-orient:horizontal !important;-webkit-box-direction:reverse !important;-ms-flex-direction:row-reverse !important;flex-direction:row-reverse !important}@media screen and (max-width: 87.49875em){.coc-feature-section--right .coc-feature-section__media-wrapper{padding-right:3rem;margin:0}}.coc-feature-section--right .coc-feature-section__media:before{right:auto !important;left:-40px !important}@media screen and (max-width: 87.49875em){.coc-feature-section--right .coc-feature-section__media:before{left:-20px !important;bottom:-20px}}@media screen and (min-width: 64.0625em){.coc-feature-section--right .coc-feature-section__content{padding-right:50px !important;padding-left:0 !important}}.coc-feature-section--right .slick-dots{left:auto !important;right:-36px !important}@media screen and (max-width: 87.49875em){.coc-feature-section--right .slick-dots{right:-28.5px !important}}.coc-feature-section--right .coc-feature-section--expanded{margin-right:50px !important;margin-left:0 !important}.coc-feature-section--right .coc-feature-section--expanded .coc-feature-section__media{margin-right:-50px !important;margin-left:50px !important}@media screen and (max-width: 64.06125em){.coc-feature-section--right .coc-feature-section--expanded .coc-feature-section__media{margin-left:0 !important}}.coc-feature-section--right .coc-feature-section--expanded .coc-feature-section__media:before{display:none}@media screen and (min-width: 64.0625em){.coc-feature-section--right .coc-feature-section--expanded .coc-feature-section__content{padding-right:0 !important;padding-left:50px !important}}@media screen and (max-width: 87.49875em){.coc-feature-section--right .coc-feature-section--expanded .coc-feature-section__media-wrapper{padding-right:0rem;margin:0}}.image-grid-section .grid-container{padding:0}.image-grid-section__item{min-height:400px;display:-webkit-box;display:-ms-flexbox;display:flex;position:relative;overflow:hidden}@media screen and (min-width: 64.0625em){.image-grid-section__item{min-height:400px}}@media screen and (min-width: 87.5em){.image-grid-section__item{min-height:450px}}.image-grid-section a:after{content:"";position:absolute;top:0;left:0;height:100%;width:100%;background:black;opacity:0;-webkit-transition:all 0.35s cubic-bezier(0.7, 0, 0.3, 1);transition:all 0.35s cubic-bezier(0.7, 0, 0.3, 1)}.image-grid-section a:hover:after{opacity:.2;-webkit-transition:all 0.35s cubic-bezier(0.7, 0, 0.3, 1);transition:all 0.35s cubic-bezier(0.7, 0, 0.3, 1)}.image-grid-section__heading{opacity:1;-webkit-transition:all 0.8s cubic-bezier(0.7, 0, 0.3, 1);transition:all 0.8s cubic-bezier(0.7, 0, 0.3, 1);margin:0 0 1rem}a.image-grid-section__item:hover .image-grid-section__heading{-webkit-transition:all 0.8s cubic-bezier(0.7, 0, 0.3, 1);transition:all 0.8s cubic-bezier(0.7, 0, 0.3, 1)}.image-grid-section__heading h3{margin:0}@media screen and (max-width: 87.49875em){.image-grid-section__heading h3{font-size:1.8rem}}@media screen and (max-width: 64.06125em){.image-grid-section__heading h3{font-size:1.35rem}}.image-grid-section__body{opacity:1;-webkit-transition:all 0.8s cubic-bezier(0.7, 0, 0.3, 1);transition:all 0.8s cubic-bezier(0.7, 0, 0.3, 1)}a.image-grid-section__item:hover .image-grid-section__body{-webkit-transition:all 0.8s cubic-bezier(0.7, 0, 0.3, 1);transition:all 0.8s cubic-bezier(0.7, 0, 0.3, 1)}.image-grid-section__body p:last-child{margin:0}.image-grid-section__media{position:absolute;top:0;right:0;bottom:0;left:0;-webkit-transform-origin:50% 50%;transform-origin:50% 50%;-webkit-transform:scale(1.01);transform:scale(1.01);border-radius:0px;-webkit-transition:all 0.8s cubic-bezier(0.7, 0, 0.3, 1);transition:all 0.8s cubic-bezier(0.7, 0, 0.3, 1);overflow:hidden;-webkit-filter:blur(0px) grayscale(0%);filter:blur(0px) grayscale(0%)}a.image-grid-section__item:hover .image-grid-section__media{-webkit-filter:blur(0px) grayscale(15%);filter:blur(0px) grayscale(15%);-webkit-transition:all 1s cubic-bezier(0.7, 0, 0.3, 1);transition:all 1s cubic-bezier(0.7, 0, 0.3, 1)}.image-grid-section__media img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.image-grid-section__container{position:relative;z-index:2;padding:20px}@media screen and (min-width: 87.5em){.image-grid-section__container{padding:30px}.large-6 .image-grid-section__container,.auto .image-grid-section__container{padding:30px 40px}}@media screen and (max-width: 48.06125em){.image-grid-section .-margin-hack{margin-left:0.1px}}.one-two-image-grid-section .withLink:after{content:"";position:absolute;top:0;left:0;height:100%;width:100%;background:black;opacity:0;-webkit-transition:all 0.35s cubic-bezier(0.7, 0, 0.3, 1);transition:all 0.35s cubic-bezier(0.7, 0, 0.3, 1)}.one-two-image-grid-section .withLink:hover:after{opacity:.2;-webkit-transition:all 0.35s cubic-bezier(0.7, 0, 0.3, 1);transition:all 0.35s cubic-bezier(0.7, 0, 0.3, 1)}.image-text-grid-section{padding:20px;margin:0}@media print, screen and (min-width: 46.0625em){.image-text-grid-section{padding:0}}.image-text-grid-section .cell{height:auto}.image-text-grid-section__item{margin-bottom:15px;height:auto}@media print, screen and (min-width: 46.0625em){.image-text-grid-section__item{margin-bottom:45px}}.image-text-grid-section__container{padding:20px 0}.image-text-grid-section__media img{width:100%}.image-text-grid-section__cta{text-align:left}.image-text-grid-section__cta .button{font-size:0.75rem;border-radius:30px;text-transform:uppercase;margin:0;border-radius:100px;text-transform:uppercase;padding:1.1em 1.5em 1em}.hero-cirkel-section{margin-bottom:5rem;min-height:485px}@media only screen and (max-width: 950px) and (min-width: 770px){.hero-cirkel-section{margin-top:3rem}}@media screen and (max-width: 64.06125em){.hero-cirkel-section{margin-bottom:13rem;margin-top:4rem}}@media screen and (max-width: 87.49875em){.hero-cirkel-section{margin-bottom:8rem}}@media screen and (max-width: 48.06125em){.hero-cirkel-section{margin-bottom:1rem}}@media screen and (max-width: 64.06125em){.hero-cirkel-section__media-wrapper{position:absolute;top:0%;right:0%;padding:20px 30px 20px;height:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;width:100% !important;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}}.hero-cirkel-section__content-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}@media screen and (max-width: 64.06125em){.hero-cirkel-section__content-wrapper{min-height:700px;padding:30px 30px;-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;max-width:500px;margin:auto}}.hero-cirkel-section__content{padding:0}.hero-cirkel-section__body,.hero-cirkel-section__cta{max-width:100%;margin:0 auto}.hero-cirkel-section__cta .button{border-radius:50px;text-transform:uppercase;padding:20px 35px;font-size:18px}.hero-cirkel-section__cta .button:hover{-webkit-transition:all 0.35s cubic-bezier(0.7, 0, 0.3, 1);transition:all 0.35s cubic-bezier(0.7, 0, 0.3, 1);-webkit-transition-delay:.0s;transition-delay:.0s;-webkit-box-shadow:0px 11px 11px rgba(0,0,0,0.11);box-shadow:0px 11px 11px rgba(0,0,0,0.11)}@media screen and (max-width: 48.06125em){.hero-cirkel-section__cta{margin-top:1rem}}.hero-cirkel-section__body{font-size:20px}.hero-cirkel-section__body p{font-weight:bold}@media screen and (min-width: 64.0625em){.hero-cirkel-section__body p{font-weight:100}}.hero-cirkel-section__media{position:relative;overflow:hidden}.hero-cirkel-section__headline{font-size:3rem}@media screen and (min-width: 64.0625em){.hero-cirkel-section__headline{font-size:5rem}}@media screen and (max-width: 87.49875em){.hero-cirkel-section__headline{font-size:4.5rem;line-height:4.5rem}}@media screen and (max-width: 64.06125em){.hero-cirkel-section__headline{font-size:3rem;line-height:3rem}}.hero-cirkel-section__body{margin:1.5rem 0 1.8rem;max-width:500px}@media screen and (max-width: 48.06125em){.hero-cirkel-section__body{display:none}}.hero-cirkel-section .thumbnail__play-button{cursor:pointer;background:#2e8fff;width:125px;height:125px;color:#fff;position:absolute;top:430px;right:640px;border-radius:50%;padding:47px 40px 47px 55px;z-index:1}@media screen and (max-width: 87.49875em){.hero-cirkel-section .thumbnail__play-button{top:475px;right:330px}}@media screen and (max-width: 64.06125em){.hero-cirkel-section .thumbnail__play-button{width:95px;height:95px;right:35px;left:unset;padding:32px 32px 32px 38px;bottom:-145px}}@media only screen and (max-width: 1400px) and (min-width: 1046px){.hero-cirkel-section .thumbnail__play-button{top:475px;right:615px}}@media only screen and (max-width: 1300px) and (min-width: 1046px){.hero-cirkel-section .thumbnail__play-button{right:495px}}@media only screen and (max-width: 1200px) and (min-width: 1046px){.hero-cirkel-section .thumbnail__play-button{right:355px}}.hero-cirkel-section .thumbnail__play-button .arrow-icon{margin:0px 0 0px 0;width:0px;height:0px;border-top:14px solid transparent;border-bottom:14px solid transparent;border-left:24px solid white}.hero-cirkel-section .thumbnail__play-button:hover{-webkit-transition:all 0.35s cubic-bezier(0.7, 0, 0.3, 1);transition:all 0.35s cubic-bezier(0.7, 0, 0.3, 1);-webkit-transition-delay:.0s;transition-delay:.0s;-webkit-box-shadow:0px 11px 11px rgba(0,0,0,0.11);box-shadow:0px 11px 11px rgba(0,0,0,0.11)}.hero-cirkel-section .grid-container{position:relative}.hero-cirkel-section .grid-container .circle{content:"";position:absolute;top:-568px;left:410px;width:1200px;height:1200px;border-radius:50%;background:transparent;z-index:-1;background:#2e8fff;background-size:cover;background-position:center center;-webkit-box-shadow:inset 0 0 0 1000px rgba(46,143,255,0.34);box-shadow:inset 0 0 0 1000px rgba(46,143,255,0.34)}@media screen and (max-width: 87.49875em){.hero-cirkel-section .grid-container .circle{top:-124px;left:550px;width:800px;height:800px}}@media screen and (max-width: 64.06125em){.hero-cirkel-section .grid-container .circle{width:800px;height:800px;left:85%;right:initial;-webkit-transform:translateX(-50%) !important;transform:translateX(-50%) !important;top:-250px}}.hero-cirkel-section .placeholder-media{position:absolute;top:-940px;left:410px;width:1130px;height:1190px;z-index:-1}@media screen and (max-width: 87.49875em){.hero-cirkel-section .placeholder-media{left:430px}}@media screen and (max-width: 64.06125em){.hero-cirkel-section .placeholder-media{left:0px}}@media screen and (max-width: 48.06125em){.hero-cirkel-section .placeholder-media{left:-150px}}.hero-cirkel-section .placeholder-media video{-webkit-clip-path:circle(46%);clip-path:circle(46%);width:100%;height:100%;position:absolute;top:415px;-o-object-fit:cover;object-fit:cover;padding:0;margin:0;-webkit-filter:brightness(0.9) contrast(0.9) sepia(0.1);filter:brightness(0.9) contrast(0.9) sepia(0.1)}@media screen and (max-width: 87.49875em){.hero-cirkel-section .placeholder-media video{-webkit-clip-path:circle(35%);clip-path:circle(35%);top:655px}}@media screen and (max-width: 64.06125em){.hero-cirkel-section .placeholder-media video{-webkit-clip-path:circle(46%);clip-path:circle(46%);top:490px}}@media screen and (max-width: 48.06125em){.hero-cirkel-section .placeholder-media video{-webkit-clip-path:unset;clip-path:unset;top:600px}}@media only screen and (max-width: 950px) and (min-width: 770px){.hero-cirkel-section .placeholder-media video{-webkit-clip-path:circle(36%);clip-path:circle(36%);top:496px}}.hero-cirkel-section__modal{position:fixed;left:0;top:0;background:rgba(0,0,0,0.5);width:100%;height:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;z-index:101;visibility:hidden;opacity:0;-webkit-transition:visibility .3s linear,opacity .3s linear;transition:visibility .3s linear,opacity .3s linear}.hero-cirkel-section__modal--active{visibility:visible;opacity:1}.hero-cirkel-section__modal .modal__close{position:absolute;top:-30px;right:-30px;background:#fff;width:35px;height:35px;border-radius:50%;cursor:pointer}.hero-cirkel-section__modal .modal__close .cross:after{position:absolute;top:-7;bottom:0;left:0;right:0;content:"\00D7";font-size:40px;color:#000;text-align:center}.hero-cirkel-section .modal__vimeo .modal__close{top:34px;right:-20px}.hero-cirkel-section .modal__inner{position:relative}.hero-cirkel-section .modal__inner .responsive-container{position:relative;margin:auto 15%}.hero-cirkel-section .modal__youtube .responsive-container,.hero-cirkel-section .modal__vimeo .responsive-container{position:relative;margin:auto}.hero-cirkel-section .modal__youtube .responsive-container iframe,.hero-cirkel-section .modal__vimeo .responsive-container iframe{position:unset;height:80%;width:1150px;aspect-ratio:1.5}@media screen and (min-width: 64.0625em){.hero-cirkel-section .modal__youtube .responsive-container iframe,.hero-cirkel-section .modal__vimeo .responsive-container iframe{height:90%;width:100%}}@media screen and (max-width: 87.49875em){.hero-cirkel-section .modal__youtube .responsive-container iframe,.hero-cirkel-section .modal__vimeo .responsive-container iframe{height:88%;width:940px}}@media screen and (max-width: 64.06125em){.hero-cirkel-section .modal__youtube .responsive-container iframe,.hero-cirkel-section .modal__vimeo .responsive-container iframe{height:89%;width:710px}}@media screen and (max-width: 48.06125em){.hero-cirkel-section .modal__youtube .responsive-container iframe,.hero-cirkel-section .modal__vimeo .responsive-container iframe{height:80%;width:400px}}.heading-section{padding:60px 20px 50px 20px;text-align:center;position:relative}@media print, screen and (min-width: 48.0625em){.heading-section{padding:100px 20px 80px 20px;border:none}}.heading-section.heading-section-method{margin-bottom:0px}.contact-section{color:#2e8fff;padding:1rem}@media screen and (min-width: 64.0625em){.contact-section{padding:1.5rem}}.contact-section__wrapper{background-color:#f1f3f3}.contact-section .contact-col{padding:1.5rem 1rem 0}.contact-section .contact-col:last-child{padding-bottom:2rem}@media screen and (min-width: 64.0625em){.contact-section .contact-col{padding:0}.contact-section .contact-col:last-child{padding-bottom:0rem}}.contact-section__heading{margin:0 0 1.25rem}.contact-section__heading h4{font-size:1rem;font-weight:100;font-weight:600;margin-right:.6rem;font-size:.8rem;margin:0 0 .25rem;letter-spacing:1px;text-transform:uppercase}.contact-section__name{font-weight:bold;line-height:1;font-size:1.6rem}.contact-section__media{text-align:left;min-height:350px;background-size:cover !important;background-position:center}.contact-section__title{margin:.5rem 0 0;line-height:1;font-size:1rem}.contact-section__phone{line-height:1;margin:0 0 1.5rem}.contact-section__email{line-height:1}.contact-section__heading-wrapper{text-align:center;vertical-align:middle}@media screen and (min-width: 64.0625em){.contact-section__heading-wrapper{border-right:1px solid #c7c7c7}}.contact-section__phone-wrapper{text-align:center;vertical-align:middle;font-size:1.15rem}.contact-section__phone-wrapper>div{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.contact-section__phone-wrapper>div span{font-weight:600;margin-right:.6rem;font-size:.8rem;margin:0 0 .25rem;letter-spacing:1px;text-transform:uppercase}.contact-section a{color:inherit}@media screen and (max-width: 46em){.contact-section__media{text-align:center}.contact-section__heading-wrapper{border-right:0px;padding-top:20px}.contact-section__phone-wrapper{border-right:0px;padding-top:20px;padding-bottom:20px}}.long-content-section{padding:20px 1rem}@media print, screen and (min-width: 48.0625em){.long-content-section{padding:50px 1rem}}.long-content-section__cta .button{border-radius:50px;text-transform:uppercase;padding:20px 35px;font-size:18px;font-weight:bold}.long-content-section__sidebar{margin:0 0 1.5rem}.long-content-section__sidebar .long-content-section__sidebar-heading{padding:1rem 1rem 0}@media print, screen and (min-width: 46.0625em){.long-content-section__sidebar .long-content-section__sidebar-heading{padding:1.55rem 1.55rem 0}}.long-content-section__sidebar .long-content-section__cta{padding:0rem 1rem 1rem}.long-content-section__sidebar .long-content-section__cta .button{margin:0}@media print, screen and (min-width: 46.0625em){.long-content-section__sidebar .long-content-section__cta{padding:0rem 1.55rem 1.55rem}}.long-content-section__sidebar .long-content-section__sidebar-bodytext{padding:0 1rem}@media print, screen and (min-width: 46.0625em){.long-content-section__sidebar .long-content-section__sidebar-bodytext{padding:0 1.5rem}}.long-content-section .long-content-section__content,.long-content-section__content{padding-right:0}@media print, screen and (min-width: 48.0625em){.long-content-section .long-content-section__content,.long-content-section__content{padding-right:2rem}}@media screen and (min-width: 87.5em){.long-content-section .long-content-section__content,.long-content-section__content{padding-right:4rem}}.long-content-section__body img{width:100%;height:auto}.events-overview-section{background:white}.events-overview-section__toggle-bar{height:60px;display:-webkit-box;display:-ms-flexbox;display:flex;background:#f0f0f0;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;font-size:20px;color:#b5b5b5}@media screen and (min-width: 64.0625em){.events-overview-section__toggle-bar{margin-top:-50px}}.events-overview-section__toggle-bar>*{padding:0 10px;cursor:pointer}.events-overview-section__toggle-bar>*.active{font-weight:bold;color:#2e8fff}.events-overview-section__list{list-style:none;margin:0;display:none;padding:20px 1rem}@media print, screen and (min-width: 48.0625em){.events-overview-section__list{padding:70px 1rem}}.events-overview-section__list--active{display:block}.events-overview-section__list>*:not(:last-child){padding-bottom:50px;border-bottom:1px solid #f0f0f0;margin-bottom:50px}.events-overview-section__event-item .event-time{width:160px;margin-right:40px}.member-type-overview-section{padding:0 0.5rem}.member-type-overview-section__list{list-style:none;margin:0}.member-type-overview-section__list-item:not(:last-child){margin-bottom:30px}.event-page{padding:20px 1rem}@media print, screen and (min-width: 48.0625em){.event-page{padding:70px 1rem}}.event-page__date-time{color:#2e8fff;font-weight:bold;margin-bottom:0}.event-page__date-time:first-letter{text-transform:capitalize}.event-page__meta{list-style:none;padding:0;margin:30px 0 0 10px}.event-page__meta-item{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline}.event-page__meta-item:before{content:'';width:12px;height:12px;border-radius:50%;background:#2e8fff;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0}.event-page__meta-item__content{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;-ms-flex-negative:1;flex-shrink:1;margin-left:25px}.event-page__meta-item__content>*{display:inline}.event-page__form{margin-top:30px;padding-top:30px;border-top:1px solid #f0f0f0}@media screen and (min-width: 64.0625em){.event-page__form>*{width:50%}}.event-page__sidebar{margin-top:30px;padding-top:30px;border-top:1px solid #f0f0f0}@media screen and (min-width: 64.0625em){.event-page__sidebar{margin-top:0;padding-top:0;border-top:none}}.event-page__sidebar img{width:100%;height:auto}.event-page__article img{max-width:100%;height:auto;margin:0 auto;display:block}.method-page{padding:45px 1rem}@media print, screen and (min-width: 48.0625em){.method-page{padding:80px 0}}.method-page p{margin-bottom:1.3rem}.method-page__heading h1{margin-bottom:0.4rem}@media print, screen and (min-width: 48.0625em){.method-page__heading h1{margin-bottom:1.6rem}}.method-page__body__readmore{height:400px;overflow:hidden;-webkit-mask-image:-webkit-gradient(linear, left top, left bottom, from(#000), to(rgba(0,0,0,0)))}@media print, screen and (min-width: 48.0625em){.method-page__body__readmore{height:unset;overflow:unset;-webkit-mask-image:none}}.method-page__body__readmore-button{margin:0;background:#f0f0f0;color:#2e8fff;font-size:14px;border-radius:100px;padding:0.64rem 1.3rem;text-transform:uppercase;-webkit-transition:all ease-in-out 350ms;transition:all ease-in-out 350ms}@media print, screen and (min-width: 48.0625em){.method-page__body__readmore-button{display:none}}.method-page__material-content{margin:33px 0;padding:30px 0 15px 0;border-top:1px solid #D8D8D8;border-bottom:1px solid #D8D8D8;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}@media print, screen and (min-width: 48.0625em){.method-page__material-content{padding:30px 0;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}}.method-page__material-content__cta{-ms-flex-preferred-size:50%;flex-basis:50%;margin-bottom:30px}@media print, screen and (min-width: 48.0625em){.method-page__material-content__cta{margin-bottom:unset}}.method-page__material-content__cta a{margin:0;font-size:14px;border-radius:100px;padding:0.64rem 1.3rem;text-transform:uppercase;-webkit-transition:all ease-in-out 350ms;transition:all ease-in-out 350ms}@media print, screen and (min-width: 48.0625em){.method-page__material-content__cta a{font-size:16px;padding:0.94rem 2.4rem}}.method-page__material-content__additional{-ms-flex-preferred-size:50%;flex-basis:50%}.method-page__material-content__additional h6{font-size:18px}.method-page__material-content__additional ul{margin-left:5px;margin-bottom:0px}.method-page__material-content__additional ul.dashed{list-style-type:none}.method-page__material-content__additional ul.dashed>li{text-indent:-5px}.method-page__material-content__additional ul.dashed>li:before{content:"-";text-indent:-5px}.method-page .method-page__content,.method-page__content{padding-right:0}@media print, screen and (min-width: 48.0625em){.method-page .method-page__content,.method-page__content{padding-right:2rem}}@media screen and (min-width: 87.5em){.method-page .method-page__content,.method-page__content{padding-right:2.28rem}}.method-page__sidebar{-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}@media print, screen and (min-width: 48.0625em){.method-page__sidebar{-webkit-box-ordinal-group:unset;-ms-flex-order:unset;order:unset}}.method-page__sidebar__content{background:#2e8fff;color:#fff}.method-page__sidebar__content img{width:100%;height:auto;margin-bottom:0.7rem}.method-page__sidebar__content h4{padding:15px 30px 0px 30px}.method-page__sidebar__content p{padding:0 35px 35px 35px}.method-page__favourite-btn .favourite-btn{padding-right:0.55556rem;padding-left:0.55556rem;-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1;margin:0 0 30px 0;position:unset;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-align:center;-ms-flex-align:center;align-items:center}@media print, screen and (min-width: 48.0625em){.method-page__favourite-btn .favourite-btn{-webkit-box-ordinal-group:unset;-ms-flex-order:unset;order:unset;margin:0 0 50px 0}}.method-page__favourite-btn .favourite-btn__btn{background:#F0F0F0;padding:10px;cursor:pointer}.method-page__favourite-btn .favourite-btn__btn svg{width:20px;height:20px}.method-page__tabs-container{margin-bottom:40px;padding-right:0.55556rem;padding-left:0.55556rem;-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}@media print, screen and (min-width: 48.0625em){.method-page__tabs-container{background:#F0F0F0;margin-bottom:80px;padding-top:60px;padding-bottom:60px;padding-right:50px;padding-left:50px;-webkit-box-ordinal-group:unset;-ms-flex-order:unset;order:unset}}@media screen and (min-width: 64.0625em){.method-page__tabs-container{padding-right:115px;padding-left:115px}}.method-page__tab-titles{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;overflow-x:scroll;overflow-y:hidden;padding:25px 0}@media print, screen and (min-width: 46.0625em){.method-page__tab-titles{overflow-x:visible;overflow-y:visible;padding:unset;margin-top:0px;margin-top:30px}}@media print, screen and (min-width: 48.0625em){.method-page__tab-titles{margin-top:0px}}.method-page__tab-titles .tab-title{color:black;font-weight:bold;white-space:nowrap;-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;-webkit-transition:color 0.3s;transition:color 0.3s}.method-page__tab-titles .tab-title:hover{color:#2D8FFF}@media print, screen and (min-width: 48.0625em){.method-page__tab-titles .tab-title{-webkit-box-flex:unset;-ms-flex:unset;flex:unset}}.method-page__tab-titles .tab-title.active-tab,.method-page__tab-titles .tab-title :hover{color:#2D8FFF}.method-page__tab-titles a{border-right:2px solid #D8D8D8;font-size:16px;padding:0 1rem 0 1rem}@media print, screen and (min-width: 48.0625em){.method-page__tab-titles a{padding:0 1.5rem 0 1.5rem}}.method-page__tab-titles a:first-child{padding-left:0;padding-right:1rem}@media print, screen and (min-width: 48.0625em){.method-page__tab-titles a:first-child{padding-right:1.5rem}}.method-page__tab-titles a:last-child{border-right:unset}.method-page__tab-content{margin-top:20px;max-width:785px}.method-page__tab-content h1,.method-page__tab-content h2,.method-page__tab-content h3,.method-page__tab-content h4,.method-page__tab-content h5{margin-bottom:1rem}@media print, screen and (min-width: 46.0625em){.method-page__tab-content{margin-top:60px}}.method-page__tab-content .tab-content-text{display:none}.method-page__tab-content .active-content{display:block}.method-page__tab-content ul li{margin-bottom:35px}.method-page__tab-content ul li::marker{color:red}.method-page__tab-content ul li::before{content:"\2022";color:#ababab;font-weight:bold;display:inline-block;width:0.7em;margin-left:-1em;font-size:29px}.method-page__related-methods{width:100%;padding-right:0.55556rem;padding-left:0.55556rem;-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.method-page__related-methods h3{font-size:24px;margin-bottom:20px}@media print, screen and (min-width: 48.0625em){.method-page__related-methods{padding-right:unset;padding-left:unset;-webkit-box-ordinal-group:unset;-ms-flex-order:unset;order:unset}.method-page__related-methods h3{font-size:40px;margin-bottom:60px}}.method-page__related-methods ul{list-style:none;display:-webkit-box;display:-ms-flexbox;display:flex;overflow-y:hidden;margin-left:0}@media screen and (min-width: 64.0625em){.method-page__related-methods ul{overflow-y:unset}}.method-page__related-methods ul li{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:98%;overflow:hidden;padding:0 0.6rem 0 0}@media print, screen and (min-width: 46.0625em){.method-page__related-methods ul li{width:49%}}@media screen and (min-width: 64.0625em){.method-page__related-methods ul li{width:33.33333%;overflow:unset;padding:0 0.6rem}}.method-page__related-methods ::-webkit-scrollbar{height:5px}.method-page__related-methods ::-webkit-scrollbar-track{background:#F0F0F0}.method-page__related-methods ::-webkit-scrollbar-thumb{background:#2D8FFF}.method-page__related-methods ::-webkit-scrollbar-thumb:hover{background:#0177ff}.method-overview-page__filter{background:#F0F0F0;margin-bottom:30px}@media print, screen and (min-width: 46.0625em){.method-overview-page__filter{margin-bottom:70px}}.method-overview-page__filter__btn .button{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;color:#000;margin:auto 0.4rem;border-radius:100px;background:#fff;padding:0.5em 1.5em;font-size:18px}.method-overview-page__filter__btn .button svg{height:25px;width:25px;margin-right:10px}@media print, screen and (min-width: 46.0625em){.method-overview-page__filter__btn{display:none}}.method-overview-page__filter .filter-item{padding:0 15px;border-right:1px solid rgba(0,0,0,0.1);cursor:pointer;position:relative;display:none}.method-overview-page__filter .filter-item p{margin-bottom:0.2rem}.method-overview-page__filter .filter-item:last-child{display:-webkit-box;display:-ms-flexbox;display:flex}@media print, screen and (min-width: 46.0625em){.method-overview-page__filter .filter-item{-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:0 36px;display:-webkit-box;display:-ms-flexbox;display:flex}}@media only screen and (min-width: 46.0625em) and (max-width: 800px){.method-overview-page__filter .filter-item{padding:0 20px}}.method-overview-page__filter .filter-item svg{-webkit-transform:rotate(90deg);transform:rotate(90deg);margin-left:5px;width:16px;height:20px;stroke:#000}.method-overview-page__filter .filter-item__dropdown{display:none;position:absolute;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;border-radius:4px;top:100%}.method-overview-page__filter .filter-item__dropdown.category{left:203px}.method-overview-page__filter .filter-item__dropdown.age{left:362px}.method-overview-page__filter .filter-item__dropdown.display{background:#fff;padding:40px 40px 15px 40px;z-index:3;gap:0 50px;-webkit-box-shadow:0 2px 20px 0 rgba(0,0,0,0.1);box-shadow:0 2px 20px 0 rgba(0,0,0,0.1);display:grid;grid-auto-flow:column;grid-template-rows:repeat(6, auto)}.method-overview-page__filter .filter-item__dropdown .input-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.method-overview-page__filter .filter-item__dropdown .input-container input{cursor:pointer;width:30px;height:30px;margin-bottom:24px;background:#eee;border:none;background-repeat:no-repeat;background-position:50%;background-size:contain;-webkit-appearance:none;-moz-appearance:none;appearance:none;-webkit-print-color-adjust:exact}.method-overview-page__filter .filter-item__dropdown .input-container input:checked{background-color:#2D8FFF;border:none;background:#2D8FFF url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" width="13.744" height="11.391"><path data-name="Path 340" d="M12.353 1.391l-6.22 9L1.414 5.67" fill="none" stroke="white" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"/></svg>') center/contain no-repeat;background-size:auto}.method-overview-page__filter .filter-item__dropdown .input-container label{font-size:18px}.method-overview-page__filter .filter-item.display{color:#2D8FFF}.method-overview-page__filter .filter-item.display svg{stroke:#2D8FFF !important;-webkit-transform:rotate(270deg);transform:rotate(270deg);-webkit-transition:-webkit-transform .2s ease;transition:-webkit-transform .2s ease;transition:transform .2s ease;transition:transform .2s ease, -webkit-transform .2s ease}.method-overview-page__filter .filter-item.display .filter-item__dropdown{width:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;overflow:hidden;background:#fff;position:absolute;padding:40px;margin:26px -36px;-webkit-box-shadow:0 0 25px 0 rgba(0,0,0,0.1);box-shadow:0 0 25px 0 rgba(0,0,0,0.1)}.method-overview-page__filter__reset-filter.filter-item{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:none}@media print, screen and (min-width: 46.0625em){.method-overview-page__filter__reset-filter.filter-item{display:-webkit-box;display:-ms-flexbox;display:flex}}.method-overview-page__filter__reset-filter.filter-item svg{-webkit-transition:-webkit-transform 0.5s ease;transition:-webkit-transform 0.5s ease;transition:transform 0.5s ease;transition:transform 0.5s ease, -webkit-transform 0.5s ease}@media print, screen and (min-width: 46.0625em){.method-overview-page__filter__reset-filter.filter-item svg{width:25px;height:25px;margin-right:12px}}.method-overview-page__filter__reset-filter:hover svg{-webkit-transform:rotate(300deg);transform:rotate(300deg)}.method-overview-page__filter__age.filter-item{border-right:none}.method-overview-page__filter__results{margin-left:auto;font-size:12px}@media print, screen and (min-width: 46.0625em){.method-overview-page__filter__results{font-size:18px}}.method-overview-page__filter__results.filter-item{border-right:none;cursor:unset}.method-overview-page__filter__results.filter-item p{margin-bottom:0px}.method-overview-page__filter .grid-container{position:relative;height:105px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:left;-ms-flex-pack:left;justify-content:left;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-align:center;-ms-flex-align:center;align-items:center}@media print, screen and (min-width: 46.0625em){.method-overview-page__filter .grid-container{height:80px}}.method-overview-page__filter .grid-container .show-result-btn{display:none}.method-overview-page__filter__mobile-filter{display:-webkit-box;display:-ms-flexbox;display:flex;height:80px;width:100%;background:rgba(240,240,240,0.5);-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin-bottom:30px;padding:0 15px}.method-overview-page__filter__mobile-filter svg{height:30px;width:30px;margin-right:10px;margin-top:2px}.method-overview-page__filter__mobile-filter h4{margin-bottom:0px}.method-overview-page__filter__mobile-filter .btn-close{right:30px;top:25px}.method-overview-page__mobile-filter-overlay{height:100%;width:100%;overflow-y:auto;background:#fff;position:absolute;top:0;z-index:10;right:-100%;-webkit-transition:right 0.4s ease-in;transition:right 0.4s ease-in}.method-overview-page__mobile-filter-overlay .filter-item{display:-webkit-box;display:-ms-flexbox;display:flex;height:67px;display:flex;-webkit-box-pack:left;-ms-flex-pack:left;justify-content:left;border-right:none;border-top:1px solid #EFEFEF;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:0;width:93%;margin:auto}.method-overview-page__mobile-filter-overlay .filter-item svg{margin-left:auto;width:25px;height:25px}.method-overview-page__mobile-filter-overlay .filter-item__dropdown.display{gap:unset;display:block;position:unset;width:100%;-webkit-box-shadow:none;box-shadow:none;padding:10px 15px 15px 15px}.method-overview-page__mobile-filter-overlay .filter-bottom{background:#fff;position:fixed;bottom:0;z-index:100;-webkit-box-shadow:0 -5px 5px -5px rgba(0,0,0,0.1);box-shadow:0 -5px 5px -5px rgba(0,0,0,0.1);width:100%;padding:20px 30px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.method-overview-page__mobile-filter-overlay .filter-bottom .method-overview-page__filter__reset-filter{font-size:14px}.method-overview-page__mobile-filter-overlay .filter-bottom svg{width:15px;height:15px;margin-right:12px}.method-overview-page__mobile-filter-overlay .filter-bottom .show-result-btn{display:block;width:auto}.method-overview-page__mobile-filter-overlay .filter-bottom .show-result-btn .button{color:#fff;margin:0;border-radius:100px;text-transform:uppercase;-webkit-transition:all ease-in-out 350ms;transition:all ease-in-out 350ms;padding:0.7em 1.5em;font-size:14px}.method-overview-page__mobile-filter-overlay .filter-bottom .method-overview-page__filter__reset-filter{width:auto;margin:unset;border-top:none}.method-overview-page__mobile-filter-overlay.open{width:100%;right:0;transition:right 0.4s ease-out;-webkit-transition:right 0.4s ease-out;overflow-y:auto;padding-bottom:107px}.method-overview-page__mobile-filter-overlay.open .filter-item__dropdown.display{left:0;top:0;display:block;position:relative}.hide{display:none}.show{display:block}ul{list-style:none}.contact-macro__sidebar{border:none !important}.contact-macro{text-align:center}.contact-macro__sidebar{border:none !important}.contact-macro__media img{width:100%}.contact-macro__heading{padding:2rem 1rem 0;text-align:center}.contact-macro__heading h4{font-size:1rem;font-weight:100;font-weight:600;margin-right:.6rem;font-size:.8rem;margin:0 0 .25rem;letter-spacing:1px;text-transform:uppercase}.contact-macro__name{font-weight:bold;line-height:1;font-size:1.4rem}@media print, screen and (min-width: 48.0625em){.contact-macro__name{font-size:1.6rem}}.contact-macro__title{margin:.5rem 0 0;line-height:1;font-size:.9rem}@media print, screen and (min-width: 48.0625em){.contact-macro__title{font-size:1rem}}.contact-macro__name-wrapper{text-align:center}.contact-macro__phone-wrapper{padding:2rem 1rem 2rem;text-align:center;font-weight:600;margin-right:.6rem;font-size:.8rem;margin:0 0 .25rem;letter-spacing:1px;text-transform:uppercase;display:inline-block;width:100%}.contact-macro__phone-wrapper a{font-weight:normal;letter-spacing:0;font-size:.9rem;display:inline-block;width:100%;text-transform:none;margin:.5rem 0 0}@media print, screen and (min-width: 48.0625em){.contact-macro__phone-wrapper a{font-size:1.1rem}}.contact-macro__phone{line-height:1;margin:0 0 1.5rem}.contact-macro__email{line-height:1}@media screen and (max-width: 46em){.contact-macro__sidebar-wrapper{text-align:center}.contact-macro__media{text-align:center}.contact-macro__heading{text-align:center}.contact-macro__name-wrapper{border-right:0px;padding-top:20px;text-align:center}.contact-macro__phone-wrapper{border-right:0px;padding-top:20px;padding-bottom:20px;text-align:center}}.info-list-macro h6{font-size:24px}@media print, screen and (min-width: 46.0625em){.info-list-macro h6{font-size:30px;padding-top:10px}}.info-list-macro ol{list-style:none;padding-left:25px}@media print, screen and (min-width: 46.0625em){.info-list-macro ol{padding-left:40px}}.info-list-macro ol li{padding-left:0px;counter-increment:list-counter;position:relative;margin-bottom:40px}@media print, screen and (min-width: 46.0625em){.info-list-macro ol li{padding-left:18px}}.info-list-macro ol li::before{content:counter(list-counter);font-family:'Inter', sans-serif;font-size:20px;font-weight:bold;color:#fff;position:absolute;--size: 40px;left:calc(-1 * var(--size) - 10px);line-height:var(--size);width:var(--size);height:var(--size);top:0;background:#387CB3;border-radius:50%;text-align:center}@media print, screen and (min-width: 46.0625em){.info-list-macro ol li::before{font-size:24px;--size: 55px}}*{outline:none !important}.instagram_gallery{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-ms-flex-wrap:wrap;flex-wrap:wrap;padding:20px}@media print, screen and (min-width: 46.0625em){.instagram_gallery{padding:0}}.instagram_gallery a{width:100%;opacity:1;-webkit-transition:all .35s ease-in-out;transition:all .35s ease-in-out;position:relative;overflow:hidden;cursor:pointer}@media print, screen and (min-width: 46.0625em){.instagram_gallery a{width:50%}}@media screen and (min-width: 64.0625em){.instagram_gallery a{width:25%}}.instagram_gallery img{width:100% !important;margin:0 !important;opacity:1;cursor:pointer;-webkit-transition:all .35s ease-in-out;transition:all .35s ease-in-out}.instagram_gallery img:hover{opacity:.8;-webkit-transition:all .35s ease-in-out;transition:all .35s ease-in-out}.umbraco-forms-form .checkboxlist label{clear:none !important}@media only print{div{-webkit-column-break-inside:avoid;-moz-column-break-inside:avoid;break-inside:avoid}.favourites-menu__top-content button{display:none}.favourites-menu__cta{display:none}.favourites-menu ul{list-style:none}.favourites-menu ul .method-list{width:33.33333%;padding:0 0.6rem 0 0}.favourites-menu ul .method-list .method-list-item__cta{display:none}.favourites-menu ul .method-list a[href]:after{content:" "}.favourites-menu ul .method-list .method-list-item{display:block}.favourites-menu ul .method-list .method-list-item h4,.favourites-menu ul .method-list .method-list-item p{page-break-inside:avoid}*{-webkit-transition:none !important;transition:none !important}}

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImZ1cm5pdHVyZS9mb250cy5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy92ZW5kb3Ivbm9ybWFsaXplLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL19nbG9iYWwuc2NzcyIsIl9zZXR0aW5ncy5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19taXhpbnMuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX3RleHQuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2NoZWNrYm94LnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX3VuaXQuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2xhYmVsLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19oZWxwLXRleHQuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2lucHV0LWdyb3VwLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19maWVsZHNldC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fc2VsZWN0LnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19lcnJvci5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19iYXNlLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX2JyZWFrcG9pbnQuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9faGVscGVycy5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19hbGlnbm1lbnQuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9fcHJpbnQuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MveHktZ3JpZC9fY2xhc3Nlcy5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy94eS1ncmlkL19ndXR0ZXJzLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3h5LWdyaWQvX2dyaWQuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MveHktZ3JpZC9fY2VsbC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy94eS1ncmlkL19sYXlvdXQuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MveHktZ3JpZC9fY29sbGFwc2Uuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MveHktZ3JpZC9fcG9zaXRpb24uc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MveHktZ3JpZC9fZnJhbWUuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYnV0dG9uLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3RhYmxlLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX2NvbG9yLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2FjY29yZGlvbi5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19yZXNwb25zaXZlLWVtYmVkLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX21hdGguc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fbWVudS5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19kcm9wZG93bi1tZW51LnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2ZsZXguc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fZmxleC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL192aXNpYmlsaXR5LnNjc3MiLCJhcHAuc2NzcyIsImZ1cm5pdHVyZS9tZW51LW92ZXJ3cml0ZS5zY3NzIiwiZm9vdGVyL19nb29nbGUtbWFwcy5zY3NzIiwiZm9vdGVyL190ZXJtcy1zb2NpYWwuc2NzcyIsImZvb3Rlci9fbWVudS1jb250YWN0LnNjc3MiLCJmdXJuaXR1cmUvZmF2b3VyaXRlcy1tZW51LnNjc3MiLCJmdXJuaXR1cmUvYnV0dG9uLnNjc3MiLCJlbGVtZW50cy9fZXZlbnQtdGltZS5zY3NzIiwiZWxlbWVudHMvX2V2ZW50LWxpc3QtaXRlbS5zY3NzIiwiZWxlbWVudHMvX3VtYnJhY28tZm9ybXMuc2NzcyIsImVsZW1lbnRzL19jb2MtZm9ybXMuc2NzcyIsImVsZW1lbnRzL19tZW1iZXItdHlwZS1pdGVtLnNjc3MiLCJlbGVtZW50cy9fbWV0aG9kLWxpc3QtaXRlbS5zY3NzIiwiZWxlbWVudHMvX21ldGhvZC1saXN0LnNjc3MiLCJlbGVtZW50cy9fZmF2b3VyaXRlLWJ0bi5zY3NzIiwic2VjdGlvbnMvX2ZlYXR1cmUtc2VjdGlvbi5zY3NzIiwic2VjdGlvbnMvX2ltYWdlLWdyaWQtc2VjdGlvbi5zY3NzIiwic2VjdGlvbnMvX2ltYWdlLXRleHQtZ3JpZC1zZWN0aW9uLnNjc3MiLCJzZWN0aW9ucy9faGVyby1jaXJrZWwtc2VjdGlvbi5zY3NzIiwic2VjdGlvbnMvX2hlYWRpbmctc2VjdGlvbi5zY3NzIiwic2VjdGlvbnMvX2NvbnRhY3Qtc2VjdGlvbi5zY3NzIiwic2VjdGlvbnMvX2xvbmctY29udGVudC1zZWN0aW9uLnNjc3MiLCJzZWN0aW9ucy9fZXZlbnRzLW92ZXJ2aWV3LXNlY3Rpb24uc2NzcyIsInNlY3Rpb25zL19tZW1iZXItdHlwZS1vdmVydmlldy1zZWN0aW9uLnNjc3MiLCJwYWdlcy9fZXZlbnQtcGFnZS5zY3NzIiwicGFnZXMvX21ldGhvZC1wYWdlLnNjc3MiLCJwYWdlcy9fbWV0aG9kLW92ZXJ2aWV3LXBhZ2Uuc2NzcyIsIm1hY3Jvcy9fY29udGFjdC1tYWNyby5zY3NzIiwibWFjcm9zL19pbmZvLWxpc3QtbWFjcm8uc2NzcyIsImVsZW1lbnRzL19mYXZvdXJpdGUtbGlzdC1wcmludC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLFdBQ0UsOEJBQ0EsMENBQ0EsZ1FBSUEsbUJBQ0EsaUJBQWtCLENBQUEsbUJBS2xCLHlDQUNBLHdCQUNBLDZCQUNBLDhCQUNBLCtCQUNBLCtCQUNBLFdBQ0EsY0FDQSxtQ0FDQSxpQ0FBa0MsQ0FDbkMsaURBSUMseUNBQ0EsNkJBQ0EsOEJBQ0EsK0JBQ0EsK0JBQ0EsV0FDQSxjQUNBLG1DQUNBLGlDQUFrQyxDQUNuQyxtQkFJQyxhQUFjLENBQ2YseUJBRUMsYUFBYyxDQUNmLCtCQUVDLGFBQWMsQ0FDZix1QkFFQyxhQUFjLENBQ2YsNkJBRUMsYUFBYyxDQUNmLDhCQUVDLGFBQWMsQ0FDZiw4QkFFQyxhQUFjLENBQ2YsOEJBRUMsYUFBYyxDQUNmLHVCQUVHLGVBQWdCLENBQ25CLG1CQUVHLGVBQWdCLENB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a1BISjJCLG1CQUFBLEFHcEJ4QyxrQkhvQndDLEFHcEJ4QyxhQUFBLENBQVEsdUJIMEJZLFVHRVgsQ0FBSSxrQkhPRSxjR0pTLENBQXNCLGtCSEkvQixlR0pTLENBQXNCLGtCSEkvQixTR0pTLENBQXNCLGtCSEkvQixlR0pTLENBQXNCLGtCSEkvQixlR0pTLENBQXNCLGtCSEkvQixTR0pTLENBQXNCLGtCSEkvQixlR0pTLENBQXNCLGtCSEkvQixlR0pTLENBQXNCLGtCSEkvQixTR0pTLENBQXNCLG1CSEk5QixlR0pRLENBQXNCLG1CSEk5QixlR0pRLENBQXNCLG1CSEk5QixVR0pRLENBQXNCLENIT2pELGdESnNFNEMsb0JJOUZ4QixtQkFBQSxBR2pCVixpQkhpQlUsQUdqQlYsYUFBQSxVQTJCRSxDQUFJLHFPSEoyQixtQkFBQSxBR3BCeEMsa0JIb0J3QyxBR3BCeEMsYUFBQSxDQUFRLHNCSDBCVyxVR0VWLENBQUksaUJIT0MsY0dKVSxDQUFzQixpQkhJaEMsZUdKVSxDQUFzQixpQkhJaEMsU0dKVSxDQUFzQixpQkhJaEMsZUdKVSxDQUFzQixpQkhJaEMsZUdKVSxDQUFzQixpQkhJaEMsU0dKVSxDQUFzQixpQkhJaEMsZUdKVSxDQUFzQixpQkhJaEMsZUdKVSxDQUFzQixpQkhJaEMsU0dKVSxDQUFzQixrQkhJL0IsZUdKUyxDQUFzQixrQkhJL0IsZUdKUyxDQUFzQixrQkhJL0IsVUdKUyxDQUFzQixDSE9qRCx5Q0oyRXNDLHFCSW5HakIsbUJBQUEsQUdqQlgsaUJIaUJXLEFHakJYLGFBQUEsVUEyQkUsQ0FBSSxrUEhKMkIsbUJBQUEsQUdwQnhDLGtCSG9Cd0MsQUdwQnhDLGFBQUEsQ0FBUSx1QkgwQlksVUdFWCxDQUFJLGtCSE9FLGNHSlMsQ0FBc0Isa0JISS9CLGVHSlMsQ0FBc0Isa0JISS9CLFNHSlMsQ0FBc0Isa0JISS9CLGVHSlMsQ0FBc0Isa0JISS9CLGVHSlMsQ0FBc0Isa0JISS9CLFNHSlMsQ0FBc0Isa0JISS9CLGVHSlMsQ0FBc0Isa0JISS9CLGVHSlMsQ0FBc0Isa0JISS9CLFNHSlMsQ0FBc0IsbUJISTlCLGVHSlEsQ0FBc0IsbUJISTlCLGVHSlEsQ0FBc0IsbUJISTlCLFVHSlEsQ0FBc0IsQ0hPakQsc0NKMkVtQyxzQkluR2IsbUJBQUEsQUdqQlosaUJIaUJZLEFHakJaLGFBQUEsVUEyQkUsQ0FBSSwrUEhKMkIsbUJBQUEsQUdwQnhDLGtCSG9Cd0MsQUdwQnhDLGFBQUEsQ0FBUSx3QkgwQmEsVUdFWixDQUFJLG1CSE9HLGNHSlEsQ0FBc0IsbUJISTlCLGVHSlEsQ0FBc0IsbUJISTlCLFNHSlEsQ0FBc0IsbUJISTlCLGVHSlEsQ0FBc0IsbUJISTlCLGVHSlEsQ0FBc0IsbUJISTlCLFNHSlEsQ0FBc0IsbUJISTlCLGVHSlEsQ0FBc0IsbUJISTlCLGVHSlEsQ0FBc0IsbUJISTlCLFNHSlEsQ0FBc0Isb0JISTdCLGVHSk8sQ0FBc0Isb0JISTdCLGVHSk8sQ0FBc0Isb0JISTdCLFVHSk8sQ0FBc0IsQ0hPakQsd0NKMkVxQyxtQkluR2xCLG1CQUFBLEFHakJULGlCSGlCUyxBR2pCVCxhQUFBLFVBMkJFLENBQUksd05ISjJCLG1CQUFBLEFHcEJ4QyxrQkhvQndDLEFHcEJ4QyxhQUFBLENBQVEscUJIMEJVLFVHRVQsQ0FBSSxnQkhPQSxjR0pXLENBQXNCLGdCSElqQyxlR0pXLENBQXNCLGdCSElqQyxTR0pXLENBQXNCLGdCSElqQyxlR0pXLENBQXNCLGdCSElqQyxlR0pXLENBQXNCLGdCSElqQyxTR0pXLENBQXNCLGdCSElqQyxlR0pXLENBQXNCLGdCSElqQyxlR0pXLENBQXNCLGdCSElqQyxTR0pXLENBQXNCLGlCSEloQyxlR0pVLENBQXNCLGlCSEloQyxlR0pVLENBQXNCLGlCSEloQyxVR0pVLENBQXNCLENIT2pELGtDQUs4QixVQUMxQixDQUFJLGtDQUlzQixXQUN6QixDQUFJLGVBOEJBLHVCQ3pHcUQsdUJBQWpDLENBQWlDLGdETHNJbEIsZUk3Qm5DLHVCQ3pHcUQsdUJBQWpDLENBQWlDLENEd0lsRSxxQkEzQlEsOEJHL0RxRSxzQkZyQ2Isc0JBQWpDLENBQWlDLGdETDZIaEIscUJJekJ4Qyw4QkcvRHFFLHNCRnJDYixzQkFBakMsQ0FBaUMsQ0Q2RzFELHFCQXJDQSxVRy9CVSxDQUFJLHVCSG1DWixVRy9CUSxDQUFJLHdCSHVDVCxpQ0dwQzRDLENBQTBELHdCSG9DdEcsa0NHcEM0QyxDQUEwRCx3QkhvQ3RHLDRCR3BDNEMsQ0FBMEQsd0JIb0N0RyxrQ0dwQzRDLENBQTBELHdCSG9DdEcsa0NHcEM0QyxDQUEwRCx3QkhvQ3RHLDRCR3BDNEMsQ0FBMEQsd0JIb0N0RyxrQ0dwQzRDLENBQTBELHdCSG9DdEcsa0NHcEM0QyxDQUEwRCx3QkhvQ3RHLDRCR3BDNEMsQ0FBMEQseUJIb0NyRyxrQ0dwQzJDLENBQTBELHlCSG9Dckcsa0NHcEMyQyxDQUEwRCx5QkhvQ3JHLDZCR3BDMkMsQ0FBMEQsZ0RQNkVqRSxxQklyRDFDLFVHL0JVLENBQUksdUJIbUNaLFVHL0JRLENBQUksd0JIdUNULGlDR3BDNEMsQ0FBMEQsd0JIb0N0RyxrQ0dwQzRDLENBQTBELHdCSG9DdEcsNEJHcEM0QyxDQUEwRCx3QkhvQ3RHLGtDR3BDNEMsQ0FBMEQsd0JIb0N0RyxrQ0dwQzRDLENBQTBELHdCSG9DdEcsNEJHcEM0QyxDQUEwRCx3QkhvQ3RHLGtDR3BDNEMsQ0FBMEQsd0JIb0N0RyxrQ0dwQzRDLENBQTBELHdCSG9DdEcsNEJHcEM0QyxDQUEwRCx5QkhvQ3JHLGtDR3BDMkMsQ0FBMEQseUJIb0NyRyxrQ0dwQzJDLENBQTBELHlCSG9DckcsNkJHcEMyQyxDQUEwRCw0Qkh3QnBHLFVHL0JHLENBQUksOEJIbUNMLFVHL0JDLENBQUkseUJIdUNSLGlDR3BDMkMsQ0FBMEQseUJIb0NyRyxrQ0dwQzJDLENBQTBELHlCSG9DckcsNEJHcEMyQyxDQUEwRCx5QkhvQ3JHLGtDR3BDMkMsQ0FBMEQseUJIb0NyRyxrQ0dwQzJDLENBQTBELHlCSG9DckcsNEJHcEMyQyxDQUEwRCx5QkhvQ3JHLGtDR3BDMkMsQ0FBMEQseUJIb0NyRyxrQ0dwQzJDLENBQTBELHlCSG9DckcsNEJHcEMyQyxDQUEwRCwwQkhvQ3BHLGtDR3BDMEMsQ0FBMEQsMEJIb0NwRyxrQ0dwQzBDLENBQTBELDBCSG9DcEcsNkJHcEMwQyxDQUEwRCxDSHNDL0csZ0RKdUM4QywyQklyRHBDLFVHL0JJLENBQUksNkJIbUNOLFVHL0JFLENBQUksd0JIdUNULGlDR3BDNEMsQ0FBMEQsd0JIb0N0RyxrQ0dwQzRDLENBQTBELHdCSG9DdEcsNEJHcEM0QyxDQUEwRCx3QkhvQ3RHLGtDR3BDNEMsQ0FBMEQsd0JIb0N0RyxrQ0dwQzRDLENBQTBELHdCSG9DdEcsNEJHcEM0QyxDQUEwRCx3QkhvQ3RHLGtDR3BDNEMsQ0FBMEQsd0JIb0N0RyxrQ0dwQzRDLENBQTBELHdCSG9DdEcsNEJHcEM0QyxDQUEwRCx5QkhvQ3JHLGtDR3BDMkMsQ0FBMEQseUJIb0NyRyxrQ0dwQzJDLENBQTBELHlCSG9DckcsNkJHcEMyQyxDQUEwRCxDSHNDL0cseUNKNEN3Qyw0QkkxRDdCLFVHL0JHLENBQUksOEJIbUNMLFVHL0JDLENBQUkseUJIdUNSLGlDR3BDMkMsQ0FBMEQseUJIb0NyRyxrQ0dwQzJDLENBQTBELHlCSG9DckcsNEJHcEMyQyxDQUEwRCx5QkhvQ3JHLGtDR3BDMkMsQ0FBMEQseUJIb0NyRyxrQ0dwQzJDLENBQTBELHlCSG9DckcsNEJHcEMyQyxDQUEwRCx5QkhvQ3JHLGtDR3BDMkMsQ0FBMEQseUJIb0NyRyxrQ0dwQzJDLENBQTBELHlCSG9DckcsNEJHcEMyQyxDQUEwRCwwQkhvQ3BHLGtDR3BDMEMsQ0FBMEQsMEJIb0NwRyxrQ0dwQzBDLENBQTBELDBCSG9DcEcsNkJHcEMwQyxDQUEwRCxDSHNDL0csc0NKNENxQyw2QkkxRHpCLFVHL0JFLENBQUksK0JIbUNKLFVHL0JBLENBQUksMEJIdUNQLGlDR3BDMEMsQ0FBMEQsMEJIb0NwRyxrQ0dwQzBDLENBQTBELDBCSG9DcEcsNEJHcEMwQyxDQUEwRCwwQkhvQ3BHLGtDR3BDMEMsQ0FBMEQsMEJIb0NwRyxrQ0dwQzBDLENBQTBELDBCSG9DcEcsNEJHcEMwQyxDQUEwRCwwQkhvQ3BHLGtDR3BDMEMsQ0FBMEQsMEJIb0NwRyxrQ0dwQzBDLENBQTBELDBCSG9DcEcsNEJHcEMwQyxDQUEwRCwyQkhvQ25HLGtDR3BDeUMsQ0FBMEQsMkJIb0NuRyxrQ0dwQ3lDLENBQTBELDJCSG9DbkcsNkJHcEN5QyxDQUEwRCxDSHNDL0csd0NKNEN1QywwQkkxRDlCLFVHL0JLLENBQUksNEJIbUNQLFVHL0JHLENBQUksdUJIdUNWLGlDR3BDNkMsQ0FBMEQsdUJIb0N2RyxrQ0dwQzZDLENBQTBELHVCSG9DdkcsNEJHcEM2QyxDQUEwRCx1QkhvQ3ZHLGtDR3BDNkMsQ0FBMEQsdUJIb0N2RyxrQ0dwQzZDLENBQTBELHVCSG9DdkcsNEJHcEM2QyxDQUEwRCx1QkhvQ3ZHLGtDR3BDNkMsQ0FBMEQsdUJIb0N2RyxrQ0dwQzZDLENBQTBELHVCSG9DdkcsNEJHcEM2QyxDQUEwRCx3QkhvQ3RHLGtDR3BDNEMsQ0FBMEQsd0JIb0N0RyxrQ0dwQzRDLENBQTBELHdCSG9DdEcsNkJHcEM0QyxDQUEwRCxDSHNDL0csZ0NBaURjLHdCQ2hKa0Qsc0JBQWpDLENBQWlDLGdETHNJbEIsZ0NJVWhDLHdCQ2hKa0Qsc0JBQWpDLENBQWlDLENEa0poRSwyQ0FMWSx3QkM3SW9ELHNCQUFqQyxDQUFpQyxnRExzSWxCLDJDSU9sQyx3QkM3SW9ELHNCQUFqQyxDQUFpQyxDRHdKaEUsc0JBR00sd0JDM0owRCxzQkFBakMsQ0FBaUMsZ0RMc0lsQixzQklxQnhDLHdCQzNKMEQsc0JBQWpDLENBQWlDLENENkpoRSxrQkkvSk0sVUQyRHVCLENBQXNCLGtCQzNEN0MsU0QyRHVCLENBQXNCLGtCQzNEN0MsZUQyRHVCLENBQXNCLGtCQzNEN0MsU0QyRHVCLENBQXNCLGtCQzNEN0MsU0QyRHVCLENBQXNCLGtCQzNEN0MsZUQyRHVCLENBQXNCLGtCQzNEN0MsZUQyRHVCLENBQXNCLGtCQzNEN0MsV0QyRHVCLENBQXNCLGdEUDZFTCxtQlF4SXhDLFVEMkR1QixDQUFzQixtQkMzRDdDLFNEMkR1QixDQUFzQixtQkMzRDdDLGVEMkR1QixDQUFzQixtQkMzRDdDLFNEMkR1QixDQUFzQixtQkMzRDdDLFNEMkR1QixDQUFzQixtQkMzRDdDLGVEMkR1QixDQUFzQixtQkMzRDdDLGVEMkR1QixDQUFzQixtQkMzRDdDLFdEMkR1QixDQUFzQixDQ3pEckQsZ0RSc0lnRCxrQlF4SXhDLFVEMkR1QixDQUFzQixrQkMzRDdDLFNEMkR1QixDQUFzQixrQkMzRDdDLGVEMkR1QixDQUFzQixrQkMzRDdDLFNEMkR1QixDQUFzQixrQkMzRDdDLFNEMkR1QixDQUFzQixrQkMzRDdDLGVEMkR1QixDQUFzQixrQkMzRDdDLGVEMkR1QixDQUFzQixrQkMzRDdDLFdEMkR1QixDQUFzQixDQ3pEckQseUNSMkkwQyxtQlE3SWxDLFVEMkR1QixDQUFzQixtQkMzRDdDLFNEMkR1QixDQUFzQixtQkMzRDdDLGVEMkR1QixDQUFzQixtQkMzRDdDLFNEMkR1QixDQUFzQixtQkMzRDdDLFNEMkR1QixDQUFzQixtQkMzRDdDLGVEMkR1QixDQUFzQixtQkMzRDdDLGVEMkR1QixDQUFzQixtQkMzRDdDLFdEMkR1QixDQUFzQixDQ3pEckQsc0NSMkl1QyxvQlE3SS9CLFVEMkR1QixDQUFzQixvQkMzRDdDLFNEMkR1QixDQUFzQixvQkMzRDdDLGVEMkR1QixDQUFzQixvQkMzRDdDLFNEMkR1QixDQUFzQixvQkMzRDdDLFNEMkR1QixDQUFzQixvQkMzRDdDLGVEMkR1QixDQUFzQixvQkMzRDdDLGVEMkR1QixDQUFzQixvQkMzRDdDLFdEMkR1QixDQUFzQixDQ3pEckQsd0NSMkl5QyxpQlE3SWpDLFVEMkR1QixDQUFzQixpQkMzRDdDLFNEMkR1QixDQUFzQixpQkMzRDdDLGVEMkR1QixDQUFzQixpQkMzRDdDLFNEMkR1QixDQUFzQixpQkMzRDdDLFNEMkR1QixDQUFzQixpQkMzRDdDLGVEMkR1QixDQUFzQixpQkMzRDdDLGVEMkR1QixDQUFzQixpQkMzRDdDLFdEMkR1QixDQUFzQixDQ3pEckQsZ0NBRlEsNkJEMkQrQyxDQUEwRCxnQ0MzRHpHLDRCRDJEK0MsQ0FBMEQsZ0NDM0R6RyxrQ0QyRCtDLENBQTBELGdDQzNEekcsNEJEMkQrQyxDQUEwRCxnQ0MzRHpHLDRCRDJEK0MsQ0FBMEQsZ0NDM0R6RyxrQ0QyRCtDLENBQTBELGdDQzNEekcsa0NEMkQrQyxDQUEwRCxnQ0MzRHpHLDhCRDJEK0MsQ0FBMEQsZ0RQNkVqRSxnQ1F4SXhDLDZCRDJEK0MsQ0FBMEQsZ0NDM0R6Ryw0QkQyRCtDLENBQTBELGdDQzNEekcsa0NEMkQrQyxDQUEwRCxnQ0MzRHpHLDRCRDJEK0MsQ0FBMEQsZ0NDM0R6Ryw0QkQyRCtDLENBQTBELGdDQzNEekcsa0NEMkQrQyxDQUEwRCxnQ0MzRHpHLGtDRDJEK0MsQ0FBMEQsZ0NDM0R6Ryw4QkQyRCtDLENBQTBELGlDQzNEekcsNkJEMkQrQyxDQUEwRCxpQ0MzRHpHLDRCRDJEK0MsQ0FBMEQsaUNDM0R6RyxrQ0QyRCtDLENBQTBELGlDQzNEekcsNEJEMkQrQyxDQUEwRCxpQ0MzRHpHLDRCRDJEK0MsQ0FBMEQsaUNDM0R6RyxrQ0QyRCtDLENBQTBELGlDQzNEekcsa0NEMkQrQyxDQUEwRCxpQ0MzRHpHLDhCRDJEK0MsQ0FBMEQsQ0N6RGpILGdEUnNJZ0QsZ0NReEl4Qyw2QkQyRCtDLENBQTBELGdDQzNEekcsNEJEMkQrQyxDQUEwRCxnQ0MzRHpHLGtDRDJEK0MsQ0FBMEQsZ0NDM0R6Ryw0QkQyRCtDLENBQTBELGdDQzNEekcsNEJEMkQrQyxDQUEwRCxnQ0MzRHpHLGtDRDJEK0MsQ0FBMEQsZ0NDM0R6RyxrQ0QyRCtDLENBQTBELGdDQzNEekcsOEJEMkQrQyxDQUEwRCxDQ3pEakgseUNSMkkwQyxpQ1E3SWxDLDZCRDJEK0MsQ0FBMEQsaUNDM0R6Ryw0QkQyRCtDLENBQTBELGlDQzNEekcsa0NEMkQrQyxDQUEwRCxpQ0MzRHpHLDRCRDJEK0MsQ0FBMEQsaUNDM0R6Ryw0QkQyRCtDLENBQTBELGlDQzNEekcsa0NEMkQrQyxDQUEwRCxpQ0MzRHpHLGtDRDJEK0MsQ0FBMEQsaUNDM0R6Ryw4QkQyRCtDLENBQTBELENDekRqSCxzQ1IySXVDLGtDUTdJL0IsNkJEMkQrQyxDQUEwRCxrQ0MzRHpHLDRCRDJEK0MsQ0FBMEQsa0NDM0R6RyxrQ0QyRCtDLENBQTBELGtDQzNEekcsNEJEMkQrQyxDQUEwRCxrQ0MzRHpHLDRCRDJEK0MsQ0FBMEQsa0NDM0R6RyxrQ0QyRCtDLENBQTBELGtDQzNEekcsa0NEMkQrQyxDQUEwRCxrQ0MzRHpHLDhCRDJEK0MsQ0FBMEQsQ0N6RGpILHdDUjJJeUMsK0JRN0lqQyw2QkQyRCtDLENBQTBELCtCQzNEekcsNEJEMkQrQyxDQUEwRCwrQkMzRHpHLGtDRDJEK0MsQ0FBMEQsK0JDM0R6Ryw0QkQyRCtDLENBQTBELCtCQzNEekcsNEJEMkQrQyxDQUEwRCwrQkMzRHpHLGtDRDJEK0MsQ0FBMEQsK0JDM0R6RyxrQ0QyRCtDLENBQTBELCtCQzNEekcsOEJEMkQrQyxDQUEwRCxDQ3pEakgsdUJKeU15QixlS2hOTSxhQUFELENBQUMsNkJBR3JCLGVBRXVCLGFBQUQsQ0FBQyxnQ0FzQmQsY0ZxQ1ksQ0FBc0IsZ0NFckNsQyxlRnFDWSxDQUFzQixnQ0VyQ2xDLFNGcUNZLENBQXNCLGdDRXJDbEMsZUZxQ1ksQ0FBc0IsZ0NFckNsQyxlRnFDWSxDQUFzQixnQ0VyQ2xDLFNGcUNZLENBQXNCLGdDRXJDbEMsZUZxQ1ksQ0FBc0IsZ0NFckNsQyxlRnFDWSxDQUFzQixnQ0VyQ2xDLFNGcUNZLENBQXNCLGlDRXJDakMsZUZxQ1csQ0FBc0IsaUNFckNqQyxlRnFDVyxDQUFzQixpQ0VyQ2pDLFVGcUNXLENBQXNCLGdEUDZFTCxpQ1NsSDVCLGNGcUNXLENBQXNCLGlDRXJDakMsZUZxQ1csQ0FBc0IsaUNFckNqQyxTRnFDVyxDQUFzQixpQ0VyQ2pDLGVGcUNXLENBQXNCLGlDRXJDakMsZUZxQ1csQ0FBc0IsaUNFckNqQyxTRnFDVyxDQUFzQixpQ0VyQ2pDLGVGcUNXLENBQXNCLGlDRXJDakMsZUZxQ1csQ0FBc0IsaUNFckNqQyxTRnFDVyxDQUFzQixrQ0VyQ2hDLGVGcUNVLENBQXNCLGtDRXJDaEMsZUZxQ1UsQ0FBc0Isa0NFckNoQyxVRnFDVSxDQUFzQixDRW5DM0MsZ0RUZ0hzQyxnQ1NsSDdCLGNGcUNZLENBQXNCLGdDRXJDbEMsZUZxQ1ksQ0FBc0IsZ0NFckNsQyxTRnFDWSxDQUFzQixnQ0VyQ2xDLGVGcUNZLENBQXNCLGdDRXJDbEMsZUZxQ1ksQ0FBc0IsZ0NFckNsQyxTRnFDWSxDQUFzQixnQ0VyQ2xDLGVGcUNZLENBQXNCLGdDRXJDbEMsZUZxQ1ksQ0FBc0IsZ0NFckNsQyxTRnFDWSxDQUFzQixpQ0VyQ2pDLGVGcUNXLENBQXNCLGlDRXJDakMsZUZxQ1csQ0FBc0IsaUNFckNqQyxVRnFDVyxDQUFzQixDRW5DM0MseUNUcUhnQyxpQ1N2SHRCLGNGcUNXLENBQXNCLGlDRXJDakMsZUZxQ1csQ0FBc0IsaUNFckNqQyxTRnFDVyxDQUFzQixpQ0VyQ2pDLGVGcUNXLENBQXNCLGlDRXJDakMsZUZxQ1csQ0FBc0IsaUNFckNqQyxTRnFDVyxDQUFzQixpQ0VyQ2pDLGVGcUNXLENBQXNCLGlDRXJDakMsZUZxQ1csQ0FBc0IsaUNFckNqQyxTRnFDVyxDQUFzQixrQ0VyQ2hDLGVGcUNVLENBQXNCLGtDRXJDaEMsZUZxQ1UsQ0FBc0Isa0NFckNoQyxVRnFDVSxDQUFzQixDRW5DM0Msc0NUcUg2QixrQ1N2SGxCLGNGcUNVLENBQXNCLGtDRXJDaEMsZUZxQ1UsQ0FBc0Isa0NFckNoQyxTRnFDVSxDQUFzQixrQ0VyQ2hDLGVGcUNVLENBQXNCLGtDRXJDaEMsZUZxQ1UsQ0FBc0Isa0NFckNoQyxTRnFDVSxDQUFzQixrQ0VyQ2hDLGVGcUNVLENBQXNCLGtDRXJDaEMsZUZxQ1UsQ0FBc0Isa0NFckNoQyxTRnFDVSxDQUFzQixtQ0VyQy9CLGVGcUNTLENBQXNCLG1DRXJDL0IsZUZxQ1MsQ0FBc0IsbUNFckMvQixVRnFDUyxDQUFzQixDRW5DM0Msd0NUcUgrQiwrQlN2SHZCLGNGcUNhLENBQXNCLCtCRXJDbkMsZUZxQ2EsQ0FBc0IsK0JFckNuQyxTRnFDYSxDQUFzQiwrQkVyQ25DLGVGcUNhLENBQXNCLCtCRXJDbkMsZUZxQ2EsQ0FBc0IsK0JFckNuQyxTRnFDYSxDQUFzQiwrQkVyQ25DLGVGcUNhLENBQXNCLCtCRXJDbkMsZUZxQ2EsQ0FBc0IsK0JFckNuQyxTRnFDYSxDQUFzQixnQ0VyQ2xDLGVGcUNZLENBQXNCLGdDRXJDbEMsZUZxQ1ksQ0FBc0IsZ0NFckNsQyxVRnFDWSxDQUFzQixDRW5DM0Msd0JMeUxnQixlSy9LSyxhQUFELENBQUMsOEJBR3JCLGdCQUV5QixjQUFELENBQUMsZ0RUaUdhLHdCSW1FdEIsZUtoTkssYUFBRCxDQUFDLDhCQUdyQixlQUV1QixhQUFELENBQUMsQ0FFN0IsZ0RUc0k0QyxpQ1MzSDdCLGNGOENZLENBQXNCLGlDRTlDbEMsZUY4Q1ksQ0FBc0IsaUNFOUNsQyxTRjhDWSxDQUFzQixpQ0U5Q2xDLGVGOENZLENBQXNCLGlDRTlDbEMsZUY4Q1ksQ0FBc0IsaUNFOUNsQyxTRjhDWSxDQUFzQixpQ0U5Q2xDLGVGOENZLENBQXNCLGlDRTlDbEMsZUY4Q1ksQ0FBc0IsaUNFOUNsQyxTRjhDWSxDQUFzQixrQ0U5Q2pDLGVGOENXLENBQXNCLGtDRTlDakMsZUY4Q1csQ0FBc0Isa0NFOUNqQyxVRjhDVyxDQUFzQixDRTVDM0MsZ0RUeUhzQyxrQ1NsSDVCLGNGcUNXLENBQXNCLGtDRXJDakMsZUZxQ1csQ0FBc0Isa0NFckNqQyxTRnFDVyxDQUFzQixrQ0VyQ2pDLGVGcUNXLENBQXNCLGtDRXJDakMsZUZxQ1csQ0FBc0Isa0NFckNqQyxTRnFDVyxDQUFzQixrQ0VyQ2pDLGVGcUNXLENBQXNCLGtDRXJDakMsZUZxQ1csQ0FBc0Isa0NFckNqQyxTRnFDVyxDQUFzQixtQ0VyQ2hDLGVGcUNVLENBQXNCLG1DRXJDaEMsZUZxQ1UsQ0FBc0IsbUNFckNoQyxVRnFDVSxDQUFzQixDRW5DM0MsZ0RUZ0hzQyxpQ1NsSDdCLGNGcUNZLENBQXNCLGlDRXJDbEMsZUZxQ1ksQ0FBc0IsaUNFckNsQyxTRnFDWSxDQUFzQixpQ0VyQ2xDLGVGcUNZLENBQXNCLGlDRXJDbEMsZUZxQ1ksQ0FBc0IsaUNFckNsQyxTRnFDWSxDQUFzQixpQ0VyQ2xDLGVGcUNZLENBQXNCLGlDRXJDbEMsZUZxQ1ksQ0FBc0IsaUNFckNsQyxTRnFDWSxDQUFzQixrQ0VyQ2pDLGVGcUNXLENBQXNCLGtDRXJDakMsZUZxQ1csQ0FBc0Isa0NFckNqQyxVRnFDVyxDQUFzQixDRW5DM0MseUNUcUhnQyxrQ1N2SHRCLGNGcUNXLENBQXNCLGtDRXJDakMsZUZxQ1csQ0FBc0Isa0NFckNqQyxTRnFDVyxDQUFzQixrQ0VyQ2pDLGVGcUNXLENBQXNCLGtDRXJDakMsZUZxQ1csQ0FBc0Isa0NFckNqQyxTRnFDVyxDQUFzQixrQ0VyQ2pDLGVGcUNXLENBQXNCLGtDRXJDakMsZUZxQ1csQ0FBc0Isa0NFckNqQyxTRnFDVyxDQUFzQixtQ0VyQ2hDLGVGcUNVLENBQXNCLG1DRXJDaEMsZUZxQ1UsQ0FBc0IsbUNFckNoQyxVRnFDVSxDQUFzQixDRW5DM0Msc0NUcUg2QixtQ1N2SGxCLGNGcUNVLENBQXNCLG1DRXJDaEMsZUZxQ1UsQ0FBc0IsbUNFckNoQyxTRnFDVSxDQUFzQixtQ0VyQ2hDLGVGcUNVLENBQXNCLG1DRXJDaEMsZUZxQ1UsQ0FBc0IsbUNFckNoQyxTRnFDVSxDQUFzQixtQ0VyQ2hDLGVGcUNVLENBQXNCLG1DRXJDaEMsZUZxQ1UsQ0FBc0IsbUNFckNoQyxTRnFDVSxDQUFzQixvQ0VyQy9CLGVGcUNTLENBQXNCLG9DRXJDL0IsZUZxQ1MsQ0FBc0Isb0NFckMvQixVRnFDUyxDQUFzQixDRW5DM0Msd0NUcUgrQixnQ1N2SHZCLGNGcUNhLENBQXNCLGdDRXJDbkMsZUZxQ2EsQ0FBc0IsZ0NFckNuQyxTRnFDYSxDQUFzQixnQ0VyQ25DLGVGcUNhLENBQXNCLGdDRXJDbkMsZUZxQ2EsQ0FBc0IsZ0NFckNuQyxTRnFDYSxDQUFzQixnQ0VyQ25DLGVGcUNhLENBQXNCLGdDRXJDbkMsZUZxQ2EsQ0FBc0IsZ0NFckNuQyxTRnFDYSxDQUFzQixpQ0VyQ2xDLGVGcUNZLENBQXNCLGlDRXJDbEMsZUZxQ1ksQ0FBc0IsaUNFckNsQyxVRnFDWSxDQUFzQixDRW5DM0MsZ0RUZ0hzQyx5Qkl5RXJCLGVLL0tJLGFBQUQsQ0FBQywrQkFHckIsZ0JBRXlCLGNBQUQsQ0FBQyxDQUUvQixnRFQrRjRDLHVCSW1FdkIsZUtoTk0sYUFBRCxDQUFDLDZCQUdyQixlQUV1QixhQUFELENBQUMsQ0FFN0IsZ0RUc0k0QyxnQ1MzSDdCLGNGOENZLENBQXNCLGdDRTlDbEMsZUY4Q1ksQ0FBc0IsZ0NFOUNsQyxTRjhDWSxDQUFzQixnQ0U5Q2xDLGVGOENZLENBQXNCLGdDRTlDbEMsZUY4Q1ksQ0FBc0IsZ0NFOUNsQyxTRjhDWSxDQUFzQixnQ0U5Q2xDLGVGOENZLENBQXNCLGdDRTlDbEMsZUY4Q1ksQ0FBc0IsZ0NFOUNsQyxTRjhDWSxDQUFzQixpQ0U5Q2pDLGVGOENXLENBQXNCLGlDRTlDakMsZUY4Q1csQ0FBc0IsaUNFOUNqQyxVRjhDVyxDQUFzQixDRTVDM0MsZ0RUeUhzQyxpQ1MzSDVCLGNGOENXLENBQXNCLGlDRTlDakMsZUY4Q1csQ0FBc0IsaUNFOUNqQyxTRjhDVyxDQUFzQixpQ0U5Q2pDLGVGOENXLENBQXNCLGlDRTlDakMsZUY4Q1csQ0FBc0IsaUNFOUNqQyxTRjhDVyxDQUFzQixpQ0U5Q2pDLGVGOENXLENBQXNCLGlDRTlDakMsZUY4Q1csQ0FBc0IsaUNFOUNqQyxTRjhDVyxDQUFzQixrQ0U5Q2hDLGVGOENVLENBQXNCLGtDRTlDaEMsZUY4Q1UsQ0FBc0Isa0NFOUNoQyxVRjhDVSxDQUFzQixDRTVDM0MsZ0RUeUhzQyxnQ1NsSDdCLGNGcUNZLENBQXNCLGdDRXJDbEMsZUZxQ1ksQ0FBc0IsZ0NFckNsQyxTRnFDWSxDQUFzQixnQ0VyQ2xDLGVGcUNZLENBQXNCLGdDRXJDbEMsZUZxQ1ksQ0FBc0IsZ0NFckNsQyxTRnFDWSxDQUFzQixnQ0VyQ2xDLGVGcUNZLENBQXNCLGdDRXJDbEMsZUZxQ1ksQ0FBc0IsZ0NFckNsQyxTRnFDWSxDQUFzQixpQ0VyQ2pDLGVGcUNXLENBQXNCLGlDRXJDakMsZUZxQ1csQ0FBc0IsaUNFckNqQyxVRnFDVyxDQUFzQixDRW5DM0MseUNUcUhnQyxpQ1N2SHRCLGNGcUNXLENBQXNCLGlDRXJDakMsZUZxQ1csQ0FBc0IsaUNFckNqQyxTRnFDVyxDQUFzQixpQ0VyQ2pDLGVGcUNXLENBQXNCLGlDRXJDakMsZUZxQ1csQ0FBc0IsaUNFckNqQyxTRnFDVyxDQUFzQixpQ0VyQ2pDLGVGcUNXLENBQXNCLGlDRXJDakMsZUZxQ1csQ0FBc0IsaUNFckNqQyxTRnFDVyxDQUFzQixrQ0VyQ2hDLGVGcUNVLENBQXNCLGtDRXJDaEMsZUZxQ1UsQ0FBc0Isa0NFckNoQyxVRnFDVSxDQUFzQixDRW5DM0Msc0NUcUg2QixrQ1N2SGxCLGNGcUNVLENBQXNCLGtDRXJDaEMsZUZxQ1UsQ0FBc0Isa0NFckNoQyxTRnFDVSxDQUFzQixrQ0VyQ2hDLGVGcUNVLENBQXNCLGtDRXJDaEMsZUZxQ1UsQ0FBc0Isa0NFckNoQyxTRnFDVSxDQUFzQixrQ0VyQ2hDLGVGcUNVLENBQXNCLGtDRXJDaEMsZUZxQ1UsQ0FBc0Isa0NFckNoQyxTRnFDVSxDQUFzQixtQ0VyQy9CLGVGcUNTLENBQXNCLG1DRXJDL0IsZUZxQ1MsQ0FBc0IsbUNFckMvQixVRnFDUyxDQUFzQixDRW5DM0Msd0NUcUgrQiwrQlN2SHZCLGNGcUNhLENBQXNCLCtCRXJDbkMsZUZxQ2EsQ0FBc0IsK0JFckNuQyxTRnFDYSxDQUFzQiwrQkVyQ25DLGVGcUNhLENBQXNCLCtCRXJDbkMsZUZxQ2EsQ0FBc0IsK0JFckNuQyxTRnFDYSxDQUFzQiwrQkVyQ25DLGVGcUNhLENBQXNCLCtCRXJDbkMsZUZxQ2EsQ0FBc0IsK0JFckNuQyxTRnFDYSxDQUFzQixnQ0VyQ2xDLGVGcUNZLENBQXNCLGdDRXJDbEMsZUZxQ1ksQ0FBc0IsZ0NFckNsQyxVRnFDWSxDQUFzQixDRW5DM0MsZ0RUZ0hzQyx3Qkl5RXRCLGVLL0tLLGFBQUQsQ0FBQyw4QkFHckIsZ0JBRXlCLGNBQUQsQ0FBQyxDQUUvQix5Q1RvR3NDLHdCSThEaEIsZUtoTkssYUFBRCxDQUFDLDhCQUdyQixlQUV1QixhQUFELENBQUMsQ0FFN0IseUNUMklzQyxpQ1NoSXZCLGNGOENZLENBQXNCLGlDRTlDbEMsZUY4Q1ksQ0FBc0IsaUNFOUNsQyxTRjhDWSxDQUFzQixpQ0U5Q2xDLGVGOENZLENBQXNCLGlDRTlDbEMsZUY4Q1ksQ0FBc0IsaUNFOUNsQyxTRjhDWSxDQUFzQixpQ0U5Q2xDLGVGOENZLENBQXNCLGlDRTlDbEMsZUY4Q1ksQ0FBc0IsaUNFOUNsQyxTRjhDWSxDQUFzQixrQ0U5Q2pDLGVGOENXLENBQXNCLGtDRTlDakMsZUY4Q1csQ0FBc0Isa0NFOUNqQyxVRjhDVyxDQUFzQixDRTVDM0MseUNUOEhnQyxrQ1NoSXRCLGNGOENXLENBQXNCLGtDRTlDakMsZUY4Q1csQ0FBc0Isa0NFOUNqQyxTRjhDVyxDQUFzQixrQ0U5Q2pDLGVGOENXLENBQXNCLGtDRTlDakMsZUY4Q1csQ0FBc0Isa0NFOUNqQyxTRjhDVyxDQUFzQixrQ0U5Q2pDLGVGOENXLENBQXNCLGtDRTlDakMsZUY4Q1csQ0FBc0Isa0NFOUNqQyxTRjhDVyxDQUFzQixtQ0U5Q2hDLGVGOENVLENBQXNCLG1DRTlDaEMsZUY4Q1UsQ0FBc0IsbUNFOUNoQyxVRjhDVSxDQUFzQixDRTVDM0MseUNUOEhnQyxpQ1NoSXZCLGNGOENZLENBQXNCLGlDRTlDbEMsZUY4Q1ksQ0FBc0IsaUNFOUNsQyxTRjhDWSxDQUFzQixpQ0U5Q2xDLGVGOENZLENBQXNCLGlDRTlDbEMsZUY4Q1ksQ0FBc0IsaUNFOUNsQyxTRjhDWSxDQUFzQixpQ0U5Q2xDLGVGOENZLENBQXNCLGlDRTlDbEMsZUY4Q1ksQ0FBc0IsaUNFOUNsQyxTRjhDWSxDQUFzQixrQ0U5Q2pDLGVGOENXLENBQXNCLGtDRTlDakMsZUY4Q1csQ0FBc0Isa0NFOUNqQyxVRjhDVyxDQUFzQixDRTVDM0MseUNUOEhnQyxrQ1N2SHRCLGNGcUNXLENBQXNCLGtDRXJDakMsZUZxQ1csQ0FBc0Isa0NFckNqQyxTRnFDVyxDQUFzQixrQ0VyQ2pDLGVGcUNXLENBQXNCLGtDRXJDakMsZUZxQ1csQ0FBc0Isa0NFckNqQyxTRnFDVyxDQUFzQixrQ0VyQ2pDLGVGcUNXLENBQXNCLGtDRXJDakMsZUZxQ1csQ0FBc0Isa0NFckNqQyxTRnFDVyxDQUFzQixtQ0VyQ2hDLGVGcUNVLENBQXNCLG1DRXJDaEMsZUZxQ1UsQ0FBc0IsbUNFckNoQyxVRnFDVSxDQUFzQixDRW5DM0Msc0NUcUg2QixtQ1N2SGxCLGNGcUNVLENBQXNCLG1DRXJDaEMsZUZxQ1UsQ0FBc0IsbUNFckNoQyxTRnFDVSxDQUFzQixtQ0VyQ2hDLGVGcUNVLENBQXNCLG1DRXJDaEMsZUZxQ1UsQ0FBc0IsbUNFckNoQyxTRnFDVSxDQUFzQixtQ0VyQ2hDLGVGcUNVLENBQXNCLG1DRXJDaEMsZUZxQ1UsQ0FBc0IsbUNFckNoQyxTRnFDVSxDQUFzQixvQ0VyQy9CLGVGcUNTLENBQXNCLG9DRXJDL0IsZUZxQ1MsQ0FBc0Isb0NFckMvQixVRnFDUyxDQUFzQixDRW5DM0Msd0NUcUgrQixnQ1N2SHZCLGNGcUNhLENBQXNCLGdDRXJDbkMsZUZxQ2EsQ0FBc0IsZ0NFckNuQyxTRnFDYSxDQUFzQixnQ0VyQ25DLGVGcUNhLENBQXNCLGdDRXJDbkMsZUZxQ2EsQ0FBc0IsZ0NFckNuQyxTRnFDYSxDQUFzQixnQ0VyQ25DLGVGcUNhLENBQXNCLGdDRXJDbkMsZUZxQ2EsQ0FBc0IsZ0NFckNuQyxTRnFDYSxDQUFzQixpQ0VyQ2xDLGVGcUNZLENBQXNCLGlDRXJDbEMsZUZxQ1ksQ0FBc0IsaUNFckNsQyxVRnFDWSxDQUFzQixDRW5DM0MseUNUcUhnQyx5QklvRWYsZUsvS0ksYUFBRCxDQUFDLCtCQUdyQixnQkFFeUIsY0FBRCxDQUFDLENBRS9CLHNDVG9HbUMseUJJOERaLGVLaE5JLGFBQUQsQ0FBQywrQkFHckIsZUFFdUIsYUFBRCxDQUFDLENBRTdCLHNDVDJJbUMsa0NTaElwQixjRjhDWSxDQUFzQixrQ0U5Q2xDLGVGOENZLENBQXNCLGtDRTlDbEMsU0Y4Q1ksQ0FBc0Isa0NFOUNsQyxlRjhDWSxDQUFzQixrQ0U5Q2xDLGVGOENZLENBQXNCLGtDRTlDbEMsU0Y4Q1ksQ0FBc0Isa0NFOUNsQyxlRjhDWSxDQUFzQixrQ0U5Q2xDLGVGOENZLENBQXNCLGtDRTlDbEMsU0Y4Q1ksQ0FBc0IsbUNFOUNqQyxlRjhDVyxDQUFzQixtQ0U5Q2pDLGVGOENXLENBQXNCLG1DRTlDakMsVUY4Q1csQ0FBc0IsQ0U1QzNDLHNDVDhINkIsbUNTaEluQixjRjhDVyxDQUFzQixtQ0U5Q2pDLGVGOENXLENBQXNCLG1DRTlDakMsU0Y4Q1csQ0FBc0IsbUNFOUNqQyxlRjhDVyxDQUFzQixtQ0U5Q2pDLGVGOENXLENBQXNCLG1DRTlDakMsU0Y4Q1csQ0FBc0IsbUNFOUNqQyxlRjhDVyxDQUFzQixtQ0U5Q2pDLGVGOENXLENBQXNCLG1DRTlDakMsU0Y4Q1csQ0FBc0Isb0NFOUNoQyxlRjhDVSxDQUFzQixvQ0U5Q2hDLGVGOENVLENBQXNCLG9DRTlDaEMsVUY4Q1UsQ0FBc0IsQ0U1QzNDLHNDVDhINkIsa0NTaElwQixjRjhDWSxDQUFzQixrQ0U5Q2xDLGVGOENZLENBQXNCLGtDRTlDbEMsU0Y4Q1ksQ0FBc0Isa0NFOUNsQyxlRjhDWSxDQUFzQixrQ0U5Q2xDLGVGOENZLENBQXNCLGtDRTlDbEMsU0Y4Q1ksQ0FBc0Isa0NFOUNsQyxlRjhDWSxDQUFzQixrQ0U5Q2xDLGVGOENZLENBQXNCLGtDRTlDbEMsU0Y4Q1ksQ0FBc0IsbUNFOUNqQyxlRjhDVyxDQUFzQixtQ0U5Q2pDLGVGOENXLENBQXNCLG1DRTlDakMsVUY4Q1csQ0FBc0IsQ0U1QzNDLHNDVDhINkIsbUNTaEluQixjRjhDVyxDQUFzQixtQ0U5Q2pDLGVGOENXLENBQXNCLG1DRTlDakMsU0Y4Q1csQ0FBc0IsbUNFOUNqQyxlRjhDVyxDQUFzQixtQ0U5Q2pDLGVGOENXLENBQXNCLG1DRTlDakMsU0Y4Q1csQ0FBc0IsbUNFOUNqQyxlRjhDVyxDQUFzQixtQ0U5Q2pDLGVGOENXLENBQXNCLG1DRTlDakMsU0Y4Q1csQ0FBc0Isb0NFOUNoQyxlRjhDVSxDQUFzQixvQ0U5Q2hDLGVGOENVLENBQXNCLG9DRTlDaEMsVUY4Q1UsQ0FBc0IsQ0U1QzNDLHNDVDhINkIsb0NTdkhsQixjRnFDVSxDQUFzQixvQ0VyQ2hDLGVGcUNVLENBQXNCLG9DRXJDaEMsU0ZxQ1UsQ0FBc0Isb0NFckNoQyxlRnFDVSxDQUFzQixvQ0VyQ2hDLGVGcUNVLENBQXNCLG9DRXJDaEMsU0ZxQ1UsQ0FBc0Isb0NFckNoQyxlRnFDVSxDQUFzQixvQ0VyQ2hDLGVGcUNVLENBQXNCLG9DRXJDaEMsU0ZxQ1UsQ0FBc0IscUNFckMvQixlRnFDUyxDQUFzQixxQ0VyQy9CLGVGcUNTLENBQXNCLHFDRXJDL0IsVUZxQ1MsQ0FBc0IsQ0VuQzNDLHdDVHFIK0IsaUNTdkh2QixjRnFDYSxDQUFzQixpQ0VyQ25DLGVGcUNhLENBQXNCLGlDRXJDbkMsU0ZxQ2EsQ0FBc0IsaUNFckNuQyxlRnFDYSxDQUFzQixpQ0VyQ25DLGVGcUNhLENBQXNCLGlDRXJDbkMsU0ZxQ2EsQ0FBc0IsaUNFckNuQyxlRnFDYSxDQUFzQixpQ0VyQ25DLGVGcUNhLENBQXNCLGlDRXJDbkMsU0ZxQ2EsQ0FBc0Isa0NFckNsQyxlRnFDWSxDQUFzQixrQ0VyQ2xDLGVGcUNZLENBQXNCLGtDRXJDbEMsVUZxQ1ksQ0FBc0IsQ0VuQzNDLHNDVHFINkIsMEJJb0VYLGVLL0tHLGFBQUQsQ0FBQyxnQ0FHckIsZ0JBRXlCLGNBQUQsQ0FBQyxDQUUvQix3Q1RvR3FDLHNCSThEakIsZUtoTk8sYUFBRCxDQUFDLDRCQUdyQixlQUV1QixhQUFELENBQUMsQ0FFN0Isd0NUMklxQywrQlNoSXRCLGNGOENZLENBQXNCLCtCRTlDbEMsZUY4Q1ksQ0FBc0IsK0JFOUNsQyxTRjhDWSxDQUFzQiwrQkU5Q2xDLGVGOENZLENBQXNCLCtCRTlDbEMsZUY4Q1ksQ0FBc0IsK0JFOUNsQyxTRjhDWSxDQUFzQiwrQkU5Q2xDLGVGOENZLENBQXNCLCtCRTlDbEMsZUY4Q1ksQ0FBc0IsK0JFOUNsQyxTRjhDWSxDQUFzQixnQ0U5Q2pDLGVGOENXLENBQXNCLGdDRTlDakMsZUY4Q1csQ0FBc0IsZ0NFOUNqQyxVRjhDVyxDQUFzQixDRTVDM0Msd0NUOEgrQixnQ1NoSXJCLGNGOENXLENBQXNCLGdDRTlDakMsZUY4Q1csQ0FBc0IsZ0NFOUNqQyxTRjhDVyxDQUFzQixnQ0U5Q2pDLGVGOENXLENBQXNCLGdDRTlDakMsZUY4Q1csQ0FBc0IsZ0NFOUNqQyxTRjhDVyxDQUFzQixnQ0U5Q2pDLGVGOENXLENBQXNCLGdDRTlDakMsZUY4Q1csQ0FBc0IsZ0NFOUNqQyxTRjhDVyxDQUFzQixpQ0U5Q2hDLGVGOENVLENBQXNCLGlDRTlDaEMsZUY4Q1UsQ0FBc0IsaUNFOUNoQyxVRjhDVSxDQUFzQixDRTVDM0Msd0NUOEgrQiwrQlNoSXRCLGNGOENZLENBQXNCLCtCRTlDbEMsZUY4Q1ksQ0FBc0IsK0JFOUNsQyxTRjhDWSxDQUFzQiwrQkU5Q2xDLGVGOENZLENBQXNCLCtCRTlDbEMsZUY4Q1ksQ0FBc0IsK0JFOUNsQyxTRjhDWSxDQUFzQiwrQkU5Q2xDLGVGOENZLENBQXNCLCtCRTlDbEMsZUY4Q1ksQ0FBc0IsK0JFOUNsQyxTRjhDWSxDQUFzQixnQ0U5Q2pDLGVGOENXLENBQXNCLGdDRTlDakMsZUY4Q1csQ0FBc0IsZ0NFOUNqQyxVRjhDVyxDQUFzQixDRTVDM0Msd0NUOEgrQixnQ1NoSXJCLGNGOENXLENBQXNCLGdDRTlDakMsZUY4Q1csQ0FBc0IsZ0NFOUNqQyxTRjhDVyxDQUFzQixnQ0U5Q2pDLGVGOENXLENBQXNCLGdDRTlDakMsZUY4Q1csQ0FBc0IsZ0NFOUNqQyxTRjhDVyxDQUFzQixnQ0U5Q2pDLGVGOENXLENBQXNCLGdDRTlDakMsZUY4Q1csQ0FBc0IsZ0NFOUNqQyxTRjhDVyxDQUFzQixpQ0U5Q2hDLGVGOENVLENBQXNCLGlDRTlDaEMsZUY4Q1UsQ0FBc0IsaUNFOUNoQyxVRjhDVSxDQUFzQixDRTVDM0Msd0NUOEgrQixpQ1NoSXBCLGNGOENVLENBQXNCLGlDRTlDaEMsZUY4Q1UsQ0FBc0IsaUNFOUNoQyxTRjhDVSxDQUFzQixpQ0U5Q2hDLGVGOENVLENBQXNCLGlDRTlDaEMsZUY4Q1UsQ0FBc0IsaUNFOUNoQyxTRjhDVSxDQUFzQixpQ0U5Q2hDLGVGOENVLENBQXNCLGlDRTlDaEMsZUY4Q1UsQ0FBc0IsaUNFOUNoQyxTRjhDVSxDQUFzQixrQ0U5Qy9CLGVGOENTLENBQXNCLGtDRTlDL0IsZUY4Q1MsQ0FBc0Isa0NFOUMvQixVRjhDUyxDQUFzQixDRTVDM0Msd0NUOEgrQiw4QlN2SHZCLGNGcUNhLENBQXNCLDhCRXJDbkMsZUZxQ2EsQ0FBc0IsOEJFckNuQyxTRnFDYSxDQUFzQiw4QkVyQ25DLGVGcUNhLENBQXNCLDhCRXJDbkMsZUZxQ2EsQ0FBc0IsOEJFckNuQyxTRnFDYSxDQUFzQiw4QkVyQ25DLGVGcUNhLENBQXNCLDhCRXJDbkMsZUZxQ2EsQ0FBc0IsOEJFckNuQyxTRnFDYSxDQUFzQiwrQkVyQ2xDLGVGcUNZLENBQXNCLCtCRXJDbEMsZUZxQ1ksQ0FBc0IsK0JFckNsQyxVRnFDWSxDQUFzQixDRW5DM0Msd0NUcUgrQix1QklvRWhCLGVLL0tNLGFBQUQsQ0FBQyw2QkFHckIsZ0JBRXlCLGNBQUQsQ0FBQyxDQUUvQixnQkxzTGMsY01oT1csQ0FBQywrQk5vT0ssZ0NNcE9OLENBQUMsZ0JOZ09aLG9CTWhPVyxDQUFDLCtCTm9PSyxzQ01wT04sQ0FBQyxnQk5nT1oscUJNaE9XLENBQUMsK0JOb09LLHVDTXBPTixDQUFDLGdCTmdPWixlTWhPVyxDQUFDLCtCTm9PSyxpQ01wT04sQ0FBQyxnQk5nT1oscUJNaE9XLENBQUMsK0JOb09LLHVDTXBPTixDQUFDLGdCTmdPWixxQk1oT1csQ0FBQywrQk5vT0ssdUNNcE9OLENBQUMsZ0JOZ09aLGVNaE9XLENBQUMsK0JOb09LLGlDTXBPTixDQUFDLGdCTmdPWixxQk1oT1csQ0FBQywrQk5vT0ssdUNNcE9OLENBQUMsZ0JOZ09aLHFCTWhPVyxDQUFDLCtCTm9PSyx1Q01wT04sQ0FBQyxnQk5nT1osZU1oT1csQ0FBQywrQk5vT0ssaUNNcE9OLENBQUMsaUJOZ09YLHFCTWhPVSxDQUFDLGdDTm9PTSx1Q01wT1AsQ0FBQyxpQk5nT1gscUJNaE9VLENBQUMsZ0NOb09NLHVDTXBPUCxDQUFDLGdEVnlJa0IsaUJJdUY3QixjTWhPVSxDQUFDLGdDTm9PTSxnQ01wT1AsQ0FBQyxpQk5nT1gsb0JNaE9VLENBQUMsZ0NOb09NLHNDTXBPUCxDQUFDLGlCTmdPWCxxQk1oT1UsQ0FBQyxnQ05vT00sdUNNcE9QLENBQUMsaUJOZ09YLGVNaE9VLENBQUMsZ0NOb09NLGlDTXBPUCxDQUFDLGlCTmdPWCxxQk1oT1UsQ0FBQyxnQ05vT00sdUNNcE9QLENBQUMsaUJOZ09YLHFCTWhPVSxDQUFDLGdDTm9PTSx1Q01wT1AsQ0FBQyxpQk5nT1gsZU1oT1UsQ0FBQyxnQ05vT00saUNNcE9QLENBQUMsaUJOZ09YLHFCTWhPVSxDQUFDLGdDTm9PTSx1Q01wT1AsQ0FBQyxpQk5nT1gscUJNaE9VLENBQUMsZ0NOb09NLHVDTXBPUCxDQUFDLGlCTmdPWCxlTWhPVSxDQUFDLGdDTm9PTSxpQ01wT1AsQ0FBQyxrQk5nT1YscUJNaE9TLENBQUMsaUNOb09PLHVDTXBPUixDQUFDLGtCTmdPVixxQk1oT1MsQ0FBQyxpQ05vT08sdUNNcE9SLENBQUMsQ05zTzFCLGdESjdGNEMsZ0JJdUY5QixjTWhPVyxDQUFDLCtCTm9PSyxnQ01wT04sQ0FBQyxnQk5nT1osb0JNaE9XLENBQUMsK0JOb09LLHNDTXBPTixDQUFDLGdCTmdPWixxQk1oT1csQ0FBQywrQk5vT0ssdUNNcE9OLENBQUMsZ0JOZ09aLGVNaE9XLENBQUMsK0JOb09LLGlDTXBPTixDQUFDLGdCTmdPWixxQk1oT1csQ0FBQywrQk5vT0ssdUNNcE9OLENBQUMsZ0JOZ09aLHFCTWhPVyxDQUFDLCtCTm9PSyx1Q01wT04sQ0FBQyxnQk5nT1osZU1oT1csQ0FBQywrQk5vT0ssaUNNcE9OLENBQUMsZ0JOZ09aLHFCTWhPVyxDQUFDLCtCTm9PSyx1Q01wT04sQ0FBQyxnQk5nT1oscUJNaE9XLENBQUMsK0JOb09LLHVDTXBPTixDQUFDLGdCTmdPWixlTWhPVyxDQUFDLCtCTm9PSyxpQ01wT04sQ0FBQyxpQk5nT1gscUJNaE9VLENBQUMsZ0NOb09NLHVDTXBPUCxDQUFDLGlCTmdPWCxxQk1oT1UsQ0FBQyxnQ05vT00sdUNNcE9QLENBQUMsQ05zTzFCLHlDSnhGc0MsaUJJa0Z2QixjTWhPVSxDQUFDLGdDTm9PTSxnQ01wT1AsQ0FBQyxpQk5nT1gsb0JNaE9VLENBQUMsZ0NOb09NLHNDTXBPUCxDQUFDLGlCTmdPWCxxQk1oT1UsQ0FBQyxnQ05vT00sdUNNcE9QLENBQUMsaUJOZ09YLGVNaE9VLENBQUMsZ0NOb09NLGlDTXBPUCxDQUFDLGlCTmdPWCxxQk1oT1UsQ0FBQyxnQ05vT00sdUNNcE9QLENBQUMsaUJOZ09YLHFCTWhPVSxDQUFDLGdDTm9PTSx1Q01wT1AsQ0FBQyxpQk5nT1gsZU1oT1UsQ0FBQyxnQ05vT00saUNNcE9QLENBQUMsaUJOZ09YLHFCTWhPVSxDQUFDLGdDTm9PTSx1Q01wT1AsQ0FBQyxpQk5nT1gscUJNaE9VLENBQUMsZ0NOb09NLHVDTXBPUCxDQUFDLGlCTmdPWCxlTWhPVSxDQUFDLGdDTm9PTSxpQ01wT1AsQ0FBQyxrQk5nT1YscUJNaE9TLENBQUMsaUNOb09PLHVDTXBPUixDQUFDLGtCTmdPVixxQk1oT1MsQ0FBQyxpQ05vT08sdUNNcE9SLENBQUMsQ05zTzFCLHNDSnhGbUMsa0JJa0ZuQixjTWhPUyxDQUFDLGlDTm9PTyxnQ01wT1IsQ0FBQyxrQk5nT1Ysb0JNaE9TLENBQUMsaUNOb09PLHNDTXBPUixDQUFDLGtCTmdPVixxQk1oT1MsQ0FBQyxpQ05vT08sdUNNcE9SLENBQUMsa0JOZ09WLGVNaE9TLENBQUMsaUNOb09PLGlDTXBPUixDQUFDLGtCTmdPVixxQk1oT1MsQ0FBQyxpQ05vT08sdUNNcE9SLENBQUMsa0JOZ09WLHFCTWhPUyxDQUFDLGlDTm9PTyx1Q01wT1IsQ0FBQyxrQk5nT1YsZU1oT1MsQ0FBQyxpQ05vT08saUNNcE9SLENBQUMsa0JOZ09WLHFCTWhPUyxDQUFDLGlDTm9PTyx1Q01wT1IsQ0FBQyxrQk5nT1YscUJNaE9TLENBQUMsaUNOb09PLHVDTXBPUixDQUFDLGtCTmdPVixlTWhPUyxDQUFDLGlDTm9PTyxpQ01wT1IsQ0FBQyxtQk5nT1QscUJNaE9RLENBQUMsa0NOb09RLHVDTXBPVCxDQUFDLG1CTmdPVCxxQk1oT1EsQ0FBQyxrQ05vT1EsdUNNcE9ULENBQUMsQ05zTzFCLHdDSnhGcUMsZUlrRnhCLGNNaE9ZLENBQUMsOEJOb09JLGdDTXBPTCxDQUFDLGVOZ09iLG9CTWhPWSxDQUFDLDhCTm9PSSxzQ01wT0wsQ0FBQyxlTmdPYixxQk1oT1ksQ0FBQyw4Qk5vT0ksdUNNcE9MLENBQUMsZU5nT2IsZU1oT1ksQ0FBQyw4Qk5vT0ksaUNNcE9MLENBQUMsZU5nT2IscUJNaE9ZLENBQUMsOEJOb09JLHVDTXBPTCxDQUFDLGVOZ09iLHFCTWhPWSxDQUFDLDhCTm9PSSx1Q01wT0wsQ0FBQyxlTmdPYixlTWhPWSxDQUFDLDhCTm9PSSxpQ01wT0wsQ0FBQyxlTmdPYixxQk1oT1ksQ0FBQyw4Qk5vT0ksdUNNcE9MLENBQUMsZU5nT2IscUJNaE9ZLENBQUMsOEJOb09JLHVDTXBPTCxDQUFDLGVOZ09iLGVNaE9ZLENBQUMsOEJOb09JLGlDTXBPTCxDQUFDLGdCTmdPWixxQk1oT1csQ0FBQywrQk5vT0ssdUNNcE9OLENBQUMsZ0JOZ09aLHFCTWhPVyxDQUFDLCtCTm9PSyx1Q01wT04sQ0FBQyxDTnNPMUIsUUF6SnFCLG9CQUFBLEFFekViLG9CRnlFYSxBRXpFYixhQUFBLDRCQUFBLEFBRlUsNkJBRVYsQUFGVSw0QkFFVixBQUZVLHVCQUFBLENBQU0sY0Z3UHBCLFdHak5VLGNBQ0ksQ0FBSSxjSG9ObEIsV0d6TVEsQ0FBSSxnQkg2TVYsV0d6TU0sQ0FBSSx5UEh1TlQsNkJBQUEsQUFDTSxlQUFBLENBQUksZ0RKeEkyQix1UUl1SXJDLDZCQUFBLEFBQ00sZUFBQSxDQUFJLENBQ2pCLGdESnpJNEMseVBJdUlyQyw2QkFBQSxBQUNNLGVBQUEsQ0FBSSxDQUNqQix5Q0pwSXNDLHVRSWtJL0IsNkJBQUEsQUFDTSxlQUFBLENBQUksQ0FDakIsc0NKcEltQyxxUklrSTVCLDZCQUFBLEFBQ00sZUFBQSxDQUFJLENBQ2pCLHdDSnBJcUMsMk9Ja0k5Qiw2QkFBQSxBQUNNLGVBQUEsQ0FBSSxDQUNqQiwrTUFZMkMsbUJBQUEsQUdqUXhDLGtCSGlRd0MsQUdqUXhDLGFBQUEsQ0FBUSxpQkhnUkEsZUdqUGdCLENBQXNCLGlCSGlQdEMsZ0JHalBnQixDQUFzQixpQkhpUHRDLFVHalBnQixDQUFzQixpQkhpUHRDLGdCR2pQZ0IsQ0FBc0IsaUJIaVB0QyxnQkdqUGdCLENBQXNCLGlCSGlQdEMsVUdqUGdCLENBQXNCLGlCSGlQdEMsZ0JHalBnQixDQUFzQixpQkhpUHRDLGdCR2pQZ0IsQ0FBc0IsaUJIaVB0QyxVR2pQZ0IsQ0FBc0Isa0JIaVByQyxnQkdqUGUsQ0FBc0Isa0JIaVByQyxnQkdqUGUsQ0FBc0Isa0JIaVByQyxXR2pQZSxDQUFzQixnRFA2RUwscUJJK0k3QixtQkFBQSxBRzlQTCxpQkg4UEssQUc5UEwsYUFBQSxXQTJCRSxDQUFJLGtQSHlPMkIsbUJBQUEsQUdqUXhDLGtCSGlRd0MsQUdqUXhDLGFBQUEsQ0FBUSx1Qkh1UU0sV0czT0wsQ0FBSSxrQkhvUEosZUdqUGUsQ0FBc0Isa0JIaVByQyxnQkdqUGUsQ0FBc0Isa0JIaVByQyxVR2pQZSxDQUFzQixrQkhpUHJDLGdCR2pQZSxDQUFzQixrQkhpUHJDLGdCR2pQZSxDQUFzQixrQkhpUHJDLFVHalBlLENBQXNCLGtCSGlQckMsZ0JHalBlLENBQXNCLGtCSGlQckMsZ0JHalBlLENBQXNCLGtCSGlQckMsVUdqUGUsQ0FBc0IsbUJIaVBwQyxnQkdqUGMsQ0FBc0IsbUJIaVBwQyxnQkdqUGMsQ0FBc0IsbUJIaVBwQyxXR2pQYyxDQUFzQixDSG9QL0MsZ0RKdkswQyxvQkkrSTlCLG1CQUFBLEFHOVBKLGlCSDhQSSxBRzlQSixhQUFBLFdBMkJFLENBQUkscU9IeU8yQixtQkFBQSxBR2pReEMsa0JIaVF3QyxBR2pReEMsYUFBQSxDQUFRLHNCSHVRSyxXRzNPSixDQUFJLGlCSG9QTCxlR2pQZ0IsQ0FBc0IsaUJIaVB0QyxnQkdqUGdCLENBQXNCLGlCSGlQdEMsVUdqUGdCLENBQXNCLGlCSGlQdEMsZ0JHalBnQixDQUFzQixpQkhpUHRDLGdCR2pQZ0IsQ0FBc0IsaUJIaVB0QyxVR2pQZ0IsQ0FBc0IsaUJIaVB0QyxnQkdqUGdCLENBQXNCLGlCSGlQdEMsZ0JHalBnQixDQUFzQixpQkhpUHRDLFVHalBnQixDQUFzQixrQkhpUHJDLGdCR2pQZSxDQUFzQixrQkhpUHJDLGdCR2pQZSxDQUFzQixrQkhpUHJDLFdHalBlLENBQXNCLENIb1AvQyx5Q0psS29DLHFCSTBJdkIsbUJBQUEsQUc5UEwsaUJIOFBLLEFHOVBMLGFBQUEsV0EyQkUsQ0FBSSxrUEh5TzJCLG1CQUFBLEFHalF4QyxrQkhpUXdDLEFHalF4QyxhQUFBLENBQVEsdUJIdVFNLFdHM09MLENBQUksa0JIb1BKLGVHalBlLENBQXNCLGtCSGlQckMsZ0JHalBlLENBQXNCLGtCSGlQckMsVUdqUGUsQ0FBc0Isa0JIaVByQyxnQkdqUGUsQ0FBc0Isa0JIaVByQyxnQkdqUGUsQ0FBc0Isa0JIaVByQyxVR2pQZSxDQUFzQixrQkhpUHJDLGdCR2pQZSxDQUFzQixrQkhpUHJDLGdCR2pQZSxDQUFzQixrQkhpUHJDLFVHalBlLENBQXNCLG1CSGlQcEMsZ0JHalBjLENBQXNCLG1CSGlQcEMsZ0JHalBjLENBQXNCLG1CSGlQcEMsV0dqUGMsQ0FBc0IsQ0hvUC9DLHNDSmxLaUMsc0JJMEluQixtQkFBQSxBRzlQTixpQkg4UE0sQUc5UE4sYUFBQSxXQTJCRSxDQUFJLCtQSHlPMkIsbUJBQUEsQUdqUXhDLGtCSGlRd0MsQUdqUXhDLGFBQUEsQ0FBUSx3Qkh1UU8sV0czT04sQ0FBSSxtQkhvUEgsZUdqUGMsQ0FBc0IsbUJIaVBwQyxnQkdqUGMsQ0FBc0IsbUJIaVBwQyxVR2pQYyxDQUFzQixtQkhpUHBDLGdCR2pQYyxDQUFzQixtQkhpUHBDLGdCR2pQYyxDQUFzQixtQkhpUHBDLFVHalBjLENBQXNCLG1CSGlQcEMsZ0JHalBjLENBQXNCLG1CSGlQcEMsZ0JHalBjLENBQXNCLG1CSGlQcEMsVUdqUGMsQ0FBc0Isb0JIaVBuQyxnQkdqUGEsQ0FBc0Isb0JIaVBuQyxnQkdqUGEsQ0FBc0Isb0JIaVBuQyxXR2pQYSxDQUFzQixDSG9QL0Msd0NKbEttQyxtQkkwSXhCLG1CQUFBLEFHOVBILGlCSDhQRyxBRzlQSCxhQUFBLFdBMkJFLENBQUksd05IeU8yQixtQkFBQSxBR2pReEMsa0JIaVF3QyxBR2pReEMsYUFBQSxDQUFRLHFCSHVRSSxXRzNPSCxDQUFJLGdCSG9QTixlR2pQaUIsQ0FBc0IsZ0JIaVB2QyxnQkdqUGlCLENBQXNCLGdCSGlQdkMsVUdqUGlCLENBQXNCLGdCSGlQdkMsZ0JHalBpQixDQUFzQixnQkhpUHZDLGdCR2pQaUIsQ0FBc0IsZ0JIaVB2QyxVR2pQaUIsQ0FBc0IsZ0JIaVB2QyxnQkdqUGlCLENBQXNCLGdCSGlQdkMsZ0JHalBpQixDQUFzQixnQkhpUHZDLFVHalBpQixDQUFzQixpQkhpUHRDLGdCR2pQZ0IsQ0FBc0IsaUJIaVB0QyxnQkdqUGdCLENBQXNCLGlCSGlQdEMsV0dqUGdCLENBQXNCLENIb1AvQyxnQ0FTWSxzQkN0VGdELHdCQUFqQyxDQUFpQyxnRExzSWxCLGdDSWdMOUIsc0JDdFRnRCx3QkFBakMsQ0FBaUMsQ0R3VDlELHNCQUdNLHNCQzNUd0Qsd0JBQWpDLENBQWlDLGdETHNJbEIsc0JJcUx0QyxzQkMzVHdELHdCQUFqQyxDQUFpQyxDRDZUOUQsZUFwTlMsc0JDekdxRCx3QkFBakMsQ0FBaUMsZ0RMc0lsQixlSTdCbkMsc0JDekdxRCx3QkFBakMsQ0FBaUMsQ0R3SWxFLHFCQTNCUSwrQkcvRHFFLHFCRnJDYix1QkFBakMsQ0FBaUMsZ0RMNkhoQixxQkl6QnhDLCtCRy9EcUUscUJGckNiLHVCQUFqQyxDQUFpQyxDRDZHMUQscUJBckNBLFdHL0JVLENBQUksdUJIbUNaLFdHL0JRLENBQUksd0JIdUNULGtDR3BDNEMsQ0FBMEQsd0JIb0N0RyxtQ0dwQzRDLENBQTBELHdCSG9DdEcsNkJHcEM0QyxDQUEwRCx3QkhvQ3RHLG1DR3BDNEMsQ0FBMEQsd0JIb0N0RyxtQ0dwQzRDLENBQTBELHdCSG9DdEcsNkJHcEM0QyxDQUEwRCx3QkhvQ3RHLG1DR3BDNEMsQ0FBMEQsd0JIb0N0RyxtQ0dwQzRDLENBQTBELHdCSG9DdEcsNkJHcEM0QyxDQUEwRCx5QkhvQ3JHLG1DR3BDMkMsQ0FBMEQseUJIb0NyRyxtQ0dwQzJDLENBQTBELHlCSG9DckcsOEJHcEMyQyxDQUEwRCxnRFA2RWpFLHFCSXJEMUMsV0cvQlUsQ0FBSSx1QkhtQ1osV0cvQlEsQ0FBSSx3Qkh1Q1Qsa0NHcEM0QyxDQUEwRCx3QkhvQ3RHLG1DR3BDNEMsQ0FBMEQsd0JIb0N0Ryw2QkdwQzRDLENBQTBELHdCSG9DdEcsbUNHcEM0QyxDQUEwRCx3QkhvQ3RHLG1DR3BDNEMsQ0FBMEQsd0JIb0N0Ryw2QkdwQzRDLENBQTBELHdCSG9DdEcsbUNHcEM0QyxDQUEwRCx3QkhvQ3RHLG1DR3BDNEMsQ0FBMEQsd0JIb0N0Ryw2QkdwQzRDLENBQTBELHlCSG9DckcsbUNHcEMyQyxDQUEwRCx5QkhvQ3JHLG1DR3BDMkMsQ0FBMEQseUJIb0NyRyw4QkdwQzJDLENBQTBELDRCSHdCcEcsV0cvQkcsQ0FBSSw4QkhtQ0wsV0cvQkMsQ0FBSSx5Qkh1Q1Isa0NHcEMyQyxDQUEwRCx5QkhvQ3JHLG1DR3BDMkMsQ0FBMEQseUJIb0NyRyw2QkdwQzJDLENBQTBELHlCSG9DckcsbUNHcEMyQyxDQUEwRCx5QkhvQ3JHLG1DR3BDMkMsQ0FBMEQseUJIb0NyRyw2QkdwQzJDLENBQTBELHlCSG9DckcsbUNHcEMyQyxDQUEwRCx5QkhvQ3JHLG1DR3BDMkMsQ0FBMEQseUJIb0NyRyw2QkdwQzJDLENBQTBELDBCSG9DcEcsbUNHcEMwQyxDQUEwRCwwQkhvQ3BHLG1DR3BDMEMsQ0FBMEQsMEJIb0NwRyw4QkdwQzBDLENBQTBELENIc0MvRyxnREp1QzhDLDJCSXJEcEMsV0cvQkksQ0FBSSw2QkhtQ04sV0cvQkUsQ0FBSSx3Qkh1Q1Qsa0NHcEM0QyxDQUEwRCx3QkhvQ3RHLG1DR3BDNEMsQ0FBMEQsd0JIb0N0Ryw2QkdwQzRDLENBQTBELHdCSG9DdEcsbUNHcEM0QyxDQUEwRCx3QkhvQ3RHLG1DR3BDNEMsQ0FBMEQsd0JIb0N0Ryw2QkdwQzRDLENBQTBELHdCSG9DdEcsbUNHcEM0QyxDQUEwRCx3QkhvQ3RHLG1DR3BDNEMsQ0FBMEQsd0JIb0N0Ryw2QkdwQzRDLENBQTBELHlCSG9DckcsbUNHcEMyQyxDQUEwRCx5QkhvQ3JHLG1DR3BDMkMsQ0FBMEQseUJIb0NyRyw4QkdwQzJDLENBQTBELENIc0MvRyx5Q0o0Q3dDLDRCSTFEN0IsV0cvQkcsQ0FBSSw4QkhtQ0wsV0cvQkMsQ0FBSSx5Qkh1Q1Isa0NHcEMyQyxDQUEwRCx5QkhvQ3JHLG1DR3BDMkMsQ0FBMEQseUJIb0NyRyw2QkdwQzJDLENBQTBELHlCSG9DckcsbUNHcEMyQyxDQUEwRCx5QkhvQ3JHLG1DR3BDMkMsQ0FBMEQseUJIb0NyRyw2QkdwQzJDLENBQTBELHlCSG9DckcsbUNHcEMyQyxDQUEwRCx5QkhvQ3JHLG1DR3BDMkMsQ0FBMEQseUJIb0NyRyw2QkdwQzJDLENBQTBELDBCSG9DcEcsbUNHcEMwQyxDQUEwRCwwQkhvQ3BHLG1DR3BDMEMsQ0FBMEQsMEJIb0NwRyw4QkdwQzBDLENBQTBELENIc0MvRyxzQ0o0Q3FDLDZCSTFEekIsV0cvQkUsQ0FBSSwrQkhtQ0osV0cvQkEsQ0FBSSwwQkh1Q1Asa0NHcEMwQyxDQUEwRCwwQkhvQ3BHLG1DR3BDMEMsQ0FBMEQsMEJIb0NwRyw2QkdwQzBDLENBQTBELDBCSG9DcEcsbUNHcEMwQyxDQUEwRCwwQkhvQ3BHLG1DR3BDMEMsQ0FBMEQsMEJIb0NwRyw2QkdwQzBDLENBQTBELDBCSG9DcEcsbUNHcEMwQyxDQUEwRCwwQkhvQ3BHLG1DR3BDMEMsQ0FBMEQsMEJIb0NwRyw2QkdwQzBDLENBQTBELDJCSG9DbkcsbUNHcEN5QyxDQUEwRCwyQkhvQ25HLG1DR3BDeUMsQ0FBMEQsMkJIb0NuRyw4QkdwQ3lDLENBQTBELENIc0MvRyx3Q0o0Q3VDLDBCSTFEOUIsV0cvQkssQ0FBSSw0QkhtQ1AsV0cvQkcsQ0FBSSx1Qkh1Q1Ysa0NHcEM2QyxDQUEwRCx1QkhvQ3ZHLG1DR3BDNkMsQ0FBMEQsdUJIb0N2Ryw2QkdwQzZDLENBQTBELHVCSG9DdkcsbUNHcEM2QyxDQUEwRCx1QkhvQ3ZHLG1DR3BDNkMsQ0FBMEQsdUJIb0N2Ryw2QkdwQzZDLENBQTBELHVCSG9DdkcsbUNHcEM2QyxDQUEwRCx1QkhvQ3ZHLG1DR3BDNkMsQ0FBMEQsdUJIb0N2Ryw2QkdwQzZDLENBQTBELHdCSG9DdEcsbUNHcEM0QyxDQUEwRCx3QkhvQ3RHLG1DR3BDNEMsQ0FBMEQsd0JIb0N0Ryw4QkdwQzRDLENBQTBELENIc0MvRyxZQTBPUSxnQk96Vk8sa0JBQ0UscUJBQUEsQUFDRCxpQkFBQSwwQkFBQSxBQUNHLHVCQURILEFBQ0csb0JBQUEsV0EyQmlCLENBQUssa0JQK1QzQixVQUNSLENBQUksWUFHRixnQk9oVE8sZUFDRCxpQ0FHZ0IsMkNBQ2IsQ0FBd0IsY1ArUy9CLGdCT3hUSyxnQkFDQSxnQkFDQSxpQ0FNZSwyQ0FDYixDQUF3QixzQlBvVHZCLG9CQUFBLEFPN1NSLG9CUDZTUSxBTzdTUixhQUFBLDRCQUFBLEFBQ1MsNkJBRFQsQUFDUywwQkFEVCxBQUNTLHNCQUFBLGVBQ1YsQ0FBSSw4QkFFUCxnQkFDUyxxQkFBQSxBQUNMLGdCQUFBLENBQU0sZ0RYbUY4QixtQkkyTjdCLGdCT2pYRixrQkFDRSxxQkFBQSxBQUNELGlCQUFBLDBCQUFBLEFBQ0csdUJBREgsQUFDRyxvQkFBQSxXQTJCaUIsQ0FBSyx5QlB1VmxCLFVBQ2YsQ0FBSSxtQkFHSyxnQk94VUYsZUFDRCxpQ0FHZ0IsMkNBQ2IsQ0FBd0IsNkJQdVVkLG9CQUFBLEFPaFVqQixvQlBnVWlCLEFPaFVqQixhQUFBLDRCQUFBLEFBQ1MsNkJBRFQsQUFDUywwQkFEVCxBQUNTLHNCQUFBLGVBQ1YsQ0FBSSxxQ0FFUCxnQkFDUyxxQkFBQSxBQUNMLGdCQUFBLENBQU0scUJQOFRHLGdCT3BWSixnQkFDQSxnQkFDQSxpQ0FNZSwyQ0FDYixDQUF3QixDUDZVekMsZ0RKN084QyxrQkkyTjlCLGdCT2pYRCxrQkFDRSxxQkFBQSxBQUNELGlCQUFBLDBCQUFBLEFBQ0csdUJBREgsQUFDRyxvQkFBQSxXQTJCaUIsQ0FBSyx3QlB1Vm5CLFVBQ2QsQ0FBSSxrQkFHSSxnQk94VUQsZUFDRCxpQ0FHZ0IsMkNBQ2IsQ0FBd0IsNEJQdVVmLG9CQUFBLEFPaFVoQixvQlBnVWdCLEFPaFVoQixhQUFBLDRCQUFBLEFBQ1MsNkJBRFQsQUFDUywwQkFEVCxBQUNTLHNCQUFBLGVBQ1YsQ0FBSSxvQ0FFUCxnQkFDUyxxQkFBQSxBQUNMLGdCQUFBLENBQU0sb0JQOFRFLGdCT3BWSCxnQkFDQSxnQkFDQSxpQ0FNZSwyQ0FDYixDQUF3QixDUDZVekMseUNKeE93QyxtQklzTnZCLGdCT2pYRixrQkFDRSxxQkFBQSxBQUNELGlCQUFBLDBCQUFBLEFBQ0csdUJBREgsQUFDRyxvQkFBQSxXQTJCaUIsQ0FBSyx5QlB1VmxCLFVBQ2YsQ0FBSSxtQkFHSyxnQk94VUYsZUFDRCxpQ0FHZ0IsMkNBQ2IsQ0FBd0IsNkJQdVVkLG9CQUFBLEFPaFVqQixvQlBnVWlCLEFPaFVqQixhQUFBLDRCQUFBLEFBQ1MsNkJBRFQsQUFDUywwQkFEVCxBQUNTLHNCQUFBLGVBQ1YsQ0FBSSxxQ0FFUCxnQkFDUyxxQkFBQSxBQUNMLGdCQUFBLENBQU0scUJQOFRHLGdCT3BWSixnQkFDQSxnQkFDQSxpQ0FNZSwyQ0FDYixDQUF3QixDUDZVekMsc0NKeE9xQyxvQklzTm5CLGdCT2pYSCxrQkFDRSxxQkFBQSxBQUNELGlCQUFBLDBCQUFBLEFBQ0csdUJBREgsQUFDRyxvQkFBQSxXQTJCaUIsQ0FBSywwQlB1VmpCLFVBQ2hCLENBQUksb0JBR00sZ0JPeFVILGVBQ0QsaUNBR2dCLDJDQUNiLENBQXdCLDhCUHVVYixvQkFBQSxBT2hVbEIsb0JQZ1VrQixBT2hVbEIsYUFBQSw0QkFBQSxBQUNTLDZCQURULEFBQ1MsMEJBRFQsQUFDUyxzQkFBQSxlQUNWLENBQUksc0NBRVAsZ0JBQ1MscUJBQUEsQUFDTCxnQkFBQSxDQUFNLHNCUDhUSSxnQk9wVkwsZ0JBQ0EsZ0JBQ0EsaUNBTWUsMkNBQ2IsQ0FBd0IsQ1A2VXpDLHdDSnhPdUMsaUJJc054QixnQk9qWEEsa0JBQ0UscUJBQUEsQUFDRCxpQkFBQSwwQkFBQSxBQUNHLHVCQURILEFBQ0csb0JBQUEsV0EyQmlCLENBQUssdUJQdVZwQixVQUNiLENBQUksaUJBR0csZ0JPeFVBLGVBQ0QsaUNBR2dCLDJDQUNiLENBQXdCLDJCUHVVaEIsb0JBQUEsQU9oVWYsb0JQZ1VlLEFPaFVmLGFBQUEsNEJBQUEsQUFDUyw2QkFEVCxBQUNTLDBCQURULEFBQ1Msc0JBQUEsZUFDVixDQUFJLG1DQUVQLGdCQUNTLHFCQUFBLEFBQ0wsZ0JBQUEsQ0FBTSxtQlA4VEMsZ0JPcFZGLGdCQUNBLGdCQUNBLGlDQU1lLDJDQUNiLENBQXdCLENQNlV6QyxtQkFLYSxXQUNDLGdCT3pZQyxrQkFDRSxxQkFBQSxBQUNELGlCQUFBLDBCQUFBLEFBQ0csdUJBREgsQUFDRyxvQkFBQSxZQXlCa0IsQ0FBSyxnRFgwSEksMEJJd1B4QixXQUNOLGdCTy9ZRCxrQkFDRSxxQkFBQSxBQUNELGlCQUFBLDBCQUFBLEFBQ0csdUJBREgsQUFDRyxvQkFBQSxZQXlCa0IsQ0FBSyxDUHFYdEMsZ0RKM1AwQyx5Qkl3UHpCLFdBQ0wsZ0JPL1lELGtCQUNFLHFCQUFBLEFBQ0QsaUJBQUEsMEJBQUEsQUFDRyx1QkFESCxBQUNHLG9CQUFBLFlBeUJrQixDQUFLLENQcVh0Qyx5Q0p0UG9DLDBCSW1QbEIsV0FDTixnQk8vWUQsa0JBQ0UscUJBQUEsQUFDRCxpQkFBQSwwQkFBQSxBQUNHLHVCQURILEFBQ0csb0JBQUEsWUF5QmtCLENBQUssQ1BxWHRDLHNDSnRQaUMsMkJJbVBkLFdBQ1AsZ0JPL1lELGtCQUNFLHFCQUFBLEFBQ0QsaUJBQUEsMEJBQUEsQUFDRyx1QkFESCxBQUNHLG9CQUFBLFlBeUJrQixDQUFLLENQcVh0Qyx3Q0p0UG1DLHdCSW1QbkIsV0FDSixnQk8vWUQsa0JBQ0UscUJBQUEsQUFDRCxpQkFBQSwwQkFBQSxBQUNHLHVCQURILEFBQ0csb0JBQUEsWUF5QmtCLENBQUssQ1BxWHRDLHlCQUtlLFdBQ1IsQ0FBSSxnREpqUStCLGdDSW9RbEIsV0FDZixDQUFJLENBQ2IsZ0RKdFEwQywrQklvUW5CLFdBQ2QsQ0FBSSxDQUNiLHlDSmpRb0MsZ0NJK1BaLFdBQ2YsQ0FBSSxDQUNiLHNDSmpRaUMsaUNJK1BSLFdBQ2hCLENBQUksQ0FDYix3Q0pqUW1DLDhCSStQYixXQUNiLENBQUksQ0FDYixlQW5TTyxzQkN6R3FELHdCQUFqQyxDQUFpQyxnRExzSWxCLGVJN0JuQyxzQkN6R3FELHdCQUFqQyxDQUFpQyxDRHdJbEUscUJBM0JRLCtCRy9EcUUscUJGckNiLHVCQUFqQyxDQUFpQyxnREw2SGhCLHFCSXpCeEMsK0JHL0RxRSxxQkZyQ2IsdUJBQWpDLENBQWlDLENENkcxRCxxQkFyQ0EsV0cvQlUsQ0FBSSx1QkhtQ1osV0cvQlEsQ0FBSSx3Qkh1Q1Qsa0NHcEM0QyxDQUEwRCx3QkhvQ3RHLG1DR3BDNEMsQ0FBMEQsd0JIb0N0Ryw2QkdwQzRDLENBQTBELHdCSG9DdEcsbUNHcEM0QyxDQUEwRCx3QkhvQ3RHLG1DR3BDNEMsQ0FBMEQsd0JIb0N0Ryw2QkdwQzRDLENBQTBELHdCSG9DdEcsbUNHcEM0QyxDQUEwRCx3QkhvQ3RHLG1DR3BDNEMsQ0FBMEQsd0JIb0N0Ryw2QkdwQzRDLENBQTBELHlCSG9DckcsbUNHcEMyQyxDQUEwRCx5QkhvQ3JHLG1DR3BDMkMsQ0FBMEQseUJIb0NyRyw4QkdwQzJDLENBQTBELGdEUDZFakUscUJJckQxQyxXRy9CVSxDQUFJLHVCSG1DWixXRy9CUSxDQUFJLHdCSHVDVCxrQ0dwQzRDLENBQTBELHdCSG9DdEcsbUNHcEM0QyxDQUEwRCx3QkhvQ3RHLDZCR3BDNEMsQ0FBMEQsd0JIb0N0RyxtQ0dwQzRDLENBQTBELHdCSG9DdEcsbUNHcEM0QyxDQUEwRCx3QkhvQ3RHLDZCR3BDNEMsQ0FBMEQsd0JIb0N0RyxtQ0dwQzRDLENBQTBELHdCSG9DdEcsbUNHcEM0QyxDQUEwRCx3QkhvQ3RHLDZCR3BDNEMsQ0FBMEQseUJIb0NyRyxtQ0dwQzJDLENBQTBELHlCSG9DckcsbUNHcEMyQyxDQUEwRCx5QkhvQ3JHLDhCR3BDMkMsQ0FBMEQsNEJId0JwRyxXRy9CRyxDQUFJLDhCSG1DTCxXRy9CQyxDQUFJLHlCSHVDUixrQ0dwQzJDLENBQTBELHlCSG9DckcsbUNHcEMyQyxDQUEwRCx5QkhvQ3JHLDZCR3BDMkMsQ0FBMEQseUJIb0NyRyxtQ0dwQzJDLENBQTBELHlCSG9DckcsbUNHcEMyQyxDQUEwRCx5QkhvQ3JHLDZCR3BDMkMsQ0FBMEQseUJIb0NyRyxtQ0dwQzJDLENBQTBELHlCSG9DckcsbUNHcEMyQyxDQUEwRCx5QkhvQ3JHLDZCR3BDMkMsQ0FBMEQsMEJIb0NwRyxtQ0dwQzBDLENBQTBELDBCSG9DcEcsbUNHcEMwQyxDQUEwRCwwQkhvQ3BHLDhCR3BDMEMsQ0FBMEQsQ0hzQy9HLGdESnVDOEMsMkJJckRwQyxXRy9CSSxDQUFJLDZCSG1DTixXRy9CRSxDQUFJLHdCSHVDVCxrQ0dwQzRDLENBQTBELHdCSG9DdEcsbUNHcEM0QyxDQUEwRCx3QkhvQ3RHLDZCR3BDNEMsQ0FBMEQsd0JIb0N0RyxtQ0dwQzRDLENBQTBELHdCSG9DdEcsbUNHcEM0QyxDQUEwRCx3QkhvQ3RHLDZCR3BDNEMsQ0FBMEQsd0JIb0N0RyxtQ0dwQzRDLENBQTBELHdCSG9DdEcsbUNHcEM0QyxDQUEwRCx3QkhvQ3RHLDZCR3BDNEMsQ0FBMEQseUJIb0NyRyxtQ0dwQzJDLENBQTBELHlCSG9DckcsbUNHcEMyQyxDQUEwRCx5QkhvQ3JHLDhCR3BDMkMsQ0FBMEQsQ0hzQy9HLHlDSjRDd0MsNEJJMUQ3QixXRy9CRyxDQUFJLDhCSG1DTCxXRy9CQyxDQUFJLHlCSHVDUixrQ0dwQzJDLENBQTBELHlCSG9DckcsbUNHcEMyQyxDQUEwRCx5QkhvQ3JHLDZCR3BDMkMsQ0FBMEQseUJIb0NyRyxtQ0dwQzJDLENBQTBELHlCSG9DckcsbUNHcEMyQyxDQUEwRCx5QkhvQ3JHLDZCR3BDMkMsQ0FBMEQseUJIb0NyRyxtQ0dwQzJDLENBQTBELHlCSG9DckcsbUNHcEMyQyxDQUEwRCx5QkhvQ3JHLDZCR3BDMkMsQ0FBMEQsMEJIb0NwRyxtQ0dwQzBDLENBQTBELDBCSG9DcEcsbUNHcEMwQyxDQUEwRCwwQkhvQ3BHLDhCR3BDMEMsQ0FBMEQsQ0hzQy9HLHNDSjRDcUMsNkJJMUR6QixXRy9CRSxDQUFJLCtCSG1DSixXRy9CQSxDQUFJLDBCSHVDUCxrQ0dwQzBDLENBQTBELDBCSG9DcEcsbUNHcEMwQyxDQUEwRCwwQkhvQ3BHLDZCR3BDMEMsQ0FBMEQsMEJIb0NwRyxtQ0dwQzBDLENBQTBELDBCSG9DcEcsbUNHcEMwQyxDQUEwRCwwQkhvQ3BHLDZCR3BDMEMsQ0FBMEQsMEJIb0NwRyxtQ0dwQzBDLENBQTBELDBCSG9DcEcsbUNHcEMwQyxDQUEwRCwwQkhvQ3BHLDZCR3BDMEMsQ0FBMEQsMkJIb0NuRyxtQ0dwQ3lDLENBQTBELDJCSG9DbkcsbUNHcEN5QyxDQUEwRCwyQkhvQ25HLDhCR3BDeUMsQ0FBMEQsQ0hzQy9HLHdDSjRDdUMsMEJJMUQ5QixXRy9CSyxDQUFJLDRCSG1DUCxXRy9CRyxDQUFJLHVCSHVDVixrQ0dwQzZDLENBQTBELHVCSG9DdkcsbUNHcEM2QyxDQUEwRCx1QkhvQ3ZHLDZCR3BDNkMsQ0FBMEQsdUJIb0N2RyxtQ0dwQzZDLENBQTBELHVCSG9DdkcsbUNHcEM2QyxDQUEwRCx1QkhvQ3ZHLDZCR3BDNkMsQ0FBMEQsdUJIb0N2RyxtQ0dwQzZDLENBQTBELHVCSG9DdkcsbUNHcEM2QyxDQUEwRCx1QkhvQ3ZHLDZCR3BDNkMsQ0FBMEQsd0JIb0N0RyxtQ0dwQzRDLENBQTBELHdCSG9DdEcsbUNHcEM0QyxDQUEwRCx3QkhvQ3RHLDhCR3BDNEMsQ0FBMEQsQ0hzQy9HLDBCQW1Ud0IsK0JPL1liLENBQTJCLGdEWG1JUSwwQkk0UXRCLCtCTy9ZYixDQUEyQixDUGladEMsZ0RKOVE4QywwQkk0UXRCLCtCTy9ZYixDQUEyQixDUGladEMseUNKelF3QywwQkl1UWhCLCtCTy9ZYixDQUEyQixDUGladEMsc0NKelFxQywwQkl1UWIsK0JPL1liLENBQTJCLENQaVp0Qyx3Q0p6UXVDLDBCSXVRZiwrQk8vWWIsQ0FBMkIsQ1BpWnRDLGdESjlROEMsaUNJZ1JiLCtCT25adEIsQ0FBMkIsQ1BxWnBDLGdESmxSNEMsZ0NJZ1JkLCtCT25ackIsQ0FBMkIsQ1BxWnBDLHlDSjdRc0MsaUNJMlFQLCtCT25adEIsQ0FBMkIsQ1BxWnBDLHNDSjdRbUMsa0NJMlFILCtCT25adkIsQ0FBMkIsQ1BxWnBDLHdDSjdRcUMsK0JJMlFSLCtCT25acEIsQ0FBMkIsQ1BxWnBDLFFRL0tFLHFCQWhMYyxzQkFDQyxrQnhCa01ZLG1CQURULDZCd0JuTEksZ0J4QmJkLHdFQUFBLEFBbU53RCxnRUFBQSxvQkFwQjdDLGlCQWFYLHdC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b250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJjb2NwbGF5ZnVsbWluZHNcIjtcbiAgc3JjOnVybChcIi9jc3MvZm9udHMvY29jcGxheWZ1bG1pbmRzLmVvdFwiKTtcbiAgc3JjOnVybChcIi9jc3MvZm9udHMvY29jcGxheWZ1bG1pbmRzLmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksXG4gICAgdXJsKFwiL2Nzcy9mb250cy9jb2NwbGF5ZnVsbWluZHMud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLFxuICAgIHVybChcIi9jc3MvZm9udHMvY29jcGxheWZ1bG1pbmRzLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKSxcbiAgICB1cmwoXCIvY3NzL2ZvbnRzL2NvY3BsYXlmdWxtaW5kcy5zdmcjY29jcGxheWZ1bG1pbmRzXCIpIGZvcm1hdChcInN2Z1wiKTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuXG59XG5cbltkYXRhLWljb25dOmJlZm9yZSB7XG4gIGZvbnQtZmFtaWx5OiBcImNvY3BsYXlmdWxtaW5kc1wiICFpbXBvcnRhbnQ7XG4gIGNvbnRlbnQ6IGF0dHIoZGF0YS1pY29uKTtcbiAgZm9udC1zdHlsZTogbm9ybWFsICFpbXBvcnRhbnQ7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWwgIWltcG9ydGFudDtcbiAgZm9udC12YXJpYW50OiBub3JtYWwgIWltcG9ydGFudDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDtcbiAgc3BlYWs6IG5vbmU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbn1cblxuW2NsYXNzXj1cImljb24tXCJdOmJlZm9yZSxcbltjbGFzcyo9XCIgaWNvbi1cIl06YmVmb3JlIHtcbiAgZm9udC1mYW1pbHk6IFwiY29jcGxheWZ1bG1pbmRzXCIgIWltcG9ydGFudDtcbiAgZm9udC1zdHlsZTogbm9ybWFsICFpbXBvcnRhbnQ7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWwgIWltcG9ydGFudDtcbiAgZm9udC12YXJpYW50OiBub3JtYWwgIWltcG9ydGFudDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDtcbiAgc3BlYWs6IG5vbmU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbn1cblxuXG4uaWNvbi1hcnJvdzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcNjFcIjtcbn1cbi5pY29uLWFuZ2xlLXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFw2MlwiO1xufVxuLmljb24tZmFjZWJvb2stb2ZmaWNpYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXDYzXCI7XG59XG4uaWNvbi1pbnN0YWdyYW06YmVmb3JlIHtcbiAgY29udGVudDogXCJcXDY0XCI7XG59XG4uaWNvbi1saW5rZWRpbi1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXDY1XCI7XG59XG4uaWNvbi1mYWNlYm9vay1jaXJjbGVkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFw2NlwiO1xufVxuLmljb24taW5zdGFncmFtLWNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcNjdcIjtcbn1cbi5pY29uLWxpbmtlZGluLWNpcmNsZWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXDY4XCI7XG59XG4uaWNvbl9oZWFydF9hbHQ6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZTAzMFwiO1xufVxuLmljb25faGVhcnQ6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZTA4OVwiO1xufVxuIiwiQG1peGluIGZvdW5kYXRpb24tbm9ybWFsaXplKCkge1xuICAvKiEgbm9ybWFsaXplLmNzcyB2OC4wLjAgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzICovXG5cbiAgLy8gRG9jdW1lbnRcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyAxLiBDb3JyZWN0IHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMuXG4gIC8vIDIuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW4gaU9TLlxuXG4gIGh0bWwge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE1OyAvLyAxXG4gICAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvLyAyXG4gIH1cblxuICAvLyBTZWN0aW9uc1xuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2Vycy5cblxuICBib2R5IHtcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuICAvLyBDb3JyZWN0IHRoZSBmb250IHNpemUgYW5kIG1hcmdpbiBvbiBgaDFgIGVsZW1lbnRzIHdpdGhpbiBgc2VjdGlvbmAgYW5kXG4gIC8vIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXG5cbiAgaDEge1xuICAgIGZvbnQtc2l6ZTogMmVtO1xuICAgIG1hcmdpbjogMC42N2VtIDA7XG4gIH1cblxuICAvLyBHcm91cGluZyBjb250ZW50XG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAgLy8gMi4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZSBhbmQgSUUuXG5cbiAgaHIge1xuICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvLyAxXG4gICAgaGVpZ2h0OiAwOyAvLyAxXG4gICAgb3ZlcmZsb3c6IHZpc2libGU7IC8vIDJcbiAgfVxuXG4gIC8vIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gIC8vIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cblxuICBwcmUge1xuICAgIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLy8gMVxuICAgIGZvbnQtc2l6ZTogMWVtOyAvLyAyXG4gIH1cblxuICAvLyBUZXh0LWxldmVsIHNlbWFudGljc1xuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cblxuICBhIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuXG4gIC8vIDEuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBDaHJvbWUgNTctXG4gIC8vIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuXG5cbiAgYWJiclt0aXRsZV0ge1xuICAgIGJvcmRlci1ib3R0b206IG5vbmU7IC8vIDFcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgLy8gMlxuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDsgLy8gMlxuICB9XG5cbiAgLy8gQWRkIHRoZSBjb3JyZWN0IGZvbnQgd2VpZ2h0IGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaS5cblxuICBiLFxuICBzdHJvbmcge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG4gIH1cblxuICAvLyAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICAvLyAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG5cbiAgY29kZSxcbiAga2JkLFxuICBzYW1wIHtcbiAgICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8vIDFcbiAgICBmb250LXNpemU6IDFlbTsgLy8gMlxuICB9XG5cbiAgLy8gQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG5cbiAgc21hbGwge1xuICAgIGZvbnQtc2l6ZTogODAlO1xuICB9XG5cbiAgLy8gUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluXG4gIC8vIGFsbCBicm93c2Vycy5cblxuICBzdWIsXG4gIHN1cCB7XG4gICAgZm9udC1zaXplOiA3NSU7XG4gICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgfVxuXG4gIHN1YiB7XG4gICAgYm90dG9tOiAtMC4yNWVtO1xuICB9XG5cbiAgc3VwIHtcbiAgICB0b3A6IC0wLjVlbTtcbiAgfVxuXG4gIC8vIEVtYmVkZGVkIGNvbnRlbnRcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyBSZW1vdmUgdGhlIGJvcmRlciBvbiBpbWFnZXMgaW5zaWRlIGxpbmtzIGluIElFIDEwLlxuXG4gIGltZyB7XG4gICAgYm9yZGVyLXN0eWxlOiBub25lO1xuICB9XG5cbiAgLy8gRm9ybXNcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyAxLiBDaGFuZ2UgdGhlIGZvbnQgc3R5bGVzIGluIGFsbCBicm93c2Vycy5cbiAgLy8gMi4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpLlxuXG4gIGJ1dHRvbixcbiAgaW5wdXQsXG4gIG9wdGdyb3VwLFxuICBzZWxlY3QsXG4gIHRleHRhcmVhIHtcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDsgLy8gMVxuICAgIGZvbnQtc2l6ZTogMTAwJTsgLy8gMVxuICAgIGxpbmUtaGVpZ2h0OiAxLjE1OyAvLyAxXG4gICAgbWFyZ2luOiAwOyAvLyAyXG4gIH1cblxuICAvLyBTaG93IHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAgLy8gMS4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZS5cblxuICBidXR0b24sXG4gIGlucHV0IHsgLy8gMVxuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICB9XG5cbiAgLy8gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBFZGdlLCBGaXJlZm94LCBhbmQgSUUuXG4gIC8vIDEuIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveC5cblxuICBidXR0b24sXG4gIHNlbGVjdCB7IC8vIDFcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgfVxuXG4gIC8vIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG5cbiAgYnV0dG9uLFxuICBbdHlwZT1cImJ1dHRvblwiXSxcbiAgW3R5cGU9XCJyZXNldFwiXSxcbiAgW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xuICB9XG5cbiAgLy8gUmVtb3ZlIHRoZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgaW4gRmlyZWZveC5cblxuICBidXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG4gIFt0eXBlPVwiYnV0dG9uXCJdOjotbW96LWZvY3VzLWlubmVyLFxuICBbdHlwZT1cInJlc2V0XCJdOjotbW96LWZvY3VzLWlubmVyLFxuICBbdHlwZT1cInN1Ym1pdFwiXTo6LW1vei1mb2N1cy1pbm5lciB7XG4gICAgYm9yZGVyLXN0eWxlOiBub25lO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICAvLyBSZXN0b3JlIHRoZSBmb2N1cyBzdHlsZXMgdW5zZXQgYnkgdGhlIHByZXZpb3VzIHJ1bGUuXG5cbiAgYnV0dG9uOi1tb3otZm9jdXNyaW5nLFxuICBbdHlwZT1cImJ1dHRvblwiXTotbW96LWZvY3VzcmluZyxcbiAgW3R5cGU9XCJyZXNldFwiXTotbW96LWZvY3VzcmluZyxcbiAgW3R5cGU9XCJzdWJtaXRcIl06LW1vei1mb2N1c3Jpbmcge1xuICAgIG91dGxpbmU6IDFweCBkb3R0ZWQgQnV0dG9uVGV4dDtcbiAgfVxuXG4gIC8vIENvcnJlY3QgdGhlIHBhZGRpbmcgaW4gRmlyZWZveC5cblxuICBmaWVsZHNldCB7XG4gICAgcGFkZGluZzogMC4zNWVtIDAuNzVlbSAwLjYyNWVtO1xuICB9XG5cbiAgLy8gMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cbiAgLy8gMi4gQ29ycmVjdCB0aGUgY29sb3IgaW5oZXJpdGFuY2UgZnJvbSBgZmllbGRzZXRgIGVsZW1lbnRzIGluIElFLlxuICAvLyAzLiBSZW1vdmUgdGhlIHBhZGRpbmcgc28gZGV2ZWxvcGVycyBhcmUgbm90IGNhdWdodCBvdXQgd2hlbiB0aGV5IHplcm8gb3V0XG4gIC8vICAgIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzLlxuXG4gIGxlZ2VuZCB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLy8gMVxuICAgIGNvbG9yOiBpbmhlcml0OyAvLyAyXG4gICAgZGlzcGxheTogdGFibGU7IC8vIDFcbiAgICBtYXgtd2lkdGg6IDEwMCU7IC8vIDFcbiAgICBwYWRkaW5nOiAwOyAvLyAzXG4gICAgd2hpdGUtc3BhY2U6IG5vcm1hbDsgLy8gMVxuICB9XG5cbiAgLy8gQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cblxuICBwcm9ncmVzcyB7XG4gICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICB9XG5cbiAgLy8gUmVtb3ZlIHRoZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRSAxMCsuXG5cbiAgdGV4dGFyZWEge1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICB9XG5cbiAgLy8gMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gSUUgMTAuXG4gIC8vIDIuIFJlbW92ZSB0aGUgcGFkZGluZyBpbiBJRSAxMC5cblxuICBbdHlwZT1cImNoZWNrYm94XCJdLFxuICBbdHlwZT1cInJhZGlvXCJdIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvLyAxXG4gICAgcGFkZGluZzogMDsgLy8gMlxuICB9XG5cbiAgLy8gQ29ycmVjdCB0aGUgY3Vyc29yIHN0eWxlIG9mIGluY3JlbWVudCBhbmQgZGVjcmVtZW50IGJ1dHRvbnMgaW4gQ2hyb21lLlxuXG4gIFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuICBbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG5cbiAgLy8gMS4gQ29ycmVjdCB0aGUgb2RkIGFwcGVhcmFuY2UgaW4gQ2hyb21lIGFuZCBTYWZhcmkuXG4gIC8vIDIuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxuXG4gIFt0eXBlPVwic2VhcmNoXCJdIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLy8gMVxuICAgIG91dGxpbmUtb2Zmc2V0OiAtMnB4OyAvLyAyXG4gIH1cblxuICAvLyBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG5cbiAgW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgfVxuXG4gIC8vIDEuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gIC8vIDIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIFNhZmFyaS5cblxuICA6Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLy8gMVxuICAgIGZvbnQ6IGluaGVyaXQ7IC8vIDJcbiAgfVxuXG4gIC8vIEludGVyYWN0aXZlXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gRWRnZSwgSUUgMTArLCBhbmQgRmlyZWZveC5cblxuICBkZXRhaWxzIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIC8vIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGFsbCBicm93c2Vycy5cblxuICBzdW1tYXJ5IHtcbiAgICBkaXNwbGF5OiBsaXN0LWl0ZW07XG4gIH1cblxuICAvLyBNaXNjXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTArLlxuXG4gIHRlbXBsYXRlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLy8gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTAuXG5cbiAgW2hpZGRlbl0ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLyBzYXNzLWxpbnQ6ZGlzYWJsZSBuby1jb2xvci1saXRlcmFscywgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuXG4vLy8vXG4vLy8gQGdyb3VwIGdsb2JhbFxuLy8vL1xuXG5AaW1wb3J0ICd1dGlsL3V0aWwnO1xuXG4vLy8gRm9udCBzaXplIGF0dHJpYnV0ZSBhcHBsaWVkIHRvIGA8aHRtbD5gIGFuZCBgPGJvZHk+YC4gV2UgdXNlIDEwMCUgYnkgZGVmYXVsdCBzbyB0aGUgdmFsdWUgaXMgaW5oZXJpdGVkIGZyb20gdGhlIHVzZXIncyBicm93c2VyIHNldHRpbmdzLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1mb250LXNpemU6IDEwMCUgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgd2lkdGggb2YgeW91ciBzaXRlLiBVc2VkIGJ5IHRoZSBncmlkIHRvIGRldGVybWluZSByb3cgd2lkdGguXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLXdpZHRoOiByZW0tY2FsYygxMjAwKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbGluZSBoZWlnaHQgZm9yIGFsbCB0eXBlLiBgJGdsb2JhbC1saW5laGVpZ2h0YCBpcyAyNHB4IHdoaWxlIGAkZ2xvYmFsLWZvbnQtc2l6ZWAgaXMgMTZweFxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1saW5laGVpZ2h0OiAxLjUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvcnMgdXNlZCBmb3IgYnV0dG9ucywgY2FsbG91dHMsIGxpbmtzLCBldGMuIFRoZXJlIG11c3QgYWx3YXlzIGJlIGEgY29sb3IgY2FsbGVkIGBwcmltYXJ5YC5cbi8vLyBAdHlwZSBNYXBcbiRmb3VuZGF0aW9uLXBhbGV0dGU6IChcbiAgcHJpbWFyeTogIzE3NzliYSxcbiAgc2Vjb25kYXJ5OiAjNzY3Njc2LFxuICBzdWNjZXNzOiAjM2FkYjc2LFxuICB3YXJuaW5nOiAjZmZhZTAwLFxuICBhbGVydDogI2NjNGIzNyxcbikgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciBsaWdodCBncmF5IFVJIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kbGlnaHQtZ3JheTogI2U2ZTZlNiAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIG1lZGl1bSBncmF5IFVJIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kbWVkaXVtLWdyYXk6ICNjYWNhY2EgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciBkYXJrIGdyYXkgVUkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRkYXJrLWdyYXk6ICM4YThhOGEgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciBibGFjayB1aSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJGJsYWNrOiAjMGEwYTBhICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3Igd2hpdGUgdWkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiR3aGl0ZTogI2ZlZmVmZSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJvZHkuXG4vLy8gQHR5cGUgQ29sb3JcbiRib2R5LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3Igb2YgdGhlIGJvZHkuXG4vLy8gQHR5cGUgQ29sb3JcbiRib2R5LWZvbnQtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc3RhY2sgb2YgdGhlIGJvZHkuXG4vLy8gQHR5cGUgTGlzdFxuJGJvZHktZm9udC1mYW1pbHk6ICdIZWx2ZXRpY2EgTmV1ZScsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZiAhZGVmYXVsdDtcblxuLy8vIFNldCB0byBgdHJ1ZWAgdG8gZW5hYmxlIGFudGlhbGlhc2VkIHR5cGUsIHVzaW5nIHRoZSBgLXdlYmtpdC1mb250LXNtb290aGluZ2AgYW5kIGAtbW96LW9zeC1mb250LXNtb290aGluZ2AgQ1NTIHByb3BlcnRpZXMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGJvZHktYW50aWFsaWFzZWQ6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgbWFyZ2luIG9uIGNvbXBvbmVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLW1hcmdpbjogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBwYWRkaW5nIG9uIGNvbXBvbmVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLXBhZGRpbmc6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgcG9zaXRpb25pbmcgb24gY29tcG9uZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtcG9zaXRpb246IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgZm9udCB3ZWlnaHQgdXNlZCBmb3Igbm9ybWFsIHR5cGUuXG4vLy8gQHR5cGUgS2V5d29yZCB8IE51bWJlclxuJGdsb2JhbC13ZWlnaHQtbm9ybWFsOiBub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgZm9udCB3ZWlnaHQgdXNlZCBmb3IgYm9sZCB0eXBlLlxuLy8vIEB0eXBlIEtleXdvcmQgfCBOdW1iZXJcbiRnbG9iYWwtd2VpZ2h0LWJvbGQ6IGJvbGQgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgYWxsIGVsZW1lbnRzIHRoYXQgaGF2ZSBhIGJvcmRlciByYWRpdXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLXJhZGl1czogMCAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBhbGwgbWVudSBzdHlsZXMuIENhbiBiZSBvdmVyd3JpdHRlbiBhdCBpbmRpdmlkdWFsIG1lbnUgY29tcG9uZW50IGxldmVsLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1tZW51LXBhZGRpbmc6IDAuN3JlbSAxcmVtICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIGFsbCBtZW51IHN0eWxlcy4gTmVzdGVkIG1hcmdpbiBmb3Igc3VibWVudS5cbiRnbG9iYWwtbWVudS1uZXN0ZWQtbWFyZ2luOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gU2V0cyB0aGUgdGV4dCBkaXJlY3Rpb24gb2YgdGhlIENTUy4gQ2FuIGJlIGVpdGhlciBgbHRyYCBvciBgcnRsYC5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kZ2xvYmFsLXRleHQtZGlyZWN0aW9uOiBsdHIgIWRlZmF1bHQ7XG5cbi8vLyBFbmFibGVzIGZsZXhib3ggZm9yIGNvbXBvbmVudHMgdGhhdCBzdXBwb3J0IGl0LlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRnbG9iYWwtZmxleGJveDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEVuYWJsZWQgcmVzcG9uc2l2ZSBicmVha3BvaW50cyBmb3IgcHJvdG90eXBlcyBpZiBhcHBsaWNhYmxlXG4vLy8gQHR5cGUgQm9vbGVhblxuJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM6IGZhbHNlICFkZWZhdWx0O1xuXG4vLy8gQnV0dG9uIGN1cnNvcidzIHZhbHVlLCBgYXV0b2AgYnkgZGVmYXVsdFxuLy8vIEB0eXBlIEtleXdvcmRcbiRnbG9iYWwtYnV0dG9uLWN1cnNvcjogYXV0byAhZGVmYXVsdDtcblxuQGlmIG5vdCBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCBwcmltYXJ5KSB7XG4gIEBlcnJvciAnSW4gJGZvdW5kYXRpb24tcGFsZXR0ZSwgeW91IG11c3QgaGF2ZSBhIGNvbG9yIG5hbWVkIFwicHJpbWFyeVwiLic7XG59XG5cbi8vIEludGVybmFsIHZhcmlhYmxlcyB1c2VkIGZvciB0ZXh0IGRpcmVjdGlvblxuJGdsb2JhbC1sZWZ0OiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IHJ0bCwgcmlnaHQsIGxlZnQpO1xuJGdsb2JhbC1yaWdodDogaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBydGwsIGxlZnQsIHJpZ2h0KTtcblxuLy8gSW50ZXJuYWwgdmFyaWFibGUgdGhhdCBjb250YWlucyB0aGUgZmxleCBqdXN0aWZ5aW5nIG9wdGlvbnNcbiQtemYtZmxleC1qdXN0aWZ5OiAtemYtZmxleC1qdXN0aWZ5KCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24pO1xuXG4vLy8gR2xvYmFsIHRvbGVyYW5jZSBmb3IgY29sb3IgcGljayBjb250cmFzdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtY29sb3ItcGljay1jb250cmFzdC10b2xlcmFuY2U6IDAgIWRlZmF1bHQ7XG5cbi8vIEludGVybmFsIHZhcmlhYmxlcyB1c2VkIGZvciBjb2xvcnNcbkBpbmNsdWRlIGFkZC1mb3VuZGF0aW9uLWNvbG9ycztcblxuQG1peGluIGZvdW5kYXRpb24tZ2xvYmFsLXN0eWxlcyB7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tbm9ybWFsaXplO1xuXG4gIC8vIFRoZXNlIHN0eWxlcyBhcmUgYXBwbGllZCB0byBhIDxtZXRhPiB0YWcsIHdoaWNoIGlzIHJlYWQgYnkgdGhlIEZvdW5kYXRpb24gSmF2YVNjcmlwdFxuICAuZm91bmRhdGlvbi1tcSB7XG4gICAgZm9udC1mYW1pbHk6ICcjey16Zi1icC1zZXJpYWxpemUoJGJyZWFrcG9pbnRzKX0nO1xuICB9XG5cbiAgaHRtbCB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBmb250LXNpemU6ICRnbG9iYWwtZm9udC1zaXplO1xuICB9XG5cbiAgLy8gU2V0IGJveC1zaXppbmcgZ2xvYmFsbHkgdG8gaGFuZGxlIHBhZGRpbmcgYW5kIGJvcmRlciB3aWR0aHNcbiAgKixcbiAgKjo6YmVmb3JlLFxuICAqOjphZnRlciB7XG4gICAgYm94LXNpemluZzogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIERlZmF1bHQgYm9keSBzdHlsZXNcbiAgYm9keSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICBiYWNrZ3JvdW5kOiAkYm9keS1iYWNrZ3JvdW5kO1xuXG4gICAgZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG4gICAgbGluZS1oZWlnaHQ6ICRnbG9iYWwtbGluZWhlaWdodDtcbiAgICBjb2xvcjogJGJvZHktZm9udC1jb2xvcjtcblxuICAgIEBpZiAoJGJvZHktYW50aWFsaWFzZWQpIHtcbiAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkOyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXZlbmRvci1wcmVmaXhlc1xuICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby12ZW5kb3ItcHJlZml4ZXNcbiAgICB9XG4gIH1cblxuICBpbWcge1xuICAgIC8vIEdldCByaWQgb2YgZ2FwIHVuZGVyIGltYWdlcyBieSBtYWtpbmcgdGhlbSBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IGJ5IGRlZmF1bHRcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuICAgIC8vIEdyaWQgZGVmYXVsdHMgdG8gZ2V0IGltYWdlcyBhbmQgZW1iZWRzIHRvIHdvcmsgcHJvcGVybHlcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIC1tcy1pbnRlcnBvbGF0aW9uLW1vZGU6IGJpY3ViaWM7XG4gIH1cblxuICAvLyBNYWtlIHN1cmUgdGV4dGFyZWEgdGFrZXMgb24gaGVpZ2h0IGF1dG9tYXRpY2FsbHlcbiAgdGV4dGFyZWEge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtaW4taGVpZ2h0OiA1MHB4O1xuICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICB9XG5cbiAgLy8gTWFrZSBzZWxlY3QgZWxlbWVudHMgYXJlIDEwMCUgd2lkdGggYnkgZGVmYXVsdFxuICBzZWxlY3Qge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gIH1cblxuICAvLyBTdHlsZXMgR29vZ2xlIE1hcHMgYW5kIE1hcFF1ZXN0IGVtYmVkcyBwcm9wZXJseVxuICAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLWlkc1xuICAubWFwX2NhbnZhcyxcbiAgLm1xYS1kaXNwbGF5IHtcbiAgICBpbWcsXG4gICAgZW1iZWQsXG4gICAgb2JqZWN0IHtcbiAgICAgIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC8vIFJlc2V0IDxidXR0b24+IHN0eWxlcyBjcmVhdGVkIGJ5IG1vc3QgYnJvd3NlcnNcbiAgYnV0dG9uIHtcbiAgICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gICAgcGFkZGluZzogMDtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBjdXJzb3I6ICRnbG9iYWwtYnV0dG9uLWN1cnNvcjtcbiAgfVxuXG4gIC8vIFByZXZlbnQgdGV4dCBvdmVyZmxvdyBvbiBwcmVcbiAgcHJlIHtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgfVxuXG4gIC8vIE1ha2UgcmVzZXQgaW5oZXJpdCBmb250LWZhbWlseSBpbnN0ZWFkIG9mIHNldHRpbmdzIHNhbnMtc2VyaWZcbiAgYnV0dG9uLFxuICBpbnB1dCxcbiAgb3B0Z3JvdXAsXG4gIHNlbGVjdCxcbiAgdGV4dGFyZWEge1xuICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICB9XG5cbiAgLy8gSW50ZXJuYWwgY2xhc3NlcyB0byBzaG93L2hpZGUgZWxlbWVudHMgaW4gSmF2YVNjcmlwdFxuICAuaXMtdmlzaWJsZSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5pcy1oaWRkZW4ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuIiwiLy8gIEZvdW5kYXRpb24gZm9yIFNpdGVzIFNldHRpbmdzXG4vLyAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vXG4vLyAgVGFibGUgb2YgQ29udGVudHM6XG4vL1xuLy8gICAxLiBHbG9iYWxcbi8vICAgMi4gQnJlYWtwb2ludHNcbi8vICAgMy4gVGhlIEdyaWRcbi8vICAgNC4gQmFzZSBUeXBvZ3JhcGh5XG4vLyAgIDUuIFR5cG9ncmFwaHkgSGVscGVyc1xuLy8gICA2LiBBYmlkZVxuLy8gICA3LiBBY2NvcmRpb25cbi8vICAgOC4gQWNjb3JkaW9uIE1lbnVcbi8vICAgOS4gQmFkZ2Vcbi8vICAxMC4gQnJlYWRjcnVtYnNcbi8vICAxMS4gQnV0dG9uXG4vLyAgMTIuIEJ1dHRvbiBHcm91cFxuLy8gIDEzLiBDYWxsb3V0XG4vLyAgMTQuIENhcmRcbi8vICAxNS4gQ2xvc2UgQnV0dG9uXG4vLyAgMTYuIERyaWxsZG93blxuLy8gIDE3LiBEcm9wZG93blxuLy8gIDE4LiBEcm9wZG93biBNZW51XG4vLyAgMTkuIEZsZXhib3ggVXRpbGl0aWVzXG4vLyAgMjAuIEZvcm1zXG4vLyAgMjEuIExhYmVsXG4vLyAgMjIuIE1lZGlhIE9iamVjdFxuLy8gIDIzLiBNZW51XG4vLyAgMjQuIE1ldGVyXG4vLyAgMjUuIE9mZi1jYW52YXNcbi8vICAyNi4gT3JiaXRcbi8vICAyNy4gUGFnaW5hdGlvblxuLy8gIDI4LiBQcm9ncmVzcyBCYXJcbi8vICAyOS4gUHJvdG90eXBlIEFycm93XG4vLyAgMzAuIFByb3RvdHlwZSBCb3JkZXItQm94XG4vLyAgMzEuIFByb3RvdHlwZSBCb3JkZXItTm9uZVxuLy8gIDMyLiBQcm90b3R5cGUgQm9yZGVyZWRcbi8vICAzMy4gUHJvdG90eXBlIERpc3BsYXlcbi8vICAzNC4gUHJvdG90eXBlIEZvbnQtU3R5bGluZ1xuLy8gIDM1LiBQcm90b3R5cGUgTGlzdC1TdHlsZS1UeXBlXG4vLyAgMzYuIFByb3RvdHlwZSBPdmVyZmxvd1xuLy8gIDM3LiBQcm90b3R5cGUgUG9zaXRpb25cbi8vICAzOC4gUHJvdG90eXBlIFJvdW5kZWRcbi8vICAzOS4gUHJvdG90eXBlIFNlcGFyYXRvclxuLy8gIDQwLiBQcm90b3R5cGUgU2hhZG93XG4vLyAgNDEuIFByb3RvdHlwZSBTaXppbmdcbi8vICA0Mi4gUHJvdG90eXBlIFNwYWNpbmdcbi8vICA0My4gUHJvdG90eXBlIFRleHQtRGVjb3JhdGlvblxuLy8gIDQ0LiBQcm90b3R5cGUgVGV4dC1UcmFuc2Zvcm1hdGlvblxuLy8gIDQ1LiBQcm90b3R5cGUgVGV4dC1VdGlsaXRpZXNcbi8vICA0Ni4gUmVzcG9uc2l2ZSBFbWJlZFxuLy8gIDQ3LiBSZXZlYWxcbi8vICA0OC4gU2xpZGVyXG4vLyAgNDkuIFN3aXRjaFxuLy8gIDUwLiBUYWJsZVxuLy8gIDUxLiBUYWJzXG4vLyAgNTIuIFRodW1ibmFpbFxuLy8gIDUzLiBUaXRsZSBCYXJcbi8vICA1NC4gVG9vbHRpcFxuLy8gIDU1LiBUb3AgQmFyXG4vLyAgNTYuIFh5IEdyaWRcblxuQGltcG9ydCAndXRpbC91dGlsJztcblxuLy8gMS4gR2xvYmFsXG4vLyAtLS0tLS0tLS1cblxuJGdsb2JhbC1mb250LXNpemU6IDE4cHg7XG4kZ2xvYmFsLXdpZHRoOiByZW0tY2FsYygxMzUyKTtcbiRnbG9iYWwtbGluZWhlaWdodDogMS41O1xuJGZvdW5kYXRpb24tcGFsZXR0ZTogKFxuICBwcmltYXJ5OiAjMmU4ZmZmLFxuICBzZWNvbmRhcnk6ICNmZmZmZmYsXG4gIHN1Y2Nlc3M6ICMzYWRiNzYsXG4gIHdhcm5pbmc6ICNmZmFlMDAsXG4gIGFsZXJ0OiAjY2M0YjM3LFxuKTtcbiRsaWdodC1ncmF5OiAjZjFmM2YzO1xuJG1lZGl1bS1ncmF5OiAjY2FjYWNhOyAvLyBOb3Qgc2V0XG4kZGFyay1ncmF5OiAjOGE4YThhOyAvLyBOb3Qgc2V0XG4kYmxhY2s6ICMwMDAwMDA7XG4kd2hpdGU6ICNmZmZmZmY7XG4kYm9keS1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kYm9keS1mb250LWNvbG9yOiAkYmxhY2s7XG4kYm9keS1mb250LWZhbWlseTogJ0hlbHZldGljYSBOZXVlJywgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuJGJvZHktYW50aWFsaWFzZWQ6IHRydWU7XG4kZ2xvYmFsLW1hcmdpbjogMXJlbTtcbiRnbG9iYWwtcGFkZGluZzogMXJlbTtcbiRnbG9iYWwtcG9zaXRpb246IDFyZW07XG4kZ2xvYmFsLXdlaWdodC1ub3JtYWw6IG5vcm1hbDtcbiRnbG9iYWwtd2VpZ2h0LWJvbGQ6IGJvbGQ7XG4kZ2xvYmFsLXJhZGl1czogMDtcbiRnbG9iYWwtbWVudS1wYWRkaW5nOiAwLjdyZW0gMXJlbTtcbiRnbG9iYWwtbWVudS1uZXN0ZWQtbWFyZ2luOiAxcmVtO1xuJGdsb2JhbC10ZXh0LWRpcmVjdGlvbjogbHRyO1xuJGdsb2JhbC1mbGV4Ym94OiB0cnVlO1xuJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM6IGZhbHNlO1xuJGdsb2JhbC1idXR0b24tY3Vyc29yOiBhdXRvO1xuJGdsb2JhbC1jb2xvci1waWNrLWNvbnRyYXN0LXRvbGVyYW5jZTogMDtcbiRwcmludC10cmFuc3BhcmVudC1iYWNrZ3JvdW5kczogdHJ1ZTtcblxuQGluY2x1ZGUgYWRkLWZvdW5kYXRpb24tY29sb3JzO1xuJHByaW50LWhyZWZzOiB0cnVlO1xuXG4vLyAyLiBCcmVha3BvaW50c1xuLy8gLS0tLS0tLS0tLS0tLS1cblxuJGJyZWFrcG9pbnRzOiAoXG4gIHNtYWxsOiAwLFxuICBtZWRpdW06IDczN3B4LFxuICBsYXJnZTogNzY5cHgsXG4gIHhsYXJnZTogMTAyNXB4LFxuICB4eGxhcmdlOiAxNDAwcHgsXG4gIGh1Z2U6IDE5MDBweFxuKTtcbiRwcmludC1icmVha3BvaW50OiBsYXJnZTtcbiRicmVha3BvaW50LWNsYXNzZXM6IChzbWFsbCBtZWRpdW0gbGFyZ2UgeGxhcmdlIHh4bGFyZ2UgaHVnZSk7XG5cbi8vIDMuIFRoZSBHcmlkXG4vLyAtLS0tLS0tLS0tLVxuXG4kZ3JpZC1yb3ctd2lkdGg6ICRnbG9iYWwtd2lkdGg7XG4kZ3JpZC1jb2x1bW4tY291bnQ6IDEyO1xuJGdyaWQtY29sdW1uLWd1dHRlcjogKFxuICBzbWFsbDogMjBweCxcbiAgbWVkaXVtOiAzMHB4LFxuKTtcbiRncmlkLWNvbHVtbi1hbGlnbi1lZGdlOiB0cnVlO1xuJGdyaWQtY29sdW1uLWFsaWFzOiAnY29sdW1ucyc7XG4kYmxvY2stZ3JpZC1tYXg6IDg7XG5cbi8vIDQuIEJhc2UgVHlwb2dyYXBoeVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRoZWFkZXItZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xuJGhlYWRlci1mb250LXdlaWdodDogYm9sZDtcbiRoZWFkZXItZm9udC1zdHlsZTogbm9ybWFsO1xuJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTogQ29uc29sYXMsICdMaWJlcmF0aW9uIE1vbm8nLCBDb3VyaWVyLCBtb25vc3BhY2U7XG4kaGVhZGVyLWNvbG9yOiBpbmhlcml0O1xuJGhlYWRlci1saW5laGVpZ2h0OiAxLjI7XG4kaGVhZGVyLW1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiRoZWFkZXItc3R5bGVzOiAoXG4gIHNtYWxsOiAoXG4gICAgJ2gxJzogKCdmb250LXNpemUnOiAyNCksXG4gICAgJ2gyJzogKCdmb250LXNpemUnOiAyMCksXG4gICAgJ2gzJzogKCdmb250LXNpemUnOiAxOSksXG4gICAgJ2g0JzogKCdmb250LXNpemUnOiAxOCksXG4gICAgJ2g1JzogKCdmb250LXNpemUnOiAxNyksXG4gICAgJ2g2JzogKCdmb250LXNpemUnOiAxNiksXG4gICksXG4gIG1lZGl1bTogKFxuICAgICdoMSc6ICgnZm9udC1zaXplJzogODApLFxuICAgICdoMic6ICgnZm9udC1zaXplJzogNTApLFxuICAgICdoMyc6ICgnZm9udC1zaXplJzogNDApLFxuICAgICdoNCc6ICgnZm9udC1zaXplJzogMzApLFxuICAgICdoNSc6ICgnZm9udC1zaXplJzogMjUpLFxuICAgICdoNic6ICgnZm9udC1zaXplJzogMjApLFxuICApLFxuKTtcbiRoZWFkZXItdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbiRzbWFsbC1mb250LXNpemU6IDgwJTtcbiRoZWFkZXItc21hbGwtZm9udC1jb2xvcjogJG1lZGl1bS1ncmF5O1xuJHBhcmFncmFwaC1saW5laGVpZ2h0OiAxLjY7XG4kcGFyYWdyYXBoLW1hcmdpbi1ib3R0b206IDFyZW07XG4kcGFyYWdyYXBoLXRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG4kY29kZS1jb2xvcjogJGJsYWNrO1xuJGNvZGUtZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1tb25vc3BhY2U7XG4kY29kZS1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuJGNvZGUtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4kY29kZS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kY29kZS1wYWRkaW5nOiByZW0tY2FsYygyIDUgMSk7XG4kYW5jaG9yLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiRhbmNob3ItY29sb3ItaG92ZXI6IHNjYWxlLWNvbG9yKCRhbmNob3ItY29sb3IsICRsaWdodG5lc3M6IC0xNCUpO1xuJGFuY2hvci10ZXh0LWRlY29yYXRpb246IG5vbmU7XG4kYW5jaG9yLXRleHQtZGVjb3JhdGlvbi1ob3Zlcjogbm9uZTtcbiRoci13aWR0aDogJGdsb2JhbC13aWR0aDtcbiRoci1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kaHItbWFyZ2luOiByZW0tY2FsYygyMCkgYXV0bztcbiRsaXN0LWxpbmVoZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodDtcbiRsaXN0LW1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcbiRsaXN0LXN0eWxlLXR5cGU6IGRpc2M7XG4kbGlzdC1zdHlsZS1wb3NpdGlvbjogb3V0c2lkZTtcbiRsaXN0LXNpZGUtbWFyZ2luOiAxLjI1cmVtO1xuJGxpc3QtbmVzdGVkLXNpZGUtbWFyZ2luOiAxLjI1cmVtO1xuJGRlZm5saXN0LW1hcmdpbi1ib3R0b206IDFyZW07XG4kZGVmbmxpc3QtdGVybS13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4kZGVmbmxpc3QtdGVybS1tYXJnaW4tYm90dG9tOiAwLjNyZW07XG4kYmxvY2txdW90ZS1jb2xvcjogJGRhcmstZ3JheTtcbiRibG9ja3F1b3RlLXBhZGRpbmc6IHJlbS1jYWxjKDkgMjAgMCAxOSk7XG4kYmxvY2txdW90ZS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kY2l0ZS1mb250LXNpemU6IHJlbS1jYWxjKDEzKTtcbiRjaXRlLWNvbG9yOiAkZGFyay1ncmF5O1xuJGNpdGUtcHNldWRvLWNvbnRlbnQ6ICdcXDIwMTQgXFwwMDIwJztcbiRrZXlzdHJva2UtZm9udDogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTtcbiRrZXlzdHJva2UtY29sb3I6ICRibGFjaztcbiRrZXlzdHJva2UtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4ka2V5c3Ryb2tlLXBhZGRpbmc6IHJlbS1jYWxjKDIgNCAwKTtcbiRrZXlzdHJva2UtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRhYmJyLXVuZGVybGluZTogMXB4IGRvdHRlZCAkYmxhY2s7XG5cbi8vIDUuIFR5cG9ncmFwaHkgSGVscGVyc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRsZWFkLWZvbnQtc2l6ZTogJGdsb2JhbC1mb250LXNpemUgKiAxLjI1O1xuJGxlYWQtbGluZWhlaWdodDogMS42O1xuJHN1YmhlYWRlci1saW5laGVpZ2h0OiAxLjQ7XG4kc3ViaGVhZGVyLWNvbG9yOiAkZGFyay1ncmF5O1xuJHN1YmhlYWRlci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuJHN1YmhlYWRlci1tYXJnaW4tdG9wOiAwLjJyZW07XG4kc3ViaGVhZGVyLW1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiRzdGF0LWZvbnQtc2l6ZTogMi41cmVtO1xuXG4vLyA2LiBBYmlkZVxuLy8gLS0tLS0tLS1cblxuJGFiaWRlLWlucHV0czogdHJ1ZTtcbiRhYmlkZS1sYWJlbHM6IHRydWU7XG4kaW5wdXQtYmFja2dyb3VuZC1pbnZhbGlkOiBnZXQtY29sb3IoYWxlcnQpO1xuJGZvcm0tbGFiZWwtY29sb3ItaW52YWxpZDogZ2V0LWNvbG9yKGFsZXJ0KTtcbiRpbnB1dC1lcnJvci1jb2xvcjogZ2V0LWNvbG9yKGFsZXJ0KTtcbiRpbnB1dC1lcnJvci1mb250LXNpemU6IHJlbS1jYWxjKDEyKTtcbiRpbnB1dC1lcnJvci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcblxuLy8gNy4gQWNjb3JkaW9uXG4vLyAtLS0tLS0tLS0tLS1cblxuJGFjY29yZGlvbi1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kYWNjb3JkaW9uLXBsdXNtaW51czogdHJ1ZTtcbiRhY2NvcmRpb24tdGl0bGUtZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4kYWNjb3JkaW9uLWl0ZW0tY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuJGFjY29yZGlvbi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICRsaWdodC1ncmF5O1xuJGFjY29yZGlvbi1pdGVtLXBhZGRpbmc6IDEuMjVyZW0gMXJlbTtcbiRhY2NvcmRpb24tY29udGVudC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kYWNjb3JkaW9uLWNvbnRlbnQtYm9yZGVyOiAxcHggc29saWQgJGxpZ2h0LWdyYXk7XG4kYWNjb3JkaW9uLWNvbnRlbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4kYWNjb3JkaW9uLWNvbnRlbnQtcGFkZGluZzogMXJlbTtcblxuLy8gOC4gQWNjb3JkaW9uIE1lbnVcbi8vIC0tLS0tLS0tLS0tLS0tLS0tXG5cbiRhY2NvcmRpb25tZW51LXBhZGRpbmc6ICRnbG9iYWwtbWVudS1wYWRkaW5nO1xuJGFjY29yZGlvbm1lbnUtbmVzdGVkLW1hcmdpbjogJGdsb2JhbC1tZW51LW5lc3RlZC1tYXJnaW47XG4kYWNjb3JkaW9ubWVudS1zdWJtZW51LXBhZGRpbmc6ICRhY2NvcmRpb25tZW51LXBhZGRpbmc7XG4kYWNjb3JkaW9ubWVudS1hcnJvd3M6IHRydWU7XG4kYWNjb3JkaW9ubWVudS1hcnJvdy1jb2xvcjogJHByaW1hcnktY29sb3I7XG4kYWNjb3JkaW9ubWVudS1pdGVtLWJhY2tncm91bmQ6IG51bGw7XG4kYWNjb3JkaW9ubWVudS1ib3JkZXI6IG51bGw7XG4kYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS1iYWNrZ3JvdW5kOiBudWxsO1xuJGFjY29yZGlvbi1zdWJtZW51LXRvZ2dsZS1ib3JkZXI6ICRhY2NvcmRpb25tZW51LWJvcmRlcjtcbiRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLXdpZHRoOiA0MHB4O1xuJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtaGVpZ2h0OiAkYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS13aWR0aDtcbiRhY2NvcmRpb25tZW51LWFycm93LXNpemU6IDZweDtcblxuLy8gOS4gQmFkZ2Vcbi8vIC0tLS0tLS0tXG5cbiRiYWRnZS1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiRiYWRnZS1jb2xvcjogJHdoaXRlO1xuJGJhZGdlLWNvbG9yLWFsdDogJGJsYWNrO1xuJGJhZGdlLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGU7XG4kYmFkZ2UtcGFkZGluZzogMC4zZW07XG4kYmFkZ2UtbWlud2lkdGg6IDIuMWVtO1xuJGJhZGdlLWZvbnQtc2l6ZTogMC42cmVtO1xuXG4vLyAxMC4gQnJlYWRjcnVtYnNcbi8vIC0tLS0tLS0tLS0tLS0tLVxuXG4kYnJlYWRjcnVtYnMtbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW4gMDtcbiRicmVhZGNydW1icy1pdGVtLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTEpO1xuJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3ItY3VycmVudDogJGJsYWNrO1xuJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3ItZGlzYWJsZWQ6ICRtZWRpdW0tZ3JheTtcbiRicmVhZGNydW1icy1pdGVtLW1hcmdpbjogMC43NXJlbTtcbiRicmVhZGNydW1icy1pdGVtLXVwcGVyY2FzZTogdHJ1ZTtcbiRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvcjogdHJ1ZTtcbiRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci1pdGVtOiAnLyc7XG4kYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3ItaXRlbS1ydGw6ICdcXFxcJztcbiRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci1jb2xvcjogJG1lZGl1bS1ncmF5O1xuXG4vLyAxMS4gQnV0dG9uXG4vLyAtLS0tLS0tLS0tXG5cbiRidXR0b24tZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4kYnV0dG9uLXBhZGRpbmc6IDAuODVlbSAxZW07XG4kYnV0dG9uLW1hcmdpbjogMCAwICRnbG9iYWwtbWFyZ2luIDA7XG4kYnV0dG9uLWZpbGw6IHNvbGlkO1xuJGJ1dHRvbi1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiRidXR0b24tYmFja2dyb3VuZC1ob3Zlcjogc2NhbGUtY29sb3IoJGJ1dHRvbi1iYWNrZ3JvdW5kLCAkbGlnaHRuZXNzOiAtMTUlKTtcbiRidXR0b24tY29sb3I6ICR3aGl0ZTtcbiRidXR0b24tY29sb3ItYWx0OiAkYmxhY2s7XG4kYnV0dG9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kYnV0dG9uLWhvbGxvdy1ib3JkZXItd2lkdGg6IDFweDtcbiRidXR0b24tc2l6ZXM6IChcbiAgdGlueTogMC42cmVtLFxuICBzbWFsbDogMC43NXJlbSxcbiAgZGVmYXVsdDogMC45cmVtLFxuICBsYXJnZTogMS4yNXJlbSxcbik7XG4kYnV0dG9uLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGU7XG4kYnV0dG9uLW9wYWNpdHktZGlzYWJsZWQ6IDAuMjU7XG4kYnV0dG9uLWJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzOiAtMjAlO1xuJGJ1dHRvbi1ob2xsb3ctaG92ZXItbGlnaHRuZXNzOiAtNTAlO1xuJGJ1dHRvbi10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2Utb3V0LCBjb2xvciAwLjI1cyBlYXNlLW91dDtcbiRidXR0b24tcmVzcG9uc2l2ZS1leHBhbmRlZDogZmFsc2U7XG5cbi8vIDEyLiBCdXR0b24gR3JvdXBcbi8vIC0tLS0tLS0tLS0tLS0tLS1cblxuJGJ1dHRvbmdyb3VwLW1hcmdpbjogMXJlbTtcbiRidXR0b25ncm91cC1zcGFjaW5nOiAxcHg7XG4kYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3I6ICcuYnV0dG9uJztcbiRidXR0b25ncm91cC1leHBhbmQtbWF4OiA2O1xuJGJ1dHRvbmdyb3VwLXJhZGl1cy1vbi1lYWNoOiB0cnVlO1xuXG4vLyAxMy4gQ2FsbG91dFxuLy8gLS0tLS0tLS0tLS1cblxuJGNhbGxvdXQtYmFja2dyb3VuZDogJHdoaXRlO1xuJGNhbGxvdXQtYmFja2dyb3VuZC1mYWRlOiA4NSU7XG4kY2FsbG91dC1ib3JkZXI6IDFweCBzb2xpZCByZ2JhKCRibGFjaywgMC4yNSk7XG4kY2FsbG91dC1tYXJnaW46IDAgMCAxcmVtIDA7XG4kY2FsbG91dC1wYWRkaW5nOiAxcmVtO1xuJGNhbGxvdXQtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiRjYWxsb3V0LWZvbnQtY29sb3ItYWx0OiAkYm9keS1iYWNrZ3JvdW5kO1xuJGNhbGxvdXQtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRjYWxsb3V0LWxpbmstdGludDogMzAlO1xuXG4vLyAxNC4gQ2FyZFxuLy8gLS0tLS0tLS1cblxuJGNhcmQtYmFja2dyb3VuZDogJHdoaXRlO1xuJGNhcmQtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiRjYXJkLWRpdmlkZXItYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4kY2FyZC1ib3JkZXI6IDFweCBzb2xpZCAkbGlnaHQtZ3JheTtcbiRjYXJkLXNoYWRvdzogbm9uZTtcbiRjYXJkLWJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJGNhcmQtcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nO1xuJGNhcmQtbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG5cbi8vIDE1LiBDbG9zZSBCdXR0b25cbi8vIC0tLS0tLS0tLS0tLS0tLS1cblxuJGNsb3NlYnV0dG9uLXBvc2l0aW9uOiByaWdodCB0b3A7XG4kY2xvc2VidXR0b24tb2Zmc2V0LWhvcml6b250YWw6IChcbiAgc21hbGw6IDAuNjZyZW0sXG4gIG1lZGl1bTogMXJlbSxcbik7XG4kY2xvc2VidXR0b24tb2Zmc2V0LXZlcnRpY2FsOiAoXG4gIHNtYWxsOiAwLjMzZW0sXG4gIG1lZGl1bTogMC41cmVtLFxuKTtcbiRjbG9zZWJ1dHRvbi1zaXplOiAoXG4gIHNtYWxsOiAxLjVlbSxcbiAgbWVkaXVtOiAyZW0sXG4pO1xuJGNsb3NlYnV0dG9uLWxpbmVoZWlnaHQ6IDE7XG4kY2xvc2VidXR0b24tY29sb3I6ICRkYXJrLWdyYXk7XG4kY2xvc2VidXR0b24tY29sb3ItaG92ZXI6ICRibGFjaztcblxuLy8gMTYuIERyaWxsZG93blxuLy8gLS0tLS0tLS0tLS0tLVxuXG4kZHJpbGxkb3duLXRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cyBsaW5lYXI7XG4kZHJpbGxkb3duLWFycm93czogdHJ1ZTtcbiRkcmlsbGRvd24tcGFkZGluZzogJGdsb2JhbC1tZW51LXBhZGRpbmc7XG4kZHJpbGxkb3duLW5lc3RlZC1tYXJnaW46IDA7XG4kZHJpbGxkb3duLWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRkcmlsbGRvd24tc3VibWVudS1wYWRkaW5nOiAkZHJpbGxkb3duLXBhZGRpbmc7XG4kZHJpbGxkb3duLXN1Ym1lbnUtYmFja2dyb3VuZDogJHdoaXRlO1xuJGRyaWxsZG93bi1hcnJvdy1jb2xvcjogJHByaW1hcnktY29sb3I7XG4kZHJpbGxkb3duLWFycm93LXNpemU6IDZweDtcblxuLy8gMTcuIERyb3Bkb3duXG4vLyAtLS0tLS0tLS0tLS1cblxuJGRyb3Bkb3duLXBhZGRpbmc6IDFyZW07XG4kZHJvcGRvd24tYmFja2dyb3VuZDogJGJvZHktYmFja2dyb3VuZDtcbiRkcm9wZG93bi1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kZHJvcGRvd24tZm9udC1zaXplOiAxcmVtO1xuJGRyb3Bkb3duLXdpZHRoOiAzMDBweDtcbiRkcm9wZG93bi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJGRyb3Bkb3duLXNpemVzOiAoXG4gIHRpbnk6IDEwMHB4LFxuICBzbWFsbDogMjAwcHgsXG4gIGxhcmdlOiA0MDBweCxcbik7XG5cbi8vIDE4LiBEcm9wZG93biBNZW51XG4vLyAtLS0tLS0tLS0tLS0tLS0tLVxuXG4kZHJvcGRvd25tZW51LWFycm93czogdHJ1ZTtcbiRkcm9wZG93bm1lbnUtYXJyb3ctY29sb3I6ICRhbmNob3ItY29sb3I7XG4kZHJvcGRvd25tZW51LWFycm93LXNpemU6IDZweDtcbiRkcm9wZG93bm1lbnUtYXJyb3ctcGFkZGluZzogMS41cmVtO1xuJGRyb3Bkb3dubWVudS1taW4td2lkdGg6IDIwMHB4O1xuJGRyb3Bkb3dubWVudS1iYWNrZ3JvdW5kOiBudWxsO1xuJGRyb3Bkb3dubWVudS1zdWJtZW51LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRkcm9wZG93bm1lbnUtcGFkZGluZzogJGdsb2JhbC1tZW51LXBhZGRpbmc7XG4kZHJvcGRvd25tZW51LW5lc3RlZC1tYXJnaW46IDA7XG4kZHJvcGRvd25tZW51LXN1Ym1lbnUtcGFkZGluZzogJGRyb3Bkb3dubWVudS1wYWRkaW5nO1xuJGRyb3Bkb3dubWVudS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kZHJvcGRvd24tbWVudS1pdGVtLWNvbG9yLWFjdGl2ZTogZ2V0LWNvbG9yKHByaW1hcnkpO1xuJGRyb3Bkb3duLW1lbnUtaXRlbS1iYWNrZ3JvdW5kLWFjdGl2ZTogdHJhbnNwYXJlbnQ7XG5cbi8vIDE5LiBGbGV4Ym94IFV0aWxpdGllc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRmbGV4LXNvdXJjZS1vcmRlcmluZy1jb3VudDogNjtcbiRmbGV4Ym94LXJlc3BvbnNpdmUtYnJlYWtwb2ludHM6IHRydWU7XG5cbi8vIDIwLiBGb3Jtc1xuLy8gLS0tLS0tLS0tXG5cbiRmaWVsZHNldC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kZmllbGRzZXQtcGFkZGluZzogcmVtLWNhbGMoMjApO1xuJGZpZWxkc2V0LW1hcmdpbjogcmVtLWNhbGMoMTggMCk7XG4kbGVnZW5kLXBhZGRpbmc6IHJlbS1jYWxjKDAgMyk7XG4kZm9ybS1zcGFjaW5nOiByZW0tY2FsYygxNik7XG4kaGVscHRleHQtY29sb3I6ICRibGFjaztcbiRoZWxwdGV4dC1mb250LXNpemU6IHJlbS1jYWxjKDEzKTtcbiRoZWxwdGV4dC1mb250LXN0eWxlOiBpdGFsaWM7XG4kaW5wdXQtcHJlZml4LWNvbG9yOiAkYmxhY2s7XG4kaW5wdXQtcHJlZml4LWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuJGlucHV0LXByZWZpeC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kaW5wdXQtcHJlZml4LXBhZGRpbmc6IDFyZW07XG4kZm9ybS1sYWJlbC1jb2xvcjogJGJsYWNrO1xuJGZvcm0tbGFiZWwtZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4kZm9ybS1sYWJlbC1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuJGZvcm0tbGFiZWwtbGluZS1oZWlnaHQ6IDEuODtcbiRzZWxlY3QtYmFja2dyb3VuZDogJHdoaXRlO1xuJHNlbGVjdC10cmlhbmdsZS1jb2xvcjogJGRhcmstZ3JheTtcbiRzZWxlY3QtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRpbnB1dC1jb2xvcjogJGJsYWNrO1xuJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yOiAkbWVkaXVtLWdyYXk7XG4kaW5wdXQtZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4kaW5wdXQtZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4kaW5wdXQtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiRpbnB1dC1saW5lLWhlaWdodDogJGdsb2JhbC1saW5laGVpZ2h0O1xuJGlucHV0LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRpbnB1dC1iYWNrZ3JvdW5kLWZvY3VzOiAkd2hpdGU7XG4kaW5wdXQtYmFja2dyb3VuZC1kaXNhYmxlZDogJGxpZ2h0LWdyYXk7XG4kaW5wdXQtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJGlucHV0LWJvcmRlci1mb2N1czogMXB4IHNvbGlkICRkYXJrLWdyYXk7XG4kaW5wdXQtcGFkZGluZzogJGZvcm0tc3BhY2luZyAvIDI7XG4kaW5wdXQtc2hhZG93OiBpbnNldCAwIDFweCAycHggcmdiYSgkYmxhY2ssIDAuMSk7XG4kaW5wdXQtc2hhZG93LWZvY3VzOiAwIDAgNXB4ICRtZWRpdW0tZ3JheTtcbiRpbnB1dC1jdXJzb3ItZGlzYWJsZWQ6IG5vdC1hbGxvd2VkO1xuJGlucHV0LXRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0O1xuJGlucHV0LW51bWJlci1zcGlubmVyczogdHJ1ZTtcbiRpbnB1dC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJGZvcm0tYnV0dG9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbi8vIDIxLiBMYWJlbFxuLy8gLS0tLS0tLS0tXG5cbiRsYWJlbC1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiRsYWJlbC1jb2xvcjogJHdoaXRlO1xuJGxhYmVsLWNvbG9yLWFsdDogJGJsYWNrO1xuJGxhYmVsLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGU7XG4kbGFiZWwtZm9udC1zaXplOiAwLjhyZW07XG4kbGFiZWwtcGFkZGluZzogMC4zMzMzM3JlbSAwLjVyZW07XG4kbGFiZWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblxuLy8gMjIuIE1lZGlhIE9iamVjdFxuLy8gLS0tLS0tLS0tLS0tLS0tLVxuXG4kbWVkaWFvYmplY3QtbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG4kbWVkaWFvYmplY3Qtc2VjdGlvbi1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmc7XG4kbWVkaWFvYmplY3QtaW1hZ2Utd2lkdGgtc3RhY2tlZDogMTAwJTtcblxuLy8gMjMuIE1lbnVcbi8vIC0tLS0tLS0tXG5cbiRtZW51LW1hcmdpbjogMDtcbiRtZW51LW5lc3RlZC1tYXJnaW46ICRnbG9iYWwtbWVudS1uZXN0ZWQtbWFyZ2luO1xuJG1lbnUtaXRlbXMtcGFkZGluZzogJGdsb2JhbC1tZW51LXBhZGRpbmc7XG4kbWVudS1zaW1wbGUtbWFyZ2luOiAxcmVtO1xuJG1lbnUtaXRlbS1jb2xvci1hY3RpdmU6ICR3aGl0ZTtcbiRtZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU6IGdldC1jb2xvcihwcmltYXJ5KTtcbiRtZW51LWljb24tc3BhY2luZzogMC4yNXJlbTtcbiRtZW51LXN0YXRlLWJhY2stY29tcGF0OiB0cnVlO1xuJG1lbnUtY2VudGVyZWQtYmFjay1jb21wYXQ6IHRydWU7XG4kbWVudS1pY29ucy1iYWNrLWNvbXBhdDogdHJ1ZTtcblxuLy8gMjQuIE1ldGVyXG4vLyAtLS0tLS0tLS1cblxuJG1ldGVyLWhlaWdodDogMXJlbTtcbiRtZXRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJG1ldGVyLWJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcbiRtZXRlci1maWxsLWdvb2Q6ICRzdWNjZXNzLWNvbG9yO1xuJG1ldGVyLWZpbGwtbWVkaXVtOiAkd2FybmluZy1jb2xvcjtcbiRtZXRlci1maWxsLWJhZDogJGFsZXJ0LWNvbG9yO1xuXG4vLyAyNS4gT2ZmLWNhbnZhc1xuLy8gLS0tLS0tLS0tLS0tLS1cblxuJG9mZmNhbnZhcy1zaXplczogKFxuICBzbWFsbDogMjUwcHgsXG4pO1xuJG9mZmNhbnZhcy12ZXJ0aWNhbC1zaXplczogKFxuICBzbWFsbDogMjUwcHgsXG4pO1xuJG9mZmNhbnZhcy1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiRvZmZjYW52YXMtc2hhZG93OiAwIDAgMTBweCByZ2JhKCRibGFjaywgMC43KTtcbiRvZmZjYW52YXMtaW5uZXItc2hhZG93LXNpemU6IDIwcHg7XG4kb2ZmY2FudmFzLWlubmVyLXNoYWRvdy1jb2xvcjogcmdiYSgkYmxhY2ssIDAuMjUpO1xuJG9mZmNhbnZhcy1vdmVybGF5LXppbmRleDogMTE7XG4kb2ZmY2FudmFzLXB1c2gtemluZGV4OiAxMjtcbiRvZmZjYW52YXMtb3ZlcmxhcC16aW5kZXg6IDEzO1xuJG9mZmNhbnZhcy1yZXZlYWwtemluZGV4OiAxMjtcbiRvZmZjYW52YXMtdHJhbnNpdGlvbi1sZW5ndGg6IDAuNXM7XG4kb2ZmY2FudmFzLXRyYW5zaXRpb24tdGltaW5nOiBlYXNlO1xuJG9mZmNhbnZhcy1maXhlZC1yZXZlYWw6IHRydWU7XG4kb2ZmY2FudmFzLWV4aXQtYmFja2dyb3VuZDogcmdiYSgkd2hpdGUsIDAuMjUpO1xuJG1haW5jb250ZW50LWNsYXNzOiAnb2ZmLWNhbnZhcy1jb250ZW50JztcblxuLy8gMjYuIE9yYml0XG4vLyAtLS0tLS0tLS1cblxuJG9yYml0LWJ1bGxldC1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXk7XG4kb3JiaXQtYnVsbGV0LWJhY2tncm91bmQtYWN0aXZlOiAkZGFyay1ncmF5O1xuJG9yYml0LWJ1bGxldC1kaWFtZXRlcjogMS4ycmVtO1xuJG9yYml0LWJ1bGxldC1tYXJnaW46IDAuMXJlbTtcbiRvcmJpdC1idWxsZXQtbWFyZ2luLXRvcDogMC44cmVtO1xuJG9yYml0LWJ1bGxldC1tYXJnaW4tYm90dG9tOiAwLjhyZW07XG4kb3JiaXQtY2FwdGlvbi1iYWNrZ3JvdW5kOiByZ2JhKCRibGFjaywgMC41KTtcbiRvcmJpdC1jYXB0aW9uLXBhZGRpbmc6IDFyZW07XG4kb3JiaXQtY29udHJvbC1iYWNrZ3JvdW5kLWhvdmVyOiByZ2JhKCRibGFjaywgMC41KTtcbiRvcmJpdC1jb250cm9sLXBhZGRpbmc6IDFyZW07XG4kb3JiaXQtY29udHJvbC16aW5kZXg6IDEwO1xuXG4vLyAyNy4gUGFnaW5hdGlvblxuLy8gLS0tLS0tLS0tLS0tLS1cblxuJHBhZ2luYXRpb24tZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4kcGFnaW5hdGlvbi1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcbiRwYWdpbmF0aW9uLWl0ZW0tY29sb3I6ICRibGFjaztcbiRwYWdpbmF0aW9uLWl0ZW0tcGFkZGluZzogcmVtLWNhbGMoMyAxMCk7XG4kcGFnaW5hdGlvbi1pdGVtLXNwYWNpbmc6IHJlbS1jYWxjKDEpO1xuJHBhZ2luYXRpb24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRwYWdpbmF0aW9uLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJGxpZ2h0LWdyYXk7XG4kcGFnaW5hdGlvbi1pdGVtLWJhY2tncm91bmQtY3VycmVudDogJHByaW1hcnktY29sb3I7XG4kcGFnaW5hdGlvbi1pdGVtLWNvbG9yLWN1cnJlbnQ6ICR3aGl0ZTtcbiRwYWdpbmF0aW9uLWl0ZW0tY29sb3ItZGlzYWJsZWQ6ICRtZWRpdW0tZ3JheTtcbiRwYWdpbmF0aW9uLWVsbGlwc2lzLWNvbG9yOiAkYmxhY2s7XG4kcGFnaW5hdGlvbi1tb2JpbGUtaXRlbXM6IGZhbHNlO1xuJHBhZ2luYXRpb24tbW9iaWxlLWN1cnJlbnQtaXRlbTogZmFsc2U7XG4kcGFnaW5hdGlvbi1hcnJvd3M6IHRydWU7XG5cbi8vIDI4LiBQcm9ncmVzcyBCYXJcbi8vIC0tLS0tLS0tLS0tLS0tLS1cblxuJHByb2dyZXNzLWhlaWdodDogMXJlbTtcbiRwcm9ncmVzcy1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXk7XG4kcHJvZ3Jlc3MtbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG4kcHJvZ3Jlc3MtbWV0ZXItYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4kcHJvZ3Jlc3MtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblxuLy8gMjkuIFByb3RvdHlwZSBBcnJvd1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLWFycm93LWRpcmVjdGlvbnM6IChcbiAgZG93bixcbiAgdXAsXG4gIHJpZ2h0LFxuICBsZWZ0XG4pO1xuJHByb3RvdHlwZS1hcnJvdy1zaXplOiAwLjQzNzVyZW07XG4kcHJvdG90eXBlLWFycm93LWNvbG9yOiAkYmxhY2s7XG5cbi8vIDMwLiBQcm90b3R5cGUgQm9yZGVyLUJveFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtYm9yZGVyLWJveC1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG5cbi8vIDMxLiBQcm90b3R5cGUgQm9yZGVyLU5vbmVcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1ib3JkZXItbm9uZS1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG5cbi8vIDMyLiBQcm90b3R5cGUgQm9yZGVyZWRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1ib3JkZXJlZC1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLWJvcmRlci13aWR0aDogcmVtLWNhbGMoMSk7XG4kcHJvdG90eXBlLWJvcmRlci10eXBlOiBzb2xpZDtcbiRwcm90b3R5cGUtYm9yZGVyLWNvbG9yOiAkbWVkaXVtLWdyYXk7XG5cbi8vIDMzLiBQcm90b3R5cGUgRGlzcGxheVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtZGlzcGxheS1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLWRpc3BsYXk6IChcbiAgaW5saW5lLFxuICBpbmxpbmUtYmxvY2ssXG4gIGJsb2NrLFxuICB0YWJsZSxcbiAgdGFibGUtY2VsbFxuKTtcblxuLy8gMzQuIFByb3RvdHlwZSBGb250LVN0eWxpbmdcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtZm9udC1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLXdpZGUtbGV0dGVyLXNwYWNpbmc6IHJlbS1jYWxjKDQpO1xuJHByb3RvdHlwZS1mb250LW5vcm1hbDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuJHByb3RvdHlwZS1mb250LWJvbGQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG5cbi8vIDM1LiBQcm90b3R5cGUgTGlzdC1TdHlsZS1UeXBlXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLWxpc3QtYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS1zdHlsZS10eXBlLXVub3JkZXJlZDogKFxuICBkaXNjLFxuICBjaXJjbGUsXG4gIHNxdWFyZVxuKTtcbiRwcm90b3R5cGUtc3R5bGUtdHlwZS1vcmRlcmVkOiAoXG4gIGRlY2ltYWwsXG4gIGxvd2VyLWFscGhhLFxuICBsb3dlci1sYXRpbixcbiAgbG93ZXItcm9tYW4sXG4gIHVwcGVyLWFscGhhLFxuICB1cHBlci1sYXRpbixcbiAgdXBwZXItcm9tYW5cbik7XG5cbi8vIDM2LiBQcm90b3R5cGUgT3ZlcmZsb3dcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1vdmVyZmxvdy1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLW92ZXJmbG93OiAoXG4gIHZpc2libGUsXG4gIGhpZGRlbixcbiAgc2Nyb2xsXG4pO1xuXG4vLyAzNy4gUHJvdG90eXBlIFBvc2l0aW9uXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtcG9zaXRpb24tYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS1wb3NpdGlvbjogKFxuICBzdGF0aWMsXG4gIHJlbGF0aXZlLFxuICBhYnNvbHV0ZSxcbiAgZml4ZWRcbik7XG4kcHJvdG90eXBlLXBvc2l0aW9uLXotaW5kZXg6IDk3NTtcblxuLy8gMzguIFByb3RvdHlwZSBSb3VuZGVkXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1yb3VuZGVkLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoMyk7XG5cbi8vIDM5LiBQcm90b3R5cGUgU2VwYXJhdG9yXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLXNlcGFyYXRvci1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLXNlcGFyYXRvci1hbGlnbjogY2VudGVyO1xuJHByb3RvdHlwZS1zZXBhcmF0b3ItaGVpZ2h0OiByZW0tY2FsYygyKTtcbiRwcm90b3R5cGUtc2VwYXJhdG9yLXdpZHRoOiAzcmVtO1xuJHByb3RvdHlwZS1zZXBhcmF0b3ItYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4kcHJvdG90eXBlLXNlcGFyYXRvci1tYXJnaW4tdG9wOiAkZ2xvYmFsLW1hcmdpbjtcblxuLy8gNDAuIFByb3RvdHlwZSBTaGFkb3dcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtc2hhZG93LWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtYm94LXNoYWRvdzogMCAycHggNXB4IDAgcmdiYSgwLDAsMCwuMTYpLFxuICAgICAgICAgICAgICAgICAgICAgICAwIDJweCAxMHB4IDAgcmdiYSgwLDAsMCwuMTIpO1xuXG4vLyA0MS4gUHJvdG90eXBlIFNpemluZ1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1zaXppbmctYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS1zaXppbmc6IChcbiAgd2lkdGgsXG4gIGhlaWdodFxuKTtcbiRwcm90b3R5cGUtc2l6ZXM6IChcbiAgMjU6IDI1JSxcbiAgNTA6IDUwJSxcbiAgNzU6IDc1JSxcbiAgMTAwOiAxMDAlXG4pO1xuXG4vLyA0Mi4gUHJvdG90eXBlIFNwYWNpbmdcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLXNwYWNpbmctYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS1zcGFjZXJzLWNvdW50OiAzO1xuXG4vLyA0My4gUHJvdG90eXBlIFRleHQtRGVjb3JhdGlvblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1kZWNvcmF0aW9uLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtdGV4dC1kZWNvcmF0aW9uOiAoXG4gIG92ZXJsaW5lLFxuICB1bmRlcmxpbmUsXG4gIGxpbmUtdGhyb3VnaCxcbik7XG5cbi8vIDQ0LiBQcm90b3R5cGUgVGV4dC1UcmFuc2Zvcm1hdGlvblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtdHJhbnNmb3JtYXRpb24tYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS10ZXh0LXRyYW5zZm9ybWF0aW9uOiAoXG4gIGxvd2VyY2FzZSxcbiAgdXBwZXJjYXNlLFxuICBjYXBpdGFsaXplXG4pO1xuXG4vLyA0NS4gUHJvdG90eXBlIFRleHQtVXRpbGl0aWVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtdXRpbGl0aWVzLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG5cbi8vIDQ2LiBSZXNwb25zaXZlIEVtYmVkXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcmVzcG9uc2l2ZS1lbWJlZC1tYXJnaW4tYm90dG9tOiByZW0tY2FsYygxNik7XG4kcmVzcG9uc2l2ZS1lbWJlZC1yYXRpb3M6IChcbiAgZGVmYXVsdDogNCBieSAzLFxuICB3aWRlc2NyZWVuOiAxNiBieSA5LFxuKTtcblxuLy8gNDcuIFJldmVhbFxuLy8gLS0tLS0tLS0tLVxuXG4kcmV2ZWFsLWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRyZXZlYWwtd2lkdGg6IDYwMHB4O1xuJHJldmVhbC1tYXgtd2lkdGg6ICRnbG9iYWwtd2lkdGg7XG4kcmV2ZWFsLXBhZGRpbmc6ICRnbG9iYWwtcGFkZGluZztcbiRyZXZlYWwtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJHJldmVhbC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJHJldmVhbC16aW5kZXg6IDEwMDU7XG4kcmV2ZWFsLW92ZXJsYXktYmFja2dyb3VuZDogcmdiYSgkYmxhY2ssIDAuNDUpO1xuXG4vLyA0OC4gU2xpZGVyXG4vLyAtLS0tLS0tLS0tXG5cbiRzbGlkZXItd2lkdGgtdmVydGljYWw6IDAuNXJlbTtcbiRzbGlkZXItdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG4kc2xpZGVyLWhlaWdodDogMC41cmVtO1xuJHNsaWRlci1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiRzbGlkZXItZmlsbC1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXk7XG4kc2xpZGVyLWhhbmRsZS1oZWlnaHQ6IDEuNHJlbTtcbiRzbGlkZXItaGFuZGxlLXdpZHRoOiAxLjRyZW07XG4kc2xpZGVyLWhhbmRsZS1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiRzbGlkZXItb3BhY2l0eS1kaXNhYmxlZDogMC4yNTtcbiRzbGlkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblxuLy8gNDkuIFN3aXRjaFxuLy8gLS0tLS0tLS0tLVxuXG4kc3dpdGNoLWJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcbiRzd2l0Y2gtYmFja2dyb3VuZC1hY3RpdmU6ICRwcmltYXJ5LWNvbG9yO1xuJHN3aXRjaC1oZWlnaHQ6IDJyZW07XG4kc3dpdGNoLWhlaWdodC10aW55OiAxLjVyZW07XG4kc3dpdGNoLWhlaWdodC1zbWFsbDogMS43NXJlbTtcbiRzd2l0Y2gtaGVpZ2h0LWxhcmdlOiAyLjVyZW07XG4kc3dpdGNoLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kc3dpdGNoLW1hcmdpbjogJGdsb2JhbC1tYXJnaW47XG4kc3dpdGNoLXBhZGRsZS1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kc3dpdGNoLXBhZGRsZS1vZmZzZXQ6IDAuMjVyZW07XG4kc3dpdGNoLXBhZGRsZS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJHN3aXRjaC1wYWRkbGUtdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2Utb3V0O1xuXG4vLyA1MC4gVGFibGVcbi8vIC0tLS0tLS0tLVxuXG4kdGFibGUtYmFja2dyb3VuZDogJHdoaXRlO1xuJHRhYmxlLWNvbG9yLXNjYWxlOiA1JTtcbiR0YWJsZS1ib3JkZXI6IDFweCBzb2xpZCBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlKTtcbiR0YWJsZS1wYWRkaW5nOiByZW0tY2FsYyg4IDEwIDEwKTtcbiR0YWJsZS1ob3Zlci1zY2FsZTogMiU7XG4kdGFibGUtcm93LWhvdmVyOiBkYXJrZW4oJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1ob3Zlci1zY2FsZSk7XG4kdGFibGUtcm93LXN0cmlwZS1ob3ZlcjogZGFya2VuKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUgKyAkdGFibGUtaG92ZXItc2NhbGUpO1xuJHRhYmxlLWlzLXN0cmlwZWQ6IHRydWU7XG4kdGFibGUtc3RyaXBlZC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlKTtcbiR0YWJsZS1zdHJpcGU6IGV2ZW47XG4kdGFibGUtaGVhZC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlIC8gMik7XG4kdGFibGUtaGVhZC1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtaGVhZC1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpO1xuJHRhYmxlLWZvb3QtYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSk7XG4kdGFibGUtZm9vdC1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtZm9vdC1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpO1xuJHRhYmxlLWhlYWQtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiR0YWJsZS1mb290LWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4kc2hvdy1oZWFkZXItZm9yLXN0YWNrZWQ6IGZhbHNlO1xuJHRhYmxlLXN0YWNrLWJyZWFrcG9pbnQ6IG1lZGl1bTtcblxuLy8gNTEuIFRhYnNcbi8vIC0tLS0tLS0tXG5cbiR0YWItbWFyZ2luOiAwO1xuJHRhYi1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kdGFiLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiR0YWItYmFja2dyb3VuZC1hY3RpdmU6ICRsaWdodC1ncmF5O1xuJHRhYi1hY3RpdmUtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuJHRhYi1pdGVtLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpO1xuJHRhYi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICR3aGl0ZTtcbiR0YWItaXRlbS1wYWRkaW5nOiAxLjI1cmVtIDEuNXJlbTtcbiR0YWItY29udGVudC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kdGFiLWNvbnRlbnQtYm9yZGVyOiAkbGlnaHQtZ3JheTtcbiR0YWItY29udGVudC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiR0YWItY29udGVudC1wYWRkaW5nOiAxcmVtO1xuXG4vLyA1Mi4gVGh1bWJuYWlsXG4vLyAtLS0tLS0tLS0tLS0tXG5cbiR0aHVtYm5haWwtYm9yZGVyOiA0cHggc29saWQgJHdoaXRlO1xuJHRodW1ibmFpbC1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcbiR0aHVtYm5haWwtc2hhZG93OiAwIDAgMCAxcHggcmdiYSgkYmxhY2ssIDAuMik7XG4kdGh1bWJuYWlsLXNoYWRvdy1ob3ZlcjogMCAwIDZweCAxcHggcmdiYSgkcHJpbWFyeS1jb2xvciwgMC41KTtcbiR0aHVtYm5haWwtdHJhbnNpdGlvbjogYm94LXNoYWRvdyAyMDBtcyBlYXNlLW91dDtcbiR0aHVtYm5haWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblxuLy8gNTMuIFRpdGxlIEJhclxuLy8gLS0tLS0tLS0tLS0tLVxuXG4kdGl0bGViYXItYmFja2dyb3VuZDogJGJsYWNrO1xuJHRpdGxlYmFyLWNvbG9yOiAkd2hpdGU7XG4kdGl0bGViYXItcGFkZGluZzogMC41cmVtO1xuJHRpdGxlYmFyLXRleHQtZm9udC13ZWlnaHQ6IGJvbGQ7XG4kdGl0bGViYXItaWNvbi1jb2xvcjogJHdoaXRlO1xuJHRpdGxlYmFyLWljb24tY29sb3ItaG92ZXI6ICRtZWRpdW0tZ3JheTtcbiR0aXRsZWJhci1pY29uLXNwYWNpbmc6IDAuMjVyZW07XG5cbi8vIDU0LiBUb29sdGlwXG4vLyAtLS0tLS0tLS0tLVxuXG4kaGFzLXRpcC1jdXJzb3I6IGhlbHA7XG4kaGFzLXRpcC1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiRoYXMtdGlwLWJvcmRlci1ib3R0b206IGRvdHRlZCAxcHggJGRhcmstZ3JheTtcbiR0b29sdGlwLWJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiR0b29sdGlwLWNvbG9yOiAkd2hpdGU7XG4kdG9vbHRpcC1wYWRkaW5nOiAwLjc1cmVtO1xuJHRvb2x0aXAtbWF4LXdpZHRoOiAxMHJlbTtcbiR0b29sdGlwLWZvbnQtc2l6ZTogJHNtYWxsLWZvbnQtc2l6ZTtcbiR0b29sdGlwLXBpcC13aWR0aDogMC43NXJlbTtcbiR0b29sdGlwLXBpcC1oZWlnaHQ6ICR0b29sdGlwLXBpcC13aWR0aCAqIDAuODY2O1xuJHRvb2x0aXAtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblxuLy8gNTUuIFRvcCBCYXJcbi8vIC0tLS0tLS0tLS0tXG5cbiR0b3BiYXItcGFkZGluZzogMC41cmVtO1xuJHRvcGJhci1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiR0b3BiYXItc3VibWVudS1iYWNrZ3JvdW5kOiAkdG9wYmFyLWJhY2tncm91bmQ7XG4kdG9wYmFyLXRpdGxlLXNwYWNpbmc6IDAuNXJlbSAxcmVtIDAuNXJlbSAwO1xuJHRvcGJhci1pbnB1dC13aWR0aDogMjAwcHg7XG4kdG9wYmFyLXVuc3RhY2stYnJlYWtwb2ludDogbWVkaXVtO1xuXG4vLyA1Ni4gWHkgR3JpZFxuLy8gLS0tLS0tLS0tLS1cblxuJHh5LWdyaWQ6IHRydWU7XG4kZ3JpZC1jb250YWluZXI6ICRnbG9iYWwtd2lkdGg7XG4kZ3JpZC1jb2x1bW5zOiAxMjtcbiRncmlkLW1hcmdpbi1ndXR0ZXJzOiAoXG4gIHNtYWxsOiAyMHB4LFxuICBtZWRpdW06IDMwcHhcbik7XG4kZ3JpZC1wYWRkaW5nLWd1dHRlcnM6ICRncmlkLW1hcmdpbi1ndXR0ZXJzO1xuJGdyaWQtY29udGFpbmVyLXBhZGRpbmc6ICRncmlkLXBhZGRpbmctZ3V0dGVycztcbiRncmlkLWNvbnRhaW5lci1tYXg6ICRnbG9iYWwtd2lkdGg7XG4keHktYmxvY2stZ3JpZC1tYXg6IDg7XG5cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZ1bmN0aW9uc1xuLy8vL1xuXG4vLy8gQ3JlYXRlcyBhbiBpbm5lciBib3gtc2hhZG93IGZvciBvbmx5IG9uZSBzaWRlXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaWRlIC0gU2lkZSB0aGUgc2hhZG93IGlzIHN1cHBvc2VkIHRvIGFwcGVhci4gQ2FuIGJlIGB0b3BgLCBgbGVmdGAsIGByaWdodGAgb3IgYGJvdHRvbWAuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRzaXplIC0gV2lkdGggZm9yIHRoZSB0YXJnZXQgc2lkZS5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgLSBDb2xvciBvZiB0aGUgc2hhZG93LlxuQG1peGluIGlubmVyLXNpZGUtc2hhZG93KFxuICAkc2lkZTogYm90dG9tLFxuICAkc2l6ZTogMjBweCxcbiAgJGNvbG9yOiByZ2JhKCRibGFjaywgMC4yNSlcbikge1xuXG4gICRoZWxwZXI6IHJvdW5kKCRzaXplICogMC42NSk7XG5cbiAgQGlmICgkc2lkZSA9PSB0b3ApIHtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwICRoZWxwZXIgJHNpemUgKC0xKSokaGVscGVyICRjb2xvcjtcbiAgfSBAZWxzZSBpZiAoJHNpZGUgPT0gbGVmdCkge1xuICAgIGJveC1zaGFkb3c6IGluc2V0ICRoZWxwZXIgMCAkc2l6ZSAoLTEpKiRoZWxwZXIgJGNvbG9yO1xuICB9IEBlbHNlIGlmICgkc2lkZSA9PSByaWdodCkge1xuICAgIGJveC1zaGFkb3c6IGluc2V0ICgtMSkqJGhlbHBlciAwICRzaXplICgtMSkqJGhlbHBlciAkY29sb3I7XG4gIH0gQGVsc2UgaWYgKCRzaWRlID09IGJvdHRvbSkge1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgKC0xKSokaGVscGVyICRzaXplICgtMSkqJGhlbHBlciAkY29sb3I7XG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBDU1MgdHJpYW5nbGUsIHdoaWNoIGNhbiBiZSB1c2VkIGZvciBkcm9wZG93biBhcnJvd3MsIGRyb3Bkb3duIHBpcHMsIGFuZCBtb3JlLiBVc2UgdGhpcyBtaXhpbiBpbnNpZGUgYSBgJjo6YmVmb3JlYCBvciBgJjo6YWZ0ZXJgIHNlbGVjdG9yLCB0byBhdHRhY2ggdGhlIHRyaWFuZ2xlIHRvIGFuIGV4aXN0aW5nIGVsZW1lbnQuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJHRyaWFuZ2xlLXNpemUgLSBXaWR0aCBvZiB0aGUgdHJpYW5nbGUuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJHRyaWFuZ2xlLWNvbG9yIC0gQ29sb3Igb2YgdGhlIHRyaWFuZ2xlLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHRyaWFuZ2xlLWRpcmVjdGlvbiAtIERpcmVjdGlvbiB0aGUgdHJpYW5nbGUgcG9pbnRzLiBDYW4gYmUgYHVwYCwgYHJpZ2h0YCwgYGRvd25gLCBvciBgbGVmdGAuXG5AbWl4aW4gY3NzLXRyaWFuZ2xlKFxuICAkdHJpYW5nbGUtc2l6ZSxcbiAgJHRyaWFuZ2xlLWNvbG9yLFxuICAkdHJpYW5nbGUtZGlyZWN0aW9uXG4pIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG5cbiAgYm9yZGVyOiBpbnNldCAkdHJpYW5nbGUtc2l6ZTtcblxuICBjb250ZW50OiAnJztcblxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gZG93bikge1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkdHJpYW5nbGUtY29sb3IgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIH1cbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IHVwKSB7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgICBib3JkZXItYm90dG9tLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICR0cmlhbmdsZS1jb2xvcjtcbiAgfVxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gcmlnaHQpIHtcbiAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgJHRyaWFuZ2xlLWNvbG9yO1xuICB9XG4gIEBpZiAoJHRyaWFuZ2xlLWRpcmVjdGlvbiA9PSBsZWZ0KSB7XG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICR0cmlhbmdsZS1jb2xvciB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIG1lbnUgaWNvbiB3aXRoIGEgc2V0IHdpZHRoLCBoZWlnaHQsIG51bWJlciBvZiBiYXJzLCBhbmQgY29sb3JzLiBUaGUgbWl4aW4gdXNlcyB0aGUgaGVpZ2h0IG9mIHRoZSBpY29uIGFuZCB0aGUgd2VpZ2h0IG9mIHRoZSBiYXJzIHRvIGRldGVybWluZSBzcGFjaW5nLiA8ZGl2IGNsYXNzPVwiZG9jcy1leGFtcGxlLWJ1cmdlclwiPjwvZGl2PlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYmxhY2tdIC0gQ29sb3IgdG8gdXNlIGZvciB0aGUgaWNvbi5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3ItaG92ZXIgWyRkYXJrLWdyYXldIC0gQ29sb3IgdG8gdXNlIHdoZW4gdGhlIGljb24gaXMgaG92ZXJlZCBvdmVyLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2lkdGggWzIwcHhdIC0gV2lkdGggb2YgdGhlIGljb24uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRoZWlnaHQgWzE2cHhdIC0gSGVpZ2h0IG9mIHRoZSBpY29uLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2VpZ2h0IFsycHhdIC0gSGVpZ2h0IG9mIGluZGl2aWR1YWwgYmFycyBpbiB0aGUgaWNvbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGJhcnMgWzNdIC0gTnVtYmVyIG9mIGJhcnMgaW4gdGhlIGljb24uXG5AbWl4aW4gaGFtYnVyZ2VyKFxuICAkY29sb3I6ICRibGFjayxcbiAgJGNvbG9yLWhvdmVyOiAkZGFyay1ncmF5LFxuICAkd2lkdGg6IDIwcHgsXG4gICRoZWlnaHQ6IDE2cHgsXG4gICR3ZWlnaHQ6IDJweCxcbiAgJGJhcnM6IDNcbikge1xuICAvLyBib3gtc2hhZG93IENTUyBvdXRwdXRcbiAgJHNoYWRvdzogKCk7XG4gICRob3Zlci1zaGFkb3c6ICgpO1xuXG4gIC8vIFNwYWNpbmcgYmV0d2VlbiBiYXJzIGlzIGNhbGN1bGF0ZWQgYmFzZWQgb24gdGhlIHRvdGFsIGhlaWdodCBvZiB0aGUgaWNvbiBhbmQgdGhlIHdlaWdodCBvZiBlYWNoIGJhclxuICAkc3BhY2luZzogKCRoZWlnaHQgLSAoJHdlaWdodCAqICRiYXJzKSkgLyAoJGJhcnMgLSAxKTtcblxuICBAaWYgdW5pdCgkc3BhY2luZykgPT0gJ3B4JyB7XG4gICAgJHNwYWNpbmc6IGZsb29yKCRzcGFjaW5nKTtcbiAgfVxuXG4gIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggJGJhcnMge1xuICAgICRvZmZzZXQ6ICgkd2VpZ2h0ICsgJHNwYWNpbmcpICogKCRpIC0gMSk7XG4gICAgJHNoYWRvdzogYXBwZW5kKCRzaGFkb3csIDAgJG9mZnNldCAwICRjb2xvciwgY29tbWEpO1xuICB9XG5cbiAgLy8gSWNvbiBjb250YWluZXJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHdpZHRoOiAkd2lkdGg7XG4gIGhlaWdodDogJGhlaWdodDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gIC8vIEljb24gYmFyc1xuICAmOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuXG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAkd2VpZ2h0O1xuXG4gICAgYmFja2dyb3VuZDogJGNvbG9yO1xuICAgIGJveC1zaGFkb3c6ICRzaGFkb3c7XG5cbiAgICBjb250ZW50OiAnJztcbiAgfVxuXG4gIC8vIEhvdmVyIHN0YXRlXG4gIEBpZiAkY29sb3ItaG92ZXIge1xuICAgIC8vIEdlbmVyYXRlIENTU1xuICAgIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggJGJhcnMge1xuICAgICAgJG9mZnNldDogKCR3ZWlnaHQgKyAkc3BhY2luZykgKiAoJGkgLSAxKTtcbiAgICAgICRob3Zlci1zaGFkb3c6IGFwcGVuZCgkaG92ZXItc2hhZG93LCAwICRvZmZzZXQgMCAkY29sb3ItaG92ZXIsIGNvbW1hKTtcbiAgICB9XG5cbiAgICAmOmhvdmVyOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAkY29sb3ItaG92ZXI7XG4gICAgICBib3gtc2hhZG93OiAkaG92ZXItc2hhZG93O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBhIGRvd253YXJkLWZhY2luZyB0cmlhbmdsZSBhcyBhIGJhY2tncm91bmQgaW1hZ2UgdG8gYW4gZWxlbWVudC4gVGhlIGltYWdlIGlzIGZvcm1hdHRlZCBhcyBhbiBTVkcsIG1ha2luZyBpdCBlYXN5IHRvIGNoYW5nZSB0aGUgY29sb3IuIEJlY2F1c2UgSW50ZXJuZXQgRXhwbG9yZXIgZG9lc24ndCBzdXBwb3J0IGVuY29kZWQgU1ZHcyBhcyBiYWNrZ3JvdW5kIGltYWdlcywgYSBQTkcgZmFsbGJhY2sgaXMgYWxzbyBpbmNsdWRlZC5cbi8vLyBUaGVyZSBhcmUgdHdvIFBORyBmYWxsYmFja3M6IGEgYmxhY2sgdHJpYW5nbGUgYW5kIGEgd2hpdGUgdHJpYW5nbGUuIFRoZSBvbmUgdXNlZCBkZXBlbmRzIG9uIHRoZSBsaWdodG5lc3Mgb2YgdGhlIGlucHV0IGNvbG9yLlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYmxhY2tdIC0gQ29sb3IgdG8gdXNlIGZvciB0aGUgdHJpYW5nbGUuXG5AbWl4aW4gYmFja2dyb3VuZC10cmlhbmdsZSgkY29sb3I6ICRibGFjaykge1xuICAkcmdiOiAncmdiJTI4I3tyb3VuZChyZWQoJGNvbG9yKSl9LCAje3JvdW5kKGdyZWVuKCRjb2xvcikpfSwgI3tyb3VuZChibHVlKCRjb2xvcikpfSUyOSc7XG5cbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZlcnNpb249JzEuMScgd2lkdGg9JzMyJyBoZWlnaHQ9JzI0JyB2aWV3Qm94PScwIDAgMzIgMjQnPjxwb2x5Z29uIHBvaW50cz0nMCwwIDMyLDAgMTYsMjQnIHN0eWxlPSdmaWxsOiAjeyRyZ2J9Jz48L3BvbHlnb24+PC9zdmc+XCIpO1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6MFxcMCkge1xuICAgIEBpZiBsaWdodG5lc3MoJGNvbG9yKSA8IDYwJSB7XG4gICAgICAvLyBXaGl0ZSB0cmlhbmdsZVxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUNBQUFBQVlDQVlBQUFDYlUvODBBQUFBR1hSRldIUlRiMlowZDJGeVpRQkJaRzlpWlNCSmJXRm5aVkpsWVdSNWNjbGxQQUFBQUlwSlJFRlVlTnJFa2NrTmdEQU1CQmZSa0V0ME9iUkJCZHNHWFVEZ21RZks0WGhIMm04Y3pRQUF5MjdSM3RzdzRRZmUyeDh1T082b1lMYjZHbE9vcjNHRitzd1VSQU9tVUorUnd0RUpzOVd2VEdFWXhCWHFJMU1RQVpoQ2ZVUUtSekRNVmorVHdyQUlWNmp2U1VFa1lBcjFMU2tjeVRCYi9WK0tZZlg3eEFldXNxM3NMRHRHSDNrRUdBQ1BXSWZsTlpmaFJRQUFBQUJKUlU1RXJrSmdnZz09Jyk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIC8vIEJsYWNrIHRyaWFuZ2xlXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQ0FBQUFBWUNBWUFBQUNiVS84MEFBQUFHWFJGV0hSVGIyWjBkMkZ5WlFCQlpHOWlaU0JKYldGblpWSmxZV1I1Y2NsbFBBQUFBTUJKUkVGVWVOckVsbHNPaENBTVJWc3pDOUlselU3S0NtVkhUSnNvTVdZTVV0cHl2OUJnYnVYUUI1WlNkZ0JZWVk0eWNnQml2azhLWUZzUU1mTWlUVEJQNG8zblV6Q0t6T2FiTEpiTHkyL2czMWV2R2tBZ2luUjQvWmVnS0g1cVgzYkpDc2NBM3QweDNrZ081dFFGeWhoRmY1MHhScUZMYnlNVU5KUXpneWpHUy93Z0Nwdktxa1JCcHVXckU0VjlkKzFFNGRQVVhxSWcxMDdTUU9FLzJEUlF4TXdURHlnSUluVkRFVDlUM2xDb2ovNmovVkNtR2paT2wybEtwWjhBQXdEUVA3eklpbURHRlFBQUFBQkpSVTVFcmtKZ2dnPT0nKTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFwcGxpZXMgdGhlIG1pY3JvIGNsZWFyZml4IGhhY2sgcG9wdWxhcml6ZWQgYnkgTmljb2xhcyBHYWxsYWdoZXIuIEluY2x1ZGUgdGhpcyBtaXhpbiBvbiBhIGNvbnRhaW5lciBpZiBpdHMgY2hpbGRyZW4gYXJlIGFsbCBmbG9hdGVkLCB0byBnaXZlIHRoZSBjb250YWluZXIgYSBwcm9wZXIgaGVpZ2h0LlxuLy8vIFRoZSBjbGVhcmZpeCBpcyBhdWdtZW50ZWQgd2l0aCBzcGVjaWZpYyBzdHlsZXMgdG8gcHJldmVudCBib3JkZXJzIGluIGZsZXhib3ggZW52aXJvbm1lbnRzXG4vLy8gQGxpbmsgaHR0cDovL25pY29sYXNnYWxsYWdoZXIuY29tL21pY3JvLWNsZWFyZml4LWhhY2svIE1pY3JvIENsZWFyZml4IEhhY2tcbi8vLyBAbGluayBodHRwOi8vZGFuaXNhZGVzaWduZXIuY29tL2Jsb2cvZmxleGJveC1jbGVhci1maXgtcHNldWRvLWVsZW1lbnRzLyBGbGV4Ym94IGZpeFxuQG1peGluIGNsZWFyZml4IHtcbiAgJjo6YmVmb3JlLFxuICAmOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4LWJhc2lzOiAwO1xuICAgICAgb3JkZXI6IDE7XG4gICAgfVxuICB9XG5cbiAgJjo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG59XG5cbi8vLyBBZGRzIENTUyBmb3IgYSBcInF1YW50aXR5IHF1ZXJ5XCIgc2VsZWN0b3IgdGhhdCBhdXRvbWF0aWNhbGx5IHNpemVzIGVsZW1lbnRzIGJhc2VkIG9uIGhvdyBtYW55IHRoZXJlIGFyZSBpbnNpZGUgYSBjb250YWluZXIuXG4vLy8gQGxpbmsgaHR0cDovL2FsaXN0YXBhcnQuY29tL2FydGljbGUvcXVhbnRpdHktcXVlcmllcy1mb3ItY3NzIFF1YW50aXR5IFF1ZXJpZXMgZm9yIENTU1xuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRtYXggLSBNYXhpbXVtIG51bWJlciBvZiBpdGVtcyB0byBkZXRlY3QuIFRoZSBoaWdoZXIgdGhpcyBudW1iZXIgaXMsIHRoZSBtb3JlIENTUyB0aGF0J3MgcmVxdWlyZWQgdG8gY292ZXIgZWFjaCBudW1iZXIgb2YgaXRlbXMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZWxlbSBbbGldIC0gVGFnIHRvIHVzZSBmb3Igc2libGluZyBzZWxlY3RvcnMuXG5AbWl4aW4gYXV0by13aWR0aCgkbWF4LCAkZWxlbTogbGkpIHtcbiAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkbWF4IHtcbiAgICAmOm50aC1sYXN0LWNoaWxkKCN7JGl9KTpmaXJzdC1jaGlsZCxcbiAgICAmOm50aC1sYXN0LWNoaWxkKCN7JGl9KTpmaXJzdC1jaGlsZCB+ICN7JGVsZW19IHtcbiAgICAgIHdpZHRoOiBwZXJjZW50YWdlKDEgLyAkaSk7XG4gICAgfVxuICB9XG59XG5cbi8vLyBSZW1vdmVzIHRoZSBmb2N1cyByaW5nIGFyb3VuZCBhbiBlbGVtZW50IHdoZW4gYSBtb3VzZSBpbnB1dCBpcyBkZXRlY3RlZC5cbkBtaXhpbiBkaXNhYmxlLW1vdXNlLW91dGxpbmUge1xuICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gJiB7XG4gICAgb3V0bGluZTogMDtcbiAgfVxufVxuXG4vLy8gTWFrZXMgYW4gZWxlbWVudCB2aXN1YWxseSBoaWRkZW4sIGJ1dCBzdGlsbCBhY2Nlc3NpYmxlIHRvIGtleWJvYXJkcyBhbmQgYXNzaXN0aXZlIGRldmljZXMuXG4vLy8gQGxpbmsgaHR0cDovL3Nub29rLmNhL2FyY2hpdmVzL2h0bWxfYW5kX2Nzcy9oaWRpbmctY29udGVudC1mb3ItYWNjZXNzaWJpbGl0eSBIaWRpbmcgQ29udGVudCBmb3IgQWNjZXNzaWJpbGl0eVxuLy8vIEBsaW5rIGh0dHA6Ly9odWdvZ2lyYXVkZWwuY29tLzIwMTYvMTAvMTMvY3NzLWhpZGUtYW5kLXNlZWsvXG5AbWl4aW4gZWxlbWVudC1pbnZpc2libGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwwLDAsMCk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJvcmRlcjogMDtcbn1cblxuLy8vIFJldmVyc2VzIHRoZSBDU1Mgb3V0cHV0IGNyZWF0ZWQgYnkgdGhlIGBlbGVtZW50LWludmlzaWJsZSgpYCBtaXhpbi5cbkBtaXhpbiBlbGVtZW50LWludmlzaWJsZS1vZmYge1xuICBwb3NpdGlvbjogc3RhdGljICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IGF1dG87XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBjbGlwOiBhdXRvO1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xufVxuXG4vLy8gVmVydGljYWxseSBjZW50ZXJzIHRoZSBlbGVtZW50IGluc2lkZSBvZiBpdHMgZmlyc3Qgbm9uLXN0YXRpYyBwYXJlbnQsXG4vLy8gQGxpbmsgaHR0cDovL3d3dy5zaXRlcG9pbnQuY29tL2NlbnRlcmluZy13aXRoLXNhc3MvIENlbnRlcmluZyBXaXRoIFNhc3NcbkBtaXhpbiB2ZXJ0aWNhbC1jZW50ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG59XG5cbi8vLyBIb3Jpem9udGFsbHkgY2VudGVycyB0aGUgZWxlbWVudCBpbnNpZGUgb2YgaXRzIGZpcnN0IG5vbi1zdGF0aWMgcGFyZW50LFxuLy8vIEBsaW5rIGh0dHA6Ly93d3cuc2l0ZXBvaW50LmNvbS9jZW50ZXJpbmctd2l0aC1zYXNzLyBDZW50ZXJpbmcgV2l0aCBTYXNzXG5AbWl4aW4gaG9yaXpvbnRhbC1jZW50ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xufVxuXG4vLy8gQWJzb2x1dGVseSBjZW50ZXJzIHRoZSBlbGVtZW50IGluc2lkZSBvZiBpdHMgZmlyc3Qgbm9uLXN0YXRpYyBwYXJlbnQsXG4vLy8gQGxpbmsgaHR0cDovL3d3dy5zaXRlcG9pbnQuY29tL2NlbnRlcmluZy13aXRoLXNhc3MvIENlbnRlcmluZyBXaXRoIFNhc3NcbkBtaXhpbiBhYnNvbHV0ZS1jZW50ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xufVxuXG4vLy8gSXRlcmF0ZXMgdGhyb3VnaCBicmVha3BvaW50cyBkZWZpbmVkIGluIGAkYnJlYWtwb2ludC1jbGFzc2VzYCBhbmQgcHJpbnRzIHRoZSBDU1MgaW5zaWRlIHRoZSBtaXhpbiBhdCBlYWNoIGJyZWFrcG9pbnQncyBtZWRpYSBxdWVyeS4gVXNlIHRoaXMgd2l0aCB0aGUgZ3JpZCwgb3IgYW55IG90aGVyIGNvbXBvbmVudCB0aGF0IGhhcyByZXNwb25zaXZlIGNsYXNzZXMuXG4vLy9cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRzbWFsbCBbdHJ1ZV0gLSBJZiBgZmFsc2VgLCB0aGUgbWl4aW4gd2lsbCBza2lwIHRoZSBgc21hbGxgIGJyZWFrcG9pbnQuIFVzZSB0aGlzIHdpdGggY29tcG9uZW50cyB0aGF0IGRvbid0IHByZWZpeCBjbGFzc2VzIHdpdGggYHNtYWxsLWAsIG9ubHkgYG1lZGl1bS1gIGFuZCB1cC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRhdXRvLWluc2VydC1icmVha3BvaW50cyBbdHJ1ZV0gLSBJZiBgZmFsc2VgLCB0aGUgbWl4aW4gd2lsbCBpdGVyYXRlIG92ZXIgYnJlYWtwb2ludHMgd2l0aG91dCBkb2luZyB0aGUgbWVkaWEgcXVlcnkgaXRzZWxmLiBVc2VmdWwgZm9yIG1vcmUgY29tcGxleCBtZWRpYSBxdWVyeSBnZW5lcmF0aW9uIGFzIGluIHRoZSBtYXJnaW4gZ3JpZC5cbkBtaXhpbiAtemYtZWFjaC1icmVha3BvaW50KCRzbWFsbDogdHJ1ZSwgJGF1dG8taW5zZXJ0LWJyZWFrcG9pbnRzOiB0cnVlKSB7XG4gICRsaXN0OiAkYnJlYWtwb2ludC1jbGFzc2VzO1xuXG4gIEBpZiBub3QgJHNtYWxsIHtcbiAgICAkbGlzdDogc2wtcmVtb3ZlKCRsaXN0LCAkLXpmLXplcm8tYnJlYWtwb2ludCk7XG4gIH1cblxuICBAZWFjaCAkbmFtZSBpbiAkbGlzdCB7XG4gICAgJG9sZC16Zi1zaXplOiBudWxsO1xuICAgIEBpZiBnbG9iYWwtdmFyaWFibGUtZXhpc3RzKC16Zi1zaXplKSB7XG4gICAgICAkb2xkLXpmLXNpemU6ICQtemYtc2l6ZTtcbiAgICB9XG4gICAgJC16Zi1zaXplOiAkbmFtZSAhZ2xvYmFsO1xuXG4gICAgQGlmICRhdXRvLWluc2VydC1icmVha3BvaW50cyB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRuYW1lKSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG5cbiAgICAkLXpmLXNpemU6ICRvbGQtemYtc2l6ZSAhZ2xvYmFsO1xuICB9XG59XG5cbi8vLyBHZW5lcmF0ZSB0aGUgYEBjb250ZW50YCBwYXNzZWQgdG8gdGhlIG1peGluIHdpdGggYSB2YWx1ZSBgJC16Zi1icC12YWx1ZWAgcmVsYXRlZCB0byBhIGJyZWFrcG9pbnQsIGRlcGVuZGluZyBvbiB0aGUgYCRuYW1lYCBwYXJhbWV0ZXI6XG4vLy8gLSBGb3IgYSBzaW5nbGUgdmFsdWUsIGAkLXpmLWJwLXZhbHVlYCBpcyB0aGlzIHZhbHVlLlxuLy8vIC0gRm9yIGEgYnJlYWtwb2ludCBuYW1lLCBgJC16Zi1icC12YWx1ZWAgaXMgdGhlIGNvcnJlc3BvbmRpbmcgYnJlYWtwb2ludCB2YWx1ZSBpbiBgJG1hcGAuXG4vLy8gLSBGb3IgXCJhdXRvXCIsIGAkLXpmLWJwLXZhbHVlYCBpcyB0aGUgY29ycmVzcG9uZGluZyBicmVha3BvaW50IHZhbHVlIGluIGAkbWFwYCBhbmQgaXMgcGFzc2VkIHRvIGBAY29udGVudGAsIHdoaWNoIGlzIG1hZGUgcmVzcG9uc2l2ZSBmb3IgZWFjaCBicmVha3BvaW50IG9mIGAkbWFwYC5cbi8vLyBAcGFyYW0ge051bWJlcnxBcnJheXxLZXl3b3JkfSAkbmFtZSBbYXV0b10gLSBTaW5nbGUgdmFsdWUsIGJyZWFrcG9pbnQgbmFtZSwgb3IgbGlzdCBvZiBicmVha3BvaW50IG5hbWVzIHRvIHVzZS4gXCJhdXRvXCIgYnkgZGVmYXVsdC5cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRtYXAgLSBNYXAgb2YgYnJlYWtwb2ludHMgYW5kIHZhbHVlcyBvciBzaW5nbGUgdmFsdWUgdG8gdXNlLlxuQG1peGluIC16Zi1icmVha3BvaW50LXZhbHVlKFxuICAkbmFtZTogYXV0byxcbiAgJG1hcDogbnVsbFxuKSB7XG4gIEBpZiAkbmFtZSA9PSBhdXRvIGFuZCB0eXBlLW9mKCRtYXApID09ICdtYXAnIHtcbiAgICAvLyBcImF1dG9cIlxuICAgIEBlYWNoICRrLCAkdiBpbiAkbWFwIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGspIHtcbiAgICAgICAgQGluY2x1ZGUgLXpmLWJyZWFrcG9pbnQtdmFsdWUoJHYsICRtYXApIHtcbiAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgLy8gYnJlYWtwb2ludCBuYW1lXG4gICAgQGlmIHR5cGUtb2YoJG5hbWUpID09ICdzdHJpbmcnIHtcbiAgICAgICRuYW1lOiAtemYtZ2V0LWJwLXZhbCgkbWFwLCAkbmFtZSk7XG4gICAgfVxuXG4gICAgLy8gYnJlYWtwb2ludCB2YWx1ZVxuICAgICQtemYtYnAtdmFsdWU6ICRuYW1lICFnbG9iYWw7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBGb250IGNvbG9yIG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEZvbnQgY29sb3Igb2YgcGxhY2Vob2xkZXIgdGV4dCB3aXRoaW4gdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjogJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRm9udCBmYW1pbHkgb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgRm9udFxuJGlucHV0LWZvbnQtZmFtaWx5OiBpbmhlcml0ICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGlucHV0LWZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpICFkZWZhdWx0O1xuXG4vLy8gRm9udCB3ZWlnaHQgb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGlucHV0LWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBMaW5lIGhlaWdodCBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kaW5wdXQtbGluZS1oZWlnaHQ6ICRnbG9iYWwtbGluZWhlaWdodCAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGZvY3VzZWQgb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1iYWNrZ3JvdW5kLWZvY3VzOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGRpc2FibGVkIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtYmFja2dyb3VuZC1kaXNhYmxlZDogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgYXJvdW5kIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIEJvcmRlclxuJGlucHV0LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBhcm91bmQgZm9jdXNlZCB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWJvcmRlci1mb2N1czogMXB4IHNvbGlkICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtcGFkZGluZzogJGZvcm0tc3BhY2luZyAvIDIgIWRlZmF1bHQ7XG5cbi8vLyBCb3ggc2hhZG93IGluc2lkZSB0ZXh0IGlucHV0cyB3aGVuIG5vdCBmb2N1c2VkLlxuLy8vIEB0eXBlIFNoYWRvd1xuJGlucHV0LXNoYWRvdzogaW5zZXQgMCAxcHggMnB4IHJnYmEoJGJsYWNrLCAwLjEpICFkZWZhdWx0O1xuXG4vLy8gQm94IHNoYWRvdyBvdXRzaWRlIHRleHQgaW5wdXRzIHdoZW4gZm9jdXNlZC5cbi8vLyBAdHlwZSBTaGFkb3dcbiRpbnB1dC1zaGFkb3ctZm9jdXM6IDAgMCA1cHggJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQ3Vyc29yIHRvIHVzZSB3aGVuIGhvdmVyaW5nIG92ZXIgYSBkaXNhYmxlZCB0ZXh0IGlucHV0LlxuLy8vIEB0eXBlIEN1cnNvclxuJGlucHV0LWN1cnNvci1kaXNhYmxlZDogbm90LWFsbG93ZWQgIWRlZmF1bHQ7XG5cbi8vLyBQcm9wZXJ0aWVzIHRvIHRyYW5zaXRpb24gb24gdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgVHJhbnNpdGlvblxuJGlucHV0LXRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG4vLy8gRW5hYmxlcyB0aGUgdXAvZG93biBidXR0b25zIHRoYXQgQ2hyb21lIGFuZCBGaXJlZm94IGFkZCB0byBgPGlucHV0IHR5cGU9J251bWJlcic+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kaW5wdXQtbnVtYmVyLXNwaW5uZXJzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gUmFkaXVzIGZvciB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBCb3JkZXJcbiRpbnB1dC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIHJhZGl1cyBmb3IgZm9ybSBidXR0b25zLCBkZWZhdWx0ZWQgdG8gZ2xvYmFsLXJhZGl1cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRmb3JtLWJ1dHRvbi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG5AbWl4aW4gZm9ybS1lbGVtZW50IHtcbiAgJGhlaWdodDogKCRpbnB1dC1mb250LXNpemUgKiB1bml0bGVzcy1jYWxjKCRpbnB1dC1saW5lLWhlaWdodCkpICsgKGdldC1zaWRlKCRpbnB1dC1wYWRkaW5nLCAndG9wJykgKyBnZXQtc2lkZSgkaW5wdXQtcGFkZGluZywgJ2JvdHRvbScpKSAtIHJlbS1jYWxjKDEpO1xuXG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAkaGVpZ2h0O1xuICBtYXJnaW46IDAgMCAkZm9ybS1zcGFjaW5nO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZztcblxuICBib3JkZXI6ICRpbnB1dC1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRpbnB1dC1yYWRpdXM7XG4gIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iYWNrZ3JvdW5kO1xuICBib3gtc2hhZG93OiAkaW5wdXQtc2hhZG93O1xuXG4gIGZvbnQtZmFtaWx5OiAkaW5wdXQtZm9udC1mYW1pbHk7XG4gIGZvbnQtc2l6ZTogJGlucHV0LWZvbnQtc2l6ZTtcbiAgZm9udC13ZWlnaHQ6ICRpbnB1dC1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRpbnB1dC1jb2xvcjtcblxuICBAaWYgaGFzLXZhbHVlKCRpbnB1dC10cmFuc2l0aW9uKSB7XG4gICAgdHJhbnNpdGlvbjogJGlucHV0LXRyYW5zaXRpb247XG4gIH1cblxuICAvLyBGb2N1cyBzdGF0ZVxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJvcmRlcjogJGlucHV0LWJvcmRlci1mb2N1cztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmFja2dyb3VuZC1mb2N1cztcbiAgICBib3gtc2hhZG93OiAkaW5wdXQtc2hhZG93LWZvY3VzO1xuXG4gICAgQGlmIGhhcy12YWx1ZSgkaW5wdXQtdHJhbnNpdGlvbikge1xuICAgICAgdHJhbnNpdGlvbjogJGlucHV0LXRyYW5zaXRpb247XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tdGV4dCB7XG4gIC8vIFRleHQgaW5wdXRzXG4gICN7dGV4dC1pbnB1dHMoKX0sXG4gIHRleHRhcmVhIHtcbiAgICBAaW5jbHVkZSBmb3JtLWVsZW1lbnQ7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgfVxuXG4gIC8vIFRleHQgYXJlYXNcbiAgdGV4dGFyZWEge1xuICAgIG1heC13aWR0aDogMTAwJTtcblxuICAgICZbcm93c10ge1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgIH1cbiAgfVxuXG4gIGlucHV0LFxuICB0ZXh0YXJlYSB7XG4gICAgLy8gRGlzYWJsZWQvcmVhZG9ubHkgc3RhdGVcbiAgICAmOmRpc2FibGVkLFxuICAgICZbcmVhZG9ubHldIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iYWNrZ3JvdW5kLWRpc2FibGVkO1xuICAgICAgY3Vyc29yOiAkaW5wdXQtY3Vyc29yLWRpc2FibGVkO1xuICAgIH1cbiAgfVxuXG4gIC8vIFJlc2V0IHN0eWxlcyBvbiBidXR0b24tbGlrZSBpbnB1dHNcbiAgW3R5cGU9J3N1Ym1pdCddLFxuICBbdHlwZT0nYnV0dG9uJ10ge1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYm9yZGVyLXJhZGl1czogJGZvcm0tYnV0dG9uLXJhZGl1cztcbiAgfVxuXG4gIC8vIFJlc2V0IE5vcm1hbGl6ZSBzZXR0aW5nIGNvbnRlbnQtYm94IHRvIHNlYXJjaCBlbGVtZW50c1xuICBpbnB1dFt0eXBlPSdzZWFyY2gnXSB7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIH1cblxuICAvLyBOdW1iZXIgaW5wdXQgc3R5bGVzXG4gIFt0eXBlPSdudW1iZXInXSB7XG4gICAgQGlmIG5vdCAkaW5wdXQtbnVtYmVyLXNwaW5uZXJzIHtcbiAgICAgIC1tb3otYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXZlbmRvci1wcmVmaXhlc1xuXG4gICAgICAmOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuICAgICAgJjo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby12ZW5kb3ItcHJlZml4ZXNcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFBsYWNlaG9sZGVyIHRleHRcbiAgOjpwbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1jaGVja2JveCB7XG4gIFt0eXBlPSdmaWxlJ10sXG4gIFt0eXBlPSdjaGVja2JveCddLFxuICBbdHlwZT0ncmFkaW8nXSB7XG4gICAgbWFyZ2luOiAwIDAgJGZvcm0tc3BhY2luZztcbiAgfVxuXG4gIC8vIFN0eWxlcyBmb3IgaW5wdXQvbGFiZWwgc2libGluZ3NcbiAgW3R5cGU9J2NoZWNrYm94J10gKyBsYWJlbCxcbiAgW3R5cGU9J3JhZGlvJ10gKyBsYWJlbCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcblxuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRmb3JtLXNwYWNpbmcgKiAwLjU7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRmb3JtLXNwYWNpbmc7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICZbZm9yXSB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuICB9XG5cbiAgLy8gU3R5bGVzIGZvciBpbnB1dHMgaW5zaWRlIGxhYmVsc1xuICBsYWJlbCA+IFt0eXBlPSdjaGVja2JveCddLFxuICBsYWJlbCA+IFt0eXBlPSdyYWRpbyddIHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJGZvcm0tc3BhY2luZyAqIDAuNTtcbiAgfVxuXG4gIC8vIE5vcm1hbGl6ZSBmaWxlIGlucHV0IHdpZHRoXG4gIFt0eXBlPSdmaWxlJ10ge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmdW5jdGlvbnNcbi8vLy9cblxuJGdsb2JhbC1mb250LXNpemU6IDEwMCUgIWRlZmF1bHQ7XG5cbi8vLyBSZW1vdmVzIHRoZSB1bml0IChlLmcuIHB4LCBlbSwgcmVtKSBmcm9tIGEgdmFsdWUsIHJldHVybmluZyB0aGUgbnVtYmVyIG9ubHkuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJG51bSAtIE51bWJlciB0byBzdHJpcCB1bml0IGZyb20uXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBUaGUgc2FtZSBudW1iZXIsIHNhbnMgdW5pdC5cbkBmdW5jdGlvbiBzdHJpcC11bml0KCRudW0pIHtcbiAgQHJldHVybiAkbnVtIC8gKCRudW0gKiAwICsgMSk7XG59XG5cbi8vLyBDb252ZXJ0cyBvbmUgb3IgbW9yZSBwaXhlbCB2YWx1ZXMgaW50byBtYXRjaGluZyByZW0gdmFsdWVzLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TGlzdH0gJHZhbHVlcyAtIE9uZSBvciBtb3JlIHZhbHVlcyB0byBjb252ZXJ0LiBCZSBzdXJlIHRvIHNlcGFyYXRlIHRoZW0gd2l0aCBzcGFjZXMgYW5kIG5vdCBjb21tYXMuIElmIHlvdSBuZWVkIHRvIGNvbnZlcnQgYSBjb21tYS1zZXBhcmF0ZWQgbGlzdCwgd3JhcCB0aGUgbGlzdCBpbiBwYXJlbnRoZXNlcy5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGJhc2UgW251bGxdIC0gVGhlIGJhc2UgdmFsdWUgdG8gdXNlIHdoZW4gY2FsY3VsYXRpbmcgdGhlIGByZW1gLiBJZiB5b3UncmUgdXNpbmcgRm91bmRhdGlvbiBvdXQgb2YgdGhlIGJveCwgdGhpcyBpcyAxNnB4LiBJZiB0aGlzIHBhcmFtZXRlciBpcyBgbnVsbGAsIHRoZSBmdW5jdGlvbiB3aWxsIHJlZmVyZW5jZSB0aGUgYCRnbG9iYWwtZm9udC1zaXplYCB2YXJpYWJsZSBhcyB0aGUgYmFzZS5cbi8vL1xuLy8vIEByZXR1cm5zIHtMaXN0fSBBIGxpc3Qgb2YgY29udmVydGVkIHZhbHVlcy5cbkBmdW5jdGlvbiByZW0tY2FsYygkdmFsdWVzLCAkYmFzZTogbnVsbCkge1xuICAkcmVtLXZhbHVlczogKCk7XG4gICRjb3VudDogbGVuZ3RoKCR2YWx1ZXMpO1xuXG4gIC8vIElmIG5vIGJhc2UgaXMgZGVmaW5lZCwgZGVmZXIgdG8gdGhlIGdsb2JhbCBmb250IHNpemVcbiAgQGlmICRiYXNlID09IG51bGwge1xuICAgICRiYXNlOiAkZ2xvYmFsLWZvbnQtc2l6ZTtcbiAgfVxuXG4gIC8vIElmIHRoZSBiYXNlIGZvbnQgc2l6ZSBpcyBhICUsIHRoZW4gbXVsdGlwbHkgaXQgYnkgMTZweFxuICAvLyBUaGlzIGlzIGJlY2F1c2UgMTAwJSBmb250IHNpemUgPSAxNnB4IGluIG1vc3QgYWxsIGJyb3dzZXJzXG4gIEBpZiB1bml0KCRiYXNlKSA9PSAnJScge1xuICAgICRiYXNlOiAoJGJhc2UgLyAxMDAlKSAqIDE2cHg7XG4gIH1cblxuICAvLyBVc2luZyByZW0gYXMgYmFzZSBhbGxvd3MgY29ycmVjdCBzY2FsaW5nXG4gIEBpZiB1bml0KCRiYXNlKSA9PSAncmVtJyB7XG4gICAgJGJhc2U6IHN0cmlwLXVuaXQoJGJhc2UpICogMTZweDtcbiAgfVxuXG4gIEBpZiAkY291bnQgPT0gMSB7XG4gICAgQHJldHVybiAtemYtdG8tcmVtKCR2YWx1ZXMsICRiYXNlKTtcbiAgfVxuXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGNvdW50IHtcbiAgICAkcmVtLXZhbHVlczogYXBwZW5kKCRyZW0tdmFsdWVzLCAtemYtdG8tcmVtKG50aCgkdmFsdWVzLCAkaSksICRiYXNlKSk7XG4gIH1cblxuICBAcmV0dXJuICRyZW0tdmFsdWVzO1xufVxuXG4vLyBDb252ZXJ0cyBhIHVuaXRsZXNzLCBwaXhlbCwgb3IgcmVtIHZhbHVlIHRvIGVtLCBmb3IgdXNlIGluIGJyZWFrcG9pbnRzLlxuQGZ1bmN0aW9uIC16Zi1icC10by1lbSgkdmFsdWUpIHtcbiAgLy8gUGl4ZWwgYW5kIHVuaXRsZXNzIHZhbHVlcyBhcmUgY29udmVydGVkIHRvIHJlbXNcbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAncHgnIG9yIHVuaXRsZXNzKCR2YWx1ZSkge1xuICAgICR2YWx1ZTogcmVtLWNhbGMoJHZhbHVlLCAkYmFzZTogMTZweCk7XG4gIH1cblxuICAvLyBUaGVuIHRoZSB2YWx1ZSBpcyBjb252ZXJ0ZWQgdG8gZW1zXG4gIEByZXR1cm4gc3RyaXAtdW5pdCgkdmFsdWUpICogMWVtO1xufVxuXG4vLy8gQ29udmVydHMgYSBwaXhlbCB2YWx1ZSB0byBtYXRjaGluZyByZW0gdmFsdWUuICpBbnkqIHZhbHVlIHBhc3NlZCwgcmVnYXJkbGVzcyBvZiB1bml0LCBpcyBhc3N1bWVkIHRvIGJlIGEgcGl4ZWwgdmFsdWUuIEJ5IGRlZmF1bHQsIHRoZSBiYXNlIHBpeGVsIHZhbHVlIHVzZWQgdG8gY2FsY3VsYXRlIHRoZSByZW0gdmFsdWUgaXMgdGFrZW4gZnJvbSB0aGUgYCRnbG9iYWwtZm9udC1zaXplYCB2YXJpYWJsZS5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkdmFsdWUgLSBQaXhlbCB2YWx1ZSB0byBjb252ZXJ0LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFzZSBbbnVsbF0gLSBCYXNlIGZvciBwaXhlbCBjb252ZXJzaW9uLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gQSBudW1iZXIgaW4gcmVtcywgY2FsY3VsYXRlZCBiYXNlZCBvbiB0aGUgZ2l2ZW4gdmFsdWUgYW5kIHRoZSBiYXNlIHBpeGVsIHZhbHVlLiByZW0gdmFsdWVzIGFyZSBwYXNzZWQgdGhyb3VnaCBhcyBpcy5cbkBmdW5jdGlvbiAtemYtdG8tcmVtKCR2YWx1ZSwgJGJhc2U6IG51bGwpIHtcbiAgLy8gQ2hlY2sgaWYgdGhlIHZhbHVlIGlzIGEgbnVtYmVyXG4gIEBpZiB0eXBlLW9mKCR2YWx1ZSkgIT0gJ251bWJlcicge1xuICAgIEB3YXJuIGluc3BlY3QoJHZhbHVlKSArICcgd2FzIHBhc3NlZCB0byByZW0tY2FsYygpLCB3aGljaCBpcyBub3QgYSBudW1iZXIuJztcbiAgICBAcmV0dXJuICR2YWx1ZTtcbiAgfVxuXG4gIC8vIFRyYW5zZm9ybSBlbSBpbnRvIHJlbSBpZiBzb21lb25lIGhhbmRzIG92ZXIgJ2VtJ3NcbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAnZW0nIHtcbiAgICAkdmFsdWU6IHN0cmlwLXVuaXQoJHZhbHVlKSAqIDFyZW07XG4gIH1cblxuICAvLyBDYWxjdWxhdGUgcmVtIGlmIHVuaXRzIGZvciAkdmFsdWUgaXMgbm90IHJlbSBvciBlbVxuICBAaWYgdW5pdCgkdmFsdWUpICE9ICdyZW0nIHtcbiAgICAkdmFsdWU6IHN0cmlwLXVuaXQoJHZhbHVlKSAvIHN0cmlwLXVuaXQoJGJhc2UpICogMXJlbTtcbiAgfVxuXG4gIC8vIFR1cm4gMHJlbSBpbnRvIDBcbiAgQGlmICR2YWx1ZSA9PSAwcmVtIHtcbiAgICAkdmFsdWU6IDA7XG4gIH1cblxuICBAcmV0dXJuICR2YWx1ZTtcbn1cblxuLy8vIENvbnZlcnRzIGEgcGl4ZWwsIHBlcmNlbnRhZ2UsIHJlbSBvciBlbSB2YWx1ZSB0byBhIHVuaXRsZXNzIHZhbHVlIGJhc2VkIG9uIGEgZ2l2ZW4gZm9udCBzaXplLiBJZGVhbCBmb3Igd29ya2luZyBvdXQgdW5pdGxlc3MgbGluZSBoZWlnaHRzLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR2YWx1ZSAtIFZhbHVlIHRvIGNvbnZlcnQgdG8gYSB1bml0bGVzcyBsaW5lIGhlaWdodFxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFzZSAtIFRoZSBmb250IHNpemUgdG8gdXNlIHRvIHdvcmsgb3V0IHRoZSBsaW5lIGhlaWdodCAtIGRlZmF1bHRzIHRvICRnbG9iYWwtZm9udC1zaXplXG4vLy9cbi8vLyBAcmV0dXJuIHtOdW1iZXJ9IC0gVW5pdGxlc3MgbnVtYmVyXG5AZnVuY3Rpb24gdW5pdGxlc3MtY2FsYygkdmFsdWUsICRiYXNlOiBudWxsKSB7XG5cbiAgLy8gSWYgbm8gYmFzZSBpcyBkZWZpbmVkLCBkZWZlciB0byB0aGUgZ2xvYmFsIGZvbnQgc2l6ZVxuICBAaWYgJGJhc2UgPT0gbnVsbCB7XG4gICAgJGJhc2U6ICRnbG9iYWwtZm9udC1zaXplO1xuICB9XG5cbiAgLy8gRmlyc3QsIGxldHMgY29udmVydCBvdXIgJGJhc2UgdG8gcGl4ZWxzXG5cbiAgLy8gSWYgdGhlIGJhc2UgZm9udCBzaXplIGlzIGEgJSwgdGhlbiBtdWx0aXBseSBpdCBieSAxNnB4XG4gIEBpZiB1bml0KCRiYXNlKSA9PSAnJScge1xuICAgICRiYXNlOiAoJGJhc2UgLyAxMDAlKSAqIDE2cHg7XG4gIH1cblxuICBAaWYgdW5pdCgkYmFzZSkgPT0gJ3JlbScge1xuICAgICRiYXNlOiBzdHJpcC11bml0KCRiYXNlKSAqIDE2cHg7XG4gIH1cblxuICBAaWYgdW5pdCgkYmFzZSkgPT0gJ2VtJyB7XG4gICAgJGJhc2U6IHN0cmlwLXVuaXQoJGJhc2UpICogMTZweDtcbiAgfVxuXG4gIC8vIE5vdyBsZXQncyBjb252ZXJ0IG91ciB2YWx1ZSB0byBwaXhlbHMgdG9vXG4gIEBpZiB1bml0KCR2YWx1ZSkgPT0gJyUnIHtcbiAgICAkdmFsdWU6ICgkdmFsdWUgLyAxMDAlKSAqICRiYXNlO1xuICB9XG5cbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAncmVtJyB7XG4gICAgJHZhbHVlOiBzdHJpcC11bml0KCR2YWx1ZSkgKiAkYmFzZTtcbiAgfVxuXG4gIEBpZiB1bml0KCR2YWx1ZSkgPT0gJ2VtJyB7XG4gICAgJHZhbHVlOiBzdHJpcC11bml0KCR2YWx1ZSkgKiAkYmFzZTtcbiAgfVxuXG4gIC8vICdweCdcbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAncHgnIHtcbiAgICBAcmV0dXJuIHN0cmlwLXVuaXQoJHZhbHVlKSAvIHN0cmlwLXVuaXQoJGJhc2UpO1xuICB9XG5cbiAgLy8gYXNzdW1lIHRoYXQgbGluZS1oZWlnaHRzIGdyZWF0ZXIgdGhhbiAxMCBhcmUgbWVhbnQgdG8gYmUgYWJzb2x1dGUgaW4gJ3B4J1xuICBAaWYgdW5pdGxlc3MoJHZhbHVlKSBhbmQgKCR2YWx1ZSA+IDEwKSB7XG4gICAgQHJldHVybiAkdmFsdWUgLyBzdHJpcC11bml0KCRiYXNlKTtcbiAgfVxuXG4gIEByZXR1cm4gJHZhbHVlO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuLy8vIENvbG9yIGZvciBmb3JtIGxhYmVscy5cbi8vLyBAdHlwZSBDb2xvclxuJGZvcm0tbGFiZWwtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBmb3IgZm9ybSBsYWJlbHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZm9ybS1sYWJlbC1mb250LXNpemU6IHJlbS1jYWxjKDE0KSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IGZvciBmb3JtIGxhYmVscy5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kZm9ybS1sYWJlbC1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gTGluZSBoZWlnaHQgZm9yIGZvcm0gbGFiZWxzLiBUaGUgaGlnaGVyIHRoZSBudW1iZXIsIHRoZSBtb3JlIHNwYWNlIGJldHdlZW4gdGhlIGxhYmVsIGFuZCBpdHMgaW5wdXQgZmllbGQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZm9ybS1sYWJlbC1saW5lLWhlaWdodDogMS44ICFkZWZhdWx0O1xuXG5AbWl4aW4gZm9ybS1sYWJlbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDA7XG5cbiAgZm9udC1zaXplOiAkZm9ybS1sYWJlbC1mb250LXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkZm9ybS1sYWJlbC1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRmb3JtLWxhYmVsLWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGZvcm0tbGFiZWwtY29sb3I7XG59XG5cbkBtaXhpbiBmb3JtLWxhYmVsLW1pZGRsZSB7XG4gICRpbnB1dC1ib3JkZXItd2lkdGg6IGdldC1ib3JkZXItdmFsdWUoJGlucHV0LWJvcmRlciwgd2lkdGgpO1xuXG4gIG1hcmdpbjogMCAwICRmb3JtLXNwYWNpbmc7XG4gIHBhZGRpbmc6ICgkZm9ybS1zcGFjaW5nIC8gMiArIHJlbS1jYWxjKCRpbnB1dC1ib3JkZXItd2lkdGgpKSAwO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLWxhYmVsIHtcbiAgbGFiZWwge1xuICAgIEBpbmNsdWRlIGZvcm0tbGFiZWw7XG5cbiAgICAmLm1pZGRsZSB7XG4gICAgICBAaW5jbHVkZSBmb3JtLWxhYmVsLW1pZGRsZTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciBoZWxwIHRleHQuXG4vLy8gQHR5cGUgQ29sb3JcbiRoZWxwdGV4dC1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgZm9yIGhlbHAgdGV4dC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRoZWxwdGV4dC1mb250LXNpemU6IHJlbS1jYWxjKDEzKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBzdHlsZSBmb3IgaGVscCB0ZXh0LlxuLy8vIEB0eXBlIEtleXdvcmRcbiRoZWxwdGV4dC1mb250LXN0eWxlOiBpdGFsaWMgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0taGVscHRleHQge1xuICAuaGVscC10ZXh0IHtcbiAgICAkbWFyZ2luLXRvcDogKCRmb3JtLXNwYWNpbmcgKiAwLjUpICogLTE7XG5cbiAgICBtYXJnaW4tdG9wOiAkbWFyZ2luLXRvcDtcbiAgICBmb250LXNpemU6ICRoZWxwdGV4dC1mb250LXNpemU7XG4gICAgZm9udC1zdHlsZTogJGhlbHB0ZXh0LWZvbnQtc3R5bGU7XG4gICAgY29sb3I6ICRoZWxwdGV4dC1jb2xvcjtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuLy8vIENvbG9yIG9mIGxhYmVscyBwcmVmaXhlZCB0byBhbiBpbnB1dC5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LXByZWZpeC1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBsYWJlbHMgcHJlZml4ZWQgdG8gYW4gaW5wdXQuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1wcmVmaXgtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgYXJvdW5kIGxhYmVscyBwcmVmaXhlZCB0byBhbiBpbnB1dC5cbi8vLyBAdHlwZSBCb3JkZXJcbiRpbnB1dC1wcmVmaXgtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gTGVmdC9yaWdodCBwYWRkaW5nIG9mIGFuIHByZS9wb3N0Zml4ZWQgaW5wdXQgbGFiZWxcbiRpbnB1dC1wcmVmaXgtcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1wcmVwb3N0Zml4IHtcbiAgJGhlaWdodDogKCRpbnB1dC1mb250LXNpemUgKiAkaW5wdXQtbGluZS1oZWlnaHQpICsgKGdldC1zaWRlKCRpbnB1dC1wYWRkaW5nLCAndG9wJykgKyBnZXQtc2lkZSgkaW5wdXQtcGFkZGluZywgJ2JvdHRvbScpKSAtIHJlbS1jYWxjKDEpO1xuXG4gIC5pbnB1dC1ncm91cCB7XG4gICAgZGlzcGxheTogaWYoJGdsb2JhbC1mbGV4Ym94LCBmbGV4LCB0YWJsZSk7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogJGZvcm0tc3BhY2luZztcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgfVxuXG4gICAgPiA6Zmlyc3QtY2hpbGQge1xuICAgICAgJiwgJi5pbnB1dC1ncm91cC1idXR0b24gPiAqIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBydGwsIDAgJGlucHV0LXJhZGl1cyAkaW5wdXQtcmFkaXVzIDAsICRpbnB1dC1yYWRpdXMgMCAwICRpbnB1dC1yYWRpdXMpO1xuICAgICAgfVxuICAgIH1cblxuICAgID4gOmxhc3QtY2hpbGQge1xuICAgICAgJiwgJi5pbnB1dC1ncm91cC1idXR0b24gPiAqIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBydGwsICRpbnB1dC1yYWRpdXMgMCAwICRpbnB1dC1yYWRpdXMsIDAgJGlucHV0LXJhZGl1cyAkaW5wdXQtcmFkaXVzIDApO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICVpbnB1dC1ncm91cC1jaGlsZCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgICBAaWYgbm90ICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG4gIH1cblxuICAuaW5wdXQtZ3JvdXAtbGFiZWwge1xuICAgIEBleHRlbmQgJWlucHV0LWdyb3VwLWNoaWxkO1xuICAgIHBhZGRpbmc6IDAgJGlucHV0LXByZWZpeC1wYWRkaW5nO1xuICAgIGJvcmRlcjogJGlucHV0LXByZWZpeC1ib3JkZXI7XG4gICAgYmFja2dyb3VuZDogJGlucHV0LXByZWZpeC1iYWNrZ3JvdW5kO1xuXG4gICAgY29sb3I6ICRpbnB1dC1wcmVmaXgtY29sb3I7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHdpZHRoOiAxJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG5cbiAgICBAaWYgaGFzLXZhbHVlKCRpbnB1dC1wcmVmaXgtYm9yZGVyKSB7XG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLSN7JGdsb2JhbC1yaWdodH06IDA7XG4gICAgICB9XG5cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci0jeyRnbG9iYWwtbGVmdH06IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmlucHV0LWdyb3VwLWZpZWxkIHtcbiAgICBAZXh0ZW5kICVpbnB1dC1ncm91cC1jaGlsZDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4OiAxIDEgMHB4OyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIHplcm8tdW5pdFxuICAgICAgbWluLXdpZHRoOiAwO1xuICAgIH1cbiAgfVxuXG4gIC5pbnB1dC1ncm91cC1idXR0b24ge1xuICAgIEBleHRlbmQgJWlucHV0LWdyb3VwLWNoaWxkO1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICB3aWR0aDogMSU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuXG4gICAgYSxcbiAgICBpbnB1dCxcbiAgICBidXR0b24sXG4gICAgbGFiZWwge1xuICAgICAgQGV4dGVuZCAlaW5wdXQtZ3JvdXAtY2hpbGQ7XG5cbiAgICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIGhlaWdodDogJGhlaWdodDtcbiAgICAgIH1cbiAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICBmb250LXNpemU6ICRpbnB1dC1mb250LXNpemU7XG4gICAgfVxuICB9XG5cbiAgLy8gU3BlY2lmaWNpdHkgYnVtcCBuZWVkZWQgdG8gcHJldmVudCBvdmVycmlkZSBieSBidXR0b25zXG4gIEBpZiBub3QgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAuaW5wdXQtZ3JvdXAge1xuICAgICAgLmlucHV0LWdyb3VwLWJ1dHRvbiB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgYXJvdW5kIGN1c3RvbSBmaWVsZHNldHMuXG4vLy8gQHR5cGUgQm9yZGVyXG4kZmllbGRzZXQtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGluc2lkZSBjdXN0b20gZmllbGRzZXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGZpZWxkc2V0LXBhZGRpbmc6IHJlbS1jYWxjKDIwKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbWFyZ2luIGFyb3VuZCBjdXN0b20gZmllbGRzZXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGZpZWxkc2V0LW1hcmdpbjogcmVtLWNhbGMoMTggMCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgYmV0d2VlbiB0aGUgbGVnZW5kIHRleHQgYW5kIGZpZWxkc2V0IGJvcmRlci5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsZWdlbmQtcGFkZGluZzogcmVtLWNhbGMoMCAzKSAhZGVmYXVsdDtcblxuQG1peGluIGZpZWxkc2V0IHtcbiAgbWFyZ2luOiAkZmllbGRzZXQtbWFyZ2luO1xuICBwYWRkaW5nOiAkZmllbGRzZXQtcGFkZGluZztcbiAgYm9yZGVyOiAkZmllbGRzZXQtYm9yZGVyO1xuXG4gIGxlZ2VuZCB7XG4gICAgLy8gQ292ZXJzIHVwIHRoZSBmaWVsZHNldCdzIGJvcmRlciB0byBjcmVhdGUgYXJ0aWZpY2lhbCBwYWRkaW5nXG4gICAgbWFyZ2luOiAwO1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IHJlbS1jYWxjKC0zKTtcbiAgICBwYWRkaW5nOiAkbGVnZW5kLXBhZGRpbmc7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1maWVsZHNldCB7XG4gIGZpZWxkc2V0IHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXI6IDA7XG4gIH1cblxuICBsZWdlbmQge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAkZm9ybS1zcGFjaW5nICogMC41O1xuICB9XG5cbiAgLmZpZWxkc2V0IHtcbiAgICBAaW5jbHVkZSBmaWVsZHNldDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuLy8vIEJhY2tncm91bmQgY29sb3IgZm9yIHNlbGVjdCBtZW51cy5cbi8vLyBAdHlwZSBDb2xvclxuJHNlbGVjdC1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiB0aGUgZHJvcGRvd24gdHJpYW5nbGUgaW5zaWRlIHNlbGVjdCBtZW51cy4gU2V0IHRvIGB0cmFuc3BhcmVudGAgdG8gcmVtb3ZlIGl0IGVudGlyZWx5LlxuLy8vIEB0eXBlIENvbG9yXG4kc2VsZWN0LXRyaWFuZ2xlLWNvbG9yOiAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCByYWRpdXMgZm9yIHNlbGVjdCBtZW51cy5cbi8vLyBAdHlwZSBDb2xvclxuJHNlbGVjdC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG5AbWl4aW4gZm9ybS1zZWxlY3Qge1xuICAkaGVpZ2h0OiAoJGlucHV0LWZvbnQtc2l6ZSAqIHVuaXRsZXNzLWNhbGMoJGlucHV0LWxpbmUtaGVpZ2h0KSkgKyAoZ2V0LXNpZGUoJGlucHV0LXBhZGRpbmcsICd0b3AnKSArIGdldC1zaWRlKCRpbnB1dC1wYWRkaW5nLCAnYm90dG9tJykpIC0gcmVtLWNhbGMoMSk7XG5cbiAgaGVpZ2h0OiAkaGVpZ2h0O1xuICBtYXJnaW46IDAgMCAkZm9ybS1zcGFjaW5nO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZztcblxuICBhcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXI6ICRpbnB1dC1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRzZWxlY3QtcmFkaXVzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2VsZWN0LWJhY2tncm91bmQ7XG5cbiAgZm9udC1mYW1pbHk6ICRpbnB1dC1mb250LWZhbWlseTtcbiAgZm9udC1zaXplOiAkaW5wdXQtZm9udC1zaXplO1xuICBmb250LXdlaWdodDogJGlucHV0LWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGlucHV0LWNvbG9yO1xuXG4gIEBpZiAkc2VsZWN0LXRyaWFuZ2xlLWNvbG9yICE9IHRyYW5zcGFyZW50IHtcbiAgICBAaW5jbHVkZSBiYWNrZ3JvdW5kLXRyaWFuZ2xlKCRzZWxlY3QtdHJpYW5nbGUtY29sb3IpO1xuICAgIGJhY2tncm91bmQtb3JpZ2luOiBjb250ZW50LWJveDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAkZ2xvYmFsLXJpZ2h0ICgtJGZvcm0tc3BhY2luZykgY2VudGVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiA5cHggNnB4O1xuXG4gICAgcGFkZGluZy0jeyRnbG9iYWwtcmlnaHR9OiAoJGZvcm0tc3BhY2luZyAqIDEuNSk7XG4gIH1cblxuICBAaWYgaGFzLXZhbHVlKCRpbnB1dC10cmFuc2l0aW9uKSB7XG4gICAgdHJhbnNpdGlvbjogJGlucHV0LXRyYW5zaXRpb247XG4gIH1cblxuICAvLyBGb2N1cyBzdGF0ZVxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJvcmRlcjogJGlucHV0LWJvcmRlci1mb2N1cztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmFja2dyb3VuZC1mb2N1cztcbiAgICBib3gtc2hhZG93OiAkaW5wdXQtc2hhZG93LWZvY3VzO1xuXG4gICAgQGlmIGhhcy12YWx1ZSgkaW5wdXQtdHJhbnNpdGlvbikge1xuICAgICAgdHJhbnNpdGlvbjogJGlucHV0LXRyYW5zaXRpb247XG4gICAgfVxuICB9XG5cbiAgLy8gRGlzYWJsZWQgc3RhdGVcbiAgJjpkaXNhYmxlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJhY2tncm91bmQtZGlzYWJsZWQ7XG4gICAgY3Vyc29yOiAkaW5wdXQtY3Vyc29yLWRpc2FibGVkO1xuICB9XG5cbiAgLy8gSGlkZSB0aGUgZHJvcGRvd24gYXJyb3cgc2hvd24gaW4gbmV3ZXIgSUUgdmVyc2lvbnNcbiAgJjo6LW1zLWV4cGFuZCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gICZbbXVsdGlwbGVdIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLXNlbGVjdCB7XG4gIHNlbGVjdCB7XG4gICAgQGluY2x1ZGUgZm9ybS1zZWxlY3Q7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGFiaWRlXG4vLy8vXG5cbi8vLyBTZXRzIGlmIGVycm9yIHN0eWxlcyBzaG91bGQgYmUgYWRkZWQgdG8gaW5wdXRzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRhYmlkZS1pbnB1dHM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGlmIGVycm9yIHN0eWxlcyBzaG91bGQgYmUgYWRkZWQgdG8gbGFiZWxzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRhYmlkZS1sYWJlbHM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIHRvIHVzZSBmb3IgaW52YWxpZCB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWJhY2tncm91bmQtaW52YWxpZDogZ2V0LWNvbG9yKGFsZXJ0KSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHRvIHVzZSBmb3IgbGFiZWxzIG9mIGludmFsaWQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kZm9ybS1sYWJlbC1jb2xvci1pbnZhbGlkOiBnZXQtY29sb3IoYWxlcnQpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IGNvbG9yIGZvciBmb3JtIGVycm9yIHRleHQuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1lcnJvci1jb2xvcjogZ2V0LWNvbG9yKGFsZXJ0KSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBzaXplIGZvciBmb3JtIGVycm9yIHRleHQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaW5wdXQtZXJyb3ItZm9udC1zaXplOiByZW0tY2FsYygxMikgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgd2VpZ2h0IGZvciBmb3JtIGVycm9yIHRleHQuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGlucHV0LWVycm9yLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4vLy8gU3R5bGVzIHRoZSBiYWNrZ3JvdW5kIGFuZCBib3JkZXIgb2YgYW4gaW5wdXQgZmllbGQgdG8gaGF2ZSBhbiBlcnJvciBzdGF0ZS5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kIFskYWxlcnQtY29sb3JdIC0gQ29sb3IgdG8gdXNlIGZvciB0aGUgYmFja2dyb3VuZCBhbmQgYm9yZGVyLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFja2dyb3VuZC1saWdodGVuIFsxMCVdIC0gTGlnaHRuZXNzIGxldmVsIG9mIHRoZSBiYWNrZ3JvdW5kIGNvbG9yLlxuQG1peGluIGZvcm0taW5wdXQtZXJyb3IoXG4gICRiYWNrZ3JvdW5kOiAkaW5wdXQtYmFja2dyb3VuZC1pbnZhbGlkLFxuICAkYmFja2dyb3VuZC1saWdodGVuOiAxMCVcbikge1xuICAmOm5vdCg6Zm9jdXMpIHtcbiAgICBib3JkZXItY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIGJhY2tncm91bmQtY29sb3I6IG1peCgkYmFja2dyb3VuZCwgJHdoaXRlLCAkYmFja2dyb3VuZC1saWdodGVuKTtcblxuICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgZXJyb3Igc3R5bGVzIHRvIGEgZm9ybSBlbGVtZW50LCB1c2luZyB0aGUgdmFsdWVzIGluIHRoZSBzZXR0aW5ncyBmaWxlLlxuQG1peGluIGZvcm0tZXJyb3Ige1xuICBkaXNwbGF5OiBub25lO1xuICBtYXJnaW4tdG9wOiAkZm9ybS1zcGFjaW5nICogLTAuNTtcbiAgbWFyZ2luLWJvdHRvbTogJGZvcm0tc3BhY2luZztcblxuICBmb250LXNpemU6ICRpbnB1dC1lcnJvci1mb250LXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkaW5wdXQtZXJyb3ItZm9udC13ZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtZXJyb3ItY29sb3I7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tZXJyb3Ige1xuICBAaWYgJGFiaWRlLWlucHV0cyB7XG4gICAgLy8gRXJyb3IgY2xhc3MgZm9yIGludmFsaWQgaW5wdXRzXG4gICAgLmlzLWludmFsaWQtaW5wdXQge1xuICAgICAgQGluY2x1ZGUgZm9ybS1pbnB1dC1lcnJvcjtcbiAgICB9XG4gIH1cblxuICBAaWYgJGFiaWRlLWxhYmVscyB7XG4gICAgLy8gRXJyb3IgY2xhc3MgZm9yIGxhYmVscyBvZiBpbnZhbGlkIG91dHB1dHNcbiAgICAuaXMtaW52YWxpZC1sYWJlbCB7XG4gICAgICBjb2xvcjogJGZvcm0tbGFiZWwtY29sb3ItaW52YWxpZDtcbiAgICB9XG4gIH1cblxuICAvLyBGb3JtIGVycm9yIGVsZW1lbnRcbiAgLmZvcm0tZXJyb3Ige1xuICAgIEBpbmNsdWRlIGZvcm0tZXJyb3I7XG5cbiAgICAmLmlzLXZpc2libGUge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB0eXBvZ3JhcGh5LWJhc2Vcbi8vLy9cblxuLy8gQmFzZSBUeXBvZ3JhcGh5XG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuLy8gVGhlc2UgYXJlIHN0eWxlcyBhcHBsaWVkIHRvIGJhc2ljIEhUTUwgdGFncywgaW5jbHVkaW5nOlxuLy8gICAtIFBhcmFncmFwaHMgPHA+XG4vLyAgIC0gQm9sZC9pdGFsaWNzIDxiPiA8c3Ryb25nPiA8aT4gPGVtPlxuLy8gICAtIFNtYWxsIHRleHQgPHNtYWxsPlxuLy8gICAtIEhlYWRpbmdzIDxoMT4tPGg2PlxuLy8gICAtIEFuY2hvcnMgPGE+XG4vLyAgIC0gRGl2aWRlcnMgPGhyPlxuLy8gICAtIExpc3RzIDx1bD4gPG9sPiA8ZGw+XG4vLyAgIC0gQmxvY2txdW90ZXMgPGJsb2NrcXVvdGU+XG4vLyAgIC0gQ29kZSBibG9ja3MgPGNvZGU+XG4vLyAgIC0gQWJicmV2aWF0aW9ucyA8YWJicj5cbi8vICAgLSBDaXRhdGlvbnMgPGNpdGU+XG4vLyAgIC0gS2V5c3Ryb2tlcyA8a2JkPlxuXG4vLy8gRm9udCBmYW1pbHkgZm9yIGhlYWRlciBlbGVtZW50cy5cbi8vLyBAdHlwZSBTdHJpbmcgfCBMaXN0XG4kaGVhZGVyLWZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kaGVhZGVyLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHN0eWxlIChlLmcuIGl0YWxpY2l6ZWQpIG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kaGVhZGVyLWZvbnQtc3R5bGU6IG5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc3RhY2sgdXNlZCBmb3IgZWxlbWVudHMgdGhhdCB1c2UgbW9ub3NwYWNlZCB0eXBlLCBzdWNoIGFzIGNvZGUgc2FtcGxlc1xuLy8vIEB0eXBlIFN0cmluZyB8IExpc3RcbiRmb250LWZhbWlseS1tb25vc3BhY2U6IENvbnNvbGFzLCAnTGliZXJhdGlvbiBNb25vJywgQ291cmllciwgbW9ub3NwYWNlICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBDb2xvclxuJGhlYWRlci1jb2xvcjogaW5oZXJpdCAhZGVmYXVsdDtcblxuLy8vIExpbmUgaGVpZ2h0IG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaGVhZGVyLWxpbmVoZWlnaHQ6IDEuNCAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBtYXJnaW4gb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRoZWFkZXItbWFyZ2luLWJvdHRvbTogMC41cmVtICFkZWZhdWx0O1xuXG4vLy8gU3R5bGVzIGZvciBoZWFkaW5ncyBhdCB2YXJpb3VzIHNjcmVlbiBzaXplcy4gRWFjaCBrZXkgaXMgYSBicmVha3BvaW50LCBhbmQgZWFjaCB2YWx1ZSBpcyBhIG1hcCBvZiBoZWFkaW5nIHN0eWxlcy5cbi8vLyBAdHlwZSBNYXBcbiRoZWFkZXItc3R5bGVzOiAoXG4gIHNtYWxsOiAoXG4gICAgJ2gxJzogKCdmb250LXNpemUnOiAyNCksXG4gICAgJ2gyJzogKCdmb250LXNpemUnOiAyMCksXG4gICAgJ2gzJzogKCdmb250LXNpemUnOiAxOSksXG4gICAgJ2g0JzogKCdmb250LXNpemUnOiAxOCksXG4gICAgJ2g1JzogKCdmb250LXNpemUnOiAxNyksXG4gICAgJ2g2JzogKCdmb250LXNpemUnOiAxNiksXG4gICksXG4gIG1lZGl1bTogKFxuICAgICdoMSc6ICgnZm9udC1zaXplJzogNDgpLFxuICAgICdoMic6ICgnZm9udC1zaXplJzogNDApLFxuICAgICdoMyc6ICgnZm9udC1zaXplJzogMzEpLFxuICAgICdoNCc6ICgnZm9udC1zaXplJzogMjUpLFxuICAgICdoNSc6ICgnZm9udC1zaXplJzogMjApLFxuICAgICdoNic6ICgnZm9udC1zaXplJzogMTYpLFxuICApLFxuKSAhZGVmYXVsdDtcblxuLy8gJGhlYWRlci1zdHlsZXMgbWFwIGlzIGJ1aWx0IGZyb20gJGhlYWRlci1zaXplcyBpbiBvcmRlciB0byBlbnN1cmUgZG93bndhcmQgY29tcGF0aWJpbGl0eVxuLy8gd2hlbiAkaGVhZGVyLXNpemVzIGlzIGRlcHJlY2lhdGVkLCAkaGVhZGVyLXN0eWxlcyBuZWVkcyB0byBnZXQgIWRlZmF1bHQgdmFsdWVzIGxpa2Ugc2V0dGluZ3Muc2Nzc1xuQGZ1bmN0aW9uIGJ1aWxkX2Zyb21faGVhZGVyLXNpemVzKCRoZWFkZXItc2l6ZXMpIHtcbiAgQHdhcm4gJ05vdGUsIHRoYXQgJGhlYWRlci1zaXplcyBoYXMgYmVlbiByZXBsYWNlZCB3aXRoICRoZWFkZXItc3R5bGVzLiAkaGVhZGVyLXNpemVzIHN0aWxsIHdvcmtzLCBidXQgaXQgaXMgZ29pbmcgdG8gYmUgZGVwcmVjaWF0ZWQuJztcbiAgJGhlYWRlci1zdHlsZXM6ICgpO1xuICBAZWFjaCAkc2l6ZSwgJGhlYWRlcnMgaW4gJGhlYWRlci1zaXplcyB7XG4gICAgJGhlYWRlci1tYXA6ICgpO1xuICAgIEBlYWNoICRoZWFkZXIsICRmb250LXNpemUgaW4gJGhlYWRlcnMge1xuICAgICAgJGhlYWRlci1tYXA6IG1hcC1tZXJnZSgkaGVhZGVyLW1hcCwgKCRoZWFkZXI6ICgnZm9udC1zaXplJzogJGZvbnQtc2l6ZSkpKTtcbiAgICB9XG4gICAgJGhlYWRlci1zdHlsZXM6IG1hcC1tZXJnZSgkaGVhZGVyLXN0eWxlcywgKCRzaXplOiAkaGVhZGVyLW1hcCkpO1xuICB9XG4gIEByZXR1cm4gJGhlYWRlci1zdHlsZXM7XG59XG5cbi8vIElmIGl0IGV4aXN0cyAkaGVhZGVycy1zaXplcyBpcyB1c2VkIHRvIGJ1aWxkICRoZWFkZXItc3R5bGVzLiBTZWUgdGhlIGRvY3VtZW50YXRpb24uXG5AaWYgdmFyaWFibGUtZXhpc3RzKGhlYWRlci1zaXplcykge1xuICAkaGVhZGVyLXN0eWxlczogYnVpbGRfZnJvbV9oZWFkZXItc2l6ZXMoJGhlYWRlci1zaXplcyk7XG59XG5cbi8vLyBUZXh0IHJlbmRlcmluZyBtZXRob2Qgb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRoZWFkZXItdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBvZiBgPHNtYWxsPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc21hbGwtZm9udC1zaXplOiA4MCUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiBgPHNtYWxsPmAgZWxlbWVudHMgd2hlbiBwbGFjZWQgaW5zaWRlIGhlYWRlcnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRoZWFkZXItc21hbGwtZm9udC1jb2xvcjogJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gTGluZSBoZWlnaHQgb2YgdGV4dCBpbnNpZGUgYDxwPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcGFyYWdyYXBoLWxpbmVoZWlnaHQ6IDEuNiAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBtYXJnaW4gb2YgcGFyYWdyYXBocy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTogMXJlbSAhZGVmYXVsdDtcblxuLy8vIFRleHQgcmVuZGVyaW5nIG1ldGhvZCBmb3IgcGFyYWdyYXBoIHRleHQuXG4vLy8gQHR5cGUgU3RyaW5nXG4kcGFyYWdyYXBoLXRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHkgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIGNvZGUgc2FtcGxlcy5cbi8vLyBAdHlwZSBDb2xvclxuJGNvZGUtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEZvbnQgZmFtaWx5IG9mIGNvZGUgc2FtcGxlcy5cbi8vLyBAdHlwZSBTdHJpbmcgfCBMaXN0XG4kY29kZS1mb250LWZhbWlseTogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IG9mIHRleHQgaW4gY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGNvZGUtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIENvbG9yXG4kY29kZS1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBhcm91bmQgY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIExpc3RcbiRjb2RlLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgYXJvdW5kIHRleHQgb2YgY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRjb2RlLXBhZGRpbmc6IHJlbS1jYWxjKDIgNSAxKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGxpbmtzLlxuLy8vIEB0eXBlIENvbG9yXG4kYW5jaG9yLWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGxpbmtzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIENvbG9yXG4kYW5jaG9yLWNvbG9yLWhvdmVyOiBzY2FsZS1jb2xvcigkYW5jaG9yLWNvbG9yLCAkbGlnaHRuZXNzOiAtMTQlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBkZWNvcmF0aW9uIGZvciBsaW5rcy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRhbmNob3ItdGV4dC1kZWNvcmF0aW9uOiBub25lICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGRlY29yYXRpb24gZm9yIGxpbmtzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGFuY2hvci10ZXh0LWRlY29yYXRpb24taG92ZXI6IG5vbmUgIWRlZmF1bHQ7XG5cbi8vLyBNYXhpbXVtIHdpZHRoIG9mIGEgZGl2aWRlci5cbi8vLyBAdHlwZSBOdW1iZXJcbiRoci13aWR0aDogJGdsb2JhbC13aWR0aCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIGZvciBhIGRpdmlkZXIuXG4vLy8gQHR5cGUgTGlzdFxuJGhyLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbWFyZ2luIGZvciBhIGRpdmlkZXIuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGhyLW1hcmdpbjogcmVtLWNhbGMoMjApIGF1dG8gIWRlZmF1bHQ7XG5cbi8vLyBMaW5lIGhlaWdodCBmb3IgaXRlbXMgaW4gYSBsaXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGxpc3QtbGluZWhlaWdodDogJHBhcmFncmFwaC1saW5laGVpZ2h0ICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIG1hcmdpbiBmb3IgaXRlbXMgaW4gYSBsaXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGxpc3QtbWFyZ2luLWJvdHRvbTogJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tICFkZWZhdWx0O1xuXG4vLy8gQnVsbGV0IHR5cGUgdG8gdXNlIGZvciB1bm9yZGVyZWQgbGlzdHMgKGUuZy4sIGBzcXVhcmVgLCBgY2lyY2xlYCwgYGRpc2NgKS5cbi8vLyBAdHlwZSBTdHJpbmdcbiRsaXN0LXN0eWxlLXR5cGU6IGRpc2MgIWRlZmF1bHQ7XG5cbi8vLyBQb3NpdGlvbmluZyBmb3IgYnVsbGV0cyBvbiB1bm9yZGVyZWQgbGlzdCBpdGVtcy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRsaXN0LXN0eWxlLXBvc2l0aW9uOiBvdXRzaWRlICFkZWZhdWx0O1xuXG4vLy8gTGVmdCAob3IgcmlnaHQpIG1hcmdpbiBmb3IgbGlzdHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGlzdC1zaWRlLW1hcmdpbjogMS4yNXJlbSAhZGVmYXVsdDtcblxuLy8vIExlZnQgKG9yIHJpZ2h0KSBtYXJnaW4gZm9yIGEgbGlzdCBpbnNpZGUgYSBsaXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGxpc3QtbmVzdGVkLXNpZGUtbWFyZ2luOiAxLjI1cmVtICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIG1hcmdpbiBmb3IgYDxkbD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGRlZm5saXN0LW1hcmdpbi1ib3R0b206IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBmb3IgYDxkdD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGRlZm5saXN0LXRlcm0td2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4vLy8gU3BhY2luZyBiZXR3ZWVuIGA8ZHQ+YCBhbmQgYDxkZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGRlZm5saXN0LXRlcm0tbWFyZ2luLWJvdHRvbTogMC4zcmVtICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiBgPGJsb2NrcXVvdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGJsb2NrcXVvdGUtY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGluc2lkZSBhIGA8YmxvY2txdW90ZT5gIGVsZW1lbnQuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGJsb2NrcXVvdGUtcGFkZGluZzogcmVtLWNhbGMoOSAyMCAwIDE5KSAhZGVmYXVsdDtcblxuLy8vIFNpZGUgYm9yZGVyIGZvciBgPGJsb2NrcXVvdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBMaXN0XG4kYmxvY2txdW90ZS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgZm9yIGA8Y2l0ZT5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGNpdGUtZm9udC1zaXplOiByZW0tY2FsYygxMykgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIGZvciBgPGNpdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGNpdGUtY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBQc2V1ZG8gY29udGVudCBmb3IgYDxjaXRlPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kY2l0ZS1wc2V1ZG8tY29udGVudDogJ1xcMjAxNCBcXDAwMjAnICFkZWZhdWx0O1xuXG4vLy8gRm9udCBmYW1pbHkgZm9yIGA8a2JkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgU3RyaW5nIHwgTGlzdFxuJGtleXN0cm9rZS1mb250OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBmb3IgYDxrYmQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGtleXN0cm9rZS1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgYDxrYmQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGtleXN0cm9rZS1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgZm9yIGA8a2JkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGtleXN0cm9rZS1wYWRkaW5nOiByZW0tY2FsYygyIDQgMCkgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgcmFkaXVzIGZvciBgPGtiZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRrZXlzdHJva2UtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBib3JkZXIgc3R5bGUgZm9yIGA8YWJicj5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIExpc3RcbiRhYmJyLXVuZGVybGluZTogMXB4IGRvdHRlZCAkYmxhY2sgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXR5cG9ncmFwaHktYmFzZSB7XG4gIC8vIFR5cG9ncmFwaHkgcmVzZXRzXG4gIGRpdixcbiAgZGwsXG4gIGR0LFxuICBkZCxcbiAgdWwsXG4gIG9sLFxuICBsaSxcbiAgaDEsXG4gIGgyLFxuICBoMyxcbiAgaDQsXG4gIGg1LFxuICBoNixcbiAgcHJlLFxuICBmb3JtLFxuICBwLFxuICBibG9ja3F1b3RlLFxuICB0aCxcbiAgdGQge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgLy8gUGFyYWdyYXBoc1xuICBwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b207XG5cbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgbGluZS1oZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodDtcbiAgICB0ZXh0LXJlbmRlcmluZzogJHBhcmFncmFwaC10ZXh0LXJlbmRlcmluZztcbiAgfVxuXG4gIC8vIEVtcGhhc2l6ZWQgdGV4dFxuICBlbSxcbiAgaSB7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICB9XG5cbiAgLy8gU3Ryb25nIHRleHRcbiAgc3Ryb25nLFxuICBiIHtcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIFNtYWxsIHRleHRcbiAgc21hbGwge1xuICAgIGZvbnQtc2l6ZTogJHNtYWxsLWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIEhlYWRpbmdzXG4gIGgxLCAuaDEsXG4gIGgyLCAuaDIsXG4gIGgzLCAuaDMsXG4gIGg0LCAuaDQsXG4gIGg1LCAuaDUsXG4gIGg2LCAuaDYge1xuICAgIGZvbnQtZmFtaWx5OiAkaGVhZGVyLWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtc3R5bGU6ICRoZWFkZXItZm9udC1zdHlsZTtcbiAgICBmb250LXdlaWdodDogJGhlYWRlci1mb250LXdlaWdodDtcbiAgICBjb2xvcjogJGhlYWRlci1jb2xvcjtcbiAgICB0ZXh0LXJlbmRlcmluZzogJGhlYWRlci10ZXh0LXJlbmRlcmluZztcblxuICAgIHNtYWxsIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgICAgY29sb3I6ICRoZWFkZXItc21hbGwtZm9udC1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAvLyBIZWFkaW5nIHN0eWxlc1xuICBAZWFjaCAkc2l6ZSwgJGhlYWRlcnMgaW4gJGhlYWRlci1zdHlsZXMge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgIEBlYWNoICRoZWFkZXIsICRoZWFkZXItZGVmcyBpbiAkaGVhZGVycyB7XG4gICAgICAgICRmb250LXNpemUtdGVtcDogMXJlbTtcbiAgICAgICAgI3skaGVhZGVyfSwgLiN7JGhlYWRlcn0ge1xuXG4gICAgICAgICAgQGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgZm9udC1zaXplKSB7XG4gICAgICAgICAgICAkZm9udC1zaXplLXRlbXA6IHJlbS1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBmb250LXNpemUpKTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS10ZW1wO1xuICAgICAgICAgIH0gQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBmcykge1xuICAgICAgICAgICAgJGZvbnQtc2l6ZS10ZW1wOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgZnMpKTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS10ZW1wO1xuICAgICAgICAgIH0gQGVsc2UgaWYgJHNpemUgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXRlbXA7XG4gICAgICAgICAgfVxuICAgICAgICAgIEBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIGxpbmUtaGVpZ2h0KSB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogdW5pdGxlc3MtY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbGluZS1oZWlnaHQpLCAkZm9udC1zaXplLXRlbXApO1xuICAgICAgICAgIH0gQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBsaCkge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHVuaXRsZXNzLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIGxoKSwgJGZvbnQtc2l6ZS10ZW1wKTtcbiAgICAgICAgICB9IEBlbHNlIGlmICRzaXplID09ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB1bml0bGVzcy1jYWxjKCRoZWFkZXItbGluZWhlaWdodCwgJGZvbnQtc2l6ZS10ZW1wKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBtYXJnaW4tdG9wKSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbWFyZ2luLXRvcCkpO1xuICAgICAgICAgIH0gQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBtdCkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIG10KSk7XG4gICAgICAgICAgfSBAZWxzZSBpZiAkc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBtYXJnaW4tYm90dG9tKSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbWFyZ2luLWJvdHRvbSkpO1xuICAgICAgICAgIH0gQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBtYikge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIG1iKSk7XG4gICAgICAgICAgfSBAZWxzZSBpZiAkc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygkaGVhZGVyLW1hcmdpbi1ib3R0b20pO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIExpbmtzXG4gIGEge1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICAgIGNvbG9yOiAkYW5jaG9yLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogJGFuY2hvci10ZXh0LWRlY29yYXRpb247XG5cbiAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgY29sb3I6ICRhbmNob3ItY29sb3ItaG92ZXI7XG4gICAgICBAaWYgJGFuY2hvci10ZXh0LWRlY29yYXRpb24taG92ZXIgIT0gJGFuY2hvci10ZXh0LWRlY29yYXRpb24ge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246ICRhbmNob3ItdGV4dC1kZWNvcmF0aW9uLWhvdmVyO1xuICAgICAgfVxuICAgIH1cblxuICAgIGltZyB7XG4gICAgICBib3JkZXI6IDA7XG4gICAgfVxuICB9XG5cbiAgLy8gSG9yaXpvbnRhbCBydWxlXG4gIGhyIHtcbiAgICBjbGVhcjogYm90aDtcblxuICAgIG1heC13aWR0aDogJGhyLXdpZHRoO1xuICAgIGhlaWdodDogMDtcbiAgICBtYXJnaW46ICRoci1tYXJnaW47XG5cbiAgICBib3JkZXItdG9wOiAwO1xuICAgIGJvcmRlci1yaWdodDogMDtcbiAgICBib3JkZXItYm90dG9tOiAkaHItYm9yZGVyO1xuICAgIGJvcmRlci1sZWZ0OiAwO1xuICB9XG5cbiAgLy8gTGlzdHNcbiAgdWwsXG4gIG9sLFxuICBkbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGxpc3QtbWFyZ2luLWJvdHRvbTtcbiAgICBsaXN0LXN0eWxlLXBvc2l0aW9uOiAkbGlzdC1zdHlsZS1wb3NpdGlvbjtcbiAgICBsaW5lLWhlaWdodDogJGxpc3QtbGluZWhlaWdodDtcbiAgfVxuXG4gIC8vIExpc3QgaXRlbXNcbiAgbGkge1xuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIFVub3JkZXJlZCBsaXN0c1xuICB1bCB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJGxpc3Qtc2lkZS1tYXJnaW47XG4gICAgbGlzdC1zdHlsZS10eXBlOiAkbGlzdC1zdHlsZS10eXBlO1xuICB9XG5cbiAgLy8gT3JkZXJlZCBsaXN0c1xuICBvbCB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJGxpc3Qtc2lkZS1tYXJnaW47XG4gIH1cblxuICAvLyBOZXN0ZWQgdW5vcmRlcmVkL29yZGVyZWQgbGlzdHNcbiAgdWwsIG9sIHtcbiAgICAmICYge1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJGxpc3QtbmVzdGVkLXNpZGUtbWFyZ2luO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICAvLyBEZWZpbml0aW9uIGxpc3RzXG4gIGRsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkZGVmbmxpc3QtbWFyZ2luLWJvdHRvbTtcblxuICAgIGR0IHtcbiAgICAgIG1hcmdpbi1ib3R0b206ICRkZWZubGlzdC10ZXJtLW1hcmdpbi1ib3R0b207XG4gICAgICBmb250LXdlaWdodDogJGRlZm5saXN0LXRlcm0td2VpZ2h0O1xuICAgIH1cbiAgfVxuXG4gIC8vIEJsb2NrcXVvdGVzXG4gIGJsb2NrcXVvdGUge1xuICAgIG1hcmdpbjogMCAwICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcbiAgICBwYWRkaW5nOiAkYmxvY2txdW90ZS1wYWRkaW5nO1xuICAgIGJvcmRlci0jeyRnbG9iYWwtbGVmdH06ICRibG9ja3F1b3RlLWJvcmRlcjtcblxuICAgICYsIHAge1xuICAgICAgbGluZS1oZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodDtcbiAgICAgIGNvbG9yOiAkYmxvY2txdW90ZS1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAvLyBDaXRhdGlvbnNcbiAgY2l0ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiAkY2l0ZS1mb250LXNpemU7XG4gICAgY29sb3I6ICRjaXRlLWNvbG9yO1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogJGNpdGUtcHNldWRvLWNvbnRlbnQ7XG4gICAgfVxuICB9XG5cbiAgLy8gQWJicmV2aWF0aW9uc1xuICBhYmJyLCBhYmJyW3RpdGxlXSB7XG4gICAgYm9yZGVyLWJvdHRvbTogJGFiYnItdW5kZXJsaW5lO1xuICAgIGN1cnNvcjogaGVscDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAvLyBGaWd1cmVzXG4gIGZpZ3VyZSB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgLy8gQ29kZVxuICBjb2RlIHtcbiAgICBwYWRkaW5nOiAkY29kZS1wYWRkaW5nO1xuXG4gICAgYm9yZGVyOiAkY29kZS1ib3JkZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvZGUtYmFja2dyb3VuZDtcblxuICAgIGZvbnQtZmFtaWx5OiAkY29kZS1mb250LWZhbWlseTtcbiAgICBmb250LXdlaWdodDogJGNvZGUtZm9udC13ZWlnaHQ7XG4gICAgY29sb3I6ICRjb2RlLWNvbG9yO1xuICB9XG5cbiAgLy8gS2V5c3Ryb2tlc1xuICBrYmQge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAka2V5c3Ryb2tlLXBhZGRpbmc7XG5cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAka2V5c3Ryb2tlLWJhY2tncm91bmQ7XG5cbiAgICBmb250LWZhbWlseTogJGtleXN0cm9rZS1mb250O1xuICAgIGNvbG9yOiAka2V5c3Ryb2tlLWNvbG9yO1xuXG4gICAgQGlmIGhhcy12YWx1ZSgka2V5c3Ryb2tlLXJhZGl1cykge1xuICAgICAgYm9yZGVyLXJhZGl1czogJGtleXN0cm9rZS1yYWRpdXM7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBicmVha3BvaW50c1xuLy8vL1xuXG4vLy8gQSBsaXN0IG9mIG5hbWVkIGJyZWFrcG9pbnRzLiBZb3UgY2FuIHVzZSB0aGVzZSB3aXRoIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0byBxdWlja2x5IGNyZWF0ZSBtZWRpYSBxdWVyaWVzLlxuLy8vIEB0eXBlIE1hcFxuJGJyZWFrcG9pbnRzOiAoXG4gIHNtYWxsOiAwLFxuICBtZWRpdW06IDY0MHB4LFxuICBsYXJnZTogMTAyNHB4LFxuICB4bGFyZ2U6IDEyMDBweCxcbiAgeHhsYXJnZTogMTQ0MHB4LFxuKSAhZGVmYXVsdDtcblxuLy8vIFRoZSBsYXJnZXN0IG5hbWVkIGJyZWFrcG9pbnQgaW4gd2hpY2ggdG8gaW5jbHVkZSBwcmludCBhcyBhIG1lZGlhIHR5cGVcbi8vLyBAdHlwZSBLZXl3b3JkXG4kcHJpbnQtYnJlYWtwb2ludDogbGFyZ2UgIWRlZmF1bHQ7XG5cbiQtemYtemVyby1icmVha3BvaW50OiBzbWFsbCAhZGVmYXVsdDtcblxuJC16Zi1icmVha3BvaW50cy1rZXlzOiBtYXAtdG8tbGlzdCgkYnJlYWtwb2ludHMsICdrZXlzJyk7XG5cbkBpZiBudGgobWFwLXZhbHVlcygkYnJlYWtwb2ludHMpLCAxKSAhPSAwIHtcbiAgQGVycm9yICdUaGUgZmlyc3Qga2V5IGluIHRoZSAkYnJlYWtwb2ludHMgbWFwIG11c3QgaGF2ZSBhIHZhbHVlIG9mIFwiMFwiLic7XG59XG5AZWxzZSB7XG4gICQtemYtemVyby1icmVha3BvaW50OiBudGgobWFwLWtleXMoJGJyZWFrcG9pbnRzKSwgMSk7XG59XG5cbi8vLyBBbGwgb2YgdGhlIG5hbWVzIGluIHRoaXMgbGlzdCB3aWxsIGJlIG91dHB1dCBhcyBjbGFzc2VzIGluIHlvdXIgQ1NTLCBsaWtlIGAuc21hbGwtMTJgLCBgLm1lZGl1bS02YCwgYW5kIHNvIG9uLiBFYWNoIHZhbHVlIGluIHRoaXMgbGlzdCBtdXN0IGFsc28gYmUgaW4gdGhlIGAkYnJlYWtwb2ludHNgIG1hcC5cbi8vLyBAdHlwZSBMaXN0XG4kYnJlYWtwb2ludC1jbGFzc2VzOiAoc21hbGwgbWVkaXVtIGxhcmdlKSAhZGVmYXVsdDtcblxuLy8vIEdlbmVyYXRlcyBhIG1lZGlhIHF1ZXJ5IHN0cmluZyBtYXRjaGluZyB0aGUgaW5wdXQgdmFsdWUuIFJlZmVyIHRvIHRoZSBkb2N1bWVudGF0aW9uIGZvciB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdG8gc2VlIHdoYXQgdGhlIHBvc3NpYmxlIGlucHV0cyBhcmUuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkdmFsIFtzbWFsbF0gLSBCcmVha3BvaW50IG5hbWUsIG9yIHB4LCByZW0sIG9yIGVtIHZhbHVlIHRvIHByb2Nlc3MuXG5AZnVuY3Rpb24gYnJlYWtwb2ludCgkdmFsOiAkLXpmLXplcm8tYnJlYWtwb2ludCkge1xuICAvLyBTaXplIG9yIGtleXdvcmRcbiAgJGJwOiBudGgoJHZhbCwgMSk7XG4gIC8vIFZhbHVlIGZvciBtYXgtd2lkdGggbWVkaWEgcXVlcmllc1xuICAkYnAtbWF4OiAwO1xuICAvLyBEaXJlY3Rpb24gb2YgbWVkaWEgcXVlcnkgKHVwLCBkb3duLCBvciBvbmx5KVxuICAkZGlyOiBpZihsZW5ndGgoJHZhbCkgPiAxLCBudGgoJHZhbCwgMiksIHVwKTtcbiAgLy8gRXZlbnR1YWwgb3V0cHV0XG4gICRzdHI6ICcnO1xuICAvLyBJcyBpdCBhIG5hbWVkIG1lZGlhIHF1ZXJ5P1xuICAkbmFtZWQ6IGZhbHNlO1xuXG4gIC8vIE9yaWVudGF0aW9uIG1lZGlhIHF1ZXJpZXMgaGF2ZSBhIHVuaXF1ZSBzeW50YXhcbiAgQGlmICRicCA9PSAnbGFuZHNjYXBlJyBvciAkYnAgPT0gJ3BvcnRyYWl0JyB7XG4gICAgQHJldHVybiAnKG9yaWVudGF0aW9uOiAjeyRicH0pJztcbiAgfVxuICBAZWxzZSBpZiAkYnAgPT0gJ3JldGluYScge1xuICAgIEByZXR1cm4gJygtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLCAobWluLXJlc29sdXRpb246IDE5MmRwaSknO1xuICB9XG5cbiAgLy8gVHJ5IHRvIHB1bGwgYSBuYW1lZCBicmVha3BvaW50IG91dCBvZiB0aGUgJGJyZWFrcG9pbnRzIG1hcFxuICBAaWYgdHlwZS1vZigkYnApID09ICdzdHJpbmcnIHtcbiAgICBAaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCAkYnApIHtcbiAgICAgIEBpZiAkZGlyID09ICdvbmx5JyBvciAkZGlyID09ICdkb3duJyB7XG4gICAgICAgICRicC1tYXg6IC16Zi1tYXAtbmV4dCgkYnJlYWtwb2ludHMsICRicCk7XG4gICAgICB9XG5cbiAgICAgICRicDogbWFwLWdldCgkYnJlYWtwb2ludHMsICRicCk7XG4gICAgICAkbmFtZWQ6IHRydWU7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICRicDogMDtcbiAgICAgIEB3YXJuICdicmVha3BvaW50KCk6IFwiI3skdmFsfVwiIGlzIG5vdCBkZWZpbmVkIGluIHlvdXIgJGJyZWFrcG9pbnRzIHNldHRpbmcuJztcbiAgICB9XG4gIH1cblxuICAvLyBDb252ZXJ0IGFueSBwaXhlbCwgcmVtLCBvciB1bml0bGVzcyB2YWx1ZSB0byBlbVxuICAkYnA6IC16Zi1icC10by1lbSgkYnApO1xuICAvLyBNYXggdmFsdWUgaXMgMC4ycHggdW5kZXIgdGhlIG5leHQgYnJlYWtwb2ludCAoMC4wMiAvIDE2ID0gMC4wMDEyNSkuXG4gIC8vIFVzZSBhIHByZWNpc2lvbiB1bmRlciAxcHggdG8gc3VwcG9ydCBicm93c2VyIHpvb20sIGJ1dCBub3QgdG8gbG93IHRvIGF2b2lkIHJvdW5kaW5nLlxuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3p1cmIvZm91bmRhdGlvbi1zaXRlcy9pc3N1ZXMvMTEzMTNcbiAgQGlmICRicC1tYXgge1xuICAgICRicC1tYXg6IC16Zi1icC10by1lbSgkYnAtbWF4KSAtIC4wMDEyNTtcbiAgfVxuXG4gIC8vIENvbmRpdGlvbnMgdG8gc2tpcCBtZWRpYSBxdWVyeSBjcmVhdGlvblxuICAvLyAtIEl0J3MgYSBuYW1lZCBicmVha3BvaW50IHRoYXQgcmVzb2x2ZWQgdG8gXCIwIGRvd25cIiBvciBcIjAgdXBcIlxuICAvLyAtIEl0J3MgYSBudW1lcmljIGJyZWFrcG9pbnQgdGhhdCByZXNvbHZlZCB0byBcIjAgXCIgKyBhbnl0aGluZ1xuICBAaWYgJGJwID4gMGVtIG9yICRkaXIgPT0gJ29ubHknIG9yICRkaXIgPT0gJ2Rvd24nIHtcbiAgICAvLyBgb25seWAgcmFuZ2VzIHVzZSB0aGUgZm9ybWF0IGAobWluLXdpZHRoOiBuKSBhbmQgKG1heC13aWR0aDogbilgXG4gICAgQGlmICRkaXIgPT0gJ29ubHknIHtcbiAgICAgIC8vIE9ubHkgbmFtZWQgbWVkaWEgcXVlcmllcyBjYW4gaGF2ZSBhbiBcIm9ubHlcIiByYW5nZVxuICAgICAgQGlmICRuYW1lZCA9PSB0cnVlIHtcbiAgICAgICAgLy8gT25seSB1c2UgXCJtaW4td2lkdGhcIiBpZiB0aGUgZmxvb3IgaXMgZ3JlYXRlciB0aGFuIDBcbiAgICAgICAgQGlmICRicCA+IDBlbSB7XG4gICAgICAgICAgJHN0cjogJHN0ciArICcobWluLXdpZHRoOiAjeyRicH0pJztcblxuICAgICAgICAgIC8vIE9ubHkgYWRkIFwiYW5kXCIgdG8gdGhlIG1lZGlhIHF1ZXJ5IGlmIHRoZXJlJ3MgYSBjZWlsaW5nXG4gICAgICAgICAgQGlmICRicC1tYXggIT0gbnVsbCB7XG4gICAgICAgICAgICAkc3RyOiAkc3RyICsgJyBhbmQgJztcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBPbmx5IHVzZSBcIm1heC13aWR0aFwiIGlmIHRoZXJlJ3MgYSBjZWlsaW5nXG4gICAgICAgIEBpZiAkYnAtbWF4ICE9IG51bGwge1xuICAgICAgICAgICRzdHI6ICRzdHIgKyAnKG1heC13aWR0aDogI3skYnAtbWF4fSknO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIEB3YXJuICdicmVha3BvaW50KCk6IE9ubHkgbmFtZWQgbWVkaWEgcXVlcmllcyBjYW4gaGF2ZSBhbiBgb25seWAgcmFuZ2UuJztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBgZG93bmAgcmFuZ2VzIHVzZSB0aGUgZm9ybWF0IGAobWF4LXdpZHRoOiBuKWBcbiAgICBAZWxzZSBpZiAkZGlyID09ICdkb3duJyB7XG4gICAgICAkbWF4OiBpZigkbmFtZWQsICRicC1tYXgsICRicCk7XG5cbiAgICAgIC8vIFNraXAgbWVkaWEgcXVlcnkgY3JlYXRpb24gaWYgaW5wdXQgdmFsdWUgaXMgZXhhY3RseSBcIjAgZG93blwiLFxuICAgICAgLy8gdW5sZXNzIHRoZSBmdW5jdGlvbiB3YXMgY2FsbGVkIGFzIFwic21hbGwgZG93blwiLCBpbiB3aGljaCBjYXNlIGl0J3MganVzdCBcInNtYWxsIG9ubHlcIlxuICAgICAgQGlmICRuYW1lZCBvciAkYnAgPiAwZW0ge1xuICAgICAgICBAaWYgJG1heCAhPSBudWxsIHtcbiAgICAgICAgICAkc3RyOiAkc3RyICsgJyhtYXgtd2lkdGg6ICN7JG1heH0pJztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIGB1cGAgcmFuZ2VzIHVzZSB0aGUgZm9ybWF0IGAobWluLXdpZHRoOiBuKWBcbiAgICBAZWxzZSBpZiAkYnAgPiAwZW0ge1xuICAgICAgJHN0cjogJHN0ciArICcobWluLXdpZHRoOiAjeyRicH0pJztcbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICRzdHI7XG59XG5cbi8vLyBXcmFwcyBhIG1lZGlhIHF1ZXJ5IGFyb3VuZCB0aGUgY29udGVudCB5b3UgcHV0IGluc2lkZSB0aGUgbWl4aW4uIFRoaXMgbWl4aW4gYWNjZXB0cyBhIG51bWJlciBvZiB2YWx1ZXM6XG4vLy8gIC0gSWYgYSBzdHJpbmcgaXMgcGFzc2VkLCB0aGUgbWl4aW4gd2lsbCBsb29rIGZvciBpdCBpbiB0aGUgYCRicmVha3BvaW50c2AgbWFwLCBhbmQgdXNlIGEgbWVkaWEgcXVlcnkgdGhlcmUuXG4vLy8gIC0gSWYgYSBwaXhlbCB2YWx1ZSBpcyBwYXNzZWQsIGl0IHdpbGwgYmUgY29udmVydGVkIHRvIGFuIGVtIHZhbHVlIHVzaW5nIGAkZ2xvYmFsLWZvbnQtc2l6ZWAgYXMgdGhlIGJhc2UuXG4vLy8gIC0gSWYgYSByZW0gdmFsdWUgaXMgcGFzc2VkLCB0aGUgdW5pdCB3aWxsIGJlIGNoYW5nZWQgdG8gZW0uXG4vLy8gIC0gSWYgYW4gZW0gdmFsdWUgaXMgcGFzc2VkLCB0aGUgdmFsdWUgd2lsbCBiZSB1c2VkIGFzLWlzLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHZhbHVlIC0gQnJlYWtwb2ludCBuYW1lLCBvciBweCwgcmVtLCBvciBlbSB2YWx1ZSB0byBwcm9jZXNzLlxuLy8vXG4vLy8gQG91dHB1dCBJZiB0aGUgYnJlYWtwb2ludCBpcyBcIjBweCBhbmQgbGFyZ2VyXCIsIG91dHB1dHMgdGhlIGNvbnRlbnQgYXMtaXMuIE90aGVyd2lzZSwgb3V0cHV0cyB0aGUgY29udGVudCB3cmFwcGVkIGluIGEgbWVkaWEgcXVlcnkuXG5AbWl4aW4gYnJlYWtwb2ludCgkdmFsdWUpIHtcbiAgJHN0cjogYnJlYWtwb2ludCgkdmFsdWUpO1xuICAkYnA6IGluZGV4KCQtemYtYnJlYWtwb2ludHMta2V5cywgJHZhbHVlKTtcbiAgJHBicDogaW5kZXgoJC16Zi1icmVha3BvaW50cy1rZXlzLCAkcHJpbnQtYnJlYWtwb2ludCk7XG5cbiAgJG9sZC16Zi1zaXplOiBudWxsO1xuXG4gIC8vIE1ha2UgYnJlYWtwb2ludCBzaXplIGF2YWlsYWJsZSBhcyBhIHZhcmlhYmxlXG4gIEBpZiBnbG9iYWwtdmFyaWFibGUtZXhpc3RzKC16Zi1zaXplKSB7XG4gICAgJG9sZC16Zi1zaXplOiAkLXpmLXNpemU7XG4gIH1cbiAgJC16Zi1zaXplOiBudGgoJHZhbHVlLCAxKSAhZ2xvYmFsOyAvLyBnZXQgdGhlIGZpcnN0IHZhbHVlIHRvIGFjY291bnQgZm9yIGBvbmx5YCBhbmQgYGRvd25gIGtleXdvcmRzXG5cbiAgLy8gSWYgJHN0ciBpcyBzdGlsbCBhbiBlbXB0eSBzdHJpbmcsIG5vIG1lZGlhIHF1ZXJ5IGlzIG5lZWRlZFxuICBAaWYgJHN0ciA9PSAnJyB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cblxuICAvLyBPdGhlcndpc2UsIHdyYXAgdGhlIGNvbnRlbnQgaW4gYSBtZWRpYSBxdWVyeVxuICBAZWxzZSB7XG4gICAgLy8gRm9yIG5hbWVkIGJyZWFrcG9pbnRzIGxlc3MgdGhhbiBvciBlcXVhbCB0byAkcHJpbnQtYnJlYWtwb2ludCwgYWRkIHByaW50IHRvIHRoZSBtZWRpYSB0eXBlc1xuICAgIEBpZiAkYnAgIT0gbnVsbCBhbmQgJGJwIDw9ICRwYnAge1xuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kICN7JHN0cn0ge1xuICAgICAgICBAY29udGVudDtcbiAgICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kICN7JHN0cn0ge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAkLXpmLXNpemU6ICRvbGQtemYtc2l6ZSAhZ2xvYmFsO1xufVxuXG4vLy8gQ29udmVydHMgdGhlIGJyZWFrcG9pbnRzIG1hcCB0byBhIFVSTC1lbmNvZGVkIHN0cmluZywgbGlrZSB0aGlzOiBga2V5MT12YWx1ZTEma2V5Mj12YWx1ZTJgLiBUaGUgdmFsdWUgaXMgdGhlbiBkcm9wcGVkIGludG8gdGhlIENTUyBmb3IgYSBzcGVjaWFsIGA8bWV0YT5gIHRhZywgd2hpY2ggaXMgcmVhZCBieSB0aGUgRm91bmRhdGlvbiBKYXZhU2NyaXB0LiBUaGlzIGlzIGhvdyB3ZSB0cmFuc2ZlciB2YWx1ZXMgZnJvbSBTYXNzIHRvIEphdmFTY3JpcHQsIHNvIHRoZXkgY2FuIGJlIGRlZmluZWQgaW4gb25lIHBsYWNlLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtNYXB9ICRtYXAgLSBNYXAgdG8gY29udmVydC5cbi8vL1xuLy8vIEByZXR1cm5zIHtTdHJpbmd9IEEgc3RyaW5nIGNvbnRhaW5pbmcgdGhlIG1hcCdzIGNvbnRlbnRzLlxuQGZ1bmN0aW9uIC16Zi1icC1zZXJpYWxpemUoJG1hcCkge1xuICAkc3RyOiAnJztcbiAgQGVhY2ggJGtleSwgJHZhbHVlIGluICRtYXAge1xuICAgICRzdHI6ICRzdHIgKyAka2V5ICsgJz0nICsgLXpmLWJwLXRvLWVtKCR2YWx1ZSkgKyAnJic7XG4gIH1cbiAgJHN0cjogc3RyLXNsaWNlKCRzdHIsIDEsIC0yKTtcblxuICBAcmV0dXJuICRzdHI7XG59XG5cbi8vLyBGaW5kIHRoZSBuZXh0IGtleSBpbiBhIG1hcC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TWFwfSAkbWFwIC0gTWFwIHRvIHRyYXZlcnNlLlxuLy8vIEBwYXJhbSB7TWl4ZWR9ICRrZXkgLSBLZXkgdG8gdXNlIGFzIGEgc3RhcnRpbmcgcG9pbnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7TWl4ZWR9IFRoZSB2YWx1ZSBmb3IgdGhlIGtleSBhZnRlciBgJGtleWAsIGlmIGAka2V5YCB3YXMgZm91bmQuIElmIGAka2V5YCB3YXMgbm90IGZvdW5kLCBvciBgJGtleWAgd2FzIHRoZSBsYXN0IHZhbHVlIGluIHRoZSBtYXAsIHJldHVybnMgYG51bGxgLlxuQGZ1bmN0aW9uIC16Zi1tYXAtbmV4dCgkbWFwLCAka2V5KSB7XG5cbiAgLy8gU3RvcmUgdGhlIGtleXMgb2YgdGhlIG1hcCBhcyBhIGxpc3RcbiAgJHZhbHVlczogbWFwLWtleXMoJG1hcCk7XG5cbiAgJGk6IDA7XG5cbiAgLy8gSWYgdGhlIEtleSBFeGlzdHMsIEdldCB0aGUgaW5kZXggb2YgdGhlIGtleSB3aXRoaW4gdGhlIG1hcCBhbmQgYWRkIDEgdG8gaXQgZm9yIHRoZSBuZXh0IGJyZWFrcG9pbnQgaW4gdGhlIG1hcFxuICBAaWYgKG1hcC1oYXMta2V5KCRtYXAsICRrZXkpKSB7XG4gICAgJGk6IGluZGV4KCR2YWx1ZXMsICRrZXkpICsgMTtcbiAgfVxuXG4gIC8vIElmIHRoZSBrZXkgZG9lc24ndCBleGlzdCwgb3IgaXQncyB0aGUgbGFzdCBrZXkgaW4gdGhlIG1hcCwgcmV0dXJuIG51bGxcbiAgQGlmICgkaSA+IGxlbmd0aCgkbWFwKSBvciAkaSA9PSAwKSB7XG4gICAgQHJldHVybiBudWxsO1xuICB9XG4gIC8vIE90aGVyd2lzZSwgcmV0dXJuIHRoZSB2YWx1ZVxuICBAZWxzZSB7XG4gICAgQHJldHVybiBtYXAtZ2V0KCRtYXAsIG50aCgkdmFsdWVzLCAkaSkpO1xuICB9XG5cbn1cblxuLy8vIFJldHVybiBhIGxpc3Qgb2Ygb3VyIG5hbWVkIGJyZWFrcG9pbnRzIGxlc3MgdGhhbiAka2V5LiBVc2VmdWwgZm9yIGRlYWxpbmcgd2l0aFxuLy8vIHJlc3BvbnNpdmUgZ3V0dGVycyBmb3IgdGhlIGdyaWQuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGtleSAtIEtleSB0byB1c2UgYXMgbGFzdCBicmVha3BvaW50LlxuLy8vXG4vLy8gQHJldHVybnMge0FycmF5fSBUaGUgbGlzdCBvZiBicmVha3BvaW50cyB1cCB0byBhbmQuIElmICRrZXkgaXMgYXV0bywgcmV0dXJucyBicmVha3BvaW50cyBhYm92ZSB0aGUgemVyb1xuQGZ1bmN0aW9uIC16Zi1icmVha3BvaW50cy1sZXNzLXRoYW4oJGtleSkge1xuICAkbGlzdDogKCk7XG4gICRmb3VuZF9rZXk6IGZhbHNlO1xuXG4gIEBlYWNoICRuYW1lIGluICQtemYtYnJlYWtwb2ludHMta2V5cyB7XG4gICAgQGlmICgkbmFtZSA9PSAka2V5KSB7XG4gICAgICAkZm91bmRfa2V5OiB0cnVlO1xuICAgIH1cbiAgICBAaWYgbm90ICRmb3VuZF9rZXkge1xuICAgICAgJGxpc3Q6IGFwcGVuZCgkbGlzdCwgJG5hbWUpO1xuICAgIH1cbiAgfVxuICBAcmV0dXJuICRsaXN0O1xufVxuXG4vLy8gUmV0dXJuIGEgbGlzdCBvZiBvdXIgbmFtZWQgYnJlYWtwb2ludHMgbGVzcyB0aGFuICRrZXkuIFVzZWZ1bCBmb3IgZGVhbGluZyB3aXRoXG4vLy8gcmVzcG9uc2l2ZSBndXR0ZXJzIGZvciB0aGUgZ3JpZC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkYnJlYWtwb2ludCAtIGEgbmFtZWQgb3Igbm9uLW5hbWVkIGJyZWFrcG9pbnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7QXJyYXl9IFRoZSBsaXN0IG9mIGJyZWFrcG9pbnRzIHVwIHRvIGFuZC4gSWYgJGtleSBpcyBhdXRvLCByZXR1cm5zIGJyZWFrcG9pbnRzIGFib3ZlIHRoZSB6ZXJvXG5AZnVuY3Rpb24gLXpmLWNsb3Nlc3QtbmFtZWQtYnJlYWtwb2ludCgkYnJlYWtwb2ludCkge1xuICAkbGFzdDogJC16Zi16ZXJvLWJyZWFrcG9pbnQ7XG4gICRmb3VuZDogZmFsc2U7XG5cbiAgJHZhbHVlOiB1bml0bGVzcy1jYWxjKCRicmVha3BvaW50LCAxcHgpO1xuICBAZWFjaCAka2V5LCAkdmFsIGluICRicmVha3BvaW50cyB7XG4gICAgQGlmIG5vdCAkZm91bmQge1xuICAgICAgQGlmIHVuaXRsZXNzLWNhbGMoJHZhbCkgPiAkdmFsdWUge1xuICAgICAgICAkZm91bmQ6IHRydWU7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgJGxhc3Q6ICRrZXk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkbGFzdDtcbn1cblxuLy8vIEdldCBhIHZhbHVlIGZvciBhIGJyZWFrcG9pbnQgZnJvbSBhIHJlc3BvbnNpdmUgY29uZmlnIG1hcCBvciBzaW5nbGUgdmFsdWUuXG4vLy8gLSBJZiB0aGUgY29uZmlnIGlzIGEgc2luZ2xlIHZhbHVlLCByZXR1cm4gaXQgcmVnYXJkbGVzcyBvZiBgJHZhbHVlYC5cbi8vLyAtIElmIHRoZSBjb25maWcgaXMgYSBtYXAgYW5kIGhhcyB0aGUga2V5IGAkdmFsdWVgLCB0aGUgZXhhY3QgYnJlYWtwb2ludCB2YWx1ZSBpcyByZXR1cm5lZC5cbi8vLyAtIElmIHRoZSBjb25maWcgaXMgYSBtYXAgYW5kIGRvZXMgKm5vdCogaGF2ZSB0aGUgYnJlYWtwb2ludCwgdGhlIHZhbHVlIG1hdGNoaW5nIHRoZSBuZXh0IGxvd2VzdCBicmVha3BvaW50IGluIHRoZSBjb25maWcgbWFwIGlzIHJldHVybmVkLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkbWFwIC0gUmVzcG9uc2l2ZSBjb25maWcgbWFwIG9yIHNpbmdsZSB2YWx1ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR2YWx1ZSAtIEJyZWFrcG9pbnQgbmFtZSB0byB1c2UuXG4vLy9cbi8vLyBAcmV0dXJuIHtNaXhlZH0gVGhlIGNvcnJlc3BvbmRpbmcgYnJlYWtwb2ludCB2YWx1ZS5cbkBmdW5jdGlvbiAtemYtZ2V0LWJwLXZhbCgkbWFwLCAkdmFsdWUpIHtcbiAgLy8gSWYgdGhlIGdpdmVuIG1hcCBpcyBhIHNpbmdsZSB2YWx1ZSwgcmV0dXJuIGl0XG4gIEBpZiB0eXBlLW9mKCRtYXApID09ICdudW1iZXInIHtcbiAgICBAcmV0dXJuICRtYXA7XG4gIH1cblxuXG4gIC8vIENoZWNrIGlmIHRoZSBicmVha3BvaW50IG5hbWUgZXhpc3RzIGdsb2JhbGx5XG4gIEBpZiBub3QgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCAkdmFsdWUpIHtcbiAgICBAaWYgdHlwZS1vZigkdmFsdWUpID09ICdudW1iZXInIHtcbiAgICAgICR2YWx1ZTogLXpmLWNsb3Nlc3QtbmFtZWQtYnJlYWtwb2ludCgkdmFsdWUpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgQHJldHVybiBudWxsO1xuICAgIH1cbiAgfVxuICAvLyBDaGVjayBpZiB0aGUgYnJlYWtwb2ludCBuYW1lIGV4aXN0cyBpbiB0aGUgbG9jYWwgY29uZmlnIG1hcFxuICBAZWxzZSBpZiBtYXAtaGFzLWtleSgkbWFwLCAkdmFsdWUpIHtcbiAgICAvLyBJZiBpdCBkb2VzLCBqdXN0IHJldHVybiB0aGUgdmFsdWVcbiAgICBAcmV0dXJuIG1hcC1nZXQoJG1hcCwgJHZhbHVlKTtcbiAgfVxuICAvLyBPdGhlcndpc2UsIGZpbmQgdGhlIG5leHQgbG93ZXN0IGJyZWFrcG9pbnQgYW5kIHJldHVybiB0aGF0IHZhbHVlXG4gIEBlbHNlIHtcbiAgICAkYW5jaG9yOiBudWxsO1xuICAgICRmb3VuZDogZmFsc2U7XG5cbiAgICBAZWFjaCAka2V5LCAkdmFsIGluICRicmVha3BvaW50cyB7XG4gICAgICBAaWYgbm90ICRmb3VuZCB7XG4gICAgICAgIEBpZiBtYXAtaGFzLWtleSgkbWFwLCAka2V5KSB7XG4gICAgICAgICAgJGFuY2hvcjogJGtleTtcbiAgICAgICAgfVxuICAgICAgICBAaWYgJGtleSA9PSAkdmFsdWUge1xuICAgICAgICAgICRmb3VuZDogdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIEByZXR1cm4gbWFwLWdldCgkbWFwLCAkYW5jaG9yKTtcbiAgfVxufVxuXG4kc21hbGwtdXA6ICcnO1xuJHNtYWxsLW9ubHk6ICcnO1xuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCBzbWFsbCkge1xuICAkc21hbGwtdXA6IHNjcmVlbjtcbiAgJHNtYWxsLW9ubHk6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KHNtYWxsIG9ubHkpfScpO1xufVxuXG4kbWVkaXVtLXVwOiAnJztcbiRtZWRpdW0tb25seTogJyc7XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIG1lZGl1bSkge1xuICAkbWVkaXVtLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0pfScpO1xuICAkbWVkaXVtLW9ubHk6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bSBvbmx5KX0nKTtcbn1cblxuJGxhcmdlLXVwOiAnJztcbiRsYXJnZS1vbmx5OiAnJztcblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgbGFyZ2UpIHtcbiAgJGxhcmdlLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChsYXJnZSl9Jyk7XG4gICRsYXJnZS1vbmx5OiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChsYXJnZSBvbmx5KX0nKTtcbn1cblxuJHhsYXJnZS11cDogJyc7XG4keGxhcmdlLW9ubHk6ICcnO1xuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCB4bGFyZ2UpIHtcbiAgJHhsYXJnZS11cDogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoeGxhcmdlKX0nKTtcbiAgJHhsYXJnZS1vbmx5OiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludCh4bGFyZ2Ugb25seSl9Jyk7XG59XG5cbiR4eGxhcmdlLXVwOiAnJztcblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgeHhsYXJnZSkge1xuICAkeHhsYXJnZS11cDogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoeHhsYXJnZSl9Jyk7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB0eXBvZ3JhcGh5LWhlbHBlcnNcbi8vLy9cblxuLy8vIERlZmF1bHQgZm9udCBzaXplIGZvciBsZWFkIHBhcmFncmFwaHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGVhZC1mb250LXNpemU6ICRnbG9iYWwtZm9udC1zaXplICogMS4yNSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbGluZSBoZWlnaHQgZm9yIGxlYWQgcGFyYWdyYXBocy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRsZWFkLWxpbmVoZWlnaHQ6IDEuNiAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbGluZSBoZWlnaHQgZm9yIHN1YmhlYWRlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3ViaGVhZGVyLWxpbmVoZWlnaHQ6IDEuNCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBjb2xvciBmb3Igc3ViaGVhZGVycy5cbi8vLyBAdHlwZSBDb2xvclxuJHN1YmhlYWRlci1jb2xvcjogJGRhcmstZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCB3ZWlnaHQgZm9yIHN1YmhlYWRlcnMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kc3ViaGVhZGVyLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHRvcCBtYXJnaW4gZm9yIHN1YmhlYWRlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3ViaGVhZGVyLW1hcmdpbi10b3A6IDAuMnJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm90dG9tIG1hcmdpbiBmb3Igc3ViaGVhZGVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzdWJoZWFkZXItbWFyZ2luLWJvdHRvbTogMC41cmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgZm9yIHN0YXRpc3RpYyBudW1iZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJHN0YXQtZm9udC1zaXplOiAyLjVyZW0gIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXR5cG9ncmFwaHktaGVscGVycyB7XG4gIC8vIFVzZSB0byBjcmVhdGUgYSBzdWJoZWFkaW5nIHVuZGVyIGEgbWFpbiBoZWFkZXJcbiAgLy8gTWFrZSBzdXJlIHlvdSBwYWlyIHRoZSB0d28gZWxlbWVudHMgaW4gYSA8aGVhZGVyPiBlbGVtZW50LCBsaWtlIHRoaXM6XG4gIC8vIDxoZWFkZXI+XG4gIC8vICAgPGgxPkhlYWRpbmc8L2gxPlxuICAvLyAgIDxoMj5TdWJoZWFkaW5nPC9oMj5cbiAgLy8gPC9oZWFkZXI+XG4gIC5zdWJoZWFkZXIge1xuICAgIG1hcmdpbi10b3A6ICRzdWJoZWFkZXItbWFyZ2luLXRvcDtcbiAgICBtYXJnaW4tYm90dG9tOiAkc3ViaGVhZGVyLW1hcmdpbi1ib3R0b207XG5cbiAgICBmb250LXdlaWdodDogJHN1YmhlYWRlci1mb250LXdlaWdodDtcbiAgICBsaW5lLWhlaWdodDogJHN1YmhlYWRlci1saW5laGVpZ2h0O1xuICAgIGNvbG9yOiAkc3ViaGVhZGVyLWNvbG9yO1xuICB9XG5cbiAgLy8gVXNlIHRvIHN0eWxlIGFuIGludHJvZHVjdG9yeSBsZWFkLCBkZWNrLCBibHVyYiwgZXRjLlxuICAubGVhZCB7XG4gICAgZm9udC1zaXplOiAkbGVhZC1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRsZWFkLWxpbmVoZWlnaHQ7XG4gIH1cblxuICAvLyBVc2UgdG8gc3R5bGUgYSBsYXJnZSBudW1iZXIgdG8gZGlzcGxheSBhIHN0YXRpc3RpY1xuICAuc3RhdCB7XG4gICAgZm9udC1zaXplOiAkc3RhdC1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG5cbiAgICBwICsgJiB7XG4gICAgICBtYXJnaW4tdG9wOiAtMXJlbTtcbiAgICB9XG4gIH1cblxuICB1bCwgb2wge1xuICAgIC8vIFVzZSB0byByZW1vdmUgbnVtYmVycyBmcm9tIG9yZGVyZWQgbGlzdCAmIGJ1bGxldHMgZnJvbSB1bm9yZGVyZWQgbGlzdFxuICAgICYubm8tYnVsbGV0IHtcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IDA7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBtaXhpbiBmb3VuZGF0aW9uLXRleHQtYWxpZ25tZW50IHtcbiAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgICAgQGVhY2ggJGFsaWduIGluIChsZWZ0LCByaWdodCwgY2VudGVyLCBqdXN0aWZ5KSB7XG4gICAgICAgIEBpZiAkc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgLiN7JHNpemV9LXRleHQtI3skYWxpZ259IHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246ICRhbGlnbjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQGVsc2Uge1xuICAgICAgICAgIC50ZXh0LSN7JGFsaWdufSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiAkYWxpZ247XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vIElmIGB0cnVlYCwgYWxsIGVsZW1lbnRzIHdpbGwgaGF2ZSB0cmFuc3BhcmVudCBiYWNrZ3JvdW5kcyB3aGVuIHByaW50ZWQsIHRvIHNhdmUgb24gaW5rLlxuLy8vIEB0eXBlIEJvb2xlYW5cbi8vLyBAZ3JvdXAgZ2xvYmFsXG4kcHJpbnQtdHJhbnNwYXJlbnQtYmFja2dyb3VuZHM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBJZiBgdHJ1ZWAsIGRpc3BsYXlzIG5leHQgdG8gYWxsIGxpbmtzIHRoZWlyIFwiaHJlZlwiIHdoZW4gcHJpbnRlZC5cbi8vLyBAdHlwZSBCb29sZWFuXG4vLy8gQGdyb3VwIGdsb2JhbFxuJHByaW50LWhyZWZzOiB0cnVlICFkZWZhdWx0O1xuXG4vLyBzYXNzLWxpbnQ6ZGlzYWJsZS1hbGxcblxuQG1peGluIGZvdW5kYXRpb24tcHJpbnQtc3R5bGVzIHtcbiAgLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbiAgQG1lZGlhIHByaW50IHtcbiAgICAqIHtcbiAgICAgIEBpZiAkcHJpbnQtdHJhbnNwYXJlbnQtYmFja2dyb3VuZHMge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG5cbiAgICAgIGNvbG9yOiBibGFjayAhaW1wb3J0YW50OyAvLyBCbGFjayBwcmludHMgZmFzdGVyOiBoNWJwLmNvbS9zXG4gICAgICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgICAuaGlkZS1mb3ItcHJpbnQgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuICAgIHRhYmxlLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDsgfVxuICAgIHRoZWFkLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgICB0Ym9keS5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlLXJvdy1ncm91cCAhaW1wb3J0YW50OyB9XG4gICAgdHIuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDsgfVxuICAgIHRkLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG4gICAgdGguc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cblxuICAgIC8vIERpc3BsYXkgdGhlIFVSTCBvZiBhIGxpbmsgYWZ0ZXIgdGhlIHRleHRcbiAgICBhLFxuICAgIGE6dmlzaXRlZCB7IHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO31cbiAgICBAaWYgJHByaW50LWhyZWZzIHtcbiAgICAgIGFbaHJlZl06YWZ0ZXIgeyBjb250ZW50OiAnICgnIGF0dHIoaHJlZikgJyknOyB9XG4gICAgfVxuXG4gICAgLy8gRG9uJ3QgZGlzcGxheSB0aGUgVVJMIGZvciBpbWFnZXMgb3IgSmF2YVNjcmlwdC9pbnRlcm5hbCBsaW5rc1xuICAgIC5pciBhOmFmdGVyLFxuICAgIGFbaHJlZl49J2phdmFzY3JpcHQ6J106YWZ0ZXIsXG4gICAgYVtocmVmXj0nIyddOmFmdGVyIHsgY29udGVudDogJyc7IH1cblxuICAgIC8vIERpc3BsYXkgd2hhdCBhbiBhYmJyZXZpYXRpb24gc3RhbmRzIGZvciBhZnRlciB0aGUgdGV4dFxuICAgIGFiYnJbdGl0bGVdOmFmdGVyIHsgY29udGVudDogJyAoJyBhdHRyKHRpdGxlKSAnKSc7IH1cblxuICAgIC8vIFByZXZlbnQgcGFnZSBicmVha3MgaW4gdGhlIG1pZGRsZSBvZiBhIGJsb2NrcXVvdGUgb3IgcHJlZm9ybWF0dGVkIHRleHQgYmxvY2tcbiAgICBwcmUsXG4gICAgYmxvY2txdW90ZSB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkZGFyay1ncmF5O1xuICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICAgIH1cblxuICAgIC8vIGg1YnAuY29tL3RcbiAgICB0aGVhZCB7IGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cDsgfVxuXG4gICAgdHIsXG4gICAgaW1nIHsgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkOyB9XG5cbiAgICBpbWcgeyBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgfVxuXG4gICAgQHBhZ2UgeyBtYXJnaW46IDAuNWNtOyB9XG5cbiAgICBwLFxuICAgIGgyLFxuICAgIGgzIHtcbiAgICAgIG9ycGhhbnM6IDM7XG4gICAgICB3aWRvd3M6IDM7XG4gICAgfVxuXG4gICAgLy8gQXZvaWQgcGFnZSBicmVha3MgYWZ0ZXIgYSBoZWFkaW5nXG4gICAgaDIsXG4gICAgaDMgeyBwYWdlLWJyZWFrLWFmdGVyOiBhdm9pZDsgfVxuXG4gICAgLy8gSGVscGVyIHRvIHJlLWFsbG93IHBhZ2UgYnJlYWtzIGluIHRoZSBtaWRkbGUgb2YgY2VydGFpbiBlbGVtZW50cyAoZS5nLiBwcmUsIGJsb2NrcXVvdGUsIHRyKVxuICAgIC5wcmludC1icmVhay1pbnNpZGUge1xuICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF1dG87XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB4eS1ncmlkXG4vLy8vXG5cbi8vIE1hcmdpbiBHcmlkIGNsYXNzZXNcbkBtaXhpbiB4eS1iYXNlLWdyaWQtY2xhc3NlcyB7XG5cbiAgLy8gR3JpZCBDb250YWluZXJcbiAgLmdyaWQtY29udGFpbmVyIHtcbiAgICBAaW5jbHVkZSB4eS1ncmlkLWNvbnRhaW5lcjtcblxuICAgICYuZmx1aWQge1xuICAgICAgQGluY2x1ZGUgeHktZ3JpZC1jb250YWluZXIoMTAwJSk7XG4gICAgfVxuXG4gICAgJi5mdWxsIHtcbiAgICAgIEBpbmNsdWRlIHh5LWdyaWQtY29udGFpbmVyKDEwMCUsIDApO1xuICAgIH1cbiAgfVxuXG4gIC8vIEJhc2UgZ3JpZCBzdHlsZXNcbiAgLmdyaWQteCB7XG4gICAgQGluY2x1ZGUgeHktZ3JpZDtcbiAgfVxuXG4gIC5jZWxsIHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsLWJhc2UoKTtcbiAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYygkZ3JpZC1jb2x1bW5zLCBmYWxzZSwgJGd1dHRlci10eXBlOiBwYWRkaW5nKTtcblxuICAgICYuYXV0byB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLWJhc2UoYXV0byk7XG4gICAgfVxuXG4gICAgJi5zaHJpbmsge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1iYXNlKHNocmluayk7XG4gICAgfVxuXG4gIH1cbiAgLmdyaWQteCB7XG4gICAgPiAuYXV0byB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYyhhdXRvLCBmYWxzZSk7XG4gICAgfVxuXG4gICAgPiAuc2hyaW5rIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc3RhdGljKHNocmluaywgZmFsc2UpO1xuICAgIH1cbiAgfVxuXG4gIC8vIEF1dG8gd2lkdGhcbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCgpIHtcbiAgICAvLyBUaGlzIGlzIGEgYml0IG9mIGEgaGFjay93b3JrYXJvdW5kLCBzZWUgdGhlc2UgaXNzdWVzICYgUFJzIGZvciB0aGUgYmFja3N0b3J5OlxuICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS96dXJiL2ZvdW5kYXRpb24tc2l0ZXMvaXNzdWVzLzEwMjQ0XG4gICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3p1cmIvZm91bmRhdGlvbi1zaXRlcy9wdWxsLzEwMjIyIGFuZFxuICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS96dXJiL2ZvdW5kYXRpb24tc2l0ZXMvcHVsbC8xMDE2NFxuICAgIC5ncmlkLXgge1xuICAgICAgJHN0cjogXCI+IC4jeyQtemYtc2l6ZX0tc2hyaW5rLCA+IC4jeyQtemYtc2l6ZX0tZnVsbFwiO1xuICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcbiAgICAgICAgJHN0cjogJHN0ciArIFwiLCA+IC4jeyQtemYtc2l6ZX0tI3skaX1cIlxuICAgICAgfVxuICAgICAgI3skc3RyfSB7XG4gICAgICAgIGZsZXgtYmFzaXM6IGF1dG87XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCgpIHtcbiAgICAvLyBSZXNwb25zaXZlIFwiYXV0b1wiIG1vZGlmaWVyXG4gICAgQGlmIG5vdCgkLXpmLXNpemUgPT0gc21hbGwpIHtcbiAgICAgIC5ncmlkLXggPiAuI3skLXpmLXNpemV9LWF1dG8ge1xuICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLWJhc2UoYXV0byk7XG4gICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc3RhdGljKGF1dG8sIGZhbHNlKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAlLXh5LWNlbGwtYmFzZS1zaHJpbmstaG9yaXpvbnRhbC0jeyQtemYtc2l6ZX0ge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1iYXNlKHNocmluayk7XG4gICAgfVxuXG4gICAgLy8gUmVzcG9uc2l2ZSBcInNocmlua1wiIG1vZGlmaWVyXG4gICAgQGlmIG5vdCgkLXpmLXNpemUgPT0gc21hbGwpIHtcbiAgICAgIC5ncmlkLXggPiAuI3skLXpmLXNpemV9LXNocmluayB7XG4gICAgICAgIEBleHRlbmQgJS14eS1jZWxsLWJhc2Utc2hyaW5rLWhvcml6b250YWwtI3skLXpmLXNpemV9O1xuICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYyhzaHJpbmssIGZhbHNlKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBSZXNwb25zaXZlIHdpZHRoIG1vZGlmaWVyc1xuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgICAvLyBTaXppbmcgKHBlcmNlbnRhZ2UpXG4gICAgICAuZ3JpZC14ID4gLiN7JC16Zi1zaXplfS0jeyRpfSB7XG4gICAgICAgIEBleHRlbmQgJS14eS1jZWxsLWJhc2Utc2hyaW5rLWhvcml6b250YWwtI3skLXpmLXNpemV9O1xuICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYygkaSwgZmFsc2UsICRndXR0ZXItdHlwZTogcGFkZGluZyk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gUmVzZXQgd2lkdGggd2hlbiB1c2luZyBgLmdyaWQtbWFyZ2luLXhgIG5vdCBvbiBgLmdyaWQteGBcbiAgLmdyaWQtbWFyZ2luLXg6bm90KC5ncmlkLXgpID4gLmNlbGwge1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG5cbiAgLy8gUmVzZXQgaGVpZ2h0IHdoZW4gdXNpbmcgYC5ncmlkLW1hcmdpbi15YCBub3Qgb24gYC5ncmlkLXlgXG4gIC5ncmlkLW1hcmdpbi15Om5vdCguZ3JpZC15KSA+IC5jZWxsIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbn1cblxuQG1peGluIC14eS1icmVha3BvaW50LWNlbGwtY2xhc3NlcygkY2xhc3MtYnJlYWtwb2ludCwgJGd1dHRlci1icmVha3BvaW50LCAkdmVydGljYWwpIHtcbiAgJHByZWZpeDogaWYoJGNsYXNzLWJyZWFrcG9pbnQgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQsICcnLCAnI3skY2xhc3MtYnJlYWtwb2ludH0tJyk7XG4gID4gLiN7JHByZWZpeH1hdXRvIHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYyhhdXRvLCBmYWxzZSwgJGJyZWFrcG9pbnQ6ICRndXR0ZXItYnJlYWtwb2ludCwgJHZlcnRpY2FsOiAkdmVydGljYWwpO1xuICB9XG5cbiAgPiAuI3skcHJlZml4fXNocmluayB7XG4gICAgQGluY2x1ZGUgeHktY2VsbC1zdGF0aWMoc2hyaW5rLCBmYWxzZSwgJGJyZWFrcG9pbnQ6ICRndXR0ZXItYnJlYWtwb2ludCwgJHZlcnRpY2FsOiAkdmVydGljYWwpO1xuICB9XG5cbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcbiAgICAvLyBTaXppbmcgKHBlcmNlbnRhZ2UpXG4gICAgJGNsYXNzbmFtZTogaWYoJHZlcnRpY2FsLCAnLiN7JGNsYXNzLWJyZWFrcG9pbnR9LSN7JGl9JywgJy4jeyRjbGFzcy1icmVha3BvaW50fS0jeyRpfScpO1xuXG4gICAgPiAjeyRjbGFzc25hbWV9IHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc3RhdGljKCRpLCBmYWxzZSwgJGJyZWFrcG9pbnQ6ICRndXR0ZXItYnJlYWtwb2ludCwgJHZlcnRpY2FsOiAkdmVydGljYWwpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBNYXJnaW4gR3JpZCBjbGFzc2VzXG5AbWl4aW4geHktbWFyZ2luLWdyaWQtY2xhc3NlcyhcbiAgJGd1dHRlci1wb3NpdGlvbjogbGVmdCByaWdodCxcbiAgJHZlcnRpY2FsOiBmYWxzZSxcbiAgJHdyYXBwaW5nLXNlbGVjdG9yOiAnLmdyaWQtbWFyZ2luLXgnXG4pe1xuICAjeyR3cmFwcGluZy1zZWxlY3Rvcn0ge1xuICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJG5lZ2F0aXZlOiB0cnVlLCAkZ3V0dGVyLXBvc2l0aW9uOiAkZ3V0dGVyLXBvc2l0aW9uKTtcblxuICAgIC8vIEJhc2UgY2VsbCBzdHlsZXNcbiAgICA+IC5jZWxsIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc3RhdGljKCR2ZXJ0aWNhbDogJHZlcnRpY2FsKTtcbiAgICB9XG5cbiAgICAvLyBiYXNlIHN0eWxlcyBuZWVkIHRvIGFsbCBiZSBiZWZvcmUgdGhlIGF1dG8gYW5kIHNocmluayBzdHlsZXNcbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCkge1xuICAgICAgQGlmKHR5cGUtb2YoJGdyaWQtbWFyZ2luLWd1dHRlcnMpID09ICdtYXAnIGFuZCBtYXAtaGFzLWtleSgkZ3JpZC1tYXJnaW4tZ3V0dGVycywgJC16Zi1zaXplKSBhbmQgJC16Zi1zaXplICE9ICQtemYtemVyby1icmVha3BvaW50KSB7XG4gICAgICAgID4gLmNlbGwge1xuICAgICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc3RhdGljKCRicmVha3BvaW50OiAkLXpmLXNpemUsICR2ZXJ0aWNhbDogJHZlcnRpY2FsKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoKSB7XG5cbiAgICAgIC8vIFRoaXMgaXMgcHVyZWx5IGZvciByZXNwb25zaXZlIGd1dHRlcnMgLSB0aGUgbWFyZ2luIGdyaWQgaGFzIHRvIGdvIGJhY2sgYW5kIGFkanVzdCB3aWR0aHMgKG9yIGhlaWdodHMpXG4gICAgICAvLyBmb3IgYWxsIHByaW9yIGJyZWFrcG9pbnRzLlxuICAgICAgLy8gQXMgdGhlaXIgZ3V0dGVyIGlzIGRlZmluZWQgd2l0aCB0aGVpciB3aWR0aC9oZWlnaHQsIGV2ZW4gYnJlYWtwb2ludCB3aXRob3V0IGEgbmV3IG1hcmdpbiBtdXN0IGJlXG4gICAgICAvLyBnZW5lcmF0ZWQgdG8gbm90IGhhdmluZyB0aGVpciB3aWR0aC9oZWlnaHQgb3ZlcnJpZGVkIGJ5IHJlLWFkanVzdGVkIHNtYWxsZXIgYnJlYWtwb2ludHMuXG4gICAgICBAaWYodHlwZS1vZigkZ3JpZC1tYXJnaW4tZ3V0dGVycykgPT0gJ21hcCcgYW5kIG1hcC1oYXMta2V5KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCAkLXpmLXNpemUpKSB7XG4gICAgICAgIEBlYWNoICRicCBpbiAtemYtYnJlYWtwb2ludHMtbGVzcy10aGFuKCQtemYtc2l6ZSkge1xuICAgICAgICAgIEBpbmNsdWRlIC14eS1icmVha3BvaW50LWNlbGwtY2xhc3NlcygkYnAsICQtemYtc2l6ZSwgJHZlcnRpY2FsKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSAteHktYnJlYWtwb2ludC1jZWxsLWNsYXNzZXMoJC16Zi1zaXplLCAkLXpmLXNpemUsICR2ZXJ0aWNhbCk7XG4gICAgfVxuICB9XG59XG5cbi8vIFBhZGRpbmcgR3JpZCBjbGFzc2VzXG5AbWl4aW4geHktcGFkZGluZy1ncmlkLWNsYXNzZXMge1xuICAuZ3JpZC1wYWRkaW5nLXgge1xuXG4gICAgLy8gTmVnYXRpdmUgbWFyZ2luIGZvciBuZXN0ZWQgZ3JpZHNcbiAgICAuZ3JpZC1wYWRkaW5nLXgge1xuICAgICAgQGluY2x1ZGUgeHktZ3V0dGVycygkbmVnYXRpdmU6IHRydWUpO1xuICAgIH1cblxuICAgIC8vIE5lZ2F0aXZlIG1hcmdpbiBmb3IgZ3JpZHMgd2l0aGluIGBncmlkLWNvbnRhaW5lci9ncmlkLWNvbnRhaW5lci5mbHVpZGBcbiAgICAvLyBUaGlzIGFsbG93cyBtYXJnaW4gYW5kIHBhZGRpbmcgZ3JpZHMgdG8gbGluZSB1cCB3aXRoIGVhY2hvdGhlclxuICAgIC5ncmlkLWNvbnRhaW5lcjpub3QoLmZ1bGwpID4gJiB7XG4gICAgICBAaW5jbHVkZSB4eS1ndXR0ZXJzKCRuZWdhdGl2ZTogdHJ1ZSk7XG4gICAgfVxuXG4gICAgLy8gQmFzZSBjZWxsIHN0eWxlc1xuICAgID4gLmNlbGwge1xuICAgICAgQGluY2x1ZGUgeHktZ3V0dGVycygkZ3V0dGVyczogJGdyaWQtcGFkZGluZy1ndXR0ZXJzLCAkZ3V0dGVyLXR5cGU6IHBhZGRpbmcpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBCbG9jayBHcmlkIGNsYXNzZXNcbkBtaXhpbiB4eS1ibG9jay1ncmlkLWNsYXNzZXMoJG1hcmdpbi1ncmlkOiB0cnVlLCAkcGFkZGluZy1ncmlkOiB0cnVlKSB7XG4gIEBpZiAkcGFkZGluZy1ncmlkIHtcbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50IHtcbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJHh5LWJsb2NrLWdyaWQtbWF4IHtcbiAgICAgICAgLiN7JC16Zi1zaXplfS11cC0jeyRpfSB7XG4gICAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1sYXlvdXQoJG46ICRpLCAkc2VsZWN0b3I6ICcuY2VsbCcsICRndXR0ZXItb3V0cHV0OiBmYWxzZSwgJGd1dHRlci10eXBlOiBwYWRkaW5nLCAkYnJlYWtwb2ludDogJC16Zi1zaXplKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpZiAkbWFyZ2luLWdyaWQge1xuICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQge1xuICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkeHktYmxvY2stZ3JpZC1tYXgge1xuICAgICAgICAvLyBUaGlzIGlzIHB1cmVseSBmb3IgcmVzcG9uc2l2ZSBndXR0ZXJzIC0gdGhlIG1hcmdpbiBncmlkIGhhcyB0byBnbyBiYWNrIGFuZCBhZGp1c3Qgd2lkdGhzIChvciBoZWlnaHRzKVxuICAgICAgICAvLyBmb3IgcHJpb3IgYnJlYWtwb2ludHMgYmFzZWQgb24gdGhlIHJlc3BvbnNpdmUgZ3V0dGVyLlxuICAgICAgICBAaWYodHlwZS1vZigkZ3JpZC1tYXJnaW4tZ3V0dGVycykgPT0gJ21hcCcgYW5kIG1hcC1oYXMta2V5KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCAkLXpmLXNpemUpKSB7XG4gICAgICAgICAgQGVhY2ggJGJwIGluIC16Zi1icmVha3BvaW50cy1sZXNzLXRoYW4oJC16Zi1zaXplKSB7XG4gICAgICAgICAgICBAaWYobWFwLWhhcy1rZXkoJGdyaWQtbWFyZ2luLWd1dHRlcnMsICRicCkpIHtcbiAgICAgICAgICAgICAgLmdyaWQtbWFyZ2luLXguI3skYnB9LXVwLSN7JGl9IHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB4eS1ncmlkLWxheW91dCgkbjogJGksICRzZWxlY3RvcjogJy5jZWxsJywgJGd1dHRlci1vdXRwdXQ6IGZhbHNlLCAkZ3V0dGVyLXR5cGU6IG1hcmdpbiwgJGJyZWFrcG9pbnQ6ICQtemYtc2l6ZSk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJHh5LWJsb2NrLWdyaWQtbWF4IHtcbiAgICAgICAgLmdyaWQtbWFyZ2luLXguI3skLXpmLXNpemV9LXVwLSN7JGl9IHtcbiAgICAgICAgICBAaW5jbHVkZSB4eS1ncmlkLWxheW91dCgkbjogJGksICRzZWxlY3RvcjogJy5jZWxsJywgJGd1dHRlci1vdXRwdXQ6IGZhbHNlLCAkZ3V0dGVyLXR5cGU6IG1hcmdpbiwgJGJyZWFrcG9pbnQ6ICQtemYtc2l6ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gQ29sbGFwc2UgY2xhc3Nlc1xuQG1peGluIHh5LWNvbGxhcHNlLWdyaWQtY2xhc3NlcygkbWFyZ2luLWdyaWQ6IHRydWUsICRwYWRkaW5nLWdyaWQ6IHRydWUpIHtcbiAgQGVhY2ggJGJwIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgIEBpZiAkbWFyZ2luLWdyaWQge1xuICAgICAgLiN7JGJwfS1tYXJnaW4tY29sbGFwc2Uge1xuICAgICAgICBAaW5jbHVkZSB4eS1ncmlkLWNvbGxhcHNlKCRndXR0ZXItdHlwZTogbWFyZ2luLCAkbWluLWJyZWFrcG9pbnQ6ICRicCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGlmICRwYWRkaW5nLWdyaWQge1xuICAgICAgLiN7JGJwfS1wYWRkaW5nLWNvbGxhcHNlIHtcbiAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1jb2xsYXBzZSgkZ3V0dGVyLXR5cGU6IHBhZGRpbmcsICRtaW4tYnJlYWtwb2ludDogJGJwKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gT2Zmc2V0IGNsYXNzZXNcbkBtaXhpbiB4eS1vZmZzZXQtY2VsbC1jbGFzc2VzIHtcbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCB7XG4gICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcbiAgICAgIC8vIE9mZnNldHNcbiAgICAgICRvOiAkaSAtIDE7XG5cbiAgICAgIC4jeyQtemYtc2l6ZX0tb2Zmc2V0LSN7JG99IHtcbiAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1vZmZzZXQoJG8sICRndXR0ZXJzOiAkZ3JpZC1wYWRkaW5nLWd1dHRlcnMsICRndXR0ZXItdHlwZTogcGFkZGluZywgJGJyZWFrcG9pbnQ6ICQtemYtc2l6ZSk7XG4gICAgICB9XG5cbiAgICAgIC5ncmlkLW1hcmdpbi14ID4gLiN7JC16Zi1zaXplfS1vZmZzZXQtI3skb30ge1xuICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLW9mZnNldCgkbywgJGJyZWFrcG9pbnQ6ICQtemYtc2l6ZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIFZlcnRpY2FsIEdyaWQgY2xhc3Nlc1xuQG1peGluIHh5LXZlcnRpY2FsLWdyaWQtY2xhc3NlcyhcbiAgJG1hcmdpbi1ncmlkOiB0cnVlLFxuICAkcGFkZGluZy1ncmlkOiB0cnVlXG4pIHtcblxuICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCkge1xuICAgIEBpZiBub3QoJC16Zi1zaXplID09IHNtYWxsKSB7XG4gICAgfVxuICB9XG5cbiAgLmdyaWQteSB7XG4gICAgQGluY2x1ZGUgeHktZ3JpZCh2ZXJ0aWNhbCwgZmFsc2UpO1xuXG5cbiAgICA+IC5jZWxsIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtcmVzZXQoKTtcbiAgICB9XG5cbiAgICA+IC5hdXRvIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc3RhdGljKGF1dG8sIGZhbHNlLCAkdmVydGljYWw6IHRydWUpO1xuICAgIH1cblxuICAgID4gLnNocmluayB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYyhzaHJpbmssIGZhbHNlLCAkdmVydGljYWw6IHRydWUpO1xuICAgIH1cblxuXG4gICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCgpIHtcbiAgICAgIC8vIFRoaXMgaXMgYSBiaXQgb2YgYSBoYWNrL3dvcmthcm91bmQsIHNlZSB0aGVzZSBpc3N1ZXMgYW5kIFBScyBmb3IgdGhlIGJhY2tzdG9yeTpcbiAgICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS96dXJiL2ZvdW5kYXRpb24tc2l0ZXMvaXNzdWVzLzEwMjQ0XG4gICAgICAvLyBodHRwczovL2dpdGh1Yi5jb20venVyYi9mb3VuZGF0aW9uLXNpdGVzL3B1bGwvMTAyMjIgYW5kXG4gICAgICAvLyBodHRwczovL2dpdGh1Yi5jb20venVyYi9mb3VuZGF0aW9uLXNpdGVzL3B1bGwvMTAxNjRcbiAgICAgICRzdHI6IFwiPiAuI3skLXpmLXNpemV9LXNocmluaywgPiAuI3skLXpmLXNpemV9LWZ1bGxcIjtcbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgICAgICRzdHI6ICRzdHIgKyBcIiwgPiAuI3skLXpmLXNpemV9LSN7JGl9XCJcbiAgICAgIH1cbiAgICAgICN7JHN0cn0ge1xuICAgICAgICBmbGV4LWJhc2lzOiBhdXRvO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoKSB7XG4gICAgICAvLyBSZXNwb25zaXZlIFwiYXV0b1wiIG1vZGlmaWVyXG4gICAgICBAaWYgbm90KCQtemYtc2l6ZSA9PSBzbWFsbCkge1xuICAgICAgICA+IC4jeyQtemYtc2l6ZX0tYXV0byB7XG4gICAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1iYXNlKGF1dG8pO1xuICAgICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc3RhdGljKGF1dG8sIGZhbHNlLCAkYnJlYWtwb2ludDogJC16Zi1zaXplLCAkdmVydGljYWw6IHRydWUpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICUteHktY2VsbC1iYXNlLXNocmluay12ZXJ0aWNhbC0jeyQtemYtc2l6ZX0ge1xuICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLWJhc2Uoc2hyaW5rKTtcbiAgICAgIH1cblxuICAgICAgLy8gUmVzcG9uc2l2ZSBcInNocmlua1wiIG1vZGlmaWVyXG4gICAgICBAaWYgbm90KCQtemYtc2l6ZSA9PSBzbWFsbCkge1xuICAgICAgICA+IC4jeyQtemYtc2l6ZX0tc2hyaW5rIHtcbiAgICAgICAgICBAZXh0ZW5kICUteHktY2VsbC1iYXNlLXNocmluay12ZXJ0aWNhbC0jeyQtemYtc2l6ZX07XG4gICAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1zdGF0aWMoc2hyaW5rLCBmYWxzZSwgJGJyZWFrcG9pbnQ6ICQtemYtc2l6ZSwgJHZlcnRpY2FsOiB0cnVlKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBSZXNwb25zaXZlIHdpZHRoIG1vZGlmaWVyc1xuICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcbiAgICAgICAgLy8gU2l6aW5nIChwZXJjZW50YWdlKVxuICAgICAgICA+IC4jeyQtemYtc2l6ZX0tI3skaX0ge1xuICAgICAgICAgIEBleHRlbmQgJS14eS1jZWxsLWJhc2Utc2hyaW5rLXZlcnRpY2FsLSN7JC16Zi1zaXplfTtcbiAgICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYygkaSwgZmFsc2UsICR2ZXJ0aWNhbDogdHJ1ZSwgJGd1dHRlci10eXBlOiBwYWRkaW5nKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgfVxuICB9XG5cbiAgQGlmICRwYWRkaW5nLWdyaWQge1xuICAgIC5ncmlkLXBhZGRpbmcteSB7XG4gICAgICAvLyBOZWdhdGl2ZSBtYXJnaW4gZm9yIG5lc3RlZCBncmlkc1xuICAgICAgLmdyaWQtcGFkZGluZy15IHtcbiAgICAgICAgQGluY2x1ZGUgeHktZ3V0dGVycygkbmVnYXRpdmU6IHRydWUsICRndXR0ZXItcG9zaXRpb246IHRvcCBib3R0b20pO1xuICAgICAgfVxuXG4gICAgICAvLyBCYXNlIGNlbGwgc3R5bGVzXG4gICAgICA+IC5jZWxsIHtcbiAgICAgICAgQGluY2x1ZGUgeHktZ3V0dGVycygkZ3V0dGVyczogJGdyaWQtcGFkZGluZy1ndXR0ZXJzLCAkZ3V0dGVyLXR5cGU6IHBhZGRpbmcsICRndXR0ZXItcG9zaXRpb246IHRvcCBib3R0b20pO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpZiAkbWFyZ2luLWdyaWQge1xuICAgIEBpbmNsdWRlIHh5LW1hcmdpbi1ncmlkLWNsYXNzZXModG9wIGJvdHRvbSwgdHJ1ZSwgJy5ncmlkLW1hcmdpbi15Jyk7XG4gIH1cblxufVxuXG5AbWl4aW4geHktZnJhbWUtZ3JpZC1jbGFzc2VzKCR2ZXJ0aWNhbC1ncmlkOiB0cnVlLCAkbWFyZ2luLWdyaWQ6IHRydWUpIHtcbiAgLy8gRnJhbWVkIGdyaWQgc3R5bGVzXG4gIC5ncmlkLWZyYW1lIHtcbiAgICBAaW5jbHVkZSB4eS1ncmlkLWZyYW1lO1xuICB9XG5cbiAgLmNlbGwgLmdyaWQtZnJhbWUge1xuICAgIHdpZHRoOiAxMDAlOyAvLyBTYW1lIGFzIGluY2x1ZGUgd2l0aCAkbmVzdGVkLCBidXQgd2l0aCBsZXNzIGNzc1xuICB9XG5cbiAgLmNlbGwtYmxvY2sge1xuICAgIEBpbmNsdWRlIHh5LWNlbGwtYmxvY2soKTtcbiAgfVxuXG4gIC5jZWxsLWJsb2NrLXkge1xuICAgIEBpbmNsdWRlIHh5LWNlbGwtYmxvY2sodHJ1ZSk7XG4gIH1cblxuXG4gIC5jZWxsLWJsb2NrLWNvbnRhaW5lciB7XG4gICAgQGluY2x1ZGUgeHktY2VsbC1ibG9jay1jb250YWluZXIoKTtcbiAgfVxuXG5cbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludChmYWxzZSkge1xuXG4gICAgLiN7JC16Zi1zaXplfS1ncmlkLWZyYW1lIHtcbiAgICAgIEBpbmNsdWRlIHh5LWdyaWQtZnJhbWU7XG4gICAgfVxuXG4gICAgLmNlbGwgLiN7JC16Zi1zaXplfS1ncmlkLWZyYW1lIHtcbiAgICAgIHdpZHRoOiAxMDAlOyAvLyBTYW1lIGFzIGluY2x1ZGUgd2l0aCAkbmVzdGVkLCBidXQgd2l0aCBsZXNzIGNzc1xuICAgIH1cblxuICAgIC4jeyQtemYtc2l6ZX0tY2VsbC1ibG9jayB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLWJsb2NrKCk7XG4gICAgfVxuXG4gICAgLiN7JC16Zi1zaXplfS1jZWxsLWJsb2NrLWNvbnRhaW5lciB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLWJsb2NrLWNvbnRhaW5lcigpO1xuICAgIH1cblxuICAgIC4jeyQtemYtc2l6ZX0tY2VsbC1ibG9jay15IHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtYmxvY2sodHJ1ZSk7XG4gICAgfVxuICB9XG5cbiAgQGlmICR2ZXJ0aWNhbC1ncmlkIHtcbiAgICAuZ3JpZC15IHtcbiAgICAgICYuZ3JpZC1mcmFtZSB7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBAaW5jbHVkZSB4eS1ncmlkLWZyYW1lKHRydWUpO1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KGZhbHNlKSB7XG4gICAgICAgICYuI3skLXpmLXNpemV9LWdyaWQtZnJhbWUge1xuICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgIEBpbmNsdWRlIHh5LWdyaWQtZnJhbWUodHJ1ZSk7XG4gICAgICAgIH1cblxuICAgICAgfVxuICAgIH1cbiAgICAuY2VsbCB7XG4gICAgICAuZ3JpZC15LmdyaWQtZnJhbWUge1xuICAgICAgICBoZWlnaHQ6IDEwMCU7IC8vIFNhbWUgYXMgaW5jbHVkZSB3aXRoICRuZXN0ZWQsIGJ1dCB3aXRoIGxlc3MgY3NzXG4gICAgICB9XG4gICAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KGZhbHNlKSB7XG4gICAgICAgIC5ncmlkLXkuI3skLXpmLXNpemV9LWdyaWQtZnJhbWUge1xuICAgICAgICAgIGhlaWdodDogMTAwJTsgLy8gU2FtZSBhcyBpbmNsdWRlIHdpdGggJG5lc3RlZCwgYnV0IHdpdGggbGVzcyBjc3NcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAaWYgJG1hcmdpbi1ncmlkIHtcbiAgICBAaW5jbHVkZSB4eS1tYXJnaW4tZ3JpZC1jbGFzc2VzKHRvcCBib3R0b20sIHRydWUsICcuZ3JpZC1tYXJnaW4teScpO1xuICAgIC5ncmlkLWZyYW1lLmdyaWQtbWFyZ2luLXkge1xuICAgICAgQGluY2x1ZGUgeHktZ3JpZC1mcmFtZSh0cnVlLCBmYWxzZSwgJGdyaWQtbWFyZ2luLWd1dHRlcnMsICRpbmNsdWRlLWJhc2U6IGZhbHNlKTtcbiAgICB9XG4gICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludChmYWxzZSkge1xuICAgICAgLmdyaWQtbWFyZ2luLXkuI3skLXpmLXNpemV9LWdyaWQtZnJhbWUge1xuICAgICAgICBAaW5jbHVkZSB4eS1ncmlkLWZyYW1lKHRydWUsIGZhbHNlLCAkZ3JpZC1tYXJnaW4tZ3V0dGVycywgJC16Zi1zaXplLCBmYWxzZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIEZpbmFsIGNsYXNzZXNcbkBtaXhpbiBmb3VuZGF0aW9uLXh5LWdyaWQtY2xhc3NlcyhcbiAgJGJhc2UtZ3JpZDogdHJ1ZSxcbiAgJG1hcmdpbi1ncmlkOiB0cnVlLFxuICAkcGFkZGluZy1ncmlkOiB0cnVlLFxuICAkYmxvY2stZ3JpZDogdHJ1ZSxcbiAgJGNvbGxhcHNlOiB0cnVlLFxuICAkb2Zmc2V0OiB0cnVlLFxuICAkdmVydGljYWwtZ3JpZDogdHJ1ZSxcbiAgJGZyYW1lLWdyaWQ6IHRydWVcbikge1xuXG4gIC8vIEJhc2UgZ3JpZCBzdHlsZXNcbiAgQGlmKCRiYXNlLWdyaWQpIHtcbiAgICBAaW5jbHVkZSB4eS1iYXNlLWdyaWQtY2xhc3NlcygpO1xuICB9XG5cbiAgLy8gTWFyZ2luIGdyaWRcbiAgQGlmKCRtYXJnaW4tZ3JpZCkge1xuICAgIEBpbmNsdWRlIHh5LW1hcmdpbi1ncmlkLWNsYXNzZXMoKTtcbiAgfVxuXG4gIC8vIFBhZGRpbmcgZ3JpZFxuICBAaWYoJHBhZGRpbmctZ3JpZCkge1xuICAgIEBpbmNsdWRlIHh5LXBhZGRpbmctZ3JpZC1jbGFzc2VzKCk7XG4gIH1cblxuICAvLyBCbG9jayBncmlkXG4gIEBpZigkYmxvY2stZ3JpZCkge1xuICAgIEBpbmNsdWRlIHh5LWJsb2NrLWdyaWQtY2xhc3NlcygkbWFyZ2luLWdyaWQsICRwYWRkaW5nLWdyaWQpO1xuICB9XG5cbiAgLy8gQ29sbGFwc2UgZ3V0dGVyc1xuICBAaWYoJGNvbGxhcHNlKSB7XG4gICAgQGluY2x1ZGUgeHktY29sbGFwc2UtZ3JpZC1jbGFzc2VzKCRtYXJnaW4tZ3JpZCwgJHBhZGRpbmctZ3JpZCk7XG4gIH1cblxuICAvLyBPZmZzZXQgZ3V0dGVyc1xuICBAaWYoJG9mZnNldCkge1xuICAgIEBpbmNsdWRlIHh5LW9mZnNldC1jZWxsLWNsYXNzZXMoKTtcbiAgfVxuXG4gIC8vIFZlcnRpY2FsIGdyaWRcbiAgQGlmKCR2ZXJ0aWNhbC1ncmlkKSB7XG4gICAgQGluY2x1ZGUgeHktdmVydGljYWwtZ3JpZC1jbGFzc2VzKCRtYXJnaW4tZ3JpZCwgJHBhZGRpbmctZ3JpZCk7XG4gIH1cblxuICBAaWYgKCRmcmFtZS1ncmlkKSB7XG4gICAgQGluY2x1ZGUgeHktZnJhbWUtZ3JpZC1jbGFzc2VzKCR2ZXJ0aWNhbC1ncmlkLCAkbWFyZ2luLWdyaWQpXG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHh5LWdyaWRcbi8vLy9cblxuLy8vIENyZWF0ZSBndXR0ZXJzIGZvciBhIGNlbGwvY29udGFpbmVyLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtbWFyZ2luLWd1dHRlcnNdIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSBmb3IgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRndXR0ZXItdHlwZSBbbWFyZ2luXSAtIFR5cGUgb2YgZ3V0dGVyIHRvIG91dHB1dC4gQWNjZXB0cyBlaXRoZXIgbWFyZ2luIG9yIHBhZGRpbmcuXG4vLy8gQHBhcmFtIHtMaXN0fSAkZ3V0dGVyLXBvc2l0aW9uIFtyaWdodCBsZWZ0XSAtIFRoZSBwb3NpdGlvbiB0byBhcHBseSBndXR0ZXJzIHRvLiBBY2NlcHRzIGB0b3BgLCBgYm90dG9tYCwgYGxlZnRgLCBgcmlnaHRgIGluIGFueSBjb21iaW5hdGlvbi5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRuZWdhdGl2ZSBbZmFsc2VdIC0gV2hldGhlciB0byBhcHBseSB0aGUgZ3V0dGVyIGFzIGEgbmVnYXRpdmUgdmFsdWUuIENvbW1vbmx5IHVzZWQgZm9yIG5lc3RlZCBncmlkcy5cbkBtaXhpbiB4eS1ndXR0ZXJzKFxuICAkZ3V0dGVyczogJGdyaWQtbWFyZ2luLWd1dHRlcnMsXG4gICRndXR0ZXItdHlwZTogbWFyZ2luLFxuICAkZ3V0dGVyLXBvc2l0aW9uOiByaWdodCBsZWZ0LFxuICAkbmVnYXRpdmU6IGZhbHNlXG4pIHtcbiAgJG9wZXJhdG9yOiBpZigkbmVnYXRpdmUsICctJywgJycpO1xuXG4gIC8vIElmIHdlIGhhdmUgZGVjbGFyZWQgbmVnYXRpdmUgZ3V0dGVycywgZm9yY2UgdHlwZSB0byBgbWFyZ2luLlxuICAkZ3V0dGVyLXR5cGU6IGlmKCRuZWdhdGl2ZSwgJ21hcmdpbicsICRndXR0ZXItdHlwZSk7XG5cbiAgLy8gT3V0cHV0IG91ciBtYXJnaW4gZ3V0dGVycy5cbiAgQGlmICh0eXBlLW9mKCRndXR0ZXJzKSA9PSAnbWFwJykge1xuICAgIEBpbmNsdWRlIC16Zi1icmVha3BvaW50LXZhbHVlKGF1dG8sICRndXR0ZXJzKSB7XG4gICAgICAkZ3V0dGVyOiByZW0tY2FsYygkLXpmLWJwLXZhbHVlKSAvIDI7XG5cbiAgICAgIC8vIExvb3AgdGhyb3VnaCBlYWNoIGd1dHRlciBwb3NpdGlvblxuICAgICAgQGVhY2ggJHZhbHVlIGluICRndXR0ZXItcG9zaXRpb24ge1xuICAgICAgICAjeyRndXR0ZXItdHlwZX0tI3skdmFsdWV9OiB1bnF1b3RlKFwiI3skb3BlcmF0b3J9I3skZ3V0dGVyfVwiKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgKHR5cGUtb2YoJGd1dHRlcnMpID09ICdudW1iZXInKSB7XG4gICAgJGd1dHRlcjogcmVtLWNhbGMoJGd1dHRlcnMpIC8gMjtcblxuICAgIC8vIExvb3AgdGhyb3VnaCBlYWNoIGd1dHRlciBwb3NpdGlvblxuICAgIEBlYWNoICR2YWx1ZSBpbiAkZ3V0dGVyLXBvc2l0aW9uIHtcbiAgICAgICN7JGd1dHRlci10eXBlfS0jeyR2YWx1ZX06IHVucXVvdGUoXCIjeyRvcGVyYXRvcn0jeyRndXR0ZXJ9XCIpO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgeHktZ3JpZFxuLy8vL1xuXG4vLy8gQ3JlYXRlcyBhIG1heCB3aWR0aCBjb250YWluZXIsIGRlc2lnbmVkIHRvIGhvdXNlIHlvdXIgZ3JpZCBjb250ZW50LlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR3aWR0aCBbJGdyaWQtY29udGFpbmVyXSAtIGEgd2lkdGggdG8gbGltaXQgdGhlIGNvbnRhaW5lciB0by5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHBhZGRpbmcgWyRncmlkLWNvbnRhaW5lci1wYWRkaW5nXSAtIHBhZGRpbmdzIG9mIHRoZSBjb250YWluZXIuXG5AbWl4aW4geHktZ3JpZC1jb250YWluZXIoXG4gICR3aWR0aDogJGdyaWQtY29udGFpbmVyLFxuICAkcGFkZGluZzogJGdyaWQtY29udGFpbmVyLXBhZGRpbmdcbikge1xuICBAaW5jbHVkZSB4eS1ndXR0ZXJzKCRndXR0ZXJzOiAkcGFkZGluZywgJGd1dHRlci10eXBlOiBwYWRkaW5nKTtcblxuICBtYXgtd2lkdGg6ICR3aWR0aDtcbiAgbWFyZ2luOiAwIGF1dG87XG59XG5cbi8vLyBDcmVhdGVzIGEgY29udGFpbmVyIGZvciB5b3VyIGZsZXggY2VsbHMuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXJlY3Rpb24gW2hvcml6b250YWxdIC0gRWl0aGVyIGhvcml6b250YWwgb3IgdmVydGljYWwgZGlyZWN0aW9uIG9mIGNlbGxzIHdpdGhpbi5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICR3cmFwIFt0cnVlXSAtIElmIHRoZSBjZWxscyB3aXRoaW4gc2hvdWxkIHdyYXAgb3Igbm90LlxuQG1peGluIHh5LWdyaWQoXG4gICRkaXJlY3Rpb246IGhvcml6b250YWwsXG4gICR3cmFwOiB0cnVlXG4pIHtcbiAgJGRpcmVjdGlvbjogaWYoJGRpcmVjdGlvbiA9PSAnaG9yaXpvbnRhbCcsIHJvdywgY29sdW1uKTtcbiAgJHdyYXA6IGlmKCR3cmFwLCB3cmFwLCBub3dyYXApO1xuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogJGRpcmVjdGlvbiAkd3JhcDtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHh5LWdyaWRcbi8vLy9cblxuLy8vIENhbGN1bGF0ZSB0aGUgcGVyY2VudGFnZSBzaXplIG9mIGEgY2VsbC5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRzaXplIFskZ3JpZC1jb2x1bW5zXSAtIFNpemUgdG8gbWFrZSB0aGUgY2VsbC4gWW91IGNhbiBwYXNzIGEgdmFsdWUgaW4gbXVsdGlwbGUgZm9ybWF0cywgc3VjaCBhcyBgNmAsIGA1MCVgLCBgMSBvZiAyYCBvciBgMS8zYC5cbkBmdW5jdGlvbiB4eS1jZWxsLXNpemUoXG4gICRzaXplOiAkZ3JpZC1jb2x1bW5zXG4pIHtcbiAgLy8gUGFyc2luZyBwZXJjZW50cywgZGVjaW1hbHMsIG4gb2YgbiBhbmQgbnVtYmVyIGNvdW50c1xuICBAaWYgdHlwZS1vZigkc2l6ZSkgPT0gJ251bWJlcicge1xuICAgIEBpZiB1bml0KCRzaXplKSA9PSAnJScge1xuICAgICAgJHNpemU6ICRzaXplO1xuICAgIH1cbiAgICBAZWxzZSBpZiAkc2l6ZSA8IDEge1xuICAgICAgJHNpemU6IHBlcmNlbnRhZ2UoJHNpemUpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAkc2l6ZTogcGVyY2VudGFnZSgkc2l6ZSAvICRncmlkLWNvbHVtbnMpO1xuICAgIH1cbiAgfVxuXG4gIC8vIFBhcnNpbmcgXCJuIG9mIG5cIiBvciBcIm4vblwiIGV4cHJlc3Npb25zXG4gIEBlbHNlIGlmIHR5cGUtb2YoJHNpemUpID09ICdsaXN0JyB7XG4gICAgQGlmIGxlbmd0aCgkc2l6ZSkgIT0gMyB7XG4gICAgICBAZXJyb3IgJ1dyb25nIHN5bnRheCBmb3IgeHktY2VsbC1zaXplKCkuIFVzZSB0aGUgZm9ybWF0IFwibiBvZiBuXCIgb3IgXCJuL25cIi4nO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAkc2l6ZTogcGVyY2VudGFnZShudGgoJHNpemUsIDEpIC8gbnRoKCRzaXplLCAzKSk7XG4gICAgfVxuICB9XG4gIC8vIEFueXRoaW5nIGVsc2UgaXMgaW5jb3JyZWN0XG4gIEBlbHNlIHtcbiAgICBAZXJyb3IgJ1dyb25nIHN5bnRheCBmb3IgeHktY2VsbC1zaXplKCkuIFVzZSBhIG51bWJlciwgZGVjaW1hbCwgcGVyY2VudGFnZSwgb3IgXCJuIG9mIG5cIiAvIFwibi9uXCIuJztcbiAgfVxuXG4gIEByZXR1cm4gJHNpemU7XG59XG5cbi8vLyBTZXRzIGJhc2UgZmxleCBwcm9wZXJ0aWVzIGZvciBjZWxscy5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgW2Z1bGxdIC0gVGhlIHNpemUgb2YgeW91ciBjZWxsLiBBY2NlcHRzIGBmdWxsYCwgYGF1dG9gLCBgc2hyaW5rYCBvciBgZ3Jvd2AuXG5AbWl4aW4geHktY2VsbC1iYXNlKCRzaXplOiBmdWxsKSB7XG4gIEBpZigkc2l6ZSA9PSAnZnVsbCcpIHtcbiAgICAvLyBUaGlzIGlzIHRoZSBiYXNlIHN0eWxlLCBhbGwgb3RoZXJzIGluaGVyaXQgZnJvbSBpdFxuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIG1pbi1oZWlnaHQ6IDBweDtcbiAgICBtaW4td2lkdGg6IDBweDtcbiAgfVxuICBAZWxzZSBpZiAoJHNpemUgPT0gJ2F1dG8nKSB7XG4gICAgZmxleDogMSAxIDBweDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSB6ZXJvLXVuaXRcbiAgfVxuICBAZWxzZSBpZiAoJHNpemUgPT0gJ3NocmluaycpIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgfVxuICBAZWxzZSBpZiAoJHNpemUgPT0gJ2dyb3cnKSB7XG4gICAgZmxleDogMSAwIGF1dG87XG4gIH1cbn1cblxuLy8vIFJlc2V0cyBhIGNlbGxzIHdpZHRoIChvciBoZWlnaHQgaWYgdmVydGljYWwgaXMgdHJ1ZSkgYXMgd2VsbCBhcyBzdHJpcHMgaXRzIGd1dHRlcnMuXG4vLy9cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICR2ZXJ0aWNhbCBbZmFsc2VdIC0gU2V0IHRvIHRydWUgdG8gb3V0cHV0IHZlcnRpY2FsIChoZWlnaHQpIHN0eWxlcyByYXRoZXIgdGhhbiB3aWR0aHMuXG5AbWl4aW4geHktY2VsbC1yZXNldCgkdmVydGljYWw6IHRydWUpIHtcbiAgJGRpcmVjdGlvbjogaWYoJHZlcnRpY2FsID09IHRydWUsIHdpZHRoLCBoZWlnaHQpO1xuICAjeyRkaXJlY3Rpb259OiBhdXRvO1xuICBtYXgtI3skZGlyZWN0aW9ufTogbm9uZTtcbn1cblxuLy8gU2V0cyBvdXIgY2VsbCB3aWR0aHMgb3IgaGVpZ2h0cyBkZXBlbmRpbmcgb24gZ3V0dGVyIHR5cGUuXG5AbWl4aW4gLXh5LWNlbGwtcHJvcGVydGllcygkc2l6ZSwgJG1hcmdpbi1ndXR0ZXIsICR2ZXJ0aWNhbCkge1xuICAkZGlyZWN0aW9uOiBpZigkdmVydGljYWwgPT0gdHJ1ZSwgaGVpZ2h0LCB3aWR0aCk7XG4gIEBpZigkc2l6ZSA9PSAnZnVsbCcpIHtcbiAgICAkdmFsOiBpZigkbWFyZ2luLWd1dHRlciA9PSAwLCAxMDAlLCBjYWxjKDEwMCUgLSAje3JlbS1jYWxjKCRtYXJnaW4tZ3V0dGVyKX0pKTtcbiAgICAjeyRkaXJlY3Rpb259OiAkdmFsO1xuICB9XG4gIEBlbHNlIGlmICgkc2l6ZSA9PSAnYXV0bycpIHtcbiAgICAjeyRkaXJlY3Rpb259OiBhdXRvO1xuICAgICR2YWw6IGlmKCRtYXJnaW4tZ3V0dGVyID09IDAsIDEwMCUsIGNhbGMoMTAwJSAtICN7cmVtLWNhbGMoJG1hcmdpbi1ndXR0ZXIpfSkpO1xuICB9XG4gIEBlbHNlIGlmICgkc2l6ZSA9PSAnc2hyaW5rJykge1xuICAgICN7JGRpcmVjdGlvbn06IGF1dG87XG4gIH1cbiAgQGVsc2Uge1xuICAgICR2YWw6IGlmKCRtYXJnaW4tZ3V0dGVyID09IDAsICN7eHktY2VsbC1zaXplKCRzaXplKX0sIGNhbGMoI3t4eS1jZWxsLXNpemUoJHNpemUpfSAtICN7cmVtLWNhbGMoJG1hcmdpbi1ndXR0ZXIpfSkpO1xuICAgICN7JGRpcmVjdGlvbn06ICR2YWw7XG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBjZWxsIGZvciB5b3VyIGdyaWQuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkc2l6ZSBbZnVsbF0gLSBUaGUgc2l6ZSBvZiB5b3VyIGNlbGwuIENhbiBiZSBgZnVsbGAgKGRlZmF1bHQpIGZvciAxMDAlIHdpZHRoLCBgYXV0b2AgdG8gdXNlIHVwIGF2YWlsYWJsZSBzcGFjZSBhbmQgYHNocmlua2AgdG8gdXNlIHVwIG9ubHkgcmVxdWlyZWQgc3BhY2UuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZ3V0dGVyLW91dHB1dCBbdHJ1ZV0gLSBXaGV0aGVyIG9yIG5vdCB0byBvdXRwdXQgZ3V0dGVyc1xuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLW1hcmdpbi1ndXR0ZXJzXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgZm9yIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZ3V0dGVyLXR5cGUgW21hcmdpbl0gLSBNYXAgb3Igc2luZ2xlIHZhbHVlIGZvciBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7TGlzdH0gJGd1dHRlci1wb3NpdGlvbiBbcmlnaHQgbGVmdF0gLSBUaGUgcG9zaXRpb24gdG8gYXBwbHkgZ3V0dGVycyB0by4gQWNjZXB0cyBgdG9wYCwgYGJvdHRvbWAsIGBsZWZ0YCwgYHJpZ2h0YCBpbiBhbnkgY29tYmluYXRpb24uXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRicmVha3BvaW50IFtudWxsXSAtIFRoZSBuYW1lIG9mIHRoZSBicmVha3BvaW50IHNpemUgaW4geW91ciBndXR0ZXJzIG1hcCB0byBnZXQgdGhlIHNpemUgZnJvbS4gSWYgdXNpbmcgd2l0aCB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdGhpcyB3aWxsIGJlIHNldCBhdXRvbWF0aWNhbGx5IHVubGVzcyBtYW51YWxseSBlbnRlcmVkLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHZlcnRpY2FsIFtmYWxzZV0gLSBTZXQgdG8gdHJ1ZSB0byBvdXRwdXQgdmVydGljYWwgKGhlaWdodCkgc3R5bGVzIHJhdGhlciB0aGFuIHdpZHRocy5cbkBtaXhpbiB4eS1jZWxsKFxuICAkc2l6ZTogZnVsbCxcbiAgJGd1dHRlci1vdXRwdXQ6IHRydWUsXG4gICRndXR0ZXJzOiAkZ3JpZC1tYXJnaW4tZ3V0dGVycyxcbiAgJGd1dHRlci10eXBlOiBtYXJnaW4sXG4gICRndXR0ZXItcG9zaXRpb246IHJpZ2h0IGxlZnQsXG4gICRicmVha3BvaW50OiBudWxsLFxuICAkdmVydGljYWw6IGZhbHNlXG4pIHtcbiAgJGJwLWlzLWZhbGxiYWNrOiBmYWxzZTtcblxuICBAaWYoJGJyZWFrcG9pbnQgPT0gbnVsbCkge1xuICAgIC8vIElmIGAkYnAtc2l6ZWAgaXMgYXZhaWxhYmxlIHRoZW4gdXNlIHRoaXMsIG90aGVyd2lzZSByZXZlcnQgdG8gdGhlIHNtYWxsZXN0IGJwLlxuICAgIEBpZih2YXJpYWJsZS1leGlzdHMoLXpmLXNpemUpIGFuZCB0eXBlLW9mKCQtemYtc2l6ZSkgIT0gJ251bWJlcicpIGFuZCAkLXpmLXNpemUgIT0gbnVsbCB7XG4gICAgICAkYnJlYWtwb2ludDogJC16Zi1zaXplO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAkYnJlYWtwb2ludDogJC16Zi16ZXJvLWJyZWFrcG9pbnQ7XG4gICAgICAkYnAtaXMtZmFsbGJhY2s6IHRydWU7XG4gICAgfVxuICB9XG5cbiAgLy8gR2V0IHRoZSBndXR0ZXIgZm9yIHRoZSBnaXZlbiBicmVha3BvaW50L3ZhbHVlLlxuICAkZ3V0dGVyOiAtemYtZ2V0LWJwLXZhbCgkZ3V0dGVycywgJGJyZWFrcG9pbnQpO1xuICAvLyBJZiB0aGUgYnJlYWtwb2ludCBpcyBhIGZhbGxiYWNrLCB1c2UgYSBmYWxsYmFjayBndXR0ZXIgYXMgd2VsbFxuICBAaWYgKCRicC1pcy1mYWxsYmFjayA9PSB0cnVlIGFuZCAkZ3V0dGVyID09IG51bGwpIHtcbiAgICAkZ3V0dGVyOiAwO1xuICB9XG5cbiAgQGlmKCRndXR0ZXIgIT0gbnVsbCkge1xuICAgIC8vIEJhc2UgZmxleCBwcm9wZXJ0aWVzXG4gICAgQGluY2x1ZGUgeHktY2VsbC1iYXNlKCRzaXplKTtcblxuICAgIEBpZigkZ3V0dGVyLXR5cGUgPT0gJ21hcmdpbicpIHtcbiAgICAgIEBpbmNsdWRlIC14eS1jZWxsLXByb3BlcnRpZXMoJHNpemUsICRndXR0ZXIsICR2ZXJ0aWNhbCk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBpbmNsdWRlIC14eS1jZWxsLXByb3BlcnRpZXMoJHNpemUsIDAsICR2ZXJ0aWNhbCk7XG4gICAgfVxuXG4gICAgQGlmICRndXR0ZXItb3V0cHV0IHtcbiAgICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJGd1dHRlciwgJGd1dHRlci10eXBlLCAkZ3V0dGVyLXBvc2l0aW9uKTtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEB3YXJuICd4eS1jZWxsOiBubyBndXR0ZXJzIHdlcmUgZm91bmQgaW4gYCRndXR0ZXJzYCBmb3IgXCIkYnJlYWtwb2ludDogI3skYnJlYWtwb2ludH1cIiwgY2VsbCB3YXMgbm90IGdlbmVyYXRlZGAnXG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBzaW5nbGUgYnJlYWtwb2ludCBzaXplZCBncmlkLiBVc2VkIHRvIGdlbmVyYXRlIG91ciBncmlkIGNsYXNzZXMuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkc2l6ZSBbZnVsbF0gLSBUaGUgc2l6ZSBvZiB5b3VyIGNlbGwuIENhbiBiZSBgZnVsbGAgKGRlZmF1bHQpIGZvciAxMDAlIHdpZHRoLCBgYXV0b2AgdG8gdXNlIHVwIGF2YWlsYWJsZSBzcGFjZSBhbmQgYHNocmlua2AgdG8gdXNlIHVwIG9ubHkgcmVxdWlyZWQgc3BhY2UuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZ3V0dGVyLW91dHB1dCBbdHJ1ZV0gLSBXaGV0aGVyIG9yIG5vdCB0byBvdXRwdXQgZ3V0dGVyc1xuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLW1hcmdpbi1ndXR0ZXJzXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgZm9yIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZ3V0dGVyLXR5cGUgW21hcmdpbl0gLSBNYXAgb3Igc2luZ2xlIHZhbHVlIGZvciBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkYnJlYWtwb2ludCBbbnVsbF0gLSBUaGUgbmFtZSBvZiB0aGUgYnJlYWtwb2ludCBzaXplIGluIHlvdXIgZ3V0dGVycyBtYXAgdG8gZ2V0IHRoZSBzaXplIGZyb20uIElmIHVzaW5nIHdpdGggdGhlIGBicmVha3BvaW50KClgIG1peGluIHRoaXMgd2lsbCBiZSBzZXQgYXV0b21hdGljYWxseSB1bmxlc3MgbWFudWFsbHkgZW50ZXJlZC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICR2ZXJ0aWNhbCBbZmFsc2VdIC0gU2V0IHRvIHRydWUgdG8gb3V0cHV0IHZlcnRpY2FsIChoZWlnaHQpIHN0eWxlcyByYXRoZXIgdGhhbiB3aWR0aHMuXG5AbWl4aW4geHktY2VsbC1zdGF0aWMoXG4gICRzaXplOiBmdWxsLFxuICAkZ3V0dGVyLW91dHB1dDogdHJ1ZSxcbiAgJGd1dHRlcnM6ICRncmlkLW1hcmdpbi1ndXR0ZXJzLFxuICAkZ3V0dGVyLXR5cGU6IG1hcmdpbixcbiAgJGJyZWFrcG9pbnQ6ICQtemYtemVyby1icmVha3BvaW50LFxuICAkdmVydGljYWw6IGZhbHNlXG4pIHtcblxuICAkZ3V0dGVyOiAtemYtZ2V0LWJwLXZhbCgkZ3V0dGVycywgJGJyZWFrcG9pbnQpO1xuICAkZ3V0dGVyLXBvc2l0aW9uOiBpZigkdmVydGljYWwgPT0gdHJ1ZSwgdG9wIGJvdHRvbSwgbGVmdCByaWdodCk7XG5cbiAgQGlmKCRndXR0ZXItdHlwZSA9PSAnbWFyZ2luJykge1xuICAgIEBpbmNsdWRlIC14eS1jZWxsLXByb3BlcnRpZXMoJHNpemUsICRndXR0ZXIsICR2ZXJ0aWNhbCk7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBpbmNsdWRlIC14eS1jZWxsLXByb3BlcnRpZXMoJHNpemUsIDAsICR2ZXJ0aWNhbCk7XG4gIH1cblxuICAvLyBJZiB3ZSB3YW50IHRvIG91dHB1dCB0aGUgZ3V0dGVyc1xuICBAaWYoJGd1dHRlci1vdXRwdXQpIHtcbiAgICAvLyBUT0RPOiBGaWd1cmUgb3V0IGlmIHdlIG5lZWQgdG8gcGFzcyBicmVha3BvaW50IGluIGhlcmUgdG9vLlxuICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJGd1dHRlciwgJGd1dHRlci10eXBlLCAkZ3V0dGVyLXBvc2l0aW9uKTtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgeHktZ3JpZFxuLy8vL1xuXG4vLy8gU2l6ZXMgY2hpbGQgZWxlbWVudHMgc28gdGhhdCBgJG5gIG51bWJlciBvZiBpdGVtcyBhcHBlYXIgb24gZWFjaCByb3cuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJG4gLSBOdW1iZXIgb2YgZWxlbWVudHMgdG8gZGlzcGxheSBwZXIgcm93LlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkc2VsZWN0b3IgWycuY2VsbCddIC0gU2VsZWN0b3IocykgdG8gdXNlIGZvciBjaGlsZCBlbGVtZW50cy5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRndXR0ZXItb3V0cHV0IFt0cnVlXSAtIFdoZXRoZXIgb3Igbm90IHRvIG91dHB1dCBndXR0ZXJzXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtbWFyZ2luLWd1dHRlcnNdIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSBmb3IgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRndXR0ZXItdHlwZSBbbWFyZ2luXSAtIFR5cGUgb2YgZ3V0dGVyIHRvIG91dHB1dC4gQWNjZXB0cyBgbWFyZ2luYCBvciBgcGFkZGluZ2AuXG4vLy8gQHBhcmFtIHtMaXN0fSAkZ3V0dGVyLXBvc2l0aW9uIFtyaWdodCBsZWZ0XSAtIFRoZSBwb3NpdGlvbiB0byBhcHBseSBndXR0ZXJzIHRvLiBBY2NlcHRzIGB0b3BgLCBgYm90dG9tYCwgYGxlZnRgLCBgcmlnaHRgIGluIGFueSBjb21iaW5hdGlvbi5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGJyZWFrcG9pbnQgW251bGxdIC0gVGhlIGJyZWFrcG9pbnQgdG8gdXNlIGZvciB0aGUgY2VsbCBnZW5lcmF0aW9uLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHZlcnRpY2FsIFtmYWxzZV0gLSBTZXQgdG8gdHJ1ZSB0byBvdXRwdXQgdmVydGljYWwgKGhlaWdodCkgc3R5bGVzIHJhdGhlciB0aGFuIHdpZHRocy5cbkBtaXhpbiB4eS1ncmlkLWxheW91dChcbiAgJG4sXG4gICRzZWxlY3RvcjogJy5jZWxsJyxcbiAgJGd1dHRlci1vdXRwdXQ6IHRydWUsXG4gICRndXR0ZXJzOiAkZ3JpZC1tYXJnaW4tZ3V0dGVycyxcbiAgJGd1dHRlci10eXBlOiBtYXJnaW4sXG4gICRndXR0ZXItcG9zaXRpb246IHJpZ2h0IGxlZnQsXG4gICRicmVha3BvaW50OiBudWxsLFxuICAkdmVydGljYWw6IGZhbHNlXG4pIHtcbiAgJHNpemU6IHBlcmNlbnRhZ2UoMS8kbik7XG5cbiAgJiA+ICN7JHNlbGVjdG9yfSB7XG4gICAgQGluY2x1ZGUgeHktY2VsbCgkc2l6ZSwgJGd1dHRlci1vdXRwdXQsICRndXR0ZXJzLCAkZ3V0dGVyLXR5cGUsICRndXR0ZXItcG9zaXRpb24sICRicmVha3BvaW50LCAkdmVydGljYWwpO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB4eS1ncmlkXG4vLy8vXG5cbi8vLyBDb2xsYXBzZXMgdGhlIGdyaWQgYSBjZWxscyB3aXRoaW4gaXQuXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJHNlbGVjdG9yIFsuY2VsbF0gLSBUaGUgY2hpbGQgZWxlbWVudCB0byByZW1vdmUgdGhlIGd1dHRlciBmcm9tLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGd1dHRlci10eXBlIFttYXJnaW5dIC0gVGhlIHR5cGUgb2YgZ3V0dGVyIHRvIHJlbW92ZS5cbi8vLyBAcGFyYW0ge0xpc3R9ICRndXR0ZXItcG9zaXRpb24gW3JpZ2h0IGxlZnRdIC0gVGhlIHBvc2l0aW9ucyB0byByZW1vdmUgZ3V0dGVycyBmcm9tLiBBY2NlcHRzIGB0b3BgLCBgYm90dG9tYCwgYGxlZnRgLCBgcmlnaHRgIGluIGFueSBjb21iaW5hdGlvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRtaW4tYnJlYWtwb2ludCBbJC16Zi16ZXJvLWJyZWFrcG9pbnRdIC0gTWluaW11bSBicmVha3BvaW50IGluIGAkYnJlYWtwb2ludC1jbGFzc2VzYCBmb3Igd2hpY2ggdG8gY29sbGFwc2UgdGhlIGd1dHRlci5cbkBtaXhpbiB4eS1ncmlkLWNvbGxhcHNlKFxuICAkc2VsZWN0b3I6ICcuY2VsbCcsXG4gICRndXR0ZXItdHlwZTogbWFyZ2luLFxuICAkZ3V0dGVyLXBvc2l0aW9uOiByaWdodCBsZWZ0LFxuICAkbWluLWJyZWFrcG9pbnQ6ICQtemYtemVyby1icmVha3BvaW50XG4pIHtcbiAgLy8gRmlyc3QsIGxldHMgbmVnYXRlIGFueSBtYXJnaW5zIG9uIHRoZSB0b3AgbGV2ZWxcbiAgQGlmICgkZ3V0dGVyLXR5cGUgPT0gJ21hcmdpbicpIHtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1pbi1icmVha3BvaW50KSB7XG4gICAgICBAZWFjaCAkdmFsdWUgaW4gJGd1dHRlci1wb3NpdGlvbiB7XG4gICAgICAgIG1hcmdpbi0jeyR2YWx1ZX06IDA7XG4gICAgICB9XG5cbiAgICAgID4gI3skc2VsZWN0b3J9IHtcbiAgICAgICAgQGVhY2ggJHZhbHVlIGluICRndXR0ZXItcG9zaXRpb24ge1xuICAgICAgICAgIG1hcmdpbi0jeyR2YWx1ZX06IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAkZXhjbHVkZWQtYnBzOiAtemYtYnJlYWtwb2ludHMtbGVzcy10aGFuKCRtaW4tYnJlYWtwb2ludCk7XG5cbiAgICAvLyBPdXRwdXQgbmV3IHdpZHRocyB0byBub3QgaW5jbHVkZSBndXR0ZXJzXG4gICAgQGVhY2ggJGJwIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgICAgQGlmKHNsLWNvbnRhaW4oJGV4Y2x1ZGVkLWJwcywgJGJwKSkge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtaW4tYnJlYWtwb2ludCkge1xuICAgICAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgICAgICAgICAvLyBTaXppbmcgKHBlcmNlbnRhZ2UpXG4gICAgICAgICAgICA+IC4jeyRicH0tI3skaX0ge1xuICAgICAgICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYygkaSwgJGd1dHRlci1vdXRwdXQ6IGZhbHNlLCAkZ3V0dGVyLXR5cGU6IHBhZGRpbmcpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwKSB7XG4gICAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcbiAgICAgICAgICAgIC8vIFNpemluZyAocGVyY2VudGFnZSlcbiAgICAgICAgICAgID4gLiN7JGJwfS0jeyRpfSB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc3RhdGljKCRpLCAkZ3V0dGVyLW91dHB1dDogZmFsc2UsICRndXR0ZXItdHlwZTogcGFkZGluZyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1pbi1icmVha3BvaW50KSB7XG4gICAgICBAZWFjaCAkdmFsdWUgaW4gJGd1dHRlci1wb3NpdGlvbiB7XG4gICAgICAgIG1hcmdpbi0jeyR2YWx1ZX06IDA7XG4gICAgICB9XG5cbiAgICAgID4gI3skc2VsZWN0b3J9IHtcbiAgICAgICAgQGVhY2ggJHZhbHVlIGluICRndXR0ZXItcG9zaXRpb24ge1xuICAgICAgICAgIHBhZGRpbmctI3skdmFsdWV9OiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB4eS1ncmlkXG4vLy8vXG5cbi8vLyBPZmZzZXRzIGEgY29sdW1uIHRvIHRoZSByaWdodC9ib3R0b20gYnkgYCRuYCBjb2x1bW5zLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TGlzdH0gJG4gLSBTaXplIHRvIG9mZnNldCBieS4gWW91IGNhbiBwYXNzIGluIGFueSB2YWx1ZSBhY2NlcHRlZCBieSB0aGUgYHpmLWNlbGwoKWAgbWl4aW4sIHN1Y2ggYXMgYDZgLCBgNTAlYCwgb3IgYDEgb2YgMmAuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtbWFyZ2luLWd1dHRlcnNdIE1hcCBvZiBndXR0ZXJzIG9yIHNpbmdsZSB2YWx1ZSB0byB1c2UgZm9yIHJlc3BvbnNpdmUgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRndXR0ZXItdHlwZSBbbWFyZ2luXSBUaGUgdHlwZSBvZiBndXR0ZXIgdG8gdXNlLiBDYW4gYmUgYG1hcmdpbmAgb3IgYHBhZGRpbmdgXG4vLy8gQHBhcmFtIHtOdW1iZXJ8QXJyYXl8S2V5d29yZH0gJGJyZWFrcG9pbnQgWyQtemYtemVyby1icmVha3BvaW50XSAtIFNpbmdsZSB2YWx1ZSwgYnJlYWtwb2ludCBuYW1lLCBvciBsaXN0IG9mIGJyZWFrcG9pbnQgbmFtZXMgdG8gdXNlIGZvciBgJGd1dHRlcnNgLiBTZWUgYC16Zi1icmVha3BvaW50LXZhbHVlKClgLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHZlcnRpY2FsIFtmYWxzZV0gU2V0cyB0aGUgZGlyZWN0aW9uIG9mIHRoZSBvZmZzZXQuIElmIHNldCB0byB0cnVlIHdpbGwgYXBwbHkgbWFyZ2luLXRvcCBpbnN0ZWFkLlxuQG1peGluIHh5LWNlbGwtb2Zmc2V0KFxuICRuLFxuICRndXR0ZXJzOiAkZ3JpZC1tYXJnaW4tZ3V0dGVycyxcbiAkZ3V0dGVyLXR5cGU6IG1hcmdpbixcbiAkYnJlYWtwb2ludDogJC16Zi16ZXJvLWJyZWFrcG9pbnQsXG4gJHZlcnRpY2FsOiBmYWxzZVxuKSB7XG4gICRkaXJlY3Rpb246IGlmKCR2ZXJ0aWNhbCwgJ3RvcCcsICRnbG9iYWwtbGVmdCk7XG5cbiAgQGluY2x1ZGUgLXpmLWJyZWFrcG9pbnQtdmFsdWUoJGJyZWFrcG9pbnQsICRndXR0ZXJzKSB7XG4gICAgJGd1dHRlcjogcmVtLWNhbGMoJC16Zi1icC12YWx1ZSkgLyAyO1xuICAgICRndXR0ZXItbWFyZ2luOiBpZigkZ3V0dGVyLXR5cGUgPT0gJ21hcmdpbicsICRndXR0ZXIsIDApO1xuICAgICRzaXplOiBpZigkZ3V0dGVyLW1hcmdpbiA9PSAwLCAje3h5LWNlbGwtc2l6ZSgkbil9LCBjYWxjKCN7eHktY2VsbC1zaXplKCRuKX0gKyAjeyRndXR0ZXItbWFyZ2lufSkpO1xuXG4gICAgbWFyZ2luLSN7JGRpcmVjdGlvbn06ICN7JHNpemV9O1xuICB9XG59XG4iLCIvLy8gTW9kaWZpZXMgYSBncmlkIHRvIGdpdmUgaXQgXCJmcmFtZVwiIGJlaGF2aW9yIChubyBvdmVyZmxvdywgbm8gd3JhcCwgc3RyZXRjaCBiZWhhdmlvcilcbi8vL1xuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHZlcnRpY2FsIFtmYWxzZV0gLSBJcyBncmlkIHZlcnRpY2FsIG9yIGhvcml6b250YWwuIFNob3VsZCBtYXRjaCBncmlkLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJG5lc3RlZCBbZmFsc2VdIC0gSXMgZ3JpZCBuZXN0ZWQgb3Igbm90LiBJZiBuZXN0ZWQgaXMgdHJ1ZSB0aGlzIHNldHMgdGhlIGZyYW1lIHRvIDEwMCUgaGVpZ2h0LCBvdGhlcndpc2Ugd2lsbCBiZSAxMDB2aC5cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFtudWxsXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgZm9yIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRicmVha3BvaW50IFtudWxsXSAtIFRoZSBuYW1lIG9mIHRoZSBicmVha3BvaW50IHNpemUgaW4geW91ciBndXR0ZXJzIG1hcCB0byBnZXQgdGhlIHNpemUgZnJvbS5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRpbmNsdWRlLWJhc2UgW3RydWVdIC0gSW5jbHVkZSB0aGUgYmFzZSBzdHlsZXMgdGhhdCBkb24ndCB2YXJ5IHBlciBicmVha3BvaW50LlxuQG1peGluIHh5LWdyaWQtZnJhbWUoXG4gICR2ZXJ0aWNhbDogZmFsc2UsXG4gICRuZXN0ZWQ6IGZhbHNlLFxuICAkZ3V0dGVyczogbnVsbCxcbiAgJGJyZWFrcG9pbnQ6IG51bGwsXG4gICRpbmNsdWRlLWJhc2U6IHRydWVcbikge1xuXG4gIEBpZiAkaW5jbHVkZS1iYXNlIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgfVxuXG4gIEBpZiAkYnJlYWtwb2ludCA9PSBudWxsIGFuZCB0eXBlLW9mKCRndXR0ZXJzKSA9PSAnbWFwJyB7XG4gICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCgpIHtcbiAgICAgIEBpbmNsdWRlIHh5LWdyaWQtZnJhbWUoJHZlcnRpY2FsLCAkbmVzdGVkLCAkZ3V0dGVycywgJC16Zi1zaXplLCBmYWxzZSk7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICAvLyBHZXQgb3VyIGd1dHRlcnMgaWYgYXBwbGljYWJsZVxuICAgICRndXR0ZXI6IC16Zi1nZXQtYnAtdmFsKCRndXR0ZXJzLCAkYnJlYWtwb2ludCk7XG5cbiAgICAvLyBJZiB3ZSBoYXZlIGEgZ3V0dGVyLCBhZGQgaXQgdG8gdGhlIHdpZHRoL2hlaWdodFxuICAgIEBpZiAkZ3V0dGVyIHtcbiAgICAgIEBpZiAkdmVydGljYWwgPT0gdHJ1ZSB7XG4gICAgICAgICR1bml0OiBpZigkbmVzdGVkID09IHRydWUsIDEwMCUsIDEwMHZoKTtcbiAgICAgICAgJGd1dHRlcjogcmVtLWNhbGMoJGd1dHRlcik7XG4gICAgICAgIGhlaWdodDogY2FsYygjeyR1bml0fSArICN7JGd1dHRlcn0pO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgICR1bml0OiBpZigkbmVzdGVkID09IHRydWUsIDEwMCUsIDEwMHZ3KTtcbiAgICAgICAgJGd1dHRlcjogcmVtLWNhbGMoJGd1dHRlcik7XG4gICAgICAgIHdpZHRoOiBjYWxjKCN7JHVuaXR9ICsgI3skZ3V0dGVyfSk7XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBpZiAkdmVydGljYWwgPT0gdHJ1ZSB7XG4gICAgICAgIGhlaWdodDogaWYoJG5lc3RlZCA9PSB0cnVlLCAxMDAlLCAxMDB2aCk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgd2lkdGg6IGlmKCRuZXN0ZWQgPT0gdHJ1ZSwgMTAwJSwgMTAwdncpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gTW9kaWZpZXMgYSBjZWxsIHRvIGdpdmUgaXQgXCJibG9ja1wiIGJlaGF2aW9yIChvdmVyZmxvdyBhdXRvLCBpbmVydGlhbCBzY3JvbGxpbmcpXG4vLy9cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICR2ZXJ0aWNhbCBbZmFsc2VdIC0gSXMgZ3JpZCB2ZXJ0aWNhbCBvciBob3Jpem9udGFsLiBTaG91bGQgbWF0Y2ggZ3JpZC5cbkBtaXhpbiB4eS1jZWxsLWJsb2NrKFxuICAkdmVydGljYWw6IGZhbHNlXG4pIHtcbiAgJHByb3BlcnR5OiBpZigkdmVydGljYWwgPT0gdHJ1ZSwgJ292ZXJmbG93LXknLCAnb3ZlcmZsb3cteCcpO1xuXG4gIEBpZiAkdmVydGljYWwgPT0gdHJ1ZSB7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gIH0gQGVsc2Uge1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjtcbn1cblxuLy8vIENvbnRhaW5lciBmb3IgaW5zaWRlIGEgZ3JpZCBmcmFtZSBjb250YWluaW5nIG11bHRpcGxlIGJsb2Nrcy4gVHlwaWNhbGx5IHVzZWRcbi8vLyBhcyBhIG1vZGlmaWVyIGZvciBhIGAuY2VsbGAgdG8gYWxsb3cgdGhlIGNlbGwgdG8gcGFzcyBhbG9uZyBmbGV4IHNpemluZ1xuLy8vIGNvbnN0cmFpbnRzIC8gZnJvbSBwYXJlbnRzIHRvIGNoaWxkcmVuLlxuQG1peGluIHh5LWNlbGwtYmxvY2stY29udGFpbmVyKCkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xuXG4gID4gLmdyaWQteCB7XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYnV0dG9uXG4vLy8vXG5cbi8vLyBGb250IGZhbWlseSBmb3IgYnV0dG9uIGVsZW1lbnRzLlxuLy8vIEB0eXBlIEZvbnRcbiRidXR0b24tZm9udC1mYW1pbHk6IGluaGVyaXQgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGluc2lkZSBidXR0b25zLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tcGFkZGluZzogMC44NWVtIDFlbSAhZGVmYXVsdDtcblxuLy8vIE1hcmdpbiBhcm91bmQgYnV0dG9ucy5cbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLW1hcmdpbjogMCAwICRnbG9iYWwtbWFyZ2luIDAgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZpbGwgZm9yIGJ1dHRvbnMuIENhbiBlaXRoZXIgYmUgYHNvbGlkYCBvciBgaG9sbG93YC5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kYnV0dG9uLWZpbGw6IHNvbGlkICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIENvbG9yXG4kYnV0dG9uLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvbiBob3ZlciBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBDb2xvclxuJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyOiBzY2FsZS1jb2xvcigkYnV0dG9uLWJhY2tncm91bmQsICRsaWdodG5lc3M6IC0xNSUpICFkZWZhdWx0O1xuXG4vLy8gRm9udCBjb2xvciBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBBbHRlcm5hdGl2ZSBmb250IGNvbG9yIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tY29sb3ItYWx0OiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgcmFkaXVzIGZvciBidXR0b25zLCBkZWZhdWx0ZWQgdG8gZ2xvYmFsLXJhZGl1cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRidXR0b24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciB3aWR0aCBmb3IgaG9sbG93IG91dGxpbmUgYnV0dG9uc1xuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbi1ob2xsb3ctYm9yZGVyLXdpZHRoOiAxcHggIWRlZmF1bHQ7XG5cbi8vLyBTaXplcyBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBNYXBcbiRidXR0b24tc2l6ZXM6IChcbiAgdGlueTogMC42cmVtLFxuICBzbWFsbDogMC43NXJlbSxcbiAgZGVmYXVsdDogMC45cmVtLFxuICBsYXJnZTogMS4yNXJlbSxcbikgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvcmluZyBjbGFzc2VzLiBBIG1hcCBvZiBjbGFzc2VzIHRvIG91dHB1dCBpbiB5b3VyIENTUywgbGlrZSBgLnNlY29uZGFyeWAsIGAuc3VjY2Vzc2AsIGFuZCBzbyBvbi5cbi8vLyBAdHlwZSBNYXBcbiRidXR0b24tcGFsZXR0ZTogJGZvdW5kYXRpb24tcGFsZXR0ZSAhZGVmYXVsdDtcblxuLy8vIG9wYWNpdHkgZm9yIGEgZGlzYWJsZWQgYnV0dG9uLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tb3BhY2l0eS1kaXNhYmxlZDogMC4yNSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgbGlnaHRuZXNzIG9uIGhvdmVyIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyLWxpZ2h0bmVzczogLTIwJSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIGxpZ2h0bmVzcyBvbiBob3ZlciBmb3IgaG9sbG93IGJ1dHRvbnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnV0dG9uLWhvbGxvdy1ob3Zlci1saWdodG5lc3M6IC01MCUgIWRlZmF1bHQ7XG5cbi8vIEludGVybmFsOiBmbGlwIGZyb20gbWFyZ2luLXJpZ2h0IHRvIG1hcmdpbi1sZWZ0IGZvciBkZWZhdWx0c1xuQGlmICRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gJ3J0bCcge1xuICAkYnV0dG9uLW1hcmdpbjogMCAwICRnbG9iYWwtbWFyZ2luICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xufVxuXG4vLy8gdHJhbnNpdGlvbnMgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2Utb3V0LCBjb2xvciAwLjI1cyBlYXNlLW91dCAhZGVmYXVsdDtcblxuLy8vIEFkZGl0aW9uYWwgcmVzcG9uc2l2ZSBjbGFzc2VzIGZvciAuZXhwYW5kZWRcbi8vLyBAdHlwZSBCb29sZWFuXG4kYnV0dG9uLXJlc3BvbnNpdmUtZXhwYW5kZWQ6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyBUT0RPOiBEb2N1bWVudCBidXR0b24tYmFzZSgpIG1peGluXG5AbWl4aW4gYnV0dG9uLWJhc2Uge1xuICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbWFyZ2luOiAkYnV0dG9uLW1hcmdpbjtcblxuICBAaWYgKHR5cGUtb2YoJGJ1dHRvbi1wYWRkaW5nKSA9PSAnbWFwJykge1xuICAgIEBlYWNoICRzaXplLCAkcGFkZGluZyBpbiAkYnV0dG9uLXBhZGRpbmcge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgICAgICBwYWRkaW5nOiAkcGFkZGluZztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIHBhZGRpbmc6ICRidXR0b24tcGFkZGluZztcbiAgfVxuXG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiAkYnV0dG9uLXJhZGl1cztcbiAgdHJhbnNpdGlvbjogJGJ1dHRvbi10cmFuc2l0aW9uO1xuICBmb250LWZhbWlseTogJGJ1dHRvbi1mb250LWZhbWlseTtcbiAgZm9udC1zaXplOiBtYXAtZ2V0KCRidXR0b24tc2l6ZXMsIGRlZmF1bHQpO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tdmVuZG9yLXByZWZpeGVzXG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLy8vIEV4cGFuZHMgYSBidXR0b24gdG8gbWFrZSBpdCBmdWxsLXdpZHRoLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGV4cGFuZCBbdHJ1ZV0gLSBTZXQgdG8gYHRydWVgIHRvIGVuYWJsZSB0aGUgZXhwYW5kIGJlaGF2aW9yLiBTZXQgdG8gYGZhbHNlYCB0byByZXZlcnNlIHRoaXMgYmVoYXZpb3IuXG5AbWl4aW4gYnV0dG9uLWV4cGFuZCgkZXhwYW5kOiB0cnVlKSB7XG4gIEBpZiAkZXhwYW5kIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbiAgQGVsc2Uge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXJnaW46ICRidXR0b24tbWFyZ2luO1xuICB9XG59XG5cbi8vLyBTZXRzIHRoZSB2aXN1YWwgc3R5bGUgb2YgYSBidXR0b24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQgWyRidXR0b24tYmFja2dyb3VuZF0gLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBidXR0b24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQtaG92ZXIgWyRidXR0b24tYmFja2dyb3VuZC1ob3Zlcl0gLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBidXR0b24gb24gaG92ZXIuIFNldCB0byBgYXV0b2AgdG8gaGF2ZSB0aGUgbWl4aW4gYXV0b21hdGljYWxseSBnZW5lcmF0ZSBhIGhvdmVyIGNvbG9yLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGJ1dHRvbi1jb2xvcl0gLSBUZXh0IGNvbG9yIG9mIHRoZSBidXR0b24uIFNldCB0byBgYXV0b2AgdG8gYXV0b21hdGljYWxseSBnZW5lcmF0ZSBhIGNvbG9yIGJhc2VkIG9uIHRoZSBiYWNrZ3JvdW5kIGNvbG9yLlxuQG1peGluIGJ1dHRvbi1zdHlsZShcbiAgJGJhY2tncm91bmQ6ICRidXR0b24tYmFja2dyb3VuZCxcbiAgJGJhY2tncm91bmQtaG92ZXI6ICRidXR0b24tYmFja2dyb3VuZC1ob3ZlcixcbiAgJGNvbG9yOiAkYnV0dG9uLWNvbG9yLFxuICAkYmFja2dyb3VuZC1ob3Zlci1saWdodG5lc3M6ICRidXR0b24tYmFja2dyb3VuZC1ob3Zlci1saWdodG5lc3Ncbikge1xuICBAaWYgJGNvbG9yID09IGF1dG8ge1xuICAgICRjb2xvcjogY29sb3ItcGljay1jb250cmFzdCgkYmFja2dyb3VuZCwgKCRidXR0b24tY29sb3IsICRidXR0b24tY29sb3ItYWx0KSk7XG4gIH1cblxuICBAaWYgJGJhY2tncm91bmQtaG92ZXIgPT0gYXV0byB7XG4gICAgJGJhY2tncm91bmQtaG92ZXI6IHNjYWxlLWNvbG9yKCRiYWNrZ3JvdW5kLCAkbGlnaHRuZXNzOiAkYmFja2dyb3VuZC1ob3Zlci1saWdodG5lc3MpO1xuICB9XG5cbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gIGNvbG9yOiAkY29sb3I7XG5cbiAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQtaG92ZXI7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgfVxufVxuXG4vLy8gUmVtb3ZlcyBiYWNrZ3JvdW5kIGZpbGwgb24gaG92ZXIgYW5kIGZvY3VzIGZvciBob2xsb3cgYnV0dG9ucy5cbkBtaXhpbiBidXR0b24taG9sbG93IHtcbiAgJixcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAmLmRpc2FibGVkLFxuICAmW2Rpc2FibGVkXSB7XG4gICAgJixcbiAgICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gYnV0dG9uLWhvbGxvdy1zdHlsZShcbiAgJGNvbG9yOiAkYnV0dG9uLWJhY2tncm91bmQsXG4gICRob3Zlci1saWdodG5lc3M6ICRidXR0b24taG9sbG93LWhvdmVyLWxpZ2h0bmVzcyxcbiAgJGJvcmRlci13aWR0aDogJGJ1dHRvbi1ob2xsb3ctYm9yZGVyLXdpZHRoXG4pIHtcbiAgJGNvbG9yLWhvdmVyOiBzY2FsZS1jb2xvcigkY29sb3IsICRsaWdodG5lc3M6ICRob3Zlci1saWdodG5lc3MpO1xuXG4gIGJvcmRlcjogJGJvcmRlci13aWR0aCBzb2xpZCAkY29sb3I7XG4gIGNvbG9yOiAkY29sb3I7XG5cbiAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAkY29sb3ItaG92ZXI7XG4gICAgY29sb3I6ICRjb2xvci1ob3ZlcjtcbiAgICAmLmRpc2FibGVkLFxuICAgICZbZGlzYWJsZWRdIHtcbiAgICAgIGJvcmRlcjogJGJvcmRlci13aWR0aCBzb2xpZCAkY29sb3I7XG4gICAgICBjb2xvcjogJGNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBkaXNhYmxlZCBzdHlsZXMgdG8gYSBidXR0b24gYnkgZmFkaW5nIHRoZSBlbGVtZW50LCByZXNldGluZyB0aGUgY3Vyc29yLCBhbmQgZGlzYWJsaW5nIHBvaW50ZXIgZXZlbnRzLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kIFskYnV0dG9uLWJhY2tncm91bmRdIC0gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgZGlzYWJsZWQgYnV0dG9uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGJ1dHRvbi1jb2xvcl0gLSBUZXh0IGNvbG9yIG9mIHRoZSBkaXNhYmxlZCBidXR0b24uIFNldCB0byBgYXV0b2AgdG8gaGF2ZSB0aGUgbWl4aW4gYXV0b21hdGljYWxseSBnZW5lcmF0ZSBhIGNvbG9yIGJhc2VkIG9uIHRoZSBiYWNrZ3JvdW5kIGNvbG9yLlxuQG1peGluIGJ1dHRvbi1kaXNhYmxlZChcbiAgJGJhY2tncm91bmQ6ICRidXR0b24tYmFja2dyb3VuZCxcbiAgJGNvbG9yOiAkYnV0dG9uLWNvbG9yXG4pIHtcbiAgQGlmICRjb2xvciA9PSBhdXRvIHtcbiAgICAkY29sb3I6IGNvbG9yLXBpY2stY29udHJhc3QoJGJhY2tncm91bmQsICgkYnV0dG9uLWNvbG9yLCAkYnV0dG9uLWNvbG9yLWFsdCkpO1xuICB9XG5cbiAgb3BhY2l0eTogJGJ1dHRvbi1vcGFjaXR5LWRpc2FibGVkO1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuXG4gICYsICY6aG92ZXIsICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cbn1cblxuLy8vIEFkZHMgYSBkcm9wZG93biBhcnJvdyB0byBhIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHNpemUgWzAuNGVtXSAtIFNpemUgb2YgdGhlIGFycm93LiBXZSByZWNvbW1lbmQgdXNpbmcgYW4gYGVtYCB2YWx1ZSBzbyB0aGUgdHJpYW5nbGUgc2NhbGVzIHdoZW4gdXNlZCBpbnNpZGUgZGlmZmVyZW50IHNpemVzIG9mIGJ1dHRvbnMuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFt3aGl0ZV0gLSBDb2xvciBvZiB0aGUgYXJyb3cuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRvZmZzZXQgWyRidXR0b24tcGFkZGluZ10gLSBEaXN0YW5jZSBiZXR3ZWVuIHRoZSBhcnJvdyBhbmQgdGhlIHRleHQgb2YgdGhlIGJ1dHRvbi4gRGVmYXVsdHMgdG8gd2hhdGV2ZXIgdGhlIHJpZ2h0IHBhZGRpbmcgb2YgYSBidXR0b24gaXMuXG5AbWl4aW4gYnV0dG9uLWRyb3Bkb3duKFxuICAkc2l6ZTogMC40ZW0sXG4gICRjb2xvcjogJHdoaXRlLFxuICAkb2Zmc2V0OiBnZXQtc2lkZSgkYnV0dG9uLXBhZGRpbmcsIHJpZ2h0KVxuKSB7XG4gICY6OmFmdGVyIHtcbiAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJHNpemUsICRjb2xvciwgZG93bik7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMC40ZW07IC8vIEFsaWducyB0aGUgYXJyb3cgd2l0aCB0aGUgdGV4dCBvZiB0aGUgYnV0dG9uXG5cbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZmxvYXQ6ICN7JGdsb2JhbC1yaWdodH07XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJG9mZnNldDtcbiAgfVxufVxuXG4vLy8gQWRkcyBhbGwgc3R5bGVzIGZvciBhIGJ1dHRvbi4gRm9yIG1vcmUgZ3JhbnVsYXIgY29udHJvbCBvdmVyIHN0eWxlcywgdXNlIHRoZSBpbmRpdmlkdWFsIGJ1dHRvbiBtaXhpbnMuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZXhwYW5kIFtmYWxzZV0gLSBTZXQgdG8gYHRydWVgIHRvIG1ha2UgdGhlIGJ1dHRvbiBmdWxsLXdpZHRoLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kIFskYnV0dG9uLWJhY2tncm91bmRdIC0gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgYnV0dG9uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kLWhvdmVyIFskYnV0dG9uLWJhY2tncm91bmQtaG92ZXJdIC0gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgYnV0dG9uIG9uIGhvdmVyLiBTZXQgdG8gYGF1dG9gIHRvIGhhdmUgdGhlIG1peGluIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGUgYSBob3ZlciBjb2xvci5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRidXR0b24tY29sb3JdIC0gVGV4dCBjb2xvciBvZiB0aGUgYnV0dG9uLiBTZXQgdG8gYGF1dG9gIHRvIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGUgYSBjb2xvciBiYXNlZCBvbiB0aGUgYmFja2dyb3VuZCBjb2xvci5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzdHlsZSBbc29saWRdIC0gU2V0IHRvIGBob2xsb3dgIHRvIGNyZWF0ZSBhIGhvbGxvdyBidXR0b24uIFRoZSBjb2xvciBkZWZpbmVkIGluIGAkYmFja2dyb3VuZGAgd2lsbCBiZSB1c2VkIGFzIHRoZSBwcmltYXJ5IGNvbG9yIG9mIHRoZSBidXR0b24uXG5AbWl4aW4gYnV0dG9uKFxuICAkZXhwYW5kOiBmYWxzZSxcbiAgJGJhY2tncm91bmQ6ICRidXR0b24tYmFja2dyb3VuZCxcbiAgJGJhY2tncm91bmQtaG92ZXI6ICRidXR0b24tYmFja2dyb3VuZC1ob3ZlcixcbiAgJGNvbG9yOiAkYnV0dG9uLWNvbG9yLFxuICAkc3R5bGU6ICRidXR0b24tZmlsbFxuKSB7XG4gIEBpbmNsdWRlIGJ1dHRvbi1iYXNlO1xuXG4gIEBpZiAkc3R5bGUgPT0gc29saWQge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1zdHlsZSgkYmFja2dyb3VuZCwgJGJhY2tncm91bmQtaG92ZXIsICRjb2xvcik7XG4gIH1cbiAgQGVsc2UgaWYgJHN0eWxlID09IGhvbGxvdyB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdztcbiAgICBAaW5jbHVkZSBidXR0b24taG9sbG93LXN0eWxlKCRiYWNrZ3JvdW5kKTtcbiAgfVxuXG4gIEBpZiAkZXhwYW5kIHtcbiAgICBAaW5jbHVkZSBidXR0b24tZXhwYW5kO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWJ1dHRvbiB7XG4gIC5idXR0b24ge1xuICAgIEBpbmNsdWRlIGJ1dHRvbjtcblxuICAgIC8vIFNpemVzXG4gICAgQGVhY2ggJHNpemUsICR2YWx1ZSBpbiBtYXAtcmVtb3ZlKCRidXR0b24tc2l6ZXMsIGRlZmF1bHQpIHtcbiAgICAgICYuI3skc2l6ZX0ge1xuICAgICAgICBmb250LXNpemU6ICR2YWx1ZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmV4cGFuZGVkIHsgQGluY2x1ZGUgYnV0dG9uLWV4cGFuZDsgfVxuXG4gICAgQGlmICRidXR0b24tcmVzcG9uc2l2ZS1leHBhbmRlZCB7XG4gICAgICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgjeyRzaXplfSBvbmx5KSB7XG4gICAgICAgICAgJi4jeyRzaXplfS1vbmx5LWV4cGFuZGVkIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1leHBhbmQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIEBpZiAkc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgjeyRzaXplfSBkb3duKSB7XG4gICAgICAgICAgICAmLiN7JHNpemV9LWRvd24tZXhwYW5kZWQge1xuICAgICAgICAgICAgICBAaW5jbHVkZSBidXR0b24tZXhwYW5kO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoI3skc2l6ZX0pIHtcbiAgICAgICAgICAgICYuI3skc2l6ZX0tZXhwYW5kZWQge1xuICAgICAgICAgICAgICBAaW5jbHVkZSBidXR0b24tZXhwYW5kO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIENvbG9yc1xuICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGJ1dHRvbi1wYWxldHRlIHtcbiAgICAgIEBpZiAkYnV0dG9uLWZpbGwgIT0gaG9sbG93IHtcbiAgICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKCRjb2xvciwgYXV0bywgYXV0byk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdy1zdHlsZSgkY29sb3IpO1xuICAgICAgICB9XG5cbiAgICAgICAgJi4jeyRuYW1lfS5kcm9wZG93bjo6YWZ0ZXIge1xuICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRjb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIERpc2FibGVkIHN0eWxlXG4gICAgJi5kaXNhYmxlZCxcbiAgICAmW2Rpc2FibGVkXSB7XG4gICAgICBAaW5jbHVkZSBidXR0b24tZGlzYWJsZWQ7XG5cbiAgICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGJ1dHRvbi1wYWxldHRlIHtcbiAgICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWRpc2FibGVkKCRjb2xvciwgYXV0byk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBIb2xsb3cgc3R5bGVcbiAgICBAaWYgJGJ1dHRvbi1maWxsICE9IGhvbGxvdyB7XG4gICAgICAmLmhvbGxvdyB7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3c7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3ctc3R5bGU7XG5cbiAgICAgICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkYnV0dG9uLXBhbGV0dGUge1xuICAgICAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdy1zdHlsZSgkY29sb3IpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIENsZWFyIHN0eWxlXG4gICAgQGlmICRidXR0b24tZmlsbCAhPSBjbGVhciB7XG4gICAgICAmLmNsZWFyIHtcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdztcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdy1zdHlsZTtcblxuICAgICAgICAmLCAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgICAgICAmLCAmLmRpc2FibGVkLCAmW2Rpc2FibGVkXSB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGJ1dHRvbi1wYWxldHRlIHtcbiAgICAgICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3ctc3R5bGUoJGNvbG9yKTtcblxuICAgICAgICAgICAgJiwgJjpob3ZlcixcbiAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAmLFxuICAgICAgICAgICAgICAmLmRpc2FibGVkLFxuICAgICAgICAgICAgICAmW2Rpc2FibGVkXSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIERyb3Bkb3duIGFycm93XG4gICAgJi5kcm9wZG93biB7XG4gICAgICBAaW5jbHVkZSBidXR0b24tZHJvcGRvd247XG5cbiAgICAgIEBpZiAkYnV0dG9uLWZpbGwgPT0gaG9sbG93IHtcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRidXR0b24tYmFja2dyb3VuZDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLmhvbGxvdywgJi5jbGVhciB7XG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkYnV0dG9uLWJhY2tncm91bmQ7XG4gICAgICAgIH1cblxuICAgICAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRidXR0b24tcGFsZXR0ZSB7XG4gICAgICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRjb2xvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBCdXR0b24gd2l0aCBkcm9wZG93biBhcnJvdyBvbmx5XG4gICAgJi5hcnJvdy1vbmx5OjphZnRlciB7XG4gICAgICB0b3A6IC0wLjFlbTtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgICB9XG4gIH1cblxuICBhLmJ1dHRvbiB7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8gc2Fzcy1saW50OmRpc2FibGUgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuXG4vLy8vXG4vLy8gQGdyb3VwIHRhYmxlXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciB0YWJsZSBiYWNrZ3JvdW5kLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFibGUtYmFja2dyb3VuZDogJHdoaXRlICAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgc2NhbGUgZm9yIGRhcmtlbmluZyB0aGUgc3RyaXBlZCB0YWJsZSByb3dzIGFuZCB0aGUgdGFibGUgYm9yZGVyLlxuLy8vIEB0eXBlIE51bWJlclxuJHRhYmxlLWNvbG9yLXNjYWxlOiA1JSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgc3R5bGUgZm9yIHRhYmxlIGJvcmRlci5cbi8vLyBAdHlwZSBMaXN0XG4kdGFibGUtYm9yZGVyOiAxcHggc29saWQgc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgZm9yIHRhYmxlLlxuLy8vIEB0eXBlIE51bWJlclxuJHRhYmxlLXBhZGRpbmc6IHJlbS1jYWxjKDggMTAgMTApICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBzY2FsZSBmb3IgZGFya2VuaW5nIHRoZSB0YWJsZSByb3dzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIE51bWJlclxuJHRhYmxlLWhvdmVyLXNjYWxlOiAyJSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3Igb2Ygc3RhbmRhcmQgcm93cyBvbiBob3Zlci5cbi8vLyBAdHlwZSBMaXN0XG4kdGFibGUtcm93LWhvdmVyOiBkYXJrZW4oJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1ob3Zlci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIHN0cmlwZWQgcm93cyBvbiBob3Zlci5cbi8vLyBAdHlwZSBMaXN0XG4kdGFibGUtcm93LXN0cmlwZS1ob3ZlcjogZGFya2VuKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUgKyAkdGFibGUtaG92ZXItc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gSWYgYHRydWVgLCB0YWJsZXMgYXJlIHN0cmlwZWQgYnkgZGVmYXVsdCBhbmQgYW4gLnVuc3RyaXBlZCBjbGFzcyBpcyBjcmVhdGVkLiBJZiBgZmFsc2VgLCBhIC5zdHJpcGVkIGNsYXNzIGlzIGNyZWF0ZWQuXG4vLy8gQHR5cGUgQm9vbGVhblxuJHRhYmxlLWlzLXN0cmlwZWQ6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IgZm9yIHN0cmlwZWQgcm93cy5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYmxlLXN0cmlwZWQtYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHZhbHVlIGZvciBzaG93aW5nIHRoZSBzdHJpcGUgb24gcm93cyBvZiB0aGUgdGFibGVzLCBleGNsdWRpbmcgdGhlIGhlYWRlciBhbmQgZm9vdGVyLiBJZiBldmVuLCB0aGUgZXZlbiByb3dzIHdpbGwgaGF2ZSBhIGJhY2tncm91bmQgY29sb3IuIElmIG9kZCwgdGhlIG9kZCByb3dzIHdpbGwgaGF2ZSBhIGJhY2tncm91bmQgY29sb3IuIElmIGVtcHR5LCBvciBhbnkgb3RoZXIgdmFsdWUsIHRoZSB0YWJsZSByb3dzIHdpbGwgaGF2ZSBubyBzdHJpcGluZy5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kdGFibGUtc3RyaXBlOiBldmVuICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBmb3IgaGVhZGVyIGJhY2tncm91bmQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWJsZS1oZWFkLWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUgLyAyKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3Igb2YgaGVhZGVyIHJvd3Mgb24gaG92ZXIuXG4vLy8gQHR5cGUgTGlzdFxuJHRhYmxlLWhlYWQtcm93LWhvdmVyOiBkYXJrZW4oJHRhYmxlLWhlYWQtYmFja2dyb3VuZCwgJHRhYmxlLWhvdmVyLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGZvb3RlciBiYWNrZ3JvdW5kLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFibGUtZm9vdC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3Igb2YgZm9vdGVyIHJvd3Mgb24gaG92ZXIuXG4vLy8gQHR5cGUgTGlzdFxuJHRhYmxlLWZvb3Qtcm93LWhvdmVyOiBkYXJrZW4oJHRhYmxlLWZvb3QtYmFja2dyb3VuZCwgJHRhYmxlLWhvdmVyLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBjb2xvciBmb3IgaGVhZGVyLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFibGUtaGVhZC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IGNvbG9yIGZvciBmb290ZXIuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWJsZS1mb290LWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHZhbHVlIGZvciBzaG93aW5nIHRoZSBoZWFkZXIgd2hlbiB1c2luZyBzdGFja2VkIHRhYmxlcy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kc2hvdy1oZWFkZXItZm9yLXN0YWNrZWQ6IGZhbHNlICFkZWZhdWx0O1xuXG4vLy8gQnJlYWtwb2ludCBhdCB3aGljaCBzdGFja2VkIHRhYmxlIHN3aXRjaGVzIGZyb20gbW9iaWxlIHRvIGRlc2t0b3Agdmlldy5cbi8vLyBAdHlwZSBCcmVha3BvaW50XG4kdGFibGUtc3RhY2stYnJlYWtwb2ludDogbWVkaXVtICFkZWZhdWx0O1xuXG5AbWl4aW4gLXpmLXRhYmxlLXN0cmlwZSgkc3RyaXBlOiAkdGFibGUtc3RyaXBlKSB7XG4gIHRyIHtcbiAgICAvLyBJZiBzdHJpcGUgaXMgc2V0IHRvIGV2ZW4sIGRhcmtlbiB0aGUgZXZlbiByb3dzLlxuICAgIEBpZiAkc3RyaXBlID09IGV2ZW4ge1xuICAgICAgJjpudGgtY2hpbGQoZXZlbikge1xuICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtc3RyaXBlZC1iYWNrZ3JvdW5kO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIElmIHN0cmlwZSBpcyBzZXQgdG8gb2RkLCBkYXJrZW4gdGhlIG9kZCByb3dzLlxuICAgIEBlbHNlIGlmICRzdHJpcGUgPT0gb2RkIHtcbiAgICAgICY6bnRoLWNoaWxkKG9kZCkge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtc3RyaXBlZC1iYWNrZ3JvdW5kO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gLXpmLXRhYmxlLXVuc3RyaXBlKCkge1xuICB0ciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICBib3JkZXItYm90dG9tOiAkdGFibGUtYm9yZGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1iYWNrZ3JvdW5kO1xuICB9XG59XG5cbkBtaXhpbiAtemYtdGFibGUtY2hpbGRyZW4tc3R5bGVzKCRzdHJpcGU6ICR0YWJsZS1zdHJpcGUsICRpcy1zdHJpcGVkOiAkdGFibGUtaXMtc3RyaXBlZCkge1xuICB0aGVhZCxcbiAgdGJvZHksXG4gIHRmb290IHtcbiAgICBib3JkZXI6ICR0YWJsZS1ib3JkZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWJhY2tncm91bmQ7XG4gIH1cblxuICAvLyBDYXB0aW9uXG4gIGNhcHRpb24ge1xuICAgIHBhZGRpbmc6ICR0YWJsZS1wYWRkaW5nO1xuICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuICB9XG5cbiAgLy8gVGFibGUgaGVhZFxuICB0aGVhZCB7XG4gICAgYmFja2dyb3VuZDogJHRhYmxlLWhlYWQtYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJHRhYmxlLWhlYWQtZm9udC1jb2xvcjtcbiAgfVxuXG4gIC8vIFRhYmxlIGZvb3RcbiAgdGZvb3Qge1xuICAgIGJhY2tncm91bmQ6ICR0YWJsZS1mb290LWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICR0YWJsZS1mb290LWZvbnQtY29sb3I7XG4gIH1cblxuICAvLyBUYWJsZSBoZWFkIGFuZCBmb290XG4gIHRoZWFkLFxuICB0Zm9vdCB7XG4gICAgLy8gUm93cyB3aXRoaW4gaGVhZCBhbmQgZm9vdFxuICAgIHRyIHtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIH1cblxuICAgIC8vIENlbGxzIHdpdGhpbiBoZWFkIGFuZCBmb290XG4gICAgdGgsXG4gICAgdGQge1xuICAgICAgcGFkZGluZzogJHRhYmxlLXBhZGRpbmc7XG4gICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiAgICAgIHRleHQtYWxpZ246ICN7JGdsb2JhbC1sZWZ0fTtcbiAgICB9XG4gIH1cblxuICAvLyBUYWJsZSByb3dzXG4gIHRib2R5IHtcbiAgICB0aCxcbiAgICB0ZCB7XG4gICAgICBwYWRkaW5nOiAkdGFibGUtcGFkZGluZztcbiAgICB9XG4gIH1cblxuICAvLyBJZiB0YWJsZXMgYXJlIHN0cmlwZWRcbiAgQGlmICRpcy1zdHJpcGVkID09IHRydWUge1xuICAgIHRib2R5IHtcbiAgICAgIEBpbmNsdWRlIC16Zi10YWJsZS1zdHJpcGUoJHN0cmlwZSk7XG4gICAgfVxuXG4gICAgJi51bnN0cmlwZWQge1xuICAgICAgdGJvZHkge1xuICAgICAgICBAaW5jbHVkZSAtemYtdGFibGUtdW5zdHJpcGUoKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWJhY2tncm91bmQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gSWYgdGFibGVzIGFyZSBub3Qgc3RyaXBlZFxuICBAZWxzZSBpZiAkaXMtc3RyaXBlZCA9PSBmYWxzZSB7XG4gICAgdGJvZHkge1xuICAgICAgQGluY2x1ZGUgLXpmLXRhYmxlLXVuc3RyaXBlKCk7XG4gICAgfVxuXG4gICAgJi5zdHJpcGVkIHtcbiAgICAgIHRib2R5IHtcbiAgICAgICAgQGluY2x1ZGUgLXpmLXRhYmxlLXN0cmlwZSgkc3RyaXBlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgdGhlIGdlbmVyYWwgc3R5bGVzIGZvciB0YWJsZXMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3RyaXBlIFskdGFibGUtc3RyaXBlXSAtIFVzZXMga2V5d29yZHMgZXZlbiwgb2RkLCBvciBub25lIHRvIGRhcmtlbiByb3dzIG9mIHRoZSB0YWJsZS4gVGhlIGRlZmF1bHQgdmFsdWUgaXMgZXZlbi5cbkBtaXhpbiB0YWJsZShcbiAgJHN0cmlwZTogJHRhYmxlLXN0cmlwZSxcbiAgJG5lc3Q6IGZhbHNlXG4pIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblxuICBAaWYgJG5lc3Qge1xuICAgIEBpbmNsdWRlIC16Zi10YWJsZS1jaGlsZHJlbi1zdHlsZXMoJHN0cmlwZSk7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBhdC1yb290IHtcbiAgICAgIEBpbmNsdWRlIC16Zi10YWJsZS1jaGlsZHJlbi1zdHlsZXMoJHN0cmlwZSk7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHRoZSBhYmlsaXR5IHRvIGhvcml6b250YWxseSBzY3JvbGwgdGhlIHRhYmxlIHdoZW4gdGhlIGNvbnRlbnQgb3ZlcmZsb3dzIGhvcml6b250YWxseS5cbkBtaXhpbiB0YWJsZS1zY3JvbGwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93LXg6IGF1dG87XG59XG5cbi8vLyBTbGlnaHRseSBkYXJrZW5zIHRoZSB0YWJsZSByb3dzIG9uIGhvdmVyLlxuQG1peGluIHRhYmxlLWhvdmVyIHtcbiAgdGhlYWQgdHIge1xuICAgIC8vRGFya2VucyB0aGUgdGFibGUgaGVhZGVyIHJvd3Mgb24gaG92ZXIuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtaGVhZC1yb3ctaG92ZXI7XG4gICAgfVxuICB9XG5cbiAgdGZvb3QgdHIge1xuICAgIC8vRGFya2VucyB0aGUgdGFibGUgZm9vdGVyIHJvd3Mgb24gaG92ZXIuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtZm9vdC1yb3ctaG92ZXI7XG4gICAgfVxuICB9XG5cbiAgdGJvZHkgdHIge1xuICAgIC8vRGFya2VucyB0aGUgbm9uLXN0cmlwZWQgdGFibGUgcm93cyBvbiBob3Zlci5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1yb3ctaG92ZXI7XG4gICAgfVxuICB9XG5cbiAgQGlmICR0YWJsZS1pcy1zdHJpcGVkID09IHRydWUge1xuICAgIC8vIERhcmtlbnMgdGhlIGV2ZW4gc3RyaXBlZCB0YWJsZSByb3dzLlxuICAgIEBpZigkdGFibGUtc3RyaXBlID09IGV2ZW4pIHtcbiAgICAgICY6bm90KC51bnN0cmlwZWQpIHRyOm50aC1vZi10eXBlKGV2ZW4pOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXJvdy1zdHJpcGUtaG92ZXI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRGFya2VucyB0aGUgb2RkIHN0cmlwZWQgdGFibGUgcm93cy5cbiAgICBAZWxzZSBpZigkdGFibGUtc3RyaXBlID09IG9kZCkge1xuICAgICAgJjpub3QoLnVuc3RyaXBlZCkgdHI6bnRoLW9mLXR5cGUob2RkKTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1yb3ctc3RyaXBlLWhvdmVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBlbHNlIGlmICR0YWJsZS1pcy1zdHJpcGVkID09IGZhbHNlIHtcbiAgICAvLyBEYXJrZW5zIHRoZSBldmVuIHN0cmlwZWQgdGFibGUgcm93cy5cbiAgICBAaWYoJHRhYmxlLXN0cmlwZSA9PSBldmVuKSB7XG4gICAgICAmLnN0cmlwZWQgdHI6bnRoLW9mLXR5cGUoZXZlbik6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtcm93LXN0cmlwZS1ob3ZlcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBEYXJrZW5zIHRoZSBvZGQgc3RyaXBlZCB0YWJsZSByb3dzLlxuICAgIEBlbHNlIGlmKCR0YWJsZS1zdHJpcGUgPT0gb2RkKSB7XG4gICAgICAmLnN0cmlwZWQgdHI6bnRoLW9mLXR5cGUob2RkKTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1yb3ctc3RyaXBlLWhvdmVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgc3RhY2tlZCB0YWJsZS4gVXNlZnVsIGZvciBzbWFsbC1zY3JlZW4gbGF5b3V0cy5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRoZWFkZXIgWyRzaG93LWhlYWRlci1mb3Itc3RhY2tlZF0gLSBTaG93IHRoZSBmaXJzdCB0aCBvZiBoZWFkZXIgd2hlbiBzdGFja2VkLlxuQG1peGluIHRhYmxlLXN0YWNrKCRoZWFkZXI6ICRzaG93LWhlYWRlci1mb3Itc3RhY2tlZCkge1xuICBAaWYgJGhlYWRlciB7XG4gICAgdGhlYWQge1xuICAgICAgdGgge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIHRoZWFkIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgdGZvb3Qge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICB0cixcbiAgdGgsXG4gIHRkIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIHRkIHtcbiAgICBib3JkZXItdG9wOiAwO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXRhYmxlKCRuZXN0OiBmYWxzZSkge1xuICB0YWJsZSB7XG4gICAgQGluY2x1ZGUgdGFibGUoJG5lc3Q6ICRuZXN0KTtcbiAgfVxuXG4gIHRhYmxlLnN0YWNrIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCR0YWJsZS1zdGFjay1icmVha3BvaW50IGRvd24pIHtcbiAgICAgIEBpbmNsdWRlIHRhYmxlLXN0YWNrO1xuICAgIH1cbiAgfVxuXG4gIHRhYmxlLnNjcm9sbCB7XG4gICAgQGluY2x1ZGUgdGFibGUtc2Nyb2xsO1xuICB9XG5cbiAgdGFibGUuaG92ZXIge1xuICAgIEBpbmNsdWRlIHRhYmxlLWhvdmVyO1xuICB9XG5cbiAgLnRhYmxlLXNjcm9sbCB7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcblxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuQGltcG9ydCAnbWF0aCc7XG5cbiRjb250cmFzdC13YXJuaW5nczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vL1xuLy8vIEBncm91cCBmdW5jdGlvbnNcbi8vLy9cblxuLy8vIENoZWNrcyB0aGUgbHVtaW5hbmNlIG9mIGAkY29sb3JgLlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIC0gQ29sb3IgdG8gY2hlY2sgdGhlIGx1bWluYW5jZSBvZi5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IFRoZSBsdW1pbmFuY2Ugb2YgYCRjb2xvcmAuXG5AZnVuY3Rpb24gY29sb3ItbHVtaW5hbmNlKCRjb2xvcikge1xuICAvLyBBZGFwdGVkIGZyb206IGh0dHBzOi8vZ2l0aHViLmNvbS9MZWFWZXJvdS9jb250cmFzdC1yYXRpby9ibG9iL2doLXBhZ2VzL2NvbG9yLmpzXG4gIC8vIEZvcm11bGE6IGh0dHA6Ly93d3cudzMub3JnL1RSLzIwMDgvUkVDLVdDQUcyMC0yMDA4MTIxMS8jcmVsYXRpdmVsdW1pbmFuY2VkZWZcbiAgJHJnYmE6IHJlZCgkY29sb3IpLCBncmVlbigkY29sb3IpLCBibHVlKCRjb2xvcik7XG4gICRyZ2JhMjogKCk7XG5cbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAzIHtcbiAgICAkcmdiOiBudGgoJHJnYmEsICRpKTtcbiAgICAkcmdiOiAkcmdiIC8gMjU1O1xuXG4gICAgJHJnYjogaWYoJHJnYiA8IDAuMDM5MjgsICRyZ2IgLyAxMi45MiwgcG93KCgkcmdiICsgMC4wNTUpIC8gMS4wNTUsIDIuNCkpO1xuXG4gICAgJHJnYmEyOiBhcHBlbmQoJHJnYmEyLCAkcmdiKTtcbiAgfVxuXG4gIEByZXR1cm4gMC4yMTI2ICogbnRoKCRyZ2JhMiwgMSkgKyAwLjcxNTIgKiBudGgoJHJnYmEyLCAyKSArIDAuMDcyMiAqIG50aCgkcmdiYTIsIDMpO1xufVxuXG4vLy8gQ2hlY2tzIHRoZSBjb250cmFzdCByYXRpbyBvZiB0d28gY29sb3JzLlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yMSAtIEZpcnN0IGNvbG9yIHRvIGNvbXBhcmUuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yMiAtIFNlY29uZCBjb2xvciB0byBjb21wYXJlLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gVGhlIGNvbnRyYXN0IHJhdGlvIG9mIHRoZSBjb21wYXJlZCBjb2xvcnMuXG5AZnVuY3Rpb24gY29sb3ItY29udHJhc3QoJGNvbG9yMSwgJGNvbG9yMikge1xuICAvLyBBZGFwdGVkIGZyb206IGh0dHBzOi8vZ2l0aHViLmNvbS9MZWFWZXJvdS9jb250cmFzdC1yYXRpby9ibG9iL2doLXBhZ2VzL2NvbG9yLmpzXG4gIC8vIEZvcm11bGE6IGh0dHA6Ly93d3cudzMub3JnL1RSLzIwMDgvUkVDLVdDQUcyMC0yMDA4MTIxMS8jY29udHJhc3QtcmF0aW9kZWZcbiAgJGx1bWluYW5jZTE6IGNvbG9yLWx1bWluYW5jZSgkY29sb3IxKSArIDAuMDU7XG4gICRsdW1pbmFuY2UyOiBjb2xvci1sdW1pbmFuY2UoJGNvbG9yMikgKyAwLjA1O1xuICAkcmF0aW86ICRsdW1pbmFuY2UxIC8gJGx1bWluYW5jZTI7XG5cbiAgQGlmICRsdW1pbmFuY2UyID4gJGx1bWluYW5jZTEge1xuICAgICRyYXRpbzogMSAvICRyYXRpbztcbiAgfVxuXG4gICRyYXRpbzogcm91bmQoJHJhdGlvICogMTApIC8gMTA7XG5cbiAgQHJldHVybiAkcmF0aW87XG59XG5cbi8vLyBDaGVja3MgdGhlIGx1bWluYW5jZSBvZiBgJGJhc2VgLCBhbmQgcmV0dXJucyB0aGUgY29sb3IgZnJvbSBgJGNvbG9yc2AgKGxpc3Qgb2YgY29sb3JzKSB0aGF0IGhhcyB0aGUgbW9zdCBjb250cmFzdC5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYXNlIC0gQ29sb3IgdG8gY2hlY2sgbHVtaW5hbmNlLlxuLy8vIEBwYXJhbSB7TGlzdH0gJGNvbG9ycyBbKCR3aGl0ZSwgJGJsYWNrKV0gLSBDb2xvcnMgdG8gY29tcGFyZS5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHRvbGVyYW5jZSBbJGdsb2JhbC1jb2xvci1waWNrLWNvbnRyYXN0LXRvbGVyYW5jZV0gLSBDb250cmFzdCB0b2xlcmFuY2UuXG4vLy9cbi8vLyBAcmV0dXJucyB7Q29sb3J9IHRoZSBjb2xvciBmcm9tIGAkY29sb3JzYCAobGlzdCBvZiBjb2xvcnMpIHRoYXQgaGFzIHRoZSBtb3N0IGNvbnRyYXN0LlxuQGZ1bmN0aW9uIGNvbG9yLXBpY2stY29udHJhc3QoJGJhc2UsICRjb2xvcnM6ICgkd2hpdGUsICRibGFjayksICR0b2xlcmFuY2U6ICRnbG9iYWwtY29sb3ItcGljay1jb250cmFzdC10b2xlcmFuY2UpIHtcbiAgJGNvbnRyYXN0OiBjb2xvci1jb250cmFzdCgkYmFzZSwgbnRoKCRjb2xvcnMsIDEpKTtcbiAgJGJlc3Q6IG50aCgkY29sb3JzLCAxKTtcblxuICBAZm9yICRpIGZyb20gMiB0aHJvdWdoIGxlbmd0aCgkY29sb3JzKSB7XG4gICAgJGN1cnJlbnQtY29udHJhc3Q6IGNvbG9yLWNvbnRyYXN0KCRiYXNlLCBudGgoJGNvbG9ycywgJGkpKTtcbiAgICBAaWYgKCRjdXJyZW50LWNvbnRyYXN0IC0gJGNvbnRyYXN0ID4gJHRvbGVyYW5jZSkge1xuICAgICAgJGNvbnRyYXN0OiBjb2xvci1jb250cmFzdCgkYmFzZSwgbnRoKCRjb2xvcnMsICRpKSk7XG4gICAgICAkYmVzdDogbnRoKCRjb2xvcnMsICRpKTtcbiAgICB9XG4gIH1cblxuICBAaWYgKCRjb250cmFzdC13YXJuaW5ncyBhbmQgJGNvbnRyYXN0IDwgMykge1xuICAgIEB3YXJuIFwiQ29udHJhc3QgcmF0aW8gb2YgI3skYmVzdH0gb24gI3skYmFzZX0gaXMgcHJldHR5IGJhZCwganVzdCAjeyRjb250cmFzdH1cIjtcbiAgfVxuXG4gIEByZXR1cm4gJGJlc3Q7XG59XG5cbi8vLyBTY2FsZXMgYSBjb2xvciB0byBiZSBkYXJrZXIgaWYgaXQncyBsaWdodCwgb3IgbGlnaHRlciBpZiBpdCdzIGRhcmsuIFVzZSB0aGlzIGZ1bmN0aW9uIHRvIHRpbnQgYSBjb2xvciBhcHByb3ByaWF0ZSB0byBpdHMgbGlnaHRuZXNzLlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIC0gQ29sb3IgdG8gc2NhbGUuXG4vLy8gQHBhcmFtIHtQZXJjZW50YWdlfSAkc2NhbGUgWzUlXSAtIEFtb3VudCB0byBzY2FsZSB1cCBvciBkb3duLlxuLy8vIEBwYXJhbSB7UGVyY2VudGFnZX0gJHRocmVzaG9sZCBbNDAlXSAtIFRocmVzaG9sZCBvZiBsaWdodG5lc3MgdG8gY2hlY2sgYWdhaW5zdC5cbi8vL1xuLy8vIEByZXR1cm5zIHtDb2xvcn0gQSBzY2FsZWQgY29sb3IuXG5AZnVuY3Rpb24gc21hcnQtc2NhbGUoJGNvbG9yLCAkc2NhbGU6IDUlLCAkdGhyZXNob2xkOiA0MCUpIHtcbiAgQGlmIGxpZ2h0bmVzcygkY29sb3IpID4gJHRocmVzaG9sZCB7XG4gICAgJHNjYWxlOiAtJHNjYWxlO1xuICB9XG4gIEByZXR1cm4gc2NhbGUtY29sb3IoJGNvbG9yLCAkbGlnaHRuZXNzOiAkc2NhbGUpO1xufVxuXG4vLy8gR2V0IGNvbG9yIGZyb20gZm91bmRhdGlvbi1wYWxldHRlXG4vLy9cbi8vLyBAcGFyYW0ge2tleX0gY29sb3Iga2V5IGZyb20gZm91bmRhdGlvbi1wYWxldHRlXG4vLy9cbi8vLyBAcmV0dXJucyB7Q29sb3J9IGNvbG9yIGZyb20gZm91bmRhdGlvbi1wYWxldHRlXG5AZnVuY3Rpb24gZ2V0LWNvbG9yKCRrZXkpIHtcbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsICRrZXkpIHtcbiAgICBAcmV0dXJuIG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgJGtleSk7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBlcnJvciAnZ2l2ZW4gJGtleSBpcyBub3QgYXZhaWxhYmxlIGluICRmb3VuZGF0aW9uLXBhbGV0dGUnO1xuICB9XG59XG5cbi8vLyBUcmFuc2ZlcnMgdGhlIGNvbG9ycyBpbiB0aGUgYCRmb3VuZGF0aW9uLXBhbGV0dGVgIG1hcCBpbnRvIHZhcmlhYmxlcywgc3VjaCBhcyBgJHByaW1hcnktY29sb3JgIGFuZCBgJHNlY29uZGFyeS1jb2xvcmAuIENhbGwgdGhpcyBtaXhpbiBiZWxvdyB0aGUgR2xvYmFsIHNlY3Rpb24gb2YgeW91ciBzZXR0aW5ncyBmaWxlIHRvIHByb3Blcmx5IG1pZ3JhdGUgeW91ciBjb2RlYmFzZS5cbkBtaXhpbiBhZGQtZm91bmRhdGlvbi1jb2xvcnMoKSB7XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCBwcmltYXJ5KSB7XG4gICAgJHByaW1hcnktY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgcHJpbWFyeSkgIWdsb2JhbDtcbiAgfSBAZWxzZSB7XG4gICAgJHByaW1hcnktY29sb3I6ICMxNzc5YmEgIWdsb2JhbDtcbiAgfVxuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgc2Vjb25kYXJ5KSB7XG4gICAgJHNlY29uZGFyeS1jb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBzZWNvbmRhcnkpICFnbG9iYWw7XG4gIH0gQGVsc2Uge1xuICAgICRzZWNvbmRhcnktY29sb3I6ICM3Njc2NzYgIWdsb2JhbDtcbiAgfVxuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgc3VjY2Vzcykge1xuICAgICRzdWNjZXNzLWNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHN1Y2Nlc3MpICFnbG9iYWw7XG4gIH0gQGVsc2Uge1xuICAgICRzdWNjZXNzLWNvbG9yOiAjM2FkYjc2ICFnbG9iYWw7XG4gIH1cbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHdhcm5pbmcpIHtcbiAgICAkd2FybmluZy1jb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCB3YXJuaW5nKSAhZ2xvYmFsO1xuICB9IEBlbHNlIHtcbiAgICAkd2FybmluZy1jb2xvcjogI2ZmYWUwMCAhZ2xvYmFsO1xuICB9XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCBhbGVydCkge1xuICAgICRhbGVydC1jb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBhbGVydCkgIWdsb2JhbDtcbiAgfSBAZWxzZSB7XG4gICAgJGFsZXJ0LWNvbG9yOiAjY2M0YjM3ICFnbG9iYWw7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGFjY29yZGlvblxuLy8vL1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIG9mIGFuIGFjY29yZGlvbiBncm91cC5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbi1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBJZiBgdHJ1ZWAsIGFkZHMgcGx1cyBhbmQgbWludXMgaWNvbnMgdG8gdGhlIHNpZGUgb2YgZWFjaCBhY2NvcmRpb24gdGl0bGUuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGFjY29yZGlvbi1wbHVzbWludXM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgb2YgYWNjb3JkaW9uIHRpdGxlcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRhY2NvcmRpb24tdGl0bGUtZm9udC1zaXplOiByZW0tY2FsYygxMikgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHRleHQgY29sb3IgZm9yIGl0ZW1zIGluIGEgTWVudS5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbi1pdGVtLWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBvbiBob3ZlciBmb3IgaXRlbXMgaW4gYSBNZW51LlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9uLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgb2YgYW4gYWNjb3JkaW9uIGl0ZW0uXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGFjY29yZGlvbi1pdGVtLXBhZGRpbmc6IDEuMjVyZW0gMXJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBvZiB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbi1jb250ZW50LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIGNvbG9yIG9mIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9uLWNvbnRlbnQtYm9yZGVyOiAxcHggc29saWQgJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHRleHQgY29sb3Igb2YgdGFiIGNvbnRlbnQuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb24tY29udGVudC1jb2xvcjogJGJvZHktZm9udC1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBmb3IgdGFiIGNvbnRlbnQuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGFjY29yZGlvbi1jb250ZW50LXBhZGRpbmc6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYW4gYWNjb3JkaW9uIGNvbnRhaW5lci4gQXBwbHkgdGhpcyB0byB0aGUgc2FtZSBlbGVtZW50IHRoYXQgZ2V0cyBgZGF0YS1hY2NvcmRpb25gLlxuQG1peGluIGFjY29yZGlvbi1jb250YWluZXIgKFxuICAkYmFja2dyb3VuZDogJGFjY29yZGlvbi1iYWNrZ3JvdW5kXG4pIHtcbiAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgYmFja2dyb3VuZDogJGJhY2tncm91bmQ7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcblxuICAmW2Rpc2FibGVkXSB7XG4gICAgLmFjY29yZGlvbi10aXRsZSB7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSBhY2NvcmRpb24gaXRlbS4gQXBwbHkgdGhpcyB0byB0aGUgbGlzdCBpdGVtIHdpdGhpbiBhbiBhY2NvcmRpb24gdWwuXG5AbWl4aW4gYWNjb3JkaW9uLWl0ZW0ge1xuICAmOmZpcnN0LWNoaWxkID4gOmZpcnN0LWNoaWxkIHtcbiAgICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAkZ2xvYmFsLXJhZGl1cyAwIDA7XG4gIH1cblxuICAmOmxhc3QtY2hpbGQgPiA6bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwICRnbG9iYWwtcmFkaXVzICRnbG9iYWwtcmFkaXVzO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIHRpdGxlIG9mIGFuIGFjY29yZGlvbiBpdGVtLiBBcHBseSB0aGlzIHRvIHRoZSBsaW5rIHdpdGhpbiBhbiBhY2NvcmRpb24gaXRlbS5cbkBtaXhpbiBhY2NvcmRpb24tdGl0bGUgKFxuICAkcGFkZGluZzogJGFjY29yZGlvbi1pdGVtLXBhZGRpbmcsXG4gICRmb250LXNpemU6ICRhY2NvcmRpb24tdGl0bGUtZm9udC1zaXplLFxuICAkY29sb3I6ICRhY2NvcmRpb24taXRlbS1jb2xvcixcbiAgJGJvcmRlcjogJGFjY29yZGlvbi1jb250ZW50LWJvcmRlcixcbiAgJGJhY2tncm91bmQtaG92ZXI6ICRhY2NvcmRpb24taXRlbS1iYWNrZ3JvdW5kLWhvdmVyXG4pIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogJHBhZGRpbmc7XG5cbiAgYm9yZGVyOiAkYm9yZGVyO1xuICBib3JkZXItYm90dG9tOiAwO1xuXG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiAkY29sb3I7XG5cbiAgOmxhc3QtY2hpbGQ6bm90KC5pcy1hY3RpdmUpID4gJiB7XG4gICAgYm9yZGVyLWJvdHRvbTogJGJvcmRlcjtcbiAgICBib3JkZXItcmFkaXVzOiAwIDAgJGdsb2JhbC1yYWRpdXMgJGdsb2JhbC1yYWRpdXM7XG4gIH1cblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZC1ob3ZlcjtcbiAgfVxuXG4gIEBpZiAkYWNjb3JkaW9uLXBsdXNtaW51cyB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgI3skZ2xvYmFsLXJpZ2h0fTogMXJlbTtcbiAgICAgIG1hcmdpbi10b3A6IC0wLjVyZW07XG4gICAgICBjb250ZW50OiAnKyc7XG4gICAgfVxuXG4gICAgLmlzLWFjdGl2ZSA+ICY6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnXFwyMDEzJztcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhY2NvcmRpb24gY29udGVudC4gQXBwbHkgdGhpcyB0byB0aGUgY29udGVudCBwYW5lIGJlbG93IGFuIGFjY29yZGlvbiBpdGVtJ3MgdGl0bGUuXG5AbWl4aW4gYWNjb3JkaW9uLWNvbnRlbnQgKFxuICAkcGFkZGluZzogJGFjY29yZGlvbi1jb250ZW50LXBhZGRpbmcsXG4gICRib3JkZXI6ICRhY2NvcmRpb24tY29udGVudC1ib3JkZXIsXG4gICRiYWNrZ3JvdW5kOiAkYWNjb3JkaW9uLWNvbnRlbnQtYmFja2dyb3VuZCxcbiAgJGNvbG9yOiAkYWNjb3JkaW9uLWNvbnRlbnQtY29sb3Jcbikge1xuICBkaXNwbGF5OiBub25lO1xuICBwYWRkaW5nOiAkcGFkZGluZztcblxuICBib3JkZXI6ICRib3JkZXI7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuXG4gIGNvbG9yOiAkY29sb3I7XG5cbiAgOmxhc3QtY2hpbGQgPiAmOmxhc3QtY2hpbGQge1xuICAgIGJvcmRlci1ib3R0b206ICRib3JkZXI7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tYWNjb3JkaW9uIHtcbiAgLmFjY29yZGlvbiB7XG4gICAgQGluY2x1ZGUgYWNjb3JkaW9uLWNvbnRhaW5lcjtcbiAgfVxuXG4gIC5hY2NvcmRpb24taXRlbSB7XG4gICAgQGluY2x1ZGUgYWNjb3JkaW9uLWl0ZW07XG4gIH1cblxuICAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgICBAaW5jbHVkZSBhY2NvcmRpb24tdGl0bGU7XG4gIH1cblxuICAuYWNjb3JkaW9uLWNvbnRlbnQge1xuICAgIEBpbmNsdWRlIGFjY29yZGlvbi1jb250ZW50O1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCByZXNwb25zaXZlLWVtYmVkXG4vLy8vXG5cbi8vLyBNYXJnaW4gYmVsb3cgYSByZXNwb25zaXZlIGVtYmVkIGNvbnRhaW5lci5cbi8vLyBAdHlwZSBOdW1iZXJcbiRyZXNwb25zaXZlLWVtYmVkLW1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDE2KSAhZGVmYXVsdDtcblxuLy8vIEFzcGVjdCByYXRpb3MgdXNlZCB0byBkZXRlcm1pbmUgcGFkZGluZy1ib3R0b20gb2YgcmVzcG9uc2l2ZSBlbWJlZCBjb250YWluZXJzLlxuLy8vIEB0eXBlIE1hcFxuJHJlc3BvbnNpdmUtZW1iZWQtcmF0aW9zOiAoXG4gIGRlZmF1bHQ6IDQgYnkgMyxcbiAgd2lkZXNjcmVlbjogMTYgYnkgOSxcbikgIWRlZmF1bHQ7XG5cbi8vLyBDcmVhdGVzIGEgcmVzcG9uc2l2ZSBlbWJlZCBjb250YWluZXIuXG4vLy8gQHBhcmFtIHtTdHJpbmd8TGlzdH0gJHJhdGlvIFtkZWZhdWx0XSAtIFJhdGlvIG9mIHRoZSBjb250YWluZXIuIENhbiBiZSBhIGtleSBmcm9tIHRoZSBgJHJlc3BvbnNpdmUtZW1iZWQtcmF0aW9zYCBtYXAgb3IgYSBsaXN0IGZvcm1hdHRlZCBhcyBgeCBieSB5YC5cbkBtaXhpbiByZXNwb25zaXZlLWVtYmVkKCRyYXRpbzogZGVmYXVsdCkge1xuICBAaWYgdHlwZS1vZigkcmF0aW8pID09ICdzdHJpbmcnIHtcbiAgICAkcmF0aW86IG1hcC1nZXQoJHJlc3BvbnNpdmUtZW1iZWQtcmF0aW9zLCAkcmF0aW8pO1xuICB9XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAkcmVzcG9uc2l2ZS1lbWJlZC1tYXJnaW4tYm90dG9tO1xuICBwYWRkaW5nLWJvdHRvbTogcmF0aW8tdG8tcGVyY2VudGFnZSgkcmF0aW8pO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gIGlmcmFtZSxcbiAgb2JqZWN0LFxuICBlbWJlZCxcbiAgdmlkZW8ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgI3skZ2xvYmFsLWxlZnR9OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1yZXNwb25zaXZlLWVtYmVkIHtcbiAgLnJlc3BvbnNpdmUtZW1iZWQsXG4gIC5mbGV4LXZpZGVvIHtcbiAgICBAaW5jbHVkZSByZXNwb25zaXZlLWVtYmVkKCRyYXRpbzogZGVmYXVsdCk7XG5cbiAgICAkcmF0aW9zOiBtYXAtcmVtb3ZlKCRyZXNwb25zaXZlLWVtYmVkLXJhdGlvcyxkZWZhdWx0KTtcblxuICAgIEBlYWNoICRuYW1lLCAkcmF0aW8gaW4gJHJhdGlvcyB7XG4gICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IHJhdGlvLXRvLXBlcmNlbnRhZ2UoJHJhdGlvKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZ1bmN0aW9uc1xuLy8vL1xuXG4vLy8gRmluZHMgdGhlIGdyZWF0ZXN0IGNvbW1vbiBkaXZpc29yIG9mIHR3byBpbnRlZ2Vycy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYSAtIEZpcnN0IG51bWJlciB0byBjb21wYXJlLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYiAtIFNlY29uZCBudW1iZXIgdG8gY29tcGFyZS5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IFRoZSBncmVhdGVzdCBjb21tb24gZGl2aXNvci5cbkBmdW5jdGlvbiBnY2QoJGEsICRiKSB7XG4gIC8vIEZyb206IGh0dHA6Ly9yb3NldHRhY29kZS5vcmcvd2lraS9HcmVhdGVzdF9jb21tb25fZGl2aXNvciNKYXZhU2NyaXB0XG4gIEBpZiAoJGIgIT0gMCkge1xuICAgIEByZXR1cm4gZ2NkKCRiLCAkYSAlICRiKTtcbiAgfVxuICBAZWxzZSB7XG4gICAgQHJldHVybiBhYnMoJGEpO1xuICB9XG59XG5cbi8vLyBIYW5kbGVzIGRlY2ltYWwgZXhwb25lbnRzIGJ5IHRyeWluZyB0byBjb252ZXJ0IHRoZW0gaW50byBhIGZyYWN0aW9uIGFuZCB0aGVuIHVzZSBhIG50aC1yb290LWFsZ29yaXRobSBmb3IgcGFydHMgb2YgdGhlIGNhbGN1bGF0aW9uXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJGJhc2UgLSBUaGUgYmFzZSBudW1iZXIuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRleHBvbmVudCAtIFRoZSBleHBvbmVudC5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IFRoZSBwcm9kdWN0IG9mIHRoZSBleHBvbmVudGlhdGlvbi5cbkBmdW5jdGlvbiBwb3coJGJhc2UsICRleHBvbmVudCwgJHByZWM6IDE2KSB7XG4gIEBpZiAoZmxvb3IoJGV4cG9uZW50KSAhPSAkZXhwb25lbnQpIHtcbiAgICAkcHJlYzIgOiBwb3coMTAsICRwcmVjKTtcbiAgICAkZXhwb25lbnQ6IHJvdW5kKCRleHBvbmVudCAqICRwcmVjMik7XG4gICAgJGRlbm9taW5hdG9yOiBnY2QoJGV4cG9uZW50LCAkcHJlYzIpO1xuICAgIEByZXR1cm4gbnRoLXJvb3QocG93KCRiYXNlLCAkZXhwb25lbnQgLyAkZGVub21pbmF0b3IpLCAkcHJlYzIgLyAkZGVub21pbmF0b3IsICRwcmVjKTtcbiAgfVxuXG4gICR2YWx1ZTogJGJhc2U7XG4gIEBpZiAkZXhwb25lbnQgPiAxIHtcbiAgICBAZm9yICRpIGZyb20gMiB0aHJvdWdoICRleHBvbmVudCB7XG4gICAgICAkdmFsdWU6ICR2YWx1ZSAqICRiYXNlO1xuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkZXhwb25lbnQgPCAxIHtcbiAgICBAZm9yICRpIGZyb20gMCB0aHJvdWdoIC0kZXhwb25lbnQge1xuICAgICAgJHZhbHVlOiAkdmFsdWUgLyAkYmFzZTtcbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICR2YWx1ZTtcbn1cblxuQGZ1bmN0aW9uIG50aC1yb290KCRudW0sICRuOiAyLCAkcHJlYzogMTIpIHtcbiAgLy8gRnJvbTogaHR0cDovL3Jvc2V0dGFjb2RlLm9yZy93aWtpL050aF9yb290I0phdmFTY3JpcHRcbiAgJHg6IDE7XG5cbiAgQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAkcHJlYyB7XG4gICAgJHg6IDEgLyAkbiAqICgoJG4gLSAxKSAqICR4ICsgKCRudW0gLyBwb3coJHgsICRuIC0gMSkpKTtcbiAgfVxuXG4gIEByZXR1cm4gJHg7XG59XG5cbi8vLyBDYWxjdWxhdGVzIHRoZSBoZWlnaHQgYXMgYSBwZXJjZW50YWdlIG9mIHRoZSB3aWR0aCBmb3IgYSBnaXZlbiByYXRpby5cbi8vLyBAcGFyYW0ge0xpc3R9ICRyYXRpbyAtIFJhdGlvIHRvIHVzZSB0byBjYWxjdWxhdGUgdGhlIGhlaWdodCwgZm9ybWF0dGVkIGFzIGB4IGJ5IHlgLlxuLy8vIEByZXR1cm4ge051bWJlcn0gQSBwZXJjZW50YWdlIHZhbHVlIGZvciB0aGUgaGVpZ2h0IHJlbGF0aXZlIHRvIHRoZSB3aWR0aCBvZiBhIHJlc3BvbnNpdmUgY29udGFpbmVyLlxuQGZ1bmN0aW9uIHJhdGlvLXRvLXBlcmNlbnRhZ2UoJHJhdGlvKSB7XG4gICR3OiBudGgoJHJhdGlvLCAxKTtcbiAgJGg6IG50aCgkcmF0aW8sIDMpO1xuICBAcmV0dXJuICRoIC8gJHcgKiAxMDAlO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgbWVudVxuLy8vL1xuXG4vLy8gTWFyZ2luIG9mIGEgbWVudS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRtZW51LW1hcmdpbjogMCAhZGVmYXVsdDtcblxuLy8vIExlZnQtaGFuZCBtYXJnaW4gb2YgYSBuZXN0ZWQgbWVudS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRtZW51LW5lc3RlZC1tYXJnaW46ICRnbG9iYWwtbWVudS1uZXN0ZWQtbWFyZ2luICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBmb3IgaXRlbXMgaW4gYSBwaWxsIG1lbnUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVudS1pdGVtcy1wYWRkaW5nOiAkZ2xvYmFsLW1lbnUtcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIG1hcmdpbiBmb3IgaXRlbXMgaW4gYSBzaW1wbGUgbWVudS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRtZW51LXNpbXBsZS1tYXJnaW46IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIGFuIGFjdGl2ZSBtZW51IGl0ZW0uXG4vLy8gQHR5cGUgQ29sb3JcbiRtZW51LWl0ZW0tY29sb3ItYWN0aXZlOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGFuIGFjdGl2ZSBtZW51IGl0ZW0uXG4vLy8gQHR5cGUgQ29sb3JcbiRtZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU6IGdldC1jb2xvcihwcmltYXJ5KSAhZGVmYXVsdDtcblxuLy8vIFNwYWNpbmcgYmV0d2VlbiBhbiBpY29uIGFuZCB0ZXh0IGluIGEgbWVudSBpdGVtLlxuLy8vIEB0eXBlIE51bWJlclxuJG1lbnUtaWNvbi1zcGFjaW5nOiAwLjI1cmVtICFkZWZhdWx0O1xuXG4vLy8gQmFja3dhcmQgY29tcGF0aWJpbGl0eSBmb3IgbWVudSBzdGF0ZS4gSWYgdHJ1ZSwgdGhpcyBkdXBsaWNhdGUgYGFjdGl2ZWAgd2l0aCBgaXMtYWN0aXZlYC4gXG4vLy8gQnV0IHBsZWFzZSBub3RlIHRoYXQgYGFjdGl2ZWAgd2lsbCBiZSByZW1vdmVkIGluIHVwY29taW5nIHZlcnNpb25zLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRtZW51LXN0YXRlLWJhY2stY29tcGF0OiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gQmFja3dhcmQgY29tcGF0aWJpbGl0eSBmb3IgbWVudSBjZW50ZXJlZC4gSWYgdHJ1ZSwgdGhpcyBkdXBsaWNhdGUgYC5tZW51LWNlbnRlcmVkID4gLm1lbnVgIHdpdGggYC5tZW51LmFsaWduLWNlbnRlcmAuIFxuLy8vIEJ1dCBwbGVhc2Ugbm90ZSB0aGF0IGBtZW51LWNlbnRlcmVkYCB3aWxsIGJlIHJlbW92ZWQgaW4gdXBjb21pbmcgdmVyc2lvbnMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJG1lbnUtY2VudGVyZWQtYmFjay1jb21wYXQ6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrd2FyZCBjb21wYXRpYmlsaXR5IGZvciB1c2luZyBgaWNvbi0qYCBjbGFzc2VzIHdpdGhvdXQgYC5pY29uc2AgY2xhc3Nlc1xuLy8vIEJ1dCBwbGVhc2Ugbm90ZSB0aGF0IHRoaXMgYmFja3dhcmQgY29tcGF0aWJpbGl0eSB3aWxsIGJlIHJlbW92ZWQgaW4gdXBjb21pbmcgdmVyc2lvbnMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJG1lbnUtaWNvbnMtYmFjay1jb21wYXQ6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBDcmVhdGVzIHRoZSBiYXNlIHN0eWxlcyBmb3IgYSBNZW51LlxuQG1peGluIG1lbnUtYmFzZSB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICB9XG5cbiAgbGkge1xuICAgIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgfVxuXG4gIGEsXG4gIC5idXR0b24ge1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAkbWVudS1pdGVtcy1wYWRkaW5nO1xuICB9XG5cbiAgLy8gUmVzZXQgc3R5bGVzIG9mIGlubmVyIGVsZW1lbnRzXG4gIGlucHV0LFxuICBzZWxlY3QsXG4gIGEsXG4gIGJ1dHRvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gIGlucHV0IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbn1cblxuLy8vIEV4cGFuZHMgdGhlIGl0ZW1zIG9mIGEgTWVudSwgc28gZWFjaCBpdGVtIGlzIHRoZSBzYW1lIHdpZHRoLlxuQG1peGluIG1lbnUtZXhwYW5kIHtcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgbGkge1xuICAgICAgZmxleDogMSAxIDBweDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSB6ZXJvLXVuaXRcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgPiBsaSB7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFsaWduIG1lbnUgaXRlbXMuXG5AbWl4aW4gbWVudS1hbGlnbigkYWxpZ25tZW50KSB7XG4gIEBpZiAkYWxpZ25tZW50ID09IGxlZnQge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICB0ZXh0LWFsaWduOiAkZ2xvYmFsLWxlZnQ7XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRhbGlnbm1lbnQgPT0gcmlnaHQge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgbGkge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuXG4gICAgICAgIC5zdWJtZW51IGxpIHtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi52ZXJ0aWNhbCBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB0ZXh0LWFsaWduOiAkZ2xvYmFsLXJpZ2h0O1xuXG4gICAgICAgIC5zdWJtZW51IGxpIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiAkZ2xvYmFsLXJpZ2h0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHRleHQtYWxpZ246ICRnbG9iYWwtcmlnaHQ7XG5cbiAgICAgIC5zdWJtZW51IGxpIHtcbiAgICAgICAgdGV4dC1hbGlnbjogJGdsb2JhbC1sZWZ0O1xuICAgICAgfVxuXG4gICAgICAmLnZlcnRpY2FsIHtcbiAgICAgICAgLnN1Ym1lbnUgbGkge1xuICAgICAgICAgIHRleHQtYWxpZ246ICRnbG9iYWwtcmlnaHQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJGFsaWdubWVudCA9PSBjZW50ZXIge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgbGkge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgICAgICAuc3VibWVudSBsaSB7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgLnN1Ym1lbnUgbGkge1xuICAgICAgICB0ZXh0LWFsaWduOiAkZ2xvYmFsLWxlZnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBTZXRzIHRoZSBkaXJlY3Rpb24gb2YgYSBNZW51LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRpciBbaG9yaXpvbnRhbF0gLSBEaXJlY3Rpb24gb2YgdGhlIE1lbnUuIENhbiBiZSBgaG9yaXpvbnRhbGAgb3IgYHZlcnRpY2FsYC5cbkBtaXhpbiBtZW51LWRpcmVjdGlvbigkZGlyOiBob3Jpem9udGFsKSB7XG4gIEBpZiAkZGlyID09IGhvcml6b250YWwge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgbGkge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRkaXIgPT0gdmVydGljYWwge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQHdhcm4gJ1RoZSBkaXJlY3Rpb24gdXNlZCBmb3IgbWVudS1kaXJlY3Rpb24oKSBtdXN0IGJlIGhvcml6b250YWwgb3IgdmVydGljYWwuJztcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIHNpbXBsZSBNZW51LCB3aGljaCBoYXMgbm8gcGFkZGluZyBvciBob3ZlciBzdGF0ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXIgWyRnbG9iYWwtbGVmdF0gLSBEaXJlY3Rpb24gb2YgdGhlIG1lbnUuIFRoaXMgZWZmZWN0cyB0aGUgc2lkZSBvZiB0aGUgYDxsaT5gIHRoYXQgcmVjZWl2ZXMgdGhlIG1hcmdpbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJG1hcmdpbiBbJG1lbnUtc2ltcGxlLW1hcmdpbl0gLSBUaGUgbWFyZ2luIHRvIGFwcGx5IHRvIGVhY2ggYDxsaT5gLlxuQG1peGluIG1lbnUtc2ltcGxlKCRkaXI6ICRnbG9iYWwtbGVmdCwgJG1hcmdpbjogJG1lbnUtc2ltcGxlLW1hcmdpbikge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG5cbiAgbGkgKyBsaSB7XG4gICAgbWFyZ2luLSN7JGRpcn06ICRtYXJnaW47XG4gIH1cblxuICBhIHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBuZXN0ZWQgTWVudSwgYnkgYWRkaW5nIGBtYXJnaW4tbGVmdGAgdG8gdGhlIG1lbnUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJG1hcmdpbiBbJG1lbnUtbmVzdGVkLW1hcmdpbl0gLSBMZW5ndGggb2YgdGhlIG1hcmdpbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRuZXN0ZWQtYWxpZ25tZW50IFtsZWZ0XSAtIEFsaWdubWVudCBvZiB0aGUgbmVzdGVkIGNsYXNzXG5AbWl4aW4gbWVudS1uZXN0ZWQoXG4gICRtYXJnaW46ICRtZW51LW5lc3RlZC1tYXJnaW4sXG4gICRuZXN0ZWQtYWxpZ25tZW50OiBsZWZ0XG4pIHtcbiAgQGlmICRuZXN0ZWQtYWxpZ25tZW50ID09IHJpZ2h0IHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJG1hcmdpbjtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAwO1xuICB9XG4gIEBlbHNlIHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogMDtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkbWFyZ2luO1xuICB9XG5cbn1cblxuLy8vIEFkZHMgYmFzaWMgc3R5bGVzIGZvciBpY29ucyBpbiBtZW51cy5cbkBtaXhpbiBtZW51LWljb25zKCkge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBhIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBpbWcsXG4gICAgaSxcbiAgICBzdmcge1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuICAgICAgKyBzcGFuIHtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgcG9zaXRpb24gY2xhc3NlcyBmb3IgaWNvbnMgd2l0aGluIGEgbWVudS5cbkBtaXhpbiBtZW51LWljb24tcG9zaXRpb24oJHBvc2l0aW9uOiBsZWZ0LCAkc3BhY2luZzogJG1lbnUtaWNvbi1zcGFjaW5nKSB7XG4gIEBpZiAkcG9zaXRpb24gPT0gbGVmdCB7XG4gICAgbGkgYSB7XG4gICAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICAgICAgfVxuXG4gICAgICBpbWcsXG4gICAgICBpLFxuICAgICAgc3ZnIHtcbiAgICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRzcGFjaW5nO1xuXG4gICAgICAgIEBpZiBub3QgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJHBvc2l0aW9uID09IHJpZ2h0IHtcbiAgICBsaSBhIHtcbiAgICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG4gICAgICB9XG5cbiAgICAgIGltZyxcbiAgICAgIGksXG4gICAgICBzdmcge1xuICAgICAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkc3BhY2luZztcblxuICAgICAgICBAaWYgbm90ICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRwb3NpdGlvbiA9PSB0b3Age1xuICAgIGxpIGEge1xuICAgICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgIGZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgfVxuXG4gICAgICBpbWcsXG4gICAgICBpLFxuICAgICAgc3ZnIHtcbiAgICAgICAgQGlmIG5vdCAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIG1hcmdpbjogMCBhdXRvICRzcGFjaW5nO1xuICAgICAgICB9XG4gICAgICAgIEBlbHNlIHtcbiAgICAgICAgICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRzcGFjaW5nO1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gYm90dG9tIHtcbiAgICBsaSBhIHtcbiAgICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICBmbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIH1cblxuICAgICAgaW1nLFxuICAgICAgaSxcbiAgICAgIHN2ZyB7XG4gICAgICAgIEBpZiBub3QgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBtYXJnaW46ICRzcGFjaW5nIGF1dG8gMDtcbiAgICAgICAgfVxuICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2luZztcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIG1lbnUtdGV4dCB7XG4gIHBhZGRpbmc6ICRnbG9iYWwtbWVudS1wYWRkaW5nO1xuXG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6IGluaGVyaXQ7XG59XG5cbkBtaXhpbiBtZW51LXN0YXRlLWFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6ICRtZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU7XG4gIGNvbG9yOiAkbWVudS1pdGVtLWNvbG9yLWFjdGl2ZTtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tbWVudSB7XG4gIC5tZW51IHtcbiAgICBAaW5jbHVkZSBtZW51LWJhc2U7XG5cbiAgICAvLyBEZWZhdWx0IG9yaWVudGF0aW9uOiBob3Jpem9udGFsXG4gICAgJiwgJi5ob3Jpem9udGFsIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtZGlyZWN0aW9uKGhvcml6b250YWwpO1xuICAgIH1cblxuICAgIC8vIFZlcnRpY2FsIG9yaWVudGF0aW9uIG1vZGlmaWVyXG4gICAgJi52ZXJ0aWNhbCB7XG4gICAgICBAaW5jbHVkZSBtZW51LWRpcmVjdGlvbih2ZXJ0aWNhbCk7XG4gICAgfVxuXG4gICAgLy8gRXZlbi13aWR0aCBtb2RpZmllciBmb3IgaG9yaXpvbnRhbCBvcmllbnRhdGlvblxuICAgICYuZXhwYW5kZWQge1xuICAgICAgQGluY2x1ZGUgbWVudS1leHBhbmQ7XG4gICAgfVxuXG4gICAgLy8gU2ltcGxlXG4gICAgJi5zaW1wbGUge1xuICAgICAgQGluY2x1ZGUgbWVudS1zaW1wbGU7XG4gICAgfVxuXG4gICAgLy8gQnJlYWtwb2ludCBzcGVjaWZpYyB2ZXJzaW9uc1xuICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoJHNtYWxsOiBmYWxzZSkge1xuICAgICAgJi4jeyQtemYtc2l6ZX0taG9yaXpvbnRhbCB7XG4gICAgICAgIEBpbmNsdWRlIG1lbnUtZGlyZWN0aW9uKGhvcml6b250YWwpO1xuICAgICAgfVxuXG4gICAgICAmLiN7JC16Zi1zaXplfS12ZXJ0aWNhbCB7XG4gICAgICAgIEBpbmNsdWRlIG1lbnUtZGlyZWN0aW9uKHZlcnRpY2FsKTtcbiAgICAgIH1cblxuICAgICAgJi4jeyQtemYtc2l6ZX0tZXhwYW5kZWQge1xuICAgICAgICBAaW5jbHVkZSBtZW51LWV4cGFuZDtcbiAgICAgIH1cblxuICAgICAgJi4jeyQtemYtc2l6ZX0tc2ltcGxlIHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1leHBhbmQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gTmVzdGluZ1xuICAgICYubmVzdGVkIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtbmVzdGVkO1xuICAgIH1cblxuICAgIC8vIEljb24gQmFzZSBTdHlsZXNcbiAgICAmLmljb25zIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtaWNvbnM7XG4gICAgfVxuXG4gICAgLy8gQmFja3dhcmQgQ29tcGF0aWJpbGl0eSBmb3IgYWN0aXZlIHN0YXRlXG4gICAgQGlmICRtZW51LWljb25zLWJhY2stY29tcGF0IHtcbiAgICAgICYuaWNvbi10b3AsXG4gICAgICAmLmljb24tcmlnaHQsXG4gICAgICAmLmljb24tYm90dG9tLFxuICAgICAgJi5pY29uLWxlZnQge1xuICAgICAgICBAaW5jbHVkZSBtZW51LWljb25zO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEljb24gTGVmdFxuICAgICYuaWNvbi1sZWZ0IHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtaWNvbi1wb3NpdGlvbihsZWZ0KTtcbiAgICB9XG5cbiAgICAvLyBJY29uIFJpZ2h0XG4gICAgJi5pY29uLXJpZ2h0IHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtaWNvbi1wb3NpdGlvbihyaWdodCk7XG4gICAgfVxuXG4gICAgLy8gSWNvbiBUb3BcbiAgICAmLmljb24tdG9wIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtaWNvbi1wb3NpdGlvbih0b3ApO1xuICAgIH1cblxuICAgIC8vIEljb24gQm90dG9tXG4gICAgJi5pY29uLWJvdHRvbSB7XG4gICAgICBAaW5jbHVkZSBtZW51LWljb24tcG9zaXRpb24oYm90dG9tKTtcbiAgICB9XG5cbiAgICAvLyBBY3RpdmUgc3RhdGVcbiAgICAuaXMtYWN0aXZlID4gYSB7XG4gICAgICBAaW5jbHVkZSBtZW51LXN0YXRlLWFjdGl2ZTtcbiAgICB9XG4gICAgXG4gICAgLy8gQmFja3dhcmQgQ29tcGF0aWJpbGl0eSBmb3IgYWN0aXZlIHN0YXRlXG4gICAgQGlmICRtZW51LXN0YXRlLWJhY2stY29tcGF0IHtcbiAgICAgIC5hY3RpdmUgPiBhIHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1zdGF0ZS1hY3RpdmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQWxpZ24gbGVmdFxuICAgICYuYWxpZ24tI3skZ2xvYmFsLWxlZnR9IHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtYWxpZ24obGVmdCk7XG4gICAgfVxuXG4gICAgLy8gQWxpZ24gcmlnaHRcbiAgICAmLmFsaWduLSN7JGdsb2JhbC1yaWdodH0ge1xuICAgICAgQGluY2x1ZGUgbWVudS1hbGlnbihyaWdodCk7XG5cbiAgICAgIC5uZXN0ZWQge1xuICAgICAgICBAaW5jbHVkZSBtZW51LW5lc3RlZCgkbmVzdGVkLWFsaWdubWVudDogcmlnaHQpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEFsaWduIGNlbnRlclxuICAgICYuYWxpZ24tY2VudGVyIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtYWxpZ24oY2VudGVyKTtcbiAgICB9XG5cbiAgICAubWVudS10ZXh0IHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtdGV4dDtcbiAgICB9XG4gIH1cblxuICBAaWYgJG1lbnUtY2VudGVyZWQtYmFjay1jb21wYXQge1xuICAgIC5tZW51LWNlbnRlcmVkIHtcbiAgICAgID4gLm1lbnUge1xuICAgICAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgQGluY2x1ZGUgbWVudS1hbGlnbihjZW50ZXIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFByZXZlbnQgRk9VQyB3aGVuIHVzaW5nIHRoZSBSZXNwb25zaXZlIE1lbnUgcGx1Z2luXG4gIC5uby1qcyBbZGF0YS1yZXNwb25zaXZlLW1lbnVdIHVsIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBkcm9wZG93bi1tZW51XG4vLy8vXG5cbi8vLyBFbmFibGVzIGFycm93cyBmb3IgaXRlbXMgd2l0aCBkcm9wZG93biBtZW51cy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kZHJvcGRvd25tZW51LWFycm93czogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIFNldHMgZHJvcGRvd24gbWVudSBhcnJvdyBjb2xvciBpZiBhcnJvdyBpcyB1c2VkLlxuLy8vIEB0eXBlIENvbG9yXG4kZHJvcGRvd25tZW51LWFycm93LWNvbG9yOiAkYW5jaG9yLWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcm9wZG93biBtZW51IGFycm93IHNpemUgaWYgYXJyb3cgaXMgdXNlZC5cbi8vLyBAdHlwZSBMZW5ndGhcbiRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZTogNnB4ICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcm9wZG93biBtZW51IGFycm93IHBhZGRpbmcgZm9yIGFsaWduaW5nIHRoZSBhcnJvdyBjb3JyZWN0bHkuXG4vLy8gQHR5cGUgTGVuZ3RoXG4kZHJvcGRvd25tZW51LWFycm93LXBhZGRpbmc6IDEuNXJlbSAhZGVmYXVsdDtcblxuLy8vIE1pbmltdW0gd2lkdGggb2YgZHJvcGRvd24gc3ViLW1lbnVzLlxuLy8vIEB0eXBlIExlbmd0aFxuJGRyb3Bkb3dubWVudS1taW4td2lkdGg6IDIwMHB4ICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgdG9wIGxldmVsIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kZHJvcGRvd25tZW51LWJhY2tncm91bmQ6IG51bGwgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciBkcm9wZG93bnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRkcm9wZG93bm1lbnUtc3VibWVudS1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGZvciB0b3AgbGV2ZWwgaXRlbXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZHJvcGRvd25tZW51LXBhZGRpbmc6ICRnbG9iYWwtbWVudS1wYWRkaW5nICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcm9wZG93biBtZW51IG5lc3RlZCBtYXJnaW5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkcm9wZG93bm1lbnUtbmVzdGVkLW1hcmdpbjogMCAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgZm9yIHN1Yi1tZW51IGl0ZW1zLlxuLy8vIEB0eXBlIE51bWJlclxuJGRyb3Bkb3dubWVudS1zdWJtZW51LXBhZGRpbmc6ICRkcm9wZG93bm1lbnUtcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBmb3IgZHJvcGRvd24gc3ViLW1lbnVzLlxuLy8vIEB0eXBlIExpc3RcbiRkcm9wZG93bm1lbnUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLyBCb3JkZXIgd2lkdGggZm9yIGRyb3Bkb3duIHN1Yi1tZW51cy5cbi8vIFVzZWQgdG8gYWRqdXN0IHRvcCBtYXJnaW4gb2YgYSBzdWItbWVudSBpZiBhIGJvcmRlciBpcyB1c2VkLlxuLy8gQHR5cGUgTGVuZ3RoXG4kZHJvcGRvd25tZW51LWJvcmRlci13aWR0aDogbnRoKCRkcm9wZG93bm1lbnUtYm9yZGVyLCAxKTtcblxuLy8vIFRleHQgY29sb3Igb2YgYW4gYWN0aXZlIGRyb3Bkb3duIG1lbnUgaXRlbS4gRXhwbGljaXQgb3ZlcnJpZGUgZm9yIG1lbnUgZGVmYXVsdHNcbi8vLyBAdHlwZSBDb2xvclxuJGRyb3Bkb3duLW1lbnUtaXRlbS1jb2xvci1hY3RpdmU6IGdldC1jb2xvcihwcmltYXJ5KSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgYW4gYWN0aXZlIGRyb3Bkb3duIG1lbnUgaXRlbS4gRXhwbGljaXQgb3ZlcnJpZGUgZm9yIG1lbnUgZGVmYXVsdHNcbi8vLyBAdHlwZSBDb2xvclxuJGRyb3Bkb3duLW1lbnUtaXRlbS1iYWNrZ3JvdW5kLWFjdGl2ZTogdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbkBtaXhpbiB6Zi1kcm9wZG93bi1sZWZ0LXJpZ2h0LWFycm93cyB7XG4gID4gYTo6YWZ0ZXIge1xuICAgICN7JGdsb2JhbC1yaWdodH06IDE0cHg7XG4gIH1cblxuICAmLm9wZW5zLWxlZnQgPiBhOjphZnRlciB7XG4gICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZSwgJGRyb3Bkb3dubWVudS1hcnJvdy1jb2xvciwgbGVmdCk7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogNXB4O1xuICB9XG5cbiAgJi5vcGVucy1yaWdodCA+IGE6OmFmdGVyIHtcbiAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplLCAkZHJvcGRvd25tZW51LWFycm93LWNvbG9yLCByaWdodCk7XG4gIH1cbn1cblxuQG1peGluIGRyb3Bkb3duLW1lbnUtZGlyZWN0aW9uKCRkaXI6IGhvcml6b250YWwpIHtcbiAgQGlmICRkaXIgPT0gaG9yaXpvbnRhbCB7XG4gICAgPiBsaS5vcGVucy1sZWZ0IHsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG4gICAgICA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgICAgdG9wOiAxMDAlO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgIH1cbiAgICB9XG5cbiAgICA+IGxpLm9wZW5zLXJpZ2h0IHsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG4gICAgICA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgICAgdG9wOiAxMDAlO1xuICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgbGVmdDogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgJGRyb3Bkb3dubWVudS1hcnJvd3Mge1xuICAgICAgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGEgeyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBwYWRkaW5nLSN7JGdsb2JhbC1yaWdodH06ICRkcm9wZG93bm1lbnUtYXJyb3ctcGFkZGluZztcbiAgICAgIH1cblxuICAgICAgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG4gICAgICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkZHJvcGRvd25tZW51LWFycm93LXNpemUsICRkcm9wZG93bm1lbnUtYXJyb3ctY29sb3IsIGRvd24pO1xuICAgICAgICAjeyRnbG9iYWwtcmlnaHR9OiA1cHg7XG4gICAgICAgICN7JGdsb2JhbC1sZWZ0fTogYXV0bztcbiAgICAgICAgbWFyZ2luLXRvcDogLTEgKiAoJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplIC8gMik7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRkaXIgPT0gdmVydGljYWwge1xuICAgID4gbGkge1xuICAgICAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgICB0b3A6IDA7XG4gICAgICB9XG5cbiAgICAgICYub3BlbnMtbGVmdCB7XG4gICAgICAgID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICByaWdodDogMTAwJTtcbiAgICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYub3BlbnMtcmlnaHQge1xuICAgICAgICA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgICBsZWZ0OiAxMDAlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIEBpZiAkZHJvcGRvd25tZW51LWFycm93cyB7XG4gICAgICAgIEBpbmNsdWRlIHpmLWRyb3Bkb3duLWxlZnQtcmlnaHQtYXJyb3dzO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQHdhcm4gJ1RoZSBkaXJlY3Rpb24gdXNlZCBmb3IgZHJvcGRvd24tbWVudS1kaXJlY3Rpb24oKSBtdXN0IGJlIGhvcml6b250YWwgb3IgdmVydGljYWwuJztcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1kcm9wZG93bi1tZW51IHtcbiAgLmRyb3Bkb3duLm1lbnUge1xuICAgIEBpbmNsdWRlIGRyb3Bkb3duLW1lbnUtZGlyZWN0aW9uKGhvcml6b250YWwpO1xuXG4gICAgYSB7XG4gICAgICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gICAgfVxuXG4gICAgLy8gVG9wLWxldmVsIGl0ZW1cbiAgICA+IGxpID4gYSB7XG4gICAgICBiYWNrZ3JvdW5kOiAkZHJvcGRvd25tZW51LWJhY2tncm91bmQ7XG4gICAgICBwYWRkaW5nOiAkZHJvcGRvd25tZW51LXBhZGRpbmc7XG4gICAgfVxuXG4gICAgLy8gVG9wLWxldmVsIGl0ZW0gYWN0aXZlIHN0YXRlXG4gICAgPiBsaS5pcy1hY3RpdmUgPiBhIHtcbiAgICAgIGJhY2tncm91bmQ6ICRkcm9wZG93bi1tZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU7XG4gICAgICBjb2xvcjogJGRyb3Bkb3duLW1lbnUtaXRlbS1jb2xvci1hY3RpdmU7XG4gICAgfVxuXG4gICAgLm5vLWpzICYgdWwge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAubmVzdGVkLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgQGluY2x1ZGUgbWVudS1uZXN0ZWQoJGRyb3Bkb3dubWVudS1uZXN0ZWQtbWFyZ2luKTtcbiAgICB9XG5cbiAgICAmLnZlcnRpY2FsIHtcbiAgICAgIEBpbmNsdWRlIGRyb3Bkb3duLW1lbnUtZGlyZWN0aW9uKHZlcnRpY2FsKTtcbiAgICB9XG5cbiAgICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICAgIEBpZiAkc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgICAgICAmLiN7JHNpemV9LWhvcml6b250YWwge1xuICAgICAgICAgICAgQGluY2x1ZGUgZHJvcGRvd24tbWVudS1kaXJlY3Rpb24oaG9yaXpvbnRhbCk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi4jeyRzaXplfS12ZXJ0aWNhbCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBkcm9wZG93bi1tZW51LWRpcmVjdGlvbih2ZXJ0aWNhbCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5hbGlnbi1yaWdodCB7XG4gICAgICAuaXMtZHJvcGRvd24tc3VibWVudS5maXJzdC1zdWIge1xuICAgICAgICB0b3A6IDEwMCU7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5pcy1kcm9wZG93bi1tZW51LnZlcnRpY2FsIHtcbiAgICB3aWR0aDogMTAwcHg7XG5cbiAgICAmLmFsaWduLXJpZ2h0IHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICB9XG4gIH1cblxuICAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIGE6OmFmdGVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgI3skZ2xvYmFsLXJpZ2h0fTogNXB4O1xuICAgICAgI3skZ2xvYmFsLWxlZnR9OiBhdXRvO1xuICAgICAgbWFyZ2luLXRvcDogLTEgKiAkZHJvcGRvd25tZW51LWFycm93LXNpemU7XG4gICAgfVxuXG4gICAgJi5vcGVucy1pbm5lciA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcblxuICAgICAgdG9wOiAxMDAlO1xuICAgICAgQGlmICRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gJ3J0bCcge1xuICAgICAgICByaWdodDogYXV0bztcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICByaWdodDogMTAwJTtcbiAgICAgIGxlZnQ6IGF1dG87XG4gICAgfVxuXG4gICAgJi5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgbGVmdDogMTAwJTtcbiAgICB9XG4gIH1cblxuICAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICAjeyRnbG9iYWwtbGVmdH06IDEwMCU7XG4gICAgei1pbmRleDogMTtcblxuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgbWluLXdpZHRoOiAkZHJvcGRvd25tZW51LW1pbi13aWR0aDtcblxuICAgIGJvcmRlcjogJGRyb3Bkb3dubWVudS1ib3JkZXI7XG4gICAgYmFja2dyb3VuZDogJGRyb3Bkb3dubWVudS1zdWJtZW51LWJhY2tncm91bmQ7XG5cbiAgICAuZHJvcGRvd24gJiBhIHtcbiAgICAgIHBhZGRpbmc6ICRkcm9wZG93bm1lbnUtc3VibWVudS1wYWRkaW5nO1xuICAgIH1cblxuICAgIC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCB7XG4gICAgICBAaWYgJGRyb3Bkb3dubWVudS1hcnJvd3Mge1xuICAgICAgICBAaW5jbHVkZSB6Zi1kcm9wZG93bi1sZWZ0LXJpZ2h0LWFycm93cztcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgKHR5cGUtb2YoJGRyb3Bkb3dubWVudS1ib3JkZXItd2lkdGgpID09ICdudW1iZXInKSB7XG4gICAgICAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICAgIG1hcmdpbi10b3A6ICgtJGRyb3Bkb3dubWVudS1ib3JkZXItd2lkdGgpO1xuICAgICAgfVxuICAgIH1cblxuICAgID4gbGkge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgLy8gW1RPRE9dIEN1dCBiYWNrIHNwZWNpZmljaXR5XG4gICAgLy8mOm5vdCguanMtZHJvcGRvd24tbm9ob3ZlcikgPiAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQ6aG92ZXIgPiAmLCAvLyB3aHkgaXMgdGhpcyBsaW5lIG5lZWRlZD8gT3BlbmluZyBpcyBoYW5kbGVkIGJ5IEpTIGFuZCB0aGlzIGNhdXNlcyBzb21lIHVnbHkgZmxpY2tlcmluZyB3aGVuIHRoZSBzdWIgaXMgcmUtcG9zaXRpb25lZCBhdXRvbWF0aWNhbGx5Li4uXG4gICAgJi5qcy1kcm9wZG93bi1hY3RpdmUge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBGbGV4Ym94IFV0aWxpdGllc1xuLy8vL1xuLy9cbi8vLyBEZWZhdWx0IHZhbHVlIGZvciB0aGUgY291bnQgb2Ygc291cmNlIG9yZGVyaW5nYFxuLy8vIEB0eXBlIE51bWJlclxuJGZsZXgtc291cmNlLW9yZGVyaW5nLWNvdW50OiA2ICFkZWZhdWx0O1xuXG4vLy8gUXVpY2tseSBkaXNhYmxlL2VuYWJsZSBSZXNwb25zaXZlIGJyZWFrcG9pbnRzIGZvciBWYW5pbGxhIEZsZXggSGVscGVycy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kZmxleGJveC1yZXNwb25zaXZlLWJyZWFrcG9pbnRzOiB0cnVlICFkZWZhdWx0O1xuXG5AbWl4aW4gZmxleC1oZWxwZXJzIHtcbiAgLmZsZXgtY29udGFpbmVyIHtcbiAgICBAaW5jbHVkZSBmbGV4O1xuICB9XG5cbiAgLmZsZXgtY2hpbGQtYXV0byB7XG4gICAgZmxleDogMSAxIGF1dG87XG4gIH1cblxuICAuZmxleC1jaGlsZC1ncm93IHtcbiAgICBmbGV4OiAxIDAgYXV0bztcbiAgfVxuXG4gIC5mbGV4LWNoaWxkLXNocmluayB7XG4gICAgZmxleDogMCAxIGF1dG87XG4gIH1cblxuICBAZWFjaCAkZGlyLCAkcHJvcCBpbiAkLXpmLWZsZXgtZGlyZWN0aW9uIHtcbiAgICAuZmxleC1kaXItI3skZGlyfSB7XG4gICAgICBAaW5jbHVkZSBmbGV4LWRpcmVjdGlvbigkcHJvcCk7XG4gICAgfVxuICB9XG5cbiAgQGlmICgkZmxleGJveC1yZXNwb25zaXZlLWJyZWFrcG9pbnRzKSB7XG4gICAgLy8gTG9vcCB0aHJvdWdoIFJlc3BvbnNpdmUgQnJlYWtwb2ludHNcbiAgICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgICAgQGlmICRzaXplICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAuI3skc2l6ZX0tZmxleC1jb250YWluZXIge1xuICAgICAgICAgICAgQGluY2x1ZGUgZmxleDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuI3skc2l6ZX0tZmxleC1jaGlsZC1hdXRvIHtcbiAgICAgICAgICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC4jeyRzaXplfS1mbGV4LWNoaWxkLWdyb3cge1xuICAgICAgICAgICAgZmxleDogMSAwIGF1dG87XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLiN7JHNpemV9LWZsZXgtY2hpbGQtc2hyaW5rIHtcbiAgICAgICAgICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIEBlYWNoICRkaXIsICRwcm9wIGluICQtemYtZmxleC1kaXJlY3Rpb24ge1xuICAgICAgICAgICAgLiN7JHNpemV9LWZsZXgtZGlyLSN7JGRpcn0ge1xuICAgICAgICAgICAgICBAaW5jbHVkZSBmbGV4LWRpcmVjdGlvbigkcHJvcCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZsZXgtY2xhc3NlcyB7XG4gIC8vIEhvcml6b250YWwgYWxpZ25tZW50IHVzaW5nIGp1c3RpZnktY29udGVudFxuICBAZWFjaCAkaGRpciwgJHByb3AgaW4gJC16Zi1mbGV4LWp1c3RpZnkge1xuICAgIC5hbGlnbi0jeyRoZGlyfSB7XG4gICAgICBAaW5jbHVkZSBmbGV4LWFsaWduKCR4OiAkaGRpcik7XG4gICAgfVxuICB9XG4gIFxuICAvLyBIb3Jpem9udGFsIGFsaWdubWVudCBTcGVjaWZpY2FsbHkgZm9yIFZlcnRpY2FsIE1lbnVcbiAgQGVhY2ggJGhkaXIsICRwcm9wIGluIG1hcC1yZW1vdmUoJC16Zi1mbGV4LWp1c3RpZnksICdqdXN0aWZ5JywgJ3NwYWNlZCcpIHtcbiAgICAuYWxpZ24tI3skaGRpcn0ge1xuICAgICAgJi52ZXJ0aWNhbCB7XG4gICAgICAgICYubWVudSA+IGxpID4gYSB7XG4gICAgICAgICAgQGluY2x1ZGUgZmxleC1hbGlnbigkeDogJGhkaXIpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gVmVydGljYWwgYWxpZ25tZW50IHVzaW5nIGFsaWduLWl0ZW1zIGFuZCBhbGlnbi1zZWxmXG4gIEBlYWNoICR2ZGlyLCAkcHJvcCBpbiAkLXpmLWZsZXgtYWxpZ24ge1xuICAgIC5hbGlnbi0jeyR2ZGlyfSB7XG4gICAgICBAaW5jbHVkZSBmbGV4LWFsaWduKCR5OiAkdmRpcik7XG4gICAgfVxuXG4gICAgLmFsaWduLXNlbGYtI3skdmRpcn0ge1xuICAgICAgQGluY2x1ZGUgZmxleC1hbGlnbi1zZWxmKCR5OiAkdmRpcik7XG4gICAgfVxuICB9XG5cbiAgLy8gQ2VudHJhbCBhbGlnbm1lbnQgb2YgY29udGVudFxuICAuYWxpZ24tY2VudGVyLW1pZGRsZSB7XG4gICAgQGluY2x1ZGUgZmxleC1hbGlnbigkeDogY2VudGVyLCAkeTogbWlkZGxlKTtcbiAgICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XG4gIH1cblxuICAvLyBTb3VyY2Ugb3JkZXJpbmdcbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCB7XG4gICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZmxleC1zb3VyY2Utb3JkZXJpbmctY291bnQge1xuICAgICAgLiN7JC16Zi1zaXplfS1vcmRlci0jeyRpfSB7XG4gICAgICAgIEBpbmNsdWRlIGZsZXgtb3JkZXIoJGkpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFZhbmlsbGEgRmxleGJveCBIZWxwZXJzXG4gIEBpbmNsdWRlIGZsZXgtaGVscGVycztcbn1cbiIsIkBmdW5jdGlvbiAtemYtZmxleC1qdXN0aWZ5KCR0ZXh0LWRpcmVjdGlvbil7XG4gICQtemYtZmxleC1qdXN0aWZ5OiAoXG4gICAgJ2xlZnQnOiBpZigkdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCBmbGV4LWVuZCwgZmxleC1zdGFydCksXG4gICAgJ3JpZ2h0JzogaWYoJHRleHQtZGlyZWN0aW9uID09IHJ0bCwgZmxleC1zdGFydCwgZmxleC1lbmQpLFxuICAgICdjZW50ZXInOiBjZW50ZXIsXG4gICAgJ2p1c3RpZnknOiBzcGFjZS1iZXR3ZWVuLFxuICAgICdzcGFjZWQnOiBzcGFjZS1hcm91bmQsXG4gICk7XG5cbiAgQHJldHVybiAkLXpmLWZsZXgtanVzdGlmeTtcbn1cblxuXG4kLXpmLWZsZXgtYWxpZ246IChcbiAgJ3RvcCc6IGZsZXgtc3RhcnQsXG4gICdib3R0b20nOiBmbGV4LWVuZCxcbiAgJ21pZGRsZSc6IGNlbnRlcixcbiAgJ3N0cmV0Y2gnOiBzdHJldGNoLFxuKTtcblxuJC16Zi1mbGV4LWRpcmVjdGlvbjogKFxuICAncm93Jzogcm93LFxuICAncm93LXJldmVyc2UnOiByb3ctcmV2ZXJzZSxcbiAgJ2NvbHVtbic6IGNvbHVtbixcbiAgJ2NvbHVtbi1yZXZlcnNlJzogY29sdW1uLXJldmVyc2UsXG4pO1xuXG4vLy8gRW5hYmxlcyBmbGV4Ym94IGJ5IGFkZGluZyBgZGlzcGxheTogZmxleGAgdG8gdGhlIGVsZW1lbnQuXG5AbWl4aW4gZmxleCB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG5cbi8vLyBIb3Jpem9udGFsbHkgb3IgdmVydGljYWxseSBhbGlnbnMgdGhlIGl0ZW1zIHdpdGhpbiBhIGZsZXggY29udGFpbmVyLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkeCBbbnVsbF0gLSBIb3Jpem9udGFsIGFsaWdubWVudCB0byB1c2UuIENhbiBiZSBgbGVmdGAsIGByaWdodGAsIGBjZW50ZXJgLCBganVzdGlmeWAsIG9yIGBzcGFjZWRgLiBPciwgc2V0IGl0IHRvIGBudWxsYCAodGhlIGRlZmF1bHQpIHRvIG5vdCBzZXQgaG9yaXpvbnRhbCBhbGlnbm1lbnQuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkeSBbbnVsbF0gLSBWZXJ0aWNhbCBhbGlnbm1lbnQgdG8gdXNlLiBDYW4gYmUgYHRvcGAsIGBib3R0b21gLCBgbWlkZGxlYCwgb3IgYHN0cmV0Y2hgLiBPciwgc2V0IGl0IHRvIGBudWxsYCAodGhlIGRlZmF1bHQpIHRvIG5vdCBzZXQgdmVydGljYWwgYWxpZ25tZW50LlxuQG1peGluIGZsZXgtYWxpZ24oJHg6IG51bGwsICR5OiBudWxsKSB7XG4gIEBpZiAkeCB7XG4gICAgQGlmIG1hcC1oYXMta2V5KCQtemYtZmxleC1qdXN0aWZ5LCAkeCkge1xuICAgICAgJHg6IG1hcC1nZXQoJC16Zi1mbGV4LWp1c3RpZnksICR4KTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQHdhcm4gJ2ZsZXgtZ3JpZC1yb3ctYWxpZ24oKTogI3skeH0gaXMgbm90IGEgdmFsaWQgdmFsdWUgZm9yIGhvcml6b250YWwgYWxpZ25tZW50LiBVc2UgbGVmdCwgcmlnaHQsIGNlbnRlciwganVzdGlmeSwgb3Igc3BhY2VkLic7XG4gICAgfVxuICB9XG5cbiAgQGlmICR5IHtcbiAgICBAaWYgbWFwLWhhcy1rZXkoJC16Zi1mbGV4LWFsaWduLCAkeSkge1xuICAgICAgJHk6IG1hcC1nZXQoJC16Zi1mbGV4LWFsaWduLCAkeSk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEB3YXJuICdmbGV4LWdyaWQtcm93LWFsaWduKCk6ICN7JHl9IGlzIG5vdCBhIHZhbGlkIHZhbHVlIGZvciB2ZXJ0aWNhbCBhbGlnbm1lbnQuIFVzZSB0b3AsIGJvdHRvbSwgbWlkZGxlLCBvciBzdHJldGNoLic7XG4gICAgfVxuICB9XG5cbiAganVzdGlmeS1jb250ZW50OiAkeDtcbiAgYWxpZ24taXRlbXM6ICR5O1xufVxuXG4vLy8gVmVydGljYWxseSBhbGlnbiBhIHNpbmdsZSBjb2x1bW4gd2l0aGluIGEgZmxleCByb3cuIEFwcGx5IHRoaXMgbWl4aW4gdG8gYSBmbGV4IGNvbHVtbi5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHkgW251bGxdIC0gVmVydGljYWwgYWxpZ25tZW50IHRvIHVzZS4gQ2FuIGJlIGB0b3BgLCBgYm90dG9tYCwgYG1pZGRsZWAsIG9yIGBzdHJldGNoYC4gT3IsIHNldCBpdCB0byBgbnVsbGAgKHRoZSBkZWZhdWx0KSB0byBub3Qgc2V0IHZlcnRpY2FsIGFsaWdubWVudC5cbkBtaXhpbiBmbGV4LWFsaWduLXNlbGYoJHk6IG51bGwpIHtcbiAgQGlmICR5IHtcbiAgICBAaWYgbWFwLWhhcy1rZXkoJC16Zi1mbGV4LWFsaWduLCAkeSkge1xuICAgICAgJHk6IG1hcC1nZXQoJC16Zi1mbGV4LWFsaWduLCAkeSk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEB3YXJuICdmbGV4LWdyaWQtY29sdW1uLWFsaWduKCk6ICN7JHl9IGlzIG5vdCBhIHZhbGlkIHZhbHVlIGZvciBhbGlnbm1lbnQuIFVzZSB0b3AsIGJvdHRvbSwgbWlkZGxlLCBvciBzdHJldGNoLic7XG4gICAgfVxuICB9XG5cbiAgYWxpZ24tc2VsZjogJHk7XG59XG5cbi8vLyBDaGFuZ2VzIHRoZSBzb3VyY2Ugb3JkZXIgb2YgYSBmbGV4IGNoaWxkLiBDaGlsZHJlbiB3aXRoIGxvd2VyIG51bWJlcnMgYXBwZWFyIGZpcnN0IGluIHRoZSBsYXlvdXQuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRvcmRlciBbMF0gLSBPcmRlciBudW1iZXIgdG8gYXBwbHkuXG5AbWl4aW4gZmxleC1vcmRlcigkb3JkZXI6IDApIHtcbiAgb3JkZXI6ICRvcmRlcjtcbn1cblxuLy8vIENoYW5nZSBmbGV4LWRpcmVjdGlvblxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRpcmVjdGlvbiBbcm93XSAtIEZsZXggZGlyZWN0aW9uIHRvIHVzZS4gQ2FuIGJlXG4vLy8gICAtIHJvdyAoZGVmYXVsdCk6IHNhbWUgYXMgdGV4dCBkaXJlY3Rpb25cbi8vLyAgIC0gcm93LXJldmVyc2U6IG9wcG9zaXRlIHRvIHRleHQgZGlyZWN0aW9uXG4vLy8gICAtIGNvbHVtbjogc2FtZSBhcyByb3cgYnV0IHRvcCB0byBib3R0b21cbi8vLyAgIC0gY29sdW1uLXJldmVyc2U6IHNhbWUgYXMgcm93LXJldmVyc2UgdG9wIHRvIGJvdHRvbVxuQG1peGluIGZsZXgtZGlyZWN0aW9uKCRkaXJlY3Rpb246IHJvdykge1xuICBmbGV4LWRpcmVjdGlvbjogJGRpcmVjdGlvbjtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8gSGlkZSBhbiBlbGVtZW50IGJ5IGRlZmF1bHQsIG9ubHkgZGlzcGxheWluZyBpdCBhYm92ZSBhIGNlcnRhaW4gc2NyZWVuIHNpemUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSAtIEJyZWFrcG9pbnQgdG8gdXNlLiAqKk11c3QgYmUgYSBicmVha3BvaW50IGRlZmluZWQgaW4gYCRicmVha3BvaW50c2AuKipcbkBtaXhpbiBzaG93LWZvcigkc2l6ZSkge1xuICAkc2l6ZTogbWFwLWdldCgkYnJlYWtwb2ludHMsICRzaXplKTtcbiAgLy8gTWF4IHZhbHVlIGlzIDAuMnB4IHVuZGVyIHRoZSBuZXh0IGJyZWFrcG9pbnQgKDAuMDIgLyAxNiA9IDAuMDAxMjUpLlxuICAvLyBVc2UgYSBwcmVjaXNpb24gdW5kZXIgMXB4IHRvIHN1cHBvcnQgYnJvd3NlciB6b29tLCBidXQgbm90IHRvIGxvdyB0byBhdm9pZCByb3VuZGluZy5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS96dXJiL2ZvdW5kYXRpb24tc2l0ZXMvaXNzdWVzLzExMzEzXG4gICRzaXplOiAtemYtYnAtdG8tZW0oJHNpemUpIC0gLjAwMTI1O1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUgZG93bikge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLy8gSGlkZSBhbiBlbGVtZW50IGJ5IGRlZmF1bHQsIG9ubHkgZGlzcGxheWluZyBpdCB3aXRoaW4gYSBjZXJ0YWluIGJyZWFrcG9pbnQuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSAtIEJyZWFrcG9pbnQgdG8gdXNlLiAqKk11c3QgYmUgYSBicmVha3BvaW50IGRlZmluZWQgaW4gYCRicmVha3BvaW50c2AuKipcbkBtaXhpbiBzaG93LWZvci1vbmx5KCRzaXplKSB7XG4gICRsb3dlci1ib3VuZC1zaXplOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJHNpemUpO1xuICAkdXBwZXItYm91bmQtc2l6ZTogLXpmLW1hcC1uZXh0KCRicmVha3BvaW50cywgJHNpemUpO1xuXG4gIC8vIG1vcmUgb2Z0ZW4gdGhhbiBub3QgdGhpcyB3aWxsIGJlIGNvcnJlY3QsIGp1c3Qgb25lIHRpbWUgcm91bmQgdGhlIGxvb3AgaXQgd29uJ3Qgc28gc2V0IGluIHNjb3BlIGhlcmVcbiAgJGxvd2VyLWJvdW5kOiAtemYtYnAtdG8tZW0oJGxvd2VyLWJvdW5kLXNpemUpIC0gLjAwMTI1O1xuICAvLyB0ZXN0IGFjdHVhbCBsb3dlci1ib3VuZC1zaXplLCBpZiAwIHNldCBpdCB0byAwZW1cbiAgQGlmIHN0cmlwLXVuaXQoJGxvd2VyLWJvdW5kLXNpemUpID09IDAge1xuICAgICRsb3dlci1ib3VuZDogLXpmLWJwLXRvLWVtKCRsb3dlci1ib3VuZC1zaXplKTtcbiAgfVxuXG4gIEBpZiAkdXBwZXItYm91bmQtc2l6ZSA9PSBudWxsIHtcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbG93ZXItYm91bmQpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgICR1cHBlci1ib3VuZDogLXpmLWJwLXRvLWVtKCR1cHBlci1ib3VuZC1zaXplKTtcblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRsb3dlci1ib3VuZCksIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJHVwcGVyLWJvdW5kKSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG5cblxuLy8vIFNob3cgYW4gZWxlbWVudCBieSBkZWZhdWx0LCBhbmQgaGlkZSBpdCBhYm92ZSBhIGNlcnRhaW4gc2NyZWVuIHNpemUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSAtIEJyZWFrcG9pbnQgdG8gdXNlLiAqKk11c3QgYmUgYSBicmVha3BvaW50IGRlZmluZWQgaW4gYCRicmVha3BvaW50c2AuKipcbkBtaXhpbiBoaWRlLWZvcigkc2l6ZSkge1xuICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8vLyBTaG93IGFuIGVsZW1lbnQgYnkgZGVmYXVsdCwgYW5kIGhpZGUgaXQgYWJvdmUgYSBjZXJ0YWluIHNjcmVlbiBzaXplLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBCcmVha3BvaW50IHRvIHVzZS4gKipNdXN0IGJlIGEgYnJlYWtwb2ludCBkZWZpbmVkIGluIGAkYnJlYWtwb2ludHNgLioqXG5AbWl4aW4gaGlkZS1mb3Itb25seSgkc2l6ZSkge1xuICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplIG9ubHkpIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tdmlzaWJpbGl0eS1jbGFzc2VzIHtcbiAgLy8gQmFzaWMgaGlkaW5nIGNsYXNzZXNcbiAgLmhpZGUge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5pbnZpc2libGUge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuXG4gIC8vIFJlc3BvbnNpdmUgdmlzaWJpbGl0eSBjbGFzc2VzXG4gIEBlYWNoICRzaXplIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgIEBpZiAkc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAuaGlkZS1mb3ItI3skc2l6ZX0ge1xuICAgICAgICBAaW5jbHVkZSBoaWRlLWZvcigkc2l6ZSk7XG4gICAgICB9XG5cbiAgICAgIC5zaG93LWZvci0jeyRzaXplfSB7XG4gICAgICAgIEBpbmNsdWRlIHNob3ctZm9yKCRzaXplKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuaGlkZS1mb3ItI3skc2l6ZX0tb25seSB7XG4gICAgICBAaW5jbHVkZSBoaWRlLWZvci1vbmx5KCRzaXplKTtcbiAgICB9XG5cbiAgICAuc2hvdy1mb3ItI3skc2l6ZX0tb25seSB7XG4gICAgICBAaW5jbHVkZSBzaG93LWZvci1vbmx5KCRzaXplKTtcbiAgICB9XG4gIH1cblxuICAvLyBTY3JlZW4gcmVhZGVyIHZpc2liaWxpdHkgY2xhc3Nlc1xuICAvLyBOZWVkIGEgXCJoaWRlLWZvci1zclwiIGNsYXNzPyBBZGQgYXJpYS1oaWRkZW49J3RydWUnIHRvIHRoZSBlbGVtZW50XG4gIC5zaG93LWZvci1zcixcbiAgLnNob3ctb24tZm9jdXMge1xuICAgIEBpbmNsdWRlIGVsZW1lbnQtaW52aXNpYmxlO1xuICB9XG5cbiAgLy8gT25seSBkaXNwbGF5IHRoZSBlbGVtZW50IHdoZW4gaXQncyBmb2N1c2VkXG4gIC5zaG93LW9uLWZvY3VzIHtcbiAgICAmOmFjdGl2ZSxcbiAgICAmOmZvY3VzIHtcbiAgICAgIEBpbmNsdWRlIGVsZW1lbnQtaW52aXNpYmxlLW9mZjtcbiAgICB9XG4gIH1cblxuICAvLyBMYW5kc2NhcGUgYW5kIHBvcnRyYWl0IHZpc2liaWxpdHlcbiAgLnNob3ctZm9yLWxhbmRzY2FwZSxcbiAgLmhpZGUtZm9yLXBvcnRyYWl0IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYW5kc2NhcGUpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChwb3J0cmFpdCkge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC5oaWRlLWZvci1sYW5kc2NhcGUsXG4gIC5zaG93LWZvci1wb3J0cmFpdCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYW5kc2NhcGUpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHBvcnRyYWl0KSB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuIiwiQGNoYXJzZXQgJ3V0Zi04JztcblxuQGltcG9ydCAnZnVybml0dXJlL2ZvbnRzLnNjc3MnO1xuXG5AaW1wb3J0ICdzZXR0aW5ncyc7XG5AaW1wb3J0ICdmb3VuZGF0aW9uJztcbi8vIEBpbXBvcnQgJ21vdGlvbi11aSc7XG5cbi8vIEdsb2JhbCBzdHlsZXNcbkBpbmNsdWRlIGZvdW5kYXRpb24tZ2xvYmFsLXN0eWxlcztcbkBpbmNsdWRlIGZvdW5kYXRpb24tZm9ybXM7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLXR5cG9ncmFwaHk7XG5cbi8vIEdyaWRzIChjaG9vc2Ugb25lKVxuQGluY2x1ZGUgZm91bmRhdGlvbi14eS1ncmlkLWNsYXNzZXM7XG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLWdyaWQ7XG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLWZsZXgtZ3JpZDtcblxuLy8gR2VuZXJpYyBjb21wb25lbnRzXG5AaW5jbHVkZSBmb3VuZGF0aW9uLWJ1dHRvbjtcbi8vIEBpbmNsdWRlIGZvdW5kYXRpb24tYnV0dG9uLWdyb3VwO1xuLy8gQGluY2x1ZGUgZm91bmRhdGlvbi1jbG9zZS1idXR0b247XG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLWxhYmVsO1xuLy8gQGluY2x1ZGUgZm91bmRhdGlvbi1wcm9ncmVzcy1iYXI7XG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLXNsaWRlcjtcbi8vIEBpbmNsdWRlIGZvdW5kYXRpb24tc3dpdGNoO1xuQGluY2x1ZGUgZm91bmRhdGlvbi10YWJsZTtcbi8vIEJhc2ljIGNvbXBvbmVudHNcbi8vIEBpbmNsdWRlIGZvdW5kYXRpb24tYmFkZ2U7XG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLWJyZWFkY3J1bWJzO1xuLy8gQGluY2x1ZGUgZm91bmRhdGlvbi1jYWxsb3V0O1xuLy8gQGluY2x1ZGUgZm91bmRhdGlvbi1jYXJkO1xuLy8gQGluY2x1ZGUgZm91bmRhdGlvbi1kcm9wZG93bjtcbi8vIEBpbmNsdWRlIGZvdW5kYXRpb24tcGFnaW5hdGlvbjtcbi8vIEBpbmNsdWRlIGZvdW5kYXRpb24tdG9vbHRpcDtcblxuLy8gQ29udGFpbmVyc1xuQGluY2x1ZGUgZm91bmRhdGlvbi1hY2NvcmRpb247XG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLW1lZGlhLW9iamVjdDtcbi8vIEBpbmNsdWRlIGZvdW5kYXRpb24tb3JiaXQ7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLXJlc3BvbnNpdmUtZW1iZWQ7XG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLXRhYnM7XG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLXRodW1ibmFpbDtcbi8vIE1lbnUtYmFzZWQgY29udGFpbmVyc1xuQGluY2x1ZGUgZm91bmRhdGlvbi1tZW51O1xuLy8gQGluY2x1ZGUgZm91bmRhdGlvbi1tZW51LWljb247XG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLWFjY29yZGlvbi1tZW51O1xuLy8gQGluY2x1ZGUgZm91bmRhdGlvbi1kcmlsbGRvd24tbWVudTtcbkBpbmNsdWRlIGZvdW5kYXRpb24tZHJvcGRvd24tbWVudTtcblxuLy8gTGF5b3V0IGNvbXBvbmVudHNcbi8vIEBpbmNsdWRlIGZvdW5kYXRpb24tb2ZmLWNhbnZhcztcbi8vIEBpbmNsdWRlIGZvdW5kYXRpb24tcmV2ZWFsO1xuLy8gQGluY2x1ZGUgZm91bmRhdGlvbi1zdGlja3k7XG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLXRpdGxlLWJhcjtcbi8vIEBpbmNsdWRlIGZvdW5kYXRpb24tdG9wLWJhcjtcblxuLy8gSGVscGVyc1xuLy8gQGluY2x1ZGUgZm91bmRhdGlvbi1mbG9hdC1jbGFzc2VzO1xuQGluY2x1ZGUgZm91bmRhdGlvbi1mbGV4LWNsYXNzZXM7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLXZpc2liaWxpdHktY2xhc3Nlcztcbi8vIEBpbmNsdWRlIGZvdW5kYXRpb24tcHJvdG90eXBlLWNsYXNzZXM7XG5cbi8vIE1vdGlvbiBVSVxuLy8gQGluY2x1ZGUgbW90aW9uLXVpLXRyYW5zaXRpb25zO1xuLy8gQGluY2x1ZGUgbW90aW9uLXVpLWFuaW1hdGlvbnM7XG5cbi8vIEZ1cm5pdHVyZSBTdHlsZXNcbmJvZHksIGh0bWwge1xuICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgICBoZWlnaHQ6IDEwMCU7XG59XG5cbmhlYWRlciwgbWFpbiwgZm9vdGVyIHtcbiAgICAuZ3JpZC1jb250YWluZXIge1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDEuNXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDU2cHg7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cblxuICAgIH1cbn1cblxuc2VjdGlvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMHB4O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNTBweDtcbiAgICB9XG59XG5cbi8vIEJhc2VsaW5lIEZ1cm5pdHVyZVxuQGltcG9ydCAnZnVybml0dXJlL2hlYWRlci5zY3NzJztcbkBpbXBvcnQgJ2Z1cm5pdHVyZS9mb290ZXIuc2Nzcyc7XG5AaW1wb3J0ICdmdXJuaXR1cmUvbWVudS1vdmVyd3JpdGUuc2Nzcyc7XG5AaW1wb3J0ICdmb290ZXIvX2dvb2dsZS1tYXBzLnNjc3MnO1xuQGltcG9ydCAnZm9vdGVyL190ZXJtcy1zb2NpYWwuc2Nzcyc7XG5AaW1wb3J0ICdmb290ZXIvX21lbnUtY29udGFjdC5zY3NzJztcblxuQGltcG9ydCBcImZ1cm5pdHVyZS9mYXZvdXJpdGVzLW1lbnVcIjtcbkBpbXBvcnQgXCJmdXJuaXR1cmUvYnV0dG9uLnNjc3NcIjtcblxuLy8gRWxlbWVudHNcbkBpbXBvcnQgJ2VsZW1lbnRzL19ldmVudC10aW1lLnNjc3MnO1xuQGltcG9ydCAnZWxlbWVudHMvX2V2ZW50LWxpc3QtaXRlbS5zY3NzJztcbkBpbXBvcnQgJ2VsZW1lbnRzL191bWJyYWNvLWZvcm1zLnNjc3MnO1xuQGltcG9ydCAnZWxlbWVudHMvX2NvYy1mb3Jtcy5zY3NzJztcbkBpbXBvcnQgJ2VsZW1lbnRzL19tZW1iZXItdHlwZS1pdGVtLnNjc3MnO1xuQGltcG9ydCAnZWxlbWVudHMvX21ldGhvZC1saXN0LWl0ZW0uc2Nzcyc7XG5AaW1wb3J0ICdlbGVtZW50cy9fbWV0aG9kLWxpc3Quc2Nzcyc7XG5AaW1wb3J0ICdlbGVtZW50cy9fZmF2b3VyaXRlLWJ0bi5zY3NzJztcblxuXG4vLyBCYXNlbGluZSBTZWN0aW9uc1xuQGltcG9ydCAnc2VjdGlvbnMvX2ZlYXR1cmUtc2VjdGlvbi5zY3NzJztcbkBpbXBvcnQgJ3NlY3Rpb25zL19pbWFnZS1ncmlkLXNlY3Rpb24uc2Nzcyc7XG5AaW1wb3J0ICdzZWN0aW9ucy9faW1hZ2UtdGV4dC1ncmlkLXNlY3Rpb24uc2Nzcyc7XG5cbkBpbXBvcnQgJ3NlY3Rpb25zL19oZXJvLWNpcmtlbC1zZWN0aW9uLnNjc3MnO1xuQGltcG9ydCAnc2VjdGlvbnMvX2hlcm8tc2VjdGlvbi5zY3NzJztcbkBpbXBvcnQgJ3NlY3Rpb25zL19oZWFkaW5nLXNlY3Rpb24uc2Nzcyc7XG5AaW1wb3J0ICdzZWN0aW9ucy9fY29udGFjdC1zZWN0aW9uLnNjc3MnO1xuQGltcG9ydCAnc2VjdGlvbnMvX2xvbmctY29udGVudC1zZWN0aW9uLnNjc3MnO1xuQGltcG9ydCAnc2VjdGlvbnMvX2V2ZW50cy1vdmVydmlldy1zZWN0aW9uLnNjc3MnO1xuQGltcG9ydCAnc2VjdGlvbnMvX21lbWJlci10eXBlLW92ZXJ2aWV3LXNlY3Rpb24uc2Nzcyc7XG5cbkBpbXBvcnQgJ3BhZ2VzL19ldmVudC1wYWdlLnNjc3MnO1xuQGltcG9ydCAncGFnZXMvX21ldGhvZC1wYWdlLnNjc3MnO1xuQGltcG9ydCAncGFnZXMvX21ldGhvZC1vdmVydmlldy1wYWdlLnNjc3MnO1xuXG4vLyBCYXNlbGluZSBNYWNyb3NcbkBpbXBvcnQgJ21hY3Jvcy9fY29udGFjdC1tYWNyby5zY3NzJztcbkBpbXBvcnQgJ21hY3Jvcy9faW5mby1saXN0LW1hY3JvLnNjc3MnO1xuXG5cbi8vIFdIWT9cbioge1xuICAgIG91dGxpbmU6IG5vbmUhaW1wb3J0YW50O1xufVxuXG4vLyBORUVEIFRPIE1PVkUgVE8gT1dOIFNBU1MgRklMRVxuLmluc3RhZ3JhbV9nYWxsZXJ5IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIHBhZGRpbmc6IDIwcHg7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBwYWRkaW5nOjA7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjM1cyBlYXNlLWluLW91dDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICAgICAgd2lkdGg6IDI1JTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGltZyB7XG4gICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAuMzVzIGVhc2UtaW4tb3V0O1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgb3BhY2l0eTogLjg7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjM1cyBlYXNlLWluLW91dDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gUVVJQ0sgRklYIC0gTkVFRCBUTyBNT1ZFIFRPIEZPUk1TIFNBU1Ncbi51bWJyYWNvLWZvcm1zLWZvcm0gLmNoZWNrYm94bGlzdCBsYWJlbCB7XG4gICAgY2xlYXI6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuQGltcG9ydCAnZWxlbWVudHMvX2Zhdm91cml0ZS1saXN0LXByaW50LnNjc3MnOyIsIu+7vyAgICAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQge1xuICAgICYub3BlbnMtcmlnaHQge1xuICAgICAgICA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgICAgICAgIHRvcDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICAgICAgbGVmdDogMCAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogOTAlO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuXG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYShnZXQtY29sb3IocHJpbWFyeSksIDAuMSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICArIGxpIGEge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYShnZXQtY29sb3IocHJpbWFyeSksIDAuMSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5vcGVucy1sZWZ0IHtcbiAgICAgICAgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICAgICAgICB0b3A6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgICAgIHJpZ2h0OiAwICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiA5MCU7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG5cbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKGdldC1jb2xvcihwcmltYXJ5KSwgMC4xKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICsgbGkgYSB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKGdldC1jb2xvcihwcmltYXJ5KSwgMC4xKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5tb2JpbGVtZW51IHtcblxuICAgIGxpIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG5cbiAgICAgICAgPiBhIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50IHtcblxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICB3aWR0aDogOHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiA4cHg7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBib3JkZXItcmlnaHQ6IHNvbGlkIDJweDtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDJweDtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogIzJmOGZmZjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHJpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgdG9wOiAxNnB4O1xuICAgICAgICB9XG5cbiAgICAgICAgPiBhIHtcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbn0iLCLvu78uZ29vZ2xlLW1hcHMge1xuICAgIGlmcmFtZSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbn0iLCLvu78udGVybXMtc29jaWFsIHtcbiAgICBiYWNrZ3JvdW5kOiBnZXQtY29sb3IocHJpbWFyeSk7XG4gICAgcGFkZGluZzogMzBweCAwO1xuXG4gICAgYSB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgfVxuXG4gICAgJl9fdGVybXMge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAzNXB4O1xuXG4gICAgICAgIGxpOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3NvY2lhbHMge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgICAgICAgbGk6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDI5MCU7XG5cbiAgICAgICAgICAgICYuaWNvbi1pbnN0YWdyYW0tY2lyY2xlIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDMxMiU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwi77u/Lm1lbnUtY29udGFjdCB7XG4gICAgYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4gICAgcGFkZGluZzogMTVweCAwIDE1cHggMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICB0ZXh0LWFsaWduOiBpbml0aWFsO1xuICAgICAgICBwYWRkaW5nOiA3NXB4IDAgNTVweCAwO1xuICAgIH1cblxuICAgICZfX21lbnUge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBwYWRkaW5nLXRvcDogMjBweDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAzMHB4O1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDUwcHg7XG4gICAgICAgIH1cblxuICAgICAgICA+IGxpIHtcbiAgICAgICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDFyZW07XG5cbiAgICAgICAgICAgID4gYSB7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19zdWJtZW51IHtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDEycHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19jb250ZW50IHtcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19waG9uZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTcwJTtcbiAgICB9XG5cbiAgICAmX19jb250YWluZXIge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgcGFkZGluZy10b3A6IDIwcHg7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDJweCBzb2xpZCAjZTJlMmUyO1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDMwcHg7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNTBweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2hlYWRpbmcge1xuICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgIH1cbn1cbiIsIu+7vy5mYXZvdXJpdGVzLW1lbnUge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHJpZ2h0OiAtMTAwJTtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgei1pbmRleDogNDtcbiAgICB0cmFuc2l0aW9uOiByaWdodCAwLjVzIGVhc2UtaW47XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICBib3gtc2hhZG93OiAwIDAgMjVweCAwIHJnYmEoMCwwLDAsMC4xKTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgdG9wOiAwO1xuICAgIHBhZGRpbmc6IDIlO1xuICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICByaWdodDogLTEwMCU7XG4gICAgICAgIHBhZGRpbmc6IDQlO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgcGFkZGluZzogNiU7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMTY2cHg7XG4gICAgICAgIHJpZ2h0OiAtMTE2NnB4O1xuICAgIH1cblxuICAgICYtLW9wZW4ge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgdHJhbnNpdGlvbjogcmlnaHQgMC40cyBlYXNlLW91dDtcbiAgICAgICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDUwcHg7XG4gICAgICAgIHotaW5kZXg6IDk5OTtcblxuICAgICAgICAuZmF2b3VyaXRlcy1tZW51X19jdGEge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC00JTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IC0wLjIlO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDExNjZweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2hlYWRpbmcge1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwcHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDQwcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX190b3AtY29udGVudCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGJhc2VsaW5lO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAtMzBweDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBtYXJnaW4tdG9wOiA2MHB4O1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICAgICAgICAgICAgcG9zaXRpb246IGluaXRpYWw7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiB1bnNldDtcbiAgICAgICAgfVxuXG4gICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgb3BhY2l0eTogMC44O1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCByZ2JhKDAsMCwwLDAuMSk7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogOHB4O1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgICAgICAgICAgY29sb3I6ICMyRDhGRkY7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEzcHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxM3B4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogIzJEOEZGRjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2N0YSB7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0wLjElO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAtMC4yJTtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIHBhZGRpbmc6IDE1cHggMjVweCAxNXB4IDI1cHg7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgLTVweCA1cHggLTVweCByZ2JhKDAsMCwwLDAuMSk7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAgICAgei1pbmRleDogMTAwMDtcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB1bnNldDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiB1bnNldDtcbiAgICAgICAgICAgIGJvdHRvbTogdW5zZXQ7XG4gICAgICAgICAgICB3aWR0aDogdW5zZXQ7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiB1bnNldDtcbiAgICAgICAgICAgIHotaW5kZXg6IHVuc2V0O1xuICAgICAgICAgICAgZGlzcGxheTogdW5zZXQ7XG4gICAgICAgICAgICBtYXJnaW46IHVuc2V0O1xuICAgICAgICAgICAgcGFkZGluZzogdW5zZXQ7XG4gICAgICAgICAgICBib3gtc2hhZG93OiB1bnNldDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5idXR0b24ge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICBjb2xvcjogIzJEOEZGRjtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNGMEYwRjA7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDBweDtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICBwYWRkaW5nOiAwLjZlbSAxLjVlbTtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiBub25lO1xuXG4gICAgICAgICAgICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGJkYmRiO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMjdweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDI3cHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgdWwge1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuXG4gICAgICAgIC5tZXRob2QtbGlzdCB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuXG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQob2RkKSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMC42cmVtIDAgMDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOm50aC1jaGlsZChldmVuKSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMCAwIDAuNnJlbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubWV0aG9kLWxpc3QtaXRlbSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBoNCB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICMwMDA7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJl9fdGV4dCB7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgICBjb2xvcjogIzAwMDtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmX19jdGEge1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmZhdm91cml0ZS1vdmVybGF5LS1vcGVuIHtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIC43KTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgei1pbmRleDogOTk5O1xufVxuXG5AbWVkaWEgcHJpbnQge1xuICAgIGRpdiB7XG4gICAgICAgIGJyZWFrLWluc2lkZTogYXZvaWQ7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIH1cbn1cbiIsIu+7vy5idG4tY2xvc2Uge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMzJweDtcbiAgICB0b3A6IDMycHg7XG4gICAgd2lkdGg6IDIwcHg7XG4gICAgaGVpZ2h0OiAyMHB4O1xuICAgIG9wYWNpdHk6IDAuODtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgICAgb3BhY2l0eTogMTtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3M7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICY6YmVmb3JlLCAmOmFmdGVyIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiAxNXB4O1xuICAgICAgICBjb250ZW50OiAnICc7XG4gICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgd2lkdGg6IDJweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzJEOEZGRjtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJjpiZWZvcmUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzO1xuICAgIH1cblxuICAgICY6YWZ0ZXIge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcztcbiAgICB9XG59XG5cbi5idXR0b24ge1xuICAgICYtLWZpeGVkLWNvbnRhY3QtYnRuIHtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIHJpZ2h0OiAzMHB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MHB4O1xuICAgICAgICBwYWRkaW5nOiAxNXB4IDM1cHg7XG4gICAgICAgIHotaW5kZXg6IDI7XG4gICAgfVxufSIsIu+7vy5ldmVudC10aW1lIHtcbiAgICBiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIFwicHJpbWFyeVwiKTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuXG4gICAgJl9fZGF0ZSB7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgcGFkZGluZzogNDBweCAwO1xuXG4gICAgICAgID4gKiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2RhdGUtbnVtZXJpYyB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBmb250LXNpemU6IDM0cHg7XG4gICAgICAgIG1hcmdpbjogNXB4IDA7XG4gICAgfVxuXG4gICAgJl9fZHVyYXRpb24ge1xuICAgICAgICBwYWRkaW5nOiAxNXB4O1xuICAgICAgICBjb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBcInByaW1hcnlcIik7XG4gICAgICAgIGJhY2tncm91bmQ6ICNmMGYwZjA7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgfVxufVxuIiwi77u/LmV2ZW50LWxpc3QtaXRlbSB7XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNTAwcHgpIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgfVxuXG4gICAgJl9fY2FsIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcblxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNTAwcHgpIHtcbiAgICAgICAgICAgIHdpZHRoOiAxNjBweDtcbiAgICAgICAgICAgIGZsZXgtZ3JvdzogMDtcbiAgICAgICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2NvbnRlbnQge1xuICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgIGZsZXgtc2hyaW5rOiAxO1xuICAgICAgICBtYXJnaW4tbGVmdDogNDBweDtcbiAgICB9XG5cbiAgICAmX190aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAmX19sb2NhdGlvbiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIGNvbG9yOiAjMWExYTFhO1xuICAgIH1cblxuICAgICZfX2Rlc2NyaXB0aW9uIHtcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICBjb2xvcjogIzRhNGE0YTtcbiAgICB9XG59XG4iLCLvu78udW1icmFjby1mb3JtcyB7XG4gICAgJi1sYWJlbCB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIH1cblxuICAgICYtZm9ybSB7XG4gICAgICAgIC5idG4ge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZDlkOWQ5O1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgcGFkZGluZzogM3B4IDEwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAuZmllbGQtdmFsaWRhdGlvbi1lcnJvciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGNvbG9yOiByZWQ7XG4gICAgICAgIH1cblxuICAgICAgICBsZWdlbmQge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIH1cblxuICAgICAgICBpbnB1dFt0eXBlPVwidGV4dFwiXSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICAgIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSArIGxhYmVsIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTRweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDE0cHg7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2Q5ZDlkOTtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAyMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCArIGxhYmVsIHtcbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgICAgICBsZWZ0OiA1cHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDRweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDdweDtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgYmxhY2s7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgYmxhY2s7XG4gICAgICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtZmllbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIH1cbn1cbiIsIu+7vy5jb2MtZm9ybS51bWJyYWNvLWZvcm1zIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIGNvbG9yOiAjMDAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICAmLXN1Ym1pdG1lc3NhZ2Uge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgcGFkZGluZzogNTBweCAyMHB4O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgfVxuXG5cbiAgICAuZmllbGQtdmFsaWRhdGlvbi1lcnJvciB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBjb2xvcjogI2U3NGMzYztcbiAgICB9XG5cbiAgICAuaW5wdXQtdmFsaWRhdGlvbi1lcnJvciB7XG4gICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICNlNzRjM2MgIWltcG9ydGFudDtcbiAgICAgICAgY29sb3I6ICNlNzRjM2M7XG4gICAgfVxuXG4gICAgJi0tZ3JleSB7XG4gICAgICAgIHBhZGRpbmc6IDMwcHg7XG4gICAgICAgIGJhY2tncm91bmQ6ICNmMGYwZjA7XG5cbiAgICAgICAgaW5wdXRbdHlwZT1cInJhZGlvXCJdOmNoZWNrZWQgKyBsYWJlbCxcbiAgICAgICAgaW5wdXRbdHlwZT1cInJhZGlvXCJdICsgbGFiZWwsXG4gICAgICAgIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkICsgbGFiZWwsXG4gICAgICAgIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSArIGxhYmVsIHtcbiAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLS1ibHVlIHtcbiAgICAgICAgYmFja2dyb3VuZDogIzJlOGZmZjtcbiAgICAgICAgY29sb3I6ICNmZmY7XG5cbiAgICAgICAgLmZpZWxkLXZhbGlkYXRpb24tZXJyb3Ige1xuICAgICAgICAgICAgY29sb3I6ICNGRkFBMTQ7XG4gICAgICAgIH1cblxuICAgICAgICAuaW5wdXQtdmFsaWRhdGlvbi1lcnJvcixcbiAgICAgICAgaW5wdXRbdHlwZT1cInJhZGlvXCJdOm5vdCg6Y2hlY2tlZCkuaW5wdXQtdmFsaWRhdGlvbi1lcnJvciArIGxhYmVsLFxuICAgICAgICBpbnB1dFt0eXBlPVwicmFkaW9cIl06Y2hlY2tlZC5pbnB1dC12YWxpZGF0aW9uLWVycm9yICsgbGFiZWwsXG4gICAgICAgIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpub3QoOmNoZWNrZWQpLmlucHV0LXZhbGlkYXRpb24tZXJyb3IgKyBsYWJlbCxcbiAgICAgICAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQuaW5wdXQtdmFsaWRhdGlvbi1lcnJvciArIGxhYmVsLFxuICAgICAgICAuY2hlY2tib3hsaXN0IGlucHV0IHtcbiAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICNGRkFBMTQgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGNvbG9yOiAjRkZBQTE0O1xuICAgICAgICB9XG5cbiAgICAgICAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBjb2xvcjogIzAwMCAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjBmMGYwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBpbnB1dFt0eXBlPVwiZmlsZVwiXSB7XG4gICAgICAgICAgICAmICsgbGFiZWwge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBjb2xvcjogIzAwMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmZvY3VzICsgbGFiZWwsXG4gICAgICAgICAgICAmICsgbGFiZWw6aG92ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmMGYwZjAgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtLXB1cnBlbCB7XG4gICAgICAgIHBhZGRpbmc6IDMwcHg7XG4gICAgICAgIGJhY2tncm91bmQ6ICMzNzAwMzc7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuXG4gICAgICAgIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgICAgICAgY29sb3I6ICMwMDAgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2YwZjBmMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaW5wdXRbdHlwZT1cImZpbGVcIl0ge1xuICAgICAgICAgICAgJiArIGxhYmVsIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgY29sb3I6ICMwMDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpmb2N1cyArIGxhYmVsLFxuICAgICAgICAgICAgJiArIGxhYmVsOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjBmMGYwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLS15ZWxsb3cge1xuICAgICAgICBwYWRkaW5nOiAzMHB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZWZjNzZiO1xuICAgICAgICBjb2xvcjogI2ZmZjtcblxuICAgICAgICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmMGYwZjAgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGlucHV0W3R5cGU9XCJmaWxlXCJdIHtcbiAgICAgICAgICAgICYgKyBsYWJlbCB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6Zm9jdXMgKyBsYWJlbCxcbiAgICAgICAgICAgICYgKyBsYWJlbDpob3ZlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2YwZjBmMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi1sYWJlbCB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBjb2xvcjogY3VycmVudENvbG9yO1xuICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgfVxuXG4gICAgc2VsZWN0LFxuICAgIFt0eXBlPSd0ZXh0J10sXG4gICAgW3R5cGU9J3Bhc3N3b3JkJ10sXG4gICAgW3R5cGU9J2RhdGUnXSxcbiAgICBbdHlwZT0nZGF0ZXRpbWUnXSxcbiAgICBbdHlwZT0nZGF0ZXRpbWUtbG9jYWwnXSxcbiAgICBbdHlwZT0nZW1haWwnXSxcbiAgICBbdHlwZT0nbnVtYmVyJ10sXG4gICAgdGV4dGFyZWEge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjY2NjO1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgcGFkZGluZzogMCAyMHB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcblxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICNjY2M7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICB0ZXh0YXJlYSB7XG4gICAgICAgIGhlaWdodDogMTUwcHg7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggMjBweDtcbiAgICB9XG5cblxuICAgIGlucHV0W3R5cGU9XCJyYWRpb1wiXTpub3QoOmNoZWNrZWQpLCBpbnB1dFt0eXBlPVwicmFkaW9cIl06Y2hlY2tlZCxcbiAgICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06bm90KDpjaGVja2VkKSwgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQsXG4gICAgLmNoZWNrYm94bGlzdCBpbnB1dCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogLTk5OTlweDtcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICBvcGFjaXR5OiAwO1xuXG4gICAgICAgICYuaW5wdXQtdmFsaWRhdGlvbi1lcnJvciArIGxhYmVsIHtcbiAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICNlNzRjM2MgIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICAgICsgbGFiZWw6aG92ZXI6OmJlZm9yZSB7XG4gICAgICAgICAgICBvcGFjaXR5OiAuMztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGlucHV0W3R5cGU9XCJyYWRpb1wiXSArIGxhYmVsLFxuICAgIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSArIGxhYmVsIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAzNXB4O1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogOHB4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgLjJzIGVhc2UtaW4tb3V0O1xuICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG5cbiAgICAgICAgJjo6YmVmb3JlLFxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIHdpZHRoOiAyNXB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAyNXB4O1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAycHg7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjFmM2YzO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDNweCA0cHg7XG4gICAgICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDIwMG1zIGVhc2UtaW47XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgICAgIH1cblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyB3aWR0aD0nMjAnIGhlaWdodD0nMjAnIHZpZXdCb3g9JzAgMCAyNSAyNScgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyUzRSUzQ3BhdGggZD0nTTUuNDE0IDExTDQgMTIuNDE0bDUuNDE0IDUuNDE0TDIwLjgyOCA2LjQxNCAxOS40MTQgNWwtMTAgMTB6JyBmaWxsPSclMjNmZmZmZmYnIGZpbGwtcnVsZT0nbm9uemVybycvJTNFJTNDL3N2ZyUzRSBcIik7XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgei1pbmRleDogMztcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDhmZmY7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBpbnB1dFt0eXBlPVwicmFkaW9cIl06Y2hlY2tlZCArIGxhYmVsLFxuICAgIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkICsgbGFiZWwge1xuICAgICAgICAmOmhvdmVyOjpiZWZvcmUsXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBpbnB1dFt0eXBlPVwicmFkaW9cIl0gKyBsYWJlbDo6YWZ0ZXIsXG4gICAgaW5wdXRbdHlwZT1cInJhZGlvXCJdICsgbGFiZWw6OmJlZm9yZSB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICB9XG5cbiAgICAmLWZpZWxkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICB9XG5cbiAgICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxMDBweDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgcGFkZGluZzogMS4yZW0gMS41ZW07XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCBlYXNlLWluLW91dCAzNTBtcztcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMC45cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMyZThmZmY7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzA0NzhmZjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGlucHV0W3R5cGU9XCJmaWxlXCJdIHtcbiAgICAgICAgd2lkdGg6IDAuMXB4O1xuICAgICAgICBoZWlnaHQ6IDAuMXB4O1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXg6IC0xO1xuXG4gICAgICAgICYgKyBsYWJlbCB7XG4gICAgICAgICAgICBtYXJnaW46IDEwcHggMCAwO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwcHg7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgcGFkZGluZzogMS4yZW0gMS41ZW07XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgZWFzZS1pbi1vdXQgMzUwbXM7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC45cmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMyZThmZmY7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgfVxuXG4gICAgICAgICY6Zm9jdXMgKyBsYWJlbCxcbiAgICAgICAgJiArIGxhYmVsOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwNDc4ZmY7XG4gICAgICAgIH1cbiAgICB9XG59XG5cblxuLnBpa2Etc2luZ2xlIC5waWthLXRhYmxlIHtcbiAgICB0cixcbiAgICB0aGVhZCxcbiAgICB0Ym9keSB7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICB9XG5cblxuICAgIHRoIHtcbiAgICAgICAgY29sb3I6ICMwMDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICB9XG5cbiAgICAucGlrYS1idXR0b24ge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuXG4gICAgLnBpa2EtYnV0dG9uOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIGJhY2tncm91bmQ6ICNmZjgwMDA7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICB9XG5cbiAgICAuaXMtc2VsZWN0ZWQgLnBpa2EtYnV0dG9uIHtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBiYWNrZ3JvdW5kOiAjMmU4ZmZmO1xuICAgICAgICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAzcHggIzE3OGZlNTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgIH1cbn0iLCLvu78ubWVtYmVyLXR5cGUtaXRlbSB7XG4gICAgYmFja2dyb3VuZDogI0YyRjNGMztcbiAgICBwYWRkaW5nOiAzMHB4IDMwcHggMzBweDtcblxuICAgICZfX3RpdGxlIHtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19wcmljZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDE3cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMzFweDtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2M0YzRjNDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2Rlc2NyaXB0aW9uIHtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICBtYXJnaW46IDA7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fdG9wIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgfVxuXG4gICAgJl9faW5mbyB7XG4gICAgICAgIGZsZXgtZ3JvdzogMDtcbiAgICAgICAgZmxleC1zaHJpbms6IDE7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICB3aWR0aDogNjAlO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgd2lkdGg6IDcwJTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2V4cGFuZGVyIHtcbiAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHRyYW5zaXRpb246IGhlaWdodCAwLjNzIGVhc2UtaW4tb3V0O1xuICAgIH1cblxuICAgICZfX2V4cGFuZGVyLWlubmVyIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDMwcHg7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbGVmdDogMDtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3NlY3Rpb24tY2hlY2ttYXJrIHtcbiAgICAgICAgd2lkdGg6IDI1cHg7XG4gICAgICAgIGhlaWdodDogMjVweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB3aWR0aDogNXB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAxMXB4O1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHdoaXRlO1xuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgd2hpdGU7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTYwJSwgLTYwJSkgcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2xpc3Qtc2VjdGlvbiB7XG4gICAgICAgIGZsZXgtZ3JvdzogMDtcbiAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICB3aWR0aDogY2FsYyg1MCUgLSAzMHB4KTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xuICAgICAgICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gMzBweCk7XG4gICAgICAgIH1cblxuICAgICAgICBoNCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi0tb2JsaWdhdGlvbnMge1xuICAgICAgICAgICAgLm1lbWJlci10eXBlLWl0ZW1fX2xpc3QtaXRlbSB7XG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzgwMDM4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLm1lbWJlci10eXBlLWl0ZW1fX3NlY3Rpb24tY2hlY2ttYXJrIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzgwMDM4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi0tYmVuZWZpdHMge1xuICAgICAgICAgICAgLm1lbWJlci10eXBlLWl0ZW1fX2xpc3QtaXRlbSB7XG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBnZXQtY29sb3IocHJpbWFyeSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubWVtYmVyLXR5cGUtaXRlbV9fc2VjdGlvbi1jaGVja21hcmsge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGdldC1jb2xvcihwcmltYXJ5KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2xpc3Qge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgfVxuXG4gICAgJl9fbGlzdC1pdGVtIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIHdpZHRoOiA2cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDZweDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGxlZnQ6IDEwcHg7XG4gICAgICAgICAgICB0b3A6IDEwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJi5tZW1iZXItdHlwZS1pdGVtX19saXN0LWl0ZW0tLXVuYXZhaWxhYmxlIHtcbiAgICAgICAgICAgIGNvbG9yOiAjQjJCMkIyO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7XG5cbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjQjJCMkIyO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fdG9nZ2xlLWJ0biB7XG4gICAgICAgIGZsZXgtZ3JvdzogMDtcbiAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyAvL2Fic29sdXRlO1xuICAgICAgICAvL3RvcDogNTAlO1xuICAgICAgICByaWdodDogLTMwcHg7XG4gICAgICAgIC8vdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICBiYWNrZ3JvdW5kOiBnZXQtY29sb3IocHJpbWFyeSk7XG4gICAgICAgIGhlaWdodDogNTNweDtcbiAgICAgICAgd2lkdGg6IDUzcHg7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDYwcHg7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICAgICAgd2lkdGg6IDUzcHg7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7XG4gICAgICAgICAgICByaWdodDogLTUwcHg7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDYwcHg7XG4gICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgfVxuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgd2lkdGg6IDE0cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDE0cHg7XG4gICAgICAgICAgICBib3JkZXItbGVmdDogMnB4IHNvbGlkIHdoaXRlO1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkIHdoaXRlO1xuICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogMzElIDMxJTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyNSUpIHJvdGF0ZSgyMjVkZWcpO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMnMgZWFzZS1pbi1vdXQgMC4xcztcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogNXB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmX19hcnJvdyB7XG4gICAgICAgIH1cblxuICAgICAgICAmX190ZXh0IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuXG5cblxuXG4gICAgJi0tb3BlbiB7XG4gICAgICAgIC5tZW1iZXItdHlwZS1pdGVtX190b2dnbGUtYnRuIHtcblxuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyNSUpIHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLyoubWVtYmVyLXR5cGUtaXRlbV9fZXhwYW5kZXItaW5uZXIge1xuICAgICAgICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgICAgfSovXG4gICAgfVxufVxuIiwi77u/Lm1ldGhvZC1saXN0LWl0ZW0ge1xuXG4gICAgQG1lZGlhIHByaW50IHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lO1xuXG4gICAgICAgIGg0LCBwIHtcbiAgICAgICAgICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogODBweDtcbiAgICB9XG5cbiAgICAmX190ZXh0IHtcbiAgICAgICAgbWluLWhlaWdodDogNzBweDtcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBjb2xvcjogIzAwMDtcblxuICAgICAgICAubWV0aG9kLWxpc3QtaXRlbV9faW1hZ2Uge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIGg0IHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDMwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19jdGEgLmJ1dHRvbiB7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMHB4O1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIHBhZGRpbmc6IDAuOTVlbSAxLjhlbTtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgcGFkZGluZzogMS4wNWVtIDIuN2VtO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwi77u/Lm1ldGhvZC1saXN0IHtcbiAgICBwYWRkaW5nOiAwIDAuNnJlbTtcblxuICAgIHVsIHtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICB9XG5cbiAgICAmX19sb2FkLW1vcmUge1xuICAgICAgICBtYXJnaW46IDAgYXV0byA3MHB4IGF1dG87XG5cbiAgICAgICAgLmJ1dHRvbiB7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDBweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNGMEYwRjA7XG4gICAgICAgICAgICBjb2xvcjogIzJlOGZmZjtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICBwYWRkaW5nOiAxLjA1ZW0gMi43ZW07XG5cbiAgICAgICAgICAgICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICNkYmRiZGI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCLvu78uZmF2b3VyaXRlLWJ0biB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIG1hcmdpbjogMjBweDtcbiAgICByaWdodDogMDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAmX19idG4ge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MHB4O1xuICAgICAgICBwYWRkaW5nOiAwLjY1cmVtO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgcGFkZGluZzogMC45cmVtIDAuOHJlbSAwLjdyZW0gMC44cmVtO1xuICAgICAgICB9XG5cblxuXG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgICB3aWR0aDogMjNweDtcbiAgICAgICAgICAgIGhlaWdodDogMjNweDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5oZWFydC1pY29uLWZpbGxlZCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLmhlYXJ0LWljb24tb3V0bGluZSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgICYtLWZhdiB7XG4gICAgICAgIC5oZWFydC1pY29uLW91dGxpbmUge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5oZWFydC1pY29uLWZpbGxlZCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtLWZhdiB7XG4gICAgICAgIC5mYXZvdXJpdGUtYnRuX19sYWJlbCB7XG4gICAgICAgICAgICAmLS1ub3QtZmF2IHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLS1mYXYge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fbGFiZWwge1xuICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxcmVtO1xuXG4gICAgICAgICYtLW5vdC1mYXYge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cblxuICAgICAgICAmLS1mYXYge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIu+7vyRmZWF0dXJlLXBhZGRpbmc6IDUwcHg7XG5cbi5jb2MtZmVhdHVyZS1zZWN0aW9uIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDFyZW0gMHJlbTtcblxuICAgIC5ncmlkLWNvbnRhaW5lciB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIHBhZGRkaW5nOjAgNTZweCFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICBwYWRkaW5nLXRvcDogNDBweDtcbiAgICB9XG5cbiAgICAmLS1leHBhbmRlZCB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6ICRmZWF0dXJlLXBhZGRpbmcgMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX21lZGlhLXdyYXBwZXIge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgfVxuXG4gICAgJl9fY3RhIHtcbiAgICAgICAgYSB7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDBweDtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICBwYWRkaW5nOiAxLjJlbSAxLjVlbTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCBlYXNlLWluLW91dCAzNTBtcztcblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogLjg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19oZWFkaW5nIHtcbiAgICAgICAgbWFyZ2luOiAwIDAgMS4ycmVtO1xuXG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgICAgICAgICAgICYuaDMge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19ib2R5IHtcbiAgICAgICAgbWFyZ2luOiAwIDAgMS41NXJlbTtcblxuICAgICAgICBwIHtcbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fbWVkaWEge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgd2lkdGg6MTAwJTtcblxuICAgICAgICAuc2xpY2stbGlzdCB7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB9XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjAyKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5zbGljay1zbGlkZSB7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIC8vYm90dG9tOiAtJGZlYXR1cmUtcGFkZGluZztcbiAgICAgICAgICAgIGJvdHRvbTogLTQwcHg7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19jb250ZW50IHtcbiAgICAgICAgcGFkZGluZzogMnJlbSAxLjVyZW0gMS41cmVtO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAkZmVhdHVyZS1wYWRkaW5nO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnNsaWNrLWRvdHMge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICB3aWR0aDogMTZweDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgICAgd2lkdGg6IDE2cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDE2cHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICBtYXJnaW46IDhweCAwO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIGVhc2UtaW4tb3V0IDIwMG1zO1xuXG4gICAgICAgICAgICAmLnNsaWNrLWFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogZ2V0LWNvbG9yKHByaW1hcnkpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaWdodGVuKGdldC1jb2xvcihwcmltYXJ5KSwgMjAlKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAvKiBcbiAgICAgICAgQWx0ZXJuYXRpbmcgZnVuY3Rpb25hbGl0eS4gQmUgY2FyZWZ1bCBpZiB5b3Ugd2FudCB0byBjaGFuZ2UgdGhpbmdzIGhlcmUuIFxuICAgICovXG4gICAgJjpudGgtY2hpbGQob2RkKSB7XG4gICAgICAgIC5ncmlkLXgge1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgfVxuXG4gICAgICAgIC5jb2MtZmVhdHVyZS1zZWN0aW9uX19tZWRpYTpiZWZvcmUge1xuICAgICAgICAgICAgLy9yaWdodDogLSRmZWF0dXJlLXBhZGRpbmc7XG4gICAgICAgICAgICByaWdodDogLTQwcHggIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5jb2MtZmVhdHVyZS1zZWN0aW9uX19jb250ZW50IHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogJGZlYXR1cmUtcGFkZGluZztcbiAgICAgICAgfVxuXG4gICAgICAgIC5zbGljay1kb3RzIHtcbiAgICAgICAgICAgIGxlZnQ6IC0zNnB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJiAuY29jLWZlYXR1cmUtc2VjdGlvbi0tZXhwYW5kZWQge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6ICRmZWF0dXJlLXBhZGRpbmc7XG5cbiAgICAgICAgICAgIC5jb2MtZmVhdHVyZS1zZWN0aW9uX19tZWRpYSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0kZmVhdHVyZS1wYWRkaW5nO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICAgICAgICAgIC5jb2MtZmVhdHVyZS1zZWN0aW9uX19jb250ZW50IHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogJGZlYXR1cmUtcGFkZGluZztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmOm50aC1jaGlsZChldmVuKSB7XG4gICAgICAgIC5ncmlkLXgge1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuICAgICAgICB9XG5cbiAgICAgICAgLmNvYy1mZWF0dXJlLXNlY3Rpb25fX21lZGlhOmJlZm9yZSB7XG4gICAgICAgICAgICAvL2xlZnQ6IC0kZmVhdHVyZS1wYWRkaW5nO1xuICAgICAgICAgICAgbGVmdDogLTQwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAuY29jLWZlYXR1cmUtc2VjdGlvbl9fY29udGVudCB7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogJGZlYXR1cmUtcGFkZGluZztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5zbGljay1kb3RzIHtcbiAgICAgICAgICAgIHJpZ2h0OiAtMzZweDtcbiAgICAgICAgfVxuXG4gICAgICAgICYgLmNvYy1mZWF0dXJlLXNlY3Rpb24tLWV4cGFuZGVkIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogJGZlYXR1cmUtcGFkZGluZztcblxuICAgICAgICAgICAgLmNvYy1mZWF0dXJlLXNlY3Rpb25fX21lZGlhIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0kZmVhdHVyZS1wYWRkaW5nO1xuXG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgICAgICAgICAuY29jLWZlYXR1cmUtc2VjdGlvbl9fY29udGVudCB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogJGZlYXR1cmUtcGFkZGluZztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLS1sZWZ0IHtcbiAgICAgICAgLmdyaWQteCB7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93ICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSBkb3duKSB7XG4gICAgICAgICAgICAuY29jLWZlYXR1cmUtc2VjdGlvbl9fbWVkaWEtd3JhcHBlciB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAzcmVtO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5jb2MtZmVhdHVyZS1zZWN0aW9uX19tZWRpYTpiZWZvcmUge1xuICAgICAgICAgICAgLy9yaWdodDogLSRmZWF0dXJlLXBhZGRpbmcgIWltcG9ydGFudDtcbiAgICAgICAgICAgIHJpZ2h0OiAtNDBweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSBkb3duKSB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IC0yMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAtMjBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgICAgICAuY29jLWZlYXR1cmUtc2VjdGlvbl9fY29udGVudCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogJGZlYXR1cmUtcGFkZGluZyAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnNsaWNrLWRvdHMge1xuICAgICAgICAgICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgICAgIGxlZnQ6IC0zNnB4ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlIGRvd24pIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiAtMzAuNXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmIC5jb2MtZmVhdHVyZS1zZWN0aW9uLS1leHBhbmRlZCB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAkZmVhdHVyZS1wYWRkaW5nICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlIGRvd24pIHtcbiAgICAgICAgICAgICAgICAuY29jLWZlYXR1cmUtc2VjdGlvbl9fbWVkaWEtd3JhcHBlciB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMHJlbTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmNvYy1mZWF0dXJlLXNlY3Rpb25fX21lZGlhIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogLSRmZWF0dXJlLXBhZGRpbmcgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIGRvd24pIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgLmNvYy1mZWF0dXJlLXNlY3Rpb25fX2NvbnRlbnQge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkZmVhdHVyZS1wYWRkaW5nICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjBweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtLXJpZ2h0IHtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICAgICAgLy9wYWRkaW5nLXJpZ2h0OiA2MHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLmdyaWQteCB7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2UgIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlIGRvd24pIHtcbiAgICAgICAgICAgIC5jb2MtZmVhdHVyZS1zZWN0aW9uX19tZWRpYS13cmFwcGVyIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzcmVtO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5jb2MtZmVhdHVyZS1zZWN0aW9uX19tZWRpYTpiZWZvcmUge1xuICAgICAgICAgICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgICAgIC8vbGVmdDogLSRmZWF0dXJlLXBhZGRpbmcgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGxlZnQ6IC00MHB4ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlIGRvd24pIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiAtMjBweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGJvdHRvbTogLTIwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICAgICAgLmNvYy1mZWF0dXJlLXNlY3Rpb25fX2NvbnRlbnQge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6ICRmZWF0dXJlLXBhZGRpbmcgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5zbGljay1kb3RzIHtcbiAgICAgICAgICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgICAgIHJpZ2h0OiAtMzZweCAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSBkb3duKSB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IC0yOC41cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYgLmNvYy1mZWF0dXJlLXNlY3Rpb24tLWV4cGFuZGVkIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogJGZlYXR1cmUtcGFkZGluZyAhaW1wb3J0YW50O1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgLmNvYy1mZWF0dXJlLXNlY3Rpb25fX21lZGlhIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0kZmVhdHVyZS1wYWRkaW5nICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6ICRmZWF0dXJlLXBhZGRpbmcgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgZG93bikge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgLmNvYy1mZWF0dXJlLXNlY3Rpb25fX2NvbnRlbnQge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogJGZlYXR1cmUtcGFkZGluZyAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UgZG93bikge1xuICAgICAgICAgICAgICAgIC5jb2MtZmVhdHVyZS1zZWN0aW9uX19tZWRpYS13cmFwcGVyIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMHJlbTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn0iLCLvu78uaW1hZ2UtZ3JpZC1zZWN0aW9uIHtcblxuICAgIC5ncmlkLWNvbnRhaW5lciB7XG4gICAgICAgIHBhZGRpbmc6IDA7IFxuICAgIH0gXG5cbiAgICAmX19pdGVtIHsgXG4gICAgICAgIG1pbi1oZWlnaHQ6IDQwMHB4O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDQwMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiA0NTBweDtcbiAgICAgICAgfVxuICAgIH0gXG5cbiAgICBhIHtcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogYmxhY2s7XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4zNXMgY3ViaWMtYmV6aWVyKDAuNywgMCwgMC4zLCAxKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogLjI7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4zNXMgY3ViaWMtYmV6aWVyKDAuNywgMCwgMC4zLCAxKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2hlYWRpbmcge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjhzIGN1YmljLWJlemllcigwLjcsIDAsIDAuMywgMSk7XG4gICAgICAgIG1hcmdpbjogMCAwIDFyZW07XG5cbiAgICAgICAgYS5pbWFnZS1ncmlkLXNlY3Rpb25fX2l0ZW06aG92ZXIgJiB7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjhzIGN1YmljLWJlemllcigwLjcsIDAsIDAuMywgMSk7XG4gICAgICAgIH1cblxuICAgICAgICBoMyB7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlIGRvd24pIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuOHJlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSBkb3duKSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjM1cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fYm9keSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAuOHMgY3ViaWMtYmV6aWVyKDAuNywgMCwgMC4zLCAxKTtcblxuICAgICAgICBhLmltYWdlLWdyaWQtc2VjdGlvbl9faXRlbTpob3ZlciAmIHtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAuOHMgY3ViaWMtYmV6aWVyKDAuNywgMCwgMC4zLCAxKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHAge1xuXG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX21lZGlhIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IDUwJSA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wMSk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDBweDtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIC44cyBjdWJpYy1iZXppZXIoMC43LCAwLCAwLjMsIDEpO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBmaWx0ZXI6IGJsdXIoMHB4KSBncmF5c2NhbGUoMCUpO1xuXG4gICAgICAgIGEuaW1hZ2UtZ3JpZC1zZWN0aW9uX19pdGVtOmhvdmVyICYge1xuICAgICAgICAgICAgLy90cmFuc2Zvcm06IHNjYWxlKC45KTtcbiAgICAgICAgICAgIGZpbHRlcjogYmx1cigwcHgpIGdyYXlzY2FsZSgxNSUpO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDFzIGN1YmljLWJlemllcigwLjcsIDAsIDAuMywgMSk7XG4gICAgICAgIH1cblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2NvbnRhaW5lciB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgcGFkZGluZzogMjBweDtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDMwcHg7XG5cbiAgICAgICAgICAgIC5sYXJnZS02ICYsIC5hdXRvICYge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDMwcHggNDBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgLi1tYXJnaW4taGFjayB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMC4xcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5vbmUtdHdvLWltYWdlLWdyaWQtc2VjdGlvbiB7XG4gICAgLndpdGhMaW5rIHtcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogYmxhY2s7XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4zNXMgY3ViaWMtYmV6aWVyKDAuNywgMCwgMC4zLCAxKTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjM1cyBjdWJpYy1iZXppZXIoMC43LCAwLCAwLjMsIDEpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpob3ZlcjphZnRlciB7XG4gICAgICAgICAgICBvcGFjaXR5OiAuMjtcbiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMzVzIGN1YmljLWJlemllcigwLjcsIDAsIDAuMywgMSk7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zNXMgY3ViaWMtYmV6aWVyKDAuNywgMCwgMC4zLCAxKTtcbiAgICAgICAgfVxuICAgIH1cbn0iLCLvu78uaW1hZ2UtdGV4dC1ncmlkLXNlY3Rpb24ge1xuICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgbWFyZ2luOiAwO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICAuY2VsbCB7XG4gICAgICAgIGhlaWdodDphdXRvO1xuICAgIH1cblxuICAgICZfX2l0ZW0ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDQ1cHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19jb250YWluZXIge1xuICAgICAgICBwYWRkaW5nOiAyMHB4IDA7XG4gICAgfVxuXG4gICAgJl9fbWVkaWEge1xuICAgICAgICBpbWcge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19jdGEge1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIH1cblxuICAgICZfX2N0YSAuYnV0dG9uIHtcbiAgICAgICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAzMHB4O1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMHB4O1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBwYWRkaW5nOiAxLjFlbSAxLjVlbSAxZW07XG4gICAgfVxufVxuIiwi77u/Lmhlcm8tY2lya2VsLXNlY3Rpb24ge1xuICAgIG1hcmdpbi1ib3R0b206IDVyZW07XG4gICAgbWluLWhlaWdodDogNDg1cHg7XG5cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1MHB4KSBhbmQgKG1pbi13aWR0aDogNzcwcHgpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogM3JlbTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIGRvd24pIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTNyZW07XG4gICAgICAgIG1hcmdpbi10b3A6IDRyZW07XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UgZG93bikge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA4cmVtO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICB9XG5cbiAgICAmX19tZWRpYS13cmFwcGVyIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSBkb3duKSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDAlO1xuICAgICAgICAgICAgcmlnaHQ6IDAlO1xuICAgICAgICAgICAgcGFkZGluZzogMjBweCAzMHB4IDIwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2NvbnRlbnQtd3JhcHBlciB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSBkb3duKSB7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiA3MDBweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDMwcHggMzBweDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBiYXNlbGluZTtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA1MDBweDtcbiAgICAgICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2NvbnRlbnQge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgICZfX2JvZHksICZfX2N0YSB7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgfVxuXG4gICAgJl9fY3RhIHtcbiAgICAgICAgLmJ1dHRvbiB7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MHB4O1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDIwcHggMzVweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4zNXMgY3ViaWMtYmV6aWVyKDAuNywgMCwgMC4zLCAxKTtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zNXMgY3ViaWMtYmV6aWVyKDAuNywgMCwgMC4zLCAxKTtcbiAgICAgICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb24tZGVsYXk6IC4wcztcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAuMHM7XG4gICAgICAgICAgICAgICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMTFweCAxMXB4IHJnYmEoMCwwLDAsMC4xMSk7XG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMHB4IDExcHggMTFweCByZ2JhKDAsMCwwLDAuMTEpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2JvZHkge1xuICAgICAgICBmb250LXNpemU6IDIwcHg7XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogMTAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fbWVkaWEge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgfVxuXG4gICAgJl9faGVhZGxpbmUge1xuICAgICAgICBmb250LXNpemU6IDNyZW07XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogNXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlIGRvd24pIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogNC41cmVtO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDQuNXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgZG93bikge1xuICAgICAgICAgICAgZm9udC1zaXplOiAzcmVtO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDNyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19ib2R5IHtcbiAgICAgICAgbWFyZ2luOiAxLjVyZW0gMCAxLjhyZW07XG4gICAgICAgIG1heC13aWR0aDogNTAwcHg7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSBkb3duKSB7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnRodW1ibmFpbF9fcGxheS1idXR0b24ge1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQ6ICMyZThmZmY7XG4gICAgICAgIHdpZHRoOiAxMjVweDtcbiAgICAgICAgaGVpZ2h0OiAxMjVweDtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA0MzBweDtcbiAgICAgICAgcmlnaHQ6IDY0MHB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIHBhZGRpbmc6IDQ3cHggNDBweCA0N3B4IDU1cHg7XG4gICAgICAgIHotaW5kZXg6IDE7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UgZG93bikge1xuICAgICAgICAgICAgdG9wOiA0NzVweDtcbiAgICAgICAgICAgIHJpZ2h0OiAzMzBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgZG93bikge1xuICAgICAgICAgICAgd2lkdGg6IDk1cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDk1cHg7XG4gICAgICAgICAgICByaWdodDogMzVweDtcbiAgICAgICAgICAgIGxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgcGFkZGluZzogMzJweCAzMnB4IDMycHggMzhweDtcbiAgICAgICAgICAgIGJvdHRvbTogLTE0NXB4O1xuICAgICAgICB9XG5cbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxNDAwcHgpIGFuZCAobWluLXdpZHRoOiAxMDQ2cHgpIHtcbiAgICAgICAgICAgIHRvcDogNDc1cHg7XG4gICAgICAgICAgICByaWdodDogNjE1cHg7XG4gICAgICAgIH1cblxuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEzMDBweCkgYW5kIChtaW4td2lkdGg6IDEwNDZweCkge1xuICAgICAgICAgICAgcmlnaHQ6IDQ5NXB4O1xuICAgICAgICB9XG5cbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMjAwcHgpIGFuZCAobWluLXdpZHRoOiAxMDQ2cHgpIHtcbiAgICAgICAgICAgIHJpZ2h0OiAzNTVweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5hcnJvdy1pY29uIHtcbiAgICAgICAgICAgIG1hcmdpbjogMHB4IDAgMHB4IDA7XG4gICAgICAgICAgICB3aWR0aDogMHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAwcHg7XG4gICAgICAgICAgICBib3JkZXItdG9wOiAxNHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMTRweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAyNHB4IHNvbGlkIHdoaXRlO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjM1cyBjdWJpYy1iZXppZXIoMC43LCAwLCAwLjMsIDEpO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMzVzIGN1YmljLWJlemllcigwLjcsIDAsIDAuMywgMSk7XG4gICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb24tZGVsYXk6IC4wcztcbiAgICAgICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IC4wcztcbiAgICAgICAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDExcHggMTFweCByZ2JhKDAsMCwwLDAuMTEpO1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMHB4IDExcHggMTFweCByZ2JhKDAsMCwwLDAuMTEpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmdyaWQtY29udGFpbmVyIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgIC5jaXJjbGUge1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogLTQwMHB4IC0gMTY4cHg7IC8vIC1kZXNpZ24gb2Zmc2V0IC0gaGVhZGVyIGhlaWdodFxuICAgICAgICAgICAgbGVmdDogNDEwcHg7XG4gICAgICAgICAgICB3aWR0aDogMTIwMHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAxMjAwcHg7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogZ2V0LWNvbG9yKHByaW1hcnkpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgICAgICAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAxMDAwcHggcmdiYSg0NiwxNDMsMjU1LDAuMzQpO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSBkb3duKSB7XG4gICAgICAgICAgICAgICAgdG9wOiAtMTI0cHg7XG4gICAgICAgICAgICAgICAgbGVmdDogNTUwcHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDgwMHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogODAwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgZG93bikge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA4MDBweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDgwMHB4O1xuICAgICAgICAgICAgICAgIGxlZnQ6IDg1JTtcbiAgICAgICAgICAgICAgICByaWdodDogaW5pdGlhbDtcbiAgICAgICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIHRvcDogLTI1MHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICAucGxhY2Vob2xkZXItbWVkaWEge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogLTk0MHB4O1xuICAgICAgICBsZWZ0OiA0MTBweDtcbiAgICAgICAgd2lkdGg6IDExMzBweDtcbiAgICAgICAgaGVpZ2h0OiAxMTkwcHg7XG4gICAgICAgIHotaW5kZXg6IC0xO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlIGRvd24pIHtcbiAgICAgICAgICAgIGxlZnQ6IDQzMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSBkb3duKSB7XG4gICAgICAgICAgICBsZWZ0OiAwcHg7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgICAgICBsZWZ0OiAtMTUwcHg7XG4gICAgICAgIH1cblxuICAgICAgICB2aWRlbyB7XG4gICAgICAgICAgICBjbGlwLXBhdGg6IGNpcmNsZSg0NiUpO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDQxNXB4O1xuICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgZmlsdGVyOiBicmlnaHRuZXNzKDAuOSkgY29udHJhc3QoMC45KSBzZXBpYSgwLjEpO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSBkb3duKSB7XG4gICAgICAgICAgICAgICAgY2xpcC1wYXRoOiBjaXJjbGUoMzUlKTtcbiAgICAgICAgICAgICAgICB0b3A6IDY1NXB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIGRvd24pIHtcbiAgICAgICAgICAgICAgICBjbGlwLXBhdGg6IGNpcmNsZSg0NiUpO1xuICAgICAgICAgICAgICAgIHRvcDogNDkwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgICAgICAgICBjbGlwLXBhdGg6IHVuc2V0O1xuICAgICAgICAgICAgICAgIHRvcDogNjAwcHg7XG4gICAgICAgICAgICB9XG5cblxuICAgICAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NTBweCkgYW5kIChtaW4td2lkdGg6IDc3MHB4KSB7XG4gICAgICAgICAgICAgICAgY2xpcC1wYXRoOiBjaXJjbGUoMzYlKTtcbiAgICAgICAgICAgICAgICB0b3A6IDQ5NnB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fbW9kYWwge1xuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgwLDAsMCwuNSk7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICB6LWluZGV4OiAxMDE7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdHJhbnNpdGlvbjogdmlzaWJpbGl0eSAuM3MgbGluZWFyLG9wYWNpdHkgLjNzIGxpbmVhcjtcblxuICAgICAgICAmLS1hY3RpdmUge1xuICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIH1cblxuICAgICAgICAubW9kYWxfX2Nsb3NlIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogLTMwcHg7XG4gICAgICAgICAgICByaWdodDogLTMwcHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgICAgICAgd2lkdGg6IDM1cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDM1cHg7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAgICAgICAgIC5jcm9zcyB7XG4gICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAtNztcbiAgICAgICAgICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcXDAwRDdcIjtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiA0MHB4O1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogIzAwMDtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5tb2RhbF9fdmltZW8ge1xuXG4gICAgICAgIC5tb2RhbF9fY2xvc2Uge1xuICAgICAgICAgICAgdG9wOiAzNHB4O1xuICAgICAgICAgICAgcmlnaHQ6IC0yMHB4O1xuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICAubW9kYWxfX2lubmVyIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgIC5yZXNwb25zaXZlLWNvbnRhaW5lciB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBtYXJnaW46IGF1dG8gMTUlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLm1vZGFsX195b3V0dWJlLCAubW9kYWxfX3ZpbWVvIHtcbiAgICAgICAgLnJlc3BvbnNpdmUtY29udGFpbmVyIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIG1hcmdpbjogYXV0bztcblxuICAgICAgICAgICAgaWZyYW1lIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogdW5zZXQ7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA4MCU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDExNTBweDtcbiAgICAgICAgICAgICAgICBhc3BlY3QtcmF0aW86IDEuNTtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlIHVwKSB7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogOTAlO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSBkb3duKSB7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogODglO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogOTQwcHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSBkb3duKSB7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogODklO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNzEwcHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDgwJTtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDQwMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIu+7vy5oZWFkaW5nLXNlY3Rpb24ge1xuICAgIHBhZGRpbmc6IDYwcHggMjBweCA1MHB4IDIwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAvL2JvcmRlci10b3A6IHNvbGlkIDFyZW0gd2hpdGU7XG4gICAgLy9ib3JkZXItYm90dG9tOiBzb2xpZCAxcmVtIHdoaXRlO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBwYWRkaW5nOiAxMDBweCAyMHB4IDgwcHggMjBweDtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgIH1cblxuICAgICYuaGVhZGluZy1zZWN0aW9uLW1ldGhvZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDBweDtcbiAgICB9XG59XG4iLCLvu78uY29udGFjdC1zZWN0aW9uIHtcbiAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgcGFkZGluZzogMXJlbTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgIHBhZGRpbmc6IDEuNXJlbTtcbiAgICB9XG5cbiAgICAmX193cmFwcGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWdyYXk7XG4gICAgfVxuXG4gICAgLmNvbnRhY3QtY29sIHtcbiAgICAgICAgcGFkZGluZzogMS41cmVtIDFyZW0gMDtcblxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDJyZW07XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMHJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAmX19oZWFkaW5nIHtcbiAgICAgICAgbWFyZ2luOiAwIDAgMS4yNXJlbTtcblxuICAgICAgICBoNCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogMTAwO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLjZyZW07XG4gICAgICAgICAgICBmb250LXNpemU6IC44cmVtO1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgLjI1cmVtO1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19uYW1lIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICB9XG5cbiAgICAmX19tZWRpYSB7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDM1MHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyIWltcG9ydGFudDtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjpjZW50ZXI7IFxuICAgIH1cblxuICAgICZfX3RpdGxlIHtcbiAgICAgICAgbWFyZ2luOiAuNXJlbSAwIDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgfVxuXG4gICAgJl9fcGhvbmUge1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgbWFyZ2luOiAwIDAgMS41cmVtO1xuICAgIH1cblxuICAgICZfX2VtYWlsIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgfVxuXG4gICAgJl9faGVhZGluZy13cmFwcGVyIHtcbiAgICAgICAgXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2M3YzdjNztcbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgJl9fcGhvbmUtd3JhcHBlciB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgZm9udC1zaXplOiAxLjE1cmVtO1xuXG4gICAgICAgID4gZGl2IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAuNnJlbTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IC44cmVtO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCAwIC4yNXJlbTtcbiAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgYSB7XG4gICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIH1cblxuICAgIC8vIGZvciBzbWFsbCBzY3JlZW5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0NmVtKSB7XG5cbiAgICAgICAgJl9fbWVkaWEge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9faGVhZGluZy13cmFwcGVyIHtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogMHB4O1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDIwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAmX19waG9uZS13cmFwcGVyIHtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogMHB4O1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDIwcHg7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIu+7vy5sb25nLWNvbnRlbnQtc2VjdGlvbiB7XG4gICAgcGFkZGluZzogMjBweCAxcmVtO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBwYWRkaW5nOiA1MHB4IDFyZW07XG4gICAgfVxuXG4gICAgJl9fY3RhIHtcblxuICAgICAgICAuYnV0dG9uIHtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwcHg7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgcGFkZGluZzogMjBweCAzNXB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19zaWRlYmFyIHtcbiAgICAgICAgbWFyZ2luOiAwIDAgMS41cmVtO1xuXG4gICAgICAgIC5sb25nLWNvbnRlbnQtc2VjdGlvbl9fc2lkZWJhci1oZWFkaW5nIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDFyZW0gMXJlbSAwO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEuNTVyZW0gMS41NXJlbSAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmxvbmctY29udGVudC1zZWN0aW9uX19jdGEge1xuICAgICAgICAgICAgcGFkZGluZzogMHJlbSAxcmVtIDFyZW07XG5cbiAgICAgICAgICAgIC5idXR0b24ge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwcmVtIDEuNTVyZW0gMS41NXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5sb25nLWNvbnRlbnQtc2VjdGlvbl9fc2lkZWJhci1ib2R5dGV4dCB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDFyZW07XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMCAxLjVyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubG9uZy1jb250ZW50LXNlY3Rpb25fX2NvbnRlbnQsICZfX2NvbnRlbnQge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDJyZW07XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDRyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19ib2R5IHtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwi77u/LmV2ZW50cy1vdmVydmlldy1zZWN0aW9uIHtcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcblxuICAgICZfX3RvZ2dsZS1iYXIge1xuICAgICAgICBoZWlnaHQ6IDYwcHg7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGJhY2tncm91bmQ6ICNmMGYwZjA7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgIGNvbG9yOiAjYjViNWI1O1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtNTBweDtcbiAgICAgICAgfVxuXG4gICAgICAgID4gKiB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDEwcHg7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAgICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICBjb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBcInByaW1hcnlcIik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19saXN0IHtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICBwYWRkaW5nOiAyMHB4IDFyZW07XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgcGFkZGluZzogNzBweCAxcmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgJi0tYWN0aXZlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG5cbiAgICAgICAgPiAqIHtcbiAgICAgICAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDUwcHg7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmMGYwZjA7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNTBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2V2ZW50LWl0ZW0ge1xuICAgICAgICAuZXZlbnQtdGltZSB7XG4gICAgICAgICAgICB3aWR0aDogMTYwcHg7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDQwcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCLvu78ubWVtYmVyLXR5cGUtb3ZlcnZpZXctc2VjdGlvbiB7XG4gICAgcGFkZGluZzogMCAwLjVyZW07XG5cbiAgICAmX19saXN0IHtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgIH1cblxuICAgICZfX2xpc3QtaXRlbSB7XG4gICAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICB9XG4gICAgfVxufVxuIiwi77u/LmV2ZW50LXBhZ2Uge1xuICAgIHBhZGRpbmc6IDIwcHggMXJlbTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgcGFkZGluZzogNzBweCAxcmVtO1xuICAgIH1cblxuICAgICZfX2RhdGUtdGltZSB7XG4gICAgICAgIGNvbG9yOiBnZXQtY29sb3IocHJpbWFyeSk7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICAgICY6Zmlyc3QtbGV0dGVyIHtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fbWV0YSB7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIG1hcmdpbjogMzBweCAwIDAgMTBweDtcbiAgICB9XG5cbiAgICAmX19tZXRhLWl0ZW0ge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogYmFzZWxpbmU7XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICB3aWR0aDogMTJweDtcbiAgICAgICAgICAgIGhlaWdodDogMTJweDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IGdldC1jb2xvcihwcmltYXJ5KTtcbiAgICAgICAgICAgIGZsZXgtZ3JvdzogMDtcbiAgICAgICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fbWV0YS1pdGVtX19jb250ZW50IHtcbiAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICBmbGV4LXNocmluazogMTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDI1cHg7XG5cbiAgICAgICAgPiAqIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2Zvcm0ge1xuICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgICAgICBwYWRkaW5nLXRvcDogMzBweDtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNmMGYwZjA7XG5cbiAgICAgICAgPiAqIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3NpZGViYXIge1xuICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgICAgICBwYWRkaW5nLXRvcDogMzBweDtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNmMGYwZjA7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19hcnRpY2xlIHtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCLvu78ubWV0aG9kLXBhZ2Uge1xuICAgIHBhZGRpbmc6IDQ1cHggMXJlbTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgcGFkZGluZzogODBweCAwO1xuICAgIH1cblxuICAgIHAge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjNyZW07XG4gICAgfVxuXG4gICAgJl9faGVhZGluZyB7XG4gICAgICAgIGgxIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuNHJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIGgxIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjZyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19ib2R5IHtcblxuICAgICAgICAmX19yZWFkbW9yZSB7XG4gICAgICAgICAgICBoZWlnaHQ6IDQwMHB4O1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIC13ZWJraXQtbWFzay1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCBsZWZ0IGJvdHRvbSwgZnJvbShyZ2JhKDAsMCwwLDEpKSwgdG8ocmdiYSgwLDAsMCwwKSkpO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiB1bnNldDtcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogdW5zZXQ7XG4gICAgICAgICAgICAgICAgLXdlYmtpdC1tYXNrLWltYWdlOiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJl9fcmVhZG1vcmUtYnV0dG9uIHtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmMGYwZjA7XG4gICAgICAgICAgICBjb2xvcjogIzJlOGZmZjtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMHB4O1xuICAgICAgICAgICAgcGFkZGluZzogMC42NHJlbSAxLjNyZW07XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgZWFzZS1pbi1vdXQgMzUwbXM7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgZWFzZS1pbi1vdXQgMzUwbXM7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fbWF0ZXJpYWwtY29udGVudCB7XG4gICAgICAgIG1hcmdpbjogMzNweCAwO1xuICAgICAgICBwYWRkaW5nOiAzMHB4IDAgMTVweCAwO1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgI0Q4RDhEODtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNEOEQ4RDg7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgcGFkZGluZzogMzBweCAwO1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgfVxuXG4gICAgICAgICZfX2N0YSB7XG4gICAgICAgICAgICBmbGV4LWJhc2lzOiA1MCU7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogdW5zZXQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwcHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMC42NHJlbSAxLjNyZW07XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCBlYXNlLWluLW91dCAzNTBtcztcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgZWFzZS1pbi1vdXQgMzUwbXM7XG5cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwLjk0cmVtIDIuNHJlbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuXG5cbiAgICAgICAgJl9fYWRkaXRpb25hbCB7XG4gICAgICAgICAgICBmbGV4LWJhc2lzOiA1MCU7XG5cbiAgICAgICAgICAgIGg2IHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogNXB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDBweDtcblxuICAgICAgICAgICAgICAgICYuZGFzaGVkIHtcbiAgICAgICAgICAgICAgICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuXG4gICAgICAgICAgICAgICAgICAgICYgPiBsaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWluZGVudDogLTVweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiLVwiO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtaW5kZW50OiAtNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG5cblxuICAgIC5tZXRob2QtcGFnZV9fY29udGVudCwgJl9fY29udGVudCB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMnJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMi4yOHJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3NpZGViYXIge1xuICAgICAgICBvcmRlcjogMjtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBvcmRlcjogdW5zZXQ7XG4gICAgICAgIH1cblxuICAgICAgICAmX19jb250ZW50IHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICMyZThmZmY7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcblxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMC43cmVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBoNCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTVweCAzMHB4IDBweCAzMHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDM1cHggMzVweCAzNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fZmF2b3VyaXRlLWJ0biB7XG4gICAgICAgIC5mYXZvdXJpdGUtYnRuIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNTU1NTZyZW07XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNTU1NTZyZW07XG4gICAgICAgICAgICBvcmRlcjogMTtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDMwcHggMDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiB1bnNldDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgICAgIG9yZGVyOiB1bnNldDtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgMCA1MHB4IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICZfX2J0biB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogI0YwRjBGMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fdGFicy1jb250YWluZXIge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjU1NTU2cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNTU1NTZyZW07XG4gICAgICAgIG9yZGVyOiAzO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNGMEYwRjA7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA4MHB4O1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDYwcHg7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNjBweDtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDUwcHg7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDUwcHg7XG4gICAgICAgICAgICBvcmRlcjogdW5zZXQ7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMTE1cHg7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDExNXB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fdGFiLXRpdGxlcyB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIG92ZXJmbG93LXg6IHNjcm9sbDtcbiAgICAgICAgb3ZlcmZsb3cteTogaGlkZGVuO1xuICAgICAgICBwYWRkaW5nOiAyNXB4IDA7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIG92ZXJmbG93LXg6IHZpc2libGU7XG4gICAgICAgICAgICBvdmVyZmxvdy15OiB2aXNpYmxlO1xuICAgICAgICAgICAgcGFkZGluZzogdW5zZXQ7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwcHg7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLnRhYi10aXRsZSB7XG4gICAgICAgICAgICBjb2xvcjogYmxhY2s7XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgICAtd2Via2l0LWJveC1mbGV4OiAwO1xuICAgICAgICAgICAgLW1zLWZsZXg6IDAgMCBhdXRvO1xuICAgICAgICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjNzO1xuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogIzJEOEZGRjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgICAgIC13ZWJraXQtYm94LWZsZXg6IHVuc2V0O1xuICAgICAgICAgICAgICAgIC1tcy1mbGV4OiB1bnNldDtcbiAgICAgICAgICAgICAgICBmbGV4OiB1bnNldDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5hY3RpdmUtdGFiLCA6aG92ZXIge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjMkQ4RkZGO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBib3JkZXItcmlnaHQ6IDJweCBzb2xpZCAjRDhEOEQ4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgcGFkZGluZzogMCAxcmVtIDAgMXJlbTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMS41cmVtIDAgMS41cmVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMXJlbTtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMS41cmVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fdGFiLWNvbnRlbnQge1xuICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICBtYXgtd2lkdGg6IDc4NXB4O1xuXG4gICAgICAgIGgxLCBoMiwgaDMsIGg0LCBoNSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDYwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAudGFiLWNvbnRlbnQtdGV4dCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgLmFjdGl2ZS1jb250ZW50IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG5cbiAgICAgICAgdWwge1xuXG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzVweDtcblxuICAgICAgICAgICAgICAgICY6Om1hcmtlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiByZWQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgdWwgbGk6OmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlxcMjAyMlwiO1xuICAgICAgICAgICAgY29sb3I6ICNhYmFiYWI7XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiAwLjdlbTtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMWVtO1xuICAgICAgICAgICAgZm9udC1zaXplOiAyOXB4O1xuICAgICAgICB9XG4gICAgfVxuXG5cblxuICAgICZfX3JlbGF0ZWQtbWV0aG9kcyB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjU1NTU2cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNTU1NTZyZW07XG4gICAgICAgIG9yZGVyOiA0O1xuXG4gICAgICAgIGgzIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiB1bnNldDtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICBvcmRlcjogdW5zZXQ7XG5cbiAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDQwcHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNjBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHVsIHtcbiAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgb3ZlcmZsb3cteTogaGlkZGVuO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgb3ZlcmZsb3cteTogdW5zZXQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgICAgICAgICAgICB3aWR0aDogOTglO1xuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMCAwLjZyZW0gMCAwO1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDQ5JTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMzMuMzMzMzMlO1xuICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMC42cmVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAvKiB3aWR0aCAqL1xuICAgICAgICA6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICAgICAgICAgIGhlaWdodDogNXB4O1xuICAgICAgICB9XG4gICAgICAgIC8qIFRyYWNrICovXG4gICAgICAgIDo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogI0YwRjBGMDtcbiAgICAgICAgfVxuICAgICAgICAvKiBIYW5kbGUgKi9cbiAgICAgICAgOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjMkQ4RkZGO1xuICAgICAgICB9XG4gICAgICAgIC8qIEhhbmRsZSBvbiBob3ZlciAqL1xuICAgICAgICA6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICMwMTc3ZmY7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCLvu78ubWV0aG9kLW92ZXJ2aWV3LXBhZ2Uge1xuICAgIC8qKiogRmlsdGVyICoqKi9cbiAgICAmX19maWx0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjRjBGMEYwO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA3MHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fYnRuIHtcbiAgICAgICAgICAgIC5idXR0b24ge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBjb2xvcjogIzAwMDtcbiAgICAgICAgICAgICAgICBtYXJnaW46IGF1dG8gMC40cmVtO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMHB4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMC41ZW0gMS41ZW07XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuXG4gICAgICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAyNXB4O1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMjVweDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmZpbHRlci1pdGVtIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMTVweDtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHJnYmEoMCwwLDAsMC4xKTtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuMnJlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMCAzNnB4O1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICAgICAgICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgwMHB4KSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMjBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDE2cHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgIHN0cm9rZTogIzAwMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJl9fZHJvcGRvd24ge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgICAgICAgICAgIHRvcDogMTAwJTtcblxuICAgICAgICAgICAgICAgICYuY2F0ZWdvcnkge1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAyMDNweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLmFnZSB7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDM2MnB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYuZGlzcGxheSB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDQwcHggNDBweCAxNXB4IDQwcHg7XG4gICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDM7XG4gICAgICAgICAgICAgICAgICAgIGdhcDogMCA1MHB4O1xuICAgICAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDJweCAyMHB4IDAgcmdiYSgwLDAsMCwwLjEpO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICAgICAgICAgICAgICBncmlkLWF1dG8tZmxvdzogY29sdW1uO1xuICAgICAgICAgICAgICAgICAgICBncmlkLXRlbXBsYXRlLXJvd3M6IHJlcGVhdCg2LCBhdXRvKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuaW5wdXQtY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcblxuICAgICAgICAgICAgICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMzBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDI0cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZWVlO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAtd2Via2l0LXByaW50LWNvbG9yLWFkanVzdDogZXhhY3Q7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICY6Y2hlY2tlZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzJEOEZGRjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogIzJEOEZGRiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMTMuNzQ0XCIgaGVpZ2h0PVwiMTEuMzkxXCI+PHBhdGggZGF0YS1uYW1lPVwiUGF0aCAzNDBcIiBkPVwiTTEyLjM1MyAxLjM5MWwtNi4yMiA5TDEuNDE0IDUuNjdcIiBmaWxsPVwibm9uZVwiIHN0cm9rZT1cIndoaXRlXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgc3Ryb2tlLXdpZHRoPVwiMlwiLz48L3N2Zz4nKSBjZW50ZXIgLyBjb250YWluIG5vLXJlcGVhdDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuZGlzcGxheSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICMyRDhGRkY7XG5cbiAgICAgICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgICAgICBzdHJva2U6ICMyRDhGRkYgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMjcwZGVnKTtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4ycyBlYXNlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5maWx0ZXItaXRlbV9fZHJvcGRvd24ge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiA0MHB4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDI2cHggLTM2cHg7XG4gICAgICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAyNXB4IDAgcmdiYSgwLDAsMCwwLjEpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICZfX3Jlc2V0LWZpbHRlciB7XG4gICAgICAgICAgICAmLmZpbHRlci1pdGVtIHtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjVzIGVhc2U7XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAyNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmhvdmVyIHN2ZyB7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMzAwZGVnKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICZfX2FnZSB7XG4gICAgICAgICAgICAmLmZpbHRlci1pdGVtIHtcbiAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmX19yZXN1bHRzIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5maWx0ZXItaXRlbSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICAgICAgICAgICAgICAgIGN1cnNvcjogdW5zZXQ7XG5cbiAgICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5ncmlkLWNvbnRhaW5lciB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwNXB4O1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogbGVmdDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICAgIGhlaWdodDogODBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnNob3ctcmVzdWx0LWJ0biB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICZfX21vYmlsZS1maWx0ZXIge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGhlaWdodDogODBweDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgyNDAsMjQwLDI0MCwwLjUpO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDE1cHg7XG5cbiAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAycHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGg0IHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5idG4tY2xvc2Uge1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgICAgIHRvcDogMjVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX21vYmlsZS1maWx0ZXItb3ZlcmxheSB7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICB6LWluZGV4OiAxMDtcbiAgICAgICAgcmlnaHQ6IC0xMDAlO1xuICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IHJpZ2h0IDAuNHMgZWFzZS1pbjtcbiAgICAgICAgdHJhbnNpdGlvbjogcmlnaHQgMC40cyBlYXNlLWluO1xuXG4gICAgICAgIC5maWx0ZXItaXRlbSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgaGVpZ2h0OiA2N3B4O1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogbGVmdDtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogbm9uZTtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjRUZFRkVGO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICB3aWR0aDogOTMlO1xuICAgICAgICAgICAgbWFyZ2luOiBhdXRvO1xuXG4gICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyNXB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMjVweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJl9fZHJvcGRvd24uZGlzcGxheSB7XG4gICAgICAgICAgICAgICAgZ2FwOiB1bnNldDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogdW5zZXQ7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDE1cHggMTVweCAxNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmZpbHRlci1ib3R0b20ge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIHotaW5kZXg6IDEwMDtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgLTVweCA1cHggLTVweCByZ2JhKDAsMCwwLDAuMSk7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDIwcHggMzBweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgICAgICAubWV0aG9kLW92ZXJ2aWV3LXBhZ2VfX2ZpbHRlcl9fcmVzZXQtZmlsdGVyIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDE1cHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTJweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnNob3ctcmVzdWx0LWJ0biB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XG5cbiAgICAgICAgICAgICAgICAuYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwcHg7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIGVhc2UtaW4tb3V0IDM1MG1zO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgZWFzZS1pbi1vdXQgMzUwbXM7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAuN2VtIDEuNWVtO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubWV0aG9kLW92ZXJ2aWV3LXBhZ2VfX2ZpbHRlcl9fcmVzZXQtZmlsdGVyIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgICAgICBtYXJnaW46IHVuc2V0O1xuICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLm9wZW4ge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IHJpZ2h0IDAuNHMgZWFzZS1vdXQ7XG4gICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IHJpZ2h0IDAuNHMgZWFzZS1vdXQ7XG4gICAgICAgICAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDEwN3B4O1xuXG4gICAgICAgICAgICAuZmlsdGVyLWl0ZW1fX2Ryb3Bkb3duLmRpc3BsYXkge1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmhpZGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5zaG93IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyoqKiBMaXN0ICoqKi9cbnVsIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xufSIsIu+7vy5jb250YWN0LW1hY3JvX19zaWRlYmFyIHtcbiAgICBib3JkZXI6IG5vbmUhaW1wb3J0YW50O1xufVxuXG4uY29udGFjdC1tYWNybyB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIFxuICAgICZfX3NpZGViYXIge1xuICAgICAgICBib3JkZXI6IG5vbmUhaW1wb3J0YW50O1xuICAgIH1cblxuICAgICZfX21lZGlhIHtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9faGVhZGluZyB7XG4gICAgICAgIHBhZGRpbmc6IDJyZW0gMXJlbSAwOyAgIFxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7ICAgICBcblxuICAgICAgICBoNCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogMTAwO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLjZyZW07XG4gICAgICAgICAgICBmb250LXNpemU6IC44cmVtO1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgLjI1cmVtO1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIH1cblxuICAgIH1cbiAgICBcbiAgICAmX19uYW1lIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgJl9fdGl0bGUge1xuICAgICAgICBtYXJnaW46IC41cmVtIDAgMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgIGZvbnQtc2l6ZTogLjlyZW07XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAmX19uYW1lLXdyYXBwZXIge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuXG4gICAgJl9fcGhvbmUtd3JhcHBlciB7XG4gICAgICAgIHBhZGRpbmc6IDJyZW0gMXJlbSAycmVtO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLjZyZW07XG4gICAgICAgIGZvbnQtc2l6ZTogLjhyZW07XG4gICAgICAgIG1hcmdpbjogMCAwIC4yNXJlbTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogLjlyZW07XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgICAgbWFyZ2luOiAuNXJlbSAwIDA7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuMXJlbTtcbiAgICAgICAgICAgIH1cbiAgIFxuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAmX19waG9uZSB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICBtYXJnaW46IDAgMCAxLjVyZW07XG4gICAgfVxuXG4gICAgJl9fZW1haWwge1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICB9XG4gICAgLy8gZm9yIHNtYWxsIHNjcmVlblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ2ZW0pIHtcbiAgICAgICAgJl9fc2lkZWJhci13cmFwcGVyIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX21lZGlhIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX2hlYWRpbmcge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fbmFtZS13cmFwcGVyIHtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogMHB4O1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDIwcHg7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cblxuICAgICAgICAmX19waG9uZS13cmFwcGVyIHtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogMHB4O1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDIwcHg7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIu+7vy5pbmZvLWxpc3QtbWFjcm8ge1xuICAgIGg2IHtcbiAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDMwcHg7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMTBweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG9sIHtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvbCBsaSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMHB4O1xuICAgICAgICBjb3VudGVyLWluY3JlbWVudDogbGlzdC1jb3VudGVyO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMThweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG9sIGxpOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBjb3VudGVyKGxpc3QtY291bnRlcik7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAnSW50ZXInLCBzYW5zLXNlcmlmO1xuICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAtLXNpemU6IDQwcHg7XG4gICAgICAgIGxlZnQ6IGNhbGMoLTEgKiB2YXIoLS1zaXplKSAtIDEwcHgpO1xuICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tc2l6ZSk7XG4gICAgICAgIHdpZHRoOiB2YXIoLS1zaXplKTtcbiAgICAgICAgaGVpZ2h0OiB2YXIoLS1zaXplKTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBiYWNrZ3JvdW5kOiAjMzg3Q0IzO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgICAgICAgLS1zaXplOiA1NXB4O1xuICAgICAgICB9XG4gICAgfVxufVxuIiwi77u/XG5AbWVkaWEgb25seSBwcmludCB7XG5cbiAgICBkaXYge1xuICAgICAgICBicmVhay1pbnNpZGU6IGF2b2lkO1xuICAgIH1cblxuICAgIC5mYXZvdXJpdGVzLW1lbnUge1xuXG4gICAgICAgICZfX3RvcC1jb250ZW50IHtcbiAgICAgICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICZfX2N0YSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgdWwge1xuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAgICAgICAgICAgLm1ldGhvZC1saXN0IHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMzMuMzMzMzMlO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMC42cmVtIDAgMDtcblxuICAgICAgICAgICAgICAgIC5tZXRob2QtbGlzdC1pdGVtX19jdGEge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGFbaHJlZl06YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAubWV0aG9kLWxpc3QtaXRlbSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICAgICAgICAgICAgIGg0LCBwIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAqIHtcbiAgICAgICAgdHJhbnNpdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbn1cbiJdfQ== */
