﻿@font-face{font-family:"Open Sauce Two";src:url("../fonts/open-sauce-two/open-sauce-two-300-normal.woff2") format("woff2"),url("../fonts/open-sauce-two/open-sauce-two-300-normal.woff") format("woff");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:"Open Sauce Two";src:url("../fonts/open-sauce-two/open-sauce-two-300-italic.woff2") format("woff2"),url("../fonts/open-sauce-two/open-sauce-two-300-italic.woff") format("woff");font-weight:300;font-style:italic;font-display:swap}@font-face{font-family:"Open Sauce Two";src:url("../fonts/open-sauce-two/open-sauce-two-400-normal.woff2") format("woff2"),url("../fonts/open-sauce-two/open-sauce-two-400-normal.woff") format("woff");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:"Open Sauce Two";src:url("../fonts/open-sauce-two/open-sauce-two-400-italic.woff2") format("woff2"),url("../fonts/open-sauce-two/open-sauce-two-400-italic.woff") format("woff");font-weight:400;font-style:italic;font-display:swap}.acf-block-preview,#tinymce,:root{--body-font: "Open Sauce Two", Helvetica, Arial, sans-serif;--header-font: "Open Sauce Two", Helvetica, Arial, sans-serif;--body-line-height: 1.3;--header-line-height: 1.2;--weight-light: 300;--weight-normal: 300;--weight-bold: 400;--heading-tracking: 0.02em;--header-height: 54px;--line: 1px solid var(--abc-black);--easing: cubic-bezier(0.23, 1, 0.32, 1);--sal-easing: cubic-bezier(0.23, 1, 0.32, 1);--sal-duration: 1000ms;--sal-delay: 350ms;--size-minus3: 0.625rem;--size-minus2: 0.707rem;--size-minus1: 0.875rem;--size: 16px;--size-plus0: 1rem;--size-plus1: 1.25rem;--size-plus2: 1.5625rem;--size-plus3: 1.953125rem;--size-plus4: 2.44140625rem;--size-plus5: 3.0517578125rem;--size-plus6: 3.8146972656rem;--size-plus7: 4.768371582rem;--size-plus8: 5.9604644775rem;--size-plus9: 7.4505805969rem;--size-plus10: 9.3132257462rem}@media print,screen and (min-width: 800px){.acf-block-preview,#tinymce,:root{--size-plus0: 1vw;--size-plus1: 1.25vw;--size-plus2: 1.5625vw;--size-plus3: 1.953125vw;--size-plus4: 2.44140625vw;--size-plus5: 3.0517578125vw;--size-plus6: 3.8146972656vw;--size-plus7: 4.768371582vw;--size-plus8: 5.9604644775vw;--size-plus9: 7.4505805969vw;--size-plus10: 9.3132257462vw}}.acf-block-preview,#tinymce,:root{--abc-black: #262323;--abc-off-white: #f9f7f7;--plaster-b: #ffa17e;--green-a: #ebead4;--green-b: #999700;--green-c: #403f10;--sun-b: #ffae00;--sun-c: #4d3400;--wine-a: #faeae7;--wine-b: #d06b7f;--wine-c: #4d272f;--blue-a: #e9f7f8;--blue-b: #6dc7cf;--blue-c: #253133;--black-15: #d9d9d9;--bg: var(--abc-off-white);--pagebg: var(--abc-off-white);--black: var(--abc-black);--white: var(--abc-off-white);--purewhite: #ffffff;--pureblack: #000000;--theme-bg: var(--abc-off-white);--theme-fg: var(--abc-black);--theme-accent: var(--plaster-b)}[data-theme]{background-color:var(--theme-bg);color:var(--theme-fg)}[data-theme=abc-off-white],[data-theme=off-white]{--theme-bg: var(--abc-off-white);--theme-fg: var(--abc-black);--theme-accent: var(--plaster-b)}[data-theme=plaster-b]{--theme-bg: var(--plaster-b);--theme-fg: var(--abc-black);--theme-accent: var(--abc-black)}[data-theme=green-a]{--theme-bg: var(--green-a);--theme-light: var(--green-a);--theme-fg: var(--abc-black);--theme-accent: var(--green-b)}[data-theme=green-b]{--theme-bg: var(--green-b);--theme-light: var(--green-a);--theme-fg: var(--abc-off-white);--theme-accent: var(--plaster-b);--line: 1px solid rgba(249, 247, 247, 0.2)}[data-theme=wine-b]{--theme-bg: var(--wine-b);--theme-fg: var(--abc-black);--theme-accent: var(--abc-black)}[data-theme=abc-black],[data-theme=black]{--theme-bg: var(--abc-black);--theme-fg: var(--abc-off-white);--theme-accent: var(--plaster-b);--line: 1px solid rgba(249, 247, 247, 0.2)}[data-theme=green-c]{--theme-bg: var(--green-c);--theme-fg: var(--abc-off-white);--theme-accent: var(--plaster-b);--theme-light: var(--green-b);--line: 1px solid rgba(249, 247, 247, 0.2)}[data-theme=wine-c]{--theme-bg: var(--wine-c);--theme-bgalt: var(--wine-a);--theme-fg: var(--abc-off-white);--theme-accent: var(--plaster-b);--line: 1px solid rgba(249, 247, 247, 0.2)}[data-theme=sun-b]{--theme-bg: var(--sun-b);--theme-fg: var(--abc-off-white);--theme-accent: var(--plaster-b);--line: 1px solid rgba(249, 247, 247, 0.2)}[data-theme=sun-c]{--theme-bg: var(--sun-c);--theme-fg: var(--abc-off-white);--theme-accent: var(--plaster-b);--line: 1px solid rgba(249, 247, 247, 0.2)}[data-theme=blue-a]{--theme-bg: var(--blue-a);--theme-fg: var(--abc-black);--theme-accent: var(--blue-b)}[data-theme=blue-b]{--theme-bg: var(--blue-b);--theme-fg: var(--abc-black);--theme-accent: var(--blue-c)}[data-theme=blue-c]{--theme-bg: var(--blue-c);--theme-bgalt: var(--blue-a);--theme-fg: var(--abc-off-white);--theme-accent: var(--blue-b);--line: 1px solid rgba(249, 247, 247, 0.2)}.btn,.button.hollow{display:inline-flex;align-items:center;justify-content:center;padding:.625em 1.875em;border:1px solid var(--theme-accent, var(--plaster-b));border-radius:0;font-family:var(--body-font);font-weight:var(--weight-bold);font-size:var(--size-minus1);letter-spacing:var(--heading-tracking);line-height:1;text-decoration:none;color:var(--abc-black);background:rgba(0,0,0,0);cursor:pointer;transition:background-color .3s var(--easing),color .3s var(--easing),border-color .3s var(--easing),border-radius .3s var(--easing)}.btn:hover,.button.hollow:hover{background-color:var(--theme-accent, var(--plaster-b));color:var(--abc-black);border-color:var(--theme-accent, var(--plaster-b));border-radius:50px}.btn:focus-visible,.button.hollow:focus-visible{outline:none}/*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:rgba(0,0,0,0)}abbr[title]{border-bottom:0;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}[data-whatintent=mouse] *,[data-whatintent=mouse] *:focus,[data-whatintent=touch] *,[data-whatintent=touch] *:focus,[data-whatinput=mouse] *,[data-whatinput=mouse] *:focus,[data-whatinput=touch] *,[data-whatinput=touch] *:focus{outline:none}[draggable=false]{-webkit-touch-callout:none;-webkit-user-select:none}.foundation-mq{font-family:"small=0em&medium=40em&large=64em&xlarge=75em&xxlarge=90em"}html{box-sizing:border-box;font-size:100%}*,*::before,*::after{box-sizing:inherit}body{margin:0;padding:0;background:#fefefe;font-family:"Helvetica Neue",Helvetica,Roboto,Arial,sans-serif;font-weight:normal;line-height:1.5;color:#0a0a0a;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}img{display:inline-block;vertical-align:middle;max-width:100%;height:auto;-ms-interpolation-mode:bicubic}textarea{height:auto;min-height:50px;border-radius:0}select{box-sizing:border-box;width:100%;border-radius:0}.map_canvas img,.map_canvas embed,.map_canvas object,.mqa-display img,.mqa-display embed,.mqa-display object{max-width:none !important}[data-whatinput=mouse] button{outline:0}button{padding:0;appearance:none;border:0;border-radius:0;background:rgba(0,0,0,0);line-height:1;cursor:auto}pre{overflow:auto;-webkit-overflow-scrolling:touch}button,input,optgroup,select,textarea{font-family:inherit}.is-visible{display:block !important}.is-hidden{display:none !important}.grid-container{padding-right:0.75rem;padding-left:0.75rem;max-width:75rem;margin-left:auto;margin-right:auto}.grid-container.fluid{padding-right:0.75rem;padding-left:0.75rem;max-width:100%;margin-left:auto;margin-right:auto}.grid-container.full{padding-right:0;padding-left:0;max-width:100%;margin-left:auto;margin-right:auto}.grid-x{display:flex;flex-flow:row wrap}.cell{flex:0 0 auto;min-height:0;min-width:0;width:100%}.cell.auto{flex:1 1 0}.cell.shrink{flex:0 0 auto}.grid-x>.auto{width:auto}.grid-x>.shrink{width:auto}.grid-x>.small-shrink,.grid-x>.small-full,.grid-x>.small-1,.grid-x>.small-2,.grid-x>.small-3,.grid-x>.small-4,.grid-x>.small-5,.grid-x>.small-6,.grid-x>.small-7,.grid-x>.small-8,.grid-x>.small-9,.grid-x>.small-10,.grid-x>.small-11,.grid-x>.small-12{flex-basis:auto}@media print,screen and (min-width: 40em){.grid-x>.medium-shrink,.grid-x>.medium-full,.grid-x>.medium-1,.grid-x>.medium-2,.grid-x>.medium-3,.grid-x>.medium-4,.grid-x>.medium-5,.grid-x>.medium-6,.grid-x>.medium-7,.grid-x>.medium-8,.grid-x>.medium-9,.grid-x>.medium-10,.grid-x>.medium-11,.grid-x>.medium-12{flex-basis:auto}}@media print,screen and (min-width: 64em){.grid-x>.large-shrink,.grid-x>.large-full,.grid-x>.large-1,.grid-x>.large-2,.grid-x>.large-3,.grid-x>.large-4,.grid-x>.large-5,.grid-x>.large-6,.grid-x>.large-7,.grid-x>.large-8,.grid-x>.large-9,.grid-x>.large-10,.grid-x>.large-11,.grid-x>.large-12{flex-basis:auto}}.grid-x>.small-12,.grid-x>.small-11,.grid-x>.small-10,.grid-x>.small-9,.grid-x>.small-8,.grid-x>.small-7,.grid-x>.small-6,.grid-x>.small-5,.grid-x>.small-4,.grid-x>.small-3,.grid-x>.small-2,.grid-x>.small-1{flex:0 0 auto}.grid-x>.small-1{width:8.3333333333%}.grid-x>.small-2{width:16.6666666667%}.grid-x>.small-3{width:25%}.grid-x>.small-4{width:33.3333333333%}.grid-x>.small-5{width:41.6666666667%}.grid-x>.small-6{width:50%}.grid-x>.small-7{width:58.3333333333%}.grid-x>.small-8{width:66.6666666667%}.grid-x>.small-9{width:75%}.grid-x>.small-10{width:83.3333333333%}.grid-x>.small-11{width:91.6666666667%}.grid-x>.small-12{width:100%}@media print,screen and (min-width: 40em){.grid-x>.medium-auto{flex:1 1 0;width:auto}.grid-x>.medium-12,.grid-x>.medium-11,.grid-x>.medium-10,.grid-x>.medium-9,.grid-x>.medium-8,.grid-x>.medium-7,.grid-x>.medium-6,.grid-x>.medium-5,.grid-x>.medium-4,.grid-x>.medium-3,.grid-x>.medium-2,.grid-x>.medium-1,.grid-x>.medium-shrink{flex:0 0 auto}.grid-x>.medium-shrink{width:auto}.grid-x>.medium-1{width:8.3333333333%}.grid-x>.medium-2{width:16.6666666667%}.grid-x>.medium-3{width:25%}.grid-x>.medium-4{width:33.3333333333%}.grid-x>.medium-5{width:41.6666666667%}.grid-x>.medium-6{width:50%}.grid-x>.medium-7{width:58.3333333333%}.grid-x>.medium-8{width:66.6666666667%}.grid-x>.medium-9{width:75%}.grid-x>.medium-10{width:83.3333333333%}.grid-x>.medium-11{width:91.6666666667%}.grid-x>.medium-12{width:100%}}@media print,screen and (min-width: 64em){.grid-x>.large-auto{flex:1 1 0;width:auto}.grid-x>.large-12,.grid-x>.large-11,.grid-x>.large-10,.grid-x>.large-9,.grid-x>.large-8,.grid-x>.large-7,.grid-x>.large-6,.grid-x>.large-5,.grid-x>.large-4,.grid-x>.large-3,.grid-x>.large-2,.grid-x>.large-1,.grid-x>.large-shrink{flex:0 0 auto}.grid-x>.large-shrink{width:auto}.grid-x>.large-1{width:8.3333333333%}.grid-x>.large-2{width:16.6666666667%}.grid-x>.large-3{width:25%}.grid-x>.large-4{width:33.3333333333%}.grid-x>.large-5{width:41.6666666667%}.grid-x>.large-6{width:50%}.grid-x>.large-7{width:58.3333333333%}.grid-x>.large-8{width:66.6666666667%}.grid-x>.large-9{width:75%}.grid-x>.large-10{width:83.3333333333%}.grid-x>.large-11{width:91.6666666667%}.grid-x>.large-12{width:100%}}.grid-margin-x:not(.grid-x)>.cell{width:auto}.grid-margin-y:not(.grid-y)>.cell{height:auto}.grid-margin-x{margin-left:-0.75rem;margin-right:-0.75rem}.grid-margin-x>.cell{width:calc(100% - 1.5rem);margin-left:0.75rem;margin-right:0.75rem}.grid-margin-x>.auto{width:auto}.grid-margin-x>.shrink{width:auto}.grid-margin-x>.small-1{width:calc(8.3333333333% - 1.5rem)}.grid-margin-x>.small-2{width:calc(16.6666666667% - 1.5rem)}.grid-margin-x>.small-3{width:calc(25% - 1.5rem)}.grid-margin-x>.small-4{width:calc(33.3333333333% - 1.5rem)}.grid-margin-x>.small-5{width:calc(41.6666666667% - 1.5rem)}.grid-margin-x>.small-6{width:calc(50% - 1.5rem)}.grid-margin-x>.small-7{width:calc(58.3333333333% - 1.5rem)}.grid-margin-x>.small-8{width:calc(66.6666666667% - 1.5rem)}.grid-margin-x>.small-9{width:calc(75% - 1.5rem)}.grid-margin-x>.small-10{width:calc(83.3333333333% - 1.5rem)}.grid-margin-x>.small-11{width:calc(91.6666666667% - 1.5rem)}.grid-margin-x>.small-12{width:calc(100% - 1.5rem)}@media print,screen and (min-width: 40em){.grid-margin-x>.medium-auto{width:auto}.grid-margin-x>.medium-shrink{width:auto}.grid-margin-x>.medium-1{width:calc(8.3333333333% - 1.5rem)}.grid-margin-x>.medium-2{width:calc(16.6666666667% - 1.5rem)}.grid-margin-x>.medium-3{width:calc(25% - 1.5rem)}.grid-margin-x>.medium-4{width:calc(33.3333333333% - 1.5rem)}.grid-margin-x>.medium-5{width:calc(41.6666666667% - 1.5rem)}.grid-margin-x>.medium-6{width:calc(50% - 1.5rem)}.grid-margin-x>.medium-7{width:calc(58.3333333333% - 1.5rem)}.grid-margin-x>.medium-8{width:calc(66.6666666667% - 1.5rem)}.grid-margin-x>.medium-9{width:calc(75% - 1.5rem)}.grid-margin-x>.medium-10{width:calc(83.3333333333% - 1.5rem)}.grid-margin-x>.medium-11{width:calc(91.6666666667% - 1.5rem)}.grid-margin-x>.medium-12{width:calc(100% - 1.5rem)}}@media print,screen and (min-width: 64em){.grid-margin-x>.large-auto{width:auto}.grid-margin-x>.large-shrink{width:auto}.grid-margin-x>.large-1{width:calc(8.3333333333% - 1.5rem)}.grid-margin-x>.large-2{width:calc(16.6666666667% - 1.5rem)}.grid-margin-x>.large-3{width:calc(25% - 1.5rem)}.grid-margin-x>.large-4{width:calc(33.3333333333% - 1.5rem)}.grid-margin-x>.large-5{width:calc(41.6666666667% - 1.5rem)}.grid-margin-x>.large-6{width:calc(50% - 1.5rem)}.grid-margin-x>.large-7{width:calc(58.3333333333% - 1.5rem)}.grid-margin-x>.large-8{width:calc(66.6666666667% - 1.5rem)}.grid-margin-x>.large-9{width:calc(75% - 1.5rem)}.grid-margin-x>.large-10{width:calc(83.3333333333% - 1.5rem)}.grid-margin-x>.large-11{width:calc(91.6666666667% - 1.5rem)}.grid-margin-x>.large-12{width:calc(100% - 1.5rem)}}.grid-padding-x .grid-padding-x{margin-right:-0.75rem;margin-left:-0.75rem}.grid-container:not(.full)>.grid-padding-x{margin-right:-0.75rem;margin-left:-0.75rem}.grid-padding-x>.cell{padding-right:0.75rem;padding-left:0.75rem}.small-up-1>.cell{width:100%}.small-up-2>.cell{width:50%}.small-up-3>.cell{width:33.3333333333%}.small-up-4>.cell{width:25%}.small-up-5>.cell{width:20%}.small-up-6>.cell{width:16.6666666667%}.small-up-7>.cell{width:14.2857142857%}.small-up-8>.cell{width:12.5%}@media print,screen and (min-width: 40em){.medium-up-1>.cell{width:100%}.medium-up-2>.cell{width:50%}.medium-up-3>.cell{width:33.3333333333%}.medium-up-4>.cell{width:25%}.medium-up-5>.cell{width:20%}.medium-up-6>.cell{width:16.6666666667%}.medium-up-7>.cell{width:14.2857142857%}.medium-up-8>.cell{width:12.5%}}@media print,screen and (min-width: 64em){.large-up-1>.cell{width:100%}.large-up-2>.cell{width:50%}.large-up-3>.cell{width:33.3333333333%}.large-up-4>.cell{width:25%}.large-up-5>.cell{width:20%}.large-up-6>.cell{width:16.6666666667%}.large-up-7>.cell{width:14.2857142857%}.large-up-8>.cell{width:12.5%}}.grid-margin-x.small-up-1>.cell{width:calc(100% - 1.5rem)}.grid-margin-x.small-up-2>.cell{width:calc(50% - 1.5rem)}.grid-margin-x.small-up-3>.cell{width:calc(33.3333333333% - 1.5rem)}.grid-margin-x.small-up-4>.cell{width:calc(25% - 1.5rem)}.grid-margin-x.small-up-5>.cell{width:calc(20% - 1.5rem)}.grid-margin-x.small-up-6>.cell{width:calc(16.6666666667% - 1.5rem)}.grid-margin-x.small-up-7>.cell{width:calc(14.2857142857% - 1.5rem)}.grid-margin-x.small-up-8>.cell{width:calc(12.5% - 1.5rem)}@media print,screen and (min-width: 40em){.grid-margin-x.medium-up-1>.cell{width:calc(100% - 1.5rem)}.grid-margin-x.medium-up-2>.cell{width:calc(50% - 1.5rem)}.grid-margin-x.medium-up-3>.cell{width:calc(33.3333333333% - 1.5rem)}.grid-margin-x.medium-up-4>.cell{width:calc(25% - 1.5rem)}.grid-margin-x.medium-up-5>.cell{width:calc(20% - 1.5rem)}.grid-margin-x.medium-up-6>.cell{width:calc(16.6666666667% - 1.5rem)}.grid-margin-x.medium-up-7>.cell{width:calc(14.2857142857% - 1.5rem)}.grid-margin-x.medium-up-8>.cell{width:calc(12.5% - 1.5rem)}}@media print,screen and (min-width: 64em){.grid-margin-x.large-up-1>.cell{width:calc(100% - 1.5rem)}.grid-margin-x.large-up-2>.cell{width:calc(50% - 1.5rem)}.grid-margin-x.large-up-3>.cell{width:calc(33.3333333333% - 1.5rem)}.grid-margin-x.large-up-4>.cell{width:calc(25% - 1.5rem)}.grid-margin-x.large-up-5>.cell{width:calc(20% - 1.5rem)}.grid-margin-x.large-up-6>.cell{width:calc(16.6666666667% - 1.5rem)}.grid-margin-x.large-up-7>.cell{width:calc(14.2857142857% - 1.5rem)}.grid-margin-x.large-up-8>.cell{width:calc(12.5% - 1.5rem)}}.small-margin-collapse{margin-right:0;margin-left:0}.small-margin-collapse>.cell{margin-right:0;margin-left:0}.small-margin-collapse>.small-1{width:8.3333333333%}.small-margin-collapse>.small-2{width:16.6666666667%}.small-margin-collapse>.small-3{width:25%}.small-margin-collapse>.small-4{width:33.3333333333%}.small-margin-collapse>.small-5{width:41.6666666667%}.small-margin-collapse>.small-6{width:50%}.small-margin-collapse>.small-7{width:58.3333333333%}.small-margin-collapse>.small-8{width:66.6666666667%}.small-margin-collapse>.small-9{width:75%}.small-margin-collapse>.small-10{width:83.3333333333%}.small-margin-collapse>.small-11{width:91.6666666667%}.small-margin-collapse>.small-12{width:100%}@media print,screen and (min-width: 40em){.small-margin-collapse>.medium-1{width:8.3333333333%}.small-margin-collapse>.medium-2{width:16.6666666667%}.small-margin-collapse>.medium-3{width:25%}.small-margin-collapse>.medium-4{width:33.3333333333%}.small-margin-collapse>.medium-5{width:41.6666666667%}.small-margin-collapse>.medium-6{width:50%}.small-margin-collapse>.medium-7{width:58.3333333333%}.small-margin-collapse>.medium-8{width:66.6666666667%}.small-margin-collapse>.medium-9{width:75%}.small-margin-collapse>.medium-10{width:83.3333333333%}.small-margin-collapse>.medium-11{width:91.6666666667%}.small-margin-collapse>.medium-12{width:100%}}@media print,screen and (min-width: 64em){.small-margin-collapse>.large-1{width:8.3333333333%}.small-margin-collapse>.large-2{width:16.6666666667%}.small-margin-collapse>.large-3{width:25%}.small-margin-collapse>.large-4{width:33.3333333333%}.small-margin-collapse>.large-5{width:41.6666666667%}.small-margin-collapse>.large-6{width:50%}.small-margin-collapse>.large-7{width:58.3333333333%}.small-margin-collapse>.large-8{width:66.6666666667%}.small-margin-collapse>.large-9{width:75%}.small-margin-collapse>.large-10{width:83.3333333333%}.small-margin-collapse>.large-11{width:91.6666666667%}.small-margin-collapse>.large-12{width:100%}}.small-padding-collapse{margin-right:0;margin-left:0}.small-padding-collapse>.cell{padding-right:0;padding-left:0}@media print,screen and (min-width: 40em){.medium-margin-collapse{margin-right:0;margin-left:0}.medium-margin-collapse>.cell{margin-right:0;margin-left:0}}@media print,screen and (min-width: 40em){.medium-margin-collapse>.small-1{width:8.3333333333%}.medium-margin-collapse>.small-2{width:16.6666666667%}.medium-margin-collapse>.small-3{width:25%}.medium-margin-collapse>.small-4{width:33.3333333333%}.medium-margin-collapse>.small-5{width:41.6666666667%}.medium-margin-collapse>.small-6{width:50%}.medium-margin-collapse>.small-7{width:58.3333333333%}.medium-margin-collapse>.small-8{width:66.6666666667%}.medium-margin-collapse>.small-9{width:75%}.medium-margin-collapse>.small-10{width:83.3333333333%}.medium-margin-collapse>.small-11{width:91.6666666667%}.medium-margin-collapse>.small-12{width:100%}}@media print,screen and (min-width: 40em){.medium-margin-collapse>.medium-1{width:8.3333333333%}.medium-margin-collapse>.medium-2{width:16.6666666667%}.medium-margin-collapse>.medium-3{width:25%}.medium-margin-collapse>.medium-4{width:33.3333333333%}.medium-margin-collapse>.medium-5{width:41.6666666667%}.medium-margin-collapse>.medium-6{width:50%}.medium-margin-collapse>.medium-7{width:58.3333333333%}.medium-margin-collapse>.medium-8{width:66.6666666667%}.medium-margin-collapse>.medium-9{width:75%}.medium-margin-collapse>.medium-10{width:83.3333333333%}.medium-margin-collapse>.medium-11{width:91.6666666667%}.medium-margin-collapse>.medium-12{width:100%}}@media print,screen and (min-width: 64em){.medium-margin-collapse>.large-1{width:8.3333333333%}.medium-margin-collapse>.large-2{width:16.6666666667%}.medium-margin-collapse>.large-3{width:25%}.medium-margin-collapse>.large-4{width:33.3333333333%}.medium-margin-collapse>.large-5{width:41.6666666667%}.medium-margin-collapse>.large-6{width:50%}.medium-margin-collapse>.large-7{width:58.3333333333%}.medium-margin-collapse>.large-8{width:66.6666666667%}.medium-margin-collapse>.large-9{width:75%}.medium-margin-collapse>.large-10{width:83.3333333333%}.medium-margin-collapse>.large-11{width:91.6666666667%}.medium-margin-collapse>.large-12{width:100%}}@media print,screen and (min-width: 40em){.medium-padding-collapse{margin-right:0;margin-left:0}.medium-padding-collapse>.cell{padding-right:0;padding-left:0}}@media print,screen and (min-width: 64em){.large-margin-collapse{margin-right:0;margin-left:0}.large-margin-collapse>.cell{margin-right:0;margin-left:0}}@media print,screen and (min-width: 64em){.large-margin-collapse>.small-1{width:8.3333333333%}.large-margin-collapse>.small-2{width:16.6666666667%}.large-margin-collapse>.small-3{width:25%}.large-margin-collapse>.small-4{width:33.3333333333%}.large-margin-collapse>.small-5{width:41.6666666667%}.large-margin-collapse>.small-6{width:50%}.large-margin-collapse>.small-7{width:58.3333333333%}.large-margin-collapse>.small-8{width:66.6666666667%}.large-margin-collapse>.small-9{width:75%}.large-margin-collapse>.small-10{width:83.3333333333%}.large-margin-collapse>.small-11{width:91.6666666667%}.large-margin-collapse>.small-12{width:100%}}@media print,screen and (min-width: 64em){.large-margin-collapse>.medium-1{width:8.3333333333%}.large-margin-collapse>.medium-2{width:16.6666666667%}.large-margin-collapse>.medium-3{width:25%}.large-margin-collapse>.medium-4{width:33.3333333333%}.large-margin-collapse>.medium-5{width:41.6666666667%}.large-margin-collapse>.medium-6{width:50%}.large-margin-collapse>.medium-7{width:58.3333333333%}.large-margin-collapse>.medium-8{width:66.6666666667%}.large-margin-collapse>.medium-9{width:75%}.large-margin-collapse>.medium-10{width:83.3333333333%}.large-margin-collapse>.medium-11{width:91.6666666667%}.large-margin-collapse>.medium-12{width:100%}}@media print,screen and (min-width: 64em){.large-margin-collapse>.large-1{width:8.3333333333%}.large-margin-collapse>.large-2{width:16.6666666667%}.large-margin-collapse>.large-3{width:25%}.large-margin-collapse>.large-4{width:33.3333333333%}.large-margin-collapse>.large-5{width:41.6666666667%}.large-margin-collapse>.large-6{width:50%}.large-margin-collapse>.large-7{width:58.3333333333%}.large-margin-collapse>.large-8{width:66.6666666667%}.large-margin-collapse>.large-9{width:75%}.large-margin-collapse>.large-10{width:83.3333333333%}.large-margin-collapse>.large-11{width:91.6666666667%}.large-margin-collapse>.large-12{width:100%}}@media print,screen and (min-width: 64em){.large-padding-collapse{margin-right:0;margin-left:0}.large-padding-collapse>.cell{padding-right:0;padding-left:0}}.small-offset-0{margin-left:0%}.grid-margin-x>.small-offset-0{margin-left:calc(0% + 1.5rem / 2)}.small-offset-1{margin-left:8.3333333333%}.grid-margin-x>.small-offset-1{margin-left:calc(8.3333333333% + 1.5rem / 2)}.small-offset-2{margin-left:16.6666666667%}.grid-margin-x>.small-offset-2{margin-left:calc(16.6666666667% + 1.5rem / 2)}.small-offset-3{margin-left:25%}.grid-margin-x>.small-offset-3{margin-left:calc(25% + 1.5rem / 2)}.small-offset-4{margin-left:33.3333333333%}.grid-margin-x>.small-offset-4{margin-left:calc(33.3333333333% + 1.5rem / 2)}.small-offset-5{margin-left:41.6666666667%}.grid-margin-x>.small-offset-5{margin-left:calc(41.6666666667% + 1.5rem / 2)}.small-offset-6{margin-left:50%}.grid-margin-x>.small-offset-6{margin-left:calc(50% + 1.5rem / 2)}.small-offset-7{margin-left:58.3333333333%}.grid-margin-x>.small-offset-7{margin-left:calc(58.3333333333% + 1.5rem / 2)}.small-offset-8{margin-left:66.6666666667%}.grid-margin-x>.small-offset-8{margin-left:calc(66.6666666667% + 1.5rem / 2)}.small-offset-9{margin-left:75%}.grid-margin-x>.small-offset-9{margin-left:calc(75% + 1.5rem / 2)}.small-offset-10{margin-left:83.3333333333%}.grid-margin-x>.small-offset-10{margin-left:calc(83.3333333333% + 1.5rem / 2)}.small-offset-11{margin-left:91.6666666667%}.grid-margin-x>.small-offset-11{margin-left:calc(91.6666666667% + 1.5rem / 2)}@media print,screen and (min-width: 40em){.medium-offset-0{margin-left:0%}.grid-margin-x>.medium-offset-0{margin-left:calc(0% + 1.5rem / 2)}.medium-offset-1{margin-left:8.3333333333%}.grid-margin-x>.medium-offset-1{margin-left:calc(8.3333333333% + 1.5rem / 2)}.medium-offset-2{margin-left:16.6666666667%}.grid-margin-x>.medium-offset-2{margin-left:calc(16.6666666667% + 1.5rem / 2)}.medium-offset-3{margin-left:25%}.grid-margin-x>.medium-offset-3{margin-left:calc(25% + 1.5rem / 2)}.medium-offset-4{margin-left:33.3333333333%}.grid-margin-x>.medium-offset-4{margin-left:calc(33.3333333333% + 1.5rem / 2)}.medium-offset-5{margin-left:41.6666666667%}.grid-margin-x>.medium-offset-5{margin-left:calc(41.6666666667% + 1.5rem / 2)}.medium-offset-6{margin-left:50%}.grid-margin-x>.medium-offset-6{margin-left:calc(50% + 1.5rem / 2)}.medium-offset-7{margin-left:58.3333333333%}.grid-margin-x>.medium-offset-7{margin-left:calc(58.3333333333% + 1.5rem / 2)}.medium-offset-8{margin-left:66.6666666667%}.grid-margin-x>.medium-offset-8{margin-left:calc(66.6666666667% + 1.5rem / 2)}.medium-offset-9{margin-left:75%}.grid-margin-x>.medium-offset-9{margin-left:calc(75% + 1.5rem / 2)}.medium-offset-10{margin-left:83.3333333333%}.grid-margin-x>.medium-offset-10{margin-left:calc(83.3333333333% + 1.5rem / 2)}.medium-offset-11{margin-left:91.6666666667%}.grid-margin-x>.medium-offset-11{margin-left:calc(91.6666666667% + 1.5rem / 2)}}@media print,screen and (min-width: 64em){.large-offset-0{margin-left:0%}.grid-margin-x>.large-offset-0{margin-left:calc(0% + 1.5rem / 2)}.large-offset-1{margin-left:8.3333333333%}.grid-margin-x>.large-offset-1{margin-left:calc(8.3333333333% + 1.5rem / 2)}.large-offset-2{margin-left:16.6666666667%}.grid-margin-x>.large-offset-2{margin-left:calc(16.6666666667% + 1.5rem / 2)}.large-offset-3{margin-left:25%}.grid-margin-x>.large-offset-3{margin-left:calc(25% + 1.5rem / 2)}.large-offset-4{margin-left:33.3333333333%}.grid-margin-x>.large-offset-4{margin-left:calc(33.3333333333% + 1.5rem / 2)}.large-offset-5{margin-left:41.6666666667%}.grid-margin-x>.large-offset-5{margin-left:calc(41.6666666667% + 1.5rem / 2)}.large-offset-6{margin-left:50%}.grid-margin-x>.large-offset-6{margin-left:calc(50% + 1.5rem / 2)}.large-offset-7{margin-left:58.3333333333%}.grid-margin-x>.large-offset-7{margin-left:calc(58.3333333333% + 1.5rem / 2)}.large-offset-8{margin-left:66.6666666667%}.grid-margin-x>.large-offset-8{margin-left:calc(66.6666666667% + 1.5rem / 2)}.large-offset-9{margin-left:75%}.grid-margin-x>.large-offset-9{margin-left:calc(75% + 1.5rem / 2)}.large-offset-10{margin-left:83.3333333333%}.grid-margin-x>.large-offset-10{margin-left:calc(83.3333333333% + 1.5rem / 2)}.large-offset-11{margin-left:91.6666666667%}.grid-margin-x>.large-offset-11{margin-left:calc(91.6666666667% + 1.5rem / 2)}}.grid-y{display:flex;flex-flow:column nowrap}.grid-y>.cell{height:auto;max-height:none}.grid-y>.auto{height:auto}.grid-y>.shrink{height:auto}.grid-y>.small-shrink,.grid-y>.small-full,.grid-y>.small-1,.grid-y>.small-2,.grid-y>.small-3,.grid-y>.small-4,.grid-y>.small-5,.grid-y>.small-6,.grid-y>.small-7,.grid-y>.small-8,.grid-y>.small-9,.grid-y>.small-10,.grid-y>.small-11,.grid-y>.small-12{flex-basis:auto}@media print,screen and (min-width: 40em){.grid-y>.medium-shrink,.grid-y>.medium-full,.grid-y>.medium-1,.grid-y>.medium-2,.grid-y>.medium-3,.grid-y>.medium-4,.grid-y>.medium-5,.grid-y>.medium-6,.grid-y>.medium-7,.grid-y>.medium-8,.grid-y>.medium-9,.grid-y>.medium-10,.grid-y>.medium-11,.grid-y>.medium-12{flex-basis:auto}}@media print,screen and (min-width: 64em){.grid-y>.large-shrink,.grid-y>.large-full,.grid-y>.large-1,.grid-y>.large-2,.grid-y>.large-3,.grid-y>.large-4,.grid-y>.large-5,.grid-y>.large-6,.grid-y>.large-7,.grid-y>.large-8,.grid-y>.large-9,.grid-y>.large-10,.grid-y>.large-11,.grid-y>.large-12{flex-basis:auto}}.grid-y>.small-12,.grid-y>.small-11,.grid-y>.small-10,.grid-y>.small-9,.grid-y>.small-8,.grid-y>.small-7,.grid-y>.small-6,.grid-y>.small-5,.grid-y>.small-4,.grid-y>.small-3,.grid-y>.small-2,.grid-y>.small-1{flex:0 0 auto}.grid-y>.small-1{height:8.3333333333%}.grid-y>.small-2{height:16.6666666667%}.grid-y>.small-3{height:25%}.grid-y>.small-4{height:33.3333333333%}.grid-y>.small-5{height:41.6666666667%}.grid-y>.small-6{height:50%}.grid-y>.small-7{height:58.3333333333%}.grid-y>.small-8{height:66.6666666667%}.grid-y>.small-9{height:75%}.grid-y>.small-10{height:83.3333333333%}.grid-y>.small-11{height:91.6666666667%}.grid-y>.small-12{height:100%}@media print,screen and (min-width: 40em){.grid-y>.medium-auto{flex:1 1 0;height:auto}.grid-y>.medium-12,.grid-y>.medium-11,.grid-y>.medium-10,.grid-y>.medium-9,.grid-y>.medium-8,.grid-y>.medium-7,.grid-y>.medium-6,.grid-y>.medium-5,.grid-y>.medium-4,.grid-y>.medium-3,.grid-y>.medium-2,.grid-y>.medium-1,.grid-y>.medium-shrink{flex:0 0 auto}.grid-y>.medium-shrink{height:auto}.grid-y>.medium-1{height:8.3333333333%}.grid-y>.medium-2{height:16.6666666667%}.grid-y>.medium-3{height:25%}.grid-y>.medium-4{height:33.3333333333%}.grid-y>.medium-5{height:41.6666666667%}.grid-y>.medium-6{height:50%}.grid-y>.medium-7{height:58.3333333333%}.grid-y>.medium-8{height:66.6666666667%}.grid-y>.medium-9{height:75%}.grid-y>.medium-10{height:83.3333333333%}.grid-y>.medium-11{height:91.6666666667%}.grid-y>.medium-12{height:100%}}@media print,screen and (min-width: 64em){.grid-y>.large-auto{flex:1 1 0;height:auto}.grid-y>.large-12,.grid-y>.large-11,.grid-y>.large-10,.grid-y>.large-9,.grid-y>.large-8,.grid-y>.large-7,.grid-y>.large-6,.grid-y>.large-5,.grid-y>.large-4,.grid-y>.large-3,.grid-y>.large-2,.grid-y>.large-1,.grid-y>.large-shrink{flex:0 0 auto}.grid-y>.large-shrink{height:auto}.grid-y>.large-1{height:8.3333333333%}.grid-y>.large-2{height:16.6666666667%}.grid-y>.large-3{height:25%}.grid-y>.large-4{height:33.3333333333%}.grid-y>.large-5{height:41.6666666667%}.grid-y>.large-6{height:50%}.grid-y>.large-7{height:58.3333333333%}.grid-y>.large-8{height:66.6666666667%}.grid-y>.large-9{height:75%}.grid-y>.large-10{height:83.3333333333%}.grid-y>.large-11{height:91.6666666667%}.grid-y>.large-12{height:100%}}.grid-padding-y .grid-padding-y{margin-top:-0.75rem;margin-bottom:-0.75rem}.grid-padding-y>.cell{padding-top:0.75rem;padding-bottom:0.75rem}.grid-margin-y{margin-top:-0.75rem;margin-bottom:-0.75rem}.grid-margin-y>.cell{height:calc(100% - 1.5rem);margin-top:0.75rem;margin-bottom:0.75rem}.grid-margin-y>.auto{height:auto}.grid-margin-y>.shrink{height:auto}.grid-margin-y>.small-1{height:calc(8.3333333333% - 1.5rem)}.grid-margin-y>.small-2{height:calc(16.6666666667% - 1.5rem)}.grid-margin-y>.small-3{height:calc(25% - 1.5rem)}.grid-margin-y>.small-4{height:calc(33.3333333333% - 1.5rem)}.grid-margin-y>.small-5{height:calc(41.6666666667% - 1.5rem)}.grid-margin-y>.small-6{height:calc(50% - 1.5rem)}.grid-margin-y>.small-7{height:calc(58.3333333333% - 1.5rem)}.grid-margin-y>.small-8{height:calc(66.6666666667% - 1.5rem)}.grid-margin-y>.small-9{height:calc(75% - 1.5rem)}.grid-margin-y>.small-10{height:calc(83.3333333333% - 1.5rem)}.grid-margin-y>.small-11{height:calc(91.6666666667% - 1.5rem)}.grid-margin-y>.small-12{height:calc(100% - 1.5rem)}@media print,screen and (min-width: 40em){.grid-margin-y>.medium-auto{height:auto}.grid-margin-y>.medium-shrink{height:auto}.grid-margin-y>.medium-1{height:calc(8.3333333333% - 1.5rem)}.grid-margin-y>.medium-2{height:calc(16.6666666667% - 1.5rem)}.grid-margin-y>.medium-3{height:calc(25% - 1.5rem)}.grid-margin-y>.medium-4{height:calc(33.3333333333% - 1.5rem)}.grid-margin-y>.medium-5{height:calc(41.6666666667% - 1.5rem)}.grid-margin-y>.medium-6{height:calc(50% - 1.5rem)}.grid-margin-y>.medium-7{height:calc(58.3333333333% - 1.5rem)}.grid-margin-y>.medium-8{height:calc(66.6666666667% - 1.5rem)}.grid-margin-y>.medium-9{height:calc(75% - 1.5rem)}.grid-margin-y>.medium-10{height:calc(83.3333333333% - 1.5rem)}.grid-margin-y>.medium-11{height:calc(91.6666666667% - 1.5rem)}.grid-margin-y>.medium-12{height:calc(100% - 1.5rem)}}@media print,screen and (min-width: 64em){.grid-margin-y>.large-auto{height:auto}.grid-margin-y>.large-shrink{height:auto}.grid-margin-y>.large-1{height:calc(8.3333333333% - 1.5rem)}.grid-margin-y>.large-2{height:calc(16.6666666667% - 1.5rem)}.grid-margin-y>.large-3{height:calc(25% - 1.5rem)}.grid-margin-y>.large-4{height:calc(33.3333333333% - 1.5rem)}.grid-margin-y>.large-5{height:calc(41.6666666667% - 1.5rem)}.grid-margin-y>.large-6{height:calc(50% - 1.5rem)}.grid-margin-y>.large-7{height:calc(58.3333333333% - 1.5rem)}.grid-margin-y>.large-8{height:calc(66.6666666667% - 1.5rem)}.grid-margin-y>.large-9{height:calc(75% - 1.5rem)}.grid-margin-y>.large-10{height:calc(83.3333333333% - 1.5rem)}.grid-margin-y>.large-11{height:calc(91.6666666667% - 1.5rem)}.grid-margin-y>.large-12{height:calc(100% - 1.5rem)}}.grid-frame{overflow:hidden;position:relative;flex-wrap:nowrap;align-items:stretch;width:100vw}.cell .grid-frame{width:100%}.cell-block{overflow-x:auto;max-width:100%;-webkit-overflow-scrolling:touch;-ms-overflow-style:-ms-autohiding-scrollbar}.cell-block-y{overflow-y:auto;max-height:100%;min-height:100%;-webkit-overflow-scrolling:touch;-ms-overflow-style:-ms-autohiding-scrollbar}.cell-block-container{display:flex;flex-direction:column;max-height:100%}.cell-block-container>.grid-x{max-height:100%;flex-wrap:nowrap}@media print,screen and (min-width: 40em){.medium-grid-frame{overflow:hidden;position:relative;flex-wrap:nowrap;align-items:stretch;width:100vw}.cell .medium-grid-frame{width:100%}.medium-cell-block{overflow-x:auto;max-width:100%;-webkit-overflow-scrolling:touch;-ms-overflow-style:-ms-autohiding-scrollbar}.medium-cell-block-container{display:flex;flex-direction:column;max-height:100%}.medium-cell-block-container>.grid-x{max-height:100%;flex-wrap:nowrap}.medium-cell-block-y{overflow-y:auto;max-height:100%;min-height:100%;-webkit-overflow-scrolling:touch;-ms-overflow-style:-ms-autohiding-scrollbar}}@media print,screen and (min-width: 64em){.large-grid-frame{overflow:hidden;position:relative;flex-wrap:nowrap;align-items:stretch;width:100vw}.cell .large-grid-frame{width:100%}.large-cell-block{overflow-x:auto;max-width:100%;-webkit-overflow-scrolling:touch;-ms-overflow-style:-ms-autohiding-scrollbar}.large-cell-block-container{display:flex;flex-direction:column;max-height:100%}.large-cell-block-container>.grid-x{max-height:100%;flex-wrap:nowrap}.large-cell-block-y{overflow-y:auto;max-height:100%;min-height:100%;-webkit-overflow-scrolling:touch;-ms-overflow-style:-ms-autohiding-scrollbar}}.grid-y.grid-frame{overflow:hidden;position:relative;flex-wrap:nowrap;align-items:stretch;height:100vh;width:auto}@media print,screen and (min-width: 40em){.grid-y.medium-grid-frame{overflow:hidden;position:relative;flex-wrap:nowrap;align-items:stretch;height:100vh;width:auto}}@media print,screen and (min-width: 64em){.grid-y.large-grid-frame{overflow:hidden;position:relative;flex-wrap:nowrap;align-items:stretch;height:100vh;width:auto}}.cell .grid-y.grid-frame{height:100%}@media print,screen and (min-width: 40em){.cell .grid-y.medium-grid-frame{height:100%}}@media print,screen and (min-width: 64em){.cell .grid-y.large-grid-frame{height:100%}}.grid-margin-y{margin-top:-0.75rem;margin-bottom:-0.75rem}.grid-margin-y>.cell{height:calc(100% - 1.5rem);margin-top:0.75rem;margin-bottom:0.75rem}.grid-margin-y>.auto{height:auto}.grid-margin-y>.shrink{height:auto}.grid-margin-y>.small-1{height:calc(8.3333333333% - 1.5rem)}.grid-margin-y>.small-2{height:calc(16.6666666667% - 1.5rem)}.grid-margin-y>.small-3{height:calc(25% - 1.5rem)}.grid-margin-y>.small-4{height:calc(33.3333333333% - 1.5rem)}.grid-margin-y>.small-5{height:calc(41.6666666667% - 1.5rem)}.grid-margin-y>.small-6{height:calc(50% - 1.5rem)}.grid-margin-y>.small-7{height:calc(58.3333333333% - 1.5rem)}.grid-margin-y>.small-8{height:calc(66.6666666667% - 1.5rem)}.grid-margin-y>.small-9{height:calc(75% - 1.5rem)}.grid-margin-y>.small-10{height:calc(83.3333333333% - 1.5rem)}.grid-margin-y>.small-11{height:calc(91.6666666667% - 1.5rem)}.grid-margin-y>.small-12{height:calc(100% - 1.5rem)}@media print,screen and (min-width: 40em){.grid-margin-y>.medium-auto{height:auto}.grid-margin-y>.medium-shrink{height:auto}.grid-margin-y>.medium-1{height:calc(8.3333333333% - 1.5rem)}.grid-margin-y>.medium-2{height:calc(16.6666666667% - 1.5rem)}.grid-margin-y>.medium-3{height:calc(25% - 1.5rem)}.grid-margin-y>.medium-4{height:calc(33.3333333333% - 1.5rem)}.grid-margin-y>.medium-5{height:calc(41.6666666667% - 1.5rem)}.grid-margin-y>.medium-6{height:calc(50% - 1.5rem)}.grid-margin-y>.medium-7{height:calc(58.3333333333% - 1.5rem)}.grid-margin-y>.medium-8{height:calc(66.6666666667% - 1.5rem)}.grid-margin-y>.medium-9{height:calc(75% - 1.5rem)}.grid-margin-y>.medium-10{height:calc(83.3333333333% - 1.5rem)}.grid-margin-y>.medium-11{height:calc(91.6666666667% - 1.5rem)}.grid-margin-y>.medium-12{height:calc(100% - 1.5rem)}}@media print,screen and (min-width: 64em){.grid-margin-y>.large-auto{height:auto}.grid-margin-y>.large-shrink{height:auto}.grid-margin-y>.large-1{height:calc(8.3333333333% - 1.5rem)}.grid-margin-y>.large-2{height:calc(16.6666666667% - 1.5rem)}.grid-margin-y>.large-3{height:calc(25% - 1.5rem)}.grid-margin-y>.large-4{height:calc(33.3333333333% - 1.5rem)}.grid-margin-y>.large-5{height:calc(41.6666666667% - 1.5rem)}.grid-margin-y>.large-6{height:calc(50% - 1.5rem)}.grid-margin-y>.large-7{height:calc(58.3333333333% - 1.5rem)}.grid-margin-y>.large-8{height:calc(66.6666666667% - 1.5rem)}.grid-margin-y>.large-9{height:calc(75% - 1.5rem)}.grid-margin-y>.large-10{height:calc(83.3333333333% - 1.5rem)}.grid-margin-y>.large-11{height:calc(91.6666666667% - 1.5rem)}.grid-margin-y>.large-12{height:calc(100% - 1.5rem)}}.grid-frame.grid-margin-y{height:calc(100vh + 1.5rem)}@media print,screen and (min-width: 40em){.grid-margin-y.medium-grid-frame{height:calc(100vh + 1.5rem)}}@media print,screen and (min-width: 64em){.grid-margin-y.large-grid-frame{height:calc(100vh + 1.5rem)}}.align-left{justify-content:flex-start}.align-right{justify-content:flex-end}.align-center{justify-content:center}.align-justify{justify-content:space-between}.align-spaced{justify-content:space-around}.align-left.vertical.menu>li>a{justify-content:flex-start}.align-right.vertical.menu>li>a{justify-content:flex-end}.align-center.vertical.menu>li>a{justify-content:center}.align-top{align-items:flex-start}.align-self-top{align-self:flex-start}.align-bottom{align-items:flex-end}.align-self-bottom{align-self:flex-end}.align-middle{align-items:center}.align-self-middle{align-self:center}.align-stretch{align-items:stretch}.align-self-stretch{align-self:stretch}.align-center-middle{justify-content:center;align-items:center;align-content:center}.small-order-1{order:1}.small-order-2{order:2}.small-order-3{order:3}.small-order-4{order:4}.small-order-5{order:5}.small-order-6{order:6}@media print,screen and (min-width: 40em){.medium-order-1{order:1}.medium-order-2{order:2}.medium-order-3{order:3}.medium-order-4{order:4}.medium-order-5{order:5}.medium-order-6{order:6}}@media print,screen and (min-width: 64em){.large-order-1{order:1}.large-order-2{order:2}.large-order-3{order:3}.large-order-4{order:4}.large-order-5{order:5}.large-order-6{order:6}}.flex-container{display:flex}.flex-child-auto{flex:1 1 auto}.flex-child-grow{flex:1 0 auto}.flex-child-shrink{flex:0 1 auto}.flex-dir-row{flex-direction:row}.flex-dir-row-reverse{flex-direction:row-reverse}.flex-dir-column{flex-direction:column}.flex-dir-column-reverse{flex-direction:column-reverse}@media print,screen and (min-width: 40em){.medium-flex-container{display:flex}.medium-flex-child-auto{flex:1 1 auto}.medium-flex-child-grow{flex:1 0 auto}.medium-flex-child-shrink{flex:0 1 auto}.medium-flex-dir-row{flex-direction:row}.medium-flex-dir-row-reverse{flex-direction:row-reverse}.medium-flex-dir-column{flex-direction:column}.medium-flex-dir-column-reverse{flex-direction:column-reverse}}@media print,screen and (min-width: 64em){.large-flex-container{display:flex}.large-flex-child-auto{flex:1 1 auto}.large-flex-child-grow{flex:1 0 auto}.large-flex-child-shrink{flex:0 1 auto}.large-flex-dir-row{flex-direction:row}.large-flex-dir-row-reverse{flex-direction:row-reverse}.large-flex-dir-column{flex-direction:column}.large-flex-dir-column-reverse{flex-direction:column-reverse}}.hide{display:none !important}.invisible{visibility:hidden}.visible{visibility:visible}@media print,screen and (max-width: 39.99875em){.hide-for-small-only{display:none !important}}@media screen and (max-width: 0em),screen and (min-width: 40em){.show-for-small-only{display:none !important}}@media print,screen and (min-width: 40em){.hide-for-medium{display:none !important}}@media screen and (max-width: 39.99875em){.show-for-medium{display:none !important}}@media print,screen and (min-width: 40em)and (max-width: 63.99875em){.hide-for-medium-only{display:none !important}}@media screen and (max-width: 39.99875em),screen and (min-width: 64em){.show-for-medium-only{display:none !important}}@media print,screen and (min-width: 64em){.hide-for-large{display:none !important}}@media screen and (max-width: 63.99875em){.show-for-large{display:none !important}}@media print,screen and (min-width: 64em)and (max-width: 74.99875em){.hide-for-large-only{display:none !important}}@media screen and (max-width: 63.99875em),screen and (min-width: 75em){.show-for-large-only{display:none !important}}.show-for-sr,.show-on-focus{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border:0 !important}.show-on-focus:active,.show-on-focus:focus{position:static !important;width:auto !important;height:auto !important;overflow:visible !important;clip:auto !important;white-space:normal !important}.show-for-landscape,.hide-for-portrait{display:block !important}@media screen and (orientation: landscape){.show-for-landscape,.hide-for-portrait{display:block !important}}@media screen and (orientation: portrait){.show-for-landscape,.hide-for-portrait{display:none !important}}.hide-for-landscape,.show-for-portrait{display:none !important}@media screen and (orientation: landscape){.hide-for-landscape,.show-for-portrait{display:none !important}}@media screen and (orientation: portrait){.hide-for-landscape,.show-for-portrait{display:block !important}}.show-for-dark-mode{display:none}.hide-for-dark-mode{display:block}@media screen and (prefers-color-scheme: dark){.show-for-dark-mode{display:block !important}.hide-for-dark-mode{display:none !important}}.show-for-ie{display:none}@media all and (-ms-high-contrast: none),(-ms-high-contrast: active){.show-for-ie{display:block !important}.hide-for-ie{display:none !important}}.show-for-sticky{display:none}.is-stuck .show-for-sticky{display:block}.is-stuck .hide-for-sticky{display:none}[data-sal]{transition-delay:0s;transition-delay:var(--sal-delay, 0s);transition-duration:.2s;transition-duration:var(--sal-duration, 0.2s);transition-timing-function:ease;transition-timing-function:var(--sal-easing, ease)}[data-sal][data-sal-duration="200"]{transition-duration:.2s}[data-sal][data-sal-duration="250"]{transition-duration:.25s}[data-sal][data-sal-duration="300"]{transition-duration:.3s}[data-sal][data-sal-duration="350"]{transition-duration:.35s}[data-sal][data-sal-duration="400"]{transition-duration:.4s}[data-sal][data-sal-duration="450"]{transition-duration:.45s}[data-sal][data-sal-duration="500"]{transition-duration:.5s}[data-sal][data-sal-duration="550"]{transition-duration:.55s}[data-sal][data-sal-duration="600"]{transition-duration:.6s}[data-sal][data-sal-duration="650"]{transition-duration:.65s}[data-sal][data-sal-duration="700"]{transition-duration:.7s}[data-sal][data-sal-duration="750"]{transition-duration:.75s}[data-sal][data-sal-duration="800"]{transition-duration:.8s}[data-sal][data-sal-duration="850"]{transition-duration:.85s}[data-sal][data-sal-duration="900"]{transition-duration:.9s}[data-sal][data-sal-duration="950"]{transition-duration:.95s}[data-sal][data-sal-duration="1000"]{transition-duration:1s}[data-sal][data-sal-duration="1050"]{transition-duration:1.05s}[data-sal][data-sal-duration="1100"]{transition-duration:1.1s}[data-sal][data-sal-duration="1150"]{transition-duration:1.15s}[data-sal][data-sal-duration="1200"]{transition-duration:1.2s}[data-sal][data-sal-duration="1250"]{transition-duration:1.25s}[data-sal][data-sal-duration="1300"]{transition-duration:1.3s}[data-sal][data-sal-duration="1350"]{transition-duration:1.35s}[data-sal][data-sal-duration="1400"]{transition-duration:1.4s}[data-sal][data-sal-duration="1450"]{transition-duration:1.45s}[data-sal][data-sal-duration="1500"]{transition-duration:1.5s}[data-sal][data-sal-duration="1550"]{transition-duration:1.55s}[data-sal][data-sal-duration="1600"]{transition-duration:1.6s}[data-sal][data-sal-duration="1650"]{transition-duration:1.65s}[data-sal][data-sal-duration="1700"]{transition-duration:1.7s}[data-sal][data-sal-duration="1750"]{transition-duration:1.75s}[data-sal][data-sal-duration="1800"]{transition-duration:1.8s}[data-sal][data-sal-duration="1850"]{transition-duration:1.85s}[data-sal][data-sal-duration="1900"]{transition-duration:1.9s}[data-sal][data-sal-duration="1950"]{transition-duration:1.95s}[data-sal][data-sal-duration="2000"]{transition-duration:2s}[data-sal][data-sal-delay="50"]{transition-delay:.05s}[data-sal][data-sal-delay="100"]{transition-delay:.1s}[data-sal][data-sal-delay="150"]{transition-delay:.15s}[data-sal][data-sal-delay="200"]{transition-delay:.2s}[data-sal][data-sal-delay="250"]{transition-delay:.25s}[data-sal][data-sal-delay="300"]{transition-delay:.3s}[data-sal][data-sal-delay="350"]{transition-delay:.35s}[data-sal][data-sal-delay="400"]{transition-delay:.4s}[data-sal][data-sal-delay="450"]{transition-delay:.45s}[data-sal][data-sal-delay="500"]{transition-delay:.5s}[data-sal][data-sal-delay="550"]{transition-delay:.55s}[data-sal][data-sal-delay="600"]{transition-delay:.6s}[data-sal][data-sal-delay="650"]{transition-delay:.65s}[data-sal][data-sal-delay="700"]{transition-delay:.7s}[data-sal][data-sal-delay="750"]{transition-delay:.75s}[data-sal][data-sal-delay="800"]{transition-delay:.8s}[data-sal][data-sal-delay="850"]{transition-delay:.85s}[data-sal][data-sal-delay="900"]{transition-delay:.9s}[data-sal][data-sal-delay="950"]{transition-delay:.95s}[data-sal][data-sal-delay="1000"]{transition-delay:1s}[data-sal][data-sal-easing=linear]{transition-timing-function:linear}[data-sal][data-sal-easing=ease]{transition-timing-function:ease}[data-sal][data-sal-easing=ease-in]{transition-timing-function:ease-in}[data-sal][data-sal-easing=ease-out]{transition-timing-function:ease-out}[data-sal][data-sal-easing=ease-in-out]{transition-timing-function:ease-in-out}[data-sal][data-sal-easing=ease-in-cubic]{transition-timing-function:cubic-bezier(0.55, 0.055, 0.675, 0.19)}[data-sal][data-sal-easing=ease-out-cubic]{transition-timing-function:cubic-bezier(0.215, 0.61, 0.355, 1)}[data-sal][data-sal-easing=ease-in-out-cubic]{transition-timing-function:cubic-bezier(0.645, 0.045, 0.355, 1)}[data-sal][data-sal-easing=ease-in-circ]{transition-timing-function:cubic-bezier(0.6, 0.04, 0.98, 0.335)}[data-sal][data-sal-easing=ease-out-circ]{transition-timing-function:cubic-bezier(0.075, 0.82, 0.165, 1)}[data-sal][data-sal-easing=ease-in-out-circ]{transition-timing-function:cubic-bezier(0.785, 0.135, 0.15, 0.86)}[data-sal][data-sal-easing=ease-in-expo]{transition-timing-function:cubic-bezier(0.95, 0.05, 0.795, 0.035)}[data-sal][data-sal-easing=ease-out-expo]{transition-timing-function:cubic-bezier(0.19, 1, 0.22, 1)}[data-sal][data-sal-easing=ease-in-out-expo]{transition-timing-function:cubic-bezier(1, 0, 0, 1)}[data-sal][data-sal-easing=ease-in-quad]{transition-timing-function:cubic-bezier(0.55, 0.085, 0.68, 0.53)}[data-sal][data-sal-easing=ease-out-quad]{transition-timing-function:cubic-bezier(0.25, 0.46, 0.45, 0.94)}[data-sal][data-sal-easing=ease-in-out-quad]{transition-timing-function:cubic-bezier(0.455, 0.03, 0.515, 0.955)}[data-sal][data-sal-easing=ease-in-quart]{transition-timing-function:cubic-bezier(0.895, 0.03, 0.685, 0.22)}[data-sal][data-sal-easing=ease-out-quart]{transition-timing-function:cubic-bezier(0.165, 0.84, 0.44, 1)}[data-sal][data-sal-easing=ease-in-out-quart]{transition-timing-function:cubic-bezier(0.77, 0, 0.175, 1)}[data-sal][data-sal-easing=ease-in-quint]{transition-timing-function:cubic-bezier(0.755, 0.05, 0.855, 0.06)}[data-sal][data-sal-easing=ease-out-quint]{transition-timing-function:cubic-bezier(0.23, 1, 0.32, 1)}[data-sal][data-sal-easing=ease-in-out-quint]{transition-timing-function:cubic-bezier(0.86, 0, 0.07, 1)}[data-sal][data-sal-easing=ease-in-sine]{transition-timing-function:cubic-bezier(0.47, 0, 0.745, 0.715)}[data-sal][data-sal-easing=ease-out-sine]{transition-timing-function:cubic-bezier(0.39, 0.575, 0.565, 1)}[data-sal][data-sal-easing=ease-in-out-sine]{transition-timing-function:cubic-bezier(0.445, 0.05, 0.55, 0.95)}[data-sal][data-sal-easing=ease-in-back]{transition-timing-function:cubic-bezier(0.6, -0.28, 0.735, 0.045)}[data-sal][data-sal-easing=ease-out-back]{transition-timing-function:cubic-bezier(0.175, 0.885, 0.32, 1.275)}[data-sal][data-sal-easing=ease-in-out-back]{transition-timing-function:cubic-bezier(0.68, -0.55, 0.265, 1.55)}[data-sal|=fade]{opacity:0;transition-property:opacity}[data-sal|=fade].sal-animate,body.sal-disabled [data-sal|=fade]{opacity:1}[data-sal|=slide]{opacity:0;transition-property:opacity,transform}[data-sal=slide-up]{transform:translateY(3.6rem)}[data-sal=slide-down]{transform:translateY(-3.6rem)}[data-sal=slide-left]{transform:translateX(3.6rem)}[data-sal=slide-right]{transform:translateX(-3.6rem)}[data-sal|=slide].sal-animate,body.sal-disabled [data-sal|=slide]{opacity:1;transform:none}[data-sal|=zoom]{opacity:0;transition-property:opacity,transform}[data-sal=zoom-in]{transform:scale(0.5)}[data-sal=zoom-out]{transform:scale(1.1)}[data-sal|=zoom].sal-animate,body.sal-disabled [data-sal|=zoom]{opacity:1;transform:none}[data-sal|=flip]{-webkit-backface-visibility:hidden;backface-visibility:hidden;transition-property:transform}[data-sal=flip-left]{transform:perspective(2000px) rotateY(-91deg)}[data-sal=flip-right]{transform:perspective(2000px) rotateY(91deg)}[data-sal=flip-up]{transform:perspective(2000px) rotateX(-91deg)}[data-sal=flip-down]{transform:perspective(2000px) rotateX(91deg)}[data-sal|=flip].sal-animate,body.sal-disabled [data-sal|=flip]{transform:none}@media print,screen and (min-width: 800px){@font-face{font-family:swiper-icons;src:url("data:application/font-woff;charset=utf-8;base64, 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");font-weight:400;font-style:normal}:root{--swiper-theme-color: #007aff}:host{position:relative;display:block;margin-left:auto;margin-right:auto;z-index:1}.swiper{margin-left:auto;margin-right:auto;position:relative;overflow:hidden;overflow:clip;list-style:none;padding:0;z-index:1;display:block}.swiper-vertical>.swiper-wrapper{flex-direction:column}.swiper-wrapper{position:relative;width:100%;height:100%;z-index:1;display:flex;transition-property:transform;transition-timing-function:var(--swiper-wrapper-transition-timing-function, initial);box-sizing:content-box}.swiper-android .swiper-slide,.swiper-ios .swiper-slide,.swiper-wrapper{transform:translate3d(0px, 0, 0)}.swiper-horizontal{touch-action:pan-y}.swiper-vertical{touch-action:pan-x}.swiper-slide{flex-shrink:0;width:100%;height:100%;position:relative;transition-property:transform;display:block}.swiper-slide-invisible-blank{visibility:hidden}.swiper-autoheight,.swiper-autoheight .swiper-slide{height:auto}.swiper-autoheight .swiper-wrapper{align-items:flex-start;transition-property:transform,height}.swiper-backface-hidden .swiper-slide{transform:translateZ(0);-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-3d.swiper-css-mode .swiper-wrapper{perspective:1200px}.swiper-3d .swiper-wrapper{transform-style:preserve-3d}.swiper-3d{perspective:1200px}.swiper-3d .swiper-cube-shadow,.swiper-3d .swiper-slide{transform-style:preserve-3d}.swiper-css-mode>.swiper-wrapper{overflow:auto;scrollbar-width:none;-ms-overflow-style:none}.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar{display:none}.swiper-css-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:start start}.swiper-css-mode.swiper-horizontal>.swiper-wrapper{scroll-snap-type:x mandatory}.swiper-css-mode.swiper-vertical>.swiper-wrapper{scroll-snap-type:y mandatory}.swiper-css-mode.swiper-free-mode>.swiper-wrapper{scroll-snap-type:none}.swiper-css-mode.swiper-free-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:none}.swiper-css-mode.swiper-centered>.swiper-wrapper::before{content:"";flex-shrink:0;order:9999}.swiper-css-mode.swiper-centered>.swiper-wrapper>.swiper-slide{scroll-snap-align:center center;scroll-snap-stop:always}.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child{margin-inline-start:var(--swiper-centered-offset-before)}.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper::before{height:100%;min-height:1px;width:var(--swiper-centered-offset-after)}.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child{margin-block-start:var(--swiper-centered-offset-before)}.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper::before{width:100%;min-width:1px;height:var(--swiper-centered-offset-after)}.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-bottom,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none;z-index:10}.swiper-3d .swiper-slide-shadow{background:var(--black-15)}.swiper-3d .swiper-slide-shadow-left{background-image:linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0))}.swiper-3d .swiper-slide-shadow-right{background-image:linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0))}.swiper-3d .swiper-slide-shadow-top{background-image:linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0))}.swiper-3d .swiper-slide-shadow-bottom{background-image:linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0))}.swiper-lazy-preloader{width:42px;height:42px;position:absolute;left:50%;top:50%;margin-left:-21px;margin-top:-21px;z-index:10;transform-origin:50%;box-sizing:border-box;border:4px solid var(--swiper-preloader-color, var(--swiper-theme-color));border-radius:50%;border-top-color:rgba(0,0,0,0)}.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader,.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader{animation:swiper-preloader-spin 1s infinite linear}.swiper-lazy-preloader-white{--swiper-preloader-color: #fff}.swiper-lazy-preloader-black{--swiper-preloader-color: #000}@keyframes swiper-preloader-spin{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}.swiper-virtual .swiper-slide{-webkit-backface-visibility:hidden;transform:translateZ(0)}.swiper-virtual.swiper-css-mode .swiper-wrapper::after{content:"";position:absolute;left:0;top:0;pointer-events:none}.swiper-virtual.swiper-css-mode.swiper-horizontal .swiper-wrapper::after{height:1px;width:var(--swiper-virtual-size)}.swiper-virtual.swiper-css-mode.swiper-vertical .swiper-wrapper::after{width:1px;height:var(--swiper-virtual-size)}:root{--swiper-navigation-size: 44px}.swiper-button-next,.swiper-button-prev{position:absolute;top:var(--swiper-navigation-top-offset, 50%);width:calc(var(--swiper-navigation-size)/44*27);height:var(--swiper-navigation-size);margin-top:calc(0px - var(--swiper-navigation-size)/2);z-index:10;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--swiper-navigation-color, var(--swiper-theme-color))}.swiper-button-next.swiper-button-disabled,.swiper-button-prev.swiper-button-disabled{opacity:.35;cursor:auto;pointer-events:none}.swiper-button-next.swiper-button-hidden,.swiper-button-prev.swiper-button-hidden{opacity:0;cursor:auto;pointer-events:none}.swiper-navigation-disabled .swiper-button-next,.swiper-navigation-disabled .swiper-button-prev{display:none !important}.swiper-button-next svg,.swiper-button-prev svg{width:100%;height:100%;object-fit:contain;transform-origin:center}.swiper-rtl .swiper-button-next svg,.swiper-rtl .swiper-button-prev svg{transform:rotate(180deg)}.swiper-button-prev,.swiper-rtl .swiper-button-next{left:var(--swiper-navigation-sides-offset, 10px);right:auto}.swiper-button-next,.swiper-rtl .swiper-button-prev{right:var(--swiper-navigation-sides-offset, 10px);left:auto}.swiper-button-lock{display:none}.swiper-button-next:after,.swiper-button-prev:after{font-family:swiper-icons;font-size:var(--swiper-navigation-size);text-transform:none !important;letter-spacing:0;font-variant:initial;line-height:1}.swiper-button-prev:after,.swiper-rtl .swiper-button-next:after{content:"prev"}.swiper-button-next,.swiper-rtl .swiper-button-prev{right:var(--swiper-navigation-sides-offset, 10px);left:auto}.swiper-button-next:after,.swiper-rtl .swiper-button-prev:after{content:"next"}.swiper-pagination{position:absolute;text-align:center;transition:.3s opacity;transform:translate3d(0, 0, 0);z-index:10}.swiper-pagination.swiper-pagination-hidden{opacity:0}.swiper-pagination-disabled>.swiper-pagination,.swiper-pagination.swiper-pagination-disabled{display:none !important}.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-bullets.swiper-pagination-horizontal,.swiper-pagination-custom,.swiper-pagination-fraction{bottom:var(--swiper-pagination-bottom, 8px);top:var(--swiper-pagination-top, auto);left:0;width:100%}.swiper-pagination-bullets-dynamic{overflow:hidden;font-size:0}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transform:scale(0.33);position:relative}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active{transform:scale(1)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main{transform:scale(1)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev{transform:scale(0.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev{transform:scale(0.33)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next{transform:scale(0.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next{transform:scale(0.33)}.swiper-pagination-bullet{width:var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 8px));height:var(--swiper-pagination-bullet-height, var(--swiper-pagination-bullet-size, 8px));display:inline-block;border-radius:var(--swiper-pagination-bullet-border-radius, 50%);background:var(--swiper-pagination-bullet-inactive-color, #000);opacity:var(--swiper-pagination-bullet-inactive-opacity, 0.2)}button.swiper-pagination-bullet{border:none;margin:0;padding:0;box-shadow:none;-webkit-appearance:none;appearance:none}.swiper-pagination-clickable .swiper-pagination-bullet{cursor:pointer}.swiper-pagination-bullet:only-child{display:none !important}.swiper-pagination-bullet-active{opacity:var(--swiper-pagination-bullet-opacity, 1);background:var(--swiper-pagination-color, var(--swiper-theme-color))}.swiper-pagination-vertical.swiper-pagination-bullets,.swiper-vertical>.swiper-pagination-bullets{right:var(--swiper-pagination-right, 8px);left:var(--swiper-pagination-left, auto);top:50%;transform:translate3d(0px, -50%, 0)}.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet,.swiper-vertical>.swiper-pagination-bullets .swiper-pagination-bullet{margin:var(--swiper-pagination-bullet-vertical-gap, 6px) 0;display:block}.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic{top:50%;transform:translateY(-50%);width:8px}.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{display:inline-block;transition:.2s transform,.2s top}.swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet,.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet{margin:0 var(--swiper-pagination-bullet-horizontal-gap, 4px)}.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic{left:50%;transform:translateX(-50%);white-space:nowrap}.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:.2s transform,.2s left}.swiper-horizontal.swiper-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:.2s transform,.2s right}.swiper-pagination-fraction{color:var(--swiper-pagination-fraction-color, inherit)}.swiper-pagination-progressbar{background:var(--swiper-pagination-progressbar-bg-color, rgba(0, 0, 0, 0.25));position:absolute}.swiper-pagination-progressbar .swiper-pagination-progressbar-fill{background:var(--swiper-pagination-color, var(--swiper-theme-color));position:absolute;left:0;top:0;width:100%;height:100%;transform:scale(0);transform-origin:left top}.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill{transform-origin:right top}.swiper-horizontal>.swiper-pagination-progressbar,.swiper-pagination-progressbar.swiper-pagination-horizontal,.swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite,.swiper-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite{width:100%;height:var(--swiper-pagination-progressbar-size, 4px);left:0;top:0}.swiper-horizontal>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-vertical,.swiper-vertical>.swiper-pagination-progressbar{width:var(--swiper-pagination-progressbar-size, 4px);height:100%;left:0;top:0}.swiper-pagination-lock{display:none}.swiper-scrollbar{border-radius:var(--swiper-scrollbar-border-radius, 10px);position:relative;-ms-touch-action:none;background:var(--swiper-scrollbar-bg-color, rgba(0, 0, 0, 0.1))}.swiper-scrollbar-disabled>.swiper-scrollbar,.swiper-scrollbar.swiper-scrollbar-disabled{display:none !important}.swiper-horizontal>.swiper-scrollbar,.swiper-scrollbar.swiper-scrollbar-horizontal{position:absolute;left:var(--swiper-scrollbar-sides-offset, 1%);bottom:var(--swiper-scrollbar-bottom, 4px);top:var(--swiper-scrollbar-top, auto);z-index:50;height:var(--swiper-scrollbar-size, 4px);width:calc(100% - 2*var(--swiper-scrollbar-sides-offset, 1%))}.swiper-scrollbar.swiper-scrollbar-vertical,.swiper-vertical>.swiper-scrollbar{position:absolute;left:var(--swiper-scrollbar-left, auto);right:var(--swiper-scrollbar-right, 4px);top:var(--swiper-scrollbar-sides-offset, 1%);z-index:50;width:var(--swiper-scrollbar-size, 4px);height:calc(100% - 2*var(--swiper-scrollbar-sides-offset, 1%))}.swiper-scrollbar-drag{height:100%;width:100%;position:relative;background:var(--swiper-scrollbar-drag-bg-color, rgba(0, 0, 0, 0.5));border-radius:var(--swiper-scrollbar-border-radius, 10px);left:0;top:0}.swiper-scrollbar-cursor-drag{cursor:move}.swiper-scrollbar-lock{display:none}.swiper-zoom-container{width:100%;height:100%;display:flex;justify-content:center;align-items:center;text-align:center}.swiper-zoom-container>canvas,.swiper-zoom-container>img,.swiper-zoom-container>svg{max-width:100%;max-height:100%;object-fit:contain}.swiper-slide-zoomed{cursor:move;touch-action:none}.swiper .swiper-notification{position:absolute;left:0;top:0;pointer-events:none;opacity:0;z-index:-1000}.swiper-free-mode>.swiper-wrapper{transition-timing-function:ease-out;margin:0 auto}.swiper-grid>.swiper-wrapper{flex-wrap:wrap}.swiper-grid-column>.swiper-wrapper{flex-wrap:wrap;flex-direction:column}.swiper-fade.swiper-free-mode .swiper-slide{transition-timing-function:ease-out}.swiper-fade .swiper-slide{pointer-events:none;transition-property:opacity}.swiper-fade .swiper-slide .swiper-slide{pointer-events:none}.swiper-fade .swiper-slide-active,.swiper-fade .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-cube{overflow:visible}.swiper-cube .swiper-slide{pointer-events:none;-webkit-backface-visibility:hidden;backface-visibility:hidden;z-index:1;visibility:hidden;transform-origin:0 0;width:100%;height:100%}.swiper-cube .swiper-slide .swiper-slide{pointer-events:none}.swiper-cube.swiper-rtl .swiper-slide{transform-origin:100% 0}.swiper-cube .swiper-slide-active,.swiper-cube .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-cube .swiper-slide-active,.swiper-cube .swiper-slide-next,.swiper-cube .swiper-slide-prev{pointer-events:auto;visibility:visible}.swiper-cube .swiper-cube-shadow{position:absolute;left:0;bottom:0px;width:100%;height:100%;opacity:.6;z-index:0}.swiper-cube .swiper-cube-shadow:before{content:"";background:#000;position:absolute;left:0;top:0;bottom:0;right:0;filter:blur(50px)}.swiper-cube .swiper-slide-next+.swiper-slide{pointer-events:auto;visibility:visible}.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-bottom,.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-left,.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-right,.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-top{z-index:0;-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-flip{overflow:visible}.swiper-flip .swiper-slide{pointer-events:none;-webkit-backface-visibility:hidden;backface-visibility:hidden;z-index:1}.swiper-flip .swiper-slide .swiper-slide{pointer-events:none}.swiper-flip .swiper-slide-active,.swiper-flip .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-bottom,.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-left,.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-right,.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-top{z-index:0;-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-creative .swiper-slide{-webkit-backface-visibility:hidden;backface-visibility:hidden;overflow:hidden;transition-property:transform,opacity,height}.swiper-cards{overflow:visible}.swiper-cards .swiper-slide{transform-origin:center bottom;-webkit-backface-visibility:hidden;backface-visibility:hidden;overflow:hidden}}.abc-preloader{position:fixed;inset:0;z-index:9999999;background:var(--green-c);display:flex;align-items:center;justify-content:center;opacity:1}.abc-preloader__inner{position:relative;width:min(70vw,479px);aspect-ratio:479.425/288;perspective:1500px;perspective-origin:center center}.abc-preloader__shape{position:absolute;opacity:0;transform:rotateY(180deg) rotateX(90deg);transform-origin:center center;transform-style:preserve-3d;backface-visibility:visible;will-change:transform,opacity}.abc-preloader__shape svg{display:block;width:100%;height:100%;overflow:visible}html,body{overscroll-behavior:none;overscroll-behavior-x:none}html{font-size:100%}body,body[data-theme]{background-color:var(--pagebg)}body{font-family:var(--body-font);font-weight:var(--weight-normal);line-height:var(--body-line-height);color:var(--black);min-height:100vh}body.--lock{overflow:hidden}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}.grid-container{max-width:100%;padding-left:.9em;padding-right:.9em}@media print,screen and (min-width: 800px){.grid-container{padding-left:1.35rem;padding-right:1.35rem}}.--disablemotion,.--disablemotion *{transition:none !important}@media(prefers-reduced-motion: reduce){*,*::before,*::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important;scroll-behavior:auto !important}}*,*::before,*::after{-webkit-box-sizing:border-box;box-sizing:border-box}*:focus:not(:focus-visible){outline:none}*:focus-visible{outline:2px solid var(--theme-accent, var(--abc-black));outline-offset:2px}::-moz-selection{background:var(--mediumgrey)}::selection{background:var(--mediumgrey)}::-moz-focus-inner{border:0;padding:0}.sr-only,.screen-reader,.frm_screen_reader,.visuallyHidden,.visually-hidden{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border:0 !important}.sr-only--focusable:focus,.sr-only--focusable:focus-visible{position:fixed !important;top:0;left:0;z-index:10000;width:auto !important;height:auto !important;padding:.75em 1.5em !important;margin:0 !important;overflow:visible !important;clip:auto !important;white-space:normal !important;background:var(--abc-black, #262323);color:var(--abc-off-white, #f9f7f7);font-size:1rem;text-decoration:none}.hide{display:none !important}.has-background{background:var(--bg)}.block+.block{margin-top:9vw}.--zoom,.zoom{cursor:pointer}.--zoom img,.--zoom video,.zoom img,.zoom video{transition:all ease 2s}strong,b{font-weight:var(--weight-bold)}.flex-height{position:relative;width:100%;height:100vh;height:calc(100vh - var(--menuheight)*1)}.flex-height.full{height:100vh}.flex-height.half{height:50vh}.flex-height.fill-height{height:100%}.flex-height.--left video,.flex-height.--left iframe,.flex-height.--left img{object-position:left center}.flex-height.--right video,.flex-height.--right iframe,.flex-height.--right img{object-position:right center}.flex-height video,.flex-height iframe,.flex-height img{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1;object-fit:contain}@media print,screen and (min-width: 800px){.flex-height.cover video,.flex-height.cover iframe,.flex-height.cover img,.flex-height.fit video,.flex-height.fit iframe,.flex-height.fit img{object-fit:cover}}.flex-height.contain video,.flex-height.contain iframe,.flex-height.contain img{object-fit:contain}.flex-height.contain.--top video,.flex-height.contain.--top iframe,.flex-height.contain.--top img{object-position:top}.flex-height.contain.--middle video,.flex-height.contain.--middle iframe,.flex-height.contain.--middle img{object-position:center}.flex-height.contain.--bottom video,.flex-height.contain.--bottom iframe,.flex-height.contain.--bottom img{object-position:bottom}.flex-row{position:relative;overflow:hidden}.flex-row .bg-animate{position:absolute;top:0;left:0;width:100%;height:100%;z-index:9;background-color:var(--bg);transition:transform 600ms 150ms cubic-bezier(0.12, 0.67, 0.53, 1)}.flex-row img,.flex-row video{width:100%;height:auto}.wp-block-group{background:var(--theme-bgalt)}.media-row{flex-direction:row;flex-wrap:nowrap;display:flex;gap:0 .9rem}@media print,screen and (min-width: 800px){.media-row{gap:0 1.875rem}}.media-row .bg-animate{position:absolute;top:0;left:0;width:100%;height:100%;z-index:9;background-color:var(--bg);transition:transform 600ms 150ms cubic-bezier(0.12, 0.67, 0.53, 1)}.flex-video,.flex-image{position:relative;width:100%;height:0px;overflow:hidden;display:inline-block;padding-bottom:56.25%;z-index:1}.flex-video.embed-reveal,.flex-image.embed-reveal{cursor:pointer}.flex-video .caption,.flex-image .caption{position:absolute;z-index:3;bottom:0;right:0;padding:.9rem}@media print,screen and (min-width: 800px){.flex-video .caption,.flex-image .caption{padding:1.8rem}}.flex-video .caption,.flex-image .caption{text-align:left;color:var(--black);font-size:var(--size);text-transform:uppercase}.flex-video .mask,.flex-image .mask{z-index:2;position:absolute;top:0;left:0;width:100%;height:100%;background:var(--mask)}.flex-video .bg-animate,.flex-image .bg-animate{position:absolute;top:0;left:0;width:100%;height:100%;z-index:9;background-color:var(--bg);transition:transform 600ms 150ms cubic-bezier(0.12, 0.67, 0.53, 1)}.flex-video video,.flex-video iframe,.flex-video img,.flex-image video,.flex-image iframe,.flex-image img{position:absolute;top:0;left:0;width:100%;height:auto;z-index:1}.flex-video iframe,.flex-image iframe{z-index:3}.flex-video svg,.flex-image svg{position:absolute;top:50%;left:50%;z-index:2;transform:translate(-50%, -50%);width:162px;height:162px}.flex-video iframe,.flex-image iframe{height:100%}.flex-video.square,.flex-image.square{padding-bottom:100%}.flex-video.respect-height,.flex-image.respect-height{height:100%;padding-bottom:0}.flex-video.circle,.flex-image.circle{border-radius:50%}.flex-video.zoom,.flex-image.zoom{cursor:pointer}.flex-video.zoom img,.flex-video.zoom video,.flex-image.zoom img,.flex-image.zoom video{transition:all ease 2s}.flex-video.zoom:hover img,.flex-video.zoom:hover video,.flex-video.zoom:focus-visible img,.flex-video.zoom:focus-visible video,.flex-image.zoom:hover img,.flex-image.zoom:hover video,.flex-image.zoom:focus-visible img,.flex-image.zoom:focus-visible video{transform:scale(1.125)}.flex-video.round,.flex-image.round{border-radius:100%;overflow:hidden}.flex-video.shrink img,.flex-image.shrink img{height:100%;object-fit:contain}.flex-video.square,.flex-image.square{padding-bottom:100%}.flex-video.square img,.flex-video.square video,.flex-image.square img,.flex-image.square video{height:100%;object-fit:cover}.flex-video.fit img,.flex-video.fit video,.flex-video.cover img,.flex-video.cover video,.flex-image.fit img,.flex-image.fit video,.flex-image.cover img,.flex-image.cover video{height:100%;object-fit:cover}.flex-video .flex-header,.flex-image .flex-header{z-index:8;position:absolute;z-index:3;top:0;left:0;padding:1.4375rem}.flex-video .flex-header.small,.flex-image .flex-header.small{padding:1.35rem}.flex-video .flex-header,.flex-image .flex-header{width:100%}.flex-video .flex-header h2,.flex-image .flex-header h2{color:var(--black);font-size:var(--size-plus5)}.flex-video .flex-header p,.flex-image .flex-header p{color:var(--black);font-size:max(.925rem,var(--size-plus1));text-transform:uppercase}@media print,screen and (min-width: 800px){.flex-video .flex-header,.flex-image .flex-header{padding:2.6rem;width:50%}.flex-video .flex-header p,.flex-image .flex-header p{max-width:87.25%}}.flex-video .flex-icon,.flex-image .flex-icon{position:absolute;bottom:1.4375rem;right:1.4375rem;z-index:10;width:2.35rem}@media print,screen and (min-width: 800px){.flex-video .flex-icon,.flex-image .flex-icon{width:3.59375rem}}.flex-video .flex-icon,.flex-image .flex-icon{transform:none;top:unset;left:unset;height:auto}.flex-video .flex-button,.flex-image .flex-button{position:absolute;bottom:1.8rem;left:1.8rem}@media print,screen and (min-width: 800px){.flex-video .flex-button,.flex-image .flex-button{bottom:2.8rem;right:2.8rem;left:auto}}.flex-video .flex-button,.flex-image .flex-button{z-index:10}.flex-video .flex-button svg,.flex-image .flex-button svg{position:relative;height:.5em;width:auto;transform:none;top:unset;left:unset}.flex-video .flex-button svg circle,.flex-image .flex-button svg circle{fill:var(--black);transition:all ease 500ms}.flex-video .flex-button svg,.flex-image .flex-button svg{height:.5em;width:auto}.flex-video .flex-button:hover svg circle,.flex-image .flex-button:hover svg circle{fill:var(--brand)}.flex-button{cursor:pointer;border:1px solid var(--brand);color:var(--bg);background:var(--brand);padding:.9em 1.25em;font-size:max(.8rem,var(--size-minus1))}@media print,screen and (min-width: 800px){.flex-button{padding:.9em 3.6em;font-size:max(.925rem,var(--size))}}.flex-button{border-radius:.9em;text-transform:uppercase;font-family:var(--mono-font);white-space:nowrap}.flex-button span{display:block}.flex-button{transition:all ease 500ms;display:inline-flex;gap:.9em;align-items:center;flex-direction:row;flex-wrap:wrap}.flex-button svg{position:relative;height:.7em;transform:translateY(-0.5px);width:auto}.flex-button svg circle{fill:var(--black);transition:all ease 500ms}.flex-button svg{height:.5em;width:auto}.flex-button:hover{background-color:rgba(0,0,0,0);color:var(--brand)}.flex-button:hover svg circle{fill:var(--brand)}.--is-admin .bg-animate{display:none}.sal-animate .flex-row .bg-animate,.sal-animate .flex-image .bg-animate,.sal-animate .flex-video .bg-animate{transform:translateY(-100%)}@media print,screen and (min-width: 800px){.small-only{display:none !important}}@media print,screen and (max-width: 800px){.medium-up{display:none !important}}@media print,screen and (max-width: 85em){.large-up{display:none !important}}li,ul,ol,p{font-size:1rem}@media print,screen and (min-width: 800px){li,ul,ol,p{font-size:var(--size);font-size:max(.925rem,var(--size-plus0))}}li,ul,ol,p{line-height:var(--body-line-height);text-align:left;white-space:normal}li b,li strong,ul b,ul strong,ol b,ol strong,p b,p strong{font-weight:var(--weight-bold)}ul li{margin:0 0 .45em 0}ul,ol,p{margin-top:0;margin-bottom:1.25em;color:var(--black)}.lead p,p.lead{font-family:var(--header-font);line-height:1;margin:0 0 1.35em 0;font-weight:var(--weight-bold);font-size:var(--size-plus3)}.plus p p,p.plus p{font-size:var(--size-plus2);line-height:var(--header-line-height);font-weight:var(--weight-normal)}.text-left{text-align:left}.text-right{text-align:right}.text-center{text-align:center}.has-drop-cap p:not(:focus):first-letter,p.has-drop-cap:not(:focus):first-letter{float:left;font-size:8.4em;line-height:.68;font-weight:100;margin:.05em .1em 0 0;text-transform:uppercase;font-style:normal}.has-small-font-size p,p.has-small-font-size{font-size:var(--size);font-size:max(.925rem,var(--size))}.has-medium-font-size p,p.has-medium-font-size{font-size:var(--size-plus1)}.has-large-font-size p,p.has-large-font-size{font-size:var(--size-plus4)}.has-x-large-font-size p,p.has-x-large-font-size{font-size:var(--size-plus3)}@media print,screen and (min-width: 800px){.--sticky{position:sticky;top:0}}.h1,.h2,.h3,.h4,.h5,.h6,h1,h2,h3,h4,h5,h6{margin:0 0 .9rem 0;font-family:var(--header-font);font-weight:var(--weight-normal);line-height:var(--header-line-height);color:var(--black);text-transform:none}.h1 small,.h2 small,.h3 small,.h4 small,.h5 small,.h6 small,h1 small,h2 small,h3 small,h4 small,h5 small,h6 small{font-size:66.6%}a:hover .h1.highlight span,a:hover .h2.highlight span,a:hover .h3.highlight span,a:hover .h4.highlight span,a:hover .h5.highlight span,a:hover .h6.highlight span,a:hover h1.highlight span,a:hover h2.highlight span,a:hover h3.highlight span,a:hover h4.highlight span,a:hover h5.highlight span,a:hover h6.highlight span{background-position-x:left;background-size:100% 100%;color:var(--black)}h1,.h1{margin-top:0;font-size:var(--size-plus2)}h2,.h2{font-size:var(--size-plus2)}h3,.h3{font-size:var(--size-plus1)}h5,.h5{font-size:var(--size-plus1)}h4,.h4{font-size:var(--size-plus0)}h5,.h5{font-size:var(--size-plus0)}h6,.h6{font-size:var(--size-plus0)}small,.text_small{font-size:var(--size-minus2);font-weight:var(--weight-bold)}a{color:var(--black);text-decoration:none;transition:background-color 150ms ease,color 150ms ease}a:hover{color:var(--darkgrey)}html,body{scroll-padding-top:0}.wp-block-embed,figure.wp-block-image{margin:1.8rem auto}@media print,screen and (min-width: 800px){.wp-block-embed,figure.wp-block-image{margin:2.8rem auto}}.wp-block-embed,figure.wp-block-image{text-align:center}.wp-block-quote{border:none;padding:1.8rem 0;margin:1.8rem 0}.wp-block-quote.has-background{padding:1.8rem}@media print,screen and (min-width: 800px){.wp-block-quote.has-background{padding:2.8rem}}.wp-block-quote.has-background{border:none}.wp-block-quote,.wp-block-quote cite,.wp-block-quote p{text-align:left;color:var(--black);font-size:var(--size-plus0);width:100%;max-width:100%}.wp-block-quote cite{font-weight:var(--weight-bold);display:flex;gap:.625em;margin:0 0 .9em 0;align-items:center}@media(min-width: 800px){.admin-bar header#navigation{top:32px}}header#navigation{position:fixed;right:0;top:0;padding:0;width:100%;pointer-events:none;z-index:999;display:flex;justify-content:space-between;gap:.9em;padding:.9em}@media(min-width: 800px){header#navigation{padding:.325em .9em}}header#navigation .logo{color:var(--black);-webkit-tap-highlight-color:rgba(0,0,0,0)}header#navigation .logo span{line-height:1;margin:0;display:block;font-size:var(--size-plus3)}header#navigation.headroom{will-change:background-color;transition:background-color 500ms cubic-bezier(0.215, 0.61, 0.355, 1);background-color:rgba(0,0,0,0)}header#navigation.headroom .logo{opacity:0;will-change:opacity;transition:opacity 500ms cubic-bezier(0.215, 0.61, 0.355, 1)}header#navigation.header--top-white.headroom--top{--black: #fff}header#navigation.headroom--not-top{background-color:var(--abc-off-white)}header#navigation.headroom--not-top .logo{opacity:1}@media print,screen and (min-width: 800px){header#navigation{padding:.625em 1.35rem}}header#navigation a,header#navigation button{pointer-events:auto}header#navigation .header-toggle{background:none;border:none;padding:0;cursor:pointer;color:inherit}header#navigation .header-toggle svg{width:2.4rem;height:auto}header#navigation .logo img,header#navigation .logo svg{height:1.8rem;width:auto}.is-nav-open header#navigation{background-color:rgba(0,0,0,0);--black: var(--abc-off-white)}.is-nav-open header#navigation .logo{opacity:1}nav#primary{display:none;position:fixed;top:0;left:0;width:100%;height:100vh;z-index:998;background-color:rgba(0,0,0,0)}nav#primary.is-nav-open.headroom--unpinned{transform:translateY(0%)}nav#primary .mask{position:absolute;inset:0;background:rgba(0,0,0,.825);backdrop-filter:blur(10px);cursor:pointer;-webkit-backdrop-filter:blur(10px)}nav#primary .primary-inner{position:relative;z-index:1;width:100%;height:100dvh;height:100vh;background-color:var(--theme-bg, var(--abc-black));transition:background-color .5s ease;display:flex;flex-direction:column;overflow:hidden}@supports(height: 100dvh){nav#primary .primary-inner{height:100dvh}}@media print,screen and (min-width: 800px){nav#primary .primary-inner{height:66vh;flex-direction:row}}.nav-slideshow{flex:0 0 50%;position:relative;overflow:hidden;display:none}@media print,screen and (min-width: 800px){.nav-slideshow{display:block}}.nav-slideshow img.logo{position:absolute;bottom:0;left:0;padding:1.8rem}.nav-slideshow .nav-slideshow-container{position:absolute;bottom:1.8rem;left:1.8rem;width:33.33333333vw}.nav-slideshow .nav-slideshow-container.swiper .swiper-wrapper{display:flex;height:100%}.nav-slideshow .nav-slideshow-container.swiper .swiper-slide{flex-shrink:0;width:100%;height:100%;overflow:hidden}.nav-slideshow .nav-slideshow-container.swiper .swiper-slide img{width:100%;height:100%;object-fit:cover;display:block}.nav-mobile-logo{display:block;padding:1rem;margin-top:auto}.nav-mobile-logo img{width:216px;height:auto}@media print,screen and (min-width: 800px){.nav-mobile-logo{display:none}}.nav-menu{flex:1;display:flex;flex-direction:column;padding:0 15px;justify-content:flex-start;padding-top:152px}@media print,screen and (min-width: 800px){.nav-menu{flex-direction:row;padding:.625rem 1.8rem 1.8rem 0;padding-top:.625rem;justify-content:flex-start;gap:1.8rem}}.nav-menu [data-theme],.nav-menu a{background-color:rgba(0,0,0,0)}.nav-menu__parents{min-width:15.625vw}.nav-menu__parents ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}@media print,screen and (min-width: 800px){.nav-menu__parents ul{gap:0}}.nav-menu a,.nav-menu .contact-trigger{margin:0;display:block;font-family:var(--header-font);font-size:24px;font-weight:var(--weight-light);letter-spacing:var(--heading-tracking);line-height:var(--body-line-height);color:var(--theme-fg, var(--abc-off-white));text-decoration:none;padding:0;opacity:1;transition:color .25s var(--easing)}.nav-menu a:hover,.nav-menu .contact-trigger:hover{color:var(--plaster-b, var(--abc-off-white))}@media print,screen and (min-width: 800px){.nav-menu a,.nav-menu .contact-trigger{font-size:var(--size-plus1);font-weight:var(--weight-normal);line-height:var(--header-line-height)}}.nav-menu .contact-trigger{appearance:none;background:none;border:none;cursor:pointer;width:100%;text-align:left;font-family:var(--header-font)}.nav-menu__parent.is-active>a{color:var(--plaster-b, var(--abc-off-white))}.nav-menu__parent.is-current>a{color:var(--theme-accent, var(--plaster-b))}@media print,screen and (min-width: 800px){.nav-menu__parent.is-current>a{color:var(--theme-fg, var(--abc-off-white))}}.nav-menu__children{display:none;min-width:15.625vw;position:relative}@media print,screen and (min-width: 800px){.nav-menu__children{display:block;margin-top:0;flex:1}}.nav-menu__children ul{list-style:none;margin:0;padding:0}.nav-menu__children-panel{visibility:hidden;opacity:0;position:absolute;top:0;left:0;transition:opacity .3s var(--easing),visibility .3s var(--easing)}.nav-menu__children-panel.is-active{visibility:visible;opacity:1}.nav-menu--mobile{padding-top:100px;overflow-y:auto}.nav-menu--mobile .nav-menu__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:0}.nav-menu--mobile .nav-menu__item{padding:.125em 0}.nav-menu--mobile .nav-menu__toggle,.nav-menu--mobile .nav-menu__link{appearance:none;background:none;border:none;cursor:pointer;width:100%;text-align:left;margin:0;display:flex;align-items:center;justify-content:space-between;font-family:var(--header-font);font-size:24px;font-weight:var(--weight-light);letter-spacing:var(--heading-tracking);line-height:var(--body-line-height);color:var(--theme-fg, var(--abc-off-white));padding:0;transition:color .25s var(--easing)}.nav-menu--mobile .nav-menu__toggle:hover,.nav-menu--mobile .nav-menu__link:hover{color:var(--plaster-b, var(--abc-off-white))}.nav-menu--mobile .nav-menu__item.is-current>.nav-menu__toggle,.nav-menu--mobile .nav-menu__item.is-current>.nav-menu__link{color:var(--theme-accent, var(--plaster-b))}.nav-menu--mobile .nav-menu__sub{list-style:none;margin:0;padding:0 0 0 12px;overflow:hidden;max-height:0;transition:max-height .35s ease}.nav-menu--mobile .nav-menu__item.is-open>.nav-menu__sub{max-height:500px}.nav-menu--mobile .nav-menu__sub-item{margin:.125em 0}.nav-menu--mobile .nav-menu__sub-item:first-of-type{margin-top:.9em}.nav-menu--mobile .nav-menu__sub-item a{display:block;font-family:var(--header-font);font-size:16px;font-weight:var(--weight-light);letter-spacing:var(--heading-tracking);line-height:var(--body-line-height);color:var(--theme-fg, var(--abc-off-white));padding:.125em 0;text-decoration:none;opacity:.75;transition:color .25s var(--easing),opacity .25s var(--easing)}.nav-menu--mobile .nav-menu__sub-item a:hover{color:var(--plaster-b, var(--abc-off-white));opacity:1}.nav-menu--mobile .nav-menu__sub-item--parent a{opacity:1;font-weight:var(--weight-normal)}.nav-menu--desktop{flex-direction:row;padding:.625rem 1.8rem 1.8rem 0;padding-top:.625rem;justify-content:flex-start;gap:1.8rem}nav#mobile{display:none}@media print,screen and (min-width: 800px){nav#mobile{display:none !important}}nav#mobile{z-index:98;background:var(--brand);color:var(--bg);display:block;position:fixed;bottom:0;height:100%;left:0;width:100vw;padding:0;transition:all ease 500ms;transform:translateX(100vw);pointer-events:none;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}nav#mobile.is-active{pointer-events:auto;transform:translateX(0)}nav#mobile .mobile-inner{padding:1.8rem;width:100%;height:100%;display:flex;flex-direction:column;justify-content:center;position:relative}nav#mobile .menu-cell-container-outer .menu-cell-container .menu-cell-inner .cell-text{font-size:var(--size-plus7)}nav#mobile .social .menu-cell-container-outer .menu-cell-container .menu-cell-inner .cell-text{font-size:var(--size-plus2)}nav#mobile ul{list-style:none;padding:0;margin:.9em 0;display:flex;flex-direction:column;gap:0}nav#mobile ul li{text-transform:uppercase;font-size:var(--size-plus7)}nav#mobile ul li,nav#mobile ul li a{color:var(--bg)}nav#mobile ul.social li{font-size:var(--size);font-size:max(.925rem,var(--size))}.site-footer{position:relative;background-color:var(--theme-bg);--abc-black: var(--theme-fg)}.site-footer__inner{padding:3rem 1.5rem}@media print,screen and (min-width: 800px){.site-footer__inner{padding:4vw}}.site-footer__cta{padding-bottom:4rem}@media print,screen and (min-width: 800px){.site-footer__cta{padding-bottom:5vw}}.site-footer__cta-text{font-family:var(--header-font);font-size:18px;font-weight:var(--weight-light);letter-spacing:var(--heading-tracking);line-height:var(--body-line-height);color:var(--theme-fg, var(--abc-off-white));margin:0 0 1.5rem 0}.site-footer__cta-text .btn{color:var(--abc-off-white)}@media print,screen and (min-width: 800px){.site-footer__cta-text{font-size:var(--size-plus2);font-weight:var(--weight-normal);margin:0 0 8vw 0}}.site-footer__cta-btn{align-self:flex-start}.site-footer__bottom{padding-top:3rem}.site-footer__bottom>.cell{margin-bottom:2.5rem}@media print,screen and (min-width: 800px){.site-footer__bottom{padding-top:4vw}.site-footer__bottom>.cell{margin-bottom:0}}.site-footer__logo a{display:inline-block}.site-footer__logo{text-align:center;padding:15vw 0}.site-footer__logo img,.site-footer__logo svg{height:auto;width:55%;display:inline-block}@media print,screen and (min-width: 800px){.site-footer__logo img,.site-footer__logo svg{height:8vw;width:auto}}@media print,screen and (min-width: 800px){.site-footer__logo{text-align:left;padding:0}}.site-footer__col{display:flex;flex-direction:column;gap:0}.site-footer__col p,.site-footer__col a{font-family:var(--body-font);font-size:13px;font-weight:var(--weight-bold);line-height:var(--body-line-height);color:var(--theme-fg, var(--abc-off-white));margin:0;text-decoration:none}@media print,screen and (min-width: 800px){.site-footer__col p,.site-footer__col a{font-size:var(--size-minus1)}}.site-footer__col a{text-decoration:underline;text-underline-offset:.2em;transition:opacity .2s var(--easing)}.site-footer__col a:hover{opacity:.7}.site-footer__col--legal p,.site-footer__col--legal a,.site-footer__col--legal .a11y-widget__toggle{opacity:.5;transition:opacity .2s var(--easing)}.site-footer__col--legal a:hover,.site-footer__col--legal .a11y-widget__toggle:hover{opacity:1}.site-footer__col--legal .a11y-widget__toggle{font-family:var(--body-font);color:var(--theme-fg, var(--abc-off-white));text-decoration:underline;text-underline-offset:.2em;cursor:pointer;background:none;border:0;padding:0}.site-footer__col--legal .a11y-widget__toggle .a11y-widget__toggle-text{font-size:13px;font-weight:var(--weight-bold);line-height:var(--body-line-height)}@media print,screen and (min-width: 800px){.site-footer__col--legal .a11y-widget__toggle .a11y-widget__toggle-text{font-size:var(--size-minus1)}}.site-footer__col--address{display:none}@media print,screen and (min-width: 800px){.site-footer__col--address{display:flex}}.site-footer__social-label{opacity:.5;margin-top:1em !important}.site-footer__spacer{opacity:0;user-select:none}.abc-brand-icon svg{height:1em}.page-header{display:none;background-color:var(--theme-bg)}@media print,screen and (min-width: 800px){.page-header{display:block;padding:.625rem 1.35rem}}.page-header .grid-x{align-items:flex-start}.page-header .logo svg{width:100%;height:auto}.page-header__center{display:flex;align-items:baseline;gap:2rem}@media print,screen and (min-width: 800px){.page-header__center{gap:4vw}}.page-header__space{display:flex;justify-content:space-between;gap:2rem}@media print,screen and (min-width: 800px){.page-header__space{gap:4vw}}.page-header__title{font-family:var(--header-font);font-size:var(--size-plus1);font-weight:var(--weight-light);letter-spacing:var(--heading-tracking);line-height:var(--header-line-height);color:var(--theme-accent, var(--plaster-b));white-space:nowrap}.page-header__toggle{display:inline-flex;align-items:baseline;gap:.5em}.page-header__toggle-link{font-family:var(--header-font);font-size:var(--size-plus1);font-weight:var(--weight-light);letter-spacing:var(--heading-tracking);line-height:var(--header-line-height);color:var(--theme-fg, var(--abc-black));text-decoration:none;transition:color .25s var(--easing)}.page-header__toggle-link:hover{color:var(--theme-accent, var(--plaster-b))}.page-header__toggle-link.is-active{color:var(--theme-accent, var(--plaster-b))}.page-header__toggle-sep{font-family:var(--header-font);font-size:var(--size-plus1);font-weight:var(--weight-light);letter-spacing:var(--heading-tracking);line-height:var(--header-line-height);color:#c1afaf;user-select:none}.page-header__nav{display:flex;flex-direction:column;gap:.45em}.page-header__nav-link{font-family:var(--header-font);font-size:var(--size-plus1);font-weight:var(--weight-light);letter-spacing:var(--heading-tracking);line-height:var(--header-line-height);color:var(--theme-fg, var(--abc-black));text-decoration:none;transition:color .25s var(--easing)}.page-header__nav-link:hover{color:var(--theme-accent, var(--plaster-b))}.page-header__nav-link.is-active{color:var(--theme-accent, var(--plaster-b))}.news-archive{--theme-accent: var(--green-b);padding-top:1.8em;padding-bottom:6vw}.news-archive-nav{padding:.9rem}@media print,screen and (min-width: 800px){.news-archive-nav{padding:1.35rem 1.35rem 5.6rem;align-items:flex-start}}.news-archive-nav-title{font-family:var(--header-font);font-size:var(--size-plus0)}@media(min-width: 800px){.news-archive-nav-title{font-size:var(--size-plus1)}}.news-archive-nav-title{font-weight:var(--weight-light);letter-spacing:var(--heading-tracking);line-height:var(--header-line-height);display:block;margin-bottom:1rem}@media print,screen and (min-width: 800px){.news-archive-nav-title{margin-bottom:0}}.news-archive-nav-links{display:flex;flex-direction:column;gap:.35em}.news-archive-nav-link{font-family:var(--header-font);font-size:var(--size-plus1);font-weight:var(--weight-light);letter-spacing:var(--heading-tracking);line-height:var(--header-line-height);color:var(--abc-black);text-decoration:none;transition:color .25s var(--easing)}.news-archive-nav-link:hover{color:var(--theme-accent)}.news-archive-nav-link.is-active{color:var(--theme-accent)}.news-archive-items .news-article{margin-bottom:2rem}@media print,screen and (min-width: 800px){.news-archive-items .news-article{margin-bottom:4vw}}.news-article-inner{display:block;text-decoration:none;color:inherit}.news-article-inner .flex-image img{object-fit:cover}.news-article-inner .news-article-circle{border-radius:50%}.news-article:not(.news-article--legacy) .news-article-inner .flex-image{border-radius:0;transition:border-radius 400ms cubic-bezier(0.25, 0.46, 0.45, 0.94)}.news-article:not(.news-article--legacy) .news-article-inner:hover .flex-image,.news-article:not(.news-article--legacy) .news-article-inner:focus-visible .flex-image{border-radius:50%}.news-article-title{font-family:var(--header-font);font-weight:var(--weight-light);letter-spacing:var(--heading-tracking);line-height:var(--header-line-height);text-transform:none;margin:.75rem 0 .5rem;font-size:var(--size-plus0)}@media(min-width: 800px){.news-article-title{font-size:var(--size-plus1)}}@media print,screen and (min-width: 800px){.news-article-title{font-size:calc(var(--size-plus1)*1.6);margin:1vw 0 .5vw}}.news-article-meta{display:flex;gap:.5rem;align-items:center;margin-top:.25rem}.news-article-meta .btn{font-size:var(--size-minus2)}@media(min-width: 800px){.news-article-meta .btn{font-size:var(--size-plus0)}}.news-article-meta .news-article-cat{border-color:var(--theme-accent);text-decoration:none}.news-article-meta .news-article-cat:hover{background-color:var(--theme-accent);color:var(--theme-bg, var(--abc-off-white))}.news-article-meta .news-article-more{border-color:var(--theme-accent);cursor:pointer;background:none}.news-article-meta .news-article-more[aria-expanded=true]{background-color:var(--theme-accent);color:var(--abc-off-white)}.news-article-expand{margin-top:2rem;padding-bottom:2rem}@media print,screen and (min-width: 800px){.news-article-expand{margin-top:3vw;padding-bottom:3vw}}.news-article-expand-body h1,.news-article-expand-body h2,.news-article-expand-body h3,.news-article-expand-body h4,.news-article-expand-body h5,.news-article-expand-body h6{font-size:var(--size-plus2);margin:.45em 0 .9em 0}.news-article-expand-body p,.news-article-expand-body li,.news-article-expand-body ul,.news-article-expand-body ol{font-size:var(--size-minus1);margin-top:.45rem;margin-bottom:.45rem}@media(min-width: 800px){.news-article-expand-body p,.news-article-expand-body li,.news-article-expand-body ul,.news-article-expand-body ol{font-size:var(--size-plus1);margin-top:0;margin-bottom:1.25em}}.news-article-expand-body p,.news-article-expand-body li,.news-article-expand-body ul,.news-article-expand-body ol{font-weight:var(--weight-light);line-height:var(--body-line-height);letter-spacing:var(--heading-tracking)}.news-article-expand-body ul{list-style:none;padding-left:0;margin-left:0}.news-article-expand-body ul li{position:relative;padding-left:1.25em;margin-bottom:calc(var(--body-line-height)*.5em)}.news-article-expand-body ul li::before{content:"–";position:absolute;left:0;top:0}.news-article-expand-body a{text-decoration:underline;text-underline-offset:.15em}.news-article-expand-body img{max-width:100%;height:auto}.news-article-single-content{margin-top:2rem}@media print,screen and (min-width: 800px){.news-article-single-content{margin-top:3vw}}.news-single .news-article{margin-bottom:0}.archive-project{--theme-accent: var(--plaster-b);padding-bottom:6vw}.project-grid-items{padding-top:2rem}@media print,screen and (min-width: 800px){.project-grid-items{padding-top:3vw}}.project-grid-card{margin-bottom:3rem}@media print,screen and (min-width: 800px){.project-grid-card{margin-bottom:7.2rem}}.project-grid-card__link{display:block;text-decoration:none}.project-grid-card__image{position:relative;width:100%;overflow:hidden}.project-grid-card__image img{width:100%;height:100%;object-fit:cover;display:block}.project-grid-card--short .project-grid-card__image{height:60vw}@media print,screen and (min-width: 800px){.project-grid-card--short .project-grid-card__image{height:28vw}}.project-grid-card--tall .project-grid-card__image{height:80vw}@media print,screen and (min-width: 800px){.project-grid-card--tall .project-grid-card__image{height:45.4vw}}.project-grid-card__info{padding-top:1rem}@media print,screen and (min-width: 800px){.project-grid-card__info{padding-top:1.2vw}}.project-grid-card__client{font-family:var(--body-font);font-size:1rem;font-weight:var(--weight-light);line-height:var(--body-line-height);margin:0 0 .15em;font-size:var(--size-minus2)}@media print,screen and (min-width: 800px){.project-grid-card__client{font-size:var(--size-plus0)}}.project-grid-card__title{font-family:var(--header-font);font-size:var(--size-plus0);margin:.325em 0 .625em 0}@media(min-width: 800px){.project-grid-card__title{font-size:var(--size-plus2);margin:0 0 .5em}}.project-grid-card__title{font-weight:var(--weight-light);letter-spacing:var(--heading-tracking);line-height:var(--header-line-height);text-transform:none}.project-grid-card__btn{font-size:var(--size-minus2)}@media(min-width: 800px){.project-grid-card__btn{font-size:var(--size-plus0)}}.project-list-container{position:relative;padding-top:2rem}@media print,screen and (min-width: 800px){.project-list-container{padding-top:3vw}}.project-list-items{position:relative}.project-list-row{border-top:1px solid var(--black-15);transition:opacity .3s ease}.project-list-row__inner{display:flex;align-items:baseline;justify-content:space-between;padding:1rem 0;text-decoration:none;color:inherit}@media print,screen and (min-width: 800px){.project-list-row__inner{padding:1.1vw 0}}.project-list-row__title{font-family:var(--header-font);font-size:var(--size-plus2);font-weight:var(--weight-light);letter-spacing:var(--heading-tracking);line-height:var(--header-line-height);text-transform:none;margin:0}.project-list-row__client{font-family:var(--body-font);font-size:1rem;font-weight:var(--weight-light);line-height:var(--body-line-height);white-space:nowrap}@media print,screen and (min-width: 800px){.project-list-row__client{font-size:var(--size-plus0)}}.project-list-items:hover .project-list-row{opacity:.3;transition:opacity .3s ease}.project-list-items:hover .project-list-row:hover{opacity:1}.project-list-medias img{width:1px;height:1px;position:absolute;top:0;left:0;visibility:hidden;pointer-events:none}.project-list-media-container{position:absolute;width:15.6vw;height:15.6vw;left:calc(66.666% - 7.8vw);top:0;border-radius:50%;pointer-events:none;overflow:hidden;visibility:hidden;z-index:10}.project-list-media-container.on{visibility:visible}.project-list-media-container div{position:absolute;top:0;left:0;width:100%;height:100%;overflow:hidden;transform:translate(0, -100%)}.project-list-media-container img{width:100%;height:100%;object-fit:cover;display:block;position:absolute;top:0;left:0;transform:translate(0, 90%)}@media(max-width: 800px){.project-list-media-container{display:none}}.project-single{--theme-accent: var(--plaster-b);padding-bottom:6vw}.project-single__title{font-family:var(--header-font);font-weight:var(--weight-light);font-size:2rem;letter-spacing:var(--heading-tracking);line-height:var(--header-line-height);margin:0;padding:1.5rem 0 1rem}@media print,screen and (min-width: 800px){.project-single__title{font-size:var(--size-plus5);padding:1.5vw 0 1vw}}.project-single__hero{width:100%;overflow:hidden}.project-single__hero img,.project-single__hero video{width:100%;height:60vw;object-fit:cover;display:block}@media print,screen and (min-width: 800px){.project-single__hero img,.project-single__hero video{height:69.2vw}}.project-single__text{padding-top:2rem}@media print,screen and (min-width: 800px){.project-single__text{padding-top:6vw}}.project-single__name,.project-single__client,.project-single__location{font-family:var(--body-font);font-weight:var(--weight-light);font-size:1rem;line-height:var(--body-line-height);letter-spacing:var(--heading-tracking);margin:0}@media print,screen and (min-width: 800px){.project-single__name,.project-single__client,.project-single__location{font-size:var(--size-plus2)}}.project-single__name{color:var(--theme-accent)}.project-single__content{font-family:var(--body-font);font-weight:var(--weight-light);font-size:1rem;line-height:var(--body-line-height);letter-spacing:var(--heading-tracking);padding-top:1.5rem}@media print,screen and (min-width: 800px){.project-single__content{padding-top:0}}.project-single__content ul,.project-single__content ol,.project-single__content p{margin-bottom:1em}@media print,screen and (min-width: 800px){.project-single__content ul,.project-single__content ol,.project-single__content p{font-size:var(--size-plus2)}}.project-single__gallery{padding-top:2rem}@media print,screen and (min-width: 800px){.project-single__gallery{padding-top:6vw}}.project-single__gallery-row{display:flex;gap:1rem;margin-bottom:1rem}@media print,screen and (min-width: 800px){.project-single__gallery-row{gap:.93vw;margin-bottom:.93vw}}.project-single__gallery-item{flex-basis:0;min-width:0;overflow:hidden}.project-single__gallery-img{width:100%;height:100%;object-fit:cover;display:block}.project-single__quote-wrap{padding-top:2rem}@media print,screen and (min-width: 800px){.project-single__quote-wrap{padding-top:6vw}}.project-single__quote-text{margin:0;quotes:none}.project-single__quote-text p{font-size:var(--size-plus0);line-height:var(--header-line-height);letter-spacing:var(--heading-tracking);margin:0 0 .9em}@media print,screen and (min-width: 800px){.project-single__quote-text p{font-size:var(--size-plus2)}}.project-single__quote-text p:last-child{margin-bottom:0}.project-single__quote-cite{display:block;font-style:normal;font-size:var(--size-minus1);letter-spacing:var(--heading-tracking);margin-top:1.2em;opacity:.7}.contact-modal{position:fixed;inset:0;z-index:1000;display:none;align-items:stretch;justify-content:center}.contact-modal__mask{position:absolute;inset:0;background-color:rgba(0,0,0,.4);cursor:pointer}.contact-modal__inner{position:relative;display:flex;flex-direction:column;width:100%;max-width:100%;background-color:var(--theme-bg);color:var(--theme-fg);padding:.9em .9em 1.8rem;overflow-y:auto}@media(min-width: 800px){.contact-modal__inner{padding:.625em 1.35rem 1.8rem}}.contact-modal__inner h1,.contact-modal__inner h2,.contact-modal__inner h3,.contact-modal__inner h4,.contact-modal__inner h5,.contact-modal__inner h6,.contact-modal__inner a,.contact-modal__inner p{color:var(--theme-fg)}.contact-modal__inner .btn{color:var(--theme-fg);border-color:var(--theme-accent)}.contact-modal__inner .btn:hover{color:var(--abc-black);background-color:var(--theme-accent);border-color:var(--theme-accent)}.contact-modal__close{position:absolute;top:.9em;right:.9em;display:inline-flex;align-items:center;justify-content:center;padding:0;background:none;border:none;color:inherit;cursor:pointer}@media(min-width: 800px){.contact-modal__close{top:.9em;right:.9em}}.contact-modal__close svg{width:2.4rem;height:auto;display:block}.contact-modal__close:hover svg{color:var(--theme-accent)}.contact-modal__body{display:flex;flex-direction:column;gap:24px;width:100%;flex:1;margin:100px 0 0}@media(min-width: 800px){.contact-modal__body{gap:1.5vw;margin-top:0;margin-left:50%;max-width:41.6666%}}.contact-modal__body .contact-modal__heading+*{margin-top:auto}.contact-modal__heading{font-family:var(--header-font);font-weight:var(--weight-light);font-size:24px;line-height:var(--body-line-height);letter-spacing:var(--heading-tracking);margin:0;color:var(--theme-fg)}@media(min-width: 800px){.contact-modal__heading{font-size:var(--size-plus1);font-weight:var(--weight-normal);line-height:var(--header-line-height)}}.contact-modal__line{margin:0;font-family:var(--header-font);font-weight:var(--weight-light);font-size:var(--size-plus2);line-height:var(--header-line-height);letter-spacing:var(--heading-tracking)}@media(min-width: 800px){.contact-modal__line{font-size:var(--size-plus3)}}.contact-modal__line a{color:inherit;text-decoration:underline;text-decoration-color:var(--plaster-b);text-decoration-thickness:1px;text-underline-offset:.15em;transition:color .2s var(--easing),text-decoration-color .2s var(--easing)}.contact-modal__line a:hover,.contact-modal__line a:focus-visible{color:var(--plaster-b);outline:none}.contact-modal__socials{list-style:none;padding:0;margin:24px 0 0;display:flex;flex-wrap:wrap;gap:12px}@media(min-width: 800px){.contact-modal__socials{margin-top:2vw}}.contact-modal__social-item{display:inline-flex}.contact-modal__social{display:inline-flex;align-items:center;gap:8px}.contact-modal__social .contact-modal__social-icon svg{display:block;width:16px;height:16px;color:currentColor;fill:currentColor}body.is-contact-open{overflow:hidden}body.is-contact-open header#navigation{z-index:1001;--black: var(--abc-off-white)}body.is-contact-open header#navigation .logo{opacity:1}body.is-contact-open header#navigation .header-toggle{display:none}.block-about-cta{background-color:var(--theme-bgalt, var(--green-a));padding:9vw 0 6vw}.block-about-cta h3{font-size:var(--size-plus2);margin:0}.block-about-cta__eyebrow{font-size:var(--size-plus2);font-weight:300;line-height:var(--header-line-height);letter-spacing:var(--heading-tracking);display:flex;align-items:baseline;gap:.4em;padding-top:.15em}.block-about-cta__eyebrow .abc-brand-icon{flex-shrink:0;display:inline-flex;align-items:center}.block-about-cta__eyebrow .abc-brand-icon svg{width:1.2vw;height:1.2vw;min-width:16px;min-height:16px}.block-about-cta .about-cta__item .flex-image{margin-bottom:1.5vw}.block-about-cta .about-cta__item .flex-image img{object-fit:cover;height:100%}.block-about-cta .about-cta__item .about-cta__item-link{text-decoration:none;color:inherit;display:block}.block-about-cta .about-cta__item .about-cta__item-label{font-size:var(--size-plus2);font-weight:300;line-height:var(--header-line-height);letter-spacing:var(--heading-tracking)}@media(max-width: 799px){.block-about-cta .grid-x.grid-margin-x{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory;margin-left:-1.5rem;margin-right:-1.5rem;padding-left:1.5rem;padding-right:1.5rem;scrollbar-width:none}.block-about-cta .grid-x.grid-margin-x::-webkit-scrollbar{display:none}.block-about-cta .grid-x.grid-margin-x>.cell{flex:0 0 75vw;max-width:75vw;scroll-snap-align:start;box-sizing:content-box}.block-about-cta .grid-x.grid-margin-x>.cell:first-of-type{padding-left:1.8rem}.block-about-cta .grid-x.grid-margin-x>.cell:last-of-type{padding-right:1.8rem}}@media(max-width: 800px){.block-about-cta{padding:3rem 0 2.5rem}.block-about-cta__item .flex-image{margin-bottom:.75rem}}.block-about-scattered-repeater{--theme-accent: var(--green-b)}.scattered-grid{padding:0 .9rem}.scattered-item{margin-bottom:3rem}@media(max-width: 800px){.scattered-item{border-top:1px solid var(--theme-accent);padding-top:.9em;margin-top:.9em;margin-bottom:0}}@media(max-width: 800px){.scattered-item-reveal{overflow:hidden}}.scattered-item-header{display:flex;align-items:baseline;gap:.4em;margin-bottom:.75em}.scattered-item-header .abc-brand-icon{flex-shrink:0;display:inline-flex;align-items:center}.scattered-item-header .abc-brand-icon svg{width:1.2vw;height:1.2vw;min-width:16px;min-height:16px}.scattered-item-heading{font-size:var(--size-plus2);font-weight:300;line-height:var(--header-line-height);letter-spacing:var(--heading-tracking);margin:0}.scattered-item-imagelink{display:block;text-decoration:none}.scattered-item .flex-image{margin-bottom:.75em}.scattered-item .flex-image img{object-fit:cover;height:100%}.scattered-item-text{font-size:var(--size-plus2);font-weight:300;line-height:var(--body-line-height);letter-spacing:var(--heading-tracking);margin-bottom:.75em}.scattered-item-text p{margin:0}@media(min-width: 800px){.scattered-grid{display:grid;grid-template-columns:repeat(12, 1fr);grid-auto-flow:dense;column-gap:1.5rem;row-gap:12vw;padding:0 1.35rem}.scattered-item{margin-bottom:0}.scattered-item:nth-child(7n+1){grid-column:1/span 4}.scattered-item:nth-child(7n+2){grid-column:7/span 4;padding-top:23vw}.scattered-item:nth-child(7n+3){grid-column:3/span 6}.scattered-item:nth-child(7n+4){grid-column:1/span 4}.scattered-item:nth-child(7n+5){grid-column:8/span 4;padding-top:29vw}.scattered-item:nth-child(7n+6){grid-column:3/span 6}.scattered-item:nth-child(7n+7){grid-column:7/span 4}.scattered-item:nth-child(7n+3) .flex-image,.scattered-item:nth-child(7n+6) .flex-image{padding-bottom:66%}.scattered-item .flex-image img{transition:transform .4s cubic-bezier(0.23, 1, 0.32, 1)}.scattered-item-imagelink:hover .flex-image img{transform:scale(1.03)}}@font-face{font-family:"OpenDyslexic";src:url("../fonts/opendyslexic/opendyslexic-latin-400-normal.woff2") format("woff2"),url("../fonts/opendyslexic/opendyslexic-latin-400-normal.woff") format("woff");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:"OpenDyslexic";src:url("../fonts/opendyslexic/opendyslexic-latin-700-normal.woff2") format("woff2"),url("../fonts/opendyslexic/opendyslexic-latin-700-normal.woff") format("woff");font-weight:700;font-style:normal;font-display:swap}html.a11y-high-contrast body{color:#000 !important;background:#fff !important}html.a11y-high-contrast *:not(.a11y-modal):not(.a11y-modal *){border-color:#000 !important}html.a11y-high-contrast [data-theme]{--theme-bg: #fff !important;--theme-fg: #000 !important;background-color:#fff !important;color:#000 !important}html.a11y-high-contrast [data-theme=green-dark],html.a11y-high-contrast [data-theme=black],html.a11y-high-contrast [data-theme=green-c],html.a11y-high-contrast [data-theme=wine-c],html.a11y-high-contrast [data-theme=sun-c],html.a11y-high-contrast [data-theme=blue-c]{--theme-bg: #000 !important;--theme-fg: #fff !important;background-color:#000 !important;color:#fff !important}html.a11y-high-contrast img{filter:contrast(1.2)}html.a11y-high-contrast a{text-decoration:underline !important}html.a11y-dyslexic-font,html.a11y-dyslexic-font body,html.a11y-dyslexic-font *{font-family:"OpenDyslexic",sans-serif !important}html.a11y-no-motion,html.a11y-no-motion *,html.a11y-no-motion *::before,html.a11y-no-motion *::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important;scroll-behavior:auto !important}html.a11y-no-motion [data-sal]{opacity:1 !important;transform:none !important}html.a11y-large-text{font-size:125% !important}html.a11y-large-cursor,html.a11y-large-cursor *{cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='48' viewBox='0 0 48 48'%3E%3Cpath d='M8 4l28 20H20l-2 1 8 18-4 2-8-18-6 6z' fill='%23000' stroke='%23fff' stroke-width='2'/%3E%3C/svg%3E") 4 4,auto !important}html.a11y-large-cursor a,html.a11y-large-cursor button,html.a11y-large-cursor [role=button],html.a11y-large-cursor input[type=submit],html.a11y-large-cursor select{cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='48' viewBox='0 0 48 48'%3E%3Cpath d='M18 8v28m-10-14h20' stroke='%23000' stroke-width='4' stroke-linecap='round'/%3E%3Ccircle cx='18' cy='22' r='18' fill='none' stroke='%23000' stroke-width='3'/%3E%3C/svg%3E") 18 22,pointer !important}.a11y-widget__toggle{display:flex;align-items:center;gap:.4em;width:auto;height:auto;padding:0;background:none;border:none;color:var(--theme-fg, var(--abc-off-white));cursor:pointer;opacity:.7;transition:opacity .2s ease;font-family:var(--body-font)}.a11y-widget__toggle:hover,.a11y-widget__toggle:focus-visible{opacity:1}.a11y-widget__toggle-text{font-size:var(--size-minus3);font-weight:400;line-height:1;pointer-events:none}.a11y-modal{--a11y-bg: var(--abc-off-white, #f9f7f7);--a11y-fg: var(--abc-black, #262323);--a11y-accent: var(--plaster-b, #FFA17E);position:fixed;bottom:1.8em;left:1.8em;z-index:10000;width:520px;max-width:calc(100vw - 3.6em);opacity:0;visibility:hidden;transform:translateY(16px);transition:opacity .3s ease,visibility .3s,transform .3s ease}.a11y-modal.--open{opacity:1;visibility:visible;transform:translateY(0)}.a11y-modal__mask{display:none}.a11y-modal__box{width:100%;max-height:calc(90vh - 3.6em);overflow-y:auto;background:var(--abc-off-white, #f9f7f7);color:var(--abc-black, #262323);padding:2rem 2rem 1.5rem}.a11y-modal__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.75rem;padding-bottom:1rem;border-bottom:1px solid rgba(0,0,0,.1)}.a11y-modal__heading{font-family:var(--header-font, sans-serif);font-size:20px;font-weight:400;letter-spacing:.02em;margin:0;color:var(--a11y-accent)}.a11y-modal__close{display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;background:none;border:1px solid rgba(0,0,0,.12);border-radius:50%;color:var(--a11y-fg);cursor:pointer;transition:border-color .15s ease}.a11y-modal__close:hover,.a11y-modal__close:focus-visible{border-color:var(--a11y-accent)}.a11y-modal__close svg{width:18px;height:18px}.a11y-modal__list{display:flex;flex-direction:column}.a11y-modal__option{display:flex;align-items:flex-start;justify-content:space-between;gap:1.5rem;padding:1rem 0;border-bottom:1px solid rgba(0,0,0,.06)}.a11y-modal__option:first-child{padding-top:0}.a11y-modal__option:last-child{border-bottom:none}.a11y-modal__option-text{flex:1}.a11y-modal__label{display:block;font-size:15px;font-weight:400;line-height:1.3;margin-bottom:.25rem;cursor:pointer}.a11y-modal__desc{font-size:13px;font-weight:300;line-height:1.45;margin:0;opacity:.55}.a11y-modal__switch{position:relative;width:44px;height:24px;flex-shrink:0;margin-top:2px}.a11y-modal__switch input{opacity:0;width:0;height:0;position:absolute}.a11y-modal__switch input:checked+.a11y-modal__slider{background:var(--a11y-accent)}.a11y-modal__switch input:checked+.a11y-modal__slider::before{transform:translateX(20px)}.a11y-modal__switch input:focus-visible+.a11y-modal__slider{outline:2px solid var(--a11y-fg);outline-offset:2px}.a11y-modal__slider{position:absolute;inset:0;background:rgba(0,0,0,.12);border-radius:24px;cursor:pointer;transition:background .15s ease}.a11y-modal__slider::before{content:"";position:absolute;width:18px;height:18px;left:3px;bottom:3px;background:var(--abc-off-white, #f9f7f7);border-radius:50%;transition:transform .15s ease}.a11y-modal__reset{display:block;width:100%;margin-top:1.5rem;padding:.6rem 0;background:none;border:1px solid rgba(0,0,0,.12);border-radius:6px;color:var(--a11y-fg);font-size:13px;font-weight:400;letter-spacing:.04em;cursor:pointer;transition:border-color .15s ease,color .15s ease}.a11y-modal__reset:hover,.a11y-modal__reset:focus-visible{border-color:var(--a11y-accent);color:var(--a11y-accent)}html.a11y-high-contrast .a11y-modal,html.a11y-high-contrast .a11y-modal *{border-color:inherit !important;background-color:inherit !important;color:inherit !important}html.a11y-no-motion .a11y-modal,html.a11y-no-motion .a11y-modal *,html.a11y-no-motion .a11y-modal *::before,html.a11y-no-motion .a11y-modal *::after{transition-duration:.3s !important}@media(max-width: 600px){.a11y-modal{left:.75em;right:.75em;bottom:.75em;width:auto;max-width:none}.a11y-modal__box{padding:1.5rem}}.block-approach-grid{--theme-accent: var(--green-b)}.approach-grid__grid{display:grid;grid-template-columns:repeat(3, 1fr);border-top:1px solid var(--theme-accent);border-left:1px solid var(--theme-accent)}@media screen and (max-width: 800px){.approach-grid__grid{grid-template-columns:1fr}}.approach-grid__cell{display:flex;flex-direction:column;border-right:1px solid var(--theme-accent);border-bottom:1px solid var(--theme-accent);padding:1.3vw;transition:background-color .4s var(--easing)}.approach-grid__cell .flex-image{transition:border-radius 400ms cubic-bezier(0.25, 0.46, 0.45, 0.94)}.approach-grid__cell:hover{background-color:var(--theme-bg)}.approach-grid__cell:hover .flex-image{border-radius:50%}@media screen and (max-width: 800px){.approach-grid__cell{padding:1.5rem}}.approach-grid__content{margin-bottom:1.5vw}@media screen and (max-width: 800px){.approach-grid__content{margin-bottom:1.5rem}}.approach-grid__title{font-weight:var(--weight-bold);font-size:var(--size-plus2);letter-spacing:var(--heading-tracking);line-height:var(--body-line-height);margin-bottom:.5em}.approach-grid__text{font-weight:var(--weight-light);font-size:var(--size-plus2);line-height:var(--body-line-height);letter-spacing:var(--heading-tracking)}.approach-grid__image{margin-top:auto;width:45%}@media screen and (max-width: 800px){.approach-grid__image{width:60%}}.approach-grid__footer{text-align:center;padding:3vw 1.3vw;font-weight:var(--weight-light);font-size:var(--size-plus2);line-height:var(--body-line-height);letter-spacing:var(--heading-tracking)}.approach-grid__footer a{color:inherit;text-decoration:underline;text-decoration-color:var(--theme-accent);text-underline-offset:.15em}@media screen and (max-width: 800px){.approach-grid__footer{padding:2rem 1.5rem}}.block-awards{padding:0 0 8vw 0;--theme-accent: var(--green-b)}.awards__intro{margin-bottom:2rem}@media(min-width: 800px){.awards__intro{margin-bottom:2.5vw}}.awards__heading{margin:0;font-weight:var(--weight-light);font-size:var(--size-plus2);letter-spacing:var(--heading-tracking);line-height:var(--body-line-height)}.awards__sublabel{margin:.5rem 0 0;font-size:var(--size-plus0);line-height:1.4;opacity:.7}.awards-list{margin:0;padding:0}.awards-list__group{border-top:1px solid var(--theme-accent);padding-top:1rem}.awards-list__group+.awards-list__group{margin-top:2rem}@media(min-width: 800px){.awards-list__group{padding-top:1.2vw}.awards-list__group+.awards-list__group{margin-top:3.7vw}}.awards-list__group-heading{margin:0;padding-top:.75rem;font-weight:var(--weight-light);font-size:var(--size-plus2);letter-spacing:var(--heading-tracking);line-height:var(--body-line-height);color:var(--abc-black)}@media(min-width: 800px){.awards-list__group-heading{padding-top:.6vw}}.awards-list__items{list-style:none;margin:0;padding:0}.awards-list__item{display:flex;flex-wrap:wrap;gap:0 .4em;align-items:center;padding:.75rem 0;border-bottom:1px solid var(--theme-accent);font-size:var(--size-plus1);letter-spacing:var(--heading-tracking);line-height:var(--body-line-height)}@media(min-width: 800px){.awards-list__item{min-height:3.65vw;padding:.6vw 0}}.awards-list__status{font-weight:var(--weight-bold)}.awards-list__separator,.awards-list__name{font-weight:var(--weight-light)}.block-framework-hero-illustration{padding:5rem 0}.block-framework-hero-illustration__title{font-size:var(--size-plus4);line-height:1.1;margin:0}.block-framework-hero-illustration__illustration{display:flex;align-items:center;justify-content:center}.block-framework-hero-illustration__illustration svg,.block-framework-hero-illustration__illustration img{width:100%;height:auto;display:block}.block-framework-listoflinks{padding:0 0 8vw 0}.block-framework-listoflinks__intro{padding-right:2rem}.block-framework-listoflinks__sublabel{font-size:var(--size-plus0);margin-top:.5rem;margin-bottom:0;line-height:1.4;opacity:.7}.framework-links-list{list-style:none;margin:0;padding:0;border-bottom:1px solid var(--theme-accent)}.framework-links-list__item{border-top:1px solid var(--theme-accent);margin:0}.framework-links-list__link{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.9rem .75rem;text-decoration:none;color:inherit;font-size:var(--size-plus0);transition:background-color .2s ease}@media(min-width: 800px){.framework-links-list__link{font-size:var(--size-plus2);padding:1vw 1vw}}.framework-links-list a.framework-links-list__link:hover,.framework-links-list a.framework-links-list__link:focus{background-color:var(--theme-light);outline:none}.link-label{flex:1 1 auto}.link-arrow{flex-shrink:0;display:inline-flex;align-items:center}.link-arrow svg{width:1.2em;height:auto;display:block}.abc-brand-icon .eyebrow{margin:0 0 .9rem 0;font-family:var(--header-font);font-weight:var(--weight-normal);line-height:var(--header-line-height);color:var(--black);text-transform:none;font-size:var(--size-plus0);margin:0}@media(min-width: 800px){.abc-brand-icon .eyebrow{font-size:var(--size-plus2)}}.block-frontpage-blog{position:relative;margin-top:8vw;margin-bottom:8vw}.block-frontpage-blog__header{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:2rem}.block-frontpage-blog .grid-x{width:100%}.blog-list-item{position:relative;border-top:1px solid var(--black-15);padding:1rem 0;cursor:pointer}.blog-list-item__inner{display:flex;align-items:center;justify-content:space-between}.blog-list-item__thumb{display:none}.blog-list-item__content{display:contents}.blog-list-item__title{font-size:var(--type-body);margin:0}.blog-list-item__title a{text-decoration:none;color:inherit}.blog-list-item__date{font-size:var(--type-nav);color:var(--mei-grey)}.blog-list-footer{display:none}.blog-list-medias img{width:1px;height:1px;position:absolute;top:0;left:0;visibility:hidden;pointer-events:none}.blog-list-media-container{position:absolute;width:17.5vw;height:17.5vw;right:15%;top:0;border-radius:100%;pointer-events:none;overflow:hidden;visibility:hidden;z-index:10}.blog-list-media-container.on{visibility:visible}.blog-list-media-container div{position:absolute;top:0;left:0;width:100%;height:100%;overflow:hidden;transform:translate(0, -100%)}.blog-list-media-container img{width:100%;height:100%;object-fit:cover;display:block;position:absolute;top:0;left:0;transform:translate(0, 90%)}@media(max-width: 800px){.block-frontpage-blog{margin-top:2rem;margin-bottom:2rem}.block-frontpage-blog__header .grid-x{flex-direction:column}.block-frontpage-blog__header .text-right{display:none}.blog-list{margin-bottom:1.5rem}.blog-list-item{padding:1rem 0}.blog-list-item__inner{align-items:flex-start;gap:1rem}.blog-list-item__thumb{display:block;width:113px;height:113px;flex-shrink:0}.blog-list-item__thumb img{width:100%;height:100%;object-fit:cover}.blog-list-item__content{display:flex;flex-direction:column;flex:1;min-width:0}.blog-list-item__content .cell{width:100%;text-align:left !important}.blog-list-item__title{font-size:18px;font-weight:300}.blog-list-item__date{font-size:12px;margin-top:.5rem;color:rgba(38,35,35,.5)}.blog-list-media-container,.blog-list-medias{display:none}.blog-list-footer{display:block;margin-top:1rem}}.block-frontpage-grid-item{display:block;text-decoration:none;color:inherit;margin-bottom:1.5rem}@media(max-width: 800px){.block-frontpage-grid-item{border-top:1px solid var(--theme-accent);padding-top:.9em;margin-top:.9em}}.block-frontpage-grid-item .flex-image{border-radius:0;transition:border-radius 400ms cubic-bezier(0.25, 0.46, 0.45, 0.94)}.block-frontpage-grid-item .flex-image img{object-fit:cover}.block-frontpage-grid-item h4{font-size:var(--size-plus0)}@media(min-width: 800px){.block-frontpage-grid-item h4{font-size:var(--size-plus3)}}.block-frontpage-grid-item h4{max-width:75%}@media(min-width: 800px){.block-frontpage-grid-item:hover .flex-image,.block-frontpage-grid-item:focus-visible .flex-image{border-radius:50%}}.block-frontpage-grid-item-label{font-size:var(--type-body);margin-top:.75rem}.block-frontpage-grid-item-index{opacity:.4;margin-right:.25em}.block-frontpage-hero{position:relative;min-height:100vh;overflow:hidden;clip-path:inset(0)}.block-frontpage-hero-bg{position:absolute;inset:0;width:100%;height:100%}.block-frontpage-hero-bg img,.block-frontpage-hero-bg video{width:100%;height:100%;object-fit:cover;display:block}.block-frontpage-hero-bg::after{content:"";position:absolute;inset:0;background:rgba(0,0,0,.15);pointer-events:none}.block-frontpage-hero-overlay{position:fixed;top:50%;left:50%;transform:translate(-50%, -50%);width:min(70vw,479px);pointer-events:none;z-index:2}.block-frontpage-hero-overlay img{width:100%;height:auto;display:block}.block-frontpage-impact{position:relative;overflow:visible;background:rgba(0,0,0,0);--theme-accent: var(--wine-b)}.block-frontpage-impact__circle{position:relative;width:100%;aspect-ratio:1;overflow:hidden;clip-path:inset(0 round 50%);background-color:var(--green-a);padding:15% 0 0}@media screen and (max-width: 799px){.block-frontpage-impact__circle{aspect-ratio:auto;clip-path:none;background-color:rgba(0,0,0,0);padding:2rem 1rem;display:flex;flex-direction:column;gap:2rem}}.block-frontpage-impact__header{position:relative;z-index:2;padding-bottom:2rem}@media screen and (min-width: 800px){.block-frontpage-impact__header{padding-bottom:0}}.block-frontpage-impact__header h2{font-size:var(--size-plus0)}@media(min-width: 800px){.block-frontpage-impact__header h2{font-size:var(--size-plus1)}}.block-frontpage-impact__content{font-size:var(--size-plus0)}@media(min-width: 800px){.block-frontpage-impact__content{font-size:var(--size-plus2)}}.block-frontpage-impact__content{font-weight:var(--weight-light);letter-spacing:var(--heading-tracking);line-height:var(--body-line-height)}.block-frontpage-impact__content p{font-size:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit}.block-frontpage-impact__link{text-align:right}@media screen and (max-width: 799px){.block-frontpage-impact__link{display:none}}.block-frontpage-impact__item{position:absolute;z-index:1;text-decoration:none;color:inherit;display:block}@media screen and (max-width: 799px){.block-frontpage-impact__item{position:relative;width:46%}}.block-frontpage-impact__item:hover .block-frontpage-impact__item-image,.block-frontpage-impact__item:focus-visible .block-frontpage-impact__item-image{border-radius:50%}.block-frontpage-impact__item:hover .block-frontpage-impact__item-image--circle,.block-frontpage-impact__item:focus-visible .block-frontpage-impact__item-image--circle{border-radius:0}@media screen and (max-width: 799px){.block-frontpage-impact__item--0{align-self:flex-start}}@media screen and (min-width: 800px){.block-frontpage-impact__item--0{left:9%;top:28%;width:15.6vw}}@media screen and (max-width: 799px){.block-frontpage-impact__item--1{align-self:flex-end;width:62%}}@media screen and (min-width: 800px){.block-frontpage-impact__item--1{left:56%;top:30%;width:15.5vw}}@media screen and (max-width: 799px){.block-frontpage-impact__item--2{align-self:flex-start;width:48%}}@media screen and (min-width: 800px){.block-frontpage-impact__item--2{left:24%;top:48%;width:24vw}}.block-frontpage-impact__item-image{overflow:hidden;border-radius:0;transition:border-radius 400ms cubic-bezier(0.25, 0.46, 0.45, 0.94)}.block-frontpage-impact__item-image img{width:100%;height:auto;display:block;object-fit:cover}.block-frontpage-impact__item-image--circle{border-radius:50%;aspect-ratio:1}.block-frontpage-impact__item-image--circle img{height:100%}.block-frontpage-impact__item-label{font-size:var(--size-plus2);font-weight:var(--weight-light);letter-spacing:var(--heading-tracking);line-height:var(--header-line-height);margin-top:.5rem;margin-bottom:0}.block-frontpage-impact__cta{position:absolute;z-index:2;display:flex;align-items:center;justify-content:center;text-align:center;text-decoration:none;color:var(--abc-black);width:15.6vw;height:15.6vw;border-radius:50%;border:1px solid var(--wine-b);background:rgba(0,0,0,0);transition:background-color .3s ease,color .3s ease}@media screen and (min-width: 800px){.block-frontpage-impact__cta{right:14%;bottom:22%}}.block-frontpage-impact__cta span{font-size:var(--size-plus2);font-weight:var(--weight-light);letter-spacing:var(--heading-tracking);line-height:var(--header-line-height);max-width:75%}.block-frontpage-impact__cta:hover{background-color:var(--wine-b);color:var(--abc-off-white)}@media screen and (max-width: 799px){.block-frontpage-impact__cta{position:relative;width:45vw;height:45vw;align-self:flex-end}.block-frontpage-impact__cta span{font-size:var(--size-minus1)}}.block+.block.block-frontpage-lead{margin:.45rem 0 1.8rem 0}@media(min-width: 800px){.block+.block.block-frontpage-lead{margin:1.8rem 0}}.block-frontpage-lead{padding:.45rem 0 3rem 0}@media(min-width: 800px){.block-frontpage-lead{padding:3rem 0}}.block-frontpage-lead__eyebrow{font-size:var(--type-nav);display:flex;align-items:flex-start;gap:.5rem}.block-frontpage-lead h3{margin:0;margin-bottom:1.8em;font-size:var(--size-plus0)}@media(min-width: 800px){.block-frontpage-lead h3{margin-bottom:.9em;font-size:var(--size-plus3)}}.block-frontpage-lead__content p,.block-frontpage-lead__content ul,.block-frontpage-lead__content ol{font-size:var(--size-plus0)}@media(min-width: 800px){.block-frontpage-lead__content p,.block-frontpage-lead__content ul,.block-frontpage-lead__content ol{font-size:var(--size-plus3)}}.block-frontpage-lead__link{text-align:right}.block-frontpage-projects{margin-top:8vw;margin-bottom:8vw}.block-frontpage-projects .block-title p,.block-frontpage-projects .block-title h2{font-size:var(--size-plus0)}@media(min-width: 800px){.block-frontpage-projects .block-title p,.block-frontpage-projects .block-title h2{font-size:var(--size-plus2)}}.block-frontpage-projects .block-title p,.block-frontpage-projects .block-title h2{margin:0}@media(max-width: 799px){.block-frontpage-projects .grid-x.grid-margin-x{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory;margin-left:-1.5rem;margin-right:-1.5rem;padding-left:1.5rem;padding-right:1.5rem;scrollbar-width:none}.block-frontpage-projects .grid-x.grid-margin-x::-webkit-scrollbar{display:none}.block-frontpage-projects .grid-x.grid-margin-x>.cell{flex:0 0 75vw;max-width:75vw;scroll-snap-align:start;box-sizing:content-box}.block-frontpage-projects .grid-x.grid-margin-x>.cell:first-of-type{padding-left:1.8rem}.block-frontpage-projects .grid-x.grid-margin-x>.cell:last-of-type{padding-right:1.8rem}.block-frontpage-projects .grid-x.grid-margin-x>.cell h3{font-size:var(--size-plus0);margin:.45em 0 .9em 0}.block-frontpage-projects .grid-x.grid-margin-x>.cell .btn,.block-frontpage-projects .grid-x.grid-margin-x>.cell .project-card__client{font-size:var(--size-minus2)}}.project-card__image{overflow:hidden;margin-bottom:1rem}.project-card__image .flex-image img{transition:transform .3s}.project-card__image:hover .flex-image img{transform:scale(1.03)}@media(min-width: 800px){.project-card__meta{padding:0 .5rem}}.project-card__client{font-size:var(--size-plus0);margin-bottom:.25rem}.project-card h3{font-size:var(--size-plus0)}@media(min-width: 800px){.project-card h3{font-size:var(--size-plus1)}}.project-card h3{margin-bottom:.5rem}.project-card h3 a{text-decoration:none;color:inherit}.block+.block.block-global-simpletext{margin:1.8rem 0}.block-global-simpletext{padding:3rem 0}.block-global-simpletext__content{font-size:var(--type-button);line-height:1.7}.block-global-simpletext__content p,.block-global-simpletext__content ul,.block-global-simpletext__content ol{font-size:var(--size-plus2)}.block-impact-cta{padding:4rem 0}.block-impact-cta__eyebrow{font-size:var(--type-nav)}.block-impact-cta__item-image{overflow:hidden;margin-bottom:.75rem}.block-impact-cta__item-image img{width:100%;height:auto;display:block}.block-impact-cta__item-image--circle{border-radius:50%;aspect-ratio:1;overflow:hidden}.block-impact-cta__item-label{font-size:var(--type-body)}.block-impact-cta__item-label a{text-decoration:none;color:inherit}.impact-scattered-item{padding:3rem 0;border-bottom:1px solid #eee}.impact-scattered-item__image{overflow:hidden}.impact-scattered-item__image img{width:100%;height:auto;display:block}.impact-scattered-item__image--circle{border-radius:50%;aspect-ratio:1;overflow:hidden}.impact-scattered-item__eyebrow{font-size:var(--type-nav);display:block;margin-bottom:.5rem}.block-looking-for-more-news{margin-top:8vw;margin-bottom:8vw}.block-looking-for-more-news .block-title p,.block-looking-for-more-news .block-title h2{font-size:var(--size-plus0)}@media(min-width: 800px){.block-looking-for-more-news .block-title p,.block-looking-for-more-news .block-title h2{font-size:var(--size-plus2)}}.block-looking-for-more-news .block-title p,.block-looking-for-more-news .block-title h2{margin:0}@media(max-width: 799px){.block-looking-for-more-news .grid-x.grid-margin-x{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory;margin-left:-1.5rem;margin-right:-1.5rem;padding-left:1.5rem;padding-right:1.5rem;scrollbar-width:none}.block-looking-for-more-news .grid-x.grid-margin-x::-webkit-scrollbar{display:none}.block-looking-for-more-news .grid-x.grid-margin-x>.cell{flex:0 0 75vw;max-width:75vw;scroll-snap-align:start;box-sizing:content-box}.block-looking-for-more-news .grid-x.grid-margin-x>.cell:first-of-type{padding-left:1.8rem}.block-looking-for-more-news .grid-x.grid-margin-x>.cell:last-of-type{padding-right:1.8rem}}.news-card__image{overflow:hidden;margin-bottom:1rem}.news-card__image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s}.news-card__image:hover img{transform:scale(1.03)}@media(min-width: 800px){.news-card__meta{padding:0 .5rem}}.news-card__date{font-size:var(--size-minus1);margin-bottom:.25rem;opacity:.7}.news-card h3{font-size:var(--size-plus0)}@media(min-width: 800px){.news-card h3{font-size:var(--size-plus1)}}.news-card h3{margin:.25em 0 .75em}.news-card h3 a{text-decoration:none;color:inherit}.news-card__empty{font-size:var(--size-plus0);opacity:.7}.block-media{width:100%}.block-media__image,.block-media__video{position:relative;width:100%;height:0;overflow:hidden}.block-media__image img,.block-media__video video{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover}.block-news-index__header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:2rem}.news-item{margin-bottom:3rem}.news-item__image{overflow:hidden;margin-bottom:.75rem}.news-item__image img{width:100%;height:auto;display:block}.news-item__title{font-size:var(--type-button);margin-bottom:.5rem}.news-item__title a{text-decoration:none;color:inherit}.news-item--right{margin-top:4rem}.block-news-single__thumb{border-radius:50%;overflow:hidden;aspect-ratio:1}.block-news-single__thumb img{width:100%;height:100%;object-fit:cover}.block-news-single__title{font-size:clamp(var(--type-headline),4vw,var(--type-h2));line-height:1.2;margin-bottom:.5rem}.block-news-single__date{font-size:var(--type-nav);color:var(--mei-grey);display:block;margin-bottom:1.5rem}.block-news-single__content{font-size:var(--type-body);line-height:1.7}.news-item{margin-bottom:3rem}.news-item__image{overflow:hidden;margin-bottom:.75rem}.news-item__image img{width:100%;height:auto;display:block}.news-item__title{font-size:var(--type-button);margin-bottom:.5rem}.news-item__title a{text-decoration:none;color:inherit}.news-item--right{margin-top:4rem}.block-people-list{background-color:rgba(0,0,0,0)}.people-list-container{position:relative}.people-list-items{position:relative}.people-list-row{padding:0 .9rem}@media print,screen and (min-width: 800px){.people-list-row{padding:0 1.35rem}}.people-list-row{border-top:1px solid var(--black-15);transition:opacity .3s ease,background-color .3s ease}.people-list-row__inner{display:flex;align-items:baseline;justify-content:space-between;padding:1rem 0;text-decoration:none;color:inherit}@media(min-width: 800px){.people-list-row__inner{padding:1.1vw 0}}.people-list-row a.people-list-row__inner{cursor:pointer}.people-list-row__inner:focus{outline:none}.people-list-row__name{font-family:var(--header-font);font-size:var(--size-plus2);font-weight:var(--weight-light);letter-spacing:var(--heading-tracking);line-height:var(--header-line-height)}.people-list-row__role{font-family:var(--body-font);font-size:var(--type-body);font-weight:var(--weight-light);line-height:var(--body-line-height);white-space:nowrap}@media(min-width: 800px){.people-list-row__role{font-size:var(--size-plus0)}}.people-list-items:hover .people-list-row{opacity:.3;transition:opacity .3s ease,background-color .3s ease}.people-list-items:hover .people-list-row:hover{opacity:1;background-color:var(--green-a)}.people-list-medias img{width:1px;height:1px;position:absolute;top:0;left:0;visibility:hidden;pointer-events:none}.people-list-media-container{position:absolute;width:15.6vw;height:15.6vw;left:calc(66.666% - 7.8vw);top:0;border-radius:50%;pointer-events:none;overflow:hidden;visibility:hidden;z-index:10}.people-list-media-container.on{visibility:visible}.people-list-media-container div{position:absolute;top:0;left:0;width:100%;height:100%;overflow:hidden;transform:translate(0, -100%)}.people-list-media-container img{width:100%;height:100%;object-fit:cover;display:block;position:absolute;top:0;left:0;transform:translate(0, 90%)}@media(max-width: 800px){.people-list-media-container{display:none}}.person-modal{position:fixed;inset:0;z-index:1000;display:flex;align-items:flex-start;visibility:hidden;opacity:0;overflow-y:auto;-webkit-overflow-scrolling:touch;background:var(--theme-bg)}.person-modal.is-open{visibility:visible}.person-modal{color:var(--abc-off-white)}.person-modal__overlay{position:fixed;inset:0;background:rgba(0,0,0,.825);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);cursor:pointer;opacity:0}.person-modal__dialog{position:relative;width:100%;margin-left:auto;padding:2rem 1rem;opacity:0;overflow-y:auto;-webkit-overflow-scrolling:touch;height:100vh;background:var(--theme-bg)}@media(min-width: 800px){.person-modal__dialog{width:50%;padding:6vw 3vw}}.person-modal__image-wrap{width:200px;height:200px;border-radius:50%;overflow:hidden;position:relative;margin-bottom:2rem}@media(min-width: 800px){.person-modal__image-wrap{width:15.6vw;height:15.6vw;margin-bottom:3vw}}.person-modal__image{width:100%;height:100%;object-fit:cover;display:block}.person-modal__image--secondary{position:absolute;top:0;left:0;opacity:0}.person-modal__name{font-family:var(--header-font);font-size:var(--size-plus2);font-weight:var(--weight-light);letter-spacing:var(--heading-tracking);line-height:var(--header-line-height);margin:0 0 .3em}.person-modal__role{font-family:var(--body-font);font-size:var(--size-plus0);font-weight:var(--weight-light);line-height:var(--body-line-height);margin:0 0 2rem;opacity:.6}.person-modal__bio{font-family:var(--body-font);font-size:var(--size-plus0);font-weight:var(--weight-light);line-height:var(--body-line-height);margin-bottom:3rem}@media(min-width: 800px){.person-modal__bio{margin-bottom:4vw}}.person-modal__bio p:last-child{margin-bottom:0}.person-modal__close{cursor:pointer;color:var(--abc-black);border-color:var(--abc-black)}.person-modal__close:hover{background-color:var(--abc-black);color:var(--abc-off-white)}.project-filter-nav{list-style:none;display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:2rem;padding:0}.project-filter-nav li a{font-size:var(--type-nav);text-decoration:none;color:var(--mei-brown)}.project-filter-nav li a.active,.project-filter-nav li a:hover,.project-filter-nav li a:focus-visible{color:var(--mei-near-black)}.project-card{margin-bottom:2rem}.project-card__image{overflow:hidden;margin-bottom:.75rem}.project-card__image img{width:100%;height:auto;display:block;transition:transform .3s}.project-card__image:hover img,.project-card__image:focus-visible img{transform:scale(1.03)}.project-card__client{font-size:var(--size-plus0);margin-bottom:.25rem}.project-card h3{font-size:var(--size-plus2);margin-bottom:.5rem}.project-card h3 a{text-decoration:none;color:inherit}.project-filter-nav{list-style:none;display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:2rem;padding:0}.project-filter-nav li a{font-size:var(--type-nav);text-decoration:none;color:var(--mei-brown)}.project-filter-nav li a.active,.project-filter-nav li a:hover,.project-filter-nav li a:focus-visible{color:var(--mei-near-black)}.project-list-items{list-style:none;margin:0;padding:0}.project-list-item{border-top:var(--line-light);position:relative}.project-list-item:hover,.project-list-item:focus-within{background:var(--mei-cream)}.project-list-item:hover .project-list-item__thumb,.project-list-item:focus-within .project-list-item__thumb{opacity:1}.project-list-item__inner{display:flex;align-items:center;justify-content:space-between;padding:.9rem 0}.project-list-item__title{font-size:var(--type-body);text-decoration:none;color:inherit}.project-list-item__title h3{margin:0}.project-list-item__meta{font-size:var(--type-nav);color:var(--mei-grey);text-align:right}.project-list-item__thumb{position:absolute;left:50%;top:50%;transform:translate(-50%, -50%);width:100px;height:100px;border-radius:50%;overflow:hidden;opacity:0;transition:opacity .2s;pointer-events:none;z-index:2}.project-list-item__thumb img{width:100%;height:100%;object-fit:cover}.gallery-pair__image{overflow:hidden}.gallery-pair__image img,.gallery-pair__image video{width:100%;height:400px;object-fit:cover;display:block}.block-projectsingle-hero__client{font-size:var(--type-nav);color:var(--mei-grey);padding:1.5rem 0 .5rem}.block-projectsingle-hero__image{width:100%}.block-projectsingle-hero__image img,.block-projectsingle-hero__image video{width:100%;height:60vh;object-fit:cover;display:block}.block-projectsingle-text{padding:3rem 0}.block-projectsingle-text__client{font-size:var(--type-nav);font-weight:600;color:var(--mei-dark);margin-bottom:.25rem}.block-projectsingle-text__location{font-size:var(--type-nav);color:var(--mei-grey)}.block-projectsingle-text__content{font-size:var(--type-body);line-height:1.75}.block-projectsingle-text__content p{margin-bottom:1.25rem}.block-section-projects{padding-top:4vw;padding-bottom:6vw;--theme-accent: var(--sun-b)}@media screen and (max-width: 799px){.block-section-projects{padding-top:2rem;padding-bottom:3rem}}.block-section-projects__heading{font-size:var(--size-plus2);font-weight:var(--weight-light);letter-spacing:var(--heading-tracking);line-height:var(--header-line-height);margin-bottom:3vw}@media screen and (max-width: 799px){.block-section-projects__heading{margin-bottom:1.5rem}}.block-section-projects__grid{align-items:stretch}.block-section-projects__card{margin-bottom:2rem}@media screen and (min-width: 800px){.block-section-projects__card{margin-bottom:0}}.block-section-projects__card-link{text-decoration:none;color:inherit;display:block}.block-section-projects__card-link:hover .block-section-projects__card-image img{transform:scale(1.03)}.block-section-projects__card-image{overflow:hidden;margin-bottom:1rem}.block-section-projects__card-image img{width:100%;height:18vw;object-fit:cover;display:block;transition:transform .3s ease}@media screen and (max-width: 799px){.block-section-projects__card-image img{height:55vw}}.block-section-projects__card-meta{padding:0}.block-section-projects__card-client{font-size:var(--size-minus1);font-weight:var(--weight-bold);color:var(--theme-fg, var(--abc-black));opacity:.5;margin-bottom:.25rem}.block-section-projects__card-title{font-size:var(--size-plus0);font-weight:var(--weight-regular);letter-spacing:var(--heading-tracking);line-height:var(--header-line-height);margin-bottom:0}.block-section-projects__cta-cell{display:flex;align-items:center;justify-content:center}@media screen and (max-width: 799px){.block-section-projects__cta-cell{margin-top:1rem}}.block-section-projects__cta{display:flex;align-items:center;justify-content:center;text-align:center;text-decoration:none;color:var(--theme-fg, var(--abc-black));width:15.6vw;height:15.6vw;border-radius:50%;border:1px solid var(--theme-accent);background:rgba(0,0,0,0);transition:background-color .3s ease,color .3s ease}.block-section-projects__cta span{font-size:var(--size-plus2);font-weight:var(--weight-light);letter-spacing:var(--heading-tracking);line-height:var(--header-line-height);max-width:75%}.block-section-projects__cta:hover{background-color:var(--theme-accent);color:var(--abc-off-white)}@media screen and (max-width: 799px){.block-section-projects__cta{width:55vw;height:55vw;margin:0 auto}.block-section-projects__cta span{font-size:var(--type-body-lg)}}.block+.block.block-section-subpages{margin:1.8rem 0}.block-section-subpages{padding:4rem 0}.block-section-subpages__inner{align-items:flex-start}.block-section-subpages h3{font-size:var(--size-plus2);margin:0}.block-section-subpages__heading{display:flex;align-items:center;gap:.5rem}.block-section-subpages__heading svg{flex-shrink:0}.block-section-subpages .section-subpages__links{list-style:none;margin:1.35em 0 0 0}@media(min-width: 800px){.block-section-subpages .section-subpages__links{margin:0}}.block-section-subpages .section-subpages__links{padding:0;display:flex;flex-direction:column;gap:0}.block-section-subpages .section-subpages__links a{font-size:var(--size-minus1)}@media(min-width: 800px){.block-section-subpages .section-subpages__links a{font-size:var(--size-plus2)}}.block-section-subpages .section-subpages__links a{font-weight:300;line-height:1.3;letter-spacing:var(--heading-tracking);text-decoration:none}.block-section-subpages .section-subpages__links a:hover{text-decoration:underline}.block-service-subpage-hero{padding-top:5.6rem;background-color:var(--theme-bg)}.block-service-subpage-hero h1.service-subpage-hero__title{font-size:var(--size-plus4);line-height:1.1;margin-bottom:3.6em;margin-top:0;--black: var(--theme-fg)}.block-service-subpage-hero .service-subpage-hero__image{width:100%;margin-top:3rem}.block-service-subpage-hero .service-subpage-hero__image img,.block-service-subpage-hero .service-subpage-hero__image video{width:100%;height:55vh;object-fit:cover;display:block}.block+.block.block-services-content{margin:1.8rem 0}@media(max-width: 799px){.block+.block.block-services-content{margin:0}}.block-services-content{padding:4rem 0}.block-services-content+.block-services-content{border-top:1px solid var(--theme-accent)}@media(max-width: 799px){.block-services-content{padding:.9rem 0}.block-services-content .btn{font-size:var(--size-minus2)}}@media(min-width: 800px){.block-services-content .services-content__layout{display:grid;grid-template-columns:repeat(12, 1fr);column-gap:1.5vw;align-items:start}}.block-services-content h3{font-size:var(--size-plus0);margin:0}@media(min-width: 800px){.block-services-content h3{font-size:var(--size-plus2)}}.block-services-content .services-content__trigger{display:flex;align-items:flex-start;gap:.5rem}@media(max-width: 799px){.block-services-content .services-content__trigger{cursor:pointer}}@media(min-width: 800px){.block-services-content .services-content__trigger{grid-column:1/span 3;grid-row:1}}@media(max-width: 799px){.block-services-content .services-content__body{display:none}}@media(min-width: 800px){.block-services-content .services-content__body{display:contents}}@media(max-width: 799px){.block-services-content.is-open .services-content__body{display:flex;flex-direction:column;gap:1.25rem;padding-top:1.25rem}}.block-services-content .services-content__content-text p,.block-services-content .services-content__content-text li,.block-services-content .services-content__content-text ul,.block-services-content .services-content__content-text ol{font-size:var(--size-minus1);margin-top:.45rem;margin-bottom:.45rem}@media(min-width: 800px){.block-services-content .services-content__content-text p,.block-services-content .services-content__content-text li,.block-services-content .services-content__content-text ul,.block-services-content .services-content__content-text ol{font-size:var(--size-plus2);margin-top:0;margin-bottom:1.25em}}.block-services-content .services-content__content-text ul{list-style:none;padding-left:0}.block-services-content .services-content__content-text li{padding-left:1.25em;text-indent:-1.25em;margin-bottom:.65em}.block-services-content .services-content__content-text li::before{content:"– "}@media(min-width: 800px){.block-services-content .services-content__content-text{grid-column:5/span 6;grid-row:1}}@media(min-width: 800px){.block-services-content .services-content__cta{grid-column:11/span 2;grid-row:1;text-align:right}}.block-services-content .services-content__links{display:flex;flex-wrap:wrap;gap:.75rem}@media(min-width: 800px){.block-services-content .services-content__links{grid-column:5/-1;order:1;margin-top:1rem}}@media(max-width: 799px){.block-services-content .services-content__image{order:-1}}@media(min-width: 800px){.block-services-content .services-content__image{grid-column:5/span 6;order:2;margin-top:1rem}}.block-services-content .services-content__image img{width:100%;height:auto;display:block}.block-services-hero{position:relative;background-color:var(--theme-bg);--black: var(--theme-fg);overflow:hidden}.block-services-hero__text{position:relative;z-index:2;padding:2rem 0}@media screen and (min-width: 800px){.block-services-hero__text{padding:18vw 0 4vw}}.block-services-hero__title{font-size:var(--size-plus4);font-weight:var(--weight-light);letter-spacing:var(--heading-tracking);line-height:var(--header-line-height);margin:50vw 0 .5em}@media(min-width: 800px){.block-services-hero__title{margin:0 0 .5em}}.block-services-hero__content{font-size:var(--size-plus0)}@media(min-width: 800px){.block-services-hero__content{font-size:var(--size-plus2)}}.block-services-hero__content{font-weight:var(--weight-light);letter-spacing:var(--heading-tracking);line-height:var(--body-line-height)}.block-services-hero__content p{font-size:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit}.block-services-hero__circle{position:relative;width:100%;aspect-ratio:1;overflow:hidden;clip-path:inset(0 round 50%)}@media screen and (max-width: 799px){.block-services-hero__circle{width:90vw;aspect-ratio:1;margin:2rem auto;clip-path:none;border-radius:50%}}.block-services-hero__circle img,.block-services-hero__circle video{width:100%;height:100%;object-fit:cover;object-position:top;display:block}

/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VSb290IjoiYXNzZXRzL3Njc3MiLCJzb3VyY2VzIjpbImZpbGU6Ly8vdmFyL3d3dy9uZWVkL2FiYy9hcHAvdGhlbWVzL3N0aXJ0aW5nYWxlL2Fzc2V0cy9zY3NzL3RoZW1lLnNjc3MiLCJmaWxlOi8vL3Zhci93d3cvbmVlZC9hYmMvYXBwL3RoZW1lcy9zdGlydGluZ2FsZS9hc3NldHMvc2Nzcy9mb3VuZGF0aW9uL3ZlbmRvci9ub3JtYWxpemUuc2NzcyIsImZpbGU6Ly8vdmFyL3d3dy9uZWVkL2FiYy9hcHAvdGhlbWVzL3N0aXJ0aW5nYWxlL2Fzc2V0cy9zY3NzL2ZvdW5kYXRpb24vX2dsb2JhbC5zY3NzIiwiZmlsZTovLy92YXIvd3d3L25lZWQvYWJjL2FwcC90aGVtZXMvc3RpcnRpbmdhbGUvYXNzZXRzL3Njc3MvZm91bmRhdGlvbi91dGlsL191bml0LnNjc3MiLCJmaWxlOi8vL3Zhci93d3cvbmVlZC9hYmMvYXBwL3RoZW1lcy9zdGlydGluZ2FsZS9hc3NldHMvc2Nzcy9mb3VuZGF0aW9uL3V0aWwvX21peGlucy5zY3NzIiwiZmlsZTovLy92YXIvd3d3L25lZWQvYWJjL2FwcC90aGVtZXMvc3RpcnRpbmdhbGUvYXNzZXRzL3Njc3MvZm91bmRhdGlvbi94eS1ncmlkL19jbGFzc2VzLnNjc3MiLCJmaWxlOi8vL3Zhci93d3cvbmVlZC9hYmMvYXBwL3RoZW1lcy9zdGlydGluZ2FsZS9hc3NldHMvc2Nzcy9mb3VuZGF0aW9uL3h5LWdyaWQvX2d1dHRlcnMuc2NzcyIsImZpbGU6Ly8vdmFyL3d3dy9uZWVkL2FiYy9hcHAvdGhlbWVzL3N0aXJ0aW5nYWxlL2Fzc2V0cy9zY3NzL2ZvdW5kYXRpb24veHktZ3JpZC9fZ3JpZC5zY3NzIiwiZmlsZTovLy92YXIvd3d3L25lZWQvYWJjL2FwcC90aGVtZXMvc3RpcnRpbmdhbGUvYXNzZXRzL3Njc3MvZm91bmRhdGlvbi94eS1ncmlkL19jZWxsLnNjc3MiLCJmaWxlOi8vL3Zhci93d3cvbmVlZC9hYmMvYXBwL3RoZW1lcy9zdGlydGluZ2FsZS9hc3NldHMvc2Nzcy9mb3VuZGF0aW9uL3V0aWwvX2JyZWFrcG9pbnQuc2NzcyIsImZpbGU6Ly8vdmFyL3d3dy9uZWVkL2FiYy9hcHAvdGhlbWVzL3N0aXJ0aW5nYWxlL2Fzc2V0cy9zY3NzL2ZvdW5kYXRpb24veHktZ3JpZC9fbGF5b3V0LnNjc3MiLCJmaWxlOi8vL3Zhci93d3cvbmVlZC9hYmMvYXBwL3RoZW1lcy9zdGlydGluZ2FsZS9hc3NldHMvc2Nzcy9mb3VuZGF0aW9uL3h5LWdyaWQvX2NvbGxhcHNlLnNjc3MiLCJmaWxlOi8vL3Zhci93d3cvbmVlZC9hYmMvYXBwL3RoZW1lcy9zdGlydGluZ2FsZS9hc3NldHMvc2Nzcy9mb3VuZGF0aW9uL3h5LWdyaWQvX3Bvc2l0aW9uLnNjc3MiLCJmaWxlOi8vL3Zhci93d3cvbmVlZC9hYmMvYXBwL3RoZW1lcy9zdGlydGluZ2FsZS9hc3NldHMvc2Nzcy9mb3VuZGF0aW9uL3h5LWdyaWQvX2ZyYW1lLnNjc3MiLCJmaWxlOi8vL3Zhci93d3cvbmVlZC9hYmMvYXBwL3RoZW1lcy9zdGlydGluZ2FsZS9hc3NldHMvc2Nzcy9mb3VuZGF0aW9uL2NvbXBvbmVudHMvX2ZsZXguc2NzcyIsImZpbGU6Ly8vdmFyL3d3dy9uZWVkL2FiYy9hcHAvdGhlbWVzL3N0aXJ0aW5nYWxlL2Fzc2V0cy9zY3NzL2ZvdW5kYXRpb24vdXRpbC9fZmxleC5zY3NzIiwiZmlsZTovLy92YXIvd3d3L25lZWQvYWJjL2FwcC90aGVtZXMvc3RpcnRpbmdhbGUvYXNzZXRzL3Njc3MvZm91bmRhdGlvbi9jb21wb25lbnRzL192aXNpYmlsaXR5LnNjc3MiLCJmaWxlOi8vL3Zhci93d3cvbmVlZC9hYmMvYXBwL3RoZW1lcy9zdGlydGluZ2FsZS9hc3NldHMvc2Nzcy9zYWwuc2NzcyIsImZpbGU6Ly8vdmFyL3d3dy9uZWVkL2FiYy9hcHAvdGhlbWVzL3N0aXJ0aW5nYWxlL2Fzc2V0cy9zY3NzL3N3aXBlLnNjc3MiLCJmaWxlOi8vL3Zhci93d3cvbmVlZC9hYmMvYXBwL3RoZW1lcy9zdGlydGluZ2FsZS9hc3NldHMvc2Nzcy9fcHJlbG9hZGVyLnNjc3MiLCJmaWxlOi8vL3Zhci93d3cvbmVlZC9hYmMvYXBwL3RoZW1lcy9zdGlydGluZ2FsZS9hc3NldHMvc2Nzcy9hcHAuc2NzcyIsImZpbGU6Ly8vdmFyL3d3dy9uZWVkL2FiYy9hcHAvdGhlbWVzL3N0aXJ0aW5nYWxlL2Fzc2V0cy9zY3NzL19wYWdlLWhlYWRlci5zY3NzIiwiZmlsZTovLy92YXIvd3d3L25lZWQvYWJjL2FwcC90aGVtZXMvc3RpcnRpbmdhbGUvYXNzZXRzL3Njc3MvX25ld3Muc2NzcyIsImZpbGU6Ly8vdmFyL3d3dy9uZWVkL2FiYy9hcHAvdGhlbWVzL3N0aXJ0aW5nYWxlL2Fzc2V0cy9zY3NzL19wcm9qZWN0cy5zY3NzIiwiZmlsZTovLy92YXIvd3d3L25lZWQvYWJjL2FwcC90aGVtZXMvc3RpcnRpbmdhbGUvYXNzZXRzL3Njc3MvX2NvbnRhY3QtbW9kYWwuc2NzcyIsImZpbGU6Ly8vdmFyL3d3dy9uZWVkL2FiYy9hcHAvdGhlbWVzL3N0aXJ0aW5nYWxlL2Jsb2Nrcy9hYm91dC1jdGEvc3R5bGUuc2NzcyIsImZpbGU6Ly8vdmFyL3d3dy9uZWVkL2FiYy9hcHAvdGhlbWVzL3N0aXJ0aW5nYWxlL2Jsb2Nrcy9hYm91dC1zY2F0dGVyZWQtcmVwZWF0ZXIvc3R5bGUuc2NzcyIsImZpbGU6Ly8vdmFyL3d3dy9uZWVkL2FiYy9hcHAvdGhlbWVzL3N0aXJ0aW5nYWxlL2Jsb2Nrcy9hY2Nlc3NpYmlsaXR5LXdpZGdldC9zdHlsZS5zY3NzIiwiZmlsZTovLy92YXIvd3d3L25lZWQvYWJjL2FwcC90aGVtZXMvc3RpcnRpbmdhbGUvYmxvY2tzL2FwcHJvYWNoLWdyaWQvc3R5bGUuc2NzcyIsImZpbGU6Ly8vdmFyL3d3dy9uZWVkL2FiYy9hcHAvdGhlbWVzL3N0aXJ0aW5nYWxlL2Jsb2Nrcy9hd2FyZHMvc3R5bGUuc2NzcyIsImZpbGU6Ly8vdmFyL3d3dy9uZWVkL2FiYy9hcHAvdGhlbWVzL3N0aXJ0aW5nYWxlL2Jsb2Nrcy9mcmFtZXdvcmstaGVyby1pbGx1c3RyYXRpb24vc3R5bGUuc2NzcyIsImZpbGU6Ly8vdmFyL3d3dy9uZWVkL2FiYy9hcHAvdGhlbWVzL3N0aXJ0aW5nYWxlL2Jsb2Nrcy9mcmFtZXdvcmstbGlzdG9mbGlua3Mvc3R5bGUuc2NzcyIsImZpbGU6Ly8vdmFyL3d3dy9uZWVkL2FiYy9hcHAvdGhlbWVzL3N0aXJ0aW5nYWxlL2Jsb2Nrcy9mcm9udHBhZ2UtYmxvZy9zdHlsZS5zY3NzIiwiZmlsZTovLy92YXIvd3d3L25lZWQvYWJjL2FwcC90aGVtZXMvc3RpcnRpbmdhbGUvYmxvY2tzL2Zyb250cGFnZS1ncmlkL3N0eWxlLnNjc3MiLCJmaWxlOi8vL3Zhci93d3cvbmVlZC9hYmMvYXBwL3RoZW1lcy9zdGlydGluZ2FsZS9ibG9ja3MvZnJvbnRwYWdlLWhlcm8vc3R5bGUuc2NzcyIsImZpbGU6Ly8vdmFyL3d3dy9uZWVkL2FiYy9hcHAvdGhlbWVzL3N0aXJ0aW5nYWxlL2Jsb2Nrcy9mcm9udHBhZ2UtaW1wYWN0L3N0eWxlLnNjc3MiLCJmaWxlOi8vL3Zhci93d3cvbmVlZC9hYmMvYXBwL3RoZW1lcy9zdGlydGluZ2FsZS9ibG9ja3MvZnJvbnRwYWdlLWxlYWQvc3R5bGUuc2NzcyIsImZpbGU6Ly8vdmFyL3d3dy9uZWVkL2FiYy9hcHAvdGhlbWVzL3N0aXJ0aW5nYWxlL2Jsb2Nrcy9mcm9udHBhZ2UtcHJvamVjdHMvc3R5bGUuc2NzcyIsImZpbGU6Ly8vdmFyL3d3dy9uZWVkL2FiYy9hcHAvdGhlbWVzL3N0aXJ0aW5nYWxlL2Jsb2Nrcy9nbG9iYWwtc2ltcGxldGV4dC9zdHlsZS5zY3NzIiwiZmlsZTovLy92YXIvd3d3L25lZWQvYWJjL2FwcC90aGVtZXMvc3RpcnRpbmdhbGUvYmxvY2tzL2ltcGFjdC1jdGEvc3R5bGUuc2NzcyIsImZpbGU6Ly8vdmFyL3d3dy9uZWVkL2FiYy9hcHAvdGhlbWVzL3N0aXJ0aW5nYWxlL2Jsb2Nrcy9pbXBhY3Qtc2NhdHR0ZXJlZGdyaWQvc3R5bGUuc2NzcyIsImZpbGU6Ly8vdmFyL3d3dy9uZWVkL2FiYy9hcHAvdGhlbWVzL3N0aXJ0aW5nYWxlL2Jsb2Nrcy9sb29raW5nLWZvci1tb3JlLW5ld3Mvc3R5bGUuc2NzcyIsImZpbGU6Ly8vdmFyL3d3dy9uZWVkL2FiYy9hcHAvdGhlbWVzL3N0aXJ0aW5nYWxlL2Jsb2Nrcy9tZWRpYS9zdHlsZS5zY3NzIiwiZmlsZTovLy92YXIvd3d3L25lZWQvYWJjL2FwcC90aGVtZXMvc3RpcnRpbmdhbGUvYmxvY2tzL25ld3MtaW5kZXgvc3R5bGUuc2NzcyIsImZpbGU6Ly8vdmFyL3d3dy9uZWVkL2FiYy9hcHAvdGhlbWVzL3N0aXJ0aW5nYWxlL2Jsb2Nrcy9uZXdzLXNpbmdsZS9zdHlsZS5zY3NzIiwiZmlsZTovLy92YXIvd3d3L25lZWQvYWJjL2FwcC90aGVtZXMvc3RpcnRpbmdhbGUvYmxvY2tzL25ld3NzaW5nbGUta2VlcHJlYWRpbmcvc3R5bGUuc2NzcyIsImZpbGU6Ly8vdmFyL3d3dy9uZWVkL2FiYy9hcHAvdGhlbWVzL3N0aXJ0aW5nYWxlL2Jsb2Nrcy9wZW9wbGUtbGlzdC9zdHlsZS5zY3NzIiwiZmlsZTovLy92YXIvd3d3L25lZWQvYWJjL2FwcC90aGVtZXMvc3RpcnRpbmdhbGUvYmxvY2tzL3Byb2plY3QtZ3JpZC9zdHlsZS5zY3NzIiwiZmlsZTovLy92YXIvd3d3L25lZWQvYWJjL2FwcC90aGVtZXMvc3RpcnRpbmdhbGUvYmxvY2tzL3Byb2plY3QtbGlzdC9zdHlsZS5zY3NzIiwiZmlsZTovLy92YXIvd3d3L25lZWQvYWJjL2FwcC90aGVtZXMvc3RpcnRpbmdhbGUvYmxvY2tzL3Byb2plY3RzaW5nbGUtZ2FsbGVyeS9zdHlsZS5zY3NzIiwiZmlsZTovLy92YXIvd3d3L25lZWQvYWJjL2FwcC90aGVtZXMvc3RpcnRpbmdhbGUvYmxvY2tzL3Byb2plY3RzaW5nbGUtaGVyby9zdHlsZS5zY3NzIiwiZmlsZTovLy92YXIvd3d3L25lZWQvYWJjL2FwcC90aGVtZXMvc3RpcnRpbmdhbGUvYmxvY2tzL3Byb2plY3RzaW5nbGUtdGV4dC9zdHlsZS5zY3NzIiwiZmlsZTovLy92YXIvd3d3L25lZWQvYWJjL2FwcC90aGVtZXMvc3RpcnRpbmdhbGUvYmxvY2tzL3NlY3Rpb24tcHJvamVjdHMvc3R5bGUuc2NzcyIsImZpbGU6Ly8vdmFyL3d3dy9uZWVkL2FiYy9hcHAvdGhlbWVzL3N0aXJ0aW5nYWxlL2Jsb2Nrcy9zZWN0aW9uLXN1YnBhZ2VzL3N0eWxlLnNjc3MiLCJmaWxlOi8vL3Zhci93d3cvbmVlZC9hYmMvYXBwL3RoZW1lcy9zdGlydGluZ2FsZS9ibG9ja3Mvc2VydmljZS1zdWJwYWdlLWhlcm8vc3R5bGUuc2NzcyIsImZpbGU6Ly8vdmFyL3d3dy9uZWVkL2FiYy9hcHAvdGhlbWVzL3N0aXJ0aW5nYWxlL2Jsb2Nrcy9zZXJ2aWNlcy1jb250ZW50L3N0eWxlLnNjc3MiLCJmaWxlOi8vL3Zhci93d3cvbmVlZC9hYmMvYXBwL3RoZW1lcy9zdGlydGluZ2FsZS9ibG9ja3Mvc2VydmljZXMtaGVyby9zdHlsZS5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJDQUNBLFdBQ0ksNkJBQ0EsSUFDSSw0SkFFSixnQkFDQSxrQkFDQSxrQkFHSixXQUNJLDZCQUNBLElBQ0ksNEpBRUosZ0JBQ0Esa0JBQ0Esa0JBR0osV0FDSSw2QkFDQSxJQUNJLDRKQUVKLGdCQUNBLGtCQUNBLGtCQUdKLFdBQ0ksNkJBQ0EsSUFDSSw0SkFFSixnQkFDQSxrQkFDQSxrQkFFSixrQ0FHSSw0REFDQSw4REFDQSx3QkFDQSwwQkFDQSxvQkFDQSxxQkFDQSxtQkFDQSwyQkFFQSxzQkFDQSxtQ0FFQSx5Q0FDQSw2Q0FDQSx1QkFDQSxtQkFDQSx3QkFDQSx3QkFDQSx3QkFDQSxhQUNBLG1CQUNBLHNCQUNBLHdCQUNBLDBCQUNBLDRCQUNBLDhCQUNBLDhCQUNBLDZCQUNBLDhCQUNBLDhCQUNBLCtCQUVBLDJDQW5DSixrQ0FvQ1Esa0JBQ0EscUJBQ0EsdUJBQ0EseUJBQ0EsMkJBQ0EsNkJBQ0EsNkJBQ0EsNEJBQ0EsNkJBQ0EsNkJBQ0EsK0JBOUNSLGtDQWlESSxxQkFDQSx5QkFDQSxxQkFDQSxtQkFDQSxtQkFDQSxtQkFDQSxpQkFDQSxpQkFDQSxrQkFDQSxrQkFDQSxrQkFDQSxrQkFDQSxrQkFDQSxrQkFDQSxvQkFFQSwyQkFDQSwrQkFDQSwwQkFDQSw4QkFDQSxxQkFDQSxxQkFFQSxpQ0FDQSw2QkFDQSxpQ0FFSixhQUNJLGlDQUNBLHNCQUVKLGtEQUVJLGlDQUNBLDZCQUNBLGlDQUdKLHVCQUNJLDZCQUNBLDZCQUNBLGlDQUdKLHFCQUNJLDJCQUNBLDhCQUNBLDZCQUNBLCtCQUdKLHFCQUNJLDJCQUNBLDhCQUNBLGlDQUNBLGlDQUNBLDJDQUdKLG9CQUNJLDBCQUNBLDZCQUNBLGlDQUVKLDBDQUVJLDZCQUNBLGlDQUNBLGlDQUNBLDJDQUdKLHFCQUNJLDJCQUNBLGlDQUNBLGlDQUNBLDhCQUNBLDJDQUdKLG9CQUNJLDBCQUNBLDZCQUNBLGlDQUNBLGlDQUNBLDJDQUdKLG1CQUNJLHlCQUNBLGlDQUNBLGlDQUNBLDJDQUVKLG1CQUNJLHlCQUNBLGlDQUNBLGlDQUNBLDJDQUdKLG9CQUNJLDBCQUNBLDZCQUNBLDhCQUdKLG9CQUNJLDBCQUNBLDZCQUNBLDhCQUdKLG9CQUNJLDBCQUNBLDZCQUNBLGlDQUNBLDhCQUNBLDJDQUVKLG9CQUVJLG9CQUNBLG1CQUNBLHVCQUNBLHVCQUNBLHVEQUNBLGdCQUNBLDZCQUNBLCtCQUNBLDZCQUNBLHVDQUNBLGNBQ0EscUJBQ0EsdUJBQ0EseUJBQ0EsZUFDQSxXQUNJLDBIQUtKLGdDQUNJLHVEQUNBLHVCQUNBLG1EQUNBLG1CQUdKLGdEQUNJLGFDN09OLDRFQVFBLEtBQ0UsaUJBQ0EsOEJBUUYsS0FDRSxTQU1GLEdBQ0UsY0FDQSxlQVNGLEdBQ0UsdUJBQ0EsU0FDQSxpQkFNRixJQUNFLGdDQUNBLGNBUUYsRUFDRSwrQkFNRixZQUNFLGdCQUNBLGlDQUtGLFNBRUUsbUJBTUYsY0FHRSxnQ0FDQSxjQUtGLE1BQ0UsY0FNRixRQUVFLGNBQ0EsY0FDQSxrQkFDQSx3QkFHRixJQUNFLGVBR0YsSUFDRSxXQVFGLElBQ0Usa0JBU0Ysc0NBS0Usb0JBQ0EsZUFDQSxpQkFDQSxTQU1GLGFBRUUsaUJBTUYsY0FFRSxvQkFLRixnREFJRSwwQkFLRix3SEFJRSxrQkFDQSxVQUtGLDRHQUlFLDhCQUtGLFNBQ0UsMkJBUUYsT0FDRSxzQkFDQSxjQUNBLGNBQ0EsZUFDQSxVQUNBLG1CQUtGLFNBQ0Usd0JBS0YsU0FDRSxjQU1GLDZCQUVFLHNCQUNBLFVBS0Ysa0ZBRUUsWUFNRixjQUNFLDZCQUNBLG9CQUtGLHlDQUNFLHdCQU1GLDZCQUNFLDBCQUNBLGFBUUYsUUFDRSxjQUtGLFFBQ0Usa0JBUUYsU0FDRSxhQUtGLFNBQ0UsYUFRQSxvT0FDRSxhQUtKLGtCQUNFLDJCQUNBLHlCQ3hKRixlQUNFLHdFQUdGLEtBQ0Usc0JBQ0EsVUN6SWUsS0Q2SWpCLHFCQUdFLG1CQUlGLEtBQ0UsU0FDQSxVQVVBLFdBeEhJLFFBMEhKLFlBOUdlLG1EQStHZixZQXZGbUIsT0F3Rm5CLFlBMUpnQixJQTJKaEIsTUFqSUksUUFvSUYsbUNBQ0Esa0NBSUosSUFFRSxxQkFDQSxzQkFHQSxlQUNBLFlBQ0EsK0JBSUYsU0FDRSxZQUNBLGdCQUNBLGNBeEdZLEVBNEdkLE9BQ0Usc0JBQ0EsV0FDQSxjQS9HWSxFQXNIWiw2R0FHRSwwQkVoQkosOEJBQ0UsVUZvQkYsT0FFRSxVQUNBLGdCQUNBLFNBQ0EsY0FuSVksRUFvSVoseUJBQ0EsY0FDQSxPQS9HbUIsS0FtSHJCLElBQ0UsY0FDQSxpQ0FJRixzQ0FLRSxvQkFJRixZQUNFLHlCQUdGLFdBQ0Usd0JHbFBGLGdCQzZCSSwyQ0N2QkosZ0JBQ0EsaUJBQ0Esa0JGTEUsc0JDMEJFLDJDQ3ZCSixVRkYrQixLRUcvQixpQkFDQSxrQkZERSxxQkNzQkUsK0JDdkJKLFVGRStCLEtFRC9CLGlCQUNBLGtCRktBLFFFU0EsYUFDQSxtQkZOQSxNR3FHQSxjQUlFLGFBQ0EsWUFzQ0EsTUFUTSxLSHBJTixXR2tHRixXSDlGRSxhRzhGRixjSHhGRSxjR21JQSxNQVRNLEtIdEhOLGdCRytIQSxNQVRNLEtIdEdKLHlQQUNFLGdCSW9IQSwwQ0pySEYsdVFBQ0UsaUJJb0hBLDBDSnJIRix5UEFDRSxpQkFhSiwrTUdzREYsY0h2Q0ksaUJHa0ZGLE1BVE0sY0h6RUosaUJHa0ZGLE1BVE0sZUh6RUosaUJHa0ZGLE1BVE0sSUh6RUosaUJHa0ZGLE1BVE0sZUh6RUosaUJHa0ZGLE1BVE0sZUh6RUosaUJHa0ZGLE1BVE0sSUh6RUosaUJHa0ZGLE1BVE0sZUh6RUosaUJHa0ZGLE1BVE0sZUh6RUosaUJHa0ZGLE1BVE0sSUh6RUosa0JHa0ZGLE1BVE0sZUh6RUosa0JHa0ZGLE1BVE0sZUh6RUosa0JHa0ZGLE1BVE0sS0NlRiwwQ0o1R0YscUJHMkRKLFdBMkNFLE1BVE0sS0h4Rk4sa1BHc0RGLGNIaERJLHVCRzJGRixNQVRNLEtIekVKLGtCR2tGRixNQVRNLGNIekVKLGtCR2tGRixNQVRNLGVIekVKLGtCR2tGRixNQVRNLElIekVKLGtCR2tGRixNQVRNLGVIekVKLGtCR2tGRixNQVRNLGVIekVKLGtCR2tGRixNQVRNLElIekVKLGtCR2tGRixNQVRNLGVIekVKLGtCR2tGRixNQVRNLGVIekVKLGtCR2tGRixNQVRNLElIekVKLG1CR2tGRixNQVRNLGVIekVKLG1CR2tGRixNQVRNLGVIekVKLG1CR2tGRixNQVRNLE1DZUYsMENKNUdGLG9CRzJESixXQTJDRSxNQVRNLEtIeEZOLHFPR3NERixjSGhESSxzQkcyRkYsTUFUTSxLSHpFSixpQkdrRkYsTUFUTSxjSHpFSixpQkdrRkYsTUFUTSxlSHpFSixpQkdrRkYsTUFUTSxJSHpFSixpQkdrRkYsTUFUTSxlSHpFSixpQkdrRkYsTUFUTSxlSHpFSixpQkdrRkYsTUFUTSxJSHpFSixpQkdrRkYsTUFUTSxlSHpFSixpQkdrRkYsTUFUTSxlSHpFSixpQkdrRkYsTUFUTSxJSHpFSixrQkdrRkYsTUFUTSxlSHpFSixrQkdrRkYsTUFUTSxlSHpFSixrQkdrRkYsTUFUTSxNSGpFUixrQ0FDRSxXQUlGLGtDQUNFLFlBOEJGLGVDOUZJLDJDRGtHRixxQkdrQ0EsTUFUTSxvQkYzSEoseUNEc0VKLHFCRzhERSxNQVRNLEtIakRSLHVCRzBERSxNQVRNLEtIekNOLHdCR2tEQSxNQVRNLDZCSHpDTix3QkdrREEsTUFUTSw4Qkh6Q04sd0JHa0RBLE1BVE0sbUJIekNOLHdCR2tEQSxNQVRNLDhCSHpDTix3QkdrREEsTUFUTSw4Qkh6Q04sd0JHa0RBLE1BVE0sbUJIekNOLHdCR2tEQSxNQVRNLDhCSHpDTix3QkdrREEsTUFUTSw4Qkh6Q04sd0JHa0RBLE1BVE0sbUJIekNOLHlCR2tEQSxNQVRNLDhCSHpDTix5QkdrREEsTUFUTSw4Qkh6Q04seUJHa0RBLE1BVE0sb0JDZUYsMENKcEVOLDRCRzhERSxNQVRNLEtIakRSLDhCRzBERSxNQVRNLEtIekNOLHlCR2tEQSxNQVRNLDZCSHpDTix5QkdrREEsTUFUTSw4Qkh6Q04seUJHa0RBLE1BVE0sbUJIekNOLHlCR2tEQSxNQVRNLDhCSHpDTix5QkdrREEsTUFUTSw4Qkh6Q04seUJHa0RBLE1BVE0sbUJIekNOLHlCR2tEQSxNQVRNLDhCSHpDTix5QkdrREEsTUFUTSw4Qkh6Q04seUJHa0RBLE1BVE0sbUJIekNOLDBCR2tEQSxNQVRNLDhCSHpDTiwwQkdrREEsTUFUTSw4Qkh6Q04sMEJHa0RBLE1BVE0scUJDZUYsMENKcEVOLDJCRzhERSxNQVRNLEtIakRSLDZCRzBERSxNQVRNLEtIekNOLHdCR2tEQSxNQVRNLDZCSHpDTix3QkdrREEsTUFUTSw4Qkh6Q04sd0JHa0RBLE1BVE0sbUJIekNOLHdCR2tEQSxNQVRNLDhCSHpDTix3QkdrREEsTUFUTSw4Qkh6Q04sd0JHa0RBLE1BVE0sbUJIekNOLHdCR2tEQSxNQVRNLDhCSHpDTix3QkdrREEsTUFUTSw4Qkh6Q04sd0JHa0RBLE1BVE0sbUJIekNOLHlCR2tEQSxNQVRNLDhCSHpDTix5QkdrREEsTUFUTSw4Qkh6Q04seUJHa0RBLE1BVE0scUJIVU4sZ0NDcklFLDJDRDJJRiwyQ0MzSUUsMkNEZ0pGLHNCQ2hKRSwyQ0lUSixrQkY2SUUsTUFUTSxLRXBJUixrQkY2SUUsTUFUTSxJRXBJUixrQkY2SUUsTUFUTSxlRXBJUixrQkY2SUUsTUFUTSxJRXBJUixrQkY2SUUsTUFUTSxJRXBJUixrQkY2SUUsTUFUTSxlRXBJUixrQkY2SUUsTUFUTSxlRXBJUixrQkY2SUUsTUFUTSxNQ2VGLDBDQ25KTixtQkY2SUUsTUFUTSxLRXBJUixtQkY2SUUsTUFUTSxJRXBJUixtQkY2SUUsTUFUTSxlRXBJUixtQkY2SUUsTUFUTSxJRXBJUixtQkY2SUUsTUFUTSxJRXBJUixtQkY2SUUsTUFUTSxlRXBJUixtQkY2SUUsTUFUTSxlRXBJUixtQkY2SUUsTUFUTSxPQ2VGLDBDQ25KTixrQkY2SUUsTUFUTSxLRXBJUixrQkY2SUUsTUFUTSxJRXBJUixrQkY2SUUsTUFUTSxlRXBJUixrQkY2SUUsTUFUTSxJRXBJUixrQkY2SUUsTUFUTSxJRXBJUixrQkY2SUUsTUFUTSxlRXBJUixrQkY2SUUsTUFUTSxlRXBJUixrQkY2SUUsTUFUTSxPRXBJUixnQ0Y2SUUsTUFUTSxvQkVwSVIsZ0NGNklFLE1BVE0sbUJFcElSLGdDRjZJRSxNQVRNLDhCRXBJUixnQ0Y2SUUsTUFUTSxtQkVwSVIsZ0NGNklFLE1BVE0sbUJFcElSLGdDRjZJRSxNQVRNLDhCRXBJUixnQ0Y2SUUsTUFUTSw4QkVwSVIsZ0NGNklFLE1BVE0scUJDZUYsMENDbkpOLGlDRjZJRSxNQVRNLG9CRXBJUixpQ0Y2SUUsTUFUTSxtQkVwSVIsaUNGNklFLE1BVE0sOEJFcElSLGlDRjZJRSxNQVRNLG1CRXBJUixpQ0Y2SUUsTUFUTSxtQkVwSVIsaUNGNklFLE1BVE0sOEJFcElSLGlDRjZJRSxNQVRNLDhCRXBJUixpQ0Y2SUUsTUFUTSxzQkNlRiwwQ0NuSk4sZ0NGNklFLE1BVE0sb0JFcElSLGdDRjZJRSxNQVRNLG1CRXBJUixnQ0Y2SUUsTUFUTSw4QkVwSVIsZ0NGNklFLE1BVE0sbUJFcElSLGdDRjZJRSxNQVRNLG1CRXBJUixnQ0Y2SUUsTUFUTSw4QkVwSVIsZ0NGNklFLE1BVE0sOEJFcElSLGdDRjZJRSxNQVRNLHNCSG1FSix1Qk05TUUsNkJBR0YsNkJBRUksNkJBc0JFLGdDSHlIUixNQVRNLGNHaEhFLGdDSHlIUixNQVRNLGVHaEhFLGdDSHlIUixNQVRNLElHaEhFLGdDSHlIUixNQVRNLGVHaEhFLGdDSHlIUixNQVRNLGVHaEhFLGdDSHlIUixNQVRNLElHaEhFLGdDSHlIUixNQVRNLGVHaEhFLGdDSHlIUixNQVRNLGVHaEhFLGdDSHlIUixNQVRNLElHaEhFLGlDSHlIUixNQVRNLGVHaEhFLGlDSHlIUixNQVRNLGVHaEhFLGlDSHlIUixNQVRNLEtDZUYsMENFL0hJLGlDSHlIUixNQVRNLGNHaEhFLGlDSHlIUixNQVRNLGVHaEhFLGlDSHlIUixNQVRNLElHaEhFLGlDSHlIUixNQVRNLGVHaEhFLGlDSHlIUixNQVRNLGVHaEhFLGlDSHlIUixNQVRNLElHaEhFLGlDSHlIUixNQVRNLGVHaEhFLGlDSHlIUixNQVRNLGVHaEhFLGlDSHlIUixNQVRNLElHaEhFLGtDSHlIUixNQVRNLGVHaEhFLGtDSHlIUixNQVRNLGVHaEhFLGtDSHlIUixNQVRNLE1DZUYsMENFL0hJLGdDSHlIUixNQVRNLGNHaEhFLGdDSHlIUixNQVRNLGVHaEhFLGdDSHlIUixNQVRNLElHaEhFLGdDSHlIUixNQVRNLGVHaEhFLGdDSHlIUixNQVRNLGVHaEhFLGdDSHlIUixNQVRNLElHaEhFLGdDSHlIUixNQVRNLGVHaEhFLGdDSHlIUixNQVRNLGVHaEhFLGdDSHlIUixNQVRNLElHaEhFLGlDSHlIUixNQVRNLGVHaEhFLGlDSHlIUixNQVRNLGVHaEhFLGlDSHlIUixNQVRNLE1IeUVKLHdCTTdLRSw2QkFHRiw4QkFFSSwrQkY4R0YsMENKb0RGLHdCTTlNRSw2QkFHRiw4QkFFSSw4QkZxSkYsMENFeElJLGlDSGtJUixNQVRNLGNHekhFLGlDSGtJUixNQVRNLGVHekhFLGlDSGtJUixNQVRNLElHekhFLGlDSGtJUixNQVRNLGVHekhFLGlDSGtJUixNQVRNLGVHekhFLGlDSGtJUixNQVRNLElHekhFLGlDSGtJUixNQVRNLGVHekhFLGlDSGtJUixNQVRNLGVHekhFLGlDSGtJUixNQVRNLElHekhFLGtDSGtJUixNQVRNLGVHekhFLGtDSGtJUixNQVRNLGVHekhFLGtDSGtJUixNQVRNLE1DZUYsMENFL0hJLGtDSHlIUixNQVRNLGNHaEhFLGtDSHlIUixNQVRNLGVHaEhFLGtDSHlIUixNQVRNLElHaEhFLGtDSHlIUixNQVRNLGVHaEhFLGtDSHlIUixNQVRNLGVHaEhFLGtDSHlIUixNQVRNLElHaEhFLGtDSHlIUixNQVRNLGVHaEhFLGtDSHlIUixNQVRNLGVHaEhFLGtDSHlIUixNQVRNLElHaEhFLG1DSHlIUixNQVRNLGVHaEhFLG1DSHlIUixNQVRNLGVHaEhFLG1DSHlIUixNQVRNLE1DZUYsMENFL0hJLGlDSHlIUixNQVRNLGNHaEhFLGlDSHlIUixNQVRNLGVHaEhFLGlDSHlIUixNQVRNLElHaEhFLGlDSHlIUixNQVRNLGVHaEhFLGlDSHlIUixNQVRNLGVHaEhFLGlDSHlIUixNQVRNLElHaEhFLGlDSHlIUixNQVRNLGVHaEhFLGlDSHlIUixNQVRNLGVHaEhFLGlDSHlIUixNQVRNLElHaEhFLGtDSHlIUixNQVRNLGVHaEhFLGtDSHlIUixNQVRNLGVHaEhFLGtDSHlIUixNQVRNLE1DZUYsMENKMERGLHlCTTdLRSw2QkFHRiwrQkFFSSxnQ0Y4R0YsMENKb0RGLHVCTTlNRSw2QkFHRiw2QkFFSSw4QkZxSkYsMENFeElJLGdDSGtJUixNQVRNLGNHekhFLGdDSGtJUixNQVRNLGVHekhFLGdDSGtJUixNQVRNLElHekhFLGdDSGtJUixNQVRNLGVHekhFLGdDSGtJUixNQVRNLGVHekhFLGdDSGtJUixNQVRNLElHekhFLGdDSGtJUixNQVRNLGVHekhFLGdDSGtJUixNQVRNLGVHekhFLGdDSGtJUixNQVRNLElHekhFLGlDSGtJUixNQVRNLGVHekhFLGlDSGtJUixNQVRNLGVHekhFLGlDSGtJUixNQVRNLE1DZUYsMENFeElJLGlDSGtJUixNQVRNLGNHekhFLGlDSGtJUixNQVRNLGVHekhFLGlDSGtJUixNQVRNLElHekhFLGlDSGtJUixNQVRNLGVHekhFLGlDSGtJUixNQVRNLGVHekhFLGlDSGtJUixNQVRNLElHekhFLGlDSGtJUixNQVRNLGVHekhFLGlDSGtJUixNQVRNLGVHekhFLGlDSGtJUixNQVRNLElHekhFLGtDSGtJUixNQVRNLGVHekhFLGtDSGtJUixNQVRNLGVHekhFLGtDSGtJUixNQVRNLE1DZUYsMENFL0hJLGdDSHlIUixNQVRNLGNHaEhFLGdDSHlIUixNQVRNLGVHaEhFLGdDSHlIUixNQVRNLElHaEhFLGdDSHlIUixNQVRNLGVHaEhFLGdDSHlIUixNQVRNLGVHaEhFLGdDSHlIUixNQVRNLElHaEhFLGdDSHlIUixNQVRNLGVHaEhFLGdDSHlIUixNQVRNLGVHaEhFLGdDSHlIUixNQVRNLElHaEhFLGlDSHlIUixNQVRNLGVHaEhFLGlDSHlIUixNQVRNLGVHaEhFLGlDSHlIUixNQVRNLE1DZUYsMENKMERGLHdCTTdLRSw2QkFHRiw4QkFFSSxnQ05zTEosZ0JPbk1GLGVQdU1FLCtCT3ZNRixrQ1BtTUUsZ0JPbk1GLDBCUHVNRSwrQk92TUYsNkNQbU1FLGdCT25NRiwyQlB1TUUsK0JPdk1GLDhDUG1NRSxnQk9uTUYsZ0JQdU1FLCtCT3ZNRixtQ1BtTUUsZ0JPbk1GLDJCUHVNRSwrQk92TUYsOENQbU1FLGdCT25NRiwyQlB1TUUsK0JPdk1GLDhDUG1NRSxnQk9uTUYsZ0JQdU1FLCtCT3ZNRixtQ1BtTUUsZ0JPbk1GLDJCUHVNRSwrQk92TUYsOENQbU1FLGdCT25NRiwyQlB1TUUsK0JPdk1GLDhDUG1NRSxnQk9uTUYsZ0JQdU1FLCtCT3ZNRixtQ1BtTUUsaUJPbk1GLDJCUHVNRSxnQ092TUYsOENQbU1FLGlCT25NRiwyQlB1TUUsZ0NPdk1GLDhDSDJISSwwQ0p3RUYsaUJPbk1GLGVQdU1FLGdDT3ZNRixrQ1BtTUUsaUJPbk1GLDBCUHVNRSxnQ092TUYsNkNQbU1FLGlCT25NRiwyQlB1TUUsZ0NPdk1GLDhDUG1NRSxpQk9uTUYsZ0JQdU1FLGdDT3ZNRixtQ1BtTUUsaUJPbk1GLDJCUHVNRSxnQ092TUYsOENQbU1FLGlCT25NRiwyQlB1TUUsZ0NPdk1GLDhDUG1NRSxpQk9uTUYsZ0JQdU1FLGdDT3ZNRixtQ1BtTUUsaUJPbk1GLDJCUHVNRSxnQ092TUYsOENQbU1FLGlCT25NRiwyQlB1TUUsZ0NPdk1GLDhDUG1NRSxpQk9uTUYsZ0JQdU1FLGdDT3ZNRixtQ1BtTUUsa0JPbk1GLDJCUHVNRSxpQ092TUYsOENQbU1FLGtCT25NRiwyQlB1TUUsaUNPdk1GLCtDSDJISSwwQ0p3RUYsZ0JPbk1GLGVQdU1FLCtCT3ZNRixrQ1BtTUUsZ0JPbk1GLDBCUHVNRSwrQk92TUYsNkNQbU1FLGdCT25NRiwyQlB1TUUsK0JPdk1GLDhDUG1NRSxnQk9uTUYsZ0JQdU1FLCtCT3ZNRixtQ1BtTUUsZ0JPbk1GLDJCUHVNRSwrQk92TUYsOENQbU1FLGdCT25NRiwyQlB1TUUsK0JPdk1GLDhDUG1NRSxnQk9uTUYsZ0JQdU1FLCtCT3ZNRixtQ1BtTUUsZ0JPbk1GLDJCUHVNRSwrQk92TUYsOENQbU1FLGdCT25NRiwyQlB1TUUsK0JPdk1GLDhDUG1NRSxnQk9uTUYsZ0JQdU1FLCtCT3ZNRixtQ1BtTUUsaUJPbk1GLDJCUHVNRSxnQ092TUYsOENQbU1FLGlCT25NRiwyQlB1TUUsZ0NPdk1GLCtDUHlORixRRS9PQSxhQUNBLHdCRmtQRSxjR3JJRixZQUNBLGdCSHdJRSxjRzVHQSxPQVRNLEtIeUhOLGdCR2hIQSxPQVRNLEtIdUlKLHlQQUNFLGdCSXpIQSwwQ0p3SEYsdVFBQ0UsaUJJekhBLDBDSndIRix5UEFDRSxpQkFZRiwrTUd0TEosY0hxTU0saUJHMUpKLE9BVE0sY0htS0YsaUJHMUpKLE9BVE0sZUhtS0YsaUJHMUpKLE9BVE0sSUhtS0YsaUJHMUpKLE9BVE0sZUhtS0YsaUJHMUpKLE9BVE0sZUhtS0YsaUJHMUpKLE9BVE0sSUhtS0YsaUJHMUpKLE9BVE0sZUhtS0YsaUJHMUpKLE9BVE0sZUhtS0YsaUJHMUpKLE9BVE0sSUhtS0Ysa0JHMUpKLE9BVE0sZUhtS0Ysa0JHMUpKLE9BVE0sZUhtS0Ysa0JHMUpKLE9BVE0sS0NlRiwwQ0pnSUEscUJHakxOLFdBMkNFLE9BVE0sS0hvSkosa1BHdExKLGNINExNLHVCR2pKSixPQVRNLEtIbUtGLGtCRzFKSixPQVRNLGNIbUtGLGtCRzFKSixPQVRNLGVIbUtGLGtCRzFKSixPQVRNLElIbUtGLGtCRzFKSixPQVRNLGVIbUtGLGtCRzFKSixPQVRNLGVIbUtGLGtCRzFKSixPQVRNLElIbUtGLGtCRzFKSixPQVRNLGVIbUtGLGtCRzFKSixPQVRNLGVIbUtGLGtCRzFKSixPQVRNLElIbUtGLG1CRzFKSixPQVRNLGVIbUtGLG1CRzFKSixPQVRNLGVIbUtGLG1CRzFKSixPQVRNLE1DZUYsMENKZ0lBLG9CR2pMTixXQTJDRSxPQVRNLEtIb0pKLHFPR3RMSixjSDRMTSxzQkdqSkosT0FUTSxLSG1LRixpQkcxSkosT0FUTSxjSG1LRixpQkcxSkosT0FUTSxlSG1LRixpQkcxSkosT0FUTSxJSG1LRixpQkcxSkosT0FUTSxlSG1LRixpQkcxSkosT0FUTSxlSG1LRixpQkcxSkosT0FUTSxJSG1LRixpQkcxSkosT0FUTSxlSG1LRixpQkcxSkosT0FUTSxlSG1LRixpQkcxSkosT0FUTSxJSG1LRixrQkcxSkosT0FUTSxlSG1LRixrQkcxSkosT0FUTSxlSG1LRixrQkcxSkosT0FUTSxNSCtLSixnQ0MxU0EsMkNEK1NBLHNCQy9TQSwyQ0Q4RkosZUM5RkksMkNEa0dGLHFCR2tDQSxPQVRNLG9CRjNISix5Q0RzRUoscUJHOERFLE9BVE0sS0hqRFIsdUJHMERFLE9BVE0sS0h6Q04sd0JHa0RBLE9BVE0sNkJIekNOLHdCR2tEQSxPQVRNLDhCSHpDTix3QkdrREEsT0FUTSxtQkh6Q04sd0JHa0RBLE9BVE0sOEJIekNOLHdCR2tEQSxPQVRNLDhCSHpDTix3QkdrREEsT0FUTSxtQkh6Q04sd0JHa0RBLE9BVE0sOEJIekNOLHdCR2tEQSxPQVRNLDhCSHpDTix3QkdrREEsT0FUTSxtQkh6Q04seUJHa0RBLE9BVE0sOEJIekNOLHlCR2tEQSxPQVRNLDhCSHpDTix5QkdrREEsT0FUTSxvQkNlRiwwQ0pwRU4sNEJHOERFLE9BVE0sS0hqRFIsOEJHMERFLE9BVE0sS0h6Q04seUJHa0RBLE9BVE0sNkJIekNOLHlCR2tEQSxPQVRNLDhCSHpDTix5QkdrREEsT0FUTSxtQkh6Q04seUJHa0RBLE9BVE0sOEJIekNOLHlCR2tEQSxPQVRNLDhCSHpDTix5QkdrREEsT0FUTSxtQkh6Q04seUJHa0RBLE9BVE0sOEJIekNOLHlCR2tEQSxPQVRNLDhCSHpDTix5QkdrREEsT0FUTSxtQkh6Q04sMEJHa0RBLE9BVE0sOEJIekNOLDBCR2tEQSxPQVRNLDhCSHpDTiwwQkdrREEsT0FUTSxxQkNlRiwwQ0pwRU4sMkJHOERFLE9BVE0sS0hqRFIsNkJHMERFLE9BVE0sS0h6Q04sd0JHa0RBLE9BVE0sNkJIekNOLHdCR2tEQSxPQVRNLDhCSHpDTix3QkdrREEsT0FUTSxtQkh6Q04sd0JHa0RBLE9BVE0sOEJIekNOLHdCR2tEQSxPQVRNLDhCSHpDTix3QkdrREEsT0FUTSxtQkh6Q04sd0JHa0RBLE9BVE0sOEJIekNOLHdCR2tEQSxPQVRNLDhCSHpDTix3QkdrREEsT0FUTSxtQkh6Q04seUJHa0RBLE9BVE0sOEJIekNOLHlCR2tEQSxPQVRNLDhCSHpDTix5QkdrREEsT0FUTSxxQkhrTVIsWVFwVkUsZ0JBQ0Esa0JBQ0EsaUJBQ0Esb0JBbUNJLFlSa1ROLGtCQUNFLFdBR0YsWVFuU0UsZ0JBQ0EsZUFHRixpQ0FDQSw0Q1JrU0EsY1EzU0UsZ0JBQ0EsZ0JBQ0EsZ0JBTUYsaUNBQ0EsNENSdVNBLHNCUWhTQSxhQUNBLHNCQUNBLGdCQUVBLDhCQUNFLGdCQUNBLGlCSnNGSSwwQ0oyTUosbUJRNVdBLGdCQUNBLGtCQUNBLGlCQUNBLG9CQW1DSSxZUjBVSix5QkFDRSxXQUdGLG1CUTNUQSxnQkFDQSxlQUdGLGlDQUNBLDRDUjBURSw2QlFuVEYsYUFDQSxzQkFDQSxnQkFFQSxxQ0FDRSxnQkFDQSxpQlJpVEEscUJRdlVBLGdCQUNBLGdCQUNBLGdCQU1GLGlDQUNBLDZDSm1HTSwwQ0oyTUosa0JRNVdBLGdCQUNBLGtCQUNBLGlCQUNBLG9CQW1DSSxZUjBVSix3QkFDRSxXQUdGLGtCUTNUQSxnQkFDQSxlQUdGLGlDQUNBLDRDUjBURSw0QlFuVEYsYUFDQSxzQkFDQSxnQkFFQSxvQ0FDRSxnQkFDQSxpQlJpVEEsb0JRdlVBLGdCQUNBLGdCQUNBLGdCQU1GLGlDQUNBLDZDUnFVSSxtQlFuWUYsZ0JBQ0Esa0JBQ0EsaUJBQ0Esb0JBaUNJLGFSaVdBLFdJcE9BLDBDSndPQSwwQlF6WUosZ0JBQ0Esa0JBQ0EsaUJBQ0Esb0JBaUNJLGFSdVdFLFlJMU9GLDBDSndPQSx5QlF6WUosZ0JBQ0Esa0JBQ0EsaUJBQ0Esb0JBaUNJLGFSdVdFLFlBTUoseUJBQ0UsWUlqUEEsMENKb1BBLGdDQUNFLGFJclBGLDBDSm9QQSwrQkFDRSxhQWpTUixlQzlGSSwyQ0RrR0YscUJHa0NBLE9BVE0sb0JGM0hKLHlDRHNFSixxQkc4REUsT0FUTSxLSGpEUix1QkcwREUsT0FUTSxLSHpDTix3QkdrREEsT0FUTSw2Qkh6Q04sd0JHa0RBLE9BVE0sOEJIekNOLHdCR2tEQSxPQVRNLG1CSHpDTix3QkdrREEsT0FUTSw4Qkh6Q04sd0JHa0RBLE9BVE0sOEJIekNOLHdCR2tEQSxPQVRNLG1CSHpDTix3QkdrREEsT0FUTSw4Qkh6Q04sd0JHa0RBLE9BVE0sOEJIekNOLHdCR2tEQSxPQVRNLG1CSHpDTix5QkdrREEsT0FUTSw4Qkh6Q04seUJHa0RBLE9BVE0sOEJIekNOLHlCR2tEQSxPQVRNLG9CQ2VGLDBDSnBFTiw0Qkc4REUsT0FUTSxLSGpEUiw4QkcwREUsT0FUTSxLSHpDTix5QkdrREEsT0FUTSw2Qkh6Q04seUJHa0RBLE9BVE0sOEJIekNOLHlCR2tEQSxPQVRNLG1CSHpDTix5QkdrREEsT0FUTSw4Qkh6Q04seUJHa0RBLE9BVE0sOEJIekNOLHlCR2tEQSxPQVRNLG1CSHpDTix5QkdrREEsT0FUTSw4Qkh6Q04seUJHa0RBLE9BVE0sOEJIekNOLHlCR2tEQSxPQVRNLG1CSHpDTiwwQkdrREEsT0FUTSw4Qkh6Q04sMEJHa0RBLE9BVE0sOEJIekNOLDBCR2tEQSxPQVRNLHFCQ2VGLDBDSnBFTiwyQkc4REUsT0FUTSxLSGpEUiw2QkcwREUsT0FUTSxLSHpDTix3QkdrREEsT0FUTSw2Qkh6Q04sd0JHa0RBLE9BVE0sOEJIekNOLHdCR2tEQSxPQVRNLG1CSHpDTix3QkdrREEsT0FUTSw4Qkh6Q04sd0JHa0RBLE9BVE0sOEJIekNOLHdCR2tEQSxPQVRNLG1CSHpDTix3QkdrREEsT0FUTSw4Qkh6Q04sd0JHa0RBLE9BVE0sOEJIekNOLHdCR2tEQSxPQVRNLG1CSHpDTix5QkdrREEsT0FUTSw4Qkh6Q04seUJHa0RBLE9BVE0sOEJIekNOLHlCR2tEQSxPQVRNLHFCSDJRTiwwQlF0WUksNEJKMElBLDBDSmdRRixpQ1ExWUUsNkJKMElBLDBDSmdRRixnQ1ExWUUsNkJDaUNKLFlDbkJGLGdCQWhCUSxXRG1DTixhQ25CRixnQkFoQlEsU0RtQ04sY0NuQkYsZ0JBaEJRLE9EbUNOLGVDbkJGLGdCQWhCUSxjRG1DTixjQ25CRixnQkFoQlEsYUQ0Q0YsK0JDNUJOLGdCQWhCUSxXRDRDRixnQ0M1Qk4sZ0JBaEJRLFNENENGLGlDQzVCTixnQkFoQlEsT0RxRE4sV0NwQ0YsWUFSUSxXRGdETixnQkN4QkYsV0FQUSxXRDJCTixjQ3BDRixZQVJRLFNEZ0ROLG1CQ3hCRixXQVBRLFNEMkJOLGNDcENGLFlBUlEsT0RnRE4sbUJDeEJGLFdBUFEsT0QyQk4sZUNwQ0YsWUFSUSxRRGdETixvQkN4QkYsV0FQUSxRRHFDUixxQkMvQ0EsZ0JBaEJRLE9BaUJSLFlBUlEsT0R3RE4scUJBTUUsZUNoQ0osTUQrQmUsRUFDWCxlQ2hDSixNRCtCZSxFQUNYLGVDaENKLE1EK0JlLEVBQ1gsZUNoQ0osTUQrQmUsRUFDWCxlQ2hDSixNRCtCZSxFQUNYLGVDaENKLE1EK0JlLEVMc0VULDBDS3JFRixnQkNoQ0osTUQrQmUsRUFDWCxnQkNoQ0osTUQrQmUsRUFDWCxnQkNoQ0osTUQrQmUsRUFDWCxnQkNoQ0osTUQrQmUsRUFDWCxnQkNoQ0osTUQrQmUsRUFDWCxnQkNoQ0osTUQrQmUsR0xzRVQsMENLckVGLGVDaENKLE1EK0JlLEVBQ1gsZUNoQ0osTUQrQmUsRUFDWCxlQ2hDSixNRCtCZSxFQUNYLGVDaENKLE1EK0JlLEVBQ1gsZUNoQ0osTUQrQmUsRUFDWCxlQ2hDSixNRCtCZSxHQTVGZixnQkNZQSxhRFJBLGlCQUNFLGNBR0YsaUJBQ0UsY0FHRixtQkFDRSxjQUlBLGNDc0RGLGVBcEVtQixJRGNqQixzQkNzREYsZUFwRW1CLFlEY2pCLGlCQ3NERixlQXBFbUIsT0RjakIseUJDc0RGLGVBcEVtQixlTitKYiwwQ0t2SUUsdUJDZlIsYURtQlEsd0JBQ0UsY0FHRix3QkFDRSxjQUdGLDBCQUNFLGNBSUEscUJDMkJWLGVBcEVtQixJRHlDVCw2QkMyQlYsZUFwRW1CLFlEeUNULHdCQzJCVixlQXBFbUIsT0R5Q1QsZ0NDMkJWLGVBcEVtQixnQk4rSmIsMENLdklFLHNCQ2ZSLGFEbUJRLHVCQUNFLGNBR0YsdUJBQ0UsY0FHRix5QkFDRSxjQUlBLG9CQzJCVixlQXBFbUIsSUR5Q1QsNEJDMkJWLGVBcEVtQixZRHlDVCx1QkMyQlYsZUFwRW1CLE9EeUNULCtCQzJCVixlQXBFbUIsZ0JDNENuQixNQUNFLHdCQUdGLFdBQ0Usa0JBRUYsU0FDRSxtQlAyR0ksZ0RPNUZKLHFCQTdCQSx5QkFuQkEsZ0VBb0RBLHFCQW5ERSx5QlAySUUsMENPckdGLGlCQTVCRix5QlBzSUksMENPdEdGLGlCQXBFRix5QlBxS0kscUVPNUZKLHNCQTdCQSx5QkFuQkEsdUVBb0RBLHNCQW5ERSx5QlAySUUsMENPckdGLGdCQTVCRix5QlBzSUksMENPdEdGLGdCQXBFRix5QlBxS0kscUVPNUZKLHFCQTdCQSx5QkFuQkEsdUVBb0RBLHFCQW5ERSx5QkEwREosNEJac0hBLDZCQUNBLHFCQUNBLHNCQUNBLHFCQUNBLDJCQUNBLGlDQUNBLDhCQUNBLG9CWXRIRSwyQ1pnSUYsMkJBQ0Esc0JBQ0EsdUJBQ0EsNEJBQ0EscUJBQ0EsOEJZOUhBLHVDQUVFLHlCUHNFSSwyQ094RU4sdUNBS0ksMEJQbUVFLDBDT3hFTix1Q0FTSSx5QkFJSix1Q0FFRSx3QlB5REksMkNPM0ROLHVDQUtJLHlCUHNERSwwQ08zRE4sdUNBU0ksMEJBS0osb0JBQ0UsYUFFRixvQkFDRSxjQUVGLCtDQUNFLG9CQUNFLHlCQUVGLG9CQUNFLHlCQUtKLGFBQ0UsYUFFRixxRUFDRSxhQUNFLHlCQUVGLGFBQ0UseUJBS0osaUJBQ0UsYUFFRiwyQkFDRSxjQUVGLDJCQUNFLGFDL0tKLFdBQ0ksb0JBQ0Esc0NBQ0Esd0JBQ0EsOENBQ0EsZ0NBQ0EsbURBRUosb0NBQ0ksd0JBRUosb0NBQ0kseUJBRUosb0NBQ0ksd0JBRUosb0NBQ0kseUJBRUosb0NBQ0ksd0JBRUosb0NBQ0kseUJBRUosb0NBQ0ksd0JBRUosb0NBQ0kseUJBRUosb0NBQ0ksd0JBRUosb0NBQ0kseUJBRUosb0NBQ0ksd0JBRUosb0NBQ0kseUJBRUosb0NBQ0ksd0JBRUosb0NBQ0kseUJBRUosb0NBQ0ksd0JBRUosb0NBQ0kseUJBRUoscUNBQ0ksdUJBRUoscUNBQ0ksMEJBRUoscUNBQ0kseUJBRUoscUNBQ0ksMEJBRUoscUNBQ0kseUJBRUoscUNBQ0ksMEJBRUoscUNBQ0kseUJBRUoscUNBQ0ksMEJBRUoscUNBQ0kseUJBRUoscUNBQ0ksMEJBRUoscUNBQ0kseUJBRUoscUNBQ0ksMEJBRUoscUNBQ0kseUJBRUoscUNBQ0ksMEJBRUoscUNBQ0kseUJBRUoscUNBQ0ksMEJBRUoscUNBQ0kseUJBRUoscUNBQ0ksMEJBRUoscUNBQ0kseUJBRUoscUNBQ0ksMEJBRUoscUNBQ0ksdUJBRUosZ0NBQ0ksc0JBRUosaUNBQ0kscUJBRUosaUNBQ0ksc0JBRUosaUNBQ0kscUJBRUosaUNBQ0ksc0JBRUosaUNBQ0kscUJBRUosaUNBQ0ksc0JBRUosaUNBQ0kscUJBRUosaUNBQ0ksc0JBRUosaUNBQ0kscUJBRUosaUNBQ0ksc0JBRUosaUNBQ0kscUJBRUosaUNBQ0ksc0JBRUosaUNBQ0kscUJBRUosaUNBQ0ksc0JBRUosaUNBQ0kscUJBRUosaUNBQ0ksc0JBRUosaUNBQ0kscUJBRUosaUNBQ0ksc0JBRUosa0NBQ0ksb0JBRUosbUNBQ0ksa0NBRUosaUNBQ0ksZ0NBRUosb0NBQ0ksbUNBRUoscUNBQ0ksb0NBRUosd0NBQ0ksdUNBRUosMENBQ0ksa0VBRUosMkNBQ0ksK0RBRUosOENBQ0ksZ0VBRUoseUNBQ0ksZ0VBRUosMENBQ0ksK0RBRUosNkNBQ0ksa0VBRUoseUNBQ0ksa0VBRUosMENBQ0ksMERBRUosNkNBQ0ksb0RBRUos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Y2Uge1xuICAgIGZvbnQtZmFtaWx5OiBcIk9wZW4gU2F1Y2UgVHdvXCI7XG4gICAgc3JjOlxuICAgICAgICB1cmwoXCIuLi9mb250cy9vcGVuLXNhdWNlLXR3by9vcGVuLXNhdWNlLXR3by0zMDAtbm9ybWFsLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLFxuICAgICAgICB1cmwoXCIuLi9mb250cy9vcGVuLXNhdWNlLXR3by9vcGVuLXNhdWNlLXR3by0zMDAtbm9ybWFsLndvZmZcIikgZm9ybWF0KFwid29mZlwiKTtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LWRpc3BsYXk6IHN3YXA7XG59XG5cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiBcIk9wZW4gU2F1Y2UgVHdvXCI7XG4gICAgc3JjOlxuICAgICAgICB1cmwoXCIuLi9mb250cy9vcGVuLXNhdWNlLXR3by9vcGVuLXNhdWNlLXR3by0zMDAtaXRhbGljLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLFxuICAgICAgICB1cmwoXCIuLi9mb250cy9vcGVuLXNhdWNlLXR3by9vcGVuLXNhdWNlLXR3by0zMDAtaXRhbGljLndvZmZcIikgZm9ybWF0KFwid29mZlwiKTtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBmb250LWRpc3BsYXk6IHN3YXA7XG59XG5cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiBcIk9wZW4gU2F1Y2UgVHdvXCI7XG4gICAgc3JjOlxuICAgICAgICB1cmwoXCIuLi9mb250cy9vcGVuLXNhdWNlLXR3by9vcGVuLXNhdWNlLXR3by00MDAtbm9ybWFsLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLFxuICAgICAgICB1cmwoXCIuLi9mb250cy9vcGVuLXNhdWNlLXR3by9vcGVuLXNhdWNlLXR3by00MDAtbm9ybWFsLndvZmZcIikgZm9ybWF0KFwid29mZlwiKTtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LWRpc3BsYXk6IHN3YXA7XG59XG5cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiBcIk9wZW4gU2F1Y2UgVHdvXCI7XG4gICAgc3JjOlxuICAgICAgICB1cmwoXCIuLi9mb250cy9vcGVuLXNhdWNlLXR3by9vcGVuLXNhdWNlLXR3by00MDAtaXRhbGljLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLFxuICAgICAgICB1cmwoXCIuLi9mb250cy9vcGVuLXNhdWNlLXR3by9vcGVuLXNhdWNlLXR3by00MDAtaXRhbGljLndvZmZcIikgZm9ybWF0KFwid29mZlwiKTtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBmb250LWRpc3BsYXk6IHN3YXA7XG59XG4uYWNmLWJsb2NrLXByZXZpZXcsXG4jdGlueW1jZSxcbjpyb290IHtcbiAgICAtLWJvZHktZm9udDogXCJPcGVuIFNhdWNlIFR3b1wiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgIC0taGVhZGVyLWZvbnQ6IFwiT3BlbiBTYXVjZSBUd29cIiwgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICAtLWJvZHktbGluZS1oZWlnaHQ6IDEuMztcbiAgICAtLWhlYWRlci1saW5lLWhlaWdodDogMS4yO1xuICAgIC0td2VpZ2h0LWxpZ2h0OiAzMDA7XG4gICAgLS13ZWlnaHQtbm9ybWFsOiAzMDA7XG4gICAgLS13ZWlnaHQtYm9sZDogNDAwOyAvLyBPbmx5IDMwMCAmIDQwMCBsb2FkZWQg4oCTIHVzZSA0MDAgZm9yIFwiYm9sZFwiIGNvbnRleHRzXG4gICAgLS1oZWFkaW5nLXRyYWNraW5nOiAwLjAyZW07IC8vIDAuNTZweCBhdCAyOHB4LCBjb25zaXN0ZW50IGFjcm9zcyBhbGwgdGV4dCBzaXplcyBpbiBkZXNpZ25cblxuICAgIC0taGVhZGVyLWhlaWdodDogNTRweDsgLy8gRmlnbWEgbmF2IGhlaWdodFxuICAgIC0tbGluZTogMXB4IHNvbGlkIHZhcigtLWFiYy1ibGFjayk7XG5cbiAgICAtLWVhc2luZzogY3ViaWMtYmV6aWVyKDAuMjMsIDEsIDAuMzIsIDEpO1xuICAgIC0tc2FsLWVhc2luZzogY3ViaWMtYmV6aWVyKDAuMjMsIDEsIDAuMzIsIDEpO1xuICAgIC0tc2FsLWR1cmF0aW9uOiAxMDAwbXM7XG4gICAgLS1zYWwtZGVsYXk6IDM1MG1zO1xuICAgIC0tc2l6ZS1taW51czM6IDAuNjI1cmVtO1xuICAgIC0tc2l6ZS1taW51czI6IDAuNzA3cmVtO1xuICAgIC0tc2l6ZS1taW51czE6IDAuODc1cmVtO1xuICAgIC0tc2l6ZTogMTZweDtcbiAgICAtLXNpemUtcGx1czA6ICN7JGJhc2UgKiBtYXRoLnBvdygkdHlwZXNjYWxlLCAwKX07XG4gICAgLS1zaXplLXBsdXMxOiAjeyRiYXNlICogbWF0aC5wb3coJHR5cGVzY2FsZSwgMSl9O1xuICAgIC0tc2l6ZS1wbHVzMjogI3skYmFzZSAqIG1hdGgucG93KCR0eXBlc2NhbGUsIDIpfTtcbiAgICAtLXNpemUtcGx1czM6ICN7JGJhc2UgKiBtYXRoLnBvdygkdHlwZXNjYWxlLCAzKX07XG4gICAgLS1zaXplLXBsdXM0OiAjeyRiYXNlICogbWF0aC5wb3coJHR5cGVzY2FsZSwgNCl9O1xuICAgIC0tc2l6ZS1wbHVzNTogI3skYmFzZSAqIG1hdGgucG93KCR0eXBlc2NhbGUsIDUpfTtcbiAgICAtLXNpemUtcGx1czY6ICN7JGJhc2UgKiBtYXRoLnBvdygkdHlwZXNjYWxlLCA2KX07XG4gICAgLS1zaXplLXBsdXM3OiAjeyRiYXNlICogbWF0aC5wb3coJHR5cGVzY2FsZSwgNyl9O1xuICAgIC0tc2l6ZS1wbHVzODogI3skYmFzZSAqIG1hdGgucG93KCR0eXBlc2NhbGUsIDgpfTtcbiAgICAtLXNpemUtcGx1czk6ICN7JGJhc2UgKiBtYXRoLnBvdygkdHlwZXNjYWxlLCA5KX07XG4gICAgLS1zaXplLXBsdXMxMDogI3skYmFzZSAqIG1hdGgucG93KCR0eXBlc2NhbGUsIDEwKX07XG5cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bS1icmVha3BvaW50KSB7XG4gICAgICAgIC0tc2l6ZS1wbHVzMDogI3skYmFzZXZ3ICogbWF0aC5wb3coJHR5cGVzY2FsZSwgMCl9O1xuICAgICAgICAtLXNpemUtcGx1czE6ICN7JGJhc2V2dyAqIG1hdGgucG93KCR0eXBlc2NhbGUsIDEpfTtcbiAgICAgICAgLS1zaXplLXBsdXMyOiAjeyRiYXNldncgKiBtYXRoLnBvdygkdHlwZXNjYWxlLCAyKX07XG4gICAgICAgIC0tc2l6ZS1wbHVzMzogI3skYmFzZXZ3ICogbWF0aC5wb3coJHR5cGVzY2FsZSwgMyl9O1xuICAgICAgICAtLXNpemUtcGx1czQ6ICN7JGJhc2V2dyAqIG1hdGgucG93KCR0eXBlc2NhbGUsIDQpfTtcbiAgICAgICAgLS1zaXplLXBsdXM1OiAjeyRiYXNldncgKiBtYXRoLnBvdygkdHlwZXNjYWxlLCA1KX07XG4gICAgICAgIC0tc2l6ZS1wbHVzNjogI3skYmFzZXZ3ICogbWF0aC5wb3coJHR5cGVzY2FsZSwgNil9O1xuICAgICAgICAtLXNpemUtcGx1czc6ICN7JGJhc2V2dyAqIG1hdGgucG93KCR0eXBlc2NhbGUsIDcpfTtcbiAgICAgICAgLS1zaXplLXBsdXM4OiAjeyRiYXNldncgKiBtYXRoLnBvdygkdHlwZXNjYWxlLCA4KX07XG4gICAgICAgIC0tc2l6ZS1wbHVzOTogI3skYmFzZXZ3ICogbWF0aC5wb3coJHR5cGVzY2FsZSwgOSl9O1xuICAgICAgICAtLXNpemUtcGx1czEwOiAjeyRiYXNldncgKiBtYXRoLnBvdygkdHlwZXNjYWxlLCAxMCl9O1xuICAgIH1cblxuICAgIC0tYWJjLWJsYWNrOiAjMjYyMzIzOyAvLyBQcmltYXJ5IHRleHQgLyBEZWZhdWx0IG5hdiBiZ1xuICAgIC0tYWJjLW9mZi13aGl0ZTogI2Y5ZjdmNzsgLy8gRGVmYXVsdCBwYWdlIGJhY2tncm91bmQgLyBsaWdodCB0ZXh0IG9uIGRhcmtcbiAgICAtLXBsYXN0ZXItYjogI2ZmYTE3ZTsgLy8gV2FybSBjb3JhbCAg4oCTIFdoYXQgV2UgRG8gJiBGb290ZXIgYWNjZW50IC8gYWN0aXZlIG5hdiBsaW5rXG4gICAgLS1ncmVlbi1hOiAjZWJlYWQ0OyAvLyBQYWxlIHNhZ2UgICAg4oCTIEltcGFjdCBzZWN0aW9uIGJhY2tncm91bmRcbiAgICAtLWdyZWVuLWI6ICM5OTk3MDA7IC8vIE9saXZlICAgICAgICDigJMgTmV3cyAvIEJsb2cgYWNjZW50XG4gICAgLS1ncmVlbi1jOiAjNDAzZjEwOyAvLyBEYXJrIG9saXZlICAg4oCTIEZvb3RlciBiZyAvIEFib3V0IHVzIG5hdiBvdmVybGF5XG4gICAgLS1zdW4tYjogI2ZmYWUwMDsgLy8gQW1iZXIgICAgICAgIOKAkyBQcm9qZWN0cyBzZWN0aW9uIGFjY2VudFxuICAgIC0tc3VuLWM6ICM0ZDM0MDA7IC8vIERlZXAgYW1iZXIgICDigJMgUHJvamVjdHMgbmF2IG92ZXJsYXlcbiAgICAtLXdpbmUtYTogI2ZhZWFlNztcbiAgICAtLXdpbmUtYjogI2QwNmI3ZjsgLy8gRHVzdHkgcm9zZSAgIOKAkyBJbXBhY3QgYWNjZW50XG4gICAgLS13aW5lLWM6ICM0ZDI3MmY7IC8vIERlZXAgYnVyZ3VuZHkg4oCTIFNlcnZpY2VzIG5hdiBvdmVybGF5XG4gICAgLS1ibHVlLWE6ICNlOWY3Zjg7IC8vIFBhbGUgdGVhbCAgICDigJMgSW1wYWN0IHNlY3Rpb24gYWNjZW50XG4gICAgLS1ibHVlLWI6ICM2ZGM3Y2Y7IC8vIERhcmsgdGVhbCAgICDigJMgSW1wYWN0IG5hdiBvdmVybGF5XG4gICAgLS1ibHVlLWM6ICMyNTMxMzM7IC8vIERhcmsgdGVhbCAgICDigJMgSW1wYWN0IG5hdiBvdmVybGF5XG4gICAgLS1ibGFjay0xNTogI2Q5ZDlkOTsgLy8gMTUlIGJsYWNrIHNvbGlkIOKAkyBsaXN0IGJvcmRlcnNcblxuICAgIC0tYmc6IHZhcigtLWFiYy1vZmYtd2hpdGUpO1xuICAgIC0tcGFnZWJnOiB2YXIoLS1hYmMtb2ZmLXdoaXRlKTtcbiAgICAtLWJsYWNrOiB2YXIoLS1hYmMtYmxhY2spO1xuICAgIC0td2hpdGU6IHZhcigtLWFiYy1vZmYtd2hpdGUpO1xuICAgIC0tcHVyZXdoaXRlOiAjZmZmZmZmO1xuICAgIC0tcHVyZWJsYWNrOiAjMDAwMDAwO1xuXG4gICAgLS10aGVtZS1iZzogdmFyKC0tYWJjLW9mZi13aGl0ZSk7XG4gICAgLS10aGVtZS1mZzogdmFyKC0tYWJjLWJsYWNrKTtcbiAgICAtLXRoZW1lLWFjY2VudDogdmFyKC0tcGxhc3Rlci1iKTtcbn1cbltkYXRhLXRoZW1lXSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtYmcpO1xuICAgIGNvbG9yOiB2YXIoLS10aGVtZS1mZyk7XG59XG5bZGF0YS10aGVtZT1cImFiYy1vZmYtd2hpdGVcIl0sXG5bZGF0YS10aGVtZT1cIm9mZi13aGl0ZVwiXSB7XG4gICAgLS10aGVtZS1iZzogdmFyKC0tYWJjLW9mZi13aGl0ZSk7XG4gICAgLS10aGVtZS1mZzogdmFyKC0tYWJjLWJsYWNrKTtcbiAgICAtLXRoZW1lLWFjY2VudDogdmFyKC0tcGxhc3Rlci1iKTtcbn1cblxuW2RhdGEtdGhlbWU9XCJwbGFzdGVyLWJcIl0ge1xuICAgIC0tdGhlbWUtYmc6IHZhcigtLXBsYXN0ZXItYik7XG4gICAgLS10aGVtZS1mZzogdmFyKC0tYWJjLWJsYWNrKTtcbiAgICAtLXRoZW1lLWFjY2VudDogdmFyKC0tYWJjLWJsYWNrKTtcbn1cblxuW2RhdGEtdGhlbWU9XCJncmVlbi1hXCJdIHtcbiAgICAtLXRoZW1lLWJnOiB2YXIoLS1ncmVlbi1hKTtcbiAgICAtLXRoZW1lLWxpZ2h0OiB2YXIoLS1ncmVlbi1hKTtcbiAgICAtLXRoZW1lLWZnOiB2YXIoLS1hYmMtYmxhY2spO1xuICAgIC0tdGhlbWUtYWNjZW50OiB2YXIoLS1ncmVlbi1iKTtcbn1cblxuW2RhdGEtdGhlbWU9XCJncmVlbi1iXCJdIHtcbiAgICAtLXRoZW1lLWJnOiB2YXIoLS1ncmVlbi1iKTtcbiAgICAtLXRoZW1lLWxpZ2h0OiB2YXIoLS1ncmVlbi1hKTtcbiAgICAtLXRoZW1lLWZnOiB2YXIoLS1hYmMtb2ZmLXdoaXRlKTtcbiAgICAtLXRoZW1lLWFjY2VudDogdmFyKC0tcGxhc3Rlci1iKTtcbiAgICAtLWxpbmU6IDFweCBzb2xpZCByZ2JhKDI0OSwgMjQ3LCAyNDcsIDAuMik7XG59XG5cbltkYXRhLXRoZW1lPVwid2luZS1iXCJdIHtcbiAgICAtLXRoZW1lLWJnOiB2YXIoLS13aW5lLWIpO1xuICAgIC0tdGhlbWUtZmc6IHZhcigtLWFiYy1ibGFjayk7XG4gICAgLS10aGVtZS1hY2NlbnQ6IHZhcigtLWFiYy1ibGFjayk7XG59XG5bZGF0YS10aGVtZT1cImFiYy1ibGFja1wiXSxcbltkYXRhLXRoZW1lPVwiYmxhY2tcIl0ge1xuICAgIC0tdGhlbWUtYmc6IHZhcigtLWFiYy1ibGFjayk7XG4gICAgLS10aGVtZS1mZzogdmFyKC0tYWJjLW9mZi13aGl0ZSk7XG4gICAgLS10aGVtZS1hY2NlbnQ6IHZhcigtLXBsYXN0ZXItYik7XG4gICAgLS1saW5lOiAxcHggc29saWQgcmdiYSgyNDksIDI0NywgMjQ3LCAwLjIpO1xufVxuXG5bZGF0YS10aGVtZT1cImdyZWVuLWNcIl0ge1xuICAgIC0tdGhlbWUtYmc6IHZhcigtLWdyZWVuLWMpO1xuICAgIC0tdGhlbWUtZmc6IHZhcigtLWFiYy1vZmYtd2hpdGUpO1xuICAgIC0tdGhlbWUtYWNjZW50OiB2YXIoLS1wbGFzdGVyLWIpO1xuICAgIC0tdGhlbWUtbGlnaHQ6IHZhcigtLWdyZWVuLWIpO1xuICAgIC0tbGluZTogMXB4IHNvbGlkIHJnYmEoMjQ5LCAyNDcsIDI0NywgMC4yKTtcbn1cblxuW2RhdGEtdGhlbWU9XCJ3aW5lLWNcIl0ge1xuICAgIC0tdGhlbWUtYmc6IHZhcigtLXdpbmUtYyk7XG4gICAgLS10aGVtZS1iZ2FsdDogdmFyKC0td2luZS1hKTtcbiAgICAtLXRoZW1lLWZnOiB2YXIoLS1hYmMtb2ZmLXdoaXRlKTtcbiAgICAtLXRoZW1lLWFjY2VudDogdmFyKC0tcGxhc3Rlci1iKTtcbiAgICAtLWxpbmU6IDFweCBzb2xpZCByZ2JhKDI0OSwgMjQ3LCAyNDcsIDAuMik7XG59XG5cbltkYXRhLXRoZW1lPVwic3VuLWJcIl0ge1xuICAgIC0tdGhlbWUtYmc6IHZhcigtLXN1bi1iKTtcbiAgICAtLXRoZW1lLWZnOiB2YXIoLS1hYmMtb2ZmLXdoaXRlKTtcbiAgICAtLXRoZW1lLWFjY2VudDogdmFyKC0tcGxhc3Rlci1iKTtcbiAgICAtLWxpbmU6IDFweCBzb2xpZCByZ2JhKDI0OSwgMjQ3LCAyNDcsIDAuMik7XG59XG5bZGF0YS10aGVtZT1cInN1bi1jXCJdIHtcbiAgICAtLXRoZW1lLWJnOiB2YXIoLS1zdW4tYyk7XG4gICAgLS10aGVtZS1mZzogdmFyKC0tYWJjLW9mZi13aGl0ZSk7XG4gICAgLS10aGVtZS1hY2NlbnQ6IHZhcigtLXBsYXN0ZXItYik7XG4gICAgLS1saW5lOiAxcHggc29saWQgcmdiYSgyNDksIDI0NywgMjQ3LCAwLjIpO1xufVxuXG5bZGF0YS10aGVtZT1cImJsdWUtYVwiXSB7XG4gICAgLS10aGVtZS1iZzogdmFyKC0tYmx1ZS1hKTtcbiAgICAtLXRoZW1lLWZnOiB2YXIoLS1hYmMtYmxhY2spO1xuICAgIC0tdGhlbWUtYWNjZW50OiB2YXIoLS1ibHVlLWIpO1xufVxuXG5bZGF0YS10aGVtZT1cImJsdWUtYlwiXSB7XG4gICAgLS10aGVtZS1iZzogdmFyKC0tYmx1ZS1iKTtcbiAgICAtLXRoZW1lLWZnOiB2YXIoLS1hYmMtYmxhY2spO1xuICAgIC0tdGhlbWUtYWNjZW50OiB2YXIoLS1ibHVlLWMpO1xufVxuXG5bZGF0YS10aGVtZT1cImJsdWUtY1wiXSB7XG4gICAgLS10aGVtZS1iZzogdmFyKC0tYmx1ZS1jKTtcbiAgICAtLXRoZW1lLWJnYWx0OiB2YXIoLS1ibHVlLWEpOyAvLyBGb3IgYmxvY2tzIHRoYXQgbmVlZCBhIGxpZ2h0ZXIgYmcgdmFyaWFudCB3aXRoaW4gdGhlIHNhbWUgdGhlbWVcbiAgICAtLXRoZW1lLWZnOiB2YXIoLS1hYmMtb2ZmLXdoaXRlKTtcbiAgICAtLXRoZW1lLWFjY2VudDogdmFyKC0tYmx1ZS1iKTtcbiAgICAtLWxpbmU6IDFweCBzb2xpZCByZ2JhKDI0OSwgMjQ3LCAyNDcsIDAuMik7XG59XG4uYnRuLFxuLmJ1dHRvbi5ob2xsb3cge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgcGFkZGluZzogMC42MjVlbSAxLjg3NWVtO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXRoZW1lLWFjY2VudCwgdmFyKC0tcGxhc3Rlci1iKSk7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBmb250LWZhbWlseTogdmFyKC0tYm9keS1mb250KTtcbiAgICBmb250LXdlaWdodDogdmFyKC0td2VpZ2h0LWJvbGQpO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tc2l6ZS1taW51czEpO1xuICAgIGxldHRlci1zcGFjaW5nOiB2YXIoLS1oZWFkaW5nLXRyYWNraW5nKTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgY29sb3I6IHZhcigtLWFiYy1ibGFjayk7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHRyYW5zaXRpb246XG4gICAgICAgIGJhY2tncm91bmQtY29sb3IgMC4zcyB2YXIoLS1lYXNpbmcpLFxuICAgICAgICBjb2xvciAwLjNzIHZhcigtLWVhc2luZyksXG4gICAgICAgIGJvcmRlci1jb2xvciAwLjNzIHZhcigtLWVhc2luZyksXG4gICAgICAgIGJvcmRlci1yYWRpdXMgMC4zcyB2YXIoLS1lYXNpbmcpO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWFjY2VudCwgdmFyKC0tcGxhc3Rlci1iKSk7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1hYmMtYmxhY2spO1xuICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLXRoZW1lLWFjY2VudCwgdmFyKC0tcGxhc3Rlci1iKSk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwcHg7XG4gICAgfVxuXG4gICAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICB9XG59XG4iLCIvLyBzYXNzLWxpbnQ6ZGlzYWJsZSBuby12ZW5kb3ItcHJlZml4ZXNcblxuQG1peGluIGZvdW5kYXRpb24tbm9ybWFsaXplKCkge1xuICAvKiEgbm9ybWFsaXplLmNzcyB2OC4wLjAgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzICovXG5cbiAgLy8gRG9jdW1lbnRcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyAxLiBDb3JyZWN0IHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMuXG4gIC8vIDIuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW4gaU9TLlxuXG4gIGh0bWwge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE1OyAvLyAxXG4gICAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvLyAyXG4gIH1cblxuICAvLyBTZWN0aW9uc1xuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2Vycy5cblxuICBib2R5IHtcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuICAvLyBDb3JyZWN0IHRoZSBmb250IHNpemUgYW5kIG1hcmdpbiBvbiBgaDFgIGVsZW1lbnRzIHdpdGhpbiBgc2VjdGlvbmAgYW5kXG4gIC8vIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXG5cbiAgaDEge1xuICAgIGZvbnQtc2l6ZTogMmVtO1xuICAgIG1hcmdpbjogMC42N2VtIDA7XG4gIH1cblxuICAvLyBHcm91cGluZyBjb250ZW50XG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAgLy8gMi4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZSBhbmQgSUUuXG5cbiAgaHIge1xuICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvLyAxXG4gICAgaGVpZ2h0OiAwOyAvLyAxXG4gICAgb3ZlcmZsb3c6IHZpc2libGU7IC8vIDJcbiAgfVxuXG4gIC8vIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gIC8vIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cblxuICBwcmUge1xuICAgIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLy8gMVxuICAgIGZvbnQtc2l6ZTogMWVtOyAvLyAyXG4gIH1cblxuICAvLyBUZXh0LWxldmVsIHNlbWFudGljc1xuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cblxuICBhIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuXG4gIC8vIDEuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBDaHJvbWUgNTctXG4gIC8vIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuXG5cbiAgYWJiclt0aXRsZV0ge1xuICAgIGJvcmRlci1ib3R0b206IDA7IC8vIDFcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IC8vIDJcbiAgfVxuXG4gIC8vIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkuXG5cbiAgYixcbiAgc3Ryb25nIHtcbiAgICBmb250LXdlaWdodDogYm9sZGVyO1xuICB9XG5cbiAgLy8gMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAgLy8gMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuXG4gIGNvZGUsXG4gIGtiZCxcbiAgc2FtcCB7XG4gICAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvLyAxXG4gICAgZm9udC1zaXplOiAxZW07IC8vIDJcbiAgfVxuXG4gIC8vIEFkZCB0aGUgY29ycmVjdCBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuXG4gIHNtYWxsIHtcbiAgICBmb250LXNpemU6IDgwJTtcbiAgfVxuXG4gIC8vIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuICAvLyBhbGwgYnJvd3NlcnMuXG5cbiAgc3ViLFxuICBzdXAge1xuICAgIGZvbnQtc2l6ZTogNzUlO1xuICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIH1cblxuICBzdWIge1xuICAgIGJvdHRvbTogLTAuMjVlbTtcbiAgfVxuXG4gIHN1cCB7XG4gICAgdG9wOiAtMC41ZW07XG4gIH1cblxuICAvLyBFbWJlZGRlZCBjb250ZW50XG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC5cblxuICBpbWcge1xuICAgIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgfVxuXG4gIC8vIEZvcm1zXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gMS4gQ2hhbmdlIHRoZSBmb250IHN0eWxlcyBpbiBhbGwgYnJvd3NlcnMuXG4gIC8vIDIuIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaS5cblxuICBidXR0b24sXG4gIGlucHV0LFxuICBvcHRncm91cCxcbiAgc2VsZWN0LFxuICB0ZXh0YXJlYSB7XG4gICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7IC8vIDFcbiAgICBmb250LXNpemU6IDEwMCU7IC8vIDFcbiAgICBsaW5lLWhlaWdodDogMS4xNTsgLy8gMVxuICAgIG1hcmdpbjogMDsgLy8gMlxuICB9XG5cbiAgLy8gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gIC8vIDEuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UuXG5cbiAgYnV0dG9uLFxuICBpbnB1dCB7IC8vIDFcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgfVxuXG4gIC8vIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRWRnZSwgRmlyZWZveCwgYW5kIElFLlxuICAvLyAxLiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3guXG5cbiAgYnV0dG9uLFxuICBzZWxlY3QgeyAvLyAxXG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIH1cblxuICAvLyBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuXG4gIGJ1dHRvbixcbiAgW3R5cGU9XCJidXR0b25cIl0sXG4gIFt0eXBlPVwicmVzZXRcIl0sXG4gIFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgfVxuXG4gIC8vIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGluIEZpcmVmb3guXG5cbiAgYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuICBbdHlwZT1cImJ1dHRvblwiXTo6LW1vei1mb2N1cy1pbm5lcixcbiAgW3R5cGU9XCJyZXNldFwiXTo6LW1vei1mb2N1cy1pbm5lcixcbiAgW3R5cGU9XCJzdWJtaXRcIl06Oi1tb3otZm9jdXMtaW5uZXIge1xuICAgIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgLy8gUmVzdG9yZSB0aGUgZm9jdXMgc3R5bGVzIHVuc2V0IGJ5IHRoZSBwcmV2aW91cyBydWxlLlxuXG4gIGJ1dHRvbjotbW96LWZvY3VzcmluZyxcbiAgW3R5cGU9XCJidXR0b25cIl06LW1vei1mb2N1c3JpbmcsXG4gIFt0eXBlPVwicmVzZXRcIl06LW1vei1mb2N1c3JpbmcsXG4gIFt0eXBlPVwic3VibWl0XCJdOi1tb3otZm9jdXNyaW5nIHtcbiAgICBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7XG4gIH1cblxuICAvLyBDb3JyZWN0IHRoZSBwYWRkaW5nIGluIEZpcmVmb3guXG5cbiAgZmllbGRzZXQge1xuICAgIHBhZGRpbmc6IDAuMzVlbSAwLjc1ZW0gMC42MjVlbTtcbiAgfVxuXG4gIC8vIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXG4gIC8vIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cbiAgLy8gMy4gUmVtb3ZlIHRoZSBwYWRkaW5nIHNvIGRldmVsb3BlcnMgYXJlIG5vdCBjYXVnaHQgb3V0IHdoZW4gdGhleSB6ZXJvIG91dFxuICAvLyAgICBgZmllbGRzZXRgIGVsZW1lbnRzIGluIGFsbCBicm93c2Vycy5cblxuICBsZWdlbmQge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8vIDFcbiAgICBjb2xvcjogaW5oZXJpdDsgLy8gMlxuICAgIGRpc3BsYXk6IHRhYmxlOyAvLyAxXG4gICAgbWF4LXdpZHRoOiAxMDAlOyAvLyAxXG4gICAgcGFkZGluZzogMDsgLy8gM1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7IC8vIDFcbiAgfVxuXG4gIC8vIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG5cbiAgcHJvZ3Jlc3Mge1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgfVxuXG4gIC8vIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUgMTArLlxuXG4gIHRleHRhcmVhIHtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgfVxuXG4gIC8vIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLlxuICAvLyAyLiBSZW1vdmUgdGhlIHBhZGRpbmcgaW4gSUUgMTAuXG5cbiAgW3R5cGU9XCJjaGVja2JveFwiXSxcbiAgW3R5cGU9XCJyYWRpb1wiXSB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLy8gMVxuICAgIHBhZGRpbmc6IDA7IC8vIDJcbiAgfVxuXG4gIC8vIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cblxuICBbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbiAgW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuXG4gIC8vIDEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSBhbmQgU2FmYXJpLlxuICAvLyAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cblxuICBbdHlwZT1cInNlYXJjaFwiXSB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8vIDFcbiAgICBvdXRsaW5lLW9mZnNldDogLTJweDsgLy8gMlxuICB9XG5cbiAgLy8gUmVtb3ZlIHRoZSBpbm5lciBwYWRkaW5nIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLlxuXG4gIFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIH1cblxuICAvLyAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICAvLyAyLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBTYWZhcmkuXG5cbiAgOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8vIDFcbiAgICBmb250OiBpbmhlcml0OyAvLyAyXG4gIH1cblxuICAvLyBJbnRlcmFjdGl2ZVxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIEVkZ2UsIElFIDEwKywgYW5kIEZpcmVmb3guXG5cbiAgZGV0YWlscyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnMuXG5cbiAgc3VtbWFyeSB7XG4gICAgZGlzcGxheTogbGlzdC1pdGVtO1xuICB9XG5cbiAgLy8gTWlzY1xuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwKy5cblxuICB0ZW1wbGF0ZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC8vIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwLlxuXG4gIFtoaWRkZW5dIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLy8gRGlzYWJsZSBvdXRsaW5lIHdoZW4gaW50ZW50IGlzIGNsZWFybHkgbW91c2UgYW5kIHRvdWNoXG4gIFtkYXRhLXdoYXRpbnRlbnQ9XCJtb3VzZVwiXSxcbiAgW2RhdGEtd2hhdGludGVudD1cInRvdWNoXCJdLFxuICBbZGF0YS13aGF0aW5wdXQ9XCJtb3VzZVwiXSxcbiAgW2RhdGEtd2hhdGlucHV0PVwidG91Y2hcIl0ge1xuICAgICosICo6Zm9jdXMge1xuICAgICAgb3V0bGluZTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAvLyBEaXNhYmxlIGlPUyBjYWxsb3V0cyB3aGVuIGRyYWdnYWJsZSBpcyBmYWxzZVxuICBbZHJhZ2dhYmxlPWZhbHNlXSB7XG4gICAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xuICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8gc2Fzcy1saW50OmRpc2FibGUgbm8tY29sb3ItbGl0ZXJhbHMsIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcblxuLy8vL1xuLy8vIEBncm91cCBnbG9iYWxcbi8vLy9cblxuQGltcG9ydCAndXRpbC91dGlsJztcblxuLy8vIEZvbnQgc2l6ZSBhdHRyaWJ1dGUgYXBwbGllZCB0byBgPGh0bWw+YCBhbmQgYDxib2R5PmAuIFdlIHVzZSAxMDAlIGJ5IGRlZmF1bHQgc28gdGhlIHZhbHVlIGlzIGluaGVyaXRlZCBmcm9tIHRoZSB1c2VyJ3MgYnJvd3NlciBzZXR0aW5ncy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtZm9udC1zaXplOiAxMDAlICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHdpZHRoIG9mIHlvdXIgc2l0ZS4gVXNlZCBieSB0aGUgZ3JpZCB0byBkZXRlcm1pbmUgcm93IHdpZHRoLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC13aWR0aDogcmVtLWNhbGMoMTIwMCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGxpbmUgaGVpZ2h0IGZvciBhbGwgdHlwZS4gYCRnbG9iYWwtbGluZWhlaWdodGAgaXMgMjRweCB3aGlsZSBgJGdsb2JhbC1mb250LXNpemVgIGlzIDE2cHhcbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtbGluZWhlaWdodDogMS41ICFkZWZhdWx0O1xuXG4vLy8gQ29sb3JzIHVzZWQgZm9yIGJ1dHRvbnMsIGNhbGxvdXRzLCBsaW5rcywgZXRjLiBUaGVyZSBtdXN0IGFsd2F5cyBiZSBhIGNvbG9yIGNhbGxlZCBgcHJpbWFyeWAuXG4vLy8gQHR5cGUgTWFwXG4kZm91bmRhdGlvbi1wYWxldHRlOiAoXG4gIFwicHJpbWFyeVwiOiAjMTc3OWJhLFxuICBcInNlY29uZGFyeVwiOiAjNzY3Njc2LFxuICBcInN1Y2Nlc3NcIjogIzNhZGI3NixcbiAgXCJ3YXJuaW5nXCI6ICNmZmFlMDAsXG4gIFwiYWxlcnRcIjogI2NjNGIzNyxcbikgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciBsaWdodCBncmF5IFVJIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kbGlnaHQtZ3JheTogI2U2ZTZlNiAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIG1lZGl1bSBncmF5IFVJIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kbWVkaXVtLWdyYXk6ICNjYWNhY2EgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciBkYXJrIGdyYXkgVUkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRkYXJrLWdyYXk6ICM4YThhOGEgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciBibGFjayB1aSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJGJsYWNrOiAjMGEwYTBhICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3Igd2hpdGUgdWkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiR3aGl0ZTogI2ZlZmVmZSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJvZHkuXG4vLy8gQHR5cGUgQ29sb3JcbiRib2R5LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3Igb2YgdGhlIGJvZHkuXG4vLy8gQHR5cGUgQ29sb3JcbiRib2R5LWZvbnQtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc3RhY2sgb2YgdGhlIGJvZHkuXG4vLy8gQHR5cGUgTGlzdFxuJGJvZHktZm9udC1mYW1pbHk6ICdIZWx2ZXRpY2EgTmV1ZScsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZiAhZGVmYXVsdDtcblxuLy8vIFNldCB0byBgdHJ1ZWAgdG8gZW5hYmxlIHNhZmUgcGFkZGluZyBvbiB0aGUgYm9keSBmb3Igbm9uLXJlY3Rhbmd1bGFyIGRldmljZXMgKGkuZS4gcGhvbmVzIHdpdGggbm90Y2hlcylcbi8vLyBAdHlwZSBCb29sZWFuXG4kYm9keS1zYWZlLXBhZGRpbmc6IGZhbHNlICFkZWZhdWx0O1xuXG4vLy8gU2V0IHRvIGB0cnVlYCB0byBlbmFibGUgYW50aWFsaWFzZWQgdHlwZSwgdXNpbmcgdGhlIGAtd2Via2l0LWZvbnQtc21vb3RoaW5nYCBhbmQgYC1tb3otb3N4LWZvbnQtc21vb3RoaW5nYCBDU1MgcHJvcGVydGllcy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYm9keS1hbnRpYWxpYXNlZDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBtYXJnaW4gb24gY29tcG9uZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtbWFyZ2luOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIHBhZGRpbmcgb24gY29tcG9uZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBwb3NpdGlvbmluZyBvbiBjb21wb25lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1wb3NpdGlvbjogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCBmb250IHdlaWdodCB1c2VkIGZvciBub3JtYWwgdHlwZS5cbi8vLyBAdHlwZSBLZXl3b3JkIHwgTnVtYmVyXG4kZ2xvYmFsLXdlaWdodC1ub3JtYWw6IG5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCBmb250IHdlaWdodCB1c2VkIGZvciBib2xkIHR5cGUuXG4vLy8gQHR5cGUgS2V5d29yZCB8IE51bWJlclxuJGdsb2JhbC13ZWlnaHQtYm9sZDogYm9sZCAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBhbGwgZWxlbWVudHMgdGhhdCBoYXZlIGEgYm9yZGVyIHJhZGl1cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtcmFkaXVzOiAwICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIGFsbCBtZW51IHN0eWxlcy4gQ2FuIGJlIG92ZXJ3cml0dGVuIGF0IGluZGl2aWR1YWwgbWVudSBjb21wb25lbnQgbGV2ZWwuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLW1lbnUtcGFkZGluZzogMC43cmVtIDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgYWxsIG1lbnUgc3R5bGVzLiBOZXN0ZWQgbWFyZ2luIGZvciBzdWJtZW51LlxuJGdsb2JhbC1tZW51LW5lc3RlZC1tYXJnaW46IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIHRoZSB0ZXh0IGRpcmVjdGlvbiBvZiB0aGUgQ1NTLiBDYW4gYmUgZWl0aGVyIGBsdHJgIG9yIGBydGxgLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRnbG9iYWwtdGV4dC1kaXJlY3Rpb246IGx0ciAhZGVmYXVsdDtcblxuLy8vIEVuYWJsZXMgZmxleGJveCBmb3IgY29tcG9uZW50cyB0aGF0IHN1cHBvcnQgaXQuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGdsb2JhbC1mbGV4Ym94OiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gRW5hYmxlZCByZXNwb25zaXZlIGJyZWFrcG9pbnRzIGZvciBwcm90b3R5cGVzIGlmIGFwcGxpY2FibGVcbi8vLyBAdHlwZSBCb29sZWFuXG4kZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50czogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vLyBCdXR0b24gY3Vyc29yJ3MgdmFsdWUsIGBhdXRvYCBieSBkZWZhdWx0XG4vLy8gQHR5cGUgS2V5d29yZFxuJGdsb2JhbC1idXR0b24tY3Vyc29yOiBhdXRvICFkZWZhdWx0O1xuXG5AaWYgbm90IG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHByaW1hcnkpIHtcbiAgQGVycm9yICdJbiAkZm91bmRhdGlvbi1wYWxldHRlLCB5b3UgbXVzdCBoYXZlIGEgY29sb3IgbmFtZWQgXCJwcmltYXJ5XCIuJztcbn1cblxuLy8gSW50ZXJuYWwgdmFyaWFibGVzIHVzZWQgZm9yIHRleHQgZGlyZWN0aW9uXG4kZ2xvYmFsLWxlZnQ6IGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCByaWdodCwgbGVmdCk7XG4kZ2xvYmFsLXJpZ2h0OiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IHJ0bCwgbGVmdCwgcmlnaHQpO1xuXG4vLyBJbnRlcm5hbCB2YXJpYWJsZSB0aGF0IGNvbnRhaW5zIHRoZSBmbGV4IGp1c3RpZnlpbmcgb3B0aW9uc1xuJC16Zi1mbGV4LWp1c3RpZnk6IC16Zi1mbGV4LWp1c3RpZnkoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbik7XG5cbi8vLyBHbG9iYWwgdG9sZXJhbmNlIGZvciBjb2xvciBwaWNrIGNvbnRyYXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1jb2xvci1waWNrLWNvbnRyYXN0LXRvbGVyYW5jZTogMCAhZGVmYXVsdDtcblxuLy8gSW50ZXJuYWwgdmFyaWFibGVzIHVzZWQgZm9yIGNvbG9yc1xuQGluY2x1ZGUgYWRkLWZvdW5kYXRpb24tY29sb3JzO1xuXG5AbWl4aW4gZm91bmRhdGlvbi1nbG9iYWwtc3R5bGVzIHtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1ub3JtYWxpemU7XG5cbiAgLy8gVGhlc2Ugc3R5bGVzIGFyZSBhcHBsaWVkIHRvIGEgPG1ldGE+IHRhZywgd2hpY2ggaXMgcmVhZCBieSB0aGUgRm91bmRhdGlvbiBKYXZhU2NyaXB0XG4gIC5mb3VuZGF0aW9uLW1xIHtcbiAgICBmb250LWZhbWlseTogJyN7LXpmLWJwLXNlcmlhbGl6ZSgkYnJlYWtwb2ludHMpfSc7XG4gIH1cblxuICBodG1sIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGZvbnQtc2l6ZTogJGdsb2JhbC1mb250LXNpemU7XG4gIH1cblxuICAvLyBTZXQgYm94LXNpemluZyBnbG9iYWxseSB0byBoYW5kbGUgcGFkZGluZyBhbmQgYm9yZGVyIHdpZHRoc1xuICAqLFxuICAqOjpiZWZvcmUsXG4gICo6OmFmdGVyIHtcbiAgICBib3gtc2l6aW5nOiBpbmhlcml0O1xuICB9XG5cbiAgLy8gRGVmYXVsdCBib2R5IHN0eWxlc1xuICBib2R5IHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgIEBpZiAoJGJvZHktc2FmZS1wYWRkaW5nKSB7XG4gICAgICAvLyB1c2luZyBlbnZpcm9ubWVudCB2YXJpYWJsZXMgdG8gYWNjb3VudCBmb3Igbm9uLXJlY3Rhbmd1bGFyIGRpc3BsYXlzIGUuZy4gcGhvbmVzIHdpdGggbm90Y2hlc1xuICAgICAgcGFkZGluZy10b3A6IGVudihzYWZlLWFyZWEtaW5zZXQtdG9wKTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IGVudihzYWZlLWFyZWEtaW5zZXQtcmlnaHQpO1xuICAgICAgcGFkZGluZy1ib3R0b206IGVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tKTtcbiAgICAgIHBhZGRpbmctbGVmdDogZW52KHNhZmUtYXJlYS1pbnNldC1sZWZ0KTtcbiAgICB9XG5cbiAgICBiYWNrZ3JvdW5kOiAkYm9keS1iYWNrZ3JvdW5kO1xuXG4gICAgZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG4gICAgbGluZS1oZWlnaHQ6ICRnbG9iYWwtbGluZWhlaWdodDtcbiAgICBjb2xvcjogJGJvZHktZm9udC1jb2xvcjtcblxuICAgIEBpZiAoJGJvZHktYW50aWFsaWFzZWQpIHtcbiAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkOyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXZlbmRvci1wcmVmaXhlc1xuICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby12ZW5kb3ItcHJlZml4ZXNcbiAgICB9XG4gIH1cblxuICBpbWcge1xuICAgIC8vIEdldCByaWQgb2YgZ2FwIHVuZGVyIGltYWdlcyBieSBtYWtpbmcgdGhlbSBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IGJ5IGRlZmF1bHRcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuICAgIC8vIEdyaWQgZGVmYXVsdHMgdG8gZ2V0IGltYWdlcyBhbmQgZW1iZWRzIHRvIHdvcmsgcHJvcGVybHlcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIC1tcy1pbnRlcnBvbGF0aW9uLW1vZGU6IGJpY3ViaWM7XG4gIH1cblxuICAvLyBNYWtlIHN1cmUgdGV4dGFyZWEgdGFrZXMgb24gaGVpZ2h0IGF1dG9tYXRpY2FsbHlcbiAgdGV4dGFyZWEge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtaW4taGVpZ2h0OiA1MHB4O1xuICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICB9XG5cbiAgLy8gTWFrZSBzZWxlY3QgZWxlbWVudHMgYXJlIDEwMCUgd2lkdGggYnkgZGVmYXVsdFxuICBzZWxlY3Qge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gIH1cblxuICAvLyBTdHlsZXMgR29vZ2xlIE1hcHMgYW5kIE1hcFF1ZXN0IGVtYmVkcyBwcm9wZXJseVxuICAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLWlkc1xuICAubWFwX2NhbnZhcyxcbiAgLm1xYS1kaXNwbGF5IHtcbiAgICBpbWcsXG4gICAgZW1iZWQsXG4gICAgb2JqZWN0IHtcbiAgICAgIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC8vIFJlc2V0IDxidXR0b24+IHN0eWxlcyBjcmVhdGVkIGJ5IG1vc3QgYnJvd3NlcnNcbiAgYnV0dG9uIHtcbiAgICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gICAgcGFkZGluZzogMDtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBjdXJzb3I6ICRnbG9iYWwtYnV0dG9uLWN1cnNvcjtcbiAgfVxuXG4gIC8vIFByZXZlbnQgdGV4dCBvdmVyZmxvdyBvbiBwcmVcbiAgcHJlIHtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gIH1cblxuICAvLyBNYWtlIHJlc2V0IGluaGVyaXQgZm9udC1mYW1pbHkgaW5zdGVhZCBvZiBzZXR0aW5ncyBzYW5zLXNlcmlmXG4gIGJ1dHRvbixcbiAgaW5wdXQsXG4gIG9wdGdyb3VwLFxuICBzZWxlY3QsXG4gIHRleHRhcmVhIHtcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIEludGVybmFsIGNsYXNzZXMgdG8gc2hvdy9oaWRlIGVsZW1lbnRzIGluIEphdmFTY3JpcHRcbiAgLmlzLXZpc2libGUge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuaXMtaGlkZGVuIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuQGltcG9ydCAnbWF0aCc7XG5cbiR1bml0LXdhcm5pbmdzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8vXG4vLy8gQGdyb3VwIGZ1bmN0aW9uc1xuLy8vL1xuXG4kZ2xvYmFsLWZvbnQtc2l6ZTogMTAwJSAhZGVmYXVsdDtcblxuLy8vIFJlbW92ZXMgdGhlIHVuaXQgKGUuZy4gcHgsIGVtLCByZW0pIGZyb20gYSB2YWx1ZSwgcmV0dXJuaW5nIHRoZSBudW1iZXIgb25seS5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbnVtIC0gTnVtYmVyIHRvIHN0cmlwIHVuaXQgZnJvbS5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IFRoZSBzYW1lIG51bWJlciwgc2FucyB1bml0LlxuQGZ1bmN0aW9uIHN0cmlwLXVuaXQoJG51bSkge1xuICBAcmV0dXJuIGRpdmlkZSgkbnVtLCAkbnVtICogMCArIDEpO1xufVxuXG4vLy8gQ29udmVydHMgb25lIG9yIG1vcmUgcGl4ZWwgdmFsdWVzIGludG8gbWF0Y2hpbmcgcmVtIHZhbHVlcy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICR2YWx1ZXMgLSBPbmUgb3IgbW9yZSB2YWx1ZXMgdG8gY29udmVydC4gQmUgc3VyZSB0byBzZXBhcmF0ZSB0aGVtIHdpdGggc3BhY2VzIGFuZCBub3QgY29tbWFzLiBJZiB5b3UgbmVlZCB0byBjb252ZXJ0IGEgY29tbWEtc2VwYXJhdGVkIGxpc3QsIHdyYXAgdGhlIGxpc3QgaW4gcGFyZW50aGVzZXMuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYXNlIFtudWxsXSAtIFRoZSBiYXNlIHZhbHVlIHRvIHVzZSB3aGVuIGNhbGN1bGF0aW5nIHRoZSBgcmVtYC4gSWYgeW91J3JlIHVzaW5nIEZvdW5kYXRpb24gb3V0IG9mIHRoZSBib3gsIHRoaXMgaXMgMTZweC4gSWYgdGhpcyBwYXJhbWV0ZXIgaXMgYG51bGxgLCB0aGUgZnVuY3Rpb24gd2lsbCByZWZlcmVuY2UgdGhlIGAkZ2xvYmFsLWZvbnQtc2l6ZWAgdmFyaWFibGUgYXMgdGhlIGJhc2UuXG4vLy9cbi8vLyBAcmV0dXJucyB7TGlzdH0gQSBsaXN0IG9mIGNvbnZlcnRlZCB2YWx1ZXMuXG5AZnVuY3Rpb24gcmVtLWNhbGMoJHZhbHVlcywgJGJhc2U6IG51bGwpIHtcbiAgJHJlbS12YWx1ZXM6ICgpO1xuICAkY291bnQ6IGxlbmd0aCgkdmFsdWVzKTtcblxuICAvLyBJZiBubyBiYXNlIGlzIGRlZmluZWQsIGRlZmVyIHRvIHRoZSBnbG9iYWwgZm9udCBzaXplXG4gIEBpZiAkYmFzZSA9PSBudWxsIHtcbiAgICAkYmFzZTogJGdsb2JhbC1mb250LXNpemU7XG4gIH1cblxuICAvLyBJZiB0aGUgYmFzZSBmb250IHNpemUgaXMgYSAlLCB0aGVuIG11bHRpcGx5IGl0IGJ5IDE2cHhcbiAgLy8gVGhpcyBpcyBiZWNhdXNlIDEwMCUgZm9udCBzaXplID0gMTZweCBpbiBtb3N0IGFsbCBicm93c2Vyc1xuICBAaWYgdW5pdCgkYmFzZSkgPT0gJyUnIHtcbiAgICAkYmFzZTogZGl2aWRlKCRiYXNlLCAxMDAlKSAqIDE2cHg7XG4gIH1cblxuICAvLyBVc2luZyByZW0gYXMgYmFzZSBhbGxvd3MgY29ycmVjdCBzY2FsaW5nXG4gIEBpZiB1bml0KCRiYXNlKSA9PSAncmVtJyB7XG4gICAgJGJhc2U6IHN0cmlwLXVuaXQoJGJhc2UpICogMTZweDtcbiAgfVxuXG4gIEBpZiAkY291bnQgPT0gMSB7XG4gICAgQHJldHVybiAtemYtdG8tcmVtKCR2YWx1ZXMsICRiYXNlKTtcbiAgfVxuXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGNvdW50IHtcbiAgICAkcmVtLXZhbHVlczogYXBwZW5kKCRyZW0tdmFsdWVzLCAtemYtdG8tcmVtKG50aCgkdmFsdWVzLCAkaSksICRiYXNlKSk7XG4gIH1cblxuICBAcmV0dXJuICRyZW0tdmFsdWVzO1xufVxuXG4vLyBDb252ZXJ0cyBhIHVuaXRsZXNzLCBwaXhlbCwgb3IgcmVtIHZhbHVlIHRvIGVtLCBmb3IgdXNlIGluIGJyZWFrcG9pbnRzLlxuQGZ1bmN0aW9uIC16Zi1icC10by1lbSgkdmFsdWUpIHtcbiAgLy8gUGl4ZWwgYW5kIHVuaXRsZXNzIHZhbHVlcyBhcmUgY29udmVydGVkIHRvIHJlbXNcbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAncHgnIG9yIHVuaXRsZXNzKCR2YWx1ZSkge1xuICAgICR2YWx1ZTogcmVtLWNhbGMoJHZhbHVlLCAkYmFzZTogMTZweCk7XG4gIH1cblxuICAvLyBUaGVuIHRoZSB2YWx1ZSBpcyBjb252ZXJ0ZWQgdG8gZW1zXG4gIEByZXR1cm4gc3RyaXAtdW5pdCgkdmFsdWUpICogMWVtO1xufVxuXG4vLy8gQ29udmVydHMgYSBwaXhlbCB2YWx1ZSB0byBtYXRjaGluZyByZW0gdmFsdWUuICpBbnkqIHZhbHVlIHBhc3NlZCwgcmVnYXJkbGVzcyBvZiB1bml0LCBpcyBhc3N1bWVkIHRvIGJlIGEgcGl4ZWwgdmFsdWUuIEJ5IGRlZmF1bHQsIHRoZSBiYXNlIHBpeGVsIHZhbHVlIHVzZWQgdG8gY2FsY3VsYXRlIHRoZSByZW0gdmFsdWUgaXMgdGFrZW4gZnJvbSB0aGUgYCRnbG9iYWwtZm9udC1zaXplYCB2YXJpYWJsZS5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkdmFsdWUgLSBQaXhlbCB2YWx1ZSB0byBjb252ZXJ0LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFzZSBbbnVsbF0gLSBCYXNlIGZvciBwaXhlbCBjb252ZXJzaW9uLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gQSBudW1iZXIgaW4gcmVtcywgY2FsY3VsYXRlZCBiYXNlZCBvbiB0aGUgZ2l2ZW4gdmFsdWUgYW5kIHRoZSBiYXNlIHBpeGVsIHZhbHVlLiByZW0gdmFsdWVzIGFyZSBwYXNzZWQgdGhyb3VnaCBhcyBpcy5cbkBmdW5jdGlvbiAtemYtdG8tcmVtKCR2YWx1ZSwgJGJhc2U6IG51bGwpIHtcbiAgLy8gQ2hlY2sgaWYgdGhlIHZhbHVlIGlzIGEgbnVtYmVyXG4gIEBpZiB0eXBlLW9mKCR2YWx1ZSkgIT0gJ251bWJlcicge1xuICAgIEBpZiAkdW5pdC13YXJuaW5ncyB7XG4gICAgICBAd2FybiBpbnNwZWN0KCR2YWx1ZSkgKyAnIHdhcyBwYXNzZWQgdG8gcmVtLWNhbGMoKSwgd2hpY2ggaXMgbm90IGEgbnVtYmVyLic7XG4gICAgfVxuICAgIEByZXR1cm4gJHZhbHVlO1xuICB9XG5cbiAgLy8gVHJhbnNmb3JtIGVtIGludG8gcmVtIGlmIHNvbWVvbmUgaGFuZHMgb3ZlciAnZW0nc1xuICBAaWYgdW5pdCgkdmFsdWUpID09ICdlbScge1xuICAgICR2YWx1ZTogc3RyaXAtdW5pdCgkdmFsdWUpICogMXJlbTtcbiAgfVxuXG4gIC8vIENhbGN1bGF0ZSByZW0gaWYgdW5pdHMgZm9yICR2YWx1ZSBpcyBub3QgcmVtIG9yIGVtXG4gIEBpZiB1bml0KCR2YWx1ZSkgIT0gJ3JlbScge1xuICAgICR2YWx1ZTogZGl2aWRlKHN0cmlwLXVuaXQoJHZhbHVlKSwgc3RyaXAtdW5pdCgkYmFzZSkpICogMXJlbTtcbiAgfVxuXG4gIC8vIFR1cm4gMHJlbSBpbnRvIDBcbiAgQGlmICR2YWx1ZSA9PSAwcmVtIHtcbiAgICAkdmFsdWU6IDA7XG4gIH1cblxuICBAcmV0dXJuICR2YWx1ZTtcbn1cblxuLy8vIENvbnZlcnRzIGEgcGl4ZWwsIHBlcmNlbnRhZ2UsIHJlbSBvciBlbSB2YWx1ZSB0byBhIHVuaXRsZXNzIHZhbHVlIGJhc2VkIG9uIGEgZ2l2ZW4gZm9udCBzaXplLiBJZGVhbCBmb3Igd29ya2luZyBvdXQgdW5pdGxlc3MgbGluZSBoZWlnaHRzLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR2YWx1ZSAtIFZhbHVlIHRvIGNvbnZlcnQgdG8gYSB1bml0bGVzcyBsaW5lIGhlaWdodFxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFzZSAtIFRoZSBmb250IHNpemUgdG8gdXNlIHRvIHdvcmsgb3V0IHRoZSBsaW5lIGhlaWdodCAtIGRlZmF1bHRzIHRvICRnbG9iYWwtZm9udC1zaXplXG4vLy9cbi8vLyBAcmV0dXJuIHtOdW1iZXJ9IC0gVW5pdGxlc3MgbnVtYmVyXG5AZnVuY3Rpb24gdW5pdGxlc3MtY2FsYygkdmFsdWUsICRiYXNlOiBudWxsKSB7XG5cbiAgLy8gSWYgbm8gYmFzZSBpcyBkZWZpbmVkLCBkZWZlciB0byB0aGUgZ2xvYmFsIGZvbnQgc2l6ZVxuICBAaWYgJGJhc2UgPT0gbnVsbCB7XG4gICAgJGJhc2U6ICRnbG9iYWwtZm9udC1zaXplO1xuICB9XG5cbiAgLy8gRmlyc3QsIGxldHMgY29udmVydCBvdXIgJGJhc2UgdG8gcGl4ZWxzXG5cbiAgLy8gSWYgdGhlIGJhc2UgZm9udCBzaXplIGlzIGEgJSwgdGhlbiBtdWx0aXBseSBpdCBieSAxNnB4XG4gIEBpZiB1bml0KCRiYXNlKSA9PSAnJScge1xuICAgICRiYXNlOiBkaXZpZGUoJGJhc2UsIDEwMCUpICogMTZweDtcbiAgfVxuXG4gIEBpZiB1bml0KCRiYXNlKSA9PSAncmVtJyB7XG4gICAgJGJhc2U6IHN0cmlwLXVuaXQoJGJhc2UpICogMTZweDtcbiAgfVxuXG4gIEBpZiB1bml0KCRiYXNlKSA9PSAnZW0nIHtcbiAgICAkYmFzZTogc3RyaXAtdW5pdCgkYmFzZSkgKiAxNnB4O1xuICB9XG5cbiAgLy8gTm93IGxldCdzIGNvbnZlcnQgb3VyIHZhbHVlIHRvIHBpeGVscyB0b29cbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAnJScge1xuICAgICR2YWx1ZTogZGl2aWRlKCR2YWx1ZSwgMTAwJSkgKiAkYmFzZTtcbiAgfVxuXG4gIEBpZiB1bml0KCR2YWx1ZSkgPT0gJ3JlbScge1xuICAgICR2YWx1ZTogc3RyaXAtdW5pdCgkdmFsdWUpICogJGJhc2U7XG4gIH1cblxuICBAaWYgdW5pdCgkdmFsdWUpID09ICdlbScge1xuICAgICR2YWx1ZTogc3RyaXAtdW5pdCgkdmFsdWUpICogJGJhc2U7XG4gIH1cblxuICAvLyAncHgnXG4gIEBpZiB1bml0KCR2YWx1ZSkgPT0gJ3B4JyB7XG4gICAgQHJldHVybiBkaXZpZGUoc3RyaXAtdW5pdCgkdmFsdWUpLCBzdHJpcC11bml0KCRiYXNlKSk7XG4gIH1cblxuICAvLyBhc3N1bWUgdGhhdCBsaW5lLWhlaWdodHMgZ3JlYXRlciB0aGFuIDEwIGFyZSBtZWFudCB0byBiZSBhYnNvbHV0ZSBpbiAncHgnXG4gIEBpZiB1bml0bGVzcygkdmFsdWUpIGFuZCAoJHZhbHVlID4gMTApIHtcbiAgICBAcmV0dXJuIGRpdmlkZSgkdmFsdWUsIHN0cmlwLXVuaXQoJGJhc2UpKTtcbiAgfVxuXG4gIEByZXR1cm4gJHZhbHVlO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZ1bmN0aW9uc1xuLy8vL1xuXG4vLyBQYXRjaCB0byBmaXggaXNzdWUgIzEyMDgwXG4kLXpmLWJwLXZhbHVlOiBudWxsO1xuXG4vLy8gQ3JlYXRlcyBhbiBpbm5lciBib3gtc2hhZG93IGZvciBvbmx5IG9uZSBzaWRlXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaWRlIC0gU2lkZSB0aGUgc2hhZG93IGlzIHN1cHBvc2VkIHRvIGFwcGVhci4gQ2FuIGJlIGB0b3BgLCBgbGVmdGAsIGByaWdodGAgb3IgYGJvdHRvbWAuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRzaXplIC0gV2lkdGggZm9yIHRoZSB0YXJnZXQgc2lkZS5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgLSBDb2xvciBvZiB0aGUgc2hhZG93LlxuQG1peGluIGlubmVyLXNpZGUtc2hhZG93KFxuICAkc2lkZTogYm90dG9tLFxuICAkc2l6ZTogMjBweCxcbiAgJGNvbG9yOiByZ2JhKCRibGFjaywgMC4yNSlcbikge1xuXG4gICRoZWxwZXI6IHJvdW5kKCRzaXplICogMC42NSk7XG5cbiAgQGlmICgkc2lkZSA9PSB0b3ApIHtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwICRoZWxwZXIgJHNpemUgKC0xKSokaGVscGVyICRjb2xvcjtcbiAgfSBAZWxzZSBpZiAoJHNpZGUgPT0gbGVmdCkge1xuICAgIGJveC1zaGFkb3c6IGluc2V0ICRoZWxwZXIgMCAkc2l6ZSAoLTEpKiRoZWxwZXIgJGNvbG9yO1xuICB9IEBlbHNlIGlmICgkc2lkZSA9PSByaWdodCkge1xuICAgIGJveC1zaGFkb3c6IGluc2V0ICgtMSkqJGhlbHBlciAwICRzaXplICgtMSkqJGhlbHBlciAkY29sb3I7XG4gIH0gQGVsc2UgaWYgKCRzaWRlID09IGJvdHRvbSkge1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgKC0xKSokaGVscGVyICRzaXplICgtMSkqJGhlbHBlciAkY29sb3I7XG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBDU1MgdHJpYW5nbGUsIHdoaWNoIGNhbiBiZSB1c2VkIGZvciBkcm9wZG93biBhcnJvd3MsIGRyb3Bkb3duIHBpcHMsIGFuZCBtb3JlLiBVc2UgdGhpcyBtaXhpbiBpbnNpZGUgYSBgJjo6YmVmb3JlYCBvciBgJjo6YWZ0ZXJgIHNlbGVjdG9yLCB0byBhdHRhY2ggdGhlIHRyaWFuZ2xlIHRvIGFuIGV4aXN0aW5nIGVsZW1lbnQuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJHRyaWFuZ2xlLXNpemUgLSBXaWR0aCBvZiB0aGUgdHJpYW5nbGUuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJHRyaWFuZ2xlLWNvbG9yIC0gQ29sb3Igb2YgdGhlIHRyaWFuZ2xlLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHRyaWFuZ2xlLWRpcmVjdGlvbiAtIERpcmVjdGlvbiB0aGUgdHJpYW5nbGUgcG9pbnRzLiBDYW4gYmUgYHVwYCwgYHJpZ2h0YCwgYGRvd25gLCBvciBgbGVmdGAuXG5AbWl4aW4gY3NzLXRyaWFuZ2xlKFxuICAkdHJpYW5nbGUtc2l6ZSxcbiAgJHRyaWFuZ2xlLWNvbG9yLFxuICAkdHJpYW5nbGUtZGlyZWN0aW9uXG4pIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG5cbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXdpZHRoOiAkdHJpYW5nbGUtc2l6ZTtcblxuICBjb250ZW50OiAnJztcblxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gZG93bikge1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgYm9yZGVyLWNvbG9yOiAkdHJpYW5nbGUtY29sb3IgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIH1cbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IHVwKSB7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICR0cmlhbmdsZS1jb2xvcjtcbiAgfVxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gcmlnaHQpIHtcbiAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAkdHJpYW5nbGUtY29sb3I7XG4gIH1cbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IGxlZnQpIHtcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICR0cmlhbmdsZS1jb2xvciB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIG1lbnUgaWNvbiB3aXRoIGEgc2V0IHdpZHRoLCBoZWlnaHQsIG51bWJlciBvZiBiYXJzLCBhbmQgY29sb3JzLiBUaGUgbWl4aW4gdXNlcyB0aGUgaGVpZ2h0IG9mIHRoZSBpY29uIGFuZCB0aGUgd2VpZ2h0IG9mIHRoZSBiYXJzIHRvIGRldGVybWluZSBzcGFjaW5nLiA8ZGl2IGNsYXNzPVwiZG9jcy1leGFtcGxlLWJ1cmdlclwiPjwvZGl2PlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYmxhY2tdIC0gQ29sb3IgdG8gdXNlIGZvciB0aGUgaWNvbi5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3ItaG92ZXIgWyRkYXJrLWdyYXldIC0gQ29sb3IgdG8gdXNlIHdoZW4gdGhlIGljb24gaXMgaG92ZXJlZCBvdmVyLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2lkdGggWzIwcHhdIC0gV2lkdGggb2YgdGhlIGljb24uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRoZWlnaHQgWzE2cHhdIC0gSGVpZ2h0IG9mIHRoZSBpY29uLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2VpZ2h0IFsycHhdIC0gSGVpZ2h0IG9mIGluZGl2aWR1YWwgYmFycyBpbiB0aGUgaWNvbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGJhcnMgWzNdIC0gTnVtYmVyIG9mIGJhcnMgaW4gdGhlIGljb24uXG5AbWl4aW4gaGFtYnVyZ2VyKFxuICAkY29sb3I6ICRibGFjayxcbiAgJGNvbG9yLWhvdmVyOiAkZGFyay1ncmF5LFxuICAkd2lkdGg6IDIwcHgsXG4gICRoZWlnaHQ6IDE2cHgsXG4gICR3ZWlnaHQ6IDJweCxcbiAgJGJhcnM6IDNcbikge1xuICAvLyBib3gtc2hhZG93IENTUyBvdXRwdXRcbiAgJHNoYWRvdzogKCk7XG4gICRob3Zlci1zaGFkb3c6ICgpO1xuXG4gIC8vIFNwYWNpbmcgYmV0d2VlbiBiYXJzIGlzIGNhbGN1bGF0ZWQgYmFzZWQgb24gdGhlIHRvdGFsIGhlaWdodCBvZiB0aGUgaWNvbiBhbmQgdGhlIHdlaWdodCBvZiBlYWNoIGJhclxuICAkc3BhY2luZzogZGl2aWRlKCRoZWlnaHQgLSAoJHdlaWdodCAqICRiYXJzKSwgJGJhcnMgLSAxKTtcblxuICBAaWYgdW5pdCgkc3BhY2luZykgPT0gJ3B4JyB7XG4gICAgJHNwYWNpbmc6IGZsb29yKCRzcGFjaW5nKTtcbiAgfVxuXG4gIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggJGJhcnMge1xuICAgICRvZmZzZXQ6ICgkd2VpZ2h0ICsgJHNwYWNpbmcpICogKCRpIC0gMSk7XG4gICAgJHNoYWRvdzogYXBwZW5kKCRzaGFkb3csIDAgJG9mZnNldCAwICRjb2xvciwgY29tbWEpO1xuICB9XG5cbiAgLy8gSWNvbiBjb250YWluZXJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHdpZHRoOiAkd2lkdGg7XG4gIGhlaWdodDogJGhlaWdodDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gIC8vIEljb24gYmFyc1xuICAmOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuXG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAkd2VpZ2h0O1xuXG4gICAgYmFja2dyb3VuZDogJGNvbG9yO1xuICAgIGJveC1zaGFkb3c6ICRzaGFkb3c7XG5cbiAgICBjb250ZW50OiAnJztcbiAgfVxuXG4gIC8vIEhvdmVyIHN0YXRlXG4gIEBpZiAkY29sb3ItaG92ZXIge1xuICAgIC8vIEdlbmVyYXRlIENTU1xuICAgIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggJGJhcnMge1xuICAgICAgJG9mZnNldDogKCR3ZWlnaHQgKyAkc3BhY2luZykgKiAoJGkgLSAxKTtcbiAgICAgICRob3Zlci1zaGFkb3c6IGFwcGVuZCgkaG92ZXItc2hhZG93LCAwICRvZmZzZXQgMCAkY29sb3ItaG92ZXIsIGNvbW1hKTtcbiAgICB9XG5cbiAgICAmOmhvdmVyOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAkY29sb3ItaG92ZXI7XG4gICAgICBib3gtc2hhZG93OiAkaG92ZXItc2hhZG93O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBhIGRvd253YXJkLWZhY2luZyB0cmlhbmdsZSBhcyBhIGJhY2tncm91bmQgaW1hZ2UgdG8gYW4gZWxlbWVudC4gVGhlIGltYWdlIGlzIGZvcm1hdHRlZCBhcyBhbiBTVkcsIG1ha2luZyBpdCBlYXN5IHRvIGNoYW5nZSB0aGUgY29sb3IuIEJlY2F1c2UgSW50ZXJuZXQgRXhwbG9yZXIgZG9lc24ndCBzdXBwb3J0IGVuY29kZWQgU1ZHcyBhcyBiYWNrZ3JvdW5kIGltYWdlcywgYSBQTkcgZmFsbGJhY2sgaXMgYWxzbyBpbmNsdWRlZC5cbi8vLyBUaGVyZSBhcmUgdHdvIFBORyBmYWxsYmFja3M6IGEgYmxhY2sgdHJpYW5nbGUgYW5kIGEgd2hpdGUgdHJpYW5nbGUuIFRoZSBvbmUgdXNlZCBkZXBlbmRzIG9uIHRoZSBsaWdodG5lc3Mgb2YgdGhlIGlucHV0IGNvbG9yLlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYmxhY2tdIC0gQ29sb3IgdG8gdXNlIGZvciB0aGUgdHJpYW5nbGUuXG5AbWl4aW4gYmFja2dyb3VuZC10cmlhbmdsZSgkY29sb3I6ICRibGFjaykge1xuICAkcmdiOiAncmdiJTI4I3tyb3VuZChyZWQoJGNvbG9yKSl9LCAje3JvdW5kKGdyZWVuKCRjb2xvcikpfSwgI3tyb3VuZChibHVlKCRjb2xvcikpfSUyOSc7XG5cbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWw7dXRmOCw8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2ZXJzaW9uPVwiMS4xXCIgd2lkdGg9XCIzMlwiIGhlaWdodD1cIjI0XCIgdmlld0JveD1cIjAgMCAzMiAyNFwiPjxwb2x5Z29uIHBvaW50cz1cIjAsMCAzMiwwIDE2LDI0XCIgc3R5bGU9XCJmaWxsOiAjeyRyZ2J9XCI+PC9wb2x5Z29uPjwvc3ZnPicpO1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDBcXDApIHtcbiAgICBAaWYgbGlnaHRuZXNzKCRjb2xvcikgPCA2MCUge1xuICAgICAgLy8gV2hpdGUgdHJpYW5nbGVcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFDQUFBQUFZQ0FZQUFBQ2JVLzgwQUFBQUdYUkZXSFJUYjJaMGQyRnlaUUJCWkc5aVpTQkpiV0ZuWlZKbFlXUjVjY2xsUEFBQUFJcEpSRUZVZU5yRWtja05nREFNQkJmUmtFdDBPYlJCQmRzR1hVRGdtUWZLNFhoSDJtOGN6UUFBeTI3UjN0c3c0UWZlMng4dU9PNm9ZTGI2R2xPb3IzR0Yrc3dVUkFPbVVKK1J3dEVKczlXdlRHRVl4QlhxSTFNUUFaaENmVVFLUnpETVZqK1R3ckFJVjZqdlNVRWtZQXIxTFNrY3lUQmIvVitLWWZYN3hBZXVzcTNzTER0R0gza0VHQUNQV0lmbE5aZmhSUUFBQUFCSlJVNUVya0pnZ2c9PScpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAvLyBCbGFjayB0cmlhbmdsZVxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUNBQUFBQVlDQVlBQUFDYlUvODBBQUFBR1hSRldIUlRiMlowZDJGeVpRQkJaRzlpWlNCSmJXRm5aVkpsWVdSNWNjbGxQQUFBQU1CSlJFRlVlTnJFbGxzT2hDQU1SVnN6QzlJbHpVN0tDbVZIVEpzb01XWU1VdHB5djlCZ2J1WFFCNVpTZGdCWVlZNHljZ0Jpdms4S1lGc1FNZk1pVFRCUDRvM25VekNLek9hYkxKYkx5Mi9nMzFldkdrQWdpblI0L1plZ0tINXFYM2JKQ3NjQTN0MHgza2dPNXRRRnloaEZmNTB4UnFGTGJ5TVVOSlF6Z3lqR1Mvd2dDcHZLcWtSQnB1V3JFNFY5ZCsxRTRkUFVYcUlnMTA3U1FPRS8yRFJReE13VER5Z0lJblZERVQ5VDNsQ29qLzZqL1ZDbUdqWk9sMmxLcFo4QUF3RFFQN3pJaW1ER0ZRQUFBQUJKUlU1RXJrSmdnZz09Jyk7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBcHBsaWVzIHRoZSBtaWNybyBjbGVhcmZpeCBoYWNrIHBvcHVsYXJpemVkIGJ5IE5pY29sYXMgR2FsbGFnaGVyLiBJbmNsdWRlIHRoaXMgbWl4aW4gb24gYSBjb250YWluZXIgaWYgaXRzIGNoaWxkcmVuIGFyZSBhbGwgZmxvYXRlZCwgdG8gZ2l2ZSB0aGUgY29udGFpbmVyIGEgcHJvcGVyIGhlaWdodC5cbi8vLyBUaGUgY2xlYXJmaXggaXMgYXVnbWVudGVkIHdpdGggc3BlY2lmaWMgc3R5bGVzIHRvIHByZXZlbnQgYm9yZGVycyBpbiBmbGV4Ym94IGVudmlyb25tZW50c1xuLy8vIEBsaW5rIGh0dHA6Ly9uaWNvbGFzZ2FsbGFnaGVyLmNvbS9taWNyby1jbGVhcmZpeC1oYWNrLyBNaWNybyBDbGVhcmZpeCBIYWNrXG4vLy8gQGxpbmsgaHR0cDovL2RhbmlzYWRlc2lnbmVyLmNvbS9ibG9nL2ZsZXhib3gtY2xlYXItZml4LXBzZXVkby1lbGVtZW50cy8gRmxleGJveCBmaXhcbkBtaXhpbiBjbGVhcmZpeCB7XG4gICY6OmJlZm9yZSxcbiAgJjo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6ICcgJztcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleC1iYXNpczogMDtcbiAgICAgIG9yZGVyOiAxO1xuICAgIH1cbiAgfVxuXG4gICY6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxufVxuXG4vLy8gQWRkcyBDU1MgZm9yIGEgXCJxdWFudGl0eSBxdWVyeVwiIHNlbGVjdG9yIHRoYXQgYXV0b21hdGljYWxseSBzaXplcyBlbGVtZW50cyBiYXNlZCBvbiBob3cgbWFueSB0aGVyZSBhcmUgaW5zaWRlIGEgY29udGFpbmVyLlxuLy8vIEBsaW5rIGh0dHA6Ly9hbGlzdGFwYXJ0LmNvbS9hcnRpY2xlL3F1YW50aXR5LXF1ZXJpZXMtZm9yLWNzcyBRdWFudGl0eSBRdWVyaWVzIGZvciBDU1Ncbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbWF4IC0gTWF4aW11bSBudW1iZXIgb2YgaXRlbXMgdG8gZGV0ZWN0LiBUaGUgaGlnaGVyIHRoaXMgbnVtYmVyIGlzLCB0aGUgbW9yZSBDU1MgdGhhdCdzIHJlcXVpcmVkIHRvIGNvdmVyIGVhY2ggbnVtYmVyIG9mIGl0ZW1zLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGVsZW0gW2xpXSAtIFRhZyB0byB1c2UgZm9yIHNpYmxpbmcgc2VsZWN0b3JzLlxuQG1peGluIGF1dG8td2lkdGgoJG1heCwgJGVsZW06IGxpKSB7XG4gIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggJG1heCB7XG4gICAgJjpudGgtbGFzdC1jaGlsZCgjeyRpfSk6Zmlyc3QtY2hpbGQsXG4gICAgJjpudGgtbGFzdC1jaGlsZCgjeyRpfSk6Zmlyc3QtY2hpbGQgfiAjeyRlbGVtfSB7XG4gICAgICB3aWR0aDogcGVyY2VudGFnZShkaXZpZGUoMSwgJGkpKTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIFJlbW92ZXMgdGhlIGZvY3VzIHJpbmcgYXJvdW5kIGFuIGVsZW1lbnQgd2hlbiBhIG1vdXNlIGlucHV0IGlzIGRldGVjdGVkLlxuQG1peGluIGRpc2FibGUtbW91c2Utb3V0bGluZSB7XG4gIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAmIHtcbiAgICBvdXRsaW5lOiAwO1xuICB9XG59XG5cbi8vLyBNYWtlcyBhbiBlbGVtZW50IHZpc3VhbGx5IGhpZGRlbiwgYnV0IHN0aWxsIGFjY2Vzc2libGUgdG8ga2V5Ym9hcmRzIGFuZCBhc3Npc3RpdmUgZGV2aWNlcy5cbi8vLyBAbGluayBodHRwOi8vc25vb2suY2EvYXJjaGl2ZXMvaHRtbF9hbmRfY3NzL2hpZGluZy1jb250ZW50LWZvci1hY2Nlc3NpYmlsaXR5IEhpZGluZyBDb250ZW50IGZvciBBY2Nlc3NpYmlsaXR5XG4vLy8gQGxpbmsgaHR0cDovL2h1Z29naXJhdWRlbC5jb20vMjAxNi8xMC8xMy9jc3MtaGlkZS1hbmQtc2Vlay9cbi8vL1xuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGVuZm9yY2UgLSBJZiBgdHJ1ZWAsIHVzZSBgIWltcG9ydGFudGAgb24gYXBwbGllZCBwcm9wZXJ0aWVzXG5AbWl4aW4gZWxlbWVudC1pbnZpc2libGUoXG4gICRlbmZvcmNlOiB0cnVlXG4pIHtcbiAgJGltcG9ydGFudDogaWYoJGVuZm9yY2UsICchaW1wb3J0YW50JywgbnVsbCk7XG5cbiAgcG9zaXRpb246IGFic29sdXRlICN7JGltcG9ydGFudH07XG4gIHdpZHRoOiAxcHggI3skaW1wb3J0YW50fTtcbiAgaGVpZ2h0OiAxcHggI3skaW1wb3J0YW50fTtcbiAgcGFkZGluZzogMCAjeyRpbXBvcnRhbnR9O1xuICBvdmVyZmxvdzogaGlkZGVuICN7JGltcG9ydGFudH07XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCkgI3skaW1wb3J0YW50fTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcCAjeyRpbXBvcnRhbnR9O1xuICBib3JkZXI6IDAgI3skaW1wb3J0YW50fTtcbn1cblxuLy8vIFJldmVyc2VzIHRoZSBDU1Mgb3V0cHV0IGNyZWF0ZWQgYnkgdGhlIGBlbGVtZW50LWludmlzaWJsZSgpYCBtaXhpbi5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRlbmZvcmNlIC0gSWYgYHRydWVgLCB1c2UgYCFpbXBvcnRhbnRgIG9uIGFwcGxpZWQgcHJvcGVydGllc1xuQG1peGluIGVsZW1lbnQtaW52aXNpYmxlLW9mZihcbiAgJGVuZm9yY2U6IHRydWVcbikge1xuICAkaW1wb3J0YW50OiBpZigkZW5mb3JjZSwgJyFpbXBvcnRhbnQnLCBudWxsKTtcblxuICBwb3NpdGlvbjogc3RhdGljICN7JGltcG9ydGFudH07XG4gIHdpZHRoOiBhdXRvICN7JGltcG9ydGFudH07XG4gIGhlaWdodDogYXV0byAjeyRpbXBvcnRhbnR9O1xuICBvdmVyZmxvdzogdmlzaWJsZSAjeyRpbXBvcnRhbnR9O1xuICBjbGlwOiBhdXRvICN7JGltcG9ydGFudH07XG4gIHdoaXRlLXNwYWNlOiBub3JtYWwgI3skaW1wb3J0YW50fTtcbn1cblxuLy8vIFZlcnRpY2FsbHkgY2VudGVycyB0aGUgZWxlbWVudCBpbnNpZGUgb2YgaXRzIGZpcnN0IG5vbi1zdGF0aWMgcGFyZW50LFxuLy8vIEBsaW5rIGh0dHA6Ly93d3cuc2l0ZXBvaW50LmNvbS9jZW50ZXJpbmctd2l0aC1zYXNzLyBDZW50ZXJpbmcgV2l0aCBTYXNzXG5AbWl4aW4gdmVydGljYWwtY2VudGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuXG4vLy8gSG9yaXpvbnRhbGx5IGNlbnRlcnMgdGhlIGVsZW1lbnQgaW5zaWRlIG9mIGl0cyBmaXJzdCBub24tc3RhdGljIHBhcmVudCxcbi8vLyBAbGluayBodHRwOi8vd3d3LnNpdGVwb2ludC5jb20vY2VudGVyaW5nLXdpdGgtc2Fzcy8gQ2VudGVyaW5nIFdpdGggU2Fzc1xuQG1peGluIGhvcml6b250YWwtY2VudGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbn1cblxuLy8vIEFic29sdXRlbHkgY2VudGVycyB0aGUgZWxlbWVudCBpbnNpZGUgb2YgaXRzIGZpcnN0IG5vbi1zdGF0aWMgcGFyZW50LFxuLy8vIEBsaW5rIGh0dHA6Ly93d3cuc2l0ZXBvaW50LmNvbS9jZW50ZXJpbmctd2l0aC1zYXNzLyBDZW50ZXJpbmcgV2l0aCBTYXNzXG5AbWl4aW4gYWJzb2x1dGUtY2VudGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbn1cblxuLy8vIEl0ZXJhdGVzIHRocm91Z2ggYnJlYWtwb2ludHMgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnQtY2xhc3Nlc2AgYW5kIHByaW50cyB0aGUgQ1NTIGluc2lkZSB0aGUgbWl4aW4gYXQgZWFjaCBicmVha3BvaW50J3MgbWVkaWEgcXVlcnkuIFVzZSB0aGlzIHdpdGggdGhlIGdyaWQsIG9yIGFueSBvdGhlciBjb21wb25lbnQgdGhhdCBoYXMgcmVzcG9uc2l2ZSBjbGFzc2VzLlxuLy8vXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkc21hbGwgW3RydWVdIC0gSWYgYGZhbHNlYCwgdGhlIG1peGluIHdpbGwgc2tpcCB0aGUgYHNtYWxsYCBicmVha3BvaW50LiBVc2UgdGhpcyB3aXRoIGNvbXBvbmVudHMgdGhhdCBkb24ndCBwcmVmaXggY2xhc3NlcyB3aXRoIGBzbWFsbC1gLCBvbmx5IGBtZWRpdW0tYCBhbmQgdXAuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkYXV0by1pbnNlcnQtYnJlYWtwb2ludHMgW3RydWVdIC0gSWYgYGZhbHNlYCwgdGhlIG1peGluIHdpbGwgaXRlcmF0ZSBvdmVyIGJyZWFrcG9pbnRzIHdpdGhvdXQgZG9pbmcgdGhlIG1lZGlhIHF1ZXJ5IGl0c2VsZi4gVXNlZnVsIGZvciBtb3JlIGNvbXBsZXggbWVkaWEgcXVlcnkgZ2VuZXJhdGlvbiBhcyBpbiB0aGUgbWFyZ2luIGdyaWQuXG5AbWl4aW4gLXpmLWVhY2gtYnJlYWtwb2ludChcbiAgJHNtYWxsOiB0cnVlLFxuICAkYXV0by1pbnNlcnQtYnJlYWtwb2ludHM6IHRydWVcbikge1xuICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50LWluKGF1dG8sIC16Zi1ib29sKCRzbWFsbCksIC16Zi1ib29sKCRhdXRvLWluc2VydC1icmVha3BvaW50cykpIHtcbiAgICBAY29udGVudFxuICB9O1xufVxuXG4vLy8gSXRlcmF0ZXMgd2l0aCBgQGNvbnRlbnRgIHRocm91Z2ggdGhlIGdpdmVuIGxpc3Qgb2YgYnJlYWtwb2ludHMgYCRicmVha3BvaW50c2AuXG4vLy9cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZHxMaXN0fSAkYnJlYWtwb2ludHMgW2F1dG9dIC0gQnJlYWtwb2ludHMgdG8gaXRlcmF0ZXMgb24uIEl0IGNhbiBiZSBhIGJyZWFrcG9pbnQgbmFtZSwgbGlzdCBvZiBicmVha3BvaW50cyBvciBgYXV0b2AgZm9yIGFsbCBicmVha3BvaW50cy5cbi8vLyBAcGFyYW0ge0Jvb2xlYW58TnVsbH0gJHplcm8tYnJlYWtwb2ludCBbbnVsbF0gLSBXaGV0aGVyIHRoZSB6ZXJvLWJyZWFrcG9pbnQgKG9mdGVuIGBzbWFsbGApIG11c3QgYmUgaW5jbHVkZWQuIElmIGB0cnVlYCwgaXQgd2lsbCBhbHdheXMgYmUgYWRkZWQgdG8gdGhlIGxpc3QgaWYgbm90IGFscmVhZHkgdGhlcmUuIElmIGBmYWxzZWAsIGl0IHdpbGwgYWx3YXlzIGJlIHJlbW92ZWQuIERvZXMgbm90aGluZyBieSBkZWZhdWx0LlxuLy8vIEBwYXJhbSB7Qm9vbGVhbnxLZXl3b3JkfSAkbWVkaWEtcXVlcmllcyBbdHJ1ZV0gLSBXaGV0aGVyIG1lZGlhLXF1ZXJpZXMgbXVzdCBiZSBnZW5lcmF0ZWQuIElmIGBmb3ItbGlzdHNgLCBvbmx5IGdlbmVyYXRlIG1lZGlhLXF1ZXJpZXMgd2hlbiBgJGJyZWFrcG9pbnRzYCBpcyBhIGxpc3QuXG5AbWl4aW4gLXpmLWVhY2gtYnJlYWtwb2ludC1pbihcbiAgJGJyZWFrcG9pbnRzOiBhdXRvLFxuICAkemVyby1icmVha3BvaW50OiBudWxsLFxuICAkbWVkaWEtcXVlcmllczogdHJ1ZVxuKSB7XG4gICQtbGlzdDogKCk7XG4gICQtYnJlYWtwb2ludHMtaXMtYS1saXN0OiB0cnVlO1xuXG4gIC8vIFJldHJpZXZlIHRoZSBsaXN0IG9mIGJyZWFrcG9pbnQocykgdG8gaXRlcmF0ZSBvbi5cbiAgQGlmICRicmVha3BvaW50cyA9PSBhdXRvIHtcbiAgICAkLWxpc3Q6ICRicmVha3BvaW50LWNsYXNzZXM7XG4gIH1cbiAgQGVsc2UgaWYgdHlwZS1vZigkYnJlYWtwb2ludHMpID09ICdsaXN0JyB7XG4gICAgJC1saXN0OiAkYnJlYWtwb2ludHM7XG4gIH1cbiAgQGVsc2UgaWYgdHlwZS1vZigkYnJlYWtwb2ludHMpID09ICdzdHJpbmcnIHtcbiAgICAkLWxpc3Q6ICgkYnJlYWtwb2ludHMpO1xuICAgICQtYnJlYWtwb2ludHMtaXMtYS1saXN0OiBmYWxzZTtcbiAgfVxuICBAZWxzZSB7XG4gICAgQGVycm9yICdXcm9uZyBzeW50YXggZm9yIFwiJGJyZWFrcG9pbnRzXCIgaW4gXCItemYtZWFjaC1icmVha3BvaW50LWluKClcIi4gR290IFwiI3skYnJlYWtwb2ludHN9XCIgKCN7dHlwZS1vZigkYnJlYWtwb2ludHMpfSkuIEV4cGVjdGVkIGEgYnJlYWtwb2ludCBuYW1lLCBhIGxpc3Qgb2YgYnJlYWtwb2ludHMgb3IgXCJhdXRvXCInO1xuICB9XG5cbiAgLy8gQWRkIG9yIHJlbW92ZSB0aGUgemVybyBicmVha3BvaW50IGFjY29yZGluZyB0byBgJHplcm8tYnJlYWtwb2ludGBcbiAgQGlmICR6ZXJvLWJyZWFrcG9pbnQgPT0gdHJ1ZSB7XG4gICAgJC1saXN0OiBqb2luKCgkLXpmLXplcm8tYnJlYWtwb2ludCksIHNsLXJlbW92ZSgkLWxpc3QsICQtemYtemVyby1icmVha3BvaW50KSk7XG4gIH1cbiAgQGVsc2UgaWYgJHplcm8tYnJlYWtwb2ludCA9PSBmYWxzZSB7XG4gICAgJC1saXN0OiBzbC1yZW1vdmUoJC1saXN0LCAkLXpmLXplcm8tYnJlYWtwb2ludCk7XG4gIH1cblxuICAvLyBJdGVyYXRlIG9uIGJyZWFrcG9pbnQocylcbiAgQGVhY2ggJGJwIGluICQtbGlzdCB7XG4gICAgJG9sZC16Zi1zaXplOiBudWxsO1xuICAgIEBpZiBnbG9iYWwtdmFyaWFibGUtZXhpc3RzKC16Zi1zaXplKSB7XG4gICAgICAkb2xkLXpmLXNpemU6ICQtemYtc2l6ZTtcbiAgICB9XG4gICAgJC16Zi1zaXplOiAkYnAgIWdsb2JhbDtcblxuICAgIEBpZiAoJG1lZGlhLXF1ZXJpZXMgPT0gdHJ1ZSBvciAoJG1lZGlhLXF1ZXJpZXMgPT0gJ2Zvci1saXN0cycgYW5kICQtYnJlYWtwb2ludHMtaXMtYS1saXN0KSkge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnApIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cblxuICAgICQtemYtc2l6ZTogJG9sZC16Zi1zaXplICFnbG9iYWw7XG4gIH1cbn1cblxuLy8vIEdlbmVyYXRlIHRoZSBgQGNvbnRlbnRgIHBhc3NlZCB0byB0aGUgbWl4aW4gd2l0aCBhIHZhbHVlIGAkLXpmLWJwLXZhbHVlYCByZWxhdGVkIHRvIGEgYnJlYWtwb2ludCwgZGVwZW5kaW5nIG9uIHRoZSBgJG5hbWVgIHBhcmFtZXRlcjpcbi8vLyAtIEZvciBhIHNpbmdsZSB2YWx1ZSwgYCQtemYtYnAtdmFsdWVgIGlzIHRoaXMgdmFsdWUuXG4vLy8gLSBGb3IgYSBicmVha3BvaW50IG5hbWUsIGAkLXpmLWJwLXZhbHVlYCBpcyB0aGUgY29ycmVzcG9uZGluZyBicmVha3BvaW50IHZhbHVlIGluIGAkbWFwYC5cbi8vLyAtIEZvciBcImF1dG9cIiwgYCQtemYtYnAtdmFsdWVgIGlzIHRoZSBjb3JyZXNwb25kaW5nIGJyZWFrcG9pbnQgdmFsdWUgaW4gYCRtYXBgIGFuZCBpcyBwYXNzZWQgdG8gYEBjb250ZW50YCwgd2hpY2ggaXMgbWFkZSByZXNwb25zaXZlIGZvciBlYWNoIGJyZWFrcG9pbnQgb2YgYCRtYXBgLlxuLy8vIEBwYXJhbSB7TnVtYmVyfEFycmF5fEtleXdvcmR9ICRuYW1lIFthdXRvXSAtIFNpbmdsZSB2YWx1ZSwgYnJlYWtwb2ludCBuYW1lLCBvciBsaXN0IG9mIGJyZWFrcG9pbnQgbmFtZXMgdG8gdXNlLiBcImF1dG9cIiBieSBkZWZhdWx0LlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJG1hcCAtIE1hcCBvZiBicmVha3BvaW50cyBhbmQgdmFsdWVzIG9yIHNpbmdsZSB2YWx1ZSB0byB1c2UuXG5AbWl4aW4gLXpmLWJyZWFrcG9pbnQtdmFsdWUoXG4gICRuYW1lOiBhdXRvLFxuICAkbWFwOiBudWxsXG4pIHtcbiAgQGlmICRuYW1lID09IGF1dG8gYW5kIHR5cGUtb2YoJG1hcCkgPT0gJ21hcCcge1xuICAgIC8vIFwiYXV0b1wiXG4gICAgQGVhY2ggJGssICR2IGluICRtYXAge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkaykge1xuICAgICAgICBAaW5jbHVkZSAtemYtYnJlYWtwb2ludC12YWx1ZSgkdiwgJG1hcCkge1xuICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAvLyBicmVha3BvaW50IG5hbWVcbiAgICBAaWYgdHlwZS1vZigkbmFtZSkgPT0gJ3N0cmluZycge1xuICAgICAgJGJwLXZhbHVlOiAtemYtZ2V0LWJwLXZhbCgkbWFwLCAkbmFtZSk7XG4gICAgICBAaWYgJGJwLXZhbHVlICE9IG51bGwge1xuICAgICAgICAkbmFtZTogJGJwLXZhbHVlO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIGJyZWFrcG9pbnQgdmFsdWVcbiAgICAkLXpmLWJwLXZhbHVlOiAkbmFtZSAhZ2xvYmFsO1xuICAgIEBjb250ZW50O1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgeHktZ3JpZFxuLy8vL1xuXG4vLyBNYXJnaW4gR3JpZCBjbGFzc2VzXG5AbWl4aW4geHktYmFzZS1ncmlkLWNsYXNzZXMge1xuXG4gIC8vIEdyaWQgQ29udGFpbmVyXG4gIC5ncmlkLWNvbnRhaW5lciB7XG4gICAgQGluY2x1ZGUgeHktZ3JpZC1jb250YWluZXI7XG5cbiAgICAmLmZsdWlkIHtcbiAgICAgIEBpbmNsdWRlIHh5LWdyaWQtY29udGFpbmVyKDEwMCUpO1xuICAgIH1cblxuICAgICYuZnVsbCB7XG4gICAgICBAaW5jbHVkZSB4eS1ncmlkLWNvbnRhaW5lcigxMDAlLCAwKTtcbiAgICB9XG4gIH1cblxuICAvLyBCYXNlIGdyaWQgc3R5bGVzXG4gIC5ncmlkLXgge1xuICAgIEBpbmNsdWRlIHh5LWdyaWQ7XG4gIH1cblxuICAuY2VsbCB7XG4gICAgQGluY2x1ZGUgeHktY2VsbChmdWxsLCAkZ3V0dGVyLXR5cGU6IG5vbmUpO1xuXG4gICAgJi5hdXRvIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtYmFzZShhdXRvKTtcbiAgICB9XG5cbiAgICAmLnNocmluayB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLWJhc2Uoc2hyaW5rKTtcbiAgICB9XG5cbiAgfVxuICAuZ3JpZC14IHtcbiAgICA+IC5hdXRvIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc2l6ZShhdXRvLCAkZ3V0dGVyLXR5cGU6IG5vbmUpO1xuICAgIH1cblxuICAgID4gLnNocmluayB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLXNpemUoc2hyaW5rLCAkZ3V0dGVyLXR5cGU6IG5vbmUpO1xuICAgIH1cbiAgfVxuXG4gIC8vIEF1dG8gd2lkdGhcbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCgpIHtcbiAgICAvLyBUaGlzIGlzIGEgYml0IG9mIGEgaGFjay93b3JrYXJvdW5kLCBzZWUgdGhlc2UgaXNzdWVzICYgUFJzIGZvciB0aGUgYmFja3N0b3J5OlxuICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9mb3VuZGF0aW9uL2ZvdW5kYXRpb24tc2l0ZXMvaXNzdWVzLzEwMjQ0XG4gICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL2ZvdW5kYXRpb24vZm91bmRhdGlvbi1zaXRlcy9wdWxsLzEwMjIyIGFuZFxuICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9mb3VuZGF0aW9uL2ZvdW5kYXRpb24tc2l0ZXMvcHVsbC8xMDE2NFxuICAgIC5ncmlkLXgge1xuICAgICAgJHN0cjogXCI+IC4jeyQtemYtc2l6ZX0tc2hyaW5rLCA+IC4jeyQtemYtc2l6ZX0tZnVsbFwiO1xuICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcbiAgICAgICAgJHN0cjogJHN0ciArIFwiLCA+IC4jeyQtemYtc2l6ZX0tI3skaX1cIjtcbiAgICAgIH1cbiAgICAgICN7JHN0cn0ge1xuICAgICAgICBmbGV4LWJhc2lzOiBhdXRvO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoKSB7XG4gICAgLy8gUmVzcG9uc2l2ZSBcImF1dG9cIiBtb2RpZmllclxuICAgIEBpZiBub3QoJC16Zi1zaXplID09ICQtemYtemVyby1icmVha3BvaW50KSB7XG4gICAgICAuZ3JpZC14ID4gLiN7JC16Zi1zaXplfS1hdXRvIHtcbiAgICAgICAgQGluY2x1ZGUgeHktY2VsbChhdXRvLCAkZ3V0dGVyLXR5cGU6IG5vbmUpO1xuICAgICAgfVxuICAgIH1cblxuICAgICUteHktY2VsbC1iYXNlLXNocmluay1ob3Jpem9udGFsLSN7JC16Zi1zaXplfSB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLWJhc2Uoc2hyaW5rKTtcbiAgICB9XG5cbiAgICAvLyBSZXNwb25zaXZlIFwic2hyaW5rXCIgbW9kaWZpZXJcbiAgICBAaWYgbm90KCQtemYtc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCkge1xuICAgICAgLmdyaWQteCA+IC4jeyQtemYtc2l6ZX0tc2hyaW5rIHtcbiAgICAgICAgQGV4dGVuZCAlLXh5LWNlbGwtYmFzZS1zaHJpbmstaG9yaXpvbnRhbC0jeyQtemYtc2l6ZX07XG4gICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc2l6ZShzaHJpbmssICRndXR0ZXItdHlwZTogbm9uZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gUmVzcG9uc2l2ZSB3aWR0aCBtb2RpZmllcnNcbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgICAgLy8gU2l6aW5nIChwZXJjZW50YWdlKVxuICAgICAgLmdyaWQteCA+IC4jeyQtemYtc2l6ZX0tI3skaX0ge1xuICAgICAgICBAZXh0ZW5kICUteHktY2VsbC1iYXNlLXNocmluay1ob3Jpem9udGFsLSN7JC16Zi1zaXplfTtcbiAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1zaXplKCRpLCAkZ3V0dGVyLXR5cGU6IG5vbmUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFJlc2V0IHdpZHRoIHdoZW4gdXNpbmcgYC5ncmlkLW1hcmdpbi14YCBub3Qgb24gYC5ncmlkLXhgXG4gIC5ncmlkLW1hcmdpbi14Om5vdCguZ3JpZC14KSA+IC5jZWxsIHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxuXG4gIC8vIFJlc2V0IGhlaWdodCB3aGVuIHVzaW5nIGAuZ3JpZC1tYXJnaW4teWAgbm90IG9uIGAuZ3JpZC15YFxuICAuZ3JpZC1tYXJnaW4teTpub3QoLmdyaWQteSkgPiAuY2VsbCB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG59XG5cbkBtaXhpbiAteHktYnJlYWtwb2ludC1jZWxsLWNsYXNzZXMoJGNsYXNzLWJyZWFrcG9pbnQsICRndXR0ZXItYnJlYWtwb2ludCwgJHZlcnRpY2FsKSB7XG4gICRwcmVmaXg6IGlmKCRjbGFzcy1icmVha3BvaW50ID09ICQtemYtemVyby1icmVha3BvaW50LCAnJywgJyN7JGNsYXNzLWJyZWFrcG9pbnR9LScpO1xuICA+IC4jeyRwcmVmaXh9YXV0byB7XG4gICAgQGluY2x1ZGUgeHktY2VsbC1zaXplKGF1dG8sICR2ZXJ0aWNhbDogJHZlcnRpY2FsKTtcbiAgfVxuXG4gID4gLiN7JHByZWZpeH1zaHJpbmsge1xuICAgIEBpbmNsdWRlIHh5LWNlbGwtc2l6ZShzaHJpbmssICR2ZXJ0aWNhbDogJHZlcnRpY2FsKTtcbiAgfVxuXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgLy8gU2l6aW5nIChwZXJjZW50YWdlKVxuICAgICRjbGFzc25hbWU6IGlmKCR2ZXJ0aWNhbCwgJy4jeyRjbGFzcy1icmVha3BvaW50fS0jeyRpfScsICcuI3skY2xhc3MtYnJlYWtwb2ludH0tI3skaX0nKTtcblxuICAgID4gI3skY2xhc3NuYW1lfSB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLXNpemUoJGksICR2ZXJ0aWNhbDogJHZlcnRpY2FsKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gTWFyZ2luIEdyaWQgY2xhc3Nlc1xuQG1peGluIHh5LW1hcmdpbi1ncmlkLWNsYXNzZXMoXG4gICRndXR0ZXItcG9zaXRpb246IGxlZnQgcmlnaHQsXG4gICR2ZXJ0aWNhbDogZmFsc2UsXG4gICR3cmFwcGluZy1zZWxlY3RvcjogJy5ncmlkLW1hcmdpbi14J1xuKXtcbiAgI3skd3JhcHBpbmctc2VsZWN0b3J9IHtcbiAgICBAaW5jbHVkZSB4eS1ndXR0ZXJzKCRuZWdhdGl2ZTogdHJ1ZSwgJGd1dHRlci1wb3NpdGlvbjogJGd1dHRlci1wb3NpdGlvbik7XG5cbiAgICAvLyBCYXNlIGNlbGwgc3R5bGVzXG4gICAgPiAuY2VsbCB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsKCR2ZXJ0aWNhbDogJHZlcnRpY2FsLCAkb3V0cHV0OiAoc2l6ZSBndXR0ZXJzKSk7XG4gICAgfVxuXG4gICAgLy8gYmFzZSBzdHlsZXMgbmVlZCB0byBhbGwgYmUgYmVmb3JlIHRoZSBhdXRvIGFuZCBzaHJpbmsgc3R5bGVzXG4gICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCgpIHtcbiAgICAgIEBpZih0eXBlLW9mKCRncmlkLW1hcmdpbi1ndXR0ZXJzKSA9PSAnbWFwJyBhbmQgbWFwLWhhcy1rZXkoJGdyaWQtbWFyZ2luLWd1dHRlcnMsICQtemYtc2l6ZSkgYW5kICQtemYtc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCkge1xuICAgICAgICA+IC5jZWxsIHtcbiAgICAgICAgICBAaW5jbHVkZSB4eS1jZWxsKCR2ZXJ0aWNhbDogJHZlcnRpY2FsLCAkb3V0cHV0OiAoc2l6ZSBndXR0ZXJzKSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCkge1xuXG4gICAgICAvLyBUaGlzIGlzIHB1cmVseSBmb3IgcmVzcG9uc2l2ZSBndXR0ZXJzIC0gdGhlIG1hcmdpbiBncmlkIGhhcyB0byBnbyBiYWNrIGFuZCBhZGp1c3Qgd2lkdGhzIChvciBoZWlnaHRzKVxuICAgICAgLy8gZm9yIGFsbCBwcmlvciBicmVha3BvaW50cy5cbiAgICAgIC8vIEFzIHRoZWlyIGd1dHRlciBpcyBkZWZpbmVkIHdpdGggdGhlaXIgd2lkdGgvaGVpZ2h0LCBldmVuIGJyZWFrcG9pbnQgd2l0aG91dCBhIG5ldyBtYXJnaW4gbXVzdCBiZVxuICAgICAgLy8gZ2VuZXJhdGVkIHRvIG5vdCBoYXZpbmcgdGhlaXIgd2lkdGgvaGVpZ2h0IG92ZXJyaWRlZCBieSByZS1hZGp1c3RlZCBzbWFsbGVyIGJyZWFrcG9pbnRzLlxuICAgICAgQGlmKHR5cGUtb2YoJGdyaWQtbWFyZ2luLWd1dHRlcnMpID09ICdtYXAnIGFuZCBtYXAtaGFzLWtleSgkZ3JpZC1tYXJnaW4tZ3V0dGVycywgJC16Zi1zaXplKSkge1xuICAgICAgICBAZWFjaCAkYnAgaW4gLXpmLWJyZWFrcG9pbnRzLWxlc3MtdGhhbigkLXpmLXNpemUpIHtcbiAgICAgICAgICBAaW5jbHVkZSAteHktYnJlYWtwb2ludC1jZWxsLWNsYXNzZXMoJGJwLCAkLXpmLXNpemUsICR2ZXJ0aWNhbCk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgLXh5LWJyZWFrcG9pbnQtY2VsbC1jbGFzc2VzKCQtemYtc2l6ZSwgJC16Zi1zaXplLCAkdmVydGljYWwpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBQYWRkaW5nIEdyaWQgY2xhc3Nlc1xuQG1peGluIHh5LXBhZGRpbmctZ3JpZC1jbGFzc2VzIHtcbiAgLmdyaWQtcGFkZGluZy14IHtcblxuICAgIC8vIE5lZ2F0aXZlIG1hcmdpbiBmb3IgbmVzdGVkIGdyaWRzXG4gICAgLmdyaWQtcGFkZGluZy14IHtcbiAgICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJG5lZ2F0aXZlOiB0cnVlKTtcbiAgICB9XG5cbiAgICAvLyBOZWdhdGl2ZSBtYXJnaW4gZm9yIGdyaWRzIHdpdGhpbiBgZ3JpZC1jb250YWluZXIvZ3JpZC1jb250YWluZXIuZmx1aWRgXG4gICAgLy8gVGhpcyBhbGxvd3MgbWFyZ2luIGFuZCBwYWRkaW5nIGdyaWRzIHRvIGxpbmUgdXAgd2l0aCBlYWNob3RoZXJcbiAgICAuZ3JpZC1jb250YWluZXI6bm90KC5mdWxsKSA+ICYge1xuICAgICAgQGluY2x1ZGUgeHktZ3V0dGVycygkbmVnYXRpdmU6IHRydWUpO1xuICAgIH1cblxuICAgIC8vIEJhc2UgY2VsbCBzdHlsZXNcbiAgICA+IC5jZWxsIHtcbiAgICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJGd1dHRlcnM6ICRncmlkLXBhZGRpbmctZ3V0dGVycywgJGd1dHRlci10eXBlOiBwYWRkaW5nKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gQmxvY2sgR3JpZCBjbGFzc2VzXG5AbWl4aW4geHktYmxvY2stZ3JpZC1jbGFzc2VzKCRtYXJnaW4tZ3JpZDogdHJ1ZSwgJHBhZGRpbmctZ3JpZDogdHJ1ZSkge1xuICBAaWYgJHBhZGRpbmctZ3JpZCB7XG4gICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCB7XG4gICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICR4eS1ibG9jay1ncmlkLW1heCB7XG4gICAgICAgIC4jeyQtemYtc2l6ZX0tdXAtI3skaX0ge1xuICAgICAgICAgIEBpbmNsdWRlIHh5LWdyaWQtbGF5b3V0KCRuOiAkaSwgJHNlbGVjdG9yOiAnLmNlbGwnLCAkZ3V0dGVyLXR5cGU6IHBhZGRpbmcsICRvdXRwdXQ6IChzaXplKSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaWYgJG1hcmdpbi1ncmlkIHtcbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50IHtcbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJHh5LWJsb2NrLWdyaWQtbWF4IHtcbiAgICAgICAgLy8gVGhpcyBpcyBwdXJlbHkgZm9yIHJlc3BvbnNpdmUgZ3V0dGVycyAtIHRoZSBtYXJnaW4gZ3JpZCBoYXMgdG8gZ28gYmFjayBhbmQgYWRqdXN0IHdpZHRocyAob3IgaGVpZ2h0cylcbiAgICAgICAgLy8gZm9yIHByaW9yIGJyZWFrcG9pbnRzIGJhc2VkIG9uIHRoZSByZXNwb25zaXZlIGd1dHRlci5cbiAgICAgICAgQGlmKHR5cGUtb2YoJGdyaWQtbWFyZ2luLWd1dHRlcnMpID09ICdtYXAnIGFuZCBtYXAtaGFzLWtleSgkZ3JpZC1tYXJnaW4tZ3V0dGVycywgJC16Zi1zaXplKSkge1xuICAgICAgICAgIEBlYWNoICRicCBpbiAtemYtYnJlYWtwb2ludHMtbGVzcy10aGFuKCQtemYtc2l6ZSkge1xuICAgICAgICAgICAgQGlmKG1hcC1oYXMta2V5KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCAkYnApKSB7XG4gICAgICAgICAgICAgIC5ncmlkLW1hcmdpbi14LiN7JGJwfS11cC0jeyRpfSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1sYXlvdXQoJG46ICRpLCAkc2VsZWN0b3I6ICcuY2VsbCcsICRndXR0ZXItdHlwZTogbWFyZ2luLCAkb3V0cHV0OiAoc2l6ZSkpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICR4eS1ibG9jay1ncmlkLW1heCB7XG4gICAgICAgIC5ncmlkLW1hcmdpbi14LiN7JC16Zi1zaXplfS11cC0jeyRpfSB7XG4gICAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1sYXlvdXQoJG46ICRpLCAkc2VsZWN0b3I6ICcuY2VsbCcsICRndXR0ZXItdHlwZTogbWFyZ2luLCAkb3V0cHV0OiAoc2l6ZSkpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIENvbGxhcHNlIGNsYXNzZXNcbkBtaXhpbiB4eS1jb2xsYXBzZS1ncmlkLWNsYXNzZXMoJG1hcmdpbi1ncmlkOiB0cnVlLCAkcGFkZGluZy1ncmlkOiB0cnVlKSB7XG4gIEBlYWNoICRicCBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICBAaWYgJG1hcmdpbi1ncmlkIHtcbiAgICAgIC4jeyRicH0tbWFyZ2luLWNvbGxhcHNlIHtcbiAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1jb2xsYXBzZSgkZ3V0dGVyLXR5cGU6IG1hcmdpbiwgJG1pbi1icmVha3BvaW50OiAkYnApO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkcGFkZGluZy1ncmlkIHtcbiAgICAgIC4jeyRicH0tcGFkZGluZy1jb2xsYXBzZSB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWdyaWQtY29sbGFwc2UoJGd1dHRlci10eXBlOiBwYWRkaW5nLCAkbWluLWJyZWFrcG9pbnQ6ICRicCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIE9mZnNldCBjbGFzc2VzXG5AbWl4aW4geHktb2Zmc2V0LWNlbGwtY2xhc3NlcyB7XG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQge1xuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgICAvLyBPZmZzZXRzXG4gICAgICAkbzogJGkgLSAxO1xuXG4gICAgICAuI3skLXpmLXNpemV9LW9mZnNldC0jeyRvfSB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtb2Zmc2V0KCRvLCAkZ3V0dGVyczogJGdyaWQtcGFkZGluZy1ndXR0ZXJzLCAkZ3V0dGVyLXR5cGU6IHBhZGRpbmcpO1xuICAgICAgfVxuXG4gICAgICAuZ3JpZC1tYXJnaW4teCA+IC4jeyQtemYtc2l6ZX0tb2Zmc2V0LSN7JG99IHtcbiAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1vZmZzZXQoJG8pO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBWZXJ0aWNhbCBHcmlkIGNsYXNzZXNcbkBtaXhpbiB4eS12ZXJ0aWNhbC1ncmlkLWNsYXNzZXMoXG4gICRtYXJnaW4tZ3JpZDogdHJ1ZSxcbiAgJHBhZGRpbmctZ3JpZDogdHJ1ZVxuKSB7XG5cbiAgLy8gQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCgpIHtcbiAgLy8gICBAaWYgbm90KCQtemYtc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCkge1xuICAvLyAgIH1cbiAgLy8gfVxuXG4gIC5ncmlkLXkge1xuICAgIEBpbmNsdWRlIHh5LWdyaWQodmVydGljYWwsIGZhbHNlKTtcblxuXG4gICAgPiAuY2VsbCB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLXJlc2V0KCk7XG4gICAgfVxuXG4gICAgPiAuYXV0byB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLXNpemUoYXV0bywgJGd1dHRlci10eXBlOiBub25lLCAkdmVydGljYWw6IHRydWUpO1xuICAgIH1cblxuICAgID4gLnNocmluayB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLXNpemUoc2hyaW5rLCAkZ3V0dGVyLXR5cGU6IG5vbmUsICR2ZXJ0aWNhbDogdHJ1ZSk7XG4gICAgfVxuXG5cbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCkge1xuICAgICAgLy8gVGhpcyBpcyBhIGJpdCBvZiBhIGhhY2svd29ya2Fyb3VuZCwgc2VlIHRoZXNlIGlzc3VlcyBhbmQgUFJzIGZvciB0aGUgYmFja3N0b3J5OlxuICAgICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL2ZvdW5kYXRpb24vZm91bmRhdGlvbi1zaXRlcy9pc3N1ZXMvMTAyNDRcbiAgICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9mb3VuZGF0aW9uL2ZvdW5kYXRpb24tc2l0ZXMvcHVsbC8xMDIyMiBhbmRcbiAgICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9mb3VuZGF0aW9uL2ZvdW5kYXRpb24tc2l0ZXMvcHVsbC8xMDE2NFxuICAgICAgJHN0cjogXCI+IC4jeyQtemYtc2l6ZX0tc2hyaW5rLCA+IC4jeyQtemYtc2l6ZX0tZnVsbFwiO1xuICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcbiAgICAgICAgJHN0cjogJHN0ciArIFwiLCA+IC4jeyQtemYtc2l6ZX0tI3skaX1cIjtcbiAgICAgIH1cbiAgICAgICN7JHN0cn0ge1xuICAgICAgICBmbGV4LWJhc2lzOiBhdXRvO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoKSB7XG4gICAgICAvLyBSZXNwb25zaXZlIFwiYXV0b1wiIG1vZGlmaWVyXG4gICAgICBAaWYgbm90KCQtemYtc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCkge1xuICAgICAgICA+IC4jeyQtemYtc2l6ZX0tYXV0byB7XG4gICAgICAgICAgQGluY2x1ZGUgeHktY2VsbChhdXRvLCAkZ3V0dGVyLXR5cGU6IG5vbmUsICR2ZXJ0aWNhbDogdHJ1ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJS14eS1jZWxsLWJhc2Utc2hyaW5rLXZlcnRpY2FsLSN7JC16Zi1zaXplfSB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtYmFzZShzaHJpbmspO1xuICAgICAgfVxuXG4gICAgICAvLyBSZXNwb25zaXZlIFwic2hyaW5rXCIgbW9kaWZpZXJcbiAgICAgIEBpZiBub3QoJC16Zi1zaXplID09ICQtemYtemVyby1icmVha3BvaW50KSB7XG4gICAgICAgID4gLiN7JC16Zi1zaXplfS1zaHJpbmsge1xuICAgICAgICAgIEBleHRlbmQgJS14eS1jZWxsLWJhc2Utc2hyaW5rLXZlcnRpY2FsLSN7JC16Zi1zaXplfTtcbiAgICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLXNpemUoc2hyaW5rLCAkZ3V0dGVyLXR5cGU6IG5vbmUsICR2ZXJ0aWNhbDogdHJ1ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gUmVzcG9uc2l2ZSB3aWR0aCBtb2RpZmllcnNcbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgICAgIC8vIFNpemluZyAocGVyY2VudGFnZSlcbiAgICAgICAgPiAuI3skLXpmLXNpemV9LSN7JGl9IHtcbiAgICAgICAgICBAZXh0ZW5kICUteHktY2VsbC1iYXNlLXNocmluay12ZXJ0aWNhbC0jeyQtemYtc2l6ZX07XG4gICAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1zaXplKCRpLCAkZ3V0dGVyLXR5cGU6IG5vbmUsICR2ZXJ0aWNhbDogdHJ1ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgIH1cbiAgfVxuXG4gIEBpZiAkcGFkZGluZy1ncmlkIHtcbiAgICAuZ3JpZC1wYWRkaW5nLXkge1xuICAgICAgLy8gTmVnYXRpdmUgbWFyZ2luIGZvciBuZXN0ZWQgZ3JpZHNcbiAgICAgIC5ncmlkLXBhZGRpbmcteSB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJG5lZ2F0aXZlOiB0cnVlLCAkZ3V0dGVyLXBvc2l0aW9uOiB0b3AgYm90dG9tKTtcbiAgICAgIH1cblxuICAgICAgLy8gQmFzZSBjZWxsIHN0eWxlc1xuICAgICAgPiAuY2VsbCB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJGd1dHRlcnM6ICRncmlkLXBhZGRpbmctZ3V0dGVycywgJGd1dHRlci10eXBlOiBwYWRkaW5nLCAkZ3V0dGVyLXBvc2l0aW9uOiB0b3AgYm90dG9tKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaWYgJG1hcmdpbi1ncmlkIHtcbiAgICBAaW5jbHVkZSB4eS1tYXJnaW4tZ3JpZC1jbGFzc2VzKHRvcCBib3R0b20sIHRydWUsICcuZ3JpZC1tYXJnaW4teScpO1xuICB9XG5cbn1cblxuQG1peGluIHh5LWZyYW1lLWdyaWQtY2xhc3NlcygkdmVydGljYWwtZ3JpZDogdHJ1ZSwgJG1hcmdpbi1ncmlkOiB0cnVlKSB7XG4gIC8vIEZyYW1lZCBncmlkIHN0eWxlc1xuICAuZ3JpZC1mcmFtZSB7XG4gICAgQGluY2x1ZGUgeHktZ3JpZC1mcmFtZTtcbiAgfVxuXG4gIC5jZWxsIC5ncmlkLWZyYW1lIHtcbiAgICB3aWR0aDogMTAwJTsgLy8gU2FtZSBhcyBpbmNsdWRlIHdpdGggJG5lc3RlZCwgYnV0IHdpdGggbGVzcyBjc3NcbiAgfVxuXG4gIC5jZWxsLWJsb2NrIHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsLWJsb2NrKCk7XG4gIH1cblxuICAuY2VsbC1ibG9jay15IHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsLWJsb2NrKHRydWUpO1xuICB9XG5cblxuICAuY2VsbC1ibG9jay1jb250YWluZXIge1xuICAgIEBpbmNsdWRlIHh5LWNlbGwtYmxvY2stY29udGFpbmVyKCk7XG4gIH1cblxuXG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoZmFsc2UpIHtcblxuICAgIC4jeyQtemYtc2l6ZX0tZ3JpZC1mcmFtZSB7XG4gICAgICBAaW5jbHVkZSB4eS1ncmlkLWZyYW1lO1xuICAgIH1cblxuICAgIC5jZWxsIC4jeyQtemYtc2l6ZX0tZ3JpZC1mcmFtZSB7XG4gICAgICB3aWR0aDogMTAwJTsgLy8gU2FtZSBhcyBpbmNsdWRlIHdpdGggJG5lc3RlZCwgYnV0IHdpdGggbGVzcyBjc3NcbiAgICB9XG5cbiAgICAuI3skLXpmLXNpemV9LWNlbGwtYmxvY2sge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1ibG9jaygpO1xuICAgIH1cblxuICAgIC4jeyQtemYtc2l6ZX0tY2VsbC1ibG9jay1jb250YWluZXIge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1ibG9jay1jb250YWluZXIoKTtcbiAgICB9XG5cbiAgICAuI3skLXpmLXNpemV9LWNlbGwtYmxvY2steSB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLWJsb2NrKHRydWUpO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkdmVydGljYWwtZ3JpZCB7XG4gICAgLmdyaWQteSB7XG4gICAgICAmLmdyaWQtZnJhbWUge1xuICAgICAgICBAaW5jbHVkZSB4eS1ncmlkLWZyYW1lKHRydWUpO1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludChmYWxzZSkge1xuICAgICAgICAmLiN7JC16Zi1zaXplfS1ncmlkLWZyYW1lIHtcbiAgICAgICAgICBAaW5jbHVkZSB4eS1ncmlkLWZyYW1lKHRydWUpO1xuICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgIH1cbiAgICB9XG4gICAgLmNlbGwge1xuICAgICAgLmdyaWQteS5ncmlkLWZyYW1lIHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlOyAvLyBTYW1lIGFzIGluY2x1ZGUgd2l0aCAkbmVzdGVkLCBidXQgd2l0aCBsZXNzIGNzc1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludChmYWxzZSkge1xuICAgICAgICAuZ3JpZC15LiN7JC16Zi1zaXplfS1ncmlkLWZyYW1lIHtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7IC8vIFNhbWUgYXMgaW5jbHVkZSB3aXRoICRuZXN0ZWQsIGJ1dCB3aXRoIGxlc3MgY3NzXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGlmICRtYXJnaW4tZ3JpZCB7XG4gICAgQGluY2x1ZGUgeHktbWFyZ2luLWdyaWQtY2xhc3Nlcyh0b3AgYm90dG9tLCB0cnVlLCAnLmdyaWQtbWFyZ2luLXknKTtcbiAgICAuZ3JpZC1mcmFtZS5ncmlkLW1hcmdpbi15IHtcbiAgICAgIEBpbmNsdWRlIHh5LWdyaWQtZnJhbWUodHJ1ZSwgZmFsc2UsICRncmlkLW1hcmdpbi1ndXR0ZXJzLCAkaW5jbHVkZS1iYXNlOiBmYWxzZSk7XG4gICAgfVxuICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoZmFsc2UpIHtcbiAgICAgIC5ncmlkLW1hcmdpbi15LiN7JC16Zi1zaXplfS1ncmlkLWZyYW1lIHtcbiAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1mcmFtZSh0cnVlLCBmYWxzZSwgJGdyaWQtbWFyZ2luLWd1dHRlcnMsICQtemYtc2l6ZSwgZmFsc2UpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBGaW5hbCBjbGFzc2VzXG5AbWl4aW4gZm91bmRhdGlvbi14eS1ncmlkLWNsYXNzZXMoXG4gICRiYXNlLWdyaWQ6IHRydWUsXG4gICRtYXJnaW4tZ3JpZDogdHJ1ZSxcbiAgJHBhZGRpbmctZ3JpZDogdHJ1ZSxcbiAgJGJsb2NrLWdyaWQ6IHRydWUsXG4gICRjb2xsYXBzZTogdHJ1ZSxcbiAgJG9mZnNldDogdHJ1ZSxcbiAgJHZlcnRpY2FsLWdyaWQ6IHRydWUsXG4gICRmcmFtZS1ncmlkOiB0cnVlXG4pIHtcblxuICAvLyBCYXNlIGdyaWQgc3R5bGVzXG4gIEBpZigkYmFzZS1ncmlkKSB7XG4gICAgQGluY2x1ZGUgeHktYmFzZS1ncmlkLWNsYXNzZXMoKTtcbiAgfVxuXG4gIC8vIE1hcmdpbiBncmlkXG4gIEBpZigkbWFyZ2luLWdyaWQpIHtcbiAgICBAaW5jbHVkZSB4eS1tYXJnaW4tZ3JpZC1jbGFzc2VzKCk7XG4gIH1cblxuICAvLyBQYWRkaW5nIGdyaWRcbiAgQGlmKCRwYWRkaW5nLWdyaWQpIHtcbiAgICBAaW5jbHVkZSB4eS1wYWRkaW5nLWdyaWQtY2xhc3NlcygpO1xuICB9XG5cbiAgLy8gQmxvY2sgZ3JpZFxuICBAaWYoJGJsb2NrLWdyaWQpIHtcbiAgICBAaW5jbHVkZSB4eS1ibG9jay1ncmlkLWNsYXNzZXMoJG1hcmdpbi1ncmlkLCAkcGFkZGluZy1ncmlkKTtcbiAgfVxuXG4gIC8vIENvbGxhcHNlIGd1dHRlcnNcbiAgQGlmKCRjb2xsYXBzZSkge1xuICAgIEBpbmNsdWRlIHh5LWNvbGxhcHNlLWdyaWQtY2xhc3NlcygkbWFyZ2luLWdyaWQsICRwYWRkaW5nLWdyaWQpO1xuICB9XG5cbiAgLy8gT2Zmc2V0IGd1dHRlcnNcbiAgQGlmKCRvZmZzZXQpIHtcbiAgICBAaW5jbHVkZSB4eS1vZmZzZXQtY2VsbC1jbGFzc2VzKCk7XG4gIH1cblxuICAvLyBWZXJ0aWNhbCBncmlkXG4gIEBpZigkdmVydGljYWwtZ3JpZCkge1xuICAgIEBpbmNsdWRlIHh5LXZlcnRpY2FsLWdyaWQtY2xhc3NlcygkbWFyZ2luLWdyaWQsICRwYWRkaW5nLWdyaWQpO1xuICB9XG5cbiAgQGlmICgkZnJhbWUtZ3JpZCkge1xuICAgIEBpbmNsdWRlIHh5LWZyYW1lLWdyaWQtY2xhc3NlcygkdmVydGljYWwtZ3JpZCwgJG1hcmdpbi1ncmlkKVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgeHktZ3JpZFxuLy8vL1xuXG4vLy8gQ3JlYXRlIGd1dHRlcnMgZm9yIGEgY2VsbC9jb250YWluZXIuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1tYXJnaW4tZ3V0dGVyc10gLSBNYXAgb3Igc2luZ2xlIHZhbHVlIGZvciBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGd1dHRlci10eXBlIFttYXJnaW5dIC0gVHlwZSBvZiBndXR0ZXIgdG8gb3V0cHV0LiBBY2NlcHRzIGVpdGhlciBtYXJnaW4gb3IgcGFkZGluZy5cbi8vLyBAcGFyYW0ge0xpc3R9ICRndXR0ZXItcG9zaXRpb24gW3JpZ2h0IGxlZnRdIC0gVGhlIHBvc2l0aW9uIHRvIGFwcGx5IGd1dHRlcnMgdG8uIEFjY2VwdHMgYHRvcGAsIGBib3R0b21gLCBgbGVmdGAsIGByaWdodGAgaW4gYW55IGNvbWJpbmF0aW9uLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJG5lZ2F0aXZlIFtmYWxzZV0gLSBXaGV0aGVyIHRvIGFwcGx5IHRoZSBndXR0ZXIgYXMgYSBuZWdhdGl2ZSB2YWx1ZS4gQ29tbW9ubHkgdXNlZCBmb3IgbmVzdGVkIGdyaWRzLlxuQG1peGluIHh5LWd1dHRlcnMoXG4gICRndXR0ZXJzOiAkZ3JpZC1tYXJnaW4tZ3V0dGVycyxcbiAgJGd1dHRlci10eXBlOiBtYXJnaW4sXG4gICRndXR0ZXItcG9zaXRpb246IHJpZ2h0IGxlZnQsXG4gICRuZWdhdGl2ZTogZmFsc2Vcbikge1xuICAkb3BlcmF0b3I6IGlmKCRuZWdhdGl2ZSwgJy0nLCAnJyk7XG5cbiAgLy8gSWYgd2UgaGF2ZSBkZWNsYXJlZCBuZWdhdGl2ZSBndXR0ZXJzLCBmb3JjZSB0eXBlIHRvIGBtYXJnaW4uXG4gICRndXR0ZXItdHlwZTogaWYoJG5lZ2F0aXZlLCAnbWFyZ2luJywgJGd1dHRlci10eXBlKTtcblxuICAvLyBPdXRwdXQgb3VyIG1hcmdpbiBndXR0ZXJzLlxuICBAaWYgKHR5cGUtb2YoJGd1dHRlcnMpID09ICdtYXAnKSB7XG4gICAgQGluY2x1ZGUgLXpmLWJyZWFrcG9pbnQtdmFsdWUoYXV0bywgJGd1dHRlcnMpIHtcbiAgICAgICRndXR0ZXI6IHJlbS1jYWxjKCQtemYtYnAtdmFsdWUpICogMC41O1xuXG4gICAgICAvLyBMb29wIHRocm91Z2ggZWFjaCBndXR0ZXIgcG9zaXRpb25cbiAgICAgIEBlYWNoICR2YWx1ZSBpbiAkZ3V0dGVyLXBvc2l0aW9uIHtcbiAgICAgICAgI3skZ3V0dGVyLXR5cGV9LSN7JHZhbHVlfTogdW5xdW90ZShcIiN7JG9wZXJhdG9yfSN7JGd1dHRlcn1cIik7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICh0eXBlLW9mKCRndXR0ZXJzKSA9PSAnbnVtYmVyJykge1xuICAgICRndXR0ZXI6IHJlbS1jYWxjKCRndXR0ZXJzKSAqIDAuNTtcblxuICAgIC8vIExvb3AgdGhyb3VnaCBlYWNoIGd1dHRlciBwb3NpdGlvblxuICAgIEBlYWNoICR2YWx1ZSBpbiAkZ3V0dGVyLXBvc2l0aW9uIHtcbiAgICAgICN7JGd1dHRlci10eXBlfS0jeyR2YWx1ZX06IHVucXVvdGUoXCIjeyRvcGVyYXRvcn0jeyRndXR0ZXJ9XCIpO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHh5LWdyaWRcbi8vLy9cblxuLy8vIENyZWF0ZXMgYSBtYXggd2lkdGggY29udGFpbmVyLCBkZXNpZ25lZCB0byBob3VzZSB5b3VyIGdyaWQgY29udGVudC5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2lkdGggWyRncmlkLWNvbnRhaW5lcl0gLSBhIHdpZHRoIHRvIGxpbWl0IHRoZSBjb250YWluZXIgdG8uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRwYWRkaW5nIFskZ3JpZC1jb250YWluZXItcGFkZGluZ10gLSBwYWRkaW5ncyBvZiB0aGUgY29udGFpbmVyLlxuQG1peGluIHh5LWdyaWQtY29udGFpbmVyKFxuICAkd2lkdGg6ICRncmlkLWNvbnRhaW5lcixcbiAgJHBhZGRpbmc6ICRncmlkLWNvbnRhaW5lci1wYWRkaW5nXG4pIHtcbiAgQGluY2x1ZGUgeHktZ3V0dGVycygkZ3V0dGVyczogJHBhZGRpbmcsICRndXR0ZXItdHlwZTogcGFkZGluZyk7XG5cbiAgbWF4LXdpZHRoOiAkd2lkdGg7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG5cbi8vLyBDcmVhdGVzIGEgY29udGFpbmVyIGZvciB5b3VyIGZsZXggY2VsbHMuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXJlY3Rpb24gW2hvcml6b250YWxdIC0gRWl0aGVyIGhvcml6b250YWwgb3IgdmVydGljYWwgZGlyZWN0aW9uIG9mIGNlbGxzIHdpdGhpbi5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICR3cmFwIFt0cnVlXSAtIElmIHRoZSBjZWxscyB3aXRoaW4gc2hvdWxkIHdyYXAgb3Igbm90LlxuQG1peGluIHh5LWdyaWQoXG4gICRkaXJlY3Rpb246IGhvcml6b250YWwsXG4gICR3cmFwOiB0cnVlXG4pIHtcbiAgJGRpcmVjdGlvbjogaWYoJGRpcmVjdGlvbiA9PSAnaG9yaXpvbnRhbCcsIHJvdywgY29sdW1uKTtcbiAgJHdyYXA6IGlmKCR3cmFwLCB3cmFwLCBub3dyYXApO1xuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogJGRpcmVjdGlvbiAkd3JhcDtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB4eS1ncmlkXG4vLy8vXG5cbi8vLyBSZXR1cm5zIHRoZSBhcHByb3ByaWF0ZSBDU1MgZmxleCB2YWx1ZSBmb3IgYSBjZWxsIGJhc2UuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIFtmdWxsXSAtIFRoZSBzaXplIG9mIHlvdXIgY2VsbC4gQWNjZXB0cyBgZnVsbGAsIGBhdXRvYCwgYHNocmlua2AsIGBncm93YCwgb3IgYW55IG90aGVyIHZhbHVlIHJlcHJlc2VudGluZyBhIGNlbGwgc2l6ZSAoaXQgd2lsbCBiZSB0cmVhdGVkIGFzIGBzaHJpbmtgKS5cbi8vL1xuLy8vIEByZXR1cm5zIHtMaXN0fSBUaGUgY2VsbCBmbGV4IHByb3BlcnR5IHZhbHVlLlxuQGZ1bmN0aW9uIHh5LWNlbGwtYmFzZSgkc2l6ZTogZnVsbCkge1xuICBAaWYgKCRzaXplID09ICdhdXRvJykge1xuICAgIEByZXR1cm4gMSAxIDA7XG4gIH1cbiAgQGVsc2UgaWYgKCRzaXplID09ICdncm93Jykge1xuICAgIEByZXR1cm4gMSAwIGF1dG87XG4gIH1cbiAgQGVsc2UgaWYgKCRzaXplID09ICdzaHJpbmsnIG9yICRzaXplID09ICdmdWxsJyBvciB6Zi1pcy1mcmFjdGlvbigkc2l6ZSwgJGFsbG93LW5vLWRlbm9taW5hdG9yOiB0cnVlKSkge1xuICAgIEByZXR1cm4gMCAwIGF1dG87XG4gIH1cbiAgQHJldHVybiBudWxsO1xufVxuXG4vLy8gQ2FsY3VsYXRlIHRoZSBzaXplIG9mIGEgY2VsbCBndXR0ZXJzLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtbWFyZ2luLWd1dHRlcnNdIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSBmb3IgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGJyZWFrcG9pbnQgW251bGxdIC0gVGhlIG5hbWUgb2YgdGhlIGJyZWFrcG9pbnQgc2l6ZSBpbiB5b3VyIGd1dHRlcnMgbWFwIHRvIGdldCB0aGUgc2l6ZSBmcm9tLiBJZiBgYXV0b2AsIHJldHVybnMgdGhlIHJlc3BvbnNpdmUgZ3V0dGVycyBtYXAgYCRndXR0ZXJzYC4gSWYgdXNpbmcgd2l0aCB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdGhpcyB3aWxsIGJlIHNldCBhdXRvbWF0aWNhbGx5IHVubGVzcyBtYW51YWxseSBlbnRlcmVkLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcnxNYXB9IFRoZSBjZWxsIGd1dHRlciBzaXplIG9yIHRoZSByZXNwb25zaXZlIGd1dHRlcnMgbWFwLlxuQGZ1bmN0aW9uIHh5LWNlbGwtZ3V0dGVycyhcbiAgJGd1dHRlcnM6ICRncmlkLW1hcmdpbi1ndXR0ZXJzLFxuICAkYnJlYWtwb2ludDogbnVsbFxuKSB7XG4gIC8vIEZvciBgYXV0b2AsIHJldHVybnMgdGhlIHJlc3BvbnNpdmUgbWFwIGAkZ3V0dGVyc2AuXG4gIEBpZiAoJGJyZWFrcG9pbnQgPT0gJ2F1dG8nKSB7XG4gICAgQHJldHVybiAkZ3V0dGVycztcbiAgfVxuXG4gIC8vIFVzZSB0aGUgY29udGV4dHVhbCBicmVha3BvaW50IGJ5IGRlZmF1bHQuXG4gICRicmVha3BvaW50OiAtemYtY3VycmVudC1icmVha3BvaW50KCRicmVha3BvaW50KTtcblxuICBAaWYgKCRicmVha3BvaW50KSB7XG4gICAgQHJldHVybiAtemYtZ2V0LWJwLXZhbCgkZ3V0dGVycywgJGJyZWFrcG9pbnQpO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAcmV0dXJuIC16Zi1nZXQtYnAtdmFsKCRndXR0ZXJzLCAkLXpmLXplcm8tYnJlYWtwb2ludCkgb3IgMDtcbiAgfVxufVxuXG4vLy8gUmV0dXJucyB0aGUgcGVyY2VudGFnZSBzaXplIG9mIGEgY2VsbC5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRzaXplIFskZ3JpZC1jb2x1bW5zXSAtIFNpemUgdG8gbWFrZSB0aGUgY2VsbC4gWW91IGNhbiBwYXNzIGEgdmFsdWUgaW4gbXVsdGlwbGUgZm9ybWF0cywgc3VjaCBhcyBgNmAsIGA1MCVgLCBgMSBvZiAyYCBvciBgMS8zYC5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IFNpemUgb2YgdGhlIGNlbGwgKGluIHBlcmNlbnQpLlxuQGZ1bmN0aW9uIHh5LWNlbGwtc2l6ZShcbiAgJHNpemU6ICRncmlkLWNvbHVtbnNcbikge1xuICBAcmV0dXJuIGZyYWN0aW9uLXRvLXBlcmNlbnRhZ2UoJHNpemUsICRkZW5vbWluYXRvcjogJGdyaWQtY29sdW1ucyk7XG59XG5cbi8vLyBSZXR1cm5zIHRoZSBhcHByb3ByaWF0ZSBDU1MgdmFsdWUgZm9yIGEgY2VsbCBzaXplLlxuLy8vXG4vLy8gR3V0dGVycy1yZWxhdGVkIGFyZ3VtZW50cyBhcmUgcmVxdWlyZWQgZm9yIGNlbGxzIHdpdGggbWFyZ2luIGd1dHRlcnMgKGJ5IGRlZmF1bHQpIGFzIHRoZSBndXR0ZXIgaXMgaW5jbHVkZWQgaW4gdGhlIHdpZHRoLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHNpemUgW2Z1bGxdIC0gVGhlIHNpemUgb2YgeW91ciBjZWxsLiBDYW4gYmUgYGZ1bGxgLCBgYXV0b2AsIGBzaHJpbmtgIG9yIGFueSBmcmFjdGlvbiBsaWtlIGA2YCwgYDUwJWAsIGAxIG9mIDJgIG9yIGAxLzJgLlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLW1hcmdpbi1ndXR0ZXJzXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgZm9yIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZ3V0dGVyLXR5cGUgW21hcmdpbl0gLSBUeXBlIG9mIGd1dHRlciB0byBvdXRwdXQuIEFjY2VwdHMgYG1hcmdpbmAsIGBwYWRkaW5nYCBvciBgbm9uZWAuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRicmVha3BvaW50IFtudWxsXSAtIFRoZSBuYW1lIG9mIHRoZSBicmVha3BvaW50IHNpemUgaW4geW91ciBndXR0ZXJzIG1hcCB0byBnZXQgdGhlIHNpemUgZnJvbS4gSWYgYGF1dG9gLCByZXR1cm5zIGEgbWFwIG9mIHNpemVzIGFkYXB0ZWQgdG8gcmVzcG9uc2l2ZSBndXR0ZXJzLiBJZiB1c2luZyB3aXRoIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0aGlzIHdpbGwgYmUgc2V0IGF1dG9tYXRpY2FsbHkgdW5sZXNzIG1hbnVhbGx5IGVudGVyZWQuXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfFN0cmluZ3xNYXB9IFRoZSBjZWxsIHNpemluZyBwcm9wZXJ0eSB2YWx1ZSwgb3IgYSByZXNwb25zaXZlIG1hcCBvZiB0aGVtLlxuQGZ1bmN0aW9uIHh5LWNlbGwtc2l6ZS1jc3MoXG4gICRzaXplOiBmdWxsLFxuICAkZ3V0dGVyczogJGdyaWQtbWFyZ2luLWd1dHRlcnMsXG4gICRndXR0ZXItdHlwZTogbWFyZ2luLFxuICAkYnJlYWtwb2ludDogbnVsbFxuKSB7XG4gICRtYXJnaW4tZ3V0dGVyOiAwO1xuXG4gIEBpZiAoJHNpemUgPT0gJ2F1dG8nIG9yICRzaXplID09ICdzaHJpbmsnKSB7XG4gICAgQHJldHVybiBhdXRvO1xuICB9XG5cbiAgLy8gRm9yIGNlbGxzIHdpdGggbWFyZ2luIGd1dHRlcnMsIHRoZSBndXR0ZXIgaXMgaW5jbHVkZWQgaW4gdGhlIHdpZHRoLlxuICBAaWYgKCRndXR0ZXItdHlwZSA9PSAnbWFyZ2luJykge1xuICAgICRtYXJnaW4tZ3V0dGVyOiB4eS1jZWxsLWd1dHRlcnMoJGd1dHRlcnMsICRicmVha3BvaW50KTtcbiAgICBAaWYgKCRtYXJnaW4tZ3V0dGVyID09IG51bGwpIHtcbiAgICAgIEBlcnJvciAneHktY2VsbC1zaXplOiBubyBndXR0ZXJzIHdlcmUgZm91bmQgaW4gYCRndXR0ZXJzYCBmb3IgXCIkYnJlYWtwb2ludDogI3skYnJlYWtwb2ludH1cIic7XG4gICAgfVxuICB9XG5cbiAgLy8gQ2FsY3VsYXRlIHRoZSBjZWxsIHNpemUgKG51bWJlcilcbiAgJHNpemUtcmF3OiBpZigkc2l6ZSA9PSAnZnVsbCcsIDEwMCUsIHh5LWNlbGwtc2l6ZSgkc2l6ZSkpO1xuXG4gIC8vIENhbGN1bGF0ZSB0aGUgY2VsbCBDU1Mgc2l6ZSBpbmNsdWRpbmcgZ3V0dGVycyAoc3RyaW5nKVxuICAvLyBJZiB0aGUgY2VsbCBoYXMgcmVzcG9uc2l2ZSBtYXJnaW4gZ3V0dGVycywgcmV0dXJuIGEgcmVzcG9uc2l2ZSBtYXAgb2Ygc2l6ZXMuXG4gIEBpZiB0eXBlLW9mKCRtYXJnaW4tZ3V0dGVyKSA9PSAnbWFwJyB7XG4gICAgJHJlc3BvbnNpdmUtY3NzLXNpemVzOiAoKTtcblxuICAgIEBlYWNoICRicCwgJG1nIGluICRtYXJnaW4tZ3V0dGVyIHtcbiAgICAgICRtZ2M6IHJlbS1jYWxjKCRtZyk7XG4gICAgICBAaWYgJG1nYyA9PSAwIHtcbiAgICAgICAgJG1nYzogMHJlbTtcbiAgICAgIH1cbiAgICAgICRzaXplLWNzczogaWYoJG1nID09IDAsICRzaXplLXJhdywgY2FsYygjeyRzaXplLXJhd30gLSAjeyRtZ30pKTtcbiAgICAgICRyZXNwb25zaXZlLWNzcy1zaXplczogbWFwLW1lcmdlKCRyZXNwb25zaXZlLWNzcy1zaXplcywgKCRicDogJHNpemUtY3NzKSk7XG4gICAgfVxuXG4gICAgQHJldHVybiAkcmVzcG9uc2l2ZS1jc3Mtc2l6ZXM7XG4gIH1cbiAgLy8gT3RoZXJ3aXNlLCByZXR1cm4gYSBzaW5nbGUgQ1NTIHNpemUuXG4gIEBlbHNlIHtcbiAgICAvLyBNYWtlIHN1cmUgdGhhdCAwIGlzIHRyYW5zbGF0ZWQgaW4gMHJlbSBmb3IgY2FsYygpXG4gICAgJG1nYzogcmVtLWNhbGMoJG1hcmdpbi1ndXR0ZXIpO1xuICAgIEBpZiAkbWdjID09IDAge1xuICAgICAgJG1nYzogMHJlbTtcbiAgICB9XG4gICAgJGNzcy1zaXplOiBpZigkbWFyZ2luLWd1dHRlciA9PSAwLCAkc2l6ZS1yYXcsIGNhbGMoI3skc2l6ZS1yYXd9IC0gI3skbWdjfSkpO1xuICAgIEByZXR1cm4gJGNzcy1zaXplO1xuICB9XG59XG5cbi8vLyBTZXRzIGJhc2UgZmxleCBwcm9wZXJ0aWVzIGZvciBjZWxscy5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgW2Z1bGxdIC0gVGhlIHNpemUgb2YgeW91ciBjZWxsLiBBY2NlcHRzIGBmdWxsYCwgYGF1dG9gLCBgc2hyaW5rYCwgYGdyb3dgLCBvciBhbnkgb3RoZXIgdmFsdWUgcmVwcmVzZW50aW5nIGEgY2VsbCBzaXplIChpdCB3aWxsIGJlIHRyZWF0ZWQgYXMgYHNocmlua2ApLlxuQG1peGluIHh5LWNlbGwtYmFzZSgkc2l6ZTogZnVsbCkge1xuICAkYmFzZTogeHktY2VsbC1iYXNlKCRzaXplKTtcblxuICBmbGV4OiAjeyRiYXNlfTtcblxuICAvLyBTZXQgYmFzZSBzdHlsZXMgZm9yIFwiZnVsbFwiIG9ubHlcbiAgQGlmKCRzaXplID09ICdmdWxsJykge1xuICAgIG1pbi1oZWlnaHQ6IDA7XG4gICAgbWluLXdpZHRoOiAwO1xuICB9XG59XG5cbi8vLyBSZXNldHMgYSBjZWxscyB3aWR0aCAob3IgaGVpZ2h0IGlmIHZlcnRpY2FsIGlzIHRydWUpIGFzIHdlbGwgYXMgc3RyaXBzIGl0cyBndXR0ZXJzLlxuLy8vXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkdmVydGljYWwgW2ZhbHNlXSAtIFNldCB0byB0cnVlIHRvIG91dHB1dCB2ZXJ0aWNhbCAoaGVpZ2h0KSBzdHlsZXMgcmF0aGVyIHRoYW4gd2lkdGhzLlxuQG1peGluIHh5LWNlbGwtcmVzZXQoJHZlcnRpY2FsOiB0cnVlKSB7XG4gICRkaXJlY3Rpb246IGlmKCR2ZXJ0aWNhbCA9PSB0cnVlLCBoZWlnaHQsIHdpZHRoKTtcbiAgI3skZGlyZWN0aW9ufTogYXV0bztcbiAgbWF4LSN7JGRpcmVjdGlvbn06IG5vbmU7XG59XG5cbi8vLyBTZXRzIHNpemluZyBwcm9wZXJ0aWVzIGZvciBjZWxscy5cbi8vL1xuLy8vIEd1dHRlcnMtcmVsYXRlZCBhcmd1bWVudHMgYXJlIHJlcXVpcmVkIGZvciBjZWxscyB3aXRoIG1hcmdpbiBndXR0ZXJzIChieSBkZWZhdWx0KSBhcyB0aGUgZ3V0dGVyIGlzIGluY2x1ZGVkIGluIHRoZSB3aWR0aC5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICRzaXplIFtmdWxsXSAtIFRoZSBzaXplIG9mIHlvdXIgY2VsbC4gQ2FuIGJlIGBmdWxsYCAoMTAwJSB3aWR0aCksIGBhdXRvYCAodXNlIGFsbCBhdmFpbGFibGUgc3BhY2UpLCBgc2hyaW5rYCAodXNlIG9ubHkgdGhlIHJlcXVpcmVkIHNwYWNlKSBvciBhbnkgZnJhY3Rpb24gKGA2YCwgYDUwJWAsIGAxIG9mIDJgIG9yIGAxLzJgLi4uKS5cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1tYXJnaW4tZ3V0dGVyc10gLSBNYXAgb3Igc2luZ2xlIHZhbHVlIGZvciBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGd1dHRlci10eXBlIFttYXJnaW5dIC0gVHlwZSBvZiBndXR0ZXIgdG8gb3V0cHV0LiBBY2NlcHRzIGBtYXJnaW5gLCBgcGFkZGluZ2Agb3IgYG5vbmVgLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkYnJlYWtwb2ludCBbbnVsbF0gLSBUaGUgbmFtZSBvZiB0aGUgYnJlYWtwb2ludCBzaXplIGluIHlvdXIgZ3V0dGVycyBtYXAgdG8gZ2V0IHRoZSBzaXplIGZyb20uIElmIGBhdXRvYCwgZ2VuZXJhdGVzIHNpemVzIGFkYXB0ZWQgZm9yIHJlc3BvbnNpdmUgZ3V0dGVycy4gSWYgdXNpbmcgd2l0aCB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdGhpcyB3aWxsIGJlIHNldCBhdXRvbWF0aWNhbGx5IHVubGVzcyBtYW51YWxseSBlbnRlcmVkLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHZlcnRpY2FsIFtmYWxzZV0gLSBTZXQgdG8gdHJ1ZSB0byBvdXRwdXQgdmVydGljYWwgKGhlaWdodCkgc3R5bGVzIHJhdGhlciB0aGFuIHdpZHRocy5cbkBtaXhpbiB4eS1jZWxsLXNpemUoXG4gICRzaXplOiBmdWxsLFxuICAkZ3V0dGVyczogJGdyaWQtbWFyZ2luLWd1dHRlcnMsXG4gICRndXR0ZXItdHlwZTogbWFyZ2luLFxuICAkYnJlYWtwb2ludDogbnVsbCxcbiAgJHZlcnRpY2FsOiBmYWxzZVxuKSB7XG4gICRzaXplczogeHktY2VsbC1zaXplLWNzcygkc2l6ZSwgJGd1dHRlcnMsICRndXR0ZXItdHlwZSwgJGJyZWFrcG9pbnQpO1xuICAkZGlyZWN0aW9uOiBpZigkdmVydGljYWwgPT0gdHJ1ZSwgaGVpZ2h0LCB3aWR0aCk7XG5cbiAgQGlmICh0eXBlLW9mKCRzaXplcykgPT0gJ21hcCcpIHtcbiAgICBAaW5jbHVkZSAtemYtYnJlYWtwb2ludC12YWx1ZShhdXRvLCAkc2l6ZXMpIHtcbiAgICAgICN7JGRpcmVjdGlvbn06ICQtemYtYnAtdmFsdWU7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAjeyRkaXJlY3Rpb259OiAkc2l6ZXM7XG4gIH1cbn1cblxuLy8vIFNldHMgZ3V0dGVycyBwcm9wZXJ0aWVzIGZvciBjZWxscy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLW1hcmdpbi1ndXR0ZXJzXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgZm9yIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZ3V0dGVyLXR5cGUgW21hcmdpbl0gLSBUeXBlIG9mIGd1dHRlciB0byBvdXRwdXQuIEFjY2VwdHMgYG1hcmdpbmAsIGBwYWRkaW5nYCBvciBgbm9uZWAuXG4vLy8gQHBhcmFtIHtMaXN0fSAkZ3V0dGVyLXBvc2l0aW9uIFtudWxsXSAtIFRoZSBwb3NpdGlvbiB0byBhcHBseSBndXR0ZXJzIHRvLiBBY2NlcHRzIGB0b3BgLCBgYm90dG9tYCwgYGxlZnRgLCBgcmlnaHRgIGluIGFueSBjb21iaW5hdGlvbi4gQnkgZGVmYXVsdCBgcmlnaHQgbGVmdGAgZm9yIGhvcml6b250YWwgY2VsbHMgYW5kIGB0b3AgYm90dG9tYCBmb3IgdmVydGljYWwgY2VsbHMuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRicmVha3BvaW50IFtudWxsXSAtIFRoZSBuYW1lIG9mIHRoZSBicmVha3BvaW50IHNpemUgaW4geW91ciBndXR0ZXJzIG1hcCB0byBnZXQgdGhlIHNpemUgZnJvbS4gSWYgYGF1dG9gLCBnZW5lcmF0ZXMgcmVzcG9uc2l2ZSBndXR0ZXJzLiBJZiB1c2luZyB3aXRoIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0aGlzIHdpbGwgYmUgc2V0IGF1dG9tYXRpY2FsbHkgdW5sZXNzIG1hbnVhbGx5IGVudGVyZWQuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkdmVydGljYWwgW2ZhbHNlXSAtIERpcmVjdGlvbiBvZiB0aGUgZ3V0dGVycyB0byBvdXRwdXQuIFNlZSBgJGd1dHRlci1wb3NpdGlvbmAuXG5AbWl4aW4geHktY2VsbC1ndXR0ZXJzKFxuICAkZ3V0dGVyczogJGdyaWQtbWFyZ2luLWd1dHRlcnMsXG4gICRndXR0ZXItdHlwZTogbWFyZ2luLFxuICAkZ3V0dGVyLXBvc2l0aW9uOiBudWxsLFxuICAkYnJlYWtwb2ludDogbnVsbCxcbiAgJHZlcnRpY2FsOiBmYWxzZVxuKSB7XG4gIC8vIEdldCB0aGUgZGVmYXVsdCBndXR0ZXIgcG9zaXRpb24gYWNjb3JkaW5nIHRvIGNlbGwgZGlyZWN0aW9uXG4gIEBpZigkZ3V0dGVyLXBvc2l0aW9uID09IG51bGwpIHtcbiAgICAkZ3V0dGVyLXBvc2l0aW9uOiBpZigkdmVydGljYWwgPT0gdHJ1ZSwgdG9wIGJvdHRvbSwgbGVmdCByaWdodCk7XG4gIH1cblxuICAvLyBHZXQgdGhlIGd1dHRlciB3aWR0aCBmb3IgdGhpcyBicmVha3BvaW50XG4gICRndXR0ZXItd2lkdGg6IHh5LWNlbGwtZ3V0dGVycygkZ3V0dGVycywgJGJyZWFrcG9pbnQpO1xuICBAaWYgKCRndXR0ZXItd2lkdGggPT0gbnVsbCkge1xuICAgIEBlcnJvciAneHktY2VsbC1ndXR0ZXJzOiBubyBndXR0ZXJzIHdlcmUgZm91bmQgaW4gYCRndXR0ZXJzYCBmb3IgXCIkYnJlYWtwb2ludDogI3skYnJlYWtwb2ludH1cIic7XG4gIH1cblxuICBAaWYgKCRndXR0ZXItdHlwZSBhbmQgJGd1dHRlci10eXBlICE9IG5vbmUpIHtcbiAgICBAaW5jbHVkZSB4eS1ndXR0ZXJzKCRndXR0ZXItd2lkdGgsICRndXR0ZXItdHlwZSwgJGd1dHRlci1wb3NpdGlvbik7XG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBjZWxsIGZvciB5b3VyIGdyaWQuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkc2l6ZSBbZnVsbF0gLSBUaGUgc2l6ZSBvZiB5b3VyIGNlbGwuIENhbiBiZSBgZnVsbGAgKDEwMCUgd2lkdGgpLCBgYXV0b2AgKHVzZSBhbGwgYXZhaWxhYmxlIHNwYWNlKSwgYHNocmlua2AgKHVzZSBvbmx5IHRoZSByZXF1aXJlZCBzcGFjZSkgb3IgYW55IGZyYWN0aW9uIChgNmAsIGA1MCVgLCBgMSBvZiAyYCBvciBgMS8yYC4uLikuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZ3V0dGVyLW91dHB1dCBbbnVsbF0gLSBbREVQUkVDQVRFRF0gV2hldGhlciBvciBub3QgdG8gb3V0cHV0IGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtbWFyZ2luLWd1dHRlcnNdIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSBmb3IgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRndXR0ZXItdHlwZSBbbWFyZ2luXSAtIFR5cGUgb2YgZ3V0dGVyIHRvIG91dHB1dC4gQWNjZXB0cyBgbWFyZ2luYCwgYHBhZGRpbmdgIG9yIGBub25lYC5cbi8vLyBAcGFyYW0ge0xpc3R9ICRndXR0ZXItcG9zaXRpb24gW251bGxdIC0gVGhlIHBvc2l0aW9uIHRvIGFwcGx5IGd1dHRlcnMgdG8uIEFjY2VwdHMgYHRvcGAsIGBib3R0b21gLCBgbGVmdGAsIGByaWdodGAgaW4gYW55IGNvbWJpbmF0aW9uLiBCeSBkZWZhdWx0IGByaWdodCBsZWZ0YCBmb3IgaG9yaXpvbnRhbCBjZWxscyBhbmQgYHRvcCBib3R0b21gIGZvciB2ZXJ0aWNhbCBjZWxscy5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGJyZWFrcG9pbnQgW251bGxdIC0gVGhlIG5hbWUgb2YgdGhlIGJyZWFrcG9pbnQgc2l6ZSBpbiB5b3VyIGd1dHRlcnMgbWFwIHRvIGdldCB0aGUgc2l6ZSBmcm9tLiBJZiBgYXV0b2AsIGdlbmVyYXRlcyByZXNwb25zaXZlIGd1dHRlcnMuIElmIHVzaW5nIHdpdGggdGhlIGBicmVha3BvaW50KClgIG1peGluIHRoaXMgd2lsbCBiZSBzZXQgYXV0b21hdGljYWxseSB1bmxlc3MgbWFudWFsbHkgZW50ZXJlZC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICR2ZXJ0aWNhbCBbZmFsc2VdIC0gU2V0IHRvIHRydWUgdG8gb3V0cHV0IHZlcnRpY2FsIChoZWlnaHQpIHN0eWxlcyByYXRoZXIgdGhhbiB3aWR0aHMuXG4vLy8gQHBhcmFtIHtMaXN0fSAkb3V0cHV0IFsoYmFzZSBzaXplIGd1dHRlcnMpXSAtIENlbGwgcGFydHMgdG8gb3V0cHV0LiBZb3Ugd2lsbCBuZWVkIHRvIGdlbmVyYXRlIG90aGVycyBwYXJ0cyBvZiB0aGUgY2VsbCBzZXBlcmF0ZWx5LCBpdCBtYXkgbm90IHdvcmsgcHJvcGVybHkgb3RoZXJ3aXNlLlxuQG1peGluIHh5LWNlbGwoXG4gICRzaXplOiBmdWxsLFxuICAkZ3V0dGVyLW91dHB1dDogbnVsbCxcbiAgJGd1dHRlcnM6ICRncmlkLW1hcmdpbi1ndXR0ZXJzLFxuICAkZ3V0dGVyLXR5cGU6IG1hcmdpbixcbiAgJGd1dHRlci1wb3NpdGlvbjogbnVsbCxcbiAgJGJyZWFrcG9pbnQ6IG51bGwsXG4gICR2ZXJ0aWNhbDogZmFsc2UsXG4gICRvdXRwdXQ6IChiYXNlIHNpemUgZ3V0dGVycylcbikge1xuICAvLyBEZWZhdWx0IGZvciAkZ3V0dGVyLW91dHB1dFxuICBAaWYgKCRndXR0ZXItb3V0cHV0ICE9IG51bGwpIHtcbiAgICBAd2FybiAneHktY2VsbDogJGd1dHRlci1vdXRwdXQgaXMgZGVwcmVjYXRlZCBhbmQgd2lsbCBiZSByZW1vdmVkLiBTZWUgbWlncmF0aW9uIG5vdGVzIGF0IGh0dHBzOi8vZ2l0LmlvL2ZvdW5kYXRpb24tNi02LTAnO1xuICAgIEBpZiAoJGd1dHRlci1vdXRwdXQgPT0gZmFsc2UpIHtcbiAgICAgICRvdXRwdXQ6IHNsLXJlbW92ZSgkb3V0cHV0LCBndXR0ZXJzKTtcbiAgICB9XG4gIH1cblxuICBAaWYgKGluZGV4KCRvdXRwdXQsIGJhc2UpKSB7XG4gICAgQGluY2x1ZGUgeHktY2VsbC1iYXNlKCRzaXplKTtcbiAgfVxuICBAaWYgKGluZGV4KCRvdXRwdXQsIHNpemUpKSB7XG4gICAgQGluY2x1ZGUgeHktY2VsbC1zaXplKCRzaXplLCAkZ3V0dGVycywgJGd1dHRlci10eXBlLCAkYnJlYWtwb2ludCwgJHZlcnRpY2FsKTtcbiAgfVxuICBAaWYgKGluZGV4KCRvdXRwdXQsIGd1dHRlcnMpKSB7XG4gICAgQGluY2x1ZGUgeHktY2VsbC1ndXR0ZXJzKCRndXR0ZXJzLCAkZ3V0dGVyLXR5cGUsICRndXR0ZXItcG9zaXRpb24sICRicmVha3BvaW50LCAkdmVydGljYWwpO1xuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgc2luZ2xlIGJyZWFrcG9pbnQgc2l6ZWQgZ3JpZC4gVXNlZCB0byBnZW5lcmF0ZSBvdXIgZ3JpZCBjbGFzc2VzLlxuLy8vXG4vLy8gYHh5LWNlbGwtc3RhdGljKClgIGlzIGRlcHJlY2F0ZWQgYW5kIHdpbGwgYmUgcmVtb3ZlZC5cbi8vLyBVc2UgYHh5LWNlbGwoKWAgaW5zdGVhZCB3aXRoIGAkb3V0cHV0OiAoc2l6ZSBndXR0ZXJzKWAgdG8gbm90IGdlbmVyYXRlIHRoZSBjZWxsIGJhc2UuXG4vLy8gU2VlIG1pZ3JhdGlvbiBub3RlcyBhdCBodHRwczovL2dpdC5pby9mb3VuZGF0aW9uLTYtNi0wXG4vLy9cbi8vLyBAZGVwcmVjYXRlZCB2Ni42LjBcbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICRzaXplIFtmdWxsXSAtIFRoZSBzaXplIG9mIHlvdXIgY2VsbC4gQ2FuIGJlIGBmdWxsYCAoMTAwJSB3aWR0aCksIGBhdXRvYCAodXNlIGFsbCBhdmFpbGFibGUgc3BhY2UpLCBgc2hyaW5rYCAodXNlIG9ubHkgdGhlIHJlcXVpcmVkIHNwYWNlKSBvciBhbnkgZnJhY3Rpb24gKGA2YCwgYDUwJWAsIGAxIG9mIDJgIG9yIGAxLzJgLi4uKS5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRndXR0ZXItb3V0cHV0IFt0cnVlXSAtIFdoZXRoZXIgb3Igbm90IHRvIG91dHB1dCBndXR0ZXJzLiBBbHdheXMgYHRydWVgIGZvciBtYXJnaW4gZ3V0dGVycy5cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1tYXJnaW4tZ3V0dGVyc10gLSBNYXAgb3Igc2luZ2xlIHZhbHVlIGZvciBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGd1dHRlci10eXBlIFttYXJnaW5dIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSBmb3IgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGJyZWFrcG9pbnQgW251bGxdIC0gVGhlIG5hbWUgb2YgdGhlIGJyZWFrcG9pbnQgc2l6ZSBpbiB5b3VyIGd1dHRlcnMgbWFwIHRvIGdldCB0aGUgc2l6ZSBmcm9tLiBJZiB1c2luZyB3aXRoIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0aGlzIHdpbGwgYmUgc2V0IGF1dG9tYXRpY2FsbHkgdW5sZXNzIG1hbnVhbGx5IGVudGVyZWQuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkdmVydGljYWwgW2ZhbHNlXSAtIFNldCB0byB0cnVlIHRvIG91dHB1dCB2ZXJ0aWNhbCAoaGVpZ2h0KSBzdHlsZXMgcmF0aGVyIHRoYW4gd2lkdGhzLlxuQG1peGluIHh5LWNlbGwtc3RhdGljKFxuICAkc2l6ZTogZnVsbCxcbiAgJGd1dHRlci1vdXRwdXQ6IHRydWUsXG4gICRndXR0ZXJzOiAkZ3JpZC1tYXJnaW4tZ3V0dGVycyxcbiAgJGd1dHRlci10eXBlOiBtYXJnaW4sXG4gICRicmVha3BvaW50OiAkLXpmLXplcm8tYnJlYWtwb2ludCxcbiAgJHZlcnRpY2FsOiBmYWxzZVxuKSB7XG4gIEB3YXJuICd4eS1jZWxsLXN0YXRpYygpIG1peGluIGlzIGRlcHJlY2F0ZWQgYW5kIHdpbGwgYmUgcmVtb3ZlZC4gVXNlIFwieHktY2VsbCgpXCIgaW5zdGVhZC4gU2VlIG1pZ3JhdGlvbiBub3RlcyBhdCBodHRwczovL2dpdC5pby9mb3VuZGF0aW9uLTYtNi0wJztcblxuICAkZ3V0dGVyOiAtemYtZ2V0LWJwLXZhbCgkZ3V0dGVycywgJGJyZWFrcG9pbnQpO1xuICAkZ3V0dGVyLXBvc2l0aW9uOiBpZigkdmVydGljYWwgPT0gdHJ1ZSwgdG9wIGJvdHRvbSwgbGVmdCByaWdodCk7XG5cbiAgJC1ndXR0ZXItb3V0cHV0OiBpZigkZ3V0dGVyLXR5cGUgPT0gJ21hcmdpbicsIHRydWUsICRndXR0ZXItb3V0cHV0KTtcbiAgJC1ndXR0ZXItbWFyZ2luOiBpZigkZ3V0dGVyLXR5cGUgPT0gJ21hcmdpbicsICRndXR0ZXIsIDApO1xuXG4gIEBpbmNsdWRlIC14eS1jZWxsLXByb3BlcnRpZXMoJHNpemUsICQtZ3V0dGVyLW1hcmdpbiwgJHZlcnRpY2FsKTtcbiAgQGlmICgkLWd1dHRlci1vdXRwdXQpIHtcbiAgICBAaW5jbHVkZSB4eS1ndXR0ZXJzKCRndXR0ZXIsICRndXR0ZXItdHlwZSwgJGd1dHRlci1wb3NpdGlvbik7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBicmVha3BvaW50c1xuLy8vL1xuXG4vLy8gUGF0Y2ggdG8gZml4IGlzc3VlICMxMjA4MFxuJC16Zi1zaXplOiBudWxsO1xuXG4vLy8gQSBsaXN0IG9mIG5hbWVkIGJyZWFrcG9pbnRzLiBZb3UgY2FuIHVzZSB0aGVzZSB3aXRoIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0byBxdWlja2x5IGNyZWF0ZSBtZWRpYSBxdWVyaWVzLlxuLy8vIEB0eXBlIE1hcFxuJGJyZWFrcG9pbnRzOiAoXG4gIFwic21hbGxcIjogMCxcbiAgXCJtZWRpdW1cIjogNjQwcHgsXG4gIFwibGFyZ2VcIjogMTAyNHB4LFxuICBcInhsYXJnZVwiOiAxMjAwcHgsXG4gIFwieHhsYXJnZVwiOiAxNDQwcHgsXG4pICFkZWZhdWx0O1xuXG4vLy8gQSBsaXN0IG9mIG5hbWVkIEhpRFBJIGJyZWFrcG9pbnRzLiBZb3UgY2FuIHVzZSB0aGVzZSB3aXRoIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0byBxdWlja2x5IGNyZWF0ZSBtZWRpYSBxdWVyaWVzIGZvciByZXNvbHV0aW9ucy5cbi8vLyBWYWx1ZXMgbXVzdCByZXByZXNlbnQgdGhlIGRldmljZSBwaXhlbHMgLyB3ZWIgcGl4ZWxzIHJhdGlvbiBhbmQgYmUgdW5pdGxlc3Mgb3IgaW4gRFBQWC5cbi8vLyBAdHlwZSBNYXBcbiRicmVha3BvaW50cy1oaWRwaTogKFxuICBcImhpZHBpLTFcIjogMSxcbiAgXCJoaWRwaS0xLTVcIjogMS41LFxuICBcImhpZHBpLTJcIjogMixcbiAgXCJyZXRpbmFcIjogMixcbiAgXCJoaWRwaS0zXCI6IDNcbikgIWRlZmF1bHQ7XG5cbi8vLyBUaGUgbGFyZ2VzdCBuYW1lZCBicmVha3BvaW50IGluIHdoaWNoIHRvIGluY2x1ZGUgcHJpbnQgYXMgYSBtZWRpYSB0eXBlXG4vLy8gQHR5cGUgS2V5d29yZFxuJHByaW50LWJyZWFrcG9pbnQ6IGxhcmdlICFkZWZhdWx0O1xuXG4kLXpmLXplcm8tYnJlYWtwb2ludDogc21hbGwgIWRlZmF1bHQ7XG5cbiQtemYtYnJlYWtwb2ludHMta2V5czogbWFwLXRvLWxpc3QoJGJyZWFrcG9pbnRzLCAna2V5cycpO1xuXG5AaWYgbnRoKG1hcC12YWx1ZXMoJGJyZWFrcG9pbnRzKSwgMSkgIT0gMCB7XG4gIEBlcnJvciAnVGhlIGZpcnN0IGtleSBpbiB0aGUgJGJyZWFrcG9pbnRzIG1hcCBtdXN0IGhhdmUgYSB2YWx1ZSBvZiBcIjBcIi4nO1xufVxuQGVsc2Uge1xuICAkLXpmLXplcm8tYnJlYWtwb2ludDogbnRoKG1hcC1rZXlzKCRicmVha3BvaW50cyksIDEpO1xufVxuXG4vLy8gQWxsIG9mIHRoZSBuYW1lcyBpbiB0aGlzIGxpc3Qgd2lsbCBiZSBvdXRwdXQgYXMgY2xhc3NlcyBpbiB5b3VyIENTUywgbGlrZSBgLnNtYWxsLTEyYCwgYC5tZWRpdW0tNmAsIGFuZCBzbyBvbi4gRWFjaCB2YWx1ZSBpbiB0aGlzIGxpc3QgbXVzdCBhbHNvIGJlIGluIHRoZSBgJGJyZWFrcG9pbnRzYCBtYXAuXG4vLy8gQHR5cGUgTGlzdFxuJGJyZWFrcG9pbnQtY2xhc3NlczogKHNtYWxsIG1lZGl1bSBsYXJnZSkgIWRlZmF1bHQ7XG5cbi8vLyBHZW5lcmF0ZXMgYSBtZWRpYSBxdWVyeSBzdHJpbmcgbWF0Y2hpbmcgdGhlIGlucHV0IHZhbHVlLiBSZWZlciB0byB0aGUgZG9jdW1lbnRhdGlvbiBmb3IgdGhlIGBicmVha3BvaW50KClgIG1peGluIHRvIHNlZSB3aGF0IHRoZSBwb3NzaWJsZSBpbnB1dHMgYXJlLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHZhbCBbc21hbGxdIC0gQnJlYWtwb2ludCBuYW1lLCBvciBweCwgcmVtLCBvciBlbSB2YWx1ZSB0byBwcm9jZXNzLlxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQoJHZhbDogJC16Zi16ZXJvLWJyZWFrcG9pbnQpIHtcbiAgLy8gV2ViIHN0YW5kYXJkIFBpeGVscyBwZXIgaW5jaC4gKDFkZHB4IC8gJHN0ZC13ZWItZHBpKSA9IDFkcGlcbiAgLy8gU2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9jc3MtdmFsdWVzLTMvI2Fic29sdXRlLWxlbmd0aHNcbiAgJHN0ZC13ZWItZHBpOiA5NjtcblxuICAvLyBTaXplIG9yIGtleXdvcmRcbiAgJGJwOiBudGgoJHZhbCwgMSk7XG4gIC8vIFZhbHVlIG9mIHRoZSBmb2xsb3dpbmcgYnJlYWtwb2ludFxuICAkYnAtbmV4dDogbnVsbDtcbiAgLy8gVmFsdWUgZm9yIG1heC13aWR0aCBtZWRpYSBxdWVyaWVzXG4gICRicC1taW46IG51bGw7XG4gIC8vIFZhbHVlIGZvciBtaW4td2lkdGggbWVkaWEgcXVlcmllc1xuICAkYnAtbWF4OiBudWxsO1xuICAvLyBEaXJlY3Rpb24gb2YgbWVkaWEgcXVlcnkgKHVwLCBkb3duLCBvciBvbmx5KVxuICAkZGlyOiBpZihsZW5ndGgoJHZhbCkgPiAxLCBudGgoJHZhbCwgMiksIHVwKTtcbiAgLy8gSWYgbmFtZWQsIG5hbWUgb2YgdGhlIGJyZWFrcG9pbnRcbiAgJG5hbWU6IG51bGw7XG4gIC8vIElmIHRoZSBicmVha3BvaW50IGlzIGEgSGlEUEkgYnJlYWtwb2ludFxuICAkaGlkcGk6IGZhbHNlO1xuXG4gIC8vIE9yaWVudGF0aW9uIG1lZGlhIHF1ZXJpZXMgaGF2ZSBhIHVuaXF1ZSBzeW50YXhcbiAgQGlmICRicCA9PSAnbGFuZHNjYXBlJyBvciAkYnAgPT0gJ3BvcnRyYWl0JyB7XG4gICAgQHJldHVybiAnKG9yaWVudGF0aW9uOiAjeyRicH0pJztcbiAgfVxuXG4gIC8vIElmIGEgYnJlYWtwb2ludCBuYW1lIGlzIGdpdmVuLCBnZXQgaXRzIHZhbHVlIGZyb20gdGhlICRicmVha3BvaW50cy8kYnJlYWtwb2ludHMtaGlkcGkgbWFwLlxuICBAaWYgdHlwZS1vZigkYnApID09ICdzdHJpbmcnIHtcbiAgICBAaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCAkYnApIHtcbiAgICAgICRuYW1lOiAkYnA7XG4gICAgICAkYnA6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkbmFtZSk7XG4gICAgICAkYnAtbmV4dDogLXpmLW1hcC1uZXh0KCRicmVha3BvaW50cywgJG5hbWUpO1xuICAgIH1cbiAgICBAZWxzZSBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMtaGlkcGksICRicCkge1xuICAgICAgJG5hbWU6ICRicDtcbiAgICAgICRicDogbWFwLWdldCgkYnJlYWtwb2ludHMtaGlkcGksICRuYW1lKTtcbiAgICAgICRicC1uZXh0OiAtemYtbWFwLW5leHQtbnVtYmVyKCRicmVha3BvaW50cy1oaWRwaSwgJGJwKTtcbiAgICAgICRoaWRwaTogdHJ1ZTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgJGJwOiAwO1xuICAgICAgQHdhcm4gJ2JyZWFrcG9pbnQoKTogXCIjeyR2YWx9XCIgaXMgbm90IGRlZmluZWQgaW4geW91ciBgJGJyZWFrcG9pbnRzYCBvciBgJGJyZWFrcG9pbnRzLWhpZHBpYCBzZXR0aW5nLic7XG4gICAgfVxuICB9XG5cbiAgQGlmIG5vdCAkbmFtZSBhbmQgJGRpciA9PSAnb25seScge1xuICAgIEB3YXJuICdicmVha3BvaW50KCk6IE9ubHkgbmFtZWQgbWVkaWEgcXVlcmllcyBjYW4gaGF2ZSBhbiBgb25seWAgcmFuZ2UuJztcbiAgICBAcmV0dXJuIG51bGw7XG4gIH1cblxuICAvLyBPbmx5ICdvbmx5JyBhbmQgJ3VwJyBoYXZlIGEgbWluIGxpbWl0LlxuICBAaWYgJGRpciA9PSAnb25seScgb3IgJGRpciA9PSAndXAnIHtcbiAgICAkYnAtbWluOiBpZigkaGlkcGksIHN0cmlwLXVuaXQoJGJwKSwgLXpmLWJwLXRvLWVtKCRicCkpO1xuICB9XG4gIC8vIE9ubHkgJ29ubHknIGFuZCAnZG93bicgaGF2ZSBhIG1heCBsaW1pdC5cbiAgQGlmICRkaXIgPT0gJ29ubHknIG9yICRkaXIgPT0gJ2Rvd24nIHtcbiAgICAvLyBJZiB0aGUgYnJlYWtwb2ludCBpcyBhIHZhbHVlLCB1c2UgaXQgYXMgbWF4IGxpbWl0LlxuICAgIEBpZiBub3QgJG5hbWUge1xuICAgICAgJGJwLW1heDogaWYoJGhpZHBpLCBzdHJpcC11bml0KCRicCksIC16Zi1icC10by1lbSgkYnApKTtcbiAgICB9XG4gICAgLy8gSWYgdGhlIGJyZWFrcG9pbnQgaXMgbmFtZWQsIHRoZSBtYXggbGltaXQgaXMgdGhlIGZvbGxvd2luZyBicmVha3BvaW50IC0gMXB4LlxuICAgIEBlbHNlIGlmICRicC1uZXh0IHtcbiAgICAgIC8vIE1heCB2YWx1ZSBpcyAwLjJweCB1bmRlciB0aGUgbmV4dCBicmVha3BvaW50ICgwLjAyIC8gMTYgPSAwLjAwMTI1KS5cbiAgICAgIC8vIFVzZSBhIHByZWNpc2lvbiB1bmRlciAxcHggdG8gc3VwcG9ydCBicm93c2VyIHpvb20sIGJ1dCBub3QgdG8gbG93IHRvIGF2b2lkIHJvdW5kaW5nLlxuICAgICAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9mb3VuZGF0aW9uL2ZvdW5kYXRpb24tc2l0ZXMvaXNzdWVzLzExMzEzXG4gICAgICAkYnAtbWF4OiBpZigkaGlkcGksICRicC1uZXh0IC0gZGl2aWRlKDEsICRzdGQtd2ViLWRwaSksIC16Zi1icC10by1lbSgkYnAtbmV4dCkgLSAwLjAwMTI1KTtcbiAgICB9XG4gIH1cblxuICAvLyBHZW5lcmF0ZSB0aGUgbWVkaWEgcXVlcnkgc3RyaW5nIGZyb20gbWluIGFuZCBtYXggbGltaXRzLlxuICBAaWYgJGhpZHBpIHtcbiAgICAvLyBHZW5lcmF0ZSB2YWx1ZXMgaW4gRFBJIGluc3RlYWQgb2YgRFBQWCBmb3IgYW4gSUU5LTExL09wZXJhIG1pbmkgY29tcGF0aWJpbGl0eS5cbiAgICAvLyBTZWUgaHR0cHM6Ly9jYW5pdXNlLmNvbS8jZmVhdD1jc3MtbWVkaWEtcmVzb2x1dGlvblxuICAgICRicC1taW4tZHBpOiBpZigkYnAtbWluLCAkYnAtbWluICogJHN0ZC13ZWItZHBpICogMWRwaSwgJGJwLW1pbik7XG4gICAgJGJwLW1heC1kcGk6IGlmKCRicC1tYXgsICRicC1tYXggKiAkc3RkLXdlYi1kcGkgKiAxZHBpLCAkYnAtbWF4KTtcbiAgICBAcmV0dXJuIHpmLXN0ci1qb2luKFxuICAgICAgLXpmLWJwLWpvaW4oJGJwLW1pbiwgJGJwLW1heCwgJy13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbycsICctd2Via2l0LW1heC1kZXZpY2UtcGl4ZWwtcmF0aW8nKSxcbiAgICAgIC16Zi1icC1qb2luKCRicC1taW4tZHBpLCAkYnAtbWF4LWRwaSwgJ21pbi1yZXNvbHV0aW9uJywgJ21heC1yZXNvbHV0aW9uJyksXG4gICAgICAnLCAnKTtcbiAgfVxuICBAZWxzZSB7XG4gICAgQHJldHVybiAtemYtYnAtam9pbigkYnAtbWluLCAkYnAtbWF4KTtcbiAgfVxufVxuXG4vLy8gV3JhcHMgYSBtZWRpYSBxdWVyeSBhcm91bmQgdGhlIGNvbnRlbnQgeW91IHB1dCBpbnNpZGUgdGhlIG1peGluLiBUaGlzIG1peGluIGFjY2VwdHMgYSBudW1iZXIgb2YgdmFsdWVzOlxuLy8vICAtIElmIGEgc3RyaW5nIGlzIHBhc3NlZCwgdGhlIG1peGluIHdpbGwgbG9vayBmb3IgaXQgaW4gdGhlIGAkYnJlYWtwb2ludHNgIGFuZCBgJGJyZWFrcG9pbnRzLWhpZHBpYCBtYXBzLCBhbmQgdXNlIGEgbWVkaWEgcXVlcnkgdGhlcmUuXG4vLy8gIC0gSWYgYSBwaXhlbCB2YWx1ZSBpcyBwYXNzZWQsIGl0IHdpbGwgYmUgY29udmVydGVkIHRvIGFuIGVtIHZhbHVlIHVzaW5nIGAkZ2xvYmFsLWZvbnQtc2l6ZWAgYXMgdGhlIGJhc2UuXG4vLy8gIC0gSWYgYSByZW0gdmFsdWUgaXMgcGFzc2VkLCB0aGUgdW5pdCB3aWxsIGJlIGNoYW5nZWQgdG8gZW0uXG4vLy8gIC0gSWYgYW4gZW0gdmFsdWUgaXMgcGFzc2VkLCB0aGUgdmFsdWUgd2lsbCBiZSB1c2VkIGFzLWlzLlxuLy8vXG4vLy8gSWYgbXVsdGlwbGUgdmFsdWVzIGFyZSBwYXNzZWQsIHRoZSBtaXhpbiB3aWxsIGdlbmVyYXRlIGEgbWVkaWEgcXVlcnkgZm9yIGVhY2ggb2YgdGhlbSBhcyBkZXNjcmliZWQgYWJvdmUuXG4vLy8gU2luY2UgdGhlIGNvbnRlbnQgaXMgZHVwbGljYXRlZCBmb3IgZWFjaCBicmVha3BvaW50LCB0aGlzIG1peGluIHNob3VsZCBvbmx5IGJlIHVzZWQgd2l0aCBwcm9wZXJ0aWVzIHRoYXRcbi8vLyBjaGFuZ2UgYWNyb3NzIGJyZWFrcG9pbnRzLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHZhbHVlcy4uLiAtIEJyZWFrcG9pbnQgbmFtZSBvciBweC9yZW0vZW0gdmFsdWUgdG8gcHJvY2Vzcy5cbi8vL1xuLy8vIEBvdXRwdXQgSWYgdGhlIGJyZWFrcG9pbnQgaXMgXCIwcHggYW5kIGxhcmdlclwiLCBvdXRwdXRzIHRoZSBjb250ZW50IGFzLWlzLiBPdGhlcndpc2UsIG91dHB1dHMgdGhlIGNvbnRlbnQgd3JhcHBlZCBpbiBhIG1lZGlhIHF1ZXJ5LlxuQG1peGluIGJyZWFrcG9pbnQoJHZhbHVlcy4uLikge1xuICBAZm9yICRpIGZyb20gMSB0aHJvdWdoIGxlbmd0aCgkdmFsdWVzKSB7XG4gICAgJHZhbHVlOiBudGgoJHZhbHVlcywgJGkpO1xuICAgICRzdHI6IGJyZWFrcG9pbnQoJHZhbHVlKTtcbiAgICAkYnA6IGluZGV4KCQtemYtYnJlYWtwb2ludHMta2V5cywgbnRoKCR2YWx1ZSwgMSkpO1xuICAgICRwYnA6IGluZGV4KCQtemYtYnJlYWtwb2ludHMta2V5cywgJHByaW50LWJyZWFrcG9pbnQpO1xuICAgIC8vIERpcmVjdGlvbiBvZiBtZWRpYSBxdWVyeSAodXAsIGRvd24sIG9yIG9ubHkpXG4gICAgJGRpcjogaWYobGVuZ3RoKCR2YWx1ZSkgPiAxLCBudGgoJHZhbHVlLCAyKSwgdXApO1xuXG4gICAgJG9sZC16Zi1zaXplOiBudWxsO1xuXG4gICAgLy8gTWFrZSBicmVha3BvaW50IHNpemUgYXZhaWxhYmxlIGFzIGEgdmFyaWFibGVcbiAgICBAaWYgZ2xvYmFsLXZhcmlhYmxlLWV4aXN0cygtemYtc2l6ZSkge1xuICAgICAgJG9sZC16Zi1zaXplOiAkLXpmLXNpemU7XG4gICAgfVxuICAgICQtemYtc2l6ZTogbnRoKCR2YWx1ZSwgMSkgIWdsb2JhbDsgLy8gZ2V0IHRoZSBmaXJzdCB2YWx1ZSB0byBhY2NvdW50IGZvciBgb25seWAgYW5kIGBkb3duYCBrZXl3b3Jkc1xuXG4gICAgLy8gSWYgJHN0ciBpcyBzdGlsbCBhbiBlbXB0eSBzdHJpbmcsIG5vIG1lZGlhIHF1ZXJ5IGlzIG5lZWRlZFxuICAgIEBpZiAkc3RyID09ICcnIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cblxuICAgIC8vIE90aGVyd2lzZSwgd3JhcCB0aGUgY29udGVudCBpbiBhIG1lZGlhIHF1ZXJ5XG4gICAgQGVsc2Uge1xuICAgICAgLy8gRm9yIG5hbWVkIGJyZWFrcG9pbnRzIGxlc3MgdGhhbiBvciBlcXVhbCB0byAkcHJpbnQtYnJlYWtwb2ludCwgYWRkIHByaW50IHRvIHRoZSBtZWRpYSB0eXBlc1xuICAgICAgLy8gZ2VuZXJhdGUgcHJpbnQgaWYgdGhlIGJyZWFrcG9pbnQgYWZmZWN0cyB0aGUgcHJpbnQtYnJlYWtwb2ludCAob3Igc21hbGxlcikuXG4gICAgICAvLyBUaGlzIG1lYW5zIHRoZSBjdXJyZW50IGNvbmRpdGlvbiBvbmx5IG5lZWRzIHRvIGJlIGV4dGVuZGVkIHNvICdkb3duJyBhbHdheXMgZ2VuZXJhdGVzIHByaW50LlxuICAgICAgQGlmICRicCAhPSBudWxsIGFuZCAoJGJwIDw9ICRwYnAgb3IgJGRpciA9PSBkb3duKSB7XG4gICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAjeyRzdHJ9IHtcbiAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAjeyRzdHJ9IHtcbiAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICQtemYtc2l6ZTogJG9sZC16Zi1zaXplICFnbG9iYWw7XG4gIH1cbn1cblxuLy8vIENvbnZlcnRzIHRoZSBicmVha3BvaW50cyBtYXAgdG8gYSBVUkwtZW5jb2RlZCBzdHJpbmcsIGxpa2UgdGhpczogYGtleTE9dmFsdWUxJmtleTI9dmFsdWUyYC4gVGhlIHZhbHVlIGlzIHRoZW4gZHJvcHBlZCBpbnRvIHRoZSBDU1MgZm9yIGEgc3BlY2lhbCBgPG1ldGE+YCB0YWcsIHdoaWNoIGlzIHJlYWQgYnkgdGhlIEZvdW5kYXRpb24gSmF2YVNjcmlwdC4gVGhpcyBpcyBob3cgd2UgdHJhbnNmZXIgdmFsdWVzIGZyb20gU2FzcyB0byBKYXZhU2NyaXB0LCBzbyB0aGV5IGNhbiBiZSBkZWZpbmVkIGluIG9uZSBwbGFjZS5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TWFwfSAkbWFwIC0gTWFwIHRvIGNvbnZlcnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7U3RyaW5nfSBBIHN0cmluZyBjb250YWluaW5nIHRoZSBtYXAncyBjb250ZW50cy5cbkBmdW5jdGlvbiAtemYtYnAtc2VyaWFsaXplKCRtYXApIHtcbiAgJHN0cjogJyc7XG4gIEBlYWNoICRrZXksICR2YWx1ZSBpbiAkbWFwIHtcbiAgICAkc3RyOiAkc3RyICsgJGtleSArICc9JyArIC16Zi1icC10by1lbSgkdmFsdWUpICsgJyYnO1xuICB9XG4gICRzdHI6IHN0ci1zbGljZSgkc3RyLCAxLCAtMik7XG5cbiAgQHJldHVybiAkc3RyO1xufVxuXG4vLy8gRmluZCB0aGUgbmV4dCBrZXkgaW4gYSBtYXAuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge01hcH0gJG1hcCAtIE1hcCB0byB0cmF2ZXJzZS5cbi8vLyBAcGFyYW0ge01peGVkfSAka2V5IC0gS2V5IHRvIHVzZSBhcyBhIHN0YXJ0aW5nIHBvaW50LlxuLy8vXG4vLy8gQHJldHVybnMge01peGVkfSBUaGUgdmFsdWUgZm9yIHRoZSBrZXkgYWZ0ZXIgYCRrZXlgLCBpZiBgJGtleWAgd2FzIGZvdW5kLiBJZiBgJGtleWAgd2FzIG5vdCBmb3VuZCwgb3IgYCRrZXlgIHdhcyB0aGUgbGFzdCB2YWx1ZSBpbiB0aGUgbWFwLCByZXR1cm5zIGBudWxsYC5cbkBmdW5jdGlvbiAtemYtbWFwLW5leHQoJG1hcCwgJGtleSkge1xuXG4gIC8vIFN0b3JlIHRoZSBrZXlzIG9mIHRoZSBtYXAgYXMgYSBsaXN0XG4gICR2YWx1ZXM6IG1hcC1rZXlzKCRtYXApO1xuXG4gICRpOiAwO1xuXG4gIC8vIElmIHRoZSBLZXkgRXhpc3RzLCBHZXQgdGhlIGluZGV4IG9mIHRoZSBrZXkgd2l0aGluIHRoZSBtYXAgYW5kIGFkZCAxIHRvIGl0IGZvciB0aGUgbmV4dCBicmVha3BvaW50IGluIHRoZSBtYXBcbiAgQGlmIChtYXAtaGFzLWtleSgkbWFwLCAka2V5KSkge1xuICAgICRpOiBpbmRleCgkdmFsdWVzLCAka2V5KSArIDE7XG4gIH1cblxuICAvLyBJZiB0aGUga2V5IGRvZXNuJ3QgZXhpc3QsIG9yIGl0J3MgdGhlIGxhc3Qga2V5IGluIHRoZSBtYXAsIHJldHVybiBudWxsXG4gIEBpZiAoJGkgPiBsZW5ndGgoJG1hcCkgb3IgJGkgPT0gMCkge1xuICAgIEByZXR1cm4gbnVsbDtcbiAgfVxuICAvLyBPdGhlcndpc2UsIHJldHVybiB0aGUgdmFsdWVcbiAgQGVsc2Uge1xuICAgIEByZXR1cm4gbWFwLWdldCgkbWFwLCBudGgoJHZhbHVlcywgJGkpKTtcbiAgfVxuXG59XG5cbi8vLyBGaW5kIHRoZSBuZXh0IG51bWJlciBpbiBhIG1hcC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TWFwfSAkbWFwIC0gTWFwIHRvIHRyYXZlcnNlLlxuLy8vIEBwYXJhbSB7TWl4ZWR9ICRudW1iZXIgLSBOdW1iZXIgdG8gdXNlIGFzIGEgc3RhcnRpbmcgcG9pbnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7TWl4ZWR9IFRoZSBudW1iZXIgZm9sbG93aW5nIGAkbnVtYmVyYCwgaWYgYCRudW1iZXJgIHdhcyBmb3VuZC4gSWYgYCRudW1iZXJgIHdhcyBub3QgZm91bmQsIG9yIGAkbnVtYmVyYCB3YXMgdGhlIGJpZ2dlc3QgbnVtYmVyIGluIHRoZSBtYXAsIHJldHVybnMgYG51bGxgLlxuQGZ1bmN0aW9uIC16Zi1tYXAtbmV4dC1udW1iZXIoJG1hcCwgJG51bWJlcikge1xuXG4gICRuZXh0LW51bWJlcjogbnVsbDtcblxuICBAZWFjaCAkaywgJHYgaW4gJG1hcCB7XG4gICAgQGlmIHR5cGUtb2YoJHYpID09ICdudW1iZXInIGFuZCAkdiA+ICRudW1iZXIgYW5kICgkbmV4dC1udW1iZXIgPT0gbnVsbCBvciAkdiA8ICRuZXh0LW51bWJlcikge1xuICAgICAgJG5leHQtbnVtYmVyOiAkdjtcbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICRuZXh0LW51bWJlcjtcbn1cblxuLy8vIFJldHVybiBhIGxpc3Qgb2Ygb3VyIG5hbWVkIGJyZWFrcG9pbnRzIGxlc3MgdGhhbiAka2V5LiBVc2VmdWwgZm9yIGRlYWxpbmcgd2l0aFxuLy8vIHJlc3BvbnNpdmUgZ3V0dGVycyBmb3IgdGhlIGdyaWQuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGtleSAtIEtleSB0byB1c2UgYXMgbGFzdCBicmVha3BvaW50LlxuLy8vXG4vLy8gQHJldHVybnMge0FycmF5fSBUaGUgbGlzdCBvZiBicmVha3BvaW50cyB1cCB0byBhbmQuIElmICRrZXkgaXMgYXV0bywgcmV0dXJucyBicmVha3BvaW50cyBhYm92ZSB0aGUgemVyb1xuQGZ1bmN0aW9uIC16Zi1icmVha3BvaW50cy1sZXNzLXRoYW4oJGtleSkge1xuICAkbGlzdDogKCk7XG4gICRmb3VuZC1rZXk6IGZhbHNlO1xuXG4gIEBlYWNoICRuYW1lIGluICQtemYtYnJlYWtwb2ludHMta2V5cyB7XG4gICAgQGlmICgkbmFtZSA9PSAka2V5KSB7XG4gICAgICAkZm91bmQta2V5OiB0cnVlO1xuICAgIH1cbiAgICBAaWYgbm90ICRmb3VuZC1rZXkge1xuICAgICAgJGxpc3Q6IGFwcGVuZCgkbGlzdCwgJG5hbWUpO1xuICAgIH1cbiAgfVxuICBAcmV0dXJuICRsaXN0O1xufVxuXG4vLy8gUmV0dXJuIGEgbGlzdCBvZiBvdXIgbmFtZWQgYnJlYWtwb2ludHMgbGVzcyB0aGFuICRrZXkuIFVzZWZ1bCBmb3IgZGVhbGluZyB3aXRoXG4vLy8gcmVzcG9uc2l2ZSBndXR0ZXJzIGZvciB0aGUgZ3JpZC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkYnJlYWtwb2ludCAtIGEgbmFtZWQgb3Igbm9uLW5hbWVkIGJyZWFrcG9pbnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7QXJyYXl9IFRoZSBsaXN0IG9mIGJyZWFrcG9pbnRzIHVwIHRvIGFuZC4gSWYgJGtleSBpcyBhdXRvLCByZXR1cm5zIGJyZWFrcG9pbnRzIGFib3ZlIHRoZSB6ZXJvXG5AZnVuY3Rpb24gLXpmLWNsb3Nlc3QtbmFtZWQtYnJlYWtwb2ludCgkYnJlYWtwb2ludCkge1xuICAkbGFzdDogJC16Zi16ZXJvLWJyZWFrcG9pbnQ7XG4gICRmb3VuZDogZmFsc2U7XG5cbiAgJHZhbHVlOiB1bml0bGVzcy1jYWxjKCRicmVha3BvaW50LCAxcHgpO1xuICBAZWFjaCAka2V5LCAkdmFsIGluICRicmVha3BvaW50cyB7XG4gICAgQGlmIG5vdCAkZm91bmQge1xuICAgICAgQGlmIHVuaXRsZXNzLWNhbGMoJHZhbCkgPiAkdmFsdWUge1xuICAgICAgICAkZm91bmQ6IHRydWU7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgJGxhc3Q6ICRrZXk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkbGFzdDtcbn1cblxuLy8vIEdldCBhIHZhbHVlIGZvciBhIGJyZWFrcG9pbnQgZnJvbSBhIHJlc3BvbnNpdmUgY29uZmlnIG1hcCBvciBzaW5nbGUgdmFsdWUuXG4vLy8gLSBJZiB0aGUgY29uZmlnIGlzIGEgc2luZ2xlIHZhbHVlLCByZXR1cm4gaXQgcmVnYXJkbGVzcyBvZiBgJHZhbHVlYC5cbi8vLyAtIElmIHRoZSBjb25maWcgaXMgYSBtYXAgYW5kIGhhcyB0aGUga2V5IGAkdmFsdWVgLCB0aGUgZXhhY3QgYnJlYWtwb2ludCB2YWx1ZSBpcyByZXR1cm5lZC5cbi8vLyAtIElmIHRoZSBjb25maWcgaXMgYSBtYXAgYW5kIGRvZXMgKm5vdCogaGF2ZSB0aGUgYnJlYWtwb2ludCwgdGhlIHZhbHVlIG1hdGNoaW5nIHRoZSBuZXh0IGxvd2VzdCBicmVha3BvaW50IGluIHRoZSBjb25maWcgbWFwIGlzIHJldHVybmVkLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkbWFwIC0gUmVzcG9uc2l2ZSBjb25maWcgbWFwIG9yIHNpbmdsZSB2YWx1ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR2YWx1ZSAtIEJyZWFrcG9pbnQgbmFtZSB0byB1c2UuXG4vLy9cbi8vLyBAcmV0dXJuIHtNaXhlZH0gVGhlIGNvcnJlc3BvbmRpbmcgYnJlYWtwb2ludCB2YWx1ZS5cbkBmdW5jdGlvbiAtemYtZ2V0LWJwLXZhbCgkbWFwLCAkdmFsdWUpIHtcbiAgLy8gSWYgdGhlIGdpdmVuIG1hcCBpcyBhIHNpbmdsZSB2YWx1ZSwgcmV0dXJuIGl0XG4gIEBpZiB0eXBlLW9mKCRtYXApID09ICdudW1iZXInIHtcbiAgICBAcmV0dXJuICRtYXA7XG4gIH1cblxuXG4gIC8vIENoZWNrIGlmIHRoZSBicmVha3BvaW50IG5hbWUgZXhpc3RzIGdsb2JhbGx5XG4gIEBpZiBub3QgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCAkdmFsdWUpIHtcbiAgICBAaWYgdHlwZS1vZigkdmFsdWUpID09ICdudW1iZXInIHtcbiAgICAgICR2YWx1ZTogLXpmLWNsb3Nlc3QtbmFtZWQtYnJlYWtwb2ludCgkdmFsdWUpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgQHJldHVybiBudWxsO1xuICAgIH1cbiAgfVxuICAvLyBDaGVjayBpZiB0aGUgYnJlYWtwb2ludCBuYW1lIGV4aXN0cyBpbiB0aGUgbG9jYWwgY29uZmlnIG1hcFxuICBAZWxzZSBpZiBtYXAtaGFzLWtleSgkbWFwLCAkdmFsdWUpIHtcbiAgICAvLyBJZiBpdCBkb2VzLCBqdXN0IHJldHVybiB0aGUgdmFsdWVcbiAgICBAcmV0dXJuIG1hcC1nZXQoJG1hcCwgJHZhbHVlKTtcbiAgfVxuICAvLyBPdGhlcndpc2UsIGZpbmQgdGhlIG5leHQgbG93ZXN0IGJyZWFrcG9pbnQgYW5kIHJldHVybiB0aGF0IHZhbHVlXG4gIEBlbHNlIHtcbiAgICAkYW5jaG9yOiBudWxsO1xuICAgICRmb3VuZDogZmFsc2U7XG5cbiAgICBAZWFjaCAka2V5LCAkdmFsIGluICRicmVha3BvaW50cyB7XG4gICAgICBAaWYgbm90ICRmb3VuZCB7XG4gICAgICAgIEBpZiBtYXAtaGFzLWtleSgkbWFwLCAka2V5KSB7XG4gICAgICAgICAgJGFuY2hvcjogJGtleTtcbiAgICAgICAgfVxuICAgICAgICBAaWYgJGtleSA9PSAkdmFsdWUge1xuICAgICAgICAgICRmb3VuZDogdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIEByZXR1cm4gbWFwLWdldCgkbWFwLCAkYW5jaG9yKTtcbiAgfVxufVxuXG4vLy8gUmV0dXJuIHRoZSBiZXN0IGJyZWFrcG9pbnQgdG8gdXNlIGFjY29yZGluZyB0byB0aGUgY2FsbGluZyBjb250ZXh0LiBJdCByZXR1cm5zIGluIG9yZGVyOlxuLy8vIDEuIHRoZSBnaXZlbiBgJHZhbHVlYCBhcmd1bWVudCBpZiBpdCBpcyBub3QgbnVsbC5cbi8vLyAyLiB0aGUgZ2xvYmFsIGJyZWFrcG9pbnQgY29udGV4dCBgJC16Zi1zaXplYCBpZiBpdCBpcyBub3QgbnVsbCAobGlrZSBpZiBjYWxsZWQgaW5zaWRlIHRoZW4gYGJyZWFrcG9pbnQoKWAgbWl4aW4pXG4vLy8gMy4gdGhlIGdpdmVuIGAkZGVmYXVsdGAgYXJndW1lbnQuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR2YWx1ZSBbbnVsbF0gLSBCcmVha3BvaW50IHRvIHVzZSBpbiBwcmlvcml0eSBpZiBub24tbnVsbC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkZWZhdWx0IFtudWxsXSAtIEJyZWFrcG9pbnQgdG8gdXNlIGJ5IGRlZmF1bHQgaWYgbm8gb3RoZXIgdmFsdWUgY2FuIGJlIHVzZWQuXG4vLy9cbi8vLyBAcmV0dXJuIHtLZXl3b3JkfSBUaGUgcmVzb2x2ZWQgYnJlYWtwb2ludC5cbkBmdW5jdGlvbiAtemYtY3VycmVudC1icmVha3BvaW50KCR2YWx1ZTogbnVsbCwgJGRlZmF1bHQ6IG51bGwpIHtcbiAgQGlmICgkdmFsdWUgIT0gbnVsbCkge1xuICAgIEByZXR1cm4gJHZhbHVlO1xuICB9XG4gIEBlbHNlIGlmICh2YXJpYWJsZS1leGlzdHMoLXpmLXNpemUpIGFuZCB0eXBlLW9mKCQtemYtc2l6ZSkgIT0gJ251bWJlcicpIGFuZCAkLXpmLXNpemUgIT0gbnVsbCB7XG4gICAgQHJldHVybiAkLXpmLXNpemU7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEByZXR1cm4gJGRlZmF1bHQ7XG4gIH1cbn1cblxuLy8vIFJldHVybiBtZWRpYSBxdWVyeSBzdHJpbmcgZnJvbSB0aGUgZ2l2ZW4gbWluIGFuZC9vciBtYXggbGltaXRzLlxuLy8vIElmIGEgbGltaXQgaXMgZXF1YWwgdG8gYG51bGxgIG9yIGAwYCwgaXQgaXMgaWdub3JlZC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbWluIFswXSAtIE1pbiBtZWRpYSBxdWVyeSBsaW1pdC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJG1heCBbMF0gLSBNYXggbWVkaWEgcXVlcnkgbGltaXQuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRtaW4tbmFtZSBbJ21pbi13aWR0aCddIC0gTmFtZSBvZiB0aGUgbWluIG1lZGlhIHF1ZXJ5IGxpbWl0LlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkZGVsaW1pdGVyIFsnbWF4LXdpZHRoJ10gLSBOYW1lIG9mIHRoZSBtYXggbWVkaWEgcXVlcnkgbGltaXQuXG4vLy9cbi8vLyBAcmV0dXJucyB7U3RyaW5nfSBNZWRpYSBRdWVyeSBzdHJpbmcuXG5AZnVuY3Rpb24gLXpmLWJwLWpvaW4oXG4gICRtaW46IDAsXG4gICRtYXg6IDAsXG4gICRtaW4tbmFtZTogJ21pbi13aWR0aCcsXG4gICRtYXgtbmFtZTogJ21heC13aWR0aCdcbikge1xuICBAcmV0dXJuIHpmLXN0ci1qb2luKFxuICAgIGlmKCRtaW4gYW5kICRtaW4gPiAwLCAnKCN7JG1pbi1uYW1lfTogI3skbWlufSknLCBudWxsKSxcbiAgICBpZigkbWF4IGFuZCAkbWF4ID4gMCwgJygjeyRtYXgtbmFtZX06ICN7JG1heH0pJywgbnVsbCksXG4gICAgJyBhbmQgJyk7XG59XG5cbiRzbWFsbC11cDogJyc7XG4kc21hbGwtb25seTogJyc7XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIHNtYWxsKSB7XG4gICRzbWFsbC11cDogc2NyZWVuO1xuICAkc21hbGwtb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoc21hbGwgb25seSl9Jyk7XG59XG5cbiRtZWRpdW0tdXA6ICcnO1xuJG1lZGl1bS1vbmx5OiAnJztcblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgbWVkaXVtKSB7XG4gICRtZWRpdW0tdXA6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bSl9Jyk7XG4gICRtZWRpdW0tb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtIG9ubHkpfScpO1xufVxuXG4kbGFyZ2UtdXA6ICcnO1xuJGxhcmdlLW9ubHk6ICcnO1xuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCBsYXJnZSkge1xuICAkbGFyZ2UtdXA6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KGxhcmdlKX0nKTtcbiAgJGxhcmdlLW9ubHk6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KGxhcmdlIG9ubHkpfScpO1xufVxuXG4keGxhcmdlLXVwOiAnJztcbiR4bGFyZ2Utb25seTogJyc7XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIHhsYXJnZSkge1xuICAkeGxhcmdlLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludCh4bGFyZ2UpfScpO1xuICAkeGxhcmdlLW9ubHk6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KHhsYXJnZSBvbmx5KX0nKTtcbn1cblxuJHh4bGFyZ2UtdXA6ICcnO1xuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCB4eGxhcmdlKSB7XG4gICR4eGxhcmdlLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludCh4eGxhcmdlKX0nKTtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB4eS1ncmlkXG4vLy8vXG5cbi8vLyBTaXplcyBjaGlsZCBlbGVtZW50cyBzbyB0aGF0IGAkbmAgbnVtYmVyIG9mIGl0ZW1zIGFwcGVhciBvbiBlYWNoIHJvdy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbiAtIE51bWJlciBvZiBlbGVtZW50cyB0byBkaXNwbGF5IHBlciByb3cuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRzZWxlY3RvciBbJy5jZWxsJ10gLSBTZWxlY3RvcihzKSB0byB1c2UgZm9yIGNoaWxkIGVsZW1lbnRzLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGd1dHRlci1vdXRwdXQgW251bGxdIC0gW0RFUFJFQ0FURURdIFdoZXRoZXIgb3Igbm90IHRvIG91dHB1dCBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLW1hcmdpbi1ndXR0ZXJzXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgZm9yIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZ3V0dGVyLXR5cGUgW21hcmdpbl0gLSBUeXBlIG9mIGd1dHRlciB0byBvdXRwdXQuIEFjY2VwdHMgYG1hcmdpbmAsIGBwYWRkaW5nYCBvciBgbm9uZWAuXG4vLy8gQHBhcmFtIHtMaXN0fSAkZ3V0dGVyLXBvc2l0aW9uIFtudWxsXSAtIFRoZSBwb3NpdGlvbiB0byBhcHBseSBndXR0ZXJzIHRvLiBBY2NlcHRzIGB0b3BgLCBgYm90dG9tYCwgYGxlZnRgLCBgcmlnaHRgIGluIGFueSBjb21iaW5hdGlvbi4gQnkgZGVmYXVsdCBgcmlnaHQgbGVmdGAgZm9yIGhvcml6b250YWwgY2VsbHMgYW5kIGB0b3AgYm90dG9tYCBmb3IgdmVydGljYWwgY2VsbHMuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRicmVha3BvaW50IFtudWxsXSAtIFRoZSBicmVha3BvaW50IHRvIHVzZSBmb3IgdGhlIGNlbGwgZ2VuZXJhdGlvbi4gSWYgdXNpbmcgd2l0aCB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdGhpcyB3aWxsIGJlIHNldCBhdXRvbWF0aWNhbGx5IHVubGVzcyBtYW51YWxseSBlbnRlcmVkLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHZlcnRpY2FsIFtmYWxzZV0gLSBTZXQgdG8gdHJ1ZSB0byBvdXRwdXQgdmVydGljYWwgKGhlaWdodCkgc3R5bGVzIHJhdGhlciB0aGFuIHdpZHRocy5cbi8vLyBAcGFyYW0ge0xpc3R9ICRvdXRwdXQgWyhiYXNlIHNpemUgZ3V0dGVycyldIC0gQ2VsbCBwYXJ0cyB0byBvdXRwdXQuIFlvdSB3aWxsIG5lZWQgdG8gZ2VuZXJhdGUgb3RoZXJzIHBhcnRzIG9mIHRoZSBjZWxsIHNlcGVyYXRlbHksIGl0IG1heSBub3Qgd29yayBjb3JyZWN0bHkgb3RoZXJ3aXNlLlxuQG1peGluIHh5LWdyaWQtbGF5b3V0KFxuICAkbixcbiAgJHNlbGVjdG9yOiAnLmNlbGwnLFxuICAkZ3V0dGVyLW91dHB1dDogbnVsbCxcbiAgJGd1dHRlcnM6ICRncmlkLW1hcmdpbi1ndXR0ZXJzLFxuICAkZ3V0dGVyLXR5cGU6IG1hcmdpbixcbiAgJGd1dHRlci1wb3NpdGlvbjogbnVsbCxcbiAgJGJyZWFrcG9pbnQ6IG51bGwsXG4gICR2ZXJ0aWNhbDogZmFsc2UsXG4gICRvdXRwdXQ6IChiYXNlIHNpemUgZ3V0dGVycylcbikge1xuICAkc2l6ZTogcGVyY2VudGFnZShkaXZpZGUoMSwgJG4pKTtcblxuICAmID4gI3skc2VsZWN0b3J9IHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsKCRzaXplLCAkZ3V0dGVyLW91dHB1dCwgJGd1dHRlcnMsICRndXR0ZXItdHlwZSwgJGd1dHRlci1wb3NpdGlvbiwgJGJyZWFrcG9pbnQsICR2ZXJ0aWNhbCwgJG91dHB1dCk7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB4eS1ncmlkXG4vLy8vXG5cbi8vLyBDb2xsYXBzZXMgdGhlIGdyaWQgYSBjZWxscyB3aXRoaW4gaXQuXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJHNlbGVjdG9yIFsuY2VsbF0gLSBUaGUgY2hpbGQgZWxlbWVudCB0byByZW1vdmUgdGhlIGd1dHRlciBmcm9tLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGd1dHRlci10eXBlIFttYXJnaW5dIC0gVGhlIHR5cGUgb2YgZ3V0dGVyIHRvIHJlbW92ZS5cbi8vLyBAcGFyYW0ge0xpc3R9ICRndXR0ZXItcG9zaXRpb24gW3JpZ2h0IGxlZnRdIC0gVGhlIHBvc2l0aW9ucyB0byByZW1vdmUgZ3V0dGVycyBmcm9tLiBBY2NlcHRzIGB0b3BgLCBgYm90dG9tYCwgYGxlZnRgLCBgcmlnaHRgIGluIGFueSBjb21iaW5hdGlvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRtaW4tYnJlYWtwb2ludCBbJC16Zi16ZXJvLWJyZWFrcG9pbnRdIC0gTWluaW11bSBicmVha3BvaW50IGluIGAkYnJlYWtwb2ludC1jbGFzc2VzYCBmb3Igd2hpY2ggdG8gY29sbGFwc2UgdGhlIGd1dHRlci5cbkBtaXhpbiB4eS1ncmlkLWNvbGxhcHNlKFxuICAkc2VsZWN0b3I6ICcuY2VsbCcsXG4gICRndXR0ZXItdHlwZTogbWFyZ2luLFxuICAkZ3V0dGVyLXBvc2l0aW9uOiByaWdodCBsZWZ0LFxuICAkbWluLWJyZWFrcG9pbnQ6ICQtemYtemVyby1icmVha3BvaW50XG4pIHtcbiAgLy8gRmlyc3QsIGxldHMgbmVnYXRlIGFueSBtYXJnaW5zIG9uIHRoZSB0b3AgbGV2ZWxcbiAgQGlmICgkZ3V0dGVyLXR5cGUgPT0gJ21hcmdpbicpIHtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1pbi1icmVha3BvaW50KSB7XG4gICAgICBAZWFjaCAkdmFsdWUgaW4gJGd1dHRlci1wb3NpdGlvbiB7XG4gICAgICAgIG1hcmdpbi0jeyR2YWx1ZX06IDA7XG4gICAgICB9XG5cbiAgICAgID4gI3skc2VsZWN0b3J9IHtcbiAgICAgICAgQGVhY2ggJHZhbHVlIGluICRndXR0ZXItcG9zaXRpb24ge1xuICAgICAgICAgIG1hcmdpbi0jeyR2YWx1ZX06IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAkZXhjbHVkZWQtYnBzOiAtemYtYnJlYWtwb2ludHMtbGVzcy10aGFuKCRtaW4tYnJlYWtwb2ludCk7XG5cbiAgICAvLyBPdXRwdXQgbmV3IHdpZHRocyB0byBub3QgaW5jbHVkZSBndXR0ZXJzXG4gICAgQGVhY2ggJGJwIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgICAgQGlmKHNsLWNvbnRhaW4oJGV4Y2x1ZGVkLWJwcywgJGJwKSkge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtaW4tYnJlYWtwb2ludCkge1xuICAgICAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgICAgICAgICAvLyBTaXppbmcgKHBlcmNlbnRhZ2UpXG4gICAgICAgICAgICA+IC4jeyRicH0tI3skaX0ge1xuICAgICAgICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLXNpemUoJGksICRndXR0ZXItdHlwZTogbm9uZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnApIHtcbiAgICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgICAgICAgICAgLy8gU2l6aW5nIChwZXJjZW50YWdlKVxuICAgICAgICAgICAgPiAuI3skYnB9LSN7JGl9IHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1zaXplKCRpLCAkZ3V0dGVyLXR5cGU6IG5vbmUpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtaW4tYnJlYWtwb2ludCkge1xuICAgICAgQGVhY2ggJHZhbHVlIGluICRndXR0ZXItcG9zaXRpb24ge1xuICAgICAgICBtYXJnaW4tI3skdmFsdWV9OiAwO1xuICAgICAgfVxuXG4gICAgICA+ICN7JHNlbGVjdG9yfSB7XG4gICAgICAgIEBlYWNoICR2YWx1ZSBpbiAkZ3V0dGVyLXBvc2l0aW9uIHtcbiAgICAgICAgICBwYWRkaW5nLSN7JHZhbHVlfTogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHh5LWdyaWRcbi8vLy9cblxuLy8vIFJldHVybnMgdGhlIGFwcHJvcHJpYXRlIENTUyB2YWx1ZSB0byBvZmZzZXQgYSBjZWxsLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TGlzdH0gJG4gLSBTaXplIHRvIG9mZnNldCBieS4gWW91IGNhbiBwYXNzIGluIGFueSB2YWx1ZSBhY2NlcHRlZCBieSB0aGUgYHh5LWNlbGwoKWAgbWl4aW4sIHN1Y2ggYXMgYDZgLCBgNTAlYCwgb3IgYDEgb2YgMmAuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtbWFyZ2luLWd1dHRlcnNdIE1hcCBvZiBndXR0ZXJzIG9yIHNpbmdsZSB2YWx1ZSB0byB1c2UgZm9yIHJlc3BvbnNpdmUgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRndXR0ZXItdHlwZSBbbWFyZ2luXSBUaGUgdHlwZSBvZiBndXR0ZXIgdG8gdXNlLiBDYW4gYmUgYG1hcmdpbmAgb3IgYHBhZGRpbmdgXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRicmVha3BvaW50IFtudWxsXSAtIFRoZSBuYW1lIG9mIHRoZSBicmVha3BvaW50IHNpemUgaW4geW91ciBndXR0ZXJzIG1hcCB0byBnZXQgdGhlIHNpemUgZnJvbS4gSWYgdXNpbmcgd2l0aCB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdGhpcyB3aWxsIGJlIHNldCBhdXRvbWF0aWNhbGx5IHVubGVzcyBtYW51YWxseSBlbnRlcmVkLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcnxTdHJpbmd9IFRoZSBjZWxsIG9mZnNldCBwcm9wZXJ0eSB2YWx1ZS5cbkBmdW5jdGlvbiB4eS1jZWxsLW9mZnNldChcbiAgJG4sXG4gICRndXR0ZXJzOiAkZ3JpZC1tYXJnaW4tZ3V0dGVycyxcbiAgJGd1dHRlci10eXBlOiBtYXJnaW4sXG4gICRicmVha3BvaW50OiBudWxsXG4pIHtcbiAgJGJyZWFrcG9pbnQ6IC16Zi1jdXJyZW50LWJyZWFrcG9pbnQoJGJyZWFrcG9pbnQsICRkZWZhdWx0OiAkLXpmLXplcm8tYnJlYWtwb2ludCk7XG4gICRzaXplOiB4eS1jZWxsLXNpemUoJG4pO1xuXG4gICRvZmZzZXQ6ICRzaXplO1xuICBAaWYgKCRndXR0ZXItdHlwZSA9PSAnbWFyZ2luJykge1xuICAgIC8vIE1ha2Ugc3VyZSB0aGF0IDAgaXMgdHJhbnNsYXRlZCBpbiAwcmVtIGZvciBjYWxjKClcbiAgICAkZ3V0dGVyOiByZW0tY2FsYyh4eS1jZWxsLWd1dHRlcnMoJGd1dHRlcnMsICRicmVha3BvaW50KSk7XG4gICAgQGlmICRndXR0ZXIgPT0gMCB7XG4gICAgICAkZ3V0dGVyOiAwcmVtO1xuICAgIH1cbiAgICAkb2Zmc2V0OiBpZigkZ3V0dGVyID09IDAsICRzaXplLCBjYWxjKCN7JHNpemV9ICsgI3skZ3V0dGVyfSAvIDIpKTtcbiAgfVxuICBAcmV0dXJuICRvZmZzZXQ7XG59XG5cbi8vLyBPZmZzZXRzIGEgY29sdW1uIHRvIHRoZSByaWdodC9ib3R0b20gYnkgYCRuYCBjb2x1bW5zLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TGlzdH0gJG4gLSBTaXplIHRvIG9mZnNldCBieS4gWW91IGNhbiBwYXNzIGluIGFueSB2YWx1ZSBhY2NlcHRlZCBieSB0aGUgYHh5LWNlbGwoKWAgbWl4aW4sIHN1Y2ggYXMgYDZgLCBgNTAlYCwgb3IgYDEgb2YgMmAuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtbWFyZ2luLWd1dHRlcnNdIE1hcCBvZiBndXR0ZXJzIG9yIHNpbmdsZSB2YWx1ZSB0byB1c2UgZm9yIHJlc3BvbnNpdmUgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRndXR0ZXItdHlwZSBbbWFyZ2luXSBUaGUgdHlwZSBvZiBndXR0ZXIgdG8gdXNlLiBDYW4gYmUgYG1hcmdpbmAgb3IgYHBhZGRpbmdgXG4vLy8gQHBhcmFtIHtOdW1iZXJ8QXJyYXl8S2V5d29yZH0gJGJyZWFrcG9pbnQgW251bGxdIC0gQnJlYWtwb2ludCB0byB1c2UgZm9yIGAkZ3V0dGVyc2AuIEl0IGNhbiBiZSBhIGJyZWFrcG9pbnQgbmFtZSwgbGlzdCBvZiBicmVha3BvaW50cyBvciBgYXV0b2AgZm9yIGFsbCBicmVha3BvaW50cy4gSWYgYSBsaXN0IGlzIGdpdmVuLCBtZWRpYS1xdWVyaWVzIHdpbGwgYmUgZ2VuZXJhdGVkLiBJZiB1c2luZyB3aXRoIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0aGlzIHdpbGwgYmUgc2V0IGF1dG9tYXRpY2FsbHkgdW5sZXNzIG1hbnVhbGx5IGVudGVyZWQuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkdmVydGljYWwgW2ZhbHNlXSBTZXRzIHRoZSBkaXJlY3Rpb24gb2YgdGhlIG9mZnNldC4gSWYgc2V0IHRvIHRydWUgd2lsbCBhcHBseSBtYXJnaW4tdG9wIGluc3RlYWQuXG5AbWl4aW4geHktY2VsbC1vZmZzZXQoXG4gICRuLFxuICAkZ3V0dGVyczogJGdyaWQtbWFyZ2luLWd1dHRlcnMsXG4gICRndXR0ZXItdHlwZTogbWFyZ2luLFxuICAkYnJlYWtwb2ludDogbnVsbCxcbiAgJHZlcnRpY2FsOiBmYWxzZVxuKSB7XG4gICRicmVha3BvaW50OiAtemYtY3VycmVudC1icmVha3BvaW50KCRicmVha3BvaW50LCAkZGVmYXVsdDogJC16Zi16ZXJvLWJyZWFrcG9pbnQpO1xuICAkZGlyZWN0aW9uOiBpZigkdmVydGljYWwsICd0b3AnLCAkZ2xvYmFsLWxlZnQpO1xuXG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQtaW4oJGJyZWFrcG9pbnQsICRtZWRpYS1xdWVyaWVzOiAnZm9yLWxpc3RzJykge1xuICAgICRvZmZzZXQ6IHh5LWNlbGwtb2Zmc2V0KCRuLCAkZ3V0dGVycywgJGd1dHRlci10eXBlKTtcbiAgICBtYXJnaW4tI3skZGlyZWN0aW9ufTogI3skb2Zmc2V0fTtcbiAgfVxufVxuIiwiLy8gc2Fzcy1saW50OmRpc2FibGUgbm8tdmVuZG9yLXByZWZpeGVzXG5cbi8vLyBNb2RpZmllcyBhIGdyaWQgdG8gZ2l2ZSBpdCBcImZyYW1lXCIgYmVoYXZpb3IgKG5vIG92ZXJmbG93LCBubyB3cmFwLCBzdHJldGNoIGJlaGF2aW9yKVxuLy8vXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkdmVydGljYWwgW2ZhbHNlXSAtIElzIGdyaWQgdmVydGljYWwgb3IgaG9yaXpvbnRhbC4gU2hvdWxkIG1hdGNoIGdyaWQuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkbmVzdGVkIFtmYWxzZV0gLSBJcyBncmlkIG5lc3RlZCBvciBub3QuIElmIG5lc3RlZCBpcyB0cnVlIHRoaXMgc2V0cyB0aGUgZnJhbWUgdG8gMTAwJSBoZWlnaHQsIG90aGVyd2lzZSB3aWxsIGJlIDEwMHZoLlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgW251bGxdIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSBmb3IgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGJyZWFrcG9pbnQgW251bGxdIC0gVGhlIG5hbWUgb2YgdGhlIGJyZWFrcG9pbnQgc2l6ZSBpbiB5b3VyIGd1dHRlcnMgbWFwIHRvIGdldCB0aGUgc2l6ZSBmcm9tLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGluY2x1ZGUtYmFzZSBbdHJ1ZV0gLSBJbmNsdWRlIHRoZSBiYXNlIHN0eWxlcyB0aGF0IGRvbid0IHZhcnkgcGVyIGJyZWFrcG9pbnQuXG5AbWl4aW4geHktZ3JpZC1mcmFtZShcbiAgJHZlcnRpY2FsOiBmYWxzZSxcbiAgJG5lc3RlZDogZmFsc2UsXG4gICRndXR0ZXJzOiBudWxsLFxuICAkYnJlYWtwb2ludDogbnVsbCxcbiAgJGluY2x1ZGUtYmFzZTogdHJ1ZVxuKSB7XG5cbiAgQGlmICRpbmNsdWRlLWJhc2Uge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICB9XG5cbiAgQGlmICRicmVha3BvaW50ID09IG51bGwgYW5kIHR5cGUtb2YoJGd1dHRlcnMpID09ICdtYXAnIHtcbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCkge1xuICAgICAgQGluY2x1ZGUgeHktZ3JpZC1mcmFtZSgkdmVydGljYWwsICRuZXN0ZWQsICRndXR0ZXJzLCAkLXpmLXNpemUsIGZhbHNlKTtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIC8vIEdldCBvdXIgZ3V0dGVycyBpZiBhcHBsaWNhYmxlXG4gICAgJGd1dHRlcjogLXpmLWdldC1icC12YWwoJGd1dHRlcnMsICRicmVha3BvaW50KTtcblxuICAgIC8vIElmIHdlIGhhdmUgYSBndXR0ZXIsIGFkZCBpdCB0byB0aGUgd2lkdGgvaGVpZ2h0XG4gICAgQGlmICRndXR0ZXIge1xuICAgICAgQGlmICR2ZXJ0aWNhbCA9PSB0cnVlIHtcbiAgICAgICAgJHVuaXQ6IGlmKCRuZXN0ZWQgPT0gdHJ1ZSwgMTAwJSwgMTAwdmgpO1xuICAgICAgICAkZ3V0dGVyOiByZW0tY2FsYygkZ3V0dGVyKTtcbiAgICAgICAgLy8gTWFrZSBzdXJlIHRoYXQgMCBpcyB0cmFuc2xhdGVkIGluIDByZW0gZm9yIGNhbGMoKVxuICAgICAgICBAaWYgJGd1dHRlciA9PSAwIHtcbiAgICAgICAgICAkZ3V0dGVyOiAwcmVtO1xuICAgICAgICB9XG4gICAgICAgIGhlaWdodDogY2FsYygjeyR1bml0fSArICN7JGd1dHRlcn0pO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgICR1bml0OiBpZigkbmVzdGVkID09IHRydWUsIDEwMCUsIDEwMHZ3KTtcbiAgICAgICAgJGd1dHRlcjogcmVtLWNhbGMoJGd1dHRlcik7XG4gICAgICAgIC8vIE1ha2Ugc3VyZSB0aGF0IDAgaXMgdHJhbnNsYXRlZCBpbiAwcmVtIGZvciBjYWxjKClcbiAgICAgICAgQGlmICRndXR0ZXIgPT0gMCB7XG4gICAgICAgICAgJGd1dHRlcjogMHJlbTtcbiAgICAgICAgfVxuICAgICAgICB3aWR0aDogY2FsYygjeyR1bml0fSArICN7JGd1dHRlcn0pO1xuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAaWYgJHZlcnRpY2FsID09IHRydWUge1xuICAgICAgICBoZWlnaHQ6IGlmKCRuZXN0ZWQgPT0gdHJ1ZSwgMTAwJSwgMTAwdmgpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIHdpZHRoOiBpZigkbmVzdGVkID09IHRydWUsIDEwMCUsIDEwMHZ3KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIE1vZGlmaWVzIGEgY2VsbCB0byBnaXZlIGl0IFwiYmxvY2tcIiBiZWhhdmlvciAob3ZlcmZsb3cgYXV0bywgaW5lcnRpYWwgc2Nyb2xsaW5nKVxuLy8vXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkdmVydGljYWwgW2ZhbHNlXSAtIElzIGdyaWQgdmVydGljYWwgb3IgaG9yaXpvbnRhbC4gU2hvdWxkIG1hdGNoIGdyaWQuXG5AbWl4aW4geHktY2VsbC1ibG9jayhcbiAgJHZlcnRpY2FsOiBmYWxzZVxuKSB7XG4gICRwcm9wZXJ0eTogaWYoJHZlcnRpY2FsID09IHRydWUsICdvdmVyZmxvdy15JywgJ292ZXJmbG93LXgnKTtcblxuICBAaWYgJHZlcnRpY2FsID09IHRydWUge1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICB9IEBlbHNlIHtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuXG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7XG59XG5cbi8vLyBDb250YWluZXIgZm9yIGluc2lkZSBhIGdyaWQgZnJhbWUgY29udGFpbmluZyBtdWx0aXBsZSBibG9ja3MuIFR5cGljYWxseSB1c2VkXG4vLy8gYXMgYSBtb2RpZmllciBmb3IgYSBgLmNlbGxgIHRvIGFsbG93IHRoZSBjZWxsIHRvIHBhc3MgYWxvbmcgZmxleCBzaXppbmdcbi8vLyBjb25zdHJhaW50cyAvIGZyb20gcGFyZW50cyB0byBjaGlsZHJlbi5cbkBtaXhpbiB4eS1jZWxsLWJsb2NrLWNvbnRhaW5lcigpIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbWF4LWhlaWdodDogMTAwJTtcblxuICA+IC5ncmlkLXgge1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBGbGV4Ym94IFV0aWxpdGllc1xuLy8vL1xuLy9cbi8vLyBEZWZhdWx0IHZhbHVlIGZvciB0aGUgY291bnQgb2Ygc291cmNlIG9yZGVyaW5nYFxuLy8vIEB0eXBlIE51bWJlclxuJGZsZXgtc291cmNlLW9yZGVyaW5nLWNvdW50OiA2ICFkZWZhdWx0O1xuXG4vLy8gUXVpY2tseSBkaXNhYmxlL2VuYWJsZSBSZXNwb25zaXZlIGJyZWFrcG9pbnRzIGZvciBWYW5pbGxhIEZsZXggSGVscGVycy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kZmxleGJveC1yZXNwb25zaXZlLWJyZWFrcG9pbnRzOiB0cnVlICFkZWZhdWx0O1xuXG5AbWl4aW4gZmxleC1oZWxwZXJzIHtcbiAgLmZsZXgtY29udGFpbmVyIHtcbiAgICBAaW5jbHVkZSBmbGV4O1xuICB9XG5cbiAgLmZsZXgtY2hpbGQtYXV0byB7XG4gICAgZmxleDogMSAxIGF1dG87XG4gIH1cblxuICAuZmxleC1jaGlsZC1ncm93IHtcbiAgICBmbGV4OiAxIDAgYXV0bztcbiAgfVxuXG4gIC5mbGV4LWNoaWxkLXNocmluayB7XG4gICAgZmxleDogMCAxIGF1dG87XG4gIH1cblxuICBAZWFjaCAkZGlyLCAkcHJvcCBpbiAkLXpmLWZsZXgtZGlyZWN0aW9uIHtcbiAgICAuZmxleC1kaXItI3skZGlyfSB7XG4gICAgICBAaW5jbHVkZSBmbGV4LWRpcmVjdGlvbigkcHJvcCk7XG4gICAgfVxuICB9XG5cbiAgQGlmICgkZmxleGJveC1yZXNwb25zaXZlLWJyZWFrcG9pbnRzKSB7XG4gICAgLy8gTG9vcCB0aHJvdWdoIFJlc3BvbnNpdmUgQnJlYWtwb2ludHNcbiAgICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgICAgQGlmICRzaXplICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAuI3skc2l6ZX0tZmxleC1jb250YWluZXIge1xuICAgICAgICAgICAgQGluY2x1ZGUgZmxleDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuI3skc2l6ZX0tZmxleC1jaGlsZC1hdXRvIHtcbiAgICAgICAgICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC4jeyRzaXplfS1mbGV4LWNoaWxkLWdyb3cge1xuICAgICAgICAgICAgZmxleDogMSAwIGF1dG87XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLiN7JHNpemV9LWZsZXgtY2hpbGQtc2hyaW5rIHtcbiAgICAgICAgICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIEBlYWNoICRkaXIsICRwcm9wIGluICQtemYtZmxleC1kaXJlY3Rpb24ge1xuICAgICAgICAgICAgLiN7JHNpemV9LWZsZXgtZGlyLSN7JGRpcn0ge1xuICAgICAgICAgICAgICBAaW5jbHVkZSBmbGV4LWRpcmVjdGlvbigkcHJvcCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZsZXgtY2xhc3NlcyB7XG4gIC8vIEhvcml6b250YWwgYWxpZ25tZW50IHVzaW5nIGp1c3RpZnktY29udGVudFxuICBAZWFjaCAkaGRpciwgJHByb3AgaW4gJC16Zi1mbGV4LWp1c3RpZnkge1xuICAgIC5hbGlnbi0jeyRoZGlyfSB7XG4gICAgICBAaW5jbHVkZSBmbGV4LWFsaWduKCR4OiAkaGRpcik7XG4gICAgfVxuICB9XG4gIFxuICAvLyBIb3Jpem9udGFsIGFsaWdubWVudCBTcGVjaWZpY2FsbHkgZm9yIFZlcnRpY2FsIE1lbnVcbiAgQGVhY2ggJGhkaXIsICRwcm9wIGluIG1hcC1yZW1vdmUoJC16Zi1mbGV4LWp1c3RpZnksICdqdXN0aWZ5JywgJ3NwYWNlZCcpIHtcbiAgICAuYWxpZ24tI3skaGRpcn0ge1xuICAgICAgJi52ZXJ0aWNhbCB7XG4gICAgICAgICYubWVudSA+IGxpID4gYSB7XG4gICAgICAgICAgQGluY2x1ZGUgZmxleC1hbGlnbigkeDogJGhkaXIpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gVmVydGljYWwgYWxpZ25tZW50IHVzaW5nIGFsaWduLWl0ZW1zIGFuZCBhbGlnbi1zZWxmXG4gIEBlYWNoICR2ZGlyLCAkcHJvcCBpbiAkLXpmLWZsZXgtYWxpZ24ge1xuICAgIC5hbGlnbi0jeyR2ZGlyfSB7XG4gICAgICBAaW5jbHVkZSBmbGV4LWFsaWduKCR5OiAkdmRpcik7XG4gICAgfVxuXG4gICAgLmFsaWduLXNlbGYtI3skdmRpcn0ge1xuICAgICAgQGluY2x1ZGUgZmxleC1hbGlnbi1zZWxmKCR5OiAkdmRpcik7XG4gICAgfVxuICB9XG5cbiAgLy8gQ2VudHJhbCBhbGlnbm1lbnQgb2YgY29udGVudFxuICAuYWxpZ24tY2VudGVyLW1pZGRsZSB7XG4gICAgQGluY2x1ZGUgZmxleC1hbGlnbigkeDogY2VudGVyLCAkeTogbWlkZGxlKTtcbiAgICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XG4gIH1cblxuICAvLyBTb3VyY2Ugb3JkZXJpbmdcbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCB7XG4gICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZmxleC1zb3VyY2Utb3JkZXJpbmctY291bnQge1xuICAgICAgLiN7JC16Zi1zaXplfS1vcmRlci0jeyRpfSB7XG4gICAgICAgIEBpbmNsdWRlIGZsZXgtb3JkZXIoJGkpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFZhbmlsbGEgRmxleGJveCBIZWxwZXJzXG4gIEBpbmNsdWRlIGZsZXgtaGVscGVycztcbn1cbiIsIkBmdW5jdGlvbiAtemYtZmxleC1qdXN0aWZ5KCR0ZXh0LWRpcmVjdGlvbikge1xuICAkLXpmLWZsZXgtanVzdGlmeTogKFxuICAgICdsZWZ0JzogaWYoJHRleHQtZGlyZWN0aW9uID09IHJ0bCwgZmxleC1lbmQsIGZsZXgtc3RhcnQpLFxuICAgICdyaWdodCc6IGlmKCR0ZXh0LWRpcmVjdGlvbiA9PSBydGwsIGZsZXgtc3RhcnQsIGZsZXgtZW5kKSxcbiAgICAnY2VudGVyJzogY2VudGVyLFxuICAgICdqdXN0aWZ5Jzogc3BhY2UtYmV0d2VlbixcbiAgICAnc3BhY2VkJzogc3BhY2UtYXJvdW5kLFxuICApO1xuXG4gIEByZXR1cm4gJC16Zi1mbGV4LWp1c3RpZnk7XG59XG5cblxuJC16Zi1mbGV4LWFsaWduOiAoXG4gICd0b3AnOiBmbGV4LXN0YXJ0LFxuICAnYm90dG9tJzogZmxleC1lbmQsXG4gICdtaWRkbGUnOiBjZW50ZXIsXG4gICdzdHJldGNoJzogc3RyZXRjaCxcbik7XG5cbiQtemYtZmxleC1kaXJlY3Rpb246IChcbiAgJ3Jvdyc6IHJvdyxcbiAgJ3Jvdy1yZXZlcnNlJzogcm93LXJldmVyc2UsXG4gICdjb2x1bW4nOiBjb2x1bW4sXG4gICdjb2x1bW4tcmV2ZXJzZSc6IGNvbHVtbi1yZXZlcnNlLFxuKTtcblxuLy8vIEVuYWJsZXMgZmxleGJveCBieSBhZGRpbmcgYGRpc3BsYXk6IGZsZXhgIHRvIHRoZSBlbGVtZW50LlxuQG1peGluIGZsZXgge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuXG4vLy8gSG9yaXpvbnRhbGx5IG9yIHZlcnRpY2FsbHkgYWxpZ25zIHRoZSBpdGVtcyB3aXRoaW4gYSBmbGV4IGNvbnRhaW5lci5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHggW251bGxdIC0gSG9yaXpvbnRhbCBhbGlnbm1lbnQgdG8gdXNlLiBDYW4gYmUgYGxlZnRgLCBgcmlnaHRgLCBgY2VudGVyYCwgYGp1c3RpZnlgLCBvciBgc3BhY2VkYC4gT3IsIHNldCBpdCB0byBgbnVsbGAgKHRoZSBkZWZhdWx0KSB0byBub3Qgc2V0IGhvcml6b250YWwgYWxpZ25tZW50LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHkgW251bGxdIC0gVmVydGljYWwgYWxpZ25tZW50IHRvIHVzZS4gQ2FuIGJlIGB0b3BgLCBgYm90dG9tYCwgYG1pZGRsZWAsIG9yIGBzdHJldGNoYC4gT3IsIHNldCBpdCB0byBgbnVsbGAgKHRoZSBkZWZhdWx0KSB0byBub3Qgc2V0IHZlcnRpY2FsIGFsaWdubWVudC5cbkBtaXhpbiBmbGV4LWFsaWduKCR4OiBudWxsLCAkeTogbnVsbCkge1xuICBAaWYgJHgge1xuICAgIEBpZiBtYXAtaGFzLWtleSgkLXpmLWZsZXgtanVzdGlmeSwgJHgpIHtcbiAgICAgICR4OiBtYXAtZ2V0KCQtemYtZmxleC1qdXN0aWZ5LCAkeCk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEB3YXJuICdmbGV4LWdyaWQtcm93LWFsaWduKCk6ICN7JHh9IGlzIG5vdCBhIHZhbGlkIHZhbHVlIGZvciBob3Jpem9udGFsIGFsaWdubWVudC4gVXNlIGxlZnQsIHJpZ2h0LCBjZW50ZXIsIGp1c3RpZnksIG9yIHNwYWNlZC4nO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkeSB7XG4gICAgQGlmIG1hcC1oYXMta2V5KCQtemYtZmxleC1hbGlnbiwgJHkpIHtcbiAgICAgICR5OiBtYXAtZ2V0KCQtemYtZmxleC1hbGlnbiwgJHkpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAd2FybiAnZmxleC1ncmlkLXJvdy1hbGlnbigpOiAjeyR5fSBpcyBub3QgYSB2YWxpZCB2YWx1ZSBmb3IgdmVydGljYWwgYWxpZ25tZW50LiBVc2UgdG9wLCBib3R0b20sIG1pZGRsZSwgb3Igc3RyZXRjaC4nO1xuICAgIH1cbiAgfVxuXG4gIGp1c3RpZnktY29udGVudDogJHg7XG4gIGFsaWduLWl0ZW1zOiAkeTtcbn1cblxuLy8vIFZlcnRpY2FsbHkgYWxpZ24gYSBzaW5nbGUgY29sdW1uIHdpdGhpbiBhIGZsZXggcm93LiBBcHBseSB0aGlzIG1peGluIHRvIGEgZmxleCBjb2x1bW4uXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR5IFtudWxsXSAtIFZlcnRpY2FsIGFsaWdubWVudCB0byB1c2UuIENhbiBiZSBgdG9wYCwgYGJvdHRvbWAsIGBtaWRkbGVgLCBvciBgc3RyZXRjaGAuIE9yLCBzZXQgaXQgdG8gYG51bGxgICh0aGUgZGVmYXVsdCkgdG8gbm90IHNldCB2ZXJ0aWNhbCBhbGlnbm1lbnQuXG5AbWl4aW4gZmxleC1hbGlnbi1zZWxmKCR5OiBudWxsKSB7XG4gIEBpZiAkeSB7XG4gICAgQGlmIG1hcC1oYXMta2V5KCQtemYtZmxleC1hbGlnbiwgJHkpIHtcbiAgICAgICR5OiBtYXAtZ2V0KCQtemYtZmxleC1hbGlnbiwgJHkpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAd2FybiAnZmxleC1ncmlkLWNvbHVtbi1hbGlnbigpOiAjeyR5fSBpcyBub3QgYSB2YWxpZCB2YWx1ZSBmb3IgYWxpZ25tZW50LiBVc2UgdG9wLCBib3R0b20sIG1pZGRsZSwgb3Igc3RyZXRjaC4nO1xuICAgIH1cbiAgfVxuXG4gIGFsaWduLXNlbGY6ICR5O1xufVxuXG4vLy8gQ2hhbmdlcyB0aGUgc291cmNlIG9yZGVyIG9mIGEgZmxleCBjaGlsZC4gQ2hpbGRyZW4gd2l0aCBsb3dlciBudW1iZXJzIGFwcGVhciBmaXJzdCBpbiB0aGUgbGF5b3V0LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkb3JkZXIgWzBdIC0gT3JkZXIgbnVtYmVyIHRvIGFwcGx5LlxuQG1peGluIGZsZXgtb3JkZXIoJG9yZGVyOiAwKSB7XG4gIG9yZGVyOiAkb3JkZXI7XG59XG5cbi8vLyBDaGFuZ2UgZmxleC1kaXJlY3Rpb25cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXJlY3Rpb24gW3Jvd10gLSBGbGV4IGRpcmVjdGlvbiB0byB1c2UuIENhbiBiZVxuLy8vICAgLSByb3cgKGRlZmF1bHQpOiBzYW1lIGFzIHRleHQgZGlyZWN0aW9uXG4vLy8gICAtIHJvdy1yZXZlcnNlOiBvcHBvc2l0ZSB0byB0ZXh0IGRpcmVjdGlvblxuLy8vICAgLSBjb2x1bW46IHNhbWUgYXMgcm93IGJ1dCB0b3AgdG8gYm90dG9tXG4vLy8gICAtIGNvbHVtbi1yZXZlcnNlOiBzYW1lIGFzIHJvdy1yZXZlcnNlIHRvcCB0byBib3R0b21cbkBtaXhpbiBmbGV4LWRpcmVjdGlvbigkZGlyZWN0aW9uOiByb3cpIHtcbiAgZmxleC1kaXJlY3Rpb246ICRkaXJlY3Rpb247XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLyBIaWRlIGFuIGVsZW1lbnQgYnkgZGVmYXVsdCwgb25seSBkaXNwbGF5aW5nIGl0IGFib3ZlIGEgY2VydGFpbiBzY3JlZW4gc2l6ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIC0gQnJlYWtwb2ludCB0byB1c2UuICoqTXVzdCBiZSBhIGJyZWFrcG9pbnQgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnRzYC4qKlxuQG1peGluIHNob3ctZm9yKCRzaXplKSB7XG4gICRzaXplOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJHNpemUpO1xuICAvLyBNYXggdmFsdWUgaXMgMC4ycHggdW5kZXIgdGhlIG5leHQgYnJlYWtwb2ludCAoMC4wMiAvIDE2ID0gMC4wMDEyNSkuXG4gIC8vIFVzZSBhIHByZWNpc2lvbiB1bmRlciAxcHggdG8gc3VwcG9ydCBicm93c2VyIHpvb20sIGJ1dCBub3QgdG8gbG93IHRvIGF2b2lkIHJvdW5kaW5nLlxuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL2ZvdW5kYXRpb24vZm91bmRhdGlvbi1zaXRlcy9pc3N1ZXMvMTEzMTNcbiAgJHNpemU6IC16Zi1icC10by1lbSgkc2l6ZSkgLSAwLjAwMTI1O1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUgZG93bikge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLy8gSGlkZSBhbiBlbGVtZW50IGJ5IGRlZmF1bHQsIG9ubHkgZGlzcGxheWluZyBpdCB3aXRoaW4gYSBjZXJ0YWluIGJyZWFrcG9pbnQuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSAtIEJyZWFrcG9pbnQgdG8gdXNlLiAqKk11c3QgYmUgYSBicmVha3BvaW50IGRlZmluZWQgaW4gYCRicmVha3BvaW50c2AuKipcbkBtaXhpbiBzaG93LWZvci1vbmx5KCRzaXplKSB7XG4gICRsb3dlci1ib3VuZC1zaXplOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJHNpemUpO1xuICAkdXBwZXItYm91bmQtc2l6ZTogLXpmLW1hcC1uZXh0KCRicmVha3BvaW50cywgJHNpemUpO1xuXG4gIC8vIG1vcmUgb2Z0ZW4gdGhhbiBub3QgdGhpcyB3aWxsIGJlIGNvcnJlY3QsIGp1c3Qgb25lIHRpbWUgcm91bmQgdGhlIGxvb3AgaXQgd29uJ3Qgc28gc2V0IGluIHNjb3BlIGhlcmVcbiAgJGxvd2VyLWJvdW5kOiAtemYtYnAtdG8tZW0oJGxvd2VyLWJvdW5kLXNpemUpIC0gMC4wMDEyNTtcbiAgLy8gdGVzdCBhY3R1YWwgbG93ZXItYm91bmQtc2l6ZSwgaWYgMCBzZXQgaXQgdG8gMGVtXG4gIEBpZiBzdHJpcC11bml0KCRsb3dlci1ib3VuZC1zaXplKSA9PSAwIHtcbiAgICAkbG93ZXItYm91bmQ6IC16Zi1icC10by1lbSgkbG93ZXItYm91bmQtc2l6ZSk7XG4gIH1cblxuICBAaWYgJHVwcGVyLWJvdW5kLXNpemUgPT0gbnVsbCB7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGxvd2VyLWJvdW5kKSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAkdXBwZXItYm91bmQ6IC16Zi1icC10by1lbSgkdXBwZXItYm91bmQtc2l6ZSk7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbG93ZXItYm91bmQpLCBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICR1cHBlci1ib3VuZCkge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuXG5cbi8vLyBTaG93IGFuIGVsZW1lbnQgYnkgZGVmYXVsdCwgYW5kIGhpZGUgaXQgYWJvdmUgYSBjZXJ0YWluIHNjcmVlbiBzaXplLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBCcmVha3BvaW50IHRvIHVzZS4gKipNdXN0IGJlIGEgYnJlYWtwb2ludCBkZWZpbmVkIGluIGAkYnJlYWtwb2ludHNgLioqXG5AbWl4aW4gaGlkZS1mb3IoJHNpemUpIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLy8gU2hvdyBhbiBlbGVtZW50IGJ5IGRlZmF1bHQsIGFuZCBoaWRlIGl0IGFib3ZlIGEgY2VydGFpbiBzY3JlZW4gc2l6ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIC0gQnJlYWtwb2ludCB0byB1c2UuICoqTXVzdCBiZSBhIGJyZWFrcG9pbnQgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnRzYC4qKlxuQG1peGluIGhpZGUtZm9yLW9ubHkoJHNpemUpIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSBvbmx5KSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXZpc2liaWxpdHktY2xhc3NlcyB7XG4gIC8vIEJhc2ljIGhpZGluZyBjbGFzc2VzXG4gIC5oaWRlIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuaW52aXNpYmxlIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cbiAgLnZpc2libGUge1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cblxuICAvLyBSZXNwb25zaXZlIHZpc2liaWxpdHkgY2xhc3Nlc1xuICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgLmhpZGUtZm9yLSN7JHNpemV9IHtcbiAgICAgICAgQGluY2x1ZGUgaGlkZS1mb3IoJHNpemUpO1xuICAgICAgfVxuXG4gICAgICAuc2hvdy1mb3ItI3skc2l6ZX0ge1xuICAgICAgICBAaW5jbHVkZSBzaG93LWZvcigkc2l6ZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmhpZGUtZm9yLSN7JHNpemV9LW9ubHkge1xuICAgICAgQGluY2x1ZGUgaGlkZS1mb3Itb25seSgkc2l6ZSk7XG4gICAgfVxuXG4gICAgLnNob3ctZm9yLSN7JHNpemV9LW9ubHkge1xuICAgICAgQGluY2x1ZGUgc2hvdy1mb3Itb25seSgkc2l6ZSk7XG4gICAgfVxuICB9XG5cbiAgLy8gU2NyZWVuIHJlYWRlciB2aXNpYmlsaXR5IGNsYXNzZXNcbiAgLy8gTmVlZCBhIFwiaGlkZS1mb3Itc3JcIiBjbGFzcz8gQWRkIGFyaWEtaGlkZGVuPSd0cnVlJyB0byB0aGUgZWxlbWVudFxuICAuc2hvdy1mb3Itc3IsXG4gIC5zaG93LW9uLWZvY3VzIHtcbiAgICBAaW5jbHVkZSBlbGVtZW50LWludmlzaWJsZTtcbiAgfVxuXG4gIC8vIE9ubHkgZGlzcGxheSB0aGUgZWxlbWVudCB3aGVuIGl0J3MgZm9jdXNlZFxuICAuc2hvdy1vbi1mb2N1cyB7XG4gICAgJjphY3RpdmUsXG4gICAgJjpmb2N1cyB7XG4gICAgICBAaW5jbHVkZSBlbGVtZW50LWludmlzaWJsZS1vZmY7XG4gICAgfVxuICB9XG5cbiAgLy8gTGFuZHNjYXBlIGFuZCBwb3J0cmFpdCB2aXNpYmlsaXR5XG4gIC5zaG93LWZvci1sYW5kc2NhcGUsXG4gIC5oaWRlLWZvci1wb3J0cmFpdCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFuZHNjYXBlKSB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocG9ydHJhaXQpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAuaGlkZS1mb3ItbGFuZHNjYXBlLFxuICAuc2hvdy1mb3ItcG9ydHJhaXQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFuZHNjYXBlKSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChwb3J0cmFpdCkge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAvLyBEYXJrIE1vZGUgVmlzaWJpbGl0eVxuICAuc2hvdy1mb3ItZGFyay1tb2RlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5oaWRlLWZvci1kYXJrLW1vZGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyaykge1xuICAgIC5zaG93LWZvci1kYXJrLW1vZGUge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB9XG4gICAgLmhpZGUtZm9yLWRhcmstbW9kZSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgLy8gSUUxMCsgVmlzaWJpbGl0eVxuICAuc2hvdy1mb3ItaWUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgQG1lZGlhIGFsbCBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpIHtcbiAgICAuc2hvdy1mb3ItaWUge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB9XG4gICAgLmhpZGUtZm9yLWllIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAvLyBTdGlja3kgVmlzaWJpbGl0eVxuICAuc2hvdy1mb3Itc3RpY2t5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5pcy1zdHVjayAuc2hvdy1mb3Itc3RpY2t5IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAuaXMtc3R1Y2sgLmhpZGUtZm9yLXN0aWNreSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuIiwiW2RhdGEtc2FsXSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogdmFyKC0tc2FsLWRlbGF5LCAwcyk7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4ycztcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiB2YXIoLS1zYWwtZHVyYXRpb24sIDAuMnMpO1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlO1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiB2YXIoLS1zYWwtZWFzaW5nLCBlYXNlKTtcbn1cbltkYXRhLXNhbF1bZGF0YS1zYWwtZHVyYXRpb249XCIyMDBcIl0ge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMnM7XG59XG5bZGF0YS1zYWxdW2RhdGEtc2FsLWR1cmF0aW9uPVwiMjUwXCJdIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjI1cztcbn1cbltkYXRhLXNhbF1bZGF0YS1zYWwtZHVyYXRpb249XCIzMDBcIl0ge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7XG59XG5bZGF0YS1zYWxdW2RhdGEtc2FsLWR1cmF0aW9uPVwiMzUwXCJdIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjM1cztcbn1cbltkYXRhLXNhbF1bZGF0YS1zYWwtZHVyYXRpb249XCI0MDBcIl0ge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuNHM7XG59XG5bZGF0YS1zYWxdW2RhdGEtc2FsLWR1cmF0aW9uPVwiNDUwXCJdIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjQ1cztcbn1cbltkYXRhLXNhbF1bZGF0YS1zYWwtZHVyYXRpb249XCI1MDBcIl0ge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuNXM7XG59XG5bZGF0YS1zYWxdW2RhdGEtc2FsLWR1cmF0aW9uPVwiNTUwXCJdIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjU1cztcbn1cbltkYXRhLXNhbF1bZGF0YS1zYWwtZHVyYXRpb249XCI2MDBcIl0ge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuNnM7XG59XG5bZGF0YS1zYWxdW2RhdGEtc2FsLWR1cmF0aW9uPVwiNjUwXCJdIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjY1cztcbn1cbltkYXRhLXNhbF1bZGF0YS1zYWwtZHVyYXRpb249XCI3MDBcIl0ge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuN3M7XG59XG5bZGF0YS1zYWxdW2RhdGEtc2FsLWR1cmF0aW9uPVwiNzUwXCJdIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjc1cztcbn1cbltkYXRhLXNhbF1bZGF0YS1zYWwtZHVyYXRpb249XCI4MDBcIl0ge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuOHM7XG59XG5bZGF0YS1zYWxdW2RhdGEtc2FsLWR1cmF0aW9uPVwiODUwXCJdIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjg1cztcbn1cbltkYXRhLXNhbF1bZGF0YS1zYWwtZHVyYXRpb249XCI5MDBcIl0ge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuOXM7XG59XG5bZGF0YS1zYWxdW2RhdGEtc2FsLWR1cmF0aW9uPVwiOTUwXCJdIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjk1cztcbn1cbltkYXRhLXNhbF1bZGF0YS1zYWwtZHVyYXRpb249XCIxMDAwXCJdIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAxcztcbn1cbltkYXRhLXNhbF1bZGF0YS1zYWwtZHVyYXRpb249XCIxMDUwXCJdIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAxLjA1cztcbn1cbltkYXRhLXNhbF1bZGF0YS1zYWwtZHVyYXRpb249XCIxMTAwXCJdIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAxLjFzO1xufVxuW2RhdGEtc2FsXVtkYXRhLXNhbC1kdXJhdGlvbj1cIjExNTBcIl0ge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDEuMTVzO1xufVxuW2RhdGEtc2FsXVtkYXRhLXNhbC1kdXJhdGlvbj1cIjEyMDBcIl0ge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDEuMnM7XG59XG5bZGF0YS1zYWxdW2RhdGEtc2FsLWR1cmF0aW9uPVwiMTI1MFwiXSB7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMS4yNXM7XG59XG5bZGF0YS1zYWxdW2RhdGEtc2FsLWR1cmF0aW9uPVwiMTMwMFwiXSB7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMS4zcztcbn1cbltkYXRhLXNhbF1bZGF0YS1zYWwtZHVyYXRpb249XCIxMzUwXCJdIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAxLjM1cztcbn1cbltkYXRhLXNhbF1bZGF0YS1zYWwtZHVyYXRpb249XCIxNDAwXCJdIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAxLjRzO1xufVxuW2RhdGEtc2FsXVtkYXRhLXNhbC1kdXJhdGlvbj1cIjE0NTBcIl0ge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDEuNDVzO1xufVxuW2RhdGEtc2FsXVtkYXRhLXNhbC1kdXJhdGlvbj1cIjE1MDBcIl0ge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDEuNXM7XG59XG5bZGF0YS1zYWxdW2RhdGEtc2FsLWR1cmF0aW9uPVwiMTU1MFwiXSB7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMS41NXM7XG59XG5bZGF0YS1zYWxdW2RhdGEtc2FsLWR1cmF0aW9uPVwiMTYwMFwiXSB7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMS42cztcbn1cbltkYXRhLXNhbF1bZGF0YS1zYWwtZHVyYXRpb249XCIxNjUwXCJdIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAxLjY1cztcbn1cbltkYXRhLXNhbF1bZGF0YS1zYWwtZHVyYXRpb249XCIxNzAwXCJdIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAxLjdzO1xufVxuW2RhdGEtc2FsXVtkYXRhLXNhbC1kdXJhdGlvbj1cIjE3NTBcIl0ge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDEuNzVzO1xufVxuW2RhdGEtc2FsXVtkYXRhLXNhbC1kdXJhdGlvbj1cIjE4MDBcIl0ge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDEuOHM7XG59XG5bZGF0YS1zYWxdW2RhdGEtc2FsLWR1cmF0aW9uPVwiMTg1MFwiXSB7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMS44NXM7XG59XG5bZGF0YS1zYWxdW2RhdGEtc2FsLWR1cmF0aW9uPVwiMTkwMFwiXSB7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMS45cztcbn1cbltkYXRhLXNhbF1bZGF0YS1zYWwtZHVyYXRpb249XCIxOTUwXCJdIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAxLjk1cztcbn1cbltkYXRhLXNhbF1bZGF0YS1zYWwtZHVyYXRpb249XCIyMDAwXCJdIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAycztcbn1cbltkYXRhLXNhbF1bZGF0YS1zYWwtZGVsYXk9XCI1MFwiXSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMC4wNXM7XG59XG5bZGF0YS1zYWxdW2RhdGEtc2FsLWRlbGF5PVwiMTAwXCJdIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjFzO1xufVxuW2RhdGEtc2FsXVtkYXRhLXNhbC1kZWxheT1cIjE1MFwiXSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMC4xNXM7XG59XG5bZGF0YS1zYWxdW2RhdGEtc2FsLWRlbGF5PVwiMjAwXCJdIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjJzO1xufVxuW2RhdGEtc2FsXVtkYXRhLXNhbC1kZWxheT1cIjI1MFwiXSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMC4yNXM7XG59XG5bZGF0YS1zYWxdW2RhdGEtc2FsLWRlbGF5PVwiMzAwXCJdIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjNzO1xufVxuW2RhdGEtc2FsXVtkYXRhLXNhbC1kZWxheT1cIjM1MFwiXSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMC4zNXM7XG59XG5bZGF0YS1zYWxdW2RhdGEtc2FsLWRlbGF5PVwiNDAwXCJdIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjRzO1xufVxuW2RhdGEtc2FsXVtkYXRhLXNhbC1kZWxheT1cIjQ1MFwiXSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMC40NXM7XG59XG5bZGF0YS1zYWxdW2RhdGEtc2FsLWRlbGF5PVwiNTAwXCJdIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjVzO1xufVxuW2RhdGEtc2FsXVtkYXRhLXNhbC1kZWxheT1cIjU1MFwiXSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMC41NXM7XG59XG5bZGF0YS1zYWxdW2RhdGEtc2FsLWRlbGF5PVwiNjAwXCJdIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjZzO1xufVxuW2RhdGEtc2FsXVtkYXRhLXNhbC1kZWxheT1cIjY1MFwiXSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMC42NXM7XG59XG5bZGF0YS1zYWxdW2RhdGEtc2FsLWRlbGF5PVwiNzAwXCJdIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjdzO1xufVxuW2RhdGEtc2FsXVtkYXRhLXNhbC1kZWxheT1cIjc1MFwiXSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMC43NXM7XG59XG5bZGF0YS1zYWxdW2RhdGEtc2FsLWRlbGF5PVwiODAwXCJdIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjhzO1xufVxuW2RhdGEtc2FsXVtkYXRhLXNhbC1kZWxheT1cIjg1MFwiXSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMC44NXM7XG59XG5bZGF0YS1zYWxdW2RhdGEtc2FsLWRlbGF5PVwiOTAwXCJdIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjlzO1xufVxuW2RhdGEtc2FsXVtkYXRhLXNhbC1kZWxheT1cIjk1MFwiXSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMC45NXM7XG59XG5bZGF0YS1zYWxdW2RhdGEtc2FsLWRlbGF5PVwiMTAwMFwiXSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMXM7XG59XG5bZGF0YS1zYWxdW2RhdGEtc2FsLWVhc2luZz1cImxpbmVhclwiXSB7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbn1cbltkYXRhLXNhbF1bZGF0YS1zYWwtZWFzaW5nPVwiZWFzZVwiXSB7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2U7XG59XG5bZGF0YS1zYWxdW2RhdGEtc2FsLWVhc2luZz1cImVhc2UtaW5cIl0ge1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xufVxuW2RhdGEtc2FsXVtkYXRhLXNhbC1lYXNpbmc9XCJlYXNlLW91dFwiXSB7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xufVxuW2RhdGEtc2FsXVtkYXRhLXNhbC1lYXNpbmc9XCJlYXNlLWluLW91dFwiXSB7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xufVxuW2RhdGEtc2FsXVtkYXRhLXNhbC1lYXNpbmc9XCJlYXNlLWluLWN1YmljXCJdIHtcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG59XG5bZGF0YS1zYWxdW2RhdGEtc2FsLWVhc2luZz1cImVhc2Utb3V0LWN1YmljXCJdIHtcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG59XG5bZGF0YS1zYWxdW2RhdGEtc2FsLWVhc2luZz1cImVhc2UtaW4tb3V0LWN1YmljXCJdIHtcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpO1xufVxuW2RhdGEtc2FsXVtkYXRhLXNhbC1lYXNpbmc9XCJlYXNlLWluLWNpcmNcIl0ge1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC42LCAwLjA0LCAwLjk4LCAwLjMzNSk7XG59XG5bZGF0YS1zYWxdW2RhdGEtc2FsLWVhc2luZz1cImVhc2Utb3V0LWNpcmNcIl0ge1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4wNzUsIDAuODIsIDAuMTY1LCAxKTtcbn1cbltkYXRhLXNhbF1bZGF0YS1zYWwtZWFzaW5nPVwiZWFzZS1pbi1vdXQtY2lyY1wiXSB7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjc4NSwgMC4xMzUsIDAuMTUsIDAuODYpO1xufVxuW2RhdGEtc2FsXVtkYXRhLXNhbC1lYXNpbmc9XCJlYXNlLWluLWV4cG9cIl0ge1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC45NSwgMC4wNSwgMC43OTUsIDAuMDM1KTtcbn1cbltkYXRhLXNhbF1bZGF0YS1zYWwtZWFzaW5nPVwiZWFzZS1vdXQtZXhwb1wiXSB7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKTtcbn1cbltkYXRhLXNhbF1bZGF0YS1zYWwtZWFzaW5nPVwiZWFzZS1pbi1vdXQtZXhwb1wiXSB7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigxLCAwLCAwLCAxKTtcbn1cbltkYXRhLXNhbF1bZGF0YS1zYWwtZWFzaW5nPVwiZWFzZS1pbi1xdWFkXCJdIHtcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDg1LCAwLjY4LCAwLjUzKTtcbn1cbltkYXRhLXNhbF1bZGF0YS1zYWwtZWFzaW5nPVwiZWFzZS1vdXQtcXVhZFwiXSB7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjI1LCAwLjQ2LCAwLjQ1LCAwLjk0KTtcbn1cbltkYXRhLXNhbF1bZGF0YS1zYWwtZWFzaW5nPVwiZWFzZS1pbi1vdXQtcXVhZFwiXSB7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjQ1NSwgMC4wMywgMC41MTUsIDAuOTU1KTtcbn1cbltkYXRhLXNhbF1bZGF0YS1zYWwtZWFzaW5nPVwiZWFzZS1pbi1xdWFydFwiXSB7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjg5NSwgMC4wMywgMC42ODUsIDAuMjIpO1xufVxuW2RhdGEtc2FsXVtkYXRhLXNhbC1lYXNpbmc9XCJlYXNlLW91dC1xdWFydFwiXSB7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE2NSwgMC44NCwgMC40NCwgMSk7XG59XG5bZGF0YS1zYWxdW2RhdGEtc2FsLWVhc2luZz1cImVhc2UtaW4tb3V0LXF1YXJ0XCJdIHtcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNzcsIDAsIDAuMTc1LCAxKTtcbn1cbltkYXRhLXNhbF1bZGF0YS1zYWwtZWFzaW5nPVwiZWFzZS1pbi1xdWludFwiXSB7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjc1NSwgMC4wNSwgMC44NTUsIDAuMDYpO1xufVxuW2RhdGEtc2FsXVtkYXRhLXNhbC1lYXNpbmc9XCJlYXNlLW91dC1xdWludFwiXSB7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIzLCAxLCAwLjMyLCAxKTtcbn1cbltkYXRhLXNhbF1bZGF0YS1zYWwtZWFzaW5nPVwiZWFzZS1pbi1vdXQtcXVpbnRcIl0ge1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC44NiwgMCwgMC4wNywgMSk7XG59XG5bZGF0YS1zYWxdW2RhdGEtc2FsLWVhc2luZz1cImVhc2UtaW4tc2luZVwiXSB7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjQ3LCAwLCAwLjc0NSwgMC43MTUpO1xufVxuW2RhdGEtc2FsXVtkYXRhLXNhbC1lYXNpbmc9XCJlYXNlLW91dC1zaW5lXCJdIHtcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMzksIDAuNTc1LCAwLjU2NSwgMSk7XG59XG5bZGF0YS1zYWxdW2RhdGEtc2FsLWVhc2luZz1cImVhc2UtaW4tb3V0LXNpbmVcIl0ge1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC40NDUsIDAuMDUsIDAuNTUsIDAuOTUpO1xufVxuW2RhdGEtc2FsXVtkYXRhLXNhbC1lYXNpbmc9XCJlYXNlLWluLWJhY2tcIl0ge1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC42LCAtMC4yOCwgMC43MzUsIDAuMDQ1KTtcbn1cbltkYXRhLXNhbF1bZGF0YS1zYWwtZWFzaW5nPVwiZWFzZS1vdXQtYmFja1wiXSB7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEuMjc1KTtcbn1cbltkYXRhLXNhbF1bZGF0YS1zYWwtZWFzaW5nPVwiZWFzZS1pbi1vdXQtYmFja1wiXSB7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjY4LCAtMC41NSwgMC4yNjUsIDEuNTUpO1xufVxuW2RhdGEtc2FsfD1cImZhZGVcIl0ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTtcbn1cbltkYXRhLXNhbHw9XCJmYWRlXCJdLnNhbC1hbmltYXRlLFxuYm9keS5zYWwtZGlzYWJsZWQgW2RhdGEtc2FsfD1cImZhZGVcIl0ge1xuICAgIG9wYWNpdHk6IDE7XG59XG5bZGF0YS1zYWx8PVwic2xpZGVcIl0ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eSwgdHJhbnNmb3JtO1xufVxuW2RhdGEtc2FsPVwic2xpZGUtdXBcIl0ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgzLjZyZW0pO1xufVxuW2RhdGEtc2FsPVwic2xpZGUtZG93blwiXSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0zLjZyZW0pO1xufVxuW2RhdGEtc2FsPVwic2xpZGUtbGVmdFwiXSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDMuNnJlbSk7XG59XG5bZGF0YS1zYWw9XCJzbGlkZS1yaWdodFwiXSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0zLjZyZW0pO1xufVxuW2RhdGEtc2FsfD1cInNsaWRlXCJdLnNhbC1hbmltYXRlLFxuYm9keS5zYWwtZGlzYWJsZWQgW2RhdGEtc2FsfD1cInNsaWRlXCJdIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbn1cbltkYXRhLXNhbHw9XCJ6b29tXCJdIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHksIHRyYW5zZm9ybTtcbn1cbltkYXRhLXNhbD1cInpvb20taW5cIl0ge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC41KTtcbn1cbltkYXRhLXNhbD1cInpvb20tb3V0XCJdIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG59XG5bZGF0YS1zYWx8PVwiem9vbVwiXS5zYWwtYW5pbWF0ZSxcbmJvZHkuc2FsLWRpc2FibGVkIFtkYXRhLXNhbHw9XCJ6b29tXCJdIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbn1cbltkYXRhLXNhbHw9XCJmbGlwXCJdIHtcbiAgICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xufVxuW2RhdGEtc2FsPVwiZmxpcC1sZWZ0XCJdIHtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWSgtOTFkZWcpO1xufVxuW2RhdGEtc2FsPVwiZmxpcC1yaWdodFwiXSB7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVkoOTFkZWcpO1xufVxuW2RhdGEtc2FsPVwiZmxpcC11cFwiXSB7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVgoLTkxZGVnKTtcbn1cbltkYXRhLXNhbD1cImZsaXAtZG93blwiXSB7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVgoOTFkZWcpO1xufVxuW2RhdGEtc2FsfD1cImZsaXBcIl0uc2FsLWFuaW1hdGUsXG5ib2R5LnNhbC1kaXNhYmxlZCBbZGF0YS1zYWx8PVwiZmxpcFwiXSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xufVxuXG4vKiMgc291cmNlTWFwcGluZ1VSTD1zYWwuY3NzLm1hcCovXG4iLCIvKipcbiAqIFN3aXBlciAxMC4wLjNcbiAqIE1vc3QgbW9kZXJuIG1vYmlsZSB0b3VjaCBzbGlkZXIgYW5kIGZyYW1ld29yayB3aXRoIGhhcmR3YXJlIGFjY2VsZXJhdGVkIHRyYW5zaXRpb25zXG4gKiBodHRwczovL3N3aXBlcmpzLmNvbVxuICpcbiAqIENvcHlyaWdodCAyMDE0LTIwMjMgVmxhZGltaXIgS2hhcmxhbXBpZGlcbiAqXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2VcbiAqXG4gKiBSZWxlYXNlZCBvbjogSnVseSAzLCAyMDIzXG4gKi9cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtZWRpdW0tYnJlYWtwb2ludCkge1xuICBAZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogc3dpcGVyLWljb25zO1xuICAgIHNyYzogdXJsKFwiZGF0YTphcHBsaWNhdGlvbi9mb250LXdvZmY7Y2hhcnNldD11dGYtODtiYXNlNjQsIGQwOUdSZ0FCQUFBQUFBWmdBQkFBQUFBQURBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFCR1JsUk5BQUFHUkFBQUFCb0FBQUFjaTZxSGtVZEVSVVlBQUFXZ0FBQUFJd0FBQUNRQVlBQlhSMUJQVXdBQUJoUUFBQUF1QUFBQU51QVk3K3hIVTFWQ0FBQUZ4QUFBQUZBQUFBQm0yZlBjelU5VEx6SUFBQUhjQUFBQVNnQUFBR0JQOVY1UlkyMWhjQUFBQWtRQUFBQ0lBQUFCWXQ2RjBjQmpkblFnQUFBQ3pBQUFBQVFBQUFBRUFCRUJSR2RoYzNBQUFBV1lBQUFBQ0FBQUFBai8vd0FEWjJ4NVpnQUFBeXdBQUFETUFBQUQyTUh0cnlWb1pXRmtBQUFCYkFBQUFEQUFBQUEyRTIrZW9XaG9aV0VBQUFHY0FBQUFId0FBQUNRQzlnRHphRzEwZUFBQUFpZ0FBQUFaQUFBQXJnSmtBQkZzYjJOaEFBQUMwQUFBQUZvQUFBQmFGUUFVR0cxaGVIQUFBQUc4QUFBQUh3QUFBQ0FBY0FCQWJtRnRaUUFBQS9nQUFBRTVBQUFDWHZGZEJ3bHdiM04wQUFBRk5BQUFBR0lBQUFDRTVzNzRoWGphWTJCa1lHQUFZcGY1SHUvaitXMitNbkF6TVlEQXphWDZRakQ2LzQvL0J4ajVHQThBdVJ3TVlHa0FQeXdMMTNqYVkyQmtZR0E4OFA4QWd4NGorLzhmUURZZkExQUVCV2dEQUlCMkJPb0FlTnBqWUdSZ1lOQmg0R2RnWWdBQkVNbklBQkp6WU5BRENRQUFDV2dBc1FCNDJtTmdZZnpDT0lHQmxZR0IwWWN4allHQndSMUtmMldRWkdoaFlHQmlZR1ZtZ0FGR0JpUVFrT2Fhd3REQW9NQlF4WGpnL3dFR1BjWUREQTR3TlVBMkNDZ3dzQUFBTzRFTDZnQUFlTnBqMk0wZ3lBQUNxeGdHTldCa1oyRDQvd01BK3hrRGRnQUFBSGphWTJCZ1lHYUFZQmtHUmdZUWlBSHlHTUY4RmdZSElNM0R3TUhBQkdRck1PZ3lXRExFTTFUOS93OFVCZkVNZ0x6RS8vLy9QLzUvL2YvVi94dityNGVhQUFlTWJBeHdJVVltSU1IRWdLWUFZalVjc0RBd3NMS3hjM0J5Y2ZQdzhqRVFBL2daQkFTRmhFVkV4Y1FsSktXa1pXVGw1QlVVbFpSVlZOWFVOVFFaQmdNQUFNUitFK2dBRVFGRUFBQUFLZ0FxQUNvQU5BQStBRWdBVWdCY0FHWUFjQUI2QUlRQWpnQ1lBS0lBckFDMkFNQUF5Z0RVQU40QTZBRHlBUHdCQmdFUUFSb0JKQUV1QVRnQlFnRk1BVllCWUFGcUFYUUJmZ0dJQVpJQm5BR21BYklCemdIc0FBQjQydTJOTVE2Q1VBeUdXNTY4eDlBbmVZWWdtNE1KYmhLRmFFeElPQVZYOEFwZXdTdDRCaWM0QWZlQWlkM1ZPQml4RHhmUFlFemE1TytYZmkwNFlBRGdnaVVJVUxDdUVKSzhWaE80YlN2cGRua3RISTVRQ1l0ZGkyc2w4Wm5YYUhscVVyTkt6ZEtjVDhjamxxK3J3WlN2SVZjek5pZXpzZm5QL3V6bm1mUEZCTk9ETTJLN01UUTQ1WUVBWnFHUDgxQW1HR2NGM2lQcU9vcDByMVNQVGFUYlZrZlVlNEhYajk3d1lFK3lOd1dZeHdXdTR2MXVnV0hnbzNTMVhkWkVWcVdNN0VUMGNmbkxHeFdma2dSNDJvMlB2V3JETUJTRmovSUhMYUYwektqUmdkaVZNd1NjTlJBb1dVb0g3OFkyaWNCL3lJWTA5QW42QUgyQmR1L1VCK3l4b3BZc2hRaUV2bnZ1MGRVUmdEdDhRZUM4UER3N0ZwamkzZkVBNHovUEVKNllPQjVoS2g0ZGozRXZYaHhQcUgvU0tVWTNySjdzclo0RlpuaDFQTUF0UGh3UDZmbDJQTUpNUERnZVE0clk4WVQ2R3phbzBlQUVBNDA5RHVnZ21UbkZuT2NTQ2lFaUxNZ3hDaVRJNkNxNURaVWQzUW1wMTB2TzBMYUxUZDJjak40Zk91bWxjN2xVWWJTUWNaRmt1dFJHN2c2SktaS3kwUm1kTFk2ODBDRG5FSitVTWtwRkZlMVJON254ZFZwWHJDNGFUdG5hdXJPblllcmNaZzJZVm1MTi9kL2djemZFaW1yRS9mcy9iT3VxMjlabW44dGxvT1JhWGdaZ0dhNzh5TzkvY25YbTJCcGFHdnEyNUR2OVM0RTkrNVNJYzlQcXVwSktoWUZTU2w0NytRY3IxbVlOQUFBQWVOcHR3MGNLd2tBQUFNRFpKQThRN09VSnZrTHNQZlo2ekZWRVJQeThxSGgyWUVSKzNpL0JQODN2SUJMTHlTc29LaW1ycUtxcGEyaHA2K2pxNlJzWUdobWJtSnFaU3kwc3JheHRiTzNzSFJ5ZG5FTVU0dVI2eXg3SkpYdmVQN1dyRHljQUFBQUFBQUgvL3dBQ2VOcGpZR1JnWU9BQlloa2daZ0pDWmdaTkJrWUdMUVp0SUpzRkxNWUFBQXczQUxnQWVOb2xpekVLZ0RBUUJDY2hSYkMyc0ZFUjBZRDZxVlFpQkN2L0g5ZXpHSTZaNVhCQXc4Q0JLL201aVFRVmF1VmJYTG5Pck1adjJvTGRLRmE4UGp1cnUyaEp6R2FibU9TTHpOTXp2dXRwQjNONDJtTmdaR0JnNEdLUVl6QmhZTXhKTE1sajRHQmdBWW93L1AvUEFKSmhMTTZzU29XS2ZXQ0FBd0RBamdiUkFBQjQybU5nWUdCa0FJSWJDWm81SVBybVVuMGhHQTBBTzhFRlRRQUFcIik7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gIH1cbiAgOnJvb3Qge1xuICAgIC0tc3dpcGVyLXRoZW1lLWNvbG9yOiAjMDA3YWZmO1xuICB9XG4gIDpob3N0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIHotaW5kZXg6IDE7XG4gIH1cbiAgLnN3aXBlciB7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIG92ZXJmbG93OiBjbGlwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgcGFkZGluZzogMDtcbiAgICB6LWluZGV4OiAxO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIC5zd2lwZXItdmVydGljYWwgPiAuc3dpcGVyLXdyYXBwZXIge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIH1cbiAgLnN3aXBlci13cmFwcGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHotaW5kZXg6IDE7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IHZhcigtLXN3aXBlci13cmFwcGVyLXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uLCBpbml0aWFsKTtcbiAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgfVxuICAuc3dpcGVyLWFuZHJvaWQgLnN3aXBlci1zbGlkZSxcbiAgLnN3aXBlci1pb3MgLnN3aXBlci1zbGlkZSxcbiAgLnN3aXBlci13cmFwcGVyIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDBweCwgMCwgMCk7XG4gIH1cbiAgLnN3aXBlci1ob3Jpem9udGFsIHtcbiAgICB0b3VjaC1hY3Rpb246IHBhbi15O1xuICB9XG4gIC5zd2lwZXItdmVydGljYWwge1xuICAgIHRvdWNoLWFjdGlvbjogcGFuLXg7XG4gIH1cbiAgLnN3aXBlci1zbGlkZSB7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgLnN3aXBlci1zbGlkZS1pbnZpc2libGUtYmxhbmsge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuICAuc3dpcGVyLWF1dG9oZWlnaHQsXG4gIC5zd2lwZXItYXV0b2hlaWdodCAuc3dpcGVyLXNsaWRlIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbiAgLnN3aXBlci1hdXRvaGVpZ2h0IC5zd2lwZXItd3JhcHBlciB7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBoZWlnaHQ7XG4gIH1cbiAgLnN3aXBlci1iYWNrZmFjZS1oaWRkZW4gLnN3aXBlci1zbGlkZSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAgIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuICAuc3dpcGVyLTNkLnN3aXBlci1jc3MtbW9kZSAuc3dpcGVyLXdyYXBwZXIge1xuICAgIHBlcnNwZWN0aXZlOiAxMjAwcHg7XG4gIH1cbiAgLnN3aXBlci0zZCAuc3dpcGVyLXdyYXBwZXIge1xuICAgIHRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7XG4gIH1cbiAgLnN3aXBlci0zZCB7XG4gICAgcGVyc3BlY3RpdmU6IDEyMDBweDtcbiAgfVxuICAuc3dpcGVyLTNkIC5zd2lwZXItY3ViZS1zaGFkb3csXG4gIC5zd2lwZXItM2QgLnN3aXBlci1zbGlkZSB7XG4gICAgdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbiAgfVxuICAuc3dpcGVyLWNzcy1tb2RlID4gLnN3aXBlci13cmFwcGVyIHtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgICBzY3JvbGxiYXItd2lkdGg6IG5vbmU7XG4gICAgLW1zLW92ZXJmbG93LXN0eWxlOiBub25lO1xuICB9XG4gIC5zd2lwZXItY3NzLW1vZGUgPiAuc3dpcGVyLXdyYXBwZXI6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5zd2lwZXItY3NzLW1vZGUgPiAuc3dpcGVyLXdyYXBwZXIgPiAuc3dpcGVyLXNsaWRlIHtcbiAgICBzY3JvbGwtc25hcC1hbGlnbjogc3RhcnQgc3RhcnQ7XG4gIH1cbiAgLnN3aXBlci1jc3MtbW9kZS5zd2lwZXItaG9yaXpvbnRhbCA+IC5zd2lwZXItd3JhcHBlciB7XG4gICAgc2Nyb2xsLXNuYXAtdHlwZTogeCBtYW5kYXRvcnk7XG4gIH1cbiAgLnN3aXBlci1jc3MtbW9kZS5zd2lwZXItdmVydGljYWwgPiAuc3dpcGVyLXdyYXBwZXIge1xuICAgIHNjcm9sbC1zbmFwLXR5cGU6IHkgbWFuZGF0b3J5O1xuICB9XG4gIC5zd2lwZXItY3NzLW1vZGUuc3dpcGVyLWZyZWUtbW9kZSA+IC5zd2lwZXItd3JhcHBlciB7XG4gICAgc2Nyb2xsLXNuYXAtdHlwZTogbm9uZTtcbiAgfVxuICAuc3dpcGVyLWNzcy1tb2RlLnN3aXBlci1mcmVlLW1vZGUgPiAuc3dpcGVyLXdyYXBwZXIgPiAuc3dpcGVyLXNsaWRlIHtcbiAgICBzY3JvbGwtc25hcC1hbGlnbjogbm9uZTtcbiAgfVxuICAuc3dpcGVyLWNzcy1tb2RlLnN3aXBlci1jZW50ZXJlZCA+IC5zd2lwZXItd3JhcHBlcjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIG9yZGVyOiA5OTk5O1xuICB9XG4gIC5zd2lwZXItY3NzLW1vZGUuc3dpcGVyLWNlbnRlcmVkID4gLnN3aXBlci13cmFwcGVyID4gLnN3aXBlci1zbGlkZSB7XG4gICAgc2Nyb2xsLXNuYXAtYWxpZ246IGNlbnRlciBjZW50ZXI7XG4gICAgc2Nyb2xsLXNuYXAtc3RvcDogYWx3YXlzO1xuICB9XG4gIC5zd2lwZXItY3NzLW1vZGUuc3dpcGVyLWNlbnRlcmVkLnN3aXBlci1ob3Jpem9udGFsID4gLnN3aXBlci13cmFwcGVyID4gLnN3aXBlci1zbGlkZTpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWlubGluZS1zdGFydDogdmFyKC0tc3dpcGVyLWNlbnRlcmVkLW9mZnNldC1iZWZvcmUpO1xuICB9XG4gIC5zd2lwZXItY3NzLW1vZGUuc3dpcGVyLWNlbnRlcmVkLnN3aXBlci1ob3Jpem9udGFsID4gLnN3aXBlci13cmFwcGVyOjpiZWZvcmUge1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAxcHg7XG4gICAgd2lkdGg6IHZhcigtLXN3aXBlci1jZW50ZXJlZC1vZmZzZXQtYWZ0ZXIpO1xuICB9XG4gIC5zd2lwZXItY3NzLW1vZGUuc3dpcGVyLWNlbnRlcmVkLnN3aXBlci12ZXJ0aWNhbCA+IC5zd2lwZXItd3JhcHBlciA+IC5zd2lwZXItc2xpZGU6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ibG9jay1zdGFydDogdmFyKC0tc3dpcGVyLWNlbnRlcmVkLW9mZnNldC1iZWZvcmUpO1xuICB9XG4gIC5zd2lwZXItY3NzLW1vZGUuc3dpcGVyLWNlbnRlcmVkLnN3aXBlci12ZXJ0aWNhbCA+IC5zd2lwZXItd3JhcHBlcjo6YmVmb3JlIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtaW4td2lkdGg6IDFweDtcbiAgICBoZWlnaHQ6IHZhcigtLXN3aXBlci1jZW50ZXJlZC1vZmZzZXQtYWZ0ZXIpO1xuICB9XG4gIC5zd2lwZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3csXG4gIC5zd2lwZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctYm90dG9tLFxuICAuc3dpcGVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LWxlZnQsXG4gIC5zd2lwZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctcmlnaHQsXG4gIC5zd2lwZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctdG9wIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIHotaW5kZXg6IDEwO1xuICB9XG4gIC5zd2lwZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3cge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWJsYWNrLTE1KTtcbiAgfVxuICAuc3dpcGVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LWxlZnQge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBsZWZ0LCByZ2JhKDAsIDAsIDAsIDAuNSksIHJnYmEoMCwgMCwgMCwgMCkpO1xuICB9XG4gIC5zd2lwZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctcmlnaHQge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTtcbiAgfVxuICAuc3dpcGVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LXRvcCB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHRvcCwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTtcbiAgfVxuICAuc3dpcGVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LWJvdHRvbSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTtcbiAgfVxuICAuc3dpcGVyLWxhenktcHJlbG9hZGVyIHtcbiAgICB3aWR0aDogNDJweDtcbiAgICBoZWlnaHQ6IDQycHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0b3A6IDUwJTtcbiAgICBtYXJnaW4tbGVmdDogLTIxcHg7XG4gICAgbWFyZ2luLXRvcDogLTIxcHg7XG4gICAgei1pbmRleDogMTA7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogNTAlO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgYm9yZGVyOiA0cHggc29saWQgdmFyKC0tc3dpcGVyLXByZWxvYWRlci1jb2xvciwgdmFyKC0tc3dpcGVyLXRoZW1lLWNvbG9yKSk7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGJvcmRlci10b3AtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG4gIC5zd2lwZXItd2F0Y2gtcHJvZ3Jlc3MgLnN3aXBlci1zbGlkZS12aXNpYmxlIC5zd2lwZXItbGF6eS1wcmVsb2FkZXIsXG4gIC5zd2lwZXI6bm90KC5zd2lwZXItd2F0Y2gtcHJvZ3Jlc3MpIC5zd2lwZXItbGF6eS1wcmVsb2FkZXIge1xuICAgIGFuaW1hdGlvbjogc3dpcGVyLXByZWxvYWRlci1zcGluIDFzIGluZmluaXRlIGxpbmVhcjtcbiAgfVxuICAuc3dpcGVyLWxhenktcHJlbG9hZGVyLXdoaXRlIHtcbiAgICAtLXN3aXBlci1wcmVsb2FkZXItY29sb3I6ICNmZmY7XG4gIH1cbiAgLnN3aXBlci1sYXp5LXByZWxvYWRlci1ibGFjayB7XG4gICAgLS1zd2lwZXItcHJlbG9hZGVyLWNvbG9yOiAjMDAwO1xuICB9XG4gIEBrZXlmcmFtZXMgc3dpcGVyLXByZWxvYWRlci1zcGluIHtcbiAgICAwJSB7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICB9XG4gICAgMTAwJSB7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgIH1cbiAgfVxuICAuc3dpcGVyLXZpcnR1YWwgLnN3aXBlci1zbGlkZSB7XG4gICAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICB9XG4gIC5zd2lwZXItdmlydHVhbC5zd2lwZXItY3NzLW1vZGUgLnN3aXBlci13cmFwcGVyOjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIH1cbiAgLnN3aXBlci12aXJ0dWFsLnN3aXBlci1jc3MtbW9kZS5zd2lwZXItaG9yaXpvbnRhbCAuc3dpcGVyLXdyYXBwZXI6OmFmdGVyIHtcbiAgICBoZWlnaHQ6IDFweDtcbiAgICB3aWR0aDogdmFyKC0tc3dpcGVyLXZpcnR1YWwtc2l6ZSk7XG4gIH1cbiAgLnN3aXBlci12aXJ0dWFsLnN3aXBlci1jc3MtbW9kZS5zd2lwZXItdmVydGljYWwgLnN3aXBlci13cmFwcGVyOjphZnRlciB7XG4gICAgd2lkdGg6IDFweDtcbiAgICBoZWlnaHQ6IHZhcigtLXN3aXBlci12aXJ0dWFsLXNpemUpO1xuICB9XG4gIDpyb290IHtcbiAgICAtLXN3aXBlci1uYXZpZ2F0aW9uLXNpemU6IDQ0cHg7XG4gIH1cbiAgLnN3aXBlci1idXR0b24tbmV4dCxcbiAgLnN3aXBlci1idXR0b24tcHJldiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogdmFyKC0tc3dpcGVyLW5hdmlnYXRpb24tdG9wLW9mZnNldCwgNTAlKTtcbiAgICB3aWR0aDogY2FsYyh2YXIoLS1zd2lwZXItbmF2aWdhdGlvbi1zaXplKSAvIDQ0ICogMjcpO1xuICAgIGhlaWdodDogdmFyKC0tc3dpcGVyLW5hdmlnYXRpb24tc2l6ZSk7XG4gICAgbWFyZ2luLXRvcDogY2FsYygwcHggLSAodmFyKC0tc3dpcGVyLW5hdmlnYXRpb24tc2l6ZSkgLyAyKSk7XG4gICAgei1pbmRleDogMTA7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBjb2xvcjogdmFyKC0tc3dpcGVyLW5hdmlnYXRpb24tY29sb3IsIHZhcigtLXN3aXBlci10aGVtZS1jb2xvcikpO1xuICB9XG4gIC5zd2lwZXItYnV0dG9uLW5leHQuc3dpcGVyLWJ1dHRvbi1kaXNhYmxlZCxcbiAgLnN3aXBlci1idXR0b24tcHJldi5zd2lwZXItYnV0dG9uLWRpc2FibGVkIHtcbiAgICBvcGFjaXR5OiAwLjM1O1xuICAgIGN1cnNvcjogYXV0bztcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgfVxuICAuc3dpcGVyLWJ1dHRvbi1uZXh0LnN3aXBlci1idXR0b24taGlkZGVuLFxuICAuc3dpcGVyLWJ1dHRvbi1wcmV2LnN3aXBlci1idXR0b24taGlkZGVuIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIGN1cnNvcjogYXV0bztcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgfVxuICAuc3dpcGVyLW5hdmlnYXRpb24tZGlzYWJsZWQgLnN3aXBlci1idXR0b24tbmV4dCxcbiAgLnN3aXBlci1uYXZpZ2F0aW9uLWRpc2FibGVkIC5zd2lwZXItYnV0dG9uLXByZXYge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuICAuc3dpcGVyLWJ1dHRvbi1uZXh0IHN2ZyxcbiAgLnN3aXBlci1idXR0b24tcHJldiBzdmcge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBvYmplY3QtZml0OiBjb250YWluO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgfVxuICAuc3dpcGVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1uZXh0IHN2ZyxcbiAgLnN3aXBlci1ydGwgLnN3aXBlci1idXR0b24tcHJldiBzdmcge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gIH1cbiAgLnN3aXBlci1idXR0b24tcHJldixcbiAgLnN3aXBlci1ydGwgLnN3aXBlci1idXR0b24tbmV4dCB7XG4gICAgbGVmdDogdmFyKC0tc3dpcGVyLW5hdmlnYXRpb24tc2lkZXMtb2Zmc2V0LCAxMHB4KTtcbiAgICByaWdodDogYXV0bztcbiAgfVxuICAuc3dpcGVyLWJ1dHRvbi1uZXh0LFxuICAuc3dpcGVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1wcmV2IHtcbiAgICByaWdodDogdmFyKC0tc3dpcGVyLW5hdmlnYXRpb24tc2lkZXMtb2Zmc2V0LCAxMHB4KTtcbiAgICBsZWZ0OiBhdXRvO1xuICB9XG4gIC5zd2lwZXItYnV0dG9uLWxvY2sge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLnN3aXBlci1idXR0b24tbmV4dDphZnRlcixcbiAgLnN3aXBlci1idXR0b24tcHJldjphZnRlciB7XG4gICAgZm9udC1mYW1pbHk6IHN3aXBlci1pY29ucztcbiAgICBmb250LXNpemU6IHZhcigtLXN3aXBlci1uYXZpZ2F0aW9uLXNpemUpO1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gICAgZm9udC12YXJpYW50OiBpbml0aWFsO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICB9XG4gIC5zd2lwZXItYnV0dG9uLXByZXY6YWZ0ZXIsXG4gIC5zd2lwZXItcnRsIC5zd2lwZXItYnV0dG9uLW5leHQ6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwicHJldlwiO1xuICB9XG4gIC5zd2lwZXItYnV0dG9uLW5leHQsXG4gIC5zd2lwZXItcnRsIC5zd2lwZXItYnV0dG9uLXByZXYge1xuICAgIHJpZ2h0OiB2YXIoLS1zd2lwZXItbmF2aWdhdGlvbi1zaWRlcy1vZmZzZXQsIDEwcHgpO1xuICAgIGxlZnQ6IGF1dG87XG4gIH1cbiAgLnN3aXBlci1idXR0b24tbmV4dDphZnRlcixcbiAgLnN3aXBlci1ydGwgLnN3aXBlci1idXR0b24tcHJldjphZnRlciB7XG4gICAgY29udGVudDogXCJuZXh0XCI7XG4gIH1cbiAgLnN3aXBlci1wYWdpbmF0aW9uIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHRyYW5zaXRpb246IDAuM3Mgb3BhY2l0eTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIHotaW5kZXg6IDEwO1xuICB9XG4gIC5zd2lwZXItcGFnaW5hdGlvbi5zd2lwZXItcGFnaW5hdGlvbi1oaWRkZW4ge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgLnN3aXBlci1wYWdpbmF0aW9uLWRpc2FibGVkID4gLnN3aXBlci1wYWdpbmF0aW9uLFxuICAuc3dpcGVyLXBhZ2luYXRpb24uc3dpcGVyLXBhZ2luYXRpb24tZGlzYWJsZWQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuICAuc3dpcGVyLWhvcml6b250YWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cyxcbiAgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMuc3dpcGVyLXBhZ2luYXRpb24taG9yaXpvbnRhbCxcbiAgLnN3aXBlci1wYWdpbmF0aW9uLWN1c3RvbSxcbiAgLnN3aXBlci1wYWdpbmF0aW9uLWZyYWN0aW9uIHtcbiAgICBib3R0b206IHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWJvdHRvbSwgOHB4KTtcbiAgICB0b3A6IHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLXRvcCwgYXV0byk7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGZvbnQtc2l6ZTogMDtcbiAgfVxuICAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC4zMyk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG4gIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cbiAgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZS1tYWluIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB9XG4gIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUtcHJldiB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjY2KTtcbiAgfVxuICAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlLXByZXYtcHJldiB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjMzKTtcbiAgfVxuICAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlLW5leHQge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC42Nik7XG4gIH1cbiAgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZS1uZXh0LW5leHQge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC4zMyk7XG4gIH1cbiAgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gICAgd2lkdGg6IHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC13aWR0aCwgdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LXNpemUsIDhweCkpO1xuICAgIGhlaWdodDogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWhlaWdodCwgdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LXNpemUsIDhweCkpO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYm9yZGVyLXJhZGl1cywgNTAlKTtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtaW5hY3RpdmUtY29sb3IsICMwMDApO1xuICAgIG9wYWNpdHk6IHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1pbmFjdGl2ZS1vcGFjaXR5LCAwLjIpO1xuICB9XG4gIGJ1dHRvbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICB9XG4gIC5zd2lwZXItcGFnaW5hdGlvbi1jbGlja2FibGUgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG4gIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQ6b25seS1jaGlsZCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG4gIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlIHtcbiAgICBvcGFjaXR5OiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtb3BhY2l0eSwgMSk7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tY29sb3IsIHZhcigtLXN3aXBlci10aGVtZS1jb2xvcikpO1xuICB9XG4gIC5zd2lwZXItcGFnaW5hdGlvbi12ZXJ0aWNhbC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLFxuICAuc3dpcGVyLXZlcnRpY2FsID4gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMge1xuICAgIHJpZ2h0OiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1yaWdodCwgOHB4KTtcbiAgICBsZWZ0OiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1sZWZ0LCBhdXRvKTtcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDBweCwgLTUwJSwgMCk7XG4gIH1cbiAgLnN3aXBlci1wYWdpbmF0aW9uLXZlcnRpY2FsLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCxcbiAgLnN3aXBlci12ZXJ0aWNhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICAgIG1hcmdpbjogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LXZlcnRpY2FsLWdhcCwgNnB4KSAwO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIC5zd2lwZXItcGFnaW5hdGlvbi12ZXJ0aWNhbC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyxcbiAgLnN3aXBlci12ZXJ0aWNhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyB7XG4gICAgdG9wOiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIHdpZHRoOiA4cHg7XG4gIH1cbiAgLnN3aXBlci1wYWdpbmF0aW9uLXZlcnRpY2FsLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQsXG4gIC5zd2lwZXItdmVydGljYWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHRyYW5zaXRpb246XG4gICAgICAwLjJzIHRyYW5zZm9ybSxcbiAgICAgIDAuMnMgdG9wO1xuICB9XG4gIC5zd2lwZXItaG9yaXpvbnRhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQsXG4gIC5zd2lwZXItcGFnaW5hdGlvbi1ob3Jpem9udGFsLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gICAgbWFyZ2luOiAwIHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1ob3Jpem9udGFsLWdhcCwgNHB4KTtcbiAgfVxuICAuc3dpcGVyLWhvcml6b250YWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMsXG4gIC5zd2lwZXItcGFnaW5hdGlvbi1ob3Jpem9udGFsLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIHtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIH1cbiAgLnN3aXBlci1ob3Jpem9udGFsID4gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQsXG4gIC5zd2lwZXItcGFnaW5hdGlvbi1ob3Jpem9udGFsLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICAgIHRyYW5zaXRpb246XG4gICAgICAwLjJzIHRyYW5zZm9ybSxcbiAgICAgIDAuMnMgbGVmdDtcbiAgfVxuICAuc3dpcGVyLWhvcml6b250YWwuc3dpcGVyLXJ0bCA+IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gICAgdHJhbnNpdGlvbjpcbiAgICAgIDAuMnMgdHJhbnNmb3JtLFxuICAgICAgMC4ycyByaWdodDtcbiAgfVxuICAuc3dpcGVyLXBhZ2luYXRpb24tZnJhY3Rpb24ge1xuICAgIGNvbG9yOiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1mcmFjdGlvbi1jb2xvciwgaW5oZXJpdCk7XG4gIH1cbiAgLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyIHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1iZy1jb2xvciwgcmdiYSgwLCAwLCAwLCAwLjI1KSk7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICB9XG4gIC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2JhciAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItZmlsbCB7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tY29sb3IsIHZhcigtLXN3aXBlci10aGVtZS1jb2xvcikpO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IHRvcDtcbiAgfVxuICAuc3dpcGVyLXJ0bCAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIgLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLWZpbGwge1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IHRvcDtcbiAgfVxuICAuc3dpcGVyLWhvcml6b250YWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIsXG4gIC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci5zd2lwZXItcGFnaW5hdGlvbi1ob3Jpem9udGFsLFxuICAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIuc3dpcGVyLXBhZ2luYXRpb24tdmVydGljYWwuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItb3Bwb3NpdGUsXG4gIC5zd2lwZXItdmVydGljYWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItb3Bwb3NpdGUge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItc2l6ZSwgNHB4KTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgfVxuICAuc3dpcGVyLWhvcml6b250YWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItb3Bwb3NpdGUsXG4gIC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci5zd2lwZXItcGFnaW5hdGlvbi1ob3Jpem9udGFsLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLW9wcG9zaXRlLFxuICAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIuc3dpcGVyLXBhZ2luYXRpb24tdmVydGljYWwsXG4gIC5zd2lwZXItdmVydGljYWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIge1xuICAgIHdpZHRoOiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1zaXplLCA0cHgpO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgfVxuICAuc3dpcGVyLXBhZ2luYXRpb24tbG9jayB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuc3dpcGVyLXNjcm9sbGJhciB7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tc3dpcGVyLXNjcm9sbGJhci1ib3JkZXItcmFkaXVzLCAxMHB4KTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgLW1zLXRvdWNoLWFjdGlvbjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zd2lwZXItc2Nyb2xsYmFyLWJnLWNvbG9yLCByZ2JhKDAsIDAsIDAsIDAuMSkpO1xuICB9XG4gIC5zd2lwZXItc2Nyb2xsYmFyLWRpc2FibGVkID4gLnN3aXBlci1zY3JvbGxiYXIsXG4gIC5zd2lwZXItc2Nyb2xsYmFyLnN3aXBlci1zY3JvbGxiYXItZGlzYWJsZWQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuICAuc3dpcGVyLWhvcml6b250YWwgPiAuc3dpcGVyLXNjcm9sbGJhcixcbiAgLnN3aXBlci1zY3JvbGxiYXIuc3dpcGVyLXNjcm9sbGJhci1ob3Jpem9udGFsIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogdmFyKC0tc3dpcGVyLXNjcm9sbGJhci1zaWRlcy1vZmZzZXQsIDElKTtcbiAgICBib3R0b206IHZhcigtLXN3aXBlci1zY3JvbGxiYXItYm90dG9tLCA0cHgpO1xuICAgIHRvcDogdmFyKC0tc3dpcGVyLXNjcm9sbGJhci10b3AsIGF1dG8pO1xuICAgIHotaW5kZXg6IDUwO1xuICAgIGhlaWdodDogdmFyKC0tc3dpcGVyLXNjcm9sbGJhci1zaXplLCA0cHgpO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAyICogdmFyKC0tc3dpcGVyLXNjcm9sbGJhci1zaWRlcy1vZmZzZXQsIDElKSk7XG4gIH1cbiAgLnN3aXBlci1zY3JvbGxiYXIuc3dpcGVyLXNjcm9sbGJhci12ZXJ0aWNhbCxcbiAgLnN3aXBlci12ZXJ0aWNhbCA+IC5zd2lwZXItc2Nyb2xsYmFyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogdmFyKC0tc3dpcGVyLXNjcm9sbGJhci1sZWZ0LCBhdXRvKTtcbiAgICByaWdodDogdmFyKC0tc3dpcGVyLXNjcm9sbGJhci1yaWdodCwgNHB4KTtcbiAgICB0b3A6IHZhcigtLXN3aXBlci1zY3JvbGxiYXItc2lkZXMtb2Zmc2V0LCAxJSk7XG4gICAgei1pbmRleDogNTA7XG4gICAgd2lkdGg6IHZhcigtLXN3aXBlci1zY3JvbGxiYXItc2l6ZSwgNHB4KTtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDIgKiB2YXIoLS1zd2lwZXItc2Nyb2xsYmFyLXNpZGVzLW9mZnNldCwgMSUpKTtcbiAgfVxuICAuc3dpcGVyLXNjcm9sbGJhci1kcmFnIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLXN3aXBlci1zY3JvbGxiYXItZHJhZy1iZy1jb2xvciwgcmdiYSgwLCAwLCAwLCAwLjUpKTtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1zd2lwZXItc2Nyb2xsYmFyLWJvcmRlci1yYWRpdXMsIDEwcHgpO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICB9XG4gIC5zd2lwZXItc2Nyb2xsYmFyLWN1cnNvci1kcmFnIHtcbiAgICBjdXJzb3I6IG1vdmU7XG4gIH1cbiAgLnN3aXBlci1zY3JvbGxiYXItbG9jayB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuc3dpcGVyLXpvb20tY29udGFpbmVyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuICAuc3dpcGVyLXpvb20tY29udGFpbmVyID4gY2FudmFzLFxuICAuc3dpcGVyLXpvb20tY29udGFpbmVyID4gaW1nLFxuICAuc3dpcGVyLXpvb20tY29udGFpbmVyID4gc3ZnIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICBvYmplY3QtZml0OiBjb250YWluO1xuICB9XG4gIC5zd2lwZXItc2xpZGUtem9vbWVkIHtcbiAgICBjdXJzb3I6IG1vdmU7XG4gICAgdG91Y2gtYWN0aW9uOiBub25lO1xuICB9XG4gIC5zd2lwZXIgLnN3aXBlci1ub3RpZmljYXRpb24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHotaW5kZXg6IC0xMDAwO1xuICB9XG4gIC5zd2lwZXItZnJlZS1tb2RlID4gLnN3aXBlci13cmFwcGVyIHtcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gIH1cbiAgLnN3aXBlci1ncmlkID4gLnN3aXBlci13cmFwcGVyIHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gIH1cbiAgLnN3aXBlci1ncmlkLWNvbHVtbiA+IC5zd2lwZXItd3JhcHBlciB7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIH1cbiAgLnN3aXBlci1mYWRlLnN3aXBlci1mcmVlLW1vZGUgLnN3aXBlci1zbGlkZSB7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICB9XG4gIC5zd2lwZXItZmFkZSAuc3dpcGVyLXNsaWRlIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xuICB9XG4gIC5zd2lwZXItZmFkZSAuc3dpcGVyLXNsaWRlIC5zd2lwZXItc2xpZGUge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB9XG4gIC5zd2lwZXItZmFkZSAuc3dpcGVyLXNsaWRlLWFjdGl2ZSxcbiAgLnN3aXBlci1mYWRlIC5zd2lwZXItc2xpZGUtYWN0aXZlIC5zd2lwZXItc2xpZGUtYWN0aXZlIHtcbiAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgfVxuICAuc3dpcGVyLWN1YmUge1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICB9XG4gIC5zd2lwZXItY3ViZSAuc3dpcGVyLXNsaWRlIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgei1pbmRleDogMTtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxuICAuc3dpcGVyLWN1YmUgLnN3aXBlci1zbGlkZSAuc3dpcGVyLXNsaWRlIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgfVxuICAuc3dpcGVyLWN1YmUuc3dpcGVyLXJ0bCAuc3dpcGVyLXNsaWRlIHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiAxMDAlIDA7XG4gIH1cbiAgLnN3aXBlci1jdWJlIC5zd2lwZXItc2xpZGUtYWN0aXZlLFxuICAuc3dpcGVyLWN1YmUgLnN3aXBlci1zbGlkZS1hY3RpdmUgLnN3aXBlci1zbGlkZS1hY3RpdmUge1xuICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICB9XG4gIC5zd2lwZXItY3ViZSAuc3dpcGVyLXNsaWRlLWFjdGl2ZSxcbiAgLnN3aXBlci1jdWJlIC5zd2lwZXItc2xpZGUtbmV4dCxcbiAgLnN3aXBlci1jdWJlIC5zd2lwZXItc2xpZGUtcHJldiB7XG4gICAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuICAuc3dpcGVyLWN1YmUgLnN3aXBlci1jdWJlLXNoYWRvdyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgYm90dG9tOiAwcHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG9wYWNpdHk6IDAuNjtcbiAgICB6LWluZGV4OiAwO1xuICB9XG4gIC5zd2lwZXItY3ViZSAuc3dpcGVyLWN1YmUtc2hhZG93OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBiYWNrZ3JvdW5kOiAjMDAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgZmlsdGVyOiBibHVyKDUwcHgpO1xuICB9XG4gIC5zd2lwZXItY3ViZSAuc3dpcGVyLXNsaWRlLW5leHQgKyAuc3dpcGVyLXNsaWRlIHtcbiAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG4gIC5zd2lwZXItY3ViZSAuc3dpcGVyLXNsaWRlLXNoYWRvdy1jdWJlLnN3aXBlci1zbGlkZS1zaGFkb3ctYm90dG9tLFxuICAuc3dpcGVyLWN1YmUgLnN3aXBlci1zbGlkZS1zaGFkb3ctY3ViZS5zd2lwZXItc2xpZGUtc2hhZG93LWxlZnQsXG4gIC5zd2lwZXItY3ViZSAuc3dpcGVyLXNsaWRlLXNoYWRvdy1jdWJlLnN3aXBlci1zbGlkZS1zaGFkb3ctcmlnaHQsXG4gIC5zd2lwZXItY3ViZSAuc3dpcGVyLXNsaWRlLXNoYWRvdy1jdWJlLnN3aXBlci1zbGlkZS1zaGFkb3ctdG9wIHtcbiAgICB6LWluZGV4OiAwO1xuICAgIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuICAuc3dpcGVyLWZsaXAge1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICB9XG4gIC5zd2lwZXItZmxpcCAuc3dpcGVyLXNsaWRlIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgei1pbmRleDogMTtcbiAgfVxuICAuc3dpcGVyLWZsaXAgLnN3aXBlci1zbGlkZSAuc3dpcGVyLXNsaWRlIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgfVxuICAuc3dpcGVyLWZsaXAgLnN3aXBlci1zbGlkZS1hY3RpdmUsXG4gIC5zd2lwZXItZmxpcCAuc3dpcGVyLXNsaWRlLWFjdGl2ZSAuc3dpcGVyLXNsaWRlLWFjdGl2ZSB7XG4gICAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gIH1cbiAgLnN3aXBlci1mbGlwIC5zd2lwZXItc2xpZGUtc2hhZG93LWZsaXAuc3dpcGVyLXNsaWRlLXNoYWRvdy1ib3R0b20sXG4gIC5zd2lwZXItZmxpcCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1mbGlwLnN3aXBlci1zbGlkZS1zaGFkb3ctbGVmdCxcbiAgLnN3aXBlci1mbGlwIC5zd2lwZXItc2xpZGUtc2hhZG93LWZsaXAuc3dpcGVyLXNsaWRlLXNoYWRvdy1yaWdodCxcbiAgLnN3aXBlci1mbGlwIC5zd2lwZXItc2xpZGUtc2hhZG93LWZsaXAuc3dpcGVyLXNsaWRlLXNoYWRvdy10b3Age1xuICAgIHotaW5kZXg6IDA7XG4gICAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG4gIC5zd2lwZXItY3JlYXRpdmUgLnN3aXBlci1zbGlkZSB7XG4gICAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5LCBoZWlnaHQ7XG4gIH1cbiAgLnN3aXBlci1jYXJkcyB7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIH1cbiAgLnN3aXBlci1jYXJkcyAuc3dpcGVyLXNsaWRlIHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tO1xuICAgIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG59XG4iLCIvKiDilIDilIAgQUJDIFByZWxvYWRlciDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIAgKi9cblxuLmFiYy1wcmVsb2FkZXIge1xuXHRwb3NpdGlvbjogZml4ZWQ7XG5cdGluc2V0OiAwO1xuXHR6LWluZGV4OiA5OTk5OTk5O1xuXHRiYWNrZ3JvdW5kOiB2YXIoLS1ncmVlbi1jKTtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdG9wYWNpdHk6IDE7XG5cblx0Jl9faW5uZXIge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHR3aWR0aDogTWluKDcwdncsIDQ3OXB4KTtcblx0XHRhc3BlY3QtcmF0aW86IDQ3OS40MjUgLyAyODg7XG5cdFx0cGVyc3BlY3RpdmU6IDE1MDBweDtcblx0XHRwZXJzcGVjdGl2ZS1vcmlnaW46IGNlbnRlciBjZW50ZXI7XG5cdH1cblxuXHQmX19zaGFwZSB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdC8vIGxlZnQvdG9wL3dpZHRoL2hlaWdodCBzZXQgaW5saW5lIHBlciBzaGFwZSB0byBtYXRjaCBpdHMgYmJveCBvbiB0aGUgbG9nbyBjYW52YXNcblx0XHRvcGFjaXR5OiAwO1xuXHRcdHRyYW5zZm9ybTogcm90YXRlWSgxODBkZWcpIHJvdGF0ZVgoOTBkZWcpO1xuXHRcdHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBjZW50ZXI7XG5cdFx0dHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcblx0XHRiYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlO1xuXHRcdHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG5cblx0XHRzdmcge1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdG92ZXJmbG93OiB2aXNpYmxlO1xuXHRcdH1cblx0fVxufVxuIiwiQHVzZSBcInNhc3M6bWF0aFwiO1xuXG5odG1sLFxuYm9keSB7XG5cdG92ZXJzY3JvbGwtYmVoYXZpb3I6IG5vbmU7XG5cdG92ZXJzY3JvbGwtYmVoYXZpb3IteDogbm9uZTtcbn1cblxuaHRtbCB7XG5cdGZvbnQtc2l6ZTogMTAwJTtcbn1cblxuYm9keSB7XG5cdCYsXG5cdCZbZGF0YS10aGVtZV0ge1xuXHRcdGJhY2tncm91bmQtY29sb3I6IHZhcigtLXBhZ2ViZyk7XG5cdH1cblx0Zm9udC1mYW1pbHk6IHZhcigtLWJvZHktZm9udCk7XG5cdGZvbnQtd2VpZ2h0OiB2YXIoLS13ZWlnaHQtbm9ybWFsKTtcblx0bGluZS1oZWlnaHQ6IHZhcigtLWJvZHktbGluZS1oZWlnaHQpO1xuXHRjb2xvcjogdmFyKC0tYmxhY2spO1xuXHRtaW4taGVpZ2h0OiAxMDB2aDtcblx0Ji4tLWxvY2sge1xuXHRcdG92ZXJmbG93OiBoaWRkZW47XG5cdH1cblx0LXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG5cdC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG5cdHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG59XG5cbi5ncmlkLWNvbnRhaW5lciB7XG5cdG1heC13aWR0aDogMTAwJTtcblx0cGFkZGluZy1sZWZ0OiAwLjllbTtcblx0cGFkZGluZy1yaWdodDogMC45ZW07XG5cdEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtLWJyZWFrcG9pbnQpIHtcblx0XHRwYWRkaW5nLWxlZnQ6IDEuMzVyZW07XG5cdFx0cGFkZGluZy1yaWdodDogMS4zNXJlbTtcblx0fVxufVxuXG4uLS1kaXNhYmxlbW90aW9uIHtcblx0Jixcblx0KiB7XG5cdFx0dHJhbnNpdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuXHR9XG59XG5cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG5cdCosXG5cdCo6OmJlZm9yZSxcblx0Kjo6YWZ0ZXIge1xuXHRcdGFuaW1hdGlvbi1kdXJhdGlvbjogMC4wMW1zICFpbXBvcnRhbnQ7XG5cdFx0YW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMSAhaW1wb3J0YW50O1xuXHRcdHRyYW5zaXRpb24tZHVyYXRpb246IDAuMDFtcyAhaW1wb3J0YW50O1xuXHRcdHNjcm9sbC1iZWhhdmlvcjogYXV0byAhaW1wb3J0YW50O1xuXHR9XG59XG5cbiosXG4qOjpiZWZvcmUsXG4qOjphZnRlciB7XG5cdC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcblx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuKjpmb2N1czpub3QoOmZvY3VzLXZpc2libGUpIHtcblx0b3V0bGluZTogbm9uZTtcbn1cblxuKjpmb2N1cy12aXNpYmxlIHtcblx0b3V0bGluZTogMnB4IHNvbGlkIHZhcigtLXRoZW1lLWFjY2VudCwgdmFyKC0tYWJjLWJsYWNrKSk7XG5cdG91dGxpbmUtb2Zmc2V0OiAycHg7XG59XG5cbjo6LW1vei1zZWxlY3Rpb24ge1xuXHRiYWNrZ3JvdW5kOiB2YXIoLS1tZWRpdW1ncmV5KTtcbn1cbjo6c2VsZWN0aW9uIHtcblx0YmFja2dyb3VuZDogdmFyKC0tbWVkaXVtZ3JleSk7XG59XG5cbjo6LW1vei1mb2N1cy1pbm5lciB7XG5cdGJvcmRlcjogMDtcblx0cGFkZGluZzogMDtcbn1cblxuLnNyLW9ubHksXG4uc2NyZWVuLXJlYWRlcixcbi5mcm1fc2NyZWVuX3JlYWRlcixcbi52aXN1YWxseUhpZGRlbixcbi52aXN1YWxseS1oaWRkZW4ge1xuXHRwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcblx0d2lkdGg6IDFweCAhaW1wb3J0YW50O1xuXHRoZWlnaHQ6IDFweCAhaW1wb3J0YW50O1xuXHRwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG5cdG1hcmdpbjogLTFweCAhaW1wb3J0YW50O1xuXHRvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XG5cdGNsaXA6IHJlY3QoMCwgMCwgMCwgMCkgIWltcG9ydGFudDtcblx0d2hpdGUtc3BhY2U6IG5vd3JhcCAhaW1wb3J0YW50O1xuXHRib3JkZXI6IDAgIWltcG9ydGFudDtcbn1cblxuLnNyLW9ubHktLWZvY3VzYWJsZTpmb2N1cyxcbi5zci1vbmx5LS1mb2N1c2FibGU6Zm9jdXMtdmlzaWJsZSB7XG5cdHBvc2l0aW9uOiBmaXhlZCAhaW1wb3J0YW50O1xuXHR0b3A6IDA7XG5cdGxlZnQ6IDA7XG5cdHotaW5kZXg6IDEwMDAwO1xuXHR3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuXHRoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcblx0cGFkZGluZzogMC43NWVtIDEuNWVtICFpbXBvcnRhbnQ7XG5cdG1hcmdpbjogMCAhaW1wb3J0YW50O1xuXHRvdmVyZmxvdzogdmlzaWJsZSAhaW1wb3J0YW50O1xuXHRjbGlwOiBhdXRvICFpbXBvcnRhbnQ7XG5cdHdoaXRlLXNwYWNlOiBub3JtYWwgIWltcG9ydGFudDtcblx0YmFja2dyb3VuZDogdmFyKC0tYWJjLWJsYWNrLCAjMjYyMzIzKTtcblx0Y29sb3I6IHZhcigtLWFiYy1vZmYtd2hpdGUsICNmOWY3ZjcpO1xuXHRmb250LXNpemU6IDFyZW07XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLmhpZGUge1xuXHRkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5oYXMtYmFja2dyb3VuZCB7XG5cdGJhY2tncm91bmQ6IHZhcigtLWJnKTtcbn1cblxuLmJsb2NrICsgLmJsb2NrIHtcblx0bWFyZ2luLXRvcDogOXZ3O1xufVxuXG4uLS16b29tLFxuLnpvb20ge1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdGltZyxcblx0dmlkZW8ge1xuXHRcdHRyYW5zaXRpb246IGFsbCBlYXNlIDJzO1xuXHR9XG59XG5cbnN0cm9uZyxcbmIge1xuXHRmb250LXdlaWdodDogdmFyKC0td2VpZ2h0LWJvbGQpO1xufVxuXG4uZmxleC1oZWlnaHQge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHdpZHRoOiAxMDAlO1xuXHRoZWlnaHQ6IDEwMHZoO1xuXHRoZWlnaHQ6IGNhbGMoMTAwdmggLSBjYWxjKHZhcigtLW1lbnVoZWlnaHQpICogMSkpO1xuXHQmLmZ1bGwge1xuXHRcdGhlaWdodDogMTAwdmg7XG5cdH1cblx0Ji5oYWxmIHtcblx0XHRoZWlnaHQ6IDUwdmg7XG5cdH1cblx0Ji5maWxsLWhlaWdodCB7XG5cdFx0aGVpZ2h0OiAxMDAlO1xuXHR9XG5cdCYuLS1sZWZ0IHtcblx0XHR2aWRlbyxcblx0XHRpZnJhbWUsXG5cdFx0aW1nIHtcblx0XHRcdG9iamVjdC1wb3NpdGlvbjogbGVmdCBjZW50ZXI7XG5cdFx0fVxuXHR9XG5cdCYuLS1yaWdodCB7XG5cdFx0dmlkZW8sXG5cdFx0aWZyYW1lLFxuXHRcdGltZyB7XG5cdFx0XHRvYmplY3QtcG9zaXRpb246IHJpZ2h0IGNlbnRlcjtcblx0XHR9XG5cdH1cblx0dmlkZW8sXG5cdGlmcmFtZSxcblx0aW1nIHtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOiAwO1xuXHRcdGxlZnQ6IDA7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdHotaW5kZXg6IDE7XG5cdFx0b2JqZWN0LWZpdDogY29udGFpbjtcblx0fVxuXHQmLmNvdmVyLFxuXHQmLmZpdCB7XG5cdFx0dmlkZW8sXG5cdFx0aWZyYW1lLFxuXHRcdGltZyB7XG5cdFx0XHRAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bS1icmVha3BvaW50KSB7XG5cdFx0XHRcdG9iamVjdC1maXQ6IGNvdmVyO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXHQmLmNvbnRhaW4ge1xuXHRcdHZpZGVvLFxuXHRcdGlmcmFtZSxcblx0XHRpbWcge1xuXHRcdFx0b2JqZWN0LWZpdDogY29udGFpbjtcblx0XHR9XG5cdFx0Ji4tLXRvcCB7XG5cdFx0XHR2aWRlbyxcblx0XHRcdGlmcmFtZSxcblx0XHRcdGltZyB7XG5cdFx0XHRcdG9iamVjdC1wb3NpdGlvbjogdG9wO1xuXHRcdFx0fVxuXHRcdH1cblx0XHQmLi0tbWlkZGxlIHtcblx0XHRcdHZpZGVvLFxuXHRcdFx0aWZyYW1lLFxuXHRcdFx0aW1nIHtcblx0XHRcdFx0b2JqZWN0LXBvc2l0aW9uOiBjZW50ZXI7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdCYuLS1ib3R0b20ge1xuXHRcdFx0dmlkZW8sXG5cdFx0XHRpZnJhbWUsXG5cdFx0XHRpbWcge1xuXHRcdFx0XHRvYmplY3QtcG9zaXRpb246IGJvdHRvbTtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cbi5mbGV4LXJvdyB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0LmJnLWFuaW1hdGUge1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR0b3A6IDA7XG5cdFx0bGVmdDogMDtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0ei1pbmRleDogOTtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZyk7XG5cdFx0dHJhbnNpdGlvbjogdHJhbnNmb3JtIDYwMG1zIDE1MG1zIGN1YmljLWJlemllcigwLjEyLCAwLjY3LCAwLjUzLCAxKTtcblx0fVxuXHRpbWcsXG5cdHZpZGVvIHtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRoZWlnaHQ6IGF1dG87XG5cdH1cbn1cbi53cC1ibG9jay1ncm91cCB7XG5cdGJhY2tncm91bmQ6IHZhcigtLXRoZW1lLWJnYWx0KTtcbn1cbi5tZWRpYS1yb3cge1xuXHRmbGV4LWRpcmVjdGlvbjogcm93O1xuXHRmbGV4LXdyYXA6IG5vd3JhcDtcblx0ZGlzcGxheTogZmxleDtcblx0Z2FwOiAwIDAuOXJlbTtcblxuXHRAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bS1icmVha3BvaW50KSB7XG5cdFx0Z2FwOiAwIDEuODc1cmVtO1xuXHR9XG5cdC5iZy1hbmltYXRlIHtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOiAwO1xuXHRcdGxlZnQ6IDA7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdHotaW5kZXg6IDk7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmcpO1xuXHRcdHRyYW5zaXRpb246IHRyYW5zZm9ybSA2MDBtcyAxNTBtcyBjdWJpYy1iZXppZXIoMC4xMiwgMC42NywgMC41MywgMSk7XG5cdH1cbn1cbi5mbGV4LXZpZGVvLFxuLmZsZXgtaW1hZ2Uge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHdpZHRoOiAxMDAlO1xuXHRoZWlnaHQ6IDBweDtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRwYWRkaW5nLWJvdHRvbTogNTYuMjUlO1xuXHR6LWluZGV4OiAxO1xuXHQmLmVtYmVkLXJldmVhbCB7XG5cdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHR9XG5cdC5jYXB0aW9uIHtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0ei1pbmRleDogMztcblx0XHRib3R0b206IDA7XG5cdFx0cmlnaHQ6IDA7XG5cdFx0cGFkZGluZzogMC45cmVtO1xuXHRcdEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtLWJyZWFrcG9pbnQpIHtcblx0XHRcdHBhZGRpbmc6IDEuOHJlbTtcblx0XHR9XG5cdFx0dGV4dC1hbGlnbjogbGVmdDtcblx0XHRjb2xvcjogdmFyKC0tYmxhY2spO1xuXHRcdGZvbnQtc2l6ZTogdmFyKC0tc2l6ZSk7XG5cdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0fVxuXHQubWFzayB7XG5cdFx0ei1pbmRleDogMjtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOiAwO1xuXHRcdGxlZnQ6IDA7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdGJhY2tncm91bmQ6IHZhcigtLW1hc2spO1xuXHR9XG5cdC5iZy1hbmltYXRlIHtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOiAwO1xuXHRcdGxlZnQ6IDA7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdHotaW5kZXg6IDk7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmcpO1xuXHRcdHRyYW5zaXRpb246IHRyYW5zZm9ybSA2MDBtcyAxNTBtcyBjdWJpYy1iZXppZXIoMC4xMiwgMC42NywgMC41MywgMSk7XG5cdH1cblx0dmlkZW8sXG5cdGlmcmFtZSxcblx0aW1nIHtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOiAwO1xuXHRcdGxlZnQ6IDA7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0aGVpZ2h0OiBhdXRvO1xuXHRcdHotaW5kZXg6IDE7XG5cdH1cblx0aWZyYW1lIHtcblx0XHR6LWluZGV4OiAzO1xuXHR9XG5cdHN2ZyB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHRvcDogNTAlO1xuXHRcdGxlZnQ6IDUwJTtcblx0XHR6LWluZGV4OiAyO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuXHRcdHdpZHRoOiAxNjJweDtcblx0XHRoZWlnaHQ6IDE2MnB4O1xuXHR9XG5cdGlmcmFtZSB7XG5cdFx0aGVpZ2h0OiAxMDAlO1xuXHR9XG5cdCYuc3F1YXJlIHtcblx0XHRwYWRkaW5nLWJvdHRvbTogMTAwJTtcblx0fVxuXHQmLnJlc3BlY3QtaGVpZ2h0IHtcblx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0cGFkZGluZy1ib3R0b206IDA7XG5cdH1cblx0Ji5jaXJjbGUge1xuXHRcdGJvcmRlci1yYWRpdXM6IDUwJTtcblx0fVxuXHQmLnpvb20ge1xuXHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHRpbWcsXG5cdFx0dmlkZW8ge1xuXHRcdFx0dHJhbnNpdGlvbjogYWxsIGVhc2UgMnM7XG5cdFx0fVxuXHRcdCY6aG92ZXIsXG5cdFx0Jjpmb2N1cy12aXNpYmxlIHtcblx0XHRcdGltZyxcblx0XHRcdHZpZGVvIHtcblx0XHRcdFx0dHJhbnNmb3JtOiBzY2FsZSgxLjEyNSk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cdCYucm91bmQge1xuXHRcdGJvcmRlci1yYWRpdXM6IDEwMCU7XG5cdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0fVxuXHQmLnNocmluayBpbWcge1xuXHRcdGhlaWdodDogMTAwJTtcblx0XHRvYmplY3QtZml0OiBjb250YWluO1xuXHR9XG5cdCYuc3F1YXJlIHtcblx0XHRwYWRkaW5nLWJvdHRvbTogMTAwJTtcblx0XHRpbWcsXG5cdFx0dmlkZW8ge1xuXHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdFx0b2JqZWN0LWZpdDogY292ZXI7XG5cdFx0fVxuXHR9XG5cdCYuZml0LFxuXHQmLmNvdmVyIHtcblx0XHRpbWcsXG5cdFx0dmlkZW8ge1xuXHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdFx0b2JqZWN0LWZpdDogY292ZXI7XG5cdFx0fVxuXHR9XG5cdC5mbGV4LWhlYWRlciB7XG5cdFx0ei1pbmRleDogODtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0ei1pbmRleDogMztcblx0XHR0b3A6IDA7XG5cdFx0bGVmdDogMDtcblx0XHRwYWRkaW5nOiAxLjQzNzVyZW07XG5cdFx0Ji5zbWFsbCB7XG5cdFx0XHRwYWRkaW5nOiAxLjM1cmVtO1xuXHRcdH1cblx0XHR3aWR0aDogMTAwJTtcblx0XHRoMiB7XG5cdFx0XHRjb2xvcjogdmFyKC0tYmxhY2spO1xuXHRcdFx0Zm9udC1zaXplOiB2YXIoLS1zaXplLXBsdXM1KTtcblx0XHR9XG5cdFx0cCB7XG5cdFx0XHRjb2xvcjogdmFyKC0tYmxhY2spO1xuXHRcdFx0Zm9udC1zaXplOiBtYXgoMC45MjVyZW0sIHZhcigtLXNpemUtcGx1czEpKTtcblx0XHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdFx0fVxuXHRcdEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtLWJyZWFrcG9pbnQpIHtcblx0XHRcdHBhZGRpbmc6IDIuNnJlbTtcblx0XHRcdHdpZHRoOiA1MCU7XG5cdFx0XHRwIHtcblx0XHRcdFx0bWF4LXdpZHRoOiA4Ny4yNSU7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cdC5mbGV4LWljb24ge1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRib3R0b206IDEuNDM3NXJlbTtcblx0XHRyaWdodDogMS40Mzc1cmVtO1xuXHRcdHotaW5kZXg6IDEwO1xuXHRcdHdpZHRoOiAyLjM1cmVtO1xuXHRcdEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtLWJyZWFrcG9pbnQpIHtcblx0XHRcdHdpZHRoOiAzLjU5Mzc1cmVtO1xuXHRcdH1cblx0XHR0cmFuc2Zvcm06IG5vbmU7XG5cdFx0dG9wOiB1bnNldDtcblx0XHRsZWZ0OiB1bnNldDtcblx0XHRoZWlnaHQ6IGF1dG87XG5cdH1cblxuXHQuZmxleC1idXR0b24ge1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRib3R0b206IDEuOHJlbTtcblx0XHRsZWZ0OiAxLjhyZW07XG5cdFx0QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtZWRpdW0tYnJlYWtwb2ludCkge1xuXHRcdFx0Ym90dG9tOiAyLjhyZW07XG5cdFx0XHRyaWdodDogMi44cmVtO1xuXHRcdFx0bGVmdDogYXV0bztcblx0XHR9XG5cdFx0ei1pbmRleDogMTA7XG5cdFx0c3ZnIHtcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdGhlaWdodDogMC41ZW07XG5cdFx0XHR3aWR0aDogYXV0bztcblx0XHRcdHRyYW5zZm9ybTogbm9uZTtcblx0XHRcdHRvcDogdW5zZXQ7XG5cdFx0XHRsZWZ0OiB1bnNldDtcblx0XHRcdGNpcmNsZSB7XG5cdFx0XHRcdGZpbGw6IHZhcigtLWJsYWNrKTtcblx0XHRcdFx0dHJhbnNpdGlvbjogYWxsIGVhc2UgNTAwbXM7XG5cdFx0XHR9XG5cdFx0XHRoZWlnaHQ6IDAuNWVtO1xuXHRcdFx0d2lkdGg6IGF1dG87XG5cdFx0fVxuXHRcdCY6aG92ZXIgc3ZnIHtcblx0XHRcdGNpcmNsZSB7XG5cdFx0XHRcdGZpbGw6IHZhcigtLWJyYW5kKTtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuLmZsZXgtYnV0dG9uIHtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1icmFuZCk7XG5cdGNvbG9yOiB2YXIoLS1iZyk7XG5cdGJhY2tncm91bmQ6IHZhcigtLWJyYW5kKTtcblx0cGFkZGluZzogMC45ZW0gMS4yNWVtO1xuXHRmb250LXNpemU6IG1heCgwLjhyZW0sIHZhcigtLXNpemUtbWludXMxKSk7XG5cdEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtLWJyZWFrcG9pbnQpIHtcblx0XHRwYWRkaW5nOiAwLjllbSAzLjZlbTtcblx0XHRmb250LXNpemU6IG1heCgwLjkyNXJlbSwgdmFyKC0tc2l6ZSkpO1xuXHR9XG5cdGJvcmRlci1yYWRpdXM6IDAuOWVtO1xuXHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRmb250LWZhbWlseTogdmFyKC0tbW9uby1mb250KTtcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcblx0c3BhbiB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdH1cblx0dHJhbnNpdGlvbjogYWxsIGVhc2UgNTAwbXM7XG5cdGRpc3BsYXk6IGlubGluZS1mbGV4O1xuXHRnYXA6IDAuOWVtO1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRmbGV4LWRpcmVjdGlvbjogcm93O1xuXHRmbGV4LXdyYXA6IHdyYXA7XG5cdHN2ZyB7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdGhlaWdodDogMC43ZW07XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0wLjVweCk7XG5cdFx0d2lkdGg6IGF1dG87XG5cdFx0Y2lyY2xlIHtcblx0XHRcdGZpbGw6IHZhcigtLWJsYWNrKTtcblx0XHRcdHRyYW5zaXRpb246IGFsbCBlYXNlIDUwMG1zO1xuXHRcdH1cblx0XHRoZWlnaHQ6IDAuNWVtO1xuXHRcdHdpZHRoOiBhdXRvO1xuXHR9XG5cdCY6aG92ZXIge1xuXHRcdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXHRcdGNvbG9yOiB2YXIoLS1icmFuZCk7XG5cdFx0c3ZnIGNpcmNsZSB7XG5cdFx0XHRmaWxsOiB2YXIoLS1icmFuZCk7XG5cdFx0fVxuXHR9XG59XG5cbi4tLWlzLWFkbWluIC5iZy1hbmltYXRlIHtcblx0ZGlzcGxheTogbm9uZTtcbn1cblxuLnNhbC1hbmltYXRlIHtcblx0LmZsZXgtcm93LFxuXHQuZmxleC1pbWFnZSxcblx0LmZsZXgtdmlkZW8ge1xuXHRcdC5iZy1hbmltYXRlIHtcblx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XG5cdFx0fVxuXHR9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bS1icmVha3BvaW50KSB7XG5cdC5zbWFsbC1vbmx5IHtcblx0XHRkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG5cdH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbWVkaXVtLWJyZWFrcG9pbnQpIHtcblx0Lm1lZGl1bS11cCB7XG5cdFx0ZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuXHR9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGxhcmdlLWJyZWFrcG9pbnQpIHtcblx0LmxhcmdlLXVwIHtcblx0XHRkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG5cdH1cbn1cbmxpLFxudWwsXG5vbCxcbnAge1xuXHRmb250LXNpemU6IDFyZW07XG5cdEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtLWJyZWFrcG9pbnQpIHtcblx0XHRmb250LXNpemU6IHZhcigtLXNpemUpO1xuXHRcdGZvbnQtc2l6ZTogbWF4KDAuOTI1cmVtLCB2YXIoLS1zaXplLXBsdXMwKSk7XG5cdH1cblx0bGluZS1oZWlnaHQ6IHZhcigtLWJvZHktbGluZS1oZWlnaHQpO1xuXHR0ZXh0LWFsaWduOiBsZWZ0O1xuXHR3aGl0ZS1zcGFjZTogbm9ybWFsO1xuXHRiLFxuXHRzdHJvbmcge1xuXHRcdGZvbnQtd2VpZ2h0OiB2YXIoLS13ZWlnaHQtYm9sZCk7XG5cdH1cbn1cblxudWwgbGkge1xuXHRtYXJnaW46IDAgMCAwLjQ1ZW0gMDtcbn1cblxudWwsXG5vbCxcbnAge1xuXHRtYXJnaW4tdG9wOiAwO1xuXHRtYXJnaW4tYm90dG9tOiAxLjI1ZW07XG5cdGNvbG9yOiB2YXIoLS1ibGFjayk7XG59XG5cbi5sZWFkIHAsXG5wLmxlYWQge1xuXHRmb250LWZhbWlseTogdmFyKC0taGVhZGVyLWZvbnQpO1xuXHRsaW5lLWhlaWdodDogMTtcblx0bWFyZ2luOiAwIDAgMS4zNWVtIDA7XG5cdGZvbnQtd2VpZ2h0OiB2YXIoLS13ZWlnaHQtYm9sZCk7XG5cdGZvbnQtc2l6ZTogdmFyKC0tc2l6ZS1wbHVzMyk7XG59XG4ucGx1cyBwLFxucC5wbHVzIHtcblx0cCB7XG5cdFx0Zm9udC1zaXplOiB2YXIoLS1zaXplLXBsdXMyKTtcblx0XHRsaW5lLWhlaWdodDogdmFyKC0taGVhZGVyLWxpbmUtaGVpZ2h0KTtcblx0XHRmb250LXdlaWdodDogdmFyKC0td2VpZ2h0LW5vcm1hbCk7XG5cdH1cbn1cblxuLnRleHQtbGVmdCB7XG5cdHRleHQtYWxpZ246IGxlZnQ7XG59XG4udGV4dC1yaWdodCB7XG5cdHRleHQtYWxpZ246IHJpZ2h0O1xufVxuLnRleHQtY2VudGVyIHtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uaGFzLWRyb3AtY2FwIHAsXG5wLmhhcy1kcm9wLWNhcCB7XG5cdCY6bm90KDpmb2N1cyk6Zmlyc3QtbGV0dGVyIHtcblx0XHRmbG9hdDogbGVmdDtcblx0XHRmb250LXNpemU6IDguNGVtO1xuXHRcdGxpbmUtaGVpZ2h0OiAwLjY4O1xuXHRcdGZvbnQtd2VpZ2h0OiAxMDA7XG5cdFx0bWFyZ2luOiAwLjA1ZW0gMC4xZW0gMCAwO1xuXHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdFx0Zm9udC1zdHlsZTogbm9ybWFsO1xuXHR9XG59XG5cbi5oYXMtc21hbGwtZm9udC1zaXplIHAsXG5wLmhhcy1zbWFsbC1mb250LXNpemUge1xuXHRmb250LXNpemU6IHZhcigtLXNpemUpO1xuXHRmb250LXNpemU6IG1heCgwLjkyNXJlbSwgdmFyKC0tc2l6ZSkpO1xufVxuLmhhcy1tZWRpdW0tZm9udC1zaXplIHAsXG5wLmhhcy1tZWRpdW0tZm9udC1zaXplIHtcblx0Zm9udC1zaXplOiB2YXIoLS1zaXplLXBsdXMxKTtcbn1cbi5oYXMtbGFyZ2UtZm9udC1zaXplIHAsXG5wLmhhcy1sYXJnZS1mb250LXNpemUge1xuXHRmb250LXNpemU6IHZhcigtLXNpemUtcGx1czQpO1xufVxuLmhhcy14LWxhcmdlLWZvbnQtc2l6ZSBwLFxucC5oYXMteC1sYXJnZS1mb250LXNpemUge1xuXHRmb250LXNpemU6IHZhcigtLXNpemUtcGx1czMpO1xufVxuXG4uLS1zdGlja3kge1xuXHRAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bS1icmVha3BvaW50KSB7XG5cdFx0cG9zaXRpb246IHN0aWNreTtcblx0XHR0b3A6IDA7XG5cdH1cbn1cblxuLmgxLFxuLmgyLFxuLmgzLFxuLmg0LFxuLmg1LFxuLmg2LFxuaDEsXG5oMixcbmgzLFxuaDQsXG5oNSxcbmg2IHtcblx0bWFyZ2luOiAwIDAgMC45cmVtIDA7XG5cdGZvbnQtZmFtaWx5OiB2YXIoLS1oZWFkZXItZm9udCk7XG5cdGZvbnQtd2VpZ2h0OiB2YXIoLS13ZWlnaHQtbm9ybWFsKTtcblx0bGluZS1oZWlnaHQ6IHZhcigtLWhlYWRlci1saW5lLWhlaWdodCk7XG5cdGNvbG9yOiB2YXIoLS1ibGFjayk7XG5cdHRleHQtdHJhbnNmb3JtOiBub25lO1xuXHRzbWFsbCB7XG5cdFx0Zm9udC1zaXplOiA2Ni42JTtcblx0fVxufVxuXG5hOmhvdmVyIHtcblx0LmgxLFxuXHQuaDIsXG5cdC5oMyxcblx0Lmg0LFxuXHQuaDUsXG5cdC5oNixcblx0aDEsXG5cdGgyLFxuXHRoMyxcblx0aDQsXG5cdGg1LFxuXHRoNiB7XG5cdFx0Ji5oaWdobGlnaHQgc3BhbiB7XG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uLXg6IGxlZnQ7XG5cdFx0XHRiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAwJTtcblx0XHRcdGNvbG9yOiB2YXIoLS1ibGFjayk7XG5cdFx0fVxuXHR9XG59XG5cbmgxLFxuLmgxIHtcblx0bWFyZ2luLXRvcDogMDtcblx0Zm9udC1zaXplOiB2YXIoLS1zaXplLXBsdXMyKTtcbn1cblxuaDIsXG4uaDIge1xuXHRmb250LXNpemU6IHZhcigtLXNpemUtcGx1czIpO1xufVxuXG5oMyxcbi5oMyB7XG5cdGZvbnQtc2l6ZTogdmFyKC0tc2l6ZS1wbHVzMSk7XG59XG5cbmg1LFxuLmg1IHtcblx0Zm9udC1zaXplOiB2YXIoLS1zaXplLXBsdXMxKTtcbn1cblxuaDQsXG4uaDQge1xuXHRmb250LXNpemU6IHZhcigtLXNpemUtcGx1czApO1xufVxuXG5oNSxcbi5oNSB7XG5cdGZvbnQtc2l6ZTogdmFyKC0tc2l6ZS1wbHVzMCk7XG59XG5oNixcbi5oNiB7XG5cdGZvbnQtc2l6ZTogdmFyKC0tc2l6ZS1wbHVzMCk7XG59XG5cbnNtYWxsLFxuLnRleHRfc21hbGwge1xuXHRmb250LXNpemU6IHZhcigtLXNpemUtbWludXMyKTtcblx0Zm9udC13ZWlnaHQ6IHZhcigtLXdlaWdodC1ib2xkKTtcbn1cblxuYSB7XG5cdGNvbG9yOiB2YXIoLS1ibGFjayk7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0dHJhbnNpdGlvbjpcblx0XHRiYWNrZ3JvdW5kLWNvbG9yIDE1MG1zIGVhc2UsXG5cdFx0Y29sb3IgMTUwbXMgZWFzZTtcblx0Jjpob3ZlciB7XG5cdFx0Y29sb3I6IHZhcigtLWRhcmtncmV5KTtcblx0fVxufVxuaHRtbCxcbmJvZHkge1xuXHRzY3JvbGwtcGFkZGluZy10b3A6IDA7XG59XG4ud3AtYmxvY2stZW1iZWQsXG5maWd1cmUud3AtYmxvY2staW1hZ2Uge1xuXHRtYXJnaW46IDEuOHJlbSBhdXRvO1xuXHRAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bS1icmVha3BvaW50KSB7XG5cdFx0bWFyZ2luOiAyLjhyZW0gYXV0bztcblx0fVxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4ud3AtYmxvY2stcXVvdGUge1xuXHRib3JkZXI6IG5vbmU7XG5cdHBhZGRpbmc6IDEuOHJlbSAwO1xuXHRtYXJnaW46IDEuOHJlbSAwO1xuXHQmLmhhcy1iYWNrZ3JvdW5kIHtcblx0XHRwYWRkaW5nOiAxLjhyZW07XG5cdFx0QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtZWRpdW0tYnJlYWtwb2ludCkge1xuXHRcdFx0cGFkZGluZzogMi44cmVtO1xuXHRcdH1cblx0XHRib3JkZXI6IG5vbmU7XG5cdH1cblx0Jixcblx0Y2l0ZSxcblx0cCB7XG5cdFx0dGV4dC1hbGlnbjogbGVmdDtcblx0XHRjb2xvcjogdmFyKC0tYmxhY2spO1xuXHRcdGZvbnQtc2l6ZTogdmFyKC0tc2l6ZS1wbHVzMCk7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0bWF4LXdpZHRoOiAxMDAlO1xuXHR9XG5cdGNpdGUge1xuXHRcdGZvbnQtd2VpZ2h0OiB2YXIoLS13ZWlnaHQtYm9sZCk7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRnYXA6IDAuNjI1ZW07XG5cdFx0bWFyZ2luOiAwIDAgMC45ZW0gMDtcblx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHR9XG59XG4uYWRtaW4tYmFyIGhlYWRlciNuYXZpZ2F0aW9uIHtcblx0QG1lZGlhIChtaW4td2lkdGg6IDgwMHB4KSB7XG5cdFx0dG9wOiAzMnB4O1xuXHR9XG59XG5cbmhlYWRlciNuYXZpZ2F0aW9uIHtcblx0cG9zaXRpb246IGZpeGVkO1xuXHRyaWdodDogMDtcblx0dG9wOiAwO1xuXHRwYWRkaW5nOiAwO1xuXHR3aWR0aDogMTAwJTtcblx0cG9pbnRlci1ldmVudHM6IG5vbmU7XG5cdHotaW5kZXg6IDk5OTtcblx0ZGlzcGxheTogZmxleDtcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHRnYXA6IDAuOWVtO1xuXHRwYWRkaW5nOiAwLjllbTtcblx0QG1lZGlhIChtaW4td2lkdGg6IDgwMHB4KSB7XG5cdFx0cGFkZGluZzogMC4zMjVlbSAwLjllbTtcblx0fVxuXHQubG9nbyB7XG5cdFx0Y29sb3I6IHZhcigtLWJsYWNrKTtcblx0XHQtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuXHRcdHNwYW4ge1xuXHRcdFx0bGluZS1oZWlnaHQ6IDE7XG5cdFx0XHRtYXJnaW46IDA7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdGZvbnQtc2l6ZTogdmFyKC0tc2l6ZS1wbHVzMyk7XG5cdFx0fVxuXHR9XG5cdCYuaGVhZHJvb20ge1xuXHRcdHdpbGwtY2hhbmdlOiBiYWNrZ3JvdW5kLWNvbG9yO1xuXHRcdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgNTAwbXMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdFx0LmxvZ28ge1xuXHRcdFx0b3BhY2l0eTogMDtcblx0XHRcdHdpbGwtY2hhbmdlOiBvcGFjaXR5O1xuXHRcdFx0dHJhbnNpdGlvbjogb3BhY2l0eSA1MDBtcyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcblx0XHR9XG5cdH1cblx0Ji5oZWFkZXItLXRvcC13aGl0ZS5oZWFkcm9vbS0tdG9wIHtcblx0XHQtLWJsYWNrOiAjZmZmO1xuXHR9XG5cdCYuaGVhZHJvb20tLW5vdC10b3Age1xuXHRcdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWFiYy1vZmYtd2hpdGUpO1xuXHRcdC5sb2dvIHtcblx0XHRcdG9wYWNpdHk6IDE7XG5cdFx0fVxuXHR9XG5cblx0QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtZWRpdW0tYnJlYWtwb2ludCkge1xuXHRcdHBhZGRpbmc6IDAuNjI1ZW0gMS4zNXJlbTtcblx0fVxuXG5cdGEsXG5cdGJ1dHRvbiB7XG5cdFx0cG9pbnRlci1ldmVudHM6IGF1dG87XG5cdH1cblx0LmhlYWRlci10b2dnbGUge1xuXHRcdGJhY2tncm91bmQ6IG5vbmU7XG5cdFx0Ym9yZGVyOiBub25lO1xuXHRcdHBhZGRpbmc6IDA7XG5cdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHRcdGNvbG9yOiBpbmhlcml0O1xuXHRcdHN2ZyB7XG5cdFx0XHR3aWR0aDogMi40cmVtO1xuXHRcdFx0aGVpZ2h0OiBhdXRvO1xuXHRcdH1cblx0fVxuXHQubG9nbyB7XG5cdFx0aW1nLFxuXHRcdHN2ZyB7XG5cdFx0XHRoZWlnaHQ6IDEuOHJlbTtcblx0XHRcdHdpZHRoOiBhdXRvO1xuXHRcdH1cblx0fVxuXG5cdC5pcy1uYXYtb3BlbiAmIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblx0XHQtLWJsYWNrOiB2YXIoLS1hYmMtb2ZmLXdoaXRlKTtcblx0XHQubG9nbyB7XG5cdFx0XHRvcGFjaXR5OiAxO1xuXHRcdH1cblx0fVxufVxuXG5uYXYjcHJpbWFyeSB7XG5cdGRpc3BsYXk6IG5vbmU7XG5cdHBvc2l0aW9uOiBmaXhlZDtcblx0dG9wOiAwO1xuXHRsZWZ0OiAwO1xuXHR3aWR0aDogMTAwJTtcblx0aGVpZ2h0OiAxMDB2aDtcblx0ei1pbmRleDogOTk4O1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblx0Ji5pcy1uYXYtb3BlbiB7XG5cdFx0Ji5oZWFkcm9vbS0tdW5waW5uZWQge1xuXHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAlKTtcblx0XHR9XG5cdH1cblxuXHQubWFzayB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdGluc2V0OiAwO1xuXHRcdGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC44MjUpO1xuXHRcdGJhY2tkcm9wLWZpbHRlcjogYmx1cigxMHB4KTtcblx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0LXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTBweCk7XG5cdH1cblxuXHQucHJpbWFyeS1pbm5lciB7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdHotaW5kZXg6IDE7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0aGVpZ2h0OiAxMDBkdmg7XG5cdFx0aGVpZ2h0OiAxMDB2aDsgLy8gZmFsbGJhY2tcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1iZywgdmFyKC0tYWJjLWJsYWNrKSk7XG5cdFx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjVzIGVhc2U7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdG92ZXJmbG93OiBoaWRkZW47XG5cblx0XHRAc3VwcG9ydHMgKGhlaWdodDogMTAwZHZoKSB7XG5cdFx0XHRoZWlnaHQ6IDEwMGR2aDtcblx0XHR9XG5cblx0XHRAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bS1icmVha3BvaW50KSB7XG5cdFx0XHRoZWlnaHQ6IDY2dmg7XG5cdFx0XHRmbGV4LWRpcmVjdGlvbjogcm93O1xuXHRcdH1cblx0fVxufVxuXG4ubmF2LXNsaWRlc2hvdyB7XG5cdGZsZXg6IDAgMCA1MCU7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0ZGlzcGxheTogbm9uZTsgLy8gaGlkZGVuIG9uIG1vYmlsZVxuXG5cdEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtLWJyZWFrcG9pbnQpIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0fVxuXHRpbWcubG9nbyB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdGJvdHRvbTogMDtcblx0XHRsZWZ0OiAwO1xuXHRcdHBhZGRpbmc6IDEuOHJlbTtcblx0fVxuXG5cdC5uYXYtc2xpZGVzaG93LWNvbnRhaW5lciB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdGJvdHRvbTogMS44cmVtO1xuXHRcdGxlZnQ6IDEuOHJlbTtcblx0XHR3aWR0aDogMzMuMzMzMzMzMzN2dztcblxuXHRcdCYuc3dpcGVyIHtcblx0XHRcdC5zd2lwZXItd3JhcHBlciB7XG5cdFx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdH1cblxuXHRcdFx0LnN3aXBlci1zbGlkZSB7XG5cdFx0XHRcdGZsZXgtc2hyaW5rOiAwO1xuXHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdFx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXG5cdFx0XHRcdGltZyB7XG5cdFx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdFx0XHRcdG9iamVjdC1maXQ6IGNvdmVyO1xuXHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi5uYXYtbW9iaWxlLWxvZ28ge1xuXHRkaXNwbGF5OiBibG9jaztcblx0cGFkZGluZzogMXJlbTtcblx0bWFyZ2luLXRvcDogYXV0bztcblxuXHRpbWcge1xuXHRcdHdpZHRoOiAyMTZweDtcblx0XHRoZWlnaHQ6IGF1dG87XG5cdH1cblxuXHRAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bS1icmVha3BvaW50KSB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxufVxuXG4ubmF2LW1lbnUge1xuXHRmbGV4OiAxO1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRwYWRkaW5nOiAwIDE1cHg7XG5cdGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblx0cGFkZGluZy10b3A6IDE1MnB4O1xuXG5cdEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtLWJyZWFrcG9pbnQpIHtcblx0XHRmbGV4LWRpcmVjdGlvbjogcm93O1xuXHRcdHBhZGRpbmc6IDAuNjI1cmVtIDEuOHJlbSAxLjhyZW0gMDtcblx0XHRwYWRkaW5nLXRvcDogMC42MjVyZW07XG5cdFx0anVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuXHRcdGdhcDogMS44cmVtO1xuXHR9XG5cdFtkYXRhLXRoZW1lXSxcblx0YSB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdH1cblxuXHQmX19wYXJlbnRzIHtcblx0XHRtaW4td2lkdGg6IDE1LjYyNXZ3O1xuXHRcdHVsIHtcblx0XHRcdGxpc3Qtc3R5bGU6IG5vbmU7XG5cdFx0XHRtYXJnaW46IDA7XG5cdFx0XHRwYWRkaW5nOiAwO1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdFx0XHRnYXA6IDZweDtcblxuXHRcdFx0QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtZWRpdW0tYnJlYWtwb2ludCkge1xuXHRcdFx0XHRnYXA6IDA7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cdGEsXG5cdC5jb250YWN0LXRyaWdnZXIge1xuXHRcdG1hcmdpbjogMDtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRmb250LWZhbWlseTogdmFyKC0taGVhZGVyLWZvbnQpO1xuXHRcdGZvbnQtc2l6ZTogMjRweDtcblx0XHRmb250LXdlaWdodDogdmFyKC0td2VpZ2h0LWxpZ2h0KTtcblx0XHRsZXR0ZXItc3BhY2luZzogdmFyKC0taGVhZGluZy10cmFja2luZyk7XG5cdFx0bGluZS1oZWlnaHQ6IHZhcigtLWJvZHktbGluZS1oZWlnaHQpO1xuXHRcdGNvbG9yOiB2YXIoLS10aGVtZS1mZywgdmFyKC0tYWJjLW9mZi13aGl0ZSkpO1xuXHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0XHRwYWRkaW5nOiAwO1xuXHRcdG9wYWNpdHk6IDE7XG5cdFx0dHJhbnNpdGlvbjogY29sb3IgMC4yNXMgdmFyKC0tZWFzaW5nKTtcblx0XHQmOmhvdmVyIHtcblx0XHRcdGNvbG9yOiB2YXIoLS1wbGFzdGVyLWIsIHZhcigtLWFiYy1vZmYtd2hpdGUpKTtcblx0XHR9XG5cblx0XHRAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bS1icmVha3BvaW50KSB7XG5cdFx0XHRmb250LXNpemU6IHZhcigtLXNpemUtcGx1czEpO1xuXHRcdFx0Zm9udC13ZWlnaHQ6IHZhcigtLXdlaWdodC1ub3JtYWwpO1xuXHRcdFx0bGluZS1oZWlnaHQ6IHZhcigtLWhlYWRlci1saW5lLWhlaWdodCk7XG5cdFx0fVxuXHR9XG5cblx0LmNvbnRhY3QtdHJpZ2dlciB7XG5cdFx0YXBwZWFyYW5jZTogbm9uZTtcblx0XHRiYWNrZ3JvdW5kOiBub25lO1xuXHRcdGJvcmRlcjogbm9uZTtcblx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0dGV4dC1hbGlnbjogbGVmdDtcblx0XHRmb250LWZhbWlseTogdmFyKC0taGVhZGVyLWZvbnQpO1xuXHR9XG5cblx0Jl9fcGFyZW50IHtcblx0XHQmLmlzLWFjdGl2ZSA+IGEge1xuXHRcdFx0Y29sb3I6IHZhcigtLXBsYXN0ZXItYiwgdmFyKC0tYWJjLW9mZi13aGl0ZSkpO1xuXHRcdH1cblx0XHQvLyBNb2JpbGU6IGhpZ2hsaWdodCBjdXJyZW50IHBhZ2UgbGlua1xuXHRcdCYuaXMtY3VycmVudCA+IGEge1xuXHRcdFx0Y29sb3I6IHZhcigtLXRoZW1lLWFjY2VudCwgdmFyKC0tcGxhc3Rlci1iKSk7XG5cdFx0fVxuXHRcdEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtLWJyZWFrcG9pbnQpIHtcblx0XHRcdCYuaXMtY3VycmVudCA+IGEge1xuXHRcdFx0XHRjb2xvcjogdmFyKC0tdGhlbWUtZmcsIHZhcigtLWFiYy1vZmYtd2hpdGUpKTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQmX19jaGlsZHJlbiB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0XHRtaW4td2lkdGg6IDE1LjYyNXZ3O1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXHRcdEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtLWJyZWFrcG9pbnQpIHtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0bWFyZ2luLXRvcDogMDtcblx0XHRcdGZsZXg6IDE7XG5cdFx0fVxuXG5cdFx0dWwge1xuXHRcdFx0bGlzdC1zdHlsZTogbm9uZTtcblx0XHRcdG1hcmdpbjogMDtcblx0XHRcdHBhZGRpbmc6IDA7XG5cdFx0fVxuXHR9XG5cblx0Jl9fY2hpbGRyZW4tcGFuZWwge1xuXHRcdHZpc2liaWxpdHk6IGhpZGRlbjtcblx0XHRvcGFjaXR5OiAwO1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR0b3A6IDA7XG5cdFx0bGVmdDogMDtcblx0XHR0cmFuc2l0aW9uOlxuXHRcdFx0b3BhY2l0eSAwLjNzIHZhcigtLWVhc2luZyksXG5cdFx0XHR2aXNpYmlsaXR5IDAuM3MgdmFyKC0tZWFzaW5nKTtcblxuXHRcdCYuaXMtYWN0aXZlIHtcblx0XHRcdHZpc2liaWxpdHk6IHZpc2libGU7XG5cdFx0XHRvcGFjaXR5OiAxO1xuXHRcdH1cblx0fVxufVxuXG4vLyDilIDilIAgTW9iaWxlIGFjY29yZGlvbiBuYXYg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG4ubmF2LW1lbnUtLW1vYmlsZSB7XG5cdHBhZGRpbmctdG9wOiAxMDBweDtcblx0b3ZlcmZsb3cteTogYXV0bztcblxuXHQubmF2LW1lbnVfX2xpc3Qge1xuXHRcdGxpc3Qtc3R5bGU6IG5vbmU7XG5cdFx0bWFyZ2luOiAwO1xuXHRcdHBhZGRpbmc6IDA7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdGdhcDogMDtcblx0fVxuXG5cdC5uYXYtbWVudV9faXRlbSB7XG5cdFx0cGFkZGluZzogMC4xMjVlbSAwO1xuXHR9XG5cblx0Lm5hdi1tZW51X190b2dnbGUsXG5cdC5uYXYtbWVudV9fbGluayB7XG5cdFx0YXBwZWFyYW5jZTogbm9uZTtcblx0XHRiYWNrZ3JvdW5kOiBub25lO1xuXHRcdGJvcmRlcjogbm9uZTtcblx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0dGV4dC1hbGlnbjogbGVmdDtcblx0XHRtYXJnaW46IDA7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0XHRmb250LWZhbWlseTogdmFyKC0taGVhZGVyLWZvbnQpO1xuXHRcdGZvbnQtc2l6ZTogMjRweDtcblx0XHRmb250LXdlaWdodDogdmFyKC0td2VpZ2h0LWxpZ2h0KTtcblx0XHRsZXR0ZXItc3BhY2luZzogdmFyKC0taGVhZGluZy10cmFja2luZyk7XG5cdFx0bGluZS1oZWlnaHQ6IHZhcigtLWJvZHktbGluZS1oZWlnaHQpO1xuXHRcdGNvbG9yOiB2YXIoLS10aGVtZS1mZywgdmFyKC0tYWJjLW9mZi13aGl0ZSkpO1xuXHRcdHBhZGRpbmc6IDA7XG5cdFx0dHJhbnNpdGlvbjogY29sb3IgMC4yNXMgdmFyKC0tZWFzaW5nKTtcblx0XHQmOmhvdmVyIHtcblx0XHRcdGNvbG9yOiB2YXIoLS1wbGFzdGVyLWIsIHZhcigtLWFiYy1vZmYtd2hpdGUpKTtcblx0XHR9XG5cdH1cblxuXHQubmF2LW1lbnVfX2l0ZW0uaXMtY3VycmVudCA+IC5uYXYtbWVudV9fdG9nZ2xlLFxuXHQubmF2LW1lbnVfX2l0ZW0uaXMtY3VycmVudCA+IC5uYXYtbWVudV9fbGluayB7XG5cdFx0Y29sb3I6IHZhcigtLXRoZW1lLWFjY2VudCwgdmFyKC0tcGxhc3Rlci1iKSk7XG5cdH1cblxuXHQubmF2LW1lbnVfX3N1YiB7XG5cdFx0bGlzdC1zdHlsZTogbm9uZTtcblx0XHRtYXJnaW46IDA7XG5cdFx0cGFkZGluZzogMCAwIDAgMTJweDtcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHRcdG1heC1oZWlnaHQ6IDA7XG5cdFx0dHJhbnNpdGlvbjogbWF4LWhlaWdodCAwLjM1cyBlYXNlO1xuXHR9XG5cblx0Lm5hdi1tZW51X19pdGVtLmlzLW9wZW4gPiAubmF2LW1lbnVfX3N1YiB7XG5cdFx0bWF4LWhlaWdodDogNTAwcHg7XG5cdH1cblxuXHQubmF2LW1lbnVfX3N1Yi1pdGVtIHtcblx0XHRtYXJnaW46IDAuMTI1ZW0gMDtcblx0XHQmOmZpcnN0LW9mLXR5cGUge1xuXHRcdFx0bWFyZ2luLXRvcDogMC45ZW07XG5cdFx0fVxuXHRcdC8vICY6bGFzdC1vZi10eXBlIHtcblx0XHQvLyBcdG1hcmdpbi1ib3R0b206IDAuOWVtO1xuXHRcdC8vIH1cblx0XHRhIHtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0Zm9udC1mYW1pbHk6IHZhcigtLWhlYWRlci1mb250KTtcblx0XHRcdGZvbnQtc2l6ZTogMTZweDtcblx0XHRcdGZvbnQtd2VpZ2h0OiB2YXIoLS13ZWlnaHQtbGlnaHQpO1xuXHRcdFx0bGV0dGVyLXNwYWNpbmc6IHZhcigtLWhlYWRpbmctdHJhY2tpbmcpO1xuXHRcdFx0bGluZS1oZWlnaHQ6IHZhcigtLWJvZHktbGluZS1oZWlnaHQpO1xuXHRcdFx0Y29sb3I6IHZhcigtLXRoZW1lLWZnLCB2YXIoLS1hYmMtb2ZmLXdoaXRlKSk7XG5cdFx0XHRwYWRkaW5nOiAwLjEyNWVtIDA7XG5cdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0XHRvcGFjaXR5OiAwLjc1O1xuXHRcdFx0dHJhbnNpdGlvbjpcblx0XHRcdFx0Y29sb3IgMC4yNXMgdmFyKC0tZWFzaW5nKSxcblx0XHRcdFx0b3BhY2l0eSAwLjI1cyB2YXIoLS1lYXNpbmcpO1xuXHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdGNvbG9yOiB2YXIoLS1wbGFzdGVyLWIsIHZhcigtLWFiYy1vZmYtd2hpdGUpKTtcblx0XHRcdFx0b3BhY2l0eTogMTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQmLS1wYXJlbnQgYSB7XG5cdFx0XHRvcGFjaXR5OiAxO1xuXHRcdFx0Zm9udC13ZWlnaHQ6IHZhcigtLXdlaWdodC1ub3JtYWwpO1xuXHRcdH1cblx0fVxufVxuXG4vLyBEZXNrdG9wIG1lbnUgaW5oZXJpdHMgdGhlIGV4aXN0aW5nIC5uYXYtbWVudSBsYXlvdXRcbi5uYXYtbWVudS0tZGVza3RvcCB7XG5cdGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cdHBhZGRpbmc6IDAuNjI1cmVtIDEuOHJlbSAxLjhyZW0gMDtcblx0cGFkZGluZy10b3A6IDAuNjI1cmVtO1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cdGdhcDogMS44cmVtO1xufVxubmF2I21vYmlsZSB7XG5cdGRpc3BsYXk6IG5vbmU7XG5cdEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtLWJyZWFrcG9pbnQpIHtcblx0XHRkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG5cdH1cblx0ei1pbmRleDogOTg7XG5cdGJhY2tncm91bmQ6IHZhcigtLWJyYW5kKTtcblx0Y29sb3I6IHZhcigtLWJnKTtcblx0ZGlzcGxheTogYmxvY2s7XG5cdHBvc2l0aW9uOiBmaXhlZDtcblx0Ym90dG9tOiAwO1xuXHRoZWlnaHQ6IDEwMCU7XG5cdGxlZnQ6IDA7XG5cdHdpZHRoOiAxMDB2dztcblx0cGFkZGluZzogMDtcblx0dHJhbnNpdGlvbjogYWxsIGVhc2UgNTAwbXM7XG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDB2dyk7XG5cdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0YWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG5cdCYuaXMtYWN0aXZlIHtcblx0XHRwb2ludGVyLWV2ZW50czogYXV0bztcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG5cdH1cblx0Lm1vYmlsZS1pbm5lciB7XG5cdFx0cGFkZGluZzogMS44cmVtO1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdGhlaWdodDogMTAwJTtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR9XG5cdC5tZW51LWNlbGwtY29udGFpbmVyLW91dGVyIC5tZW51LWNlbGwtY29udGFpbmVyIC5tZW51LWNlbGwtaW5uZXIgLmNlbGwtdGV4dCB7XG5cdFx0Zm9udC1zaXplOiB2YXIoLS1zaXplLXBsdXM3KTtcblx0fVxuXHQuc29jaWFsIC5tZW51LWNlbGwtY29udGFpbmVyLW91dGVyIC5tZW51LWNlbGwtY29udGFpbmVyIC5tZW51LWNlbGwtaW5uZXIgLmNlbGwtdGV4dCB7XG5cdFx0Zm9udC1zaXplOiB2YXIoLS1zaXplLXBsdXMyKTtcblx0fVxuXG5cdHVsIHtcblx0XHRsaXN0LXN0eWxlOiBub25lO1xuXHRcdHBhZGRpbmc6IDA7XG5cdFx0bWFyZ2luOiAwLjllbSAwO1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHRnYXA6IDA7XG5cdFx0bGkge1xuXHRcdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XHRcdGZvbnQtc2l6ZTogdmFyKC0tc2l6ZS1wbHVzNyk7XG5cdFx0XHQmLFxuXHRcdFx0YSB7XG5cdFx0XHRcdGNvbG9yOiB2YXIoLS1iZyk7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdCYuc29jaWFsIHtcblx0XHRcdGxpIHtcblx0XHRcdFx0Zm9udC1zaXplOiB2YXIoLS1zaXplKTtcblx0XHRcdFx0Zm9udC1zaXplOiBtYXgoMC45MjVyZW0sIHZhcigtLXNpemUpKTtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cbi5zaXRlLWZvb3RlciB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtYmcpO1xuXHQtLWFiYy1ibGFjazogdmFyKC0tdGhlbWUtZmcpO1xuXHQmX19pbm5lciB7XG5cdFx0cGFkZGluZzogM3JlbSAxLjVyZW07XG5cdFx0QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtZWRpdW0tYnJlYWtwb2ludCkge1xuXHRcdFx0cGFkZGluZzogNHZ3O1xuXHRcdH1cblx0fVxuXHQmX19jdGEge1xuXHRcdHBhZGRpbmctYm90dG9tOiA0cmVtO1xuXHRcdEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtLWJyZWFrcG9pbnQpIHtcblx0XHRcdHBhZGRpbmctYm90dG9tOiA1dnc7XG5cdFx0fVxuXHR9XG5cdCZfX2N0YS10ZXh0IHtcblx0XHRmb250LWZhbWlseTogdmFyKC0taGVhZGVyLWZvbnQpO1xuXHRcdGZvbnQtc2l6ZTogMThweDtcblx0XHRmb250LXdlaWdodDogdmFyKC0td2VpZ2h0LWxpZ2h0KTtcblx0XHRsZXR0ZXItc3BhY2luZzogdmFyKC0taGVhZGluZy10cmFja2luZyk7XG5cdFx0bGluZS1oZWlnaHQ6IHZhcigtLWJvZHktbGluZS1oZWlnaHQpO1xuXHRcdGNvbG9yOiB2YXIoLS10aGVtZS1mZywgdmFyKC0tYWJjLW9mZi13aGl0ZSkpO1xuXHRcdG1hcmdpbjogMCAwIDEuNXJlbSAwO1xuXHRcdC5idG4ge1xuXHRcdFx0Y29sb3I6IHZhcigtLWFiYy1vZmYtd2hpdGUpO1xuXHRcdH1cblx0XHRAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bS1icmVha3BvaW50KSB7XG5cdFx0XHRmb250LXNpemU6IHZhcigtLXNpemUtcGx1czIpO1xuXHRcdFx0Zm9udC13ZWlnaHQ6IHZhcigtLXdlaWdodC1ub3JtYWwpO1xuXHRcdFx0bWFyZ2luOiAwIDAgOHZ3IDA7XG5cdFx0fVxuXHR9XG5cdCZfX2N0YS1idG4ge1xuXHRcdGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7XG5cdH1cblx0Jl9fYm90dG9tIHtcblx0XHRwYWRkaW5nLXRvcDogM3JlbTtcblx0XHQ+IC5jZWxsIHtcblx0XHRcdG1hcmdpbi1ib3R0b206IDIuNXJlbTtcblx0XHR9XG5cdFx0QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtZWRpdW0tYnJlYWtwb2ludCkge1xuXHRcdFx0cGFkZGluZy10b3A6IDR2dztcblx0XHRcdD4gLmNlbGwge1xuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXHQmX19sb2dvIHtcblx0XHRhIHtcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHR9XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdHBhZGRpbmc6IDE1dncgMDtcblx0XHRpbWcsXG5cdFx0c3ZnIHtcblx0XHRcdGhlaWdodDogYXV0bztcblx0XHRcdHdpZHRoOiA1NSU7XG5cdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bS1icmVha3BvaW50KSB7XG5cdFx0XHRcdGhlaWdodDogOHZ3O1xuXHRcdFx0XHR3aWR0aDogYXV0bztcblx0XHRcdH1cblx0XHR9XG5cdFx0QG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtZWRpdW0tYnJlYWtwb2ludCkge1xuXHRcdFx0dGV4dC1hbGlnbjogbGVmdDtcblx0XHRcdHBhZGRpbmc6IDA7XG5cdFx0fVxuXHR9XG5cdCZfX2NvbCB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdGdhcDogMDtcblx0XHRwLFxuXHRcdGEge1xuXHRcdFx0Zm9udC1mYW1pbHk6IHZhcigtLWJvZHktZm9udCk7XG5cdFx0XHRmb250LXNpemU6IDEzcHg7XG5cdFx0XHRmb250LXdlaWdodDogdmFyKC0td2VpZ2h0LWJvbGQpO1xuXHRcdFx0bGluZS1oZWlnaHQ6IHZhcigtLWJvZHktbGluZS1oZWlnaHQpO1xuXHRcdFx0Y29sb3I6IHZhcigtLXRoZW1lLWZnLCB2YXIoLS1hYmMtb2ZmLXdoaXRlKSk7XG5cdFx0XHRtYXJnaW46IDA7XG5cdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0XHRAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bS1icmVha3BvaW50KSB7XG5cdFx0XHRcdGZvbnQtc2l6ZTogdmFyKC0tc2l6ZS1taW51czEpO1xuXHRcdFx0fVxuXHRcdH1cblx0XHRhIHtcblx0XHRcdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuXHRcdFx0dGV4dC11bmRlcmxpbmUtb2Zmc2V0OiAwLjJlbTtcblx0XHRcdHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyB2YXIoLS1lYXNpbmcpO1xuXHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdG9wYWNpdHk6IDAuNztcblx0XHRcdH1cblx0XHR9XG5cdFx0Ji0tbGVnYWwge1xuXHRcdFx0cCxcblx0XHRcdGEsXG5cdFx0XHQuYTExeS13aWRnZXRfX3RvZ2dsZSB7XG5cdFx0XHRcdG9wYWNpdHk6IDAuNTtcblx0XHRcdFx0dHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIHZhcigtLWVhc2luZyk7XG5cdFx0XHR9XG5cdFx0XHRhOmhvdmVyLFxuXHRcdFx0LmExMXktd2lkZ2V0X190b2dnbGU6aG92ZXIge1xuXHRcdFx0XHRvcGFjaXR5OiAxO1xuXHRcdFx0fVxuXHRcdFx0LmExMXktd2lkZ2V0X190b2dnbGUge1xuXHRcdFx0XHRmb250LWZhbWlseTogdmFyKC0tYm9keS1mb250KTtcblx0XHRcdFx0Y29sb3I6IHZhcigtLXRoZW1lLWZnLCB2YXIoLS1hYmMtb2ZmLXdoaXRlKSk7XG5cdFx0XHRcdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuXHRcdFx0XHR0ZXh0LXVuZGVybGluZS1vZmZzZXQ6IDAuMmVtO1xuXHRcdFx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0XHRcdGJhY2tncm91bmQ6IG5vbmU7XG5cdFx0XHRcdGJvcmRlcjogMDtcblx0XHRcdFx0cGFkZGluZzogMDtcblx0XHRcdFx0LmExMXktd2lkZ2V0X190b2dnbGUtdGV4dCB7XG5cdFx0XHRcdFx0Zm9udC1zaXplOiAxM3B4O1xuXHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiB2YXIoLS13ZWlnaHQtYm9sZCk7XG5cdFx0XHRcdFx0bGluZS1oZWlnaHQ6IHZhcigtLWJvZHktbGluZS1oZWlnaHQpO1xuXHRcdFx0XHRcdEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtLWJyZWFrcG9pbnQpIHtcblx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogdmFyKC0tc2l6ZS1taW51czEpO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0XHQmLS1hZGRyZXNzIHtcblx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0XHRAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bS1icmVha3BvaW50KSB7XG5cdFx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHR9XG5cdFx0fVxuXHR9IC8vIFwiU29jaWFsXCIgbXV0ZWQgbGFiZWxcblx0Jl9fc29jaWFsLWxhYmVsIHtcblx0XHRvcGFjaXR5OiAwLjU7XG5cdFx0bWFyZ2luLXRvcDogMWVtICFpbXBvcnRhbnQ7XG5cdH1cblx0Jl9fc3BhY2VyIHtcblx0XHRvcGFjaXR5OiAwO1xuXHRcdHVzZXItc2VsZWN0OiBub25lO1xuXHR9XG59XG4uYWJjLWJyYW5kLWljb24gc3ZnIHtcblx0aGVpZ2h0OiAxZW07XG59XG4iLCJcbi5wYWdlLWhlYWRlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1iZyk7XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwMHB4KSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwYWRkaW5nOiAwLjYyNXJlbSAxLjM1cmVtO1xuICAgIH1cbiAgICAuZ3JpZC14IHtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgfVxuXG4gICAgLmxvZ28ge1xuICAgICAgICBzdmcge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIH1cbiAgICB9XG59XG4ucGFnZS1oZWFkZXJfX2NlbnRlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogYmFzZWxpbmU7XG4gICAgZ2FwOiAycmVtO1xuXG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwMHB4KSB7XG4gICAgICAgIGdhcDogNHZ3O1xuICAgIH1cbn1cbi5wYWdlLWhlYWRlcl9fc3BhY2Uge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGdhcDogMnJlbTtcblxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MDBweCkge1xuICAgICAgICBnYXA6IDR2dztcbiAgICB9XG59XG5cbi5wYWdlLWhlYWRlcl9fdGl0bGUge1xuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1oZWFkZXItZm9udCk7XG4gICAgZm9udC1zaXplOiB2YXIoLS1zaXplLXBsdXMxKTtcbiAgICBmb250LXdlaWdodDogdmFyKC0td2VpZ2h0LWxpZ2h0KTtcbiAgICBsZXR0ZXItc3BhY2luZzogdmFyKC0taGVhZGluZy10cmFja2luZyk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWhlYWRlci1saW5lLWhlaWdodCk7XG4gICAgY29sb3I6IHZhcigtLXRoZW1lLWFjY2VudCwgdmFyKC0tcGxhc3Rlci1iKSk7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbi5wYWdlLWhlYWRlcl9fdG9nZ2xlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogYmFzZWxpbmU7XG4gICAgZ2FwOiAwLjVlbTtcbn1cblxuLnBhZ2UtaGVhZGVyX190b2dnbGUtbGluayB7XG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWhlYWRlci1mb250KTtcbiAgICBmb250LXNpemU6IHZhcigtLXNpemUtcGx1czEpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS13ZWlnaHQtbGlnaHQpO1xuICAgIGxldHRlci1zcGFjaW5nOiB2YXIoLS1oZWFkaW5nLXRyYWNraW5nKTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0taGVhZGVyLWxpbmUtaGVpZ2h0KTtcbiAgICBjb2xvcjogdmFyKC0tdGhlbWUtZmcsIHZhcigtLWFiYy1ibGFjaykpO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjI1cyB2YXIoLS1lYXNpbmcpO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1hY2NlbnQsIHZhcigtLXBsYXN0ZXItYikpO1xuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWFjY2VudCwgdmFyKC0tcGxhc3Rlci1iKSk7XG4gICAgfVxufVxuXG4ucGFnZS1oZWFkZXJfX3RvZ2dsZS1zZXAge1xuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1oZWFkZXItZm9udCk7XG4gICAgZm9udC1zaXplOiB2YXIoLS1zaXplLXBsdXMxKTtcbiAgICBmb250LXdlaWdodDogdmFyKC0td2VpZ2h0LWxpZ2h0KTtcbiAgICBsZXR0ZXItc3BhY2luZzogdmFyKC0taGVhZGluZy10cmFja2luZyk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWhlYWRlci1saW5lLWhlaWdodCk7XG4gICAgY29sb3I6ICNjMWFmYWY7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG59XG4ucGFnZS1oZWFkZXJfX25hdiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGdhcDogMC40NWVtO1xuXG59XG5cbi5wYWdlLWhlYWRlcl9fbmF2LWxpbmsge1xuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1oZWFkZXItZm9udCk7XG4gICAgZm9udC1zaXplOiB2YXIoLS1zaXplLXBsdXMxKTtcbiAgICBmb250LXdlaWdodDogdmFyKC0td2VpZ2h0LWxpZ2h0KTtcbiAgICBsZXR0ZXItc3BhY2luZzogdmFyKC0taGVhZGluZy10cmFja2luZyk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWhlYWRlci1saW5lLWhlaWdodCk7XG4gICAgY29sb3I6IHZhcigtLXRoZW1lLWZnLCB2YXIoLS1hYmMtYmxhY2spKTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgdHJhbnNpdGlvbjogY29sb3IgMC4yNXMgdmFyKC0tZWFzaW5nKTtcblxuICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjogdmFyKC0tdGhlbWUtYWNjZW50LCB2YXIoLS1wbGFzdGVyLWIpKTtcbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1hY2NlbnQsIHZhcigtLXBsYXN0ZXItYikpO1xuICAgIH1cbn1cbiIsIi5uZXdzLWFyY2hpdmUge1xuICAgIC0tdGhlbWUtYWNjZW50OiB2YXIoLS1ncmVlbi1iKTtcbiAgICBwYWRkaW5nLXRvcDogMS44ZW07XG4gICAgcGFkZGluZy1ib3R0b206IDZ2dztcbn1cbi5uZXdzLWFyY2hpdmUtbmF2IHtcbiAgICBwYWRkaW5nOiAwLjlyZW07XG5cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODAwcHgpIHtcbiAgICAgICAgcGFkZGluZzogMS4zNXJlbSAxLjM1cmVtIDUuNnJlbTtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgfVxuXG4gICAgJi10aXRsZSB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1oZWFkZXItZm9udCk7XG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tc2l6ZS1wbHVzMCk7XG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA4MDBweCkge1xuICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1zaXplLXBsdXMxKTtcbiAgICAgICAgfVxuICAgICAgICBmb250LXdlaWdodDogdmFyKC0td2VpZ2h0LWxpZ2h0KTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWhlYWRpbmctdHJhY2tpbmcpO1xuICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0taGVhZGVyLWxpbmUtaGVpZ2h0KTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG5cbiAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwMHB4KSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi1saW5rcyB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGdhcDogMC4zNWVtO1xuICAgIH1cblxuICAgICYtbGluayB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1oZWFkZXItZm9udCk7XG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tc2l6ZS1wbHVzMSk7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS13ZWlnaHQtbGlnaHQpO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogdmFyKC0taGVhZGluZy10cmFja2luZyk7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1oZWFkZXItbGluZS1oZWlnaHQpO1xuICAgICAgICBjb2xvcjogdmFyKC0tYWJjLWJsYWNrKTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjI1cyB2YXIoLS1lYXNpbmcpO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWFjY2VudCk7XG4gICAgICAgIH1cblxuICAgICAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tdGhlbWUtYWNjZW50KTtcbiAgICAgICAgfVxuICAgIH1cbn1cbi5uZXdzLWFyY2hpdmUtaXRlbXMge1xuICAgIC5uZXdzLWFydGljbGUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuXG4gICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MDBweCkge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNHZ3O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ubmV3cy1hcnRpY2xlLWlubmVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgY29sb3I6IGluaGVyaXQ7XG5cbiAgICAuZmxleC1pbWFnZSB7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5uZXdzLWFydGljbGUtY2lyY2xlIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIH1cbn1cblxuLy8gQ2lyY2xlLW9uLWhvdmVyIGVmZmVjdCBvbmx5IGFwcGxpZXMgdG8gbm9uLWxlZ2FjeSBwb3N0cy5cbi5uZXdzLWFydGljbGU6bm90KC5uZXdzLWFydGljbGUtLWxlZ2FjeSkge1xuICAgIC5uZXdzLWFydGljbGUtaW5uZXIge1xuICAgICAgICAuZmxleC1pbWFnZSB7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYm9yZGVyLXJhZGl1cyA0MDBtcyBjdWJpYy1iZXppZXIoMC4yNSwgMC40NiwgMC40NSwgMC45NCk7XG4gICAgICAgIH1cblxuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmOmZvY3VzLXZpc2libGUge1xuICAgICAgICAgICAgLmZsZXgtaW1hZ2Uge1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLm5ld3MtYXJ0aWNsZS10aXRsZSB7XG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWhlYWRlci1mb250KTtcbiAgICBmb250LXdlaWdodDogdmFyKC0td2VpZ2h0LWxpZ2h0KTtcbiAgICBsZXR0ZXItc3BhY2luZzogdmFyKC0taGVhZGluZy10cmFja2luZyk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWhlYWRlci1saW5lLWhlaWdodCk7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgbWFyZ2luOiAwLjc1cmVtIDAgMC41cmVtO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tc2l6ZS1wbHVzMCk7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDgwMHB4KSB7XG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tc2l6ZS1wbHVzMSk7XG4gICAgfVxuXG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwMHB4KSB7XG4gICAgICAgIGZvbnQtc2l6ZTogY2FsYyh2YXIoLS1zaXplLXBsdXMxKSAqIDEuNik7XG4gICAgICAgIG1hcmdpbjogMXZ3IDAgMC41dnc7XG4gICAgfVxufVxuXG4ubmV3cy1hcnRpY2xlLW1ldGEge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZ2FwOiAwLjVyZW07XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBtYXJnaW4tdG9wOiAwLjI1cmVtO1xuICAgIC5idG4ge1xuICAgICAgICBmb250LXNpemU6IHZhcigtLXNpemUtbWludXMyKTtcbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDgwMHB4KSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHZhcigtLXNpemUtcGx1czApO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5uZXdzLWFydGljbGUtY2F0IHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS10aGVtZS1hY2NlbnQpO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1hY2NlbnQpO1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWJnLCB2YXIoLS1hYmMtb2ZmLXdoaXRlKSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubmV3cy1hcnRpY2xlLW1vcmUge1xuICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLXRoZW1lLWFjY2VudCk7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcblxuICAgICAgICAmW2FyaWEtZXhwYW5kZWQ9XCJ0cnVlXCJdIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWFjY2VudCk7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tYWJjLW9mZi13aGl0ZSk7XG4gICAgICAgIH1cbiAgICB9XG59XG4ubmV3cy1hcnRpY2xlLWV4cGFuZCB7XG4gICAgbWFyZ2luLXRvcDogMnJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMnJlbTtcblxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MDBweCkge1xuICAgICAgICBtYXJnaW4tdG9wOiAzdnc7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAzdnc7XG4gICAgfVxuXG4gICAgJi1ib2R5IHtcbiAgICAgICAgaDEsXG4gICAgICAgIGgyLFxuICAgICAgICBoMyxcbiAgICAgICAgaDQsXG4gICAgICAgIGg1LFxuICAgICAgICBoNiB7XG4gICAgICAgICAgICBmb250LXNpemU6IHZhcigtLXNpemUtcGx1czIpO1xuICAgICAgICAgICAgbWFyZ2luOiAwLjQ1ZW0gMCAwLjllbSAwO1xuICAgICAgICB9XG4gICAgICAgIHAsXG4gICAgICAgIGxpLFxuICAgICAgICB1bCxcbiAgICAgICAgb2wge1xuICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1zaXplLW1pbnVzMSk7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwLjQ1cmVtO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMC40NXJlbTtcbiAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA4MDBweCkge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tc2l6ZS1wbHVzMSk7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjI1ZW07XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBmb250LXdlaWdodDogdmFyKC0td2VpZ2h0LWxpZ2h0KTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LWxpbmUtaGVpZ2h0KTtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiB2YXIoLS1oZWFkaW5nLXRyYWNraW5nKTtcbiAgICAgICAgfVxuICAgICAgICB1bCB7XG4gICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIH1cbiAgICAgICAgdWwgbGkge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxLjI1ZW07XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiBjYWxjKHZhcigtLWJvZHktbGluZS1oZWlnaHQpICogMC41ZW0pO1xuXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwi4oCTXCI7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGEge1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgICB0ZXh0LXVuZGVybGluZS1vZmZzZXQ6IDAuMTVlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5uZXdzLWFydGljbGUtc2luZ2xlLWNvbnRlbnQge1xuICAgIG1hcmdpbi10b3A6IDJyZW07XG5cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODAwcHgpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogM3Z3O1xuICAgIH1cbn1cbi5uZXdzLXNpbmdsZSB7XG4gICAgLm5ld3MtYXJ0aWNsZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxufVxuIiwiLmFyY2hpdmUtcHJvamVjdCB7XG4gICAgLS10aGVtZS1hY2NlbnQ6IHZhcigtLXBsYXN0ZXItYik7XG4gICAgcGFkZGluZy1ib3R0b206IDZ2dztcbn1cbi5wcm9qZWN0LWdyaWQtaXRlbXMge1xuICAgIHBhZGRpbmctdG9wOiAycmVtO1xuXG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwMHB4KSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAzdnc7XG4gICAgfVxufVxuXG4ucHJvamVjdC1ncmlkLWNhcmQge1xuICAgIG1hcmdpbi1ib3R0b206IDNyZW07XG5cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODAwcHgpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNy4ycmVtO1xuICAgIH1cblxuICAgICZfX2xpbmsge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cblxuICAgICZfX2ltYWdlIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi0tc2hvcnQgLnByb2plY3QtZ3JpZC1jYXJkX19pbWFnZSB7XG4gICAgICAgIGhlaWdodDogNjB2dztcblxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODAwcHgpIHtcbiAgICAgICAgICAgIGhlaWdodDogMjh2dztcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtLXRhbGwgLnByb2plY3QtZ3JpZC1jYXJkX19pbWFnZSB7XG4gICAgICAgIGhlaWdodDogODB2dztcblxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODAwcHgpIHtcbiAgICAgICAgICAgIGhlaWdodDogNDUuNHZ3O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9faW5mbyB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxcmVtO1xuXG4gICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MDBweCkge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDEuMnZ3O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fY2xpZW50IHtcbiAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWJvZHktZm9udCk7XG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLXdlaWdodC1saWdodCk7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LWxpbmUtaGVpZ2h0KTtcbiAgICAgICAgbWFyZ2luOiAwIDAgMC4xNWVtO1xuICAgICAgICBmb250LXNpemU6IHZhcigtLXNpemUtbWludXMyKTtcbiAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwMHB4KSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHZhcigtLXNpemUtcGx1czApO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fdGl0bGUge1xuICAgICAgICBmb250LWZhbWlseTogdmFyKC0taGVhZGVyLWZvbnQpO1xuICAgICAgICBmb250LXNpemU6IHZhcigtLXNpemUtcGx1czApO1xuICAgICAgICBtYXJnaW46IDAuMzI1ZW0gMCAwLjYyNWVtIDA7XG5cbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDgwMHB4KSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHZhcigtLXNpemUtcGx1czIpO1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgMC41ZW07XG4gICAgICAgIH1cbiAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLXdlaWdodC1saWdodCk7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiB2YXIoLS1oZWFkaW5nLXRyYWNraW5nKTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWhlYWRlci1saW5lLWhlaWdodCk7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgIH1cblxuICAgICZfX2J0biB7XG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tc2l6ZS1taW51czIpO1xuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogODAwcHgpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tc2l6ZS1wbHVzMCk7XG4gICAgICAgIH1cbiAgICB9XG59XG4ucHJvamVjdC1saXN0LWNvbnRhaW5lciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctdG9wOiAycmVtO1xuXG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwMHB4KSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAzdnc7XG4gICAgfVxufVxuXG4ucHJvamVjdC1saXN0LWl0ZW1zIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5wcm9qZWN0LWxpc3Qtcm93IHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tYmxhY2stMTUpO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBlYXNlO1xuXG4gICAgJl9faW5uZXIge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogYmFzZWxpbmU7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgcGFkZGluZzogMXJlbSAwO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIGNvbG9yOiBpbmhlcml0O1xuXG4gICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MDBweCkge1xuICAgICAgICAgICAgcGFkZGluZzogMS4xdncgMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3RpdGxlIHtcbiAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWhlYWRlci1mb250KTtcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1zaXplLXBsdXMyKTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLXdlaWdodC1saWdodCk7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiB2YXIoLS1oZWFkaW5nLXRyYWNraW5nKTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWhlYWRlci1saW5lLWhlaWdodCk7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgfVxuXG4gICAgJl9fY2xpZW50IHtcbiAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWJvZHktZm9udCk7XG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLXdlaWdodC1saWdodCk7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LWxpbmUtaGVpZ2h0KTtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODAwcHgpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tc2l6ZS1wbHVzMCk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5wcm9qZWN0LWxpc3QtaXRlbXM6aG92ZXIgLnByb2plY3QtbGlzdC1yb3cge1xuICAgIG9wYWNpdHk6IDAuMztcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZTtcbn1cblxuLnByb2plY3QtbGlzdC1pdGVtczpob3ZlciAucHJvamVjdC1saXN0LXJvdzpob3ZlciB7XG4gICAgb3BhY2l0eTogMTtcbn1cblxuLnByb2plY3QtbGlzdC1tZWRpYXMgaW1nIHtcbiAgICB3aWR0aDogMXB4O1xuICAgIGhlaWdodDogMXB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi5wcm9qZWN0LWxpc3QtbWVkaWEtY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDE1LjZ2dztcbiAgICBoZWlnaHQ6IDE1LjZ2dztcbiAgICBsZWZ0OiBjYWxjKDY2LjY2NiUgLSA3Ljh2dyk7XG4gICAgdG9wOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB6LWluZGV4OiAxMDtcblxuICAgICYub24ge1xuICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIH1cblxuICAgIGRpdiB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtMTAwJSk7XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgOTAlKTtcbiAgICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA4MDBweCkge1xuICAgIC5wcm9qZWN0LWxpc3QtbWVkaWEtY29udGFpbmVyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG59XG4ucHJvamVjdC1zaW5nbGUge1xuICAgIC0tdGhlbWUtYWNjZW50OiB2YXIoLS1wbGFzdGVyLWIpO1xuICAgIHBhZGRpbmctYm90dG9tOiA2dnc7XG5cbiAgICAmX190aXRsZSB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1oZWFkZXItZm9udCk7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS13ZWlnaHQtbGlnaHQpO1xuICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiB2YXIoLS1oZWFkaW5nLXRyYWNraW5nKTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWhlYWRlci1saW5lLWhlaWdodCk7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMS41cmVtIDAgMXJlbTtcblxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODAwcHgpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tc2l6ZS1wbHVzNSk7XG4gICAgICAgICAgICBwYWRkaW5nOiAxLjV2dyAwIDF2dztcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2hlcm8ge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICBpbWcsXG4gICAgICAgIHZpZGVvIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiA2MHZ3O1xuICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwMHB4KSB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA2OS4ydnc7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX190ZXh0IHtcbiAgICAgICAgcGFkZGluZy10b3A6IDJyZW07XG5cbiAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwMHB4KSB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogNnZ3O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fbmFtZSxcbiAgICAmX19jbGllbnQsXG4gICAgJl9fbG9jYXRpb24ge1xuICAgICAgICBmb250LWZhbWlseTogdmFyKC0tYm9keS1mb250KTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLXdlaWdodC1saWdodCk7XG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktbGluZS1oZWlnaHQpO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogdmFyKC0taGVhZGluZy10cmFja2luZyk7XG4gICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODAwcHgpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tc2l6ZS1wbHVzMik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19uYW1lIHtcbiAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWFjY2VudCk7XG4gICAgfVxuXG4gICAgJl9fY29udGVudCB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1ib2R5LWZvbnQpO1xuICAgICAgICBmb250LXdlaWdodDogdmFyKC0td2VpZ2h0LWxpZ2h0KTtcbiAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1saW5lLWhlaWdodCk7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiB2YXIoLS1oZWFkaW5nLXRyYWNraW5nKTtcbiAgICAgICAgcGFkZGluZy10b3A6IDEuNXJlbTtcblxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODAwcHgpIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgdWwsXG4gICAgICAgIG9sLFxuICAgICAgICBwIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFlbTtcbiAgICAgICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MDBweCkge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tc2l6ZS1wbHVzMik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19nYWxsZXJ5IHtcbiAgICAgICAgcGFkZGluZy10b3A6IDJyZW07XG5cbiAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwMHB4KSB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogNnZ3O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fZ2FsbGVyeS1yb3cge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBnYXA6IDFyZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG5cbiAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwMHB4KSB7XG4gICAgICAgICAgICBnYXA6IDAuOTN2dztcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuOTN2dztcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2dhbGxlcnktaXRlbSB7XG4gICAgICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB9XG5cbiAgICAmX19nYWxsZXJ5LWltZyB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAmX19xdW90ZS13cmFwIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDJyZW07XG5cbiAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwMHB4KSB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogNnZ3O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fcXVvdGUtdGV4dCB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcXVvdGVzOiBub25lO1xuXG4gICAgICAgIHAge1xuICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1zaXplLXBsdXMwKTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1oZWFkZXItbGluZS1oZWlnaHQpO1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWhlYWRpbmctdHJhY2tpbmcpO1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgMC45ZW07XG5cbiAgICAgICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MDBweCkge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tc2l6ZS1wbHVzMik7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3F1b3RlLWNpdGUge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgICBmb250LXNpemU6IHZhcigtLXNpemUtbWludXMxKTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWhlYWRpbmctdHJhY2tpbmcpO1xuICAgICAgICBtYXJnaW4tdG9wOiAxLjJlbTtcbiAgICAgICAgb3BhY2l0eTogMC43O1xuICAgIH1cbn1cbiIsIi8vIOKUgOKUgCBDb250YWN0IE1vZGFsIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuLy8gRnVsbC12aWV3cG9ydCBvdmVybGF5LCBvcGVuZWQgZnJvbSB0aGUgXCJDb250YWN0XCIgbmF2IGl0ZW0uXG4vLyBJbmhlcml0cyAtLXRoZW1lLWJnIC8gLS10aGVtZS1mZyAvIC0tdGhlbWUtYWNjZW50IGZyb20gaXRzIGFuY2VzdG9yLCBzb1xuLy8gaXQgbWF0Y2hlcyB0aGUgcGFnZSBjdXJyZW50bHkgYmVpbmcgdmlld2VkLlxuXG4uY29udGFjdC1tb2RhbCB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIGluc2V0OiAwO1xuICAgIHotaW5kZXg6IDEwMDA7IC8vIGFib3ZlIG5hdiNwcmltYXJ5XG4gICAgZGlzcGxheTogbm9uZTsgLy8gSlMgc2V0cyBkaXNwbGF5OmZsZXhcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgICZbYXJpYS1oaWRkZW49XCJ0cnVlXCJdIHtcbiAgICAgICAgLy8gdmlzdWFsIHN0YXRlIGhhbmRsZWQgYnkgSlMgKEdTQVApIOKAlCBrZWVwIGZvciBhMTF5IGNvbnRyYWN0IG9ubHlcbiAgICB9XG5cbiAgICAmX19tYXNrIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBpbnNldDogMDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjQpO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuXG4gICAgJl9faW5uZXIge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWJnKTtcbiAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWZnKTtcbiAgICAgICAgLy8gVG9wIHBhZGRpbmcgbWF0Y2hlcyAucGFnZS1oZWFkZXIgc28gaGVhZGluZyBhbGlnbnMgd2l0aCAucGFnZS1oZWFkZXJfX3RpdGxlLlxuICAgICAgICAvLyBCb3R0b20gcGFkZGluZyA9IGhlYWRlciBsb2dvIGhlaWdodCAoMS44cmVtKSBzbyB0aGUgYm90dG9tIG9mIHRoZSBib2R5IHNpdHNcbiAgICAgICAgLy8gYSBsb2dvLWhlaWdodCBhYm92ZSB0aGUgbW9kYWwgZWRnZS5cbiAgICAgICAgcGFkZGluZzogMC45ZW0gMC45ZW0gMS44cmVtO1xuICAgICAgICBvdmVyZmxvdy15OiBhdXRvO1xuXG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA4MDBweCkge1xuICAgICAgICAgICAgcGFkZGluZzogMC42MjVlbSAxLjM1cmVtIDEuOHJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEdsb2JhbCBoMi9hLy5idG4gcnVsZXMgaGFyZGNvZGUgdmFyKC0tYmxhY2spOyBmb3JjZSB0aGVtZSBjb2xvdXJcbiAgICAgICAgLy8gc28gY29udGVudCBpcyBsZWdpYmxlIG9uIGRhcmstdGhlbWVkIG1vZGFsIGJhY2tncm91bmRzLlxuICAgICAgICBoMSxcbiAgICAgICAgaDIsXG4gICAgICAgIGgzLFxuICAgICAgICBoNCxcbiAgICAgICAgaDUsXG4gICAgICAgIGg2LFxuICAgICAgICBhLFxuICAgICAgICBwIHtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1mZyk7XG4gICAgICAgIH1cblxuICAgICAgICAuYnRuIHtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10aGVtZS1mZyk7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLXRoZW1lLWFjY2VudCk7XG5cbiAgICAgICAgICAgIC8vIEhvdmVyIGZpbGxzIHdpdGggYWNjZW50IOKAlCBwaWNrIGEgZmcgdGhhdCBjb250cmFzdHMgdGhlIGFjY2VudC5cbiAgICAgICAgICAgIC8vIE9uIGRhcmsgdGhlbWVzIGFjY2VudCBpcyBwbGFzdGVyLWIgKGNvcmFsKSBhbmQgYmxhY2sgdGV4dCB3b3Jrcy5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1hYmMtYmxhY2spO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWFjY2VudCk7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS10aGVtZS1hY2NlbnQpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gUG9zaXRpb24gKyBzaXppbmcgbWF0Y2ggLmhlYWRlci10b2dnbGUgaW4gdGhlIHNpdGUgaGVhZGVyIHNvIHRoZSBjbG9zZVxuICAgIC8vIHNpdHMgZXhhY3RseSB3aGVyZSB0aGUgaGFtYnVyZ2VyL2Nyb3NzIHdvdWxkIGJlIHdoZW4gdGhlIG5hdiBpcyBvcGVuLlxuICAgICZfX2Nsb3NlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDAuOWVtO1xuICAgICAgICByaWdodDogMC45ZW07XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA4MDBweCkge1xuICAgICAgICAgICAgdG9wOiAwLjllbTtcbiAgICAgICAgICAgIHJpZ2h0OiAwLjllbTtcbiAgICAgICAgfVxuXG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgICB3aWR0aDogMi40cmVtO1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cblxuICAgICAgICAmOmhvdmVyIHN2ZyB7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tdGhlbWUtYWNjZW50KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFdob2xlIGNvbHVtbjogNSBjb2xzIG9mZnNldCA2IG9uIGRlc2t0b3AgKEZvdW5kYXRpb24gZ3JpZCBwcm9wb3J0aW9ucykuXG4gICAgLy8gSGVhZGluZyBzaXRzIGF0IHRoZSBzYW1lIHZlcnRpY2FsIHBvc2l0aW9uIGFzIC5wYWdlLWhlYWRlcl9fdGl0bGUuXG4gICAgLy8gQ29udGVudCBiZWxvdyB0aGUgaGVhZGluZyBpcyBwdXNoZWQgdG8gdGhlIGJvdHRvbSBvZiB0aGUgbW9kYWwuXG4gICAgJl9fYm9keSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGdhcDogMjRweDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGZsZXg6IDE7XG4gICAgICAgIG1hcmdpbjogMTAwcHggMCAwOyAvLyBtYXRjaGVzIC5uYXYtbWVudS0tbW9iaWxlIHBhZGRpbmctdG9wXG5cbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDgwMHB4KSB7XG4gICAgICAgICAgICBnYXA6IDEuNXZ3O1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDsgLy8gaGVhZGluZyBhbGlnbnMgd2l0aCAucGFnZS1oZWFkZXJfX3RpdGxlXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogNTAlO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA0MS42NjY2JTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFB1c2ggZXZlcnl0aGluZyBiZWxvdyB0aGUgaGVhZGluZyB0byB0aGUgYm90dG9tIG9mIHRoZSBjb2x1bW5cbiAgICAgICAgLmNvbnRhY3QtbW9kYWxfX2hlYWRpbmcgKyAqIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IGF1dG87XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBIZWFkaW5nIGJlaGF2ZXMgZXhhY3RseSBsaWtlIHRoZSBmaXJzdCBuYXYgaXRlbSDigJQgc2FtZSBzaXplLCB3ZWlnaHQsXG4gICAgLy8gYW5kIHNpdHMgYXQgdGhlIHRvcCBvZiB0aGUgb2Zmc2V0IGNvbHVtbi5cbiAgICAmX19oZWFkaW5nIHtcbiAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWhlYWRlci1mb250KTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLXdlaWdodC1saWdodCk7XG4gICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktbGluZS1oZWlnaHQpO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogdmFyKC0taGVhZGluZy10cmFja2luZyk7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgY29sb3I6IHZhcigtLXRoZW1lLWZnKTtcblxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogODAwcHgpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tc2l6ZS1wbHVzMSk7XG4gICAgICAgICAgICBmb250LXdlaWdodDogdmFyKC0td2VpZ2h0LW5vcm1hbCk7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0taGVhZGVyLWxpbmUtaGVpZ2h0KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2xpbmUge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1oZWFkZXItZm9udCk7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS13ZWlnaHQtbGlnaHQpO1xuICAgICAgICBmb250LXNpemU6IHZhcigtLXNpemUtcGx1czIpO1xuICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0taGVhZGVyLWxpbmUtaGVpZ2h0KTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWhlYWRpbmctdHJhY2tpbmcpO1xuXG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA4MDBweCkge1xuICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1zaXplLXBsdXMzKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbi1jb2xvcjogdmFyKC0tcGxhc3Rlci1iKTtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbi10aGlja25lc3M6IDFweDtcbiAgICAgICAgICAgIHRleHQtdW5kZXJsaW5lLW9mZnNldDogMC4xNWVtO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjpcbiAgICAgICAgICAgICAgICBjb2xvciAwLjJzIHZhcigtLWVhc2luZyksXG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yIDAuMnMgdmFyKC0tZWFzaW5nKTtcblxuICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXBsYXN0ZXItYik7XG4gICAgICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3NvY2lhbHMge1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBtYXJnaW46IDI0cHggMCAwO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIGdhcDogMTJweDtcblxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogODAwcHgpIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDJ2dztcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3NvY2lhbC1pdGVtIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgfVxuXG4gICAgJl9fc29jaWFsIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGdhcDogOHB4O1xuXG4gICAgICAgIC5jb250YWN0LW1vZGFsX19zb2NpYWwtaWNvbiBzdmcge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB3aWR0aDogMTZweDtcbiAgICAgICAgICAgIGhlaWdodDogMTZweDtcbiAgICAgICAgICAgIGNvbG9yOiBjdXJyZW50Q29sb3I7XG4gICAgICAgICAgICBmaWxsOiBjdXJyZW50Q29sb3I7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIEhpZGUgaG9yaXpvbnRhbCBzY3JvbGwgd2hpbGUgbW9kYWwgaXMgb3BlblxuYm9keS5pcy1jb250YWN0LW9wZW4ge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAvLyBTaXRlIGxvZ28gc3RheXMgdmlzaWJsZSBhYm92ZSB0aGUgbW9kYWwuIFRoZSBoZWFkZXIgbm9ybWFsbHkgc2l0cyBhdFxuICAgIC8vIHotaW5kZXggOTk5IChiZWxvdyB0aGUgbW9kYWwgYXQgMTAwMCkgYW5kIGl0cyBsb2dvIGZhZGVzIHRvIG9wYWNpdHkgMFxuICAgIC8vIGF0IHRoZSB0b3Agb2YgdGhlIHBhZ2Ug4oCUIG5laXRoZXIgaXMgd2hhdCB3ZSB3YW50IHdoaWxlIHRoZSBtb2RhbCBpcyBvcGVuLlxuICAgIGhlYWRlciNuYXZpZ2F0aW9uIHtcbiAgICAgICAgei1pbmRleDogMTAwMTtcbiAgICAgICAgLS1ibGFjazogdmFyKC0tYWJjLW9mZi13aGl0ZSk7IC8vIGxpZ2h0IHRleHQgb24gdGhlIG1vZGFsJ3MgZGFyayBiZ1xuXG4gICAgICAgIC5sb2dvIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBIYW1idXJnZXIgd291bGQgdmlzdWFsbHkgY2xhc2ggd2l0aCB0aGUgbW9kYWwncyBjbG9zZSBidXR0b24uXG4gICAgICAgIC5oZWFkZXItdG9nZ2xlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIuYmxvY2stYWJvdXQtY3RhIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtYmdhbHQsIHZhcigtLWdyZWVuLWEpKTtcbiAgcGFkZGluZzogOXZ3IDAgNnZ3O1xuICBoMyB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1zaXplLXBsdXMyKTtcbiAgICBtYXJnaW46IDA7XG4gIH1cbiAgJl9fZXllYnJvdyB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1zaXplLXBsdXMyKTtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1oZWFkZXItbGluZS1oZWlnaHQpO1xuICAgIGxldHRlci1zcGFjaW5nOiB2YXIoLS1oZWFkaW5nLXRyYWNraW5nKTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBiYXNlbGluZTtcbiAgICBnYXA6IDAuNGVtO1xuICAgIHBhZGRpbmctdG9wOiAwLjE1ZW07XG5cbiAgICAuYWJjLWJyYW5kLWljb24ge1xuICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgIHN2ZyB7XG4gICAgICAgIHdpZHRoOiAxLjJ2dztcbiAgICAgICAgaGVpZ2h0OiAxLjJ2dztcbiAgICAgICAgbWluLXdpZHRoOiAxNnB4O1xuICAgICAgICBtaW4taGVpZ2h0OiAxNnB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5hYm91dC1jdGFfX2l0ZW0ge1xuICAgIC5mbGV4LWltYWdlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEuNXZ3O1xuXG4gICAgICBpbWcge1xuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5hYm91dC1jdGFfX2l0ZW0tbGluayB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIC5hYm91dC1jdGFfX2l0ZW0tbGFiZWwge1xuICAgICAgZm9udC1zaXplOiB2YXIoLS1zaXplLXBsdXMyKTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICBsaW5lLWhlaWdodDogdmFyKC0taGVhZGVyLWxpbmUtaGVpZ2h0KTtcbiAgICAgIGxldHRlci1zcGFjaW5nOiB2YXIoLS1oZWFkaW5nLXRyYWNraW5nKTtcbiAgICB9XG4gIH1cblxuICAuZ3JpZC14LmdyaWQtbWFyZ2luLXgge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3OTlweCkge1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgICAgc2Nyb2xsLXNuYXAtdHlwZTogeCBtYW5kYXRvcnk7XG4gICAgICBtYXJnaW4tbGVmdDogLTEuNXJlbTtcbiAgICAgIG1hcmdpbi1yaWdodDogLTEuNXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMS41cmVtO1xuICAgICAgcGFkZGluZy1yaWdodDogMS41cmVtO1xuICAgICAgc2Nyb2xsYmFyLXdpZHRoOiBub25lO1xuXG4gICAgICAmOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgID4gLmNlbGwge1xuICAgICAgICBmbGV4OiAwIDAgNzV2dztcbiAgICAgICAgbWF4LXdpZHRoOiA3NXZ3O1xuICAgICAgICBzY3JvbGwtc25hcC1hbGlnbjogc3RhcnQ7XG4gICAgICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuXG4gICAgICAgICY6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAxLjhyZW07XG4gICAgICAgIH1cbiAgICAgICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDEuOHJlbTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBtZWRpYSAobWF4LXdpZHRoOiA4MDBweCkge1xuICAgIHBhZGRpbmc6IDNyZW0gMCAyLjVyZW07XG5cbiAgICAmX19pdGVtIHtcbiAgICAgIC5mbGV4LWltYWdlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMC43NXJlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi5ibG9jay1hYm91dC1zY2F0dGVyZWQtcmVwZWF0ZXIge1xuICAtLXRoZW1lLWFjY2VudDogdmFyKC0tZ3JlZW4tYik7XG59XG5cbi5zY2F0dGVyZWQtZ3JpZCB7XG4gIHBhZGRpbmc6IDAgMC45cmVtO1xufVxuXG4uc2NhdHRlcmVkLWl0ZW0ge1xuICBtYXJnaW4tYm90dG9tOiAzcmVtO1xuXG4gIEBtZWRpYSAobWF4LXdpZHRoOiA4MDBweCkge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS10aGVtZS1hY2NlbnQpO1xuICAgIHBhZGRpbmctdG9wOiAwLjllbTtcbiAgICBtYXJnaW4tdG9wOiAwLjllbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi5zY2F0dGVyZWQtaXRlbS1yZXZlYWwge1xuICBAbWVkaWEgKG1heC13aWR0aDogODAwcHgpIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG59XG5cbi5zY2F0dGVyZWQtaXRlbS1oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogYmFzZWxpbmU7XG4gIGdhcDogMC40ZW07XG4gIG1hcmdpbi1ib3R0b206IDAuNzVlbTtcblxuICAuYWJjLWJyYW5kLWljb24ge1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICBzdmcge1xuICAgICAgd2lkdGg6IDEuMnZ3O1xuICAgICAgaGVpZ2h0OiAxLjJ2dztcbiAgICAgIG1pbi13aWR0aDogMTZweDtcbiAgICAgIG1pbi1oZWlnaHQ6IDE2cHg7XG4gICAgfVxuICB9XG59XG5cbi5zY2F0dGVyZWQtaXRlbS1oZWFkaW5nIHtcbiAgZm9udC1zaXplOiB2YXIoLS1zaXplLXBsdXMyKTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWhlYWRlci1saW5lLWhlaWdodCk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1oZWFkaW5nLXRyYWNraW5nKTtcbiAgbWFyZ2luOiAwO1xufVxuXG4uc2NhdHRlcmVkLWl0ZW0taW1hZ2VsaW5rIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLnNjYXR0ZXJlZC1pdGVtIC5mbGV4LWltYWdlIHtcbiAgbWFyZ2luLWJvdHRvbTogMC43NWVtO1xuXG4gIGltZyB7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG59XG5cbi5zY2F0dGVyZWQtaXRlbS10ZXh0IHtcbiAgZm9udC1zaXplOiB2YXIoLS1zaXplLXBsdXMyKTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktbGluZS1oZWlnaHQpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0taGVhZGluZy10cmFja2luZyk7XG4gIG1hcmdpbi1ib3R0b206IDAuNzVlbTtcblxuICBwIHtcbiAgICBtYXJnaW46IDA7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDgwMHB4KSB7XG4gIC5zY2F0dGVyZWQtZ3JpZCB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgxMiwgMWZyKTtcbiAgICBncmlkLWF1dG8tZmxvdzogZGVuc2U7XG4gICAgY29sdW1uLWdhcDogMS41cmVtO1xuICAgIHJvdy1nYXA6IDEydnc7XG4gICAgcGFkZGluZzogMCAxLjM1cmVtO1xuICB9XG5cbiAgLnNjYXR0ZXJlZC1pdGVtIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgJjpudGgtY2hpbGQoN24rMSkgeyBncmlkLWNvbHVtbjogMSAvIHNwYW4gNDsgfVxuICAgICY6bnRoLWNoaWxkKDduKzIpIHsgZ3JpZC1jb2x1bW46IDcgLyBzcGFuIDQ7IHBhZGRpbmctdG9wOiAyM3Z3OyB9XG4gICAgJjpudGgtY2hpbGQoN24rMykgeyBncmlkLWNvbHVtbjogMyAvIHNwYW4gNjsgfVxuICAgICY6bnRoLWNoaWxkKDduKzQpIHsgZ3JpZC1jb2x1bW46IDEgLyBzcGFuIDQ7IH1cbiAgICAmOm50aC1jaGlsZCg3bis1KSB7IGdyaWQtY29sdW1uOiA4IC8gc3BhbiA0OyBwYWRkaW5nLXRvcDogMjl2dzsgfVxuICAgICY6bnRoLWNoaWxkKDduKzYpIHsgZ3JpZC1jb2x1bW46IDMgLyBzcGFuIDY7IH1cbiAgICAmOm50aC1jaGlsZCg3bis3KSB7IGdyaWQtY29sdW1uOiA3IC8gc3BhbiA0OyB9XG4gIH1cblxuICAuc2NhdHRlcmVkLWl0ZW06bnRoLWNoaWxkKDduKzMpIC5mbGV4LWltYWdlLFxuICAuc2NhdHRlcmVkLWl0ZW06bnRoLWNoaWxkKDduKzYpIC5mbGV4LWltYWdlIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNjYlO1xuICB9XG5cbiAgLnNjYXR0ZXJlZC1pdGVtIC5mbGV4LWltYWdlIGltZyB7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNHMgY3ViaWMtYmV6aWVyKDAuMjMsIDEsIDAuMzIsIDEpO1xuICB9XG5cbiAgLnNjYXR0ZXJlZC1pdGVtLWltYWdlbGluazpob3ZlciAuZmxleC1pbWFnZSBpbWcge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wMyk7XG4gIH1cbn1cbiIsIlxuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6IFwiT3BlbkR5c2xleGljXCI7XG4gICAgc3JjOlxuICAgICAgICB1cmwoXCIuLi9mb250cy9vcGVuZHlzbGV4aWMvb3BlbmR5c2xleGljLWxhdGluLTQwMC1ub3JtYWwud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksXG4gICAgICAgIHVybChcIi4uL2ZvbnRzL29wZW5keXNsZXhpYy9vcGVuZHlzbGV4aWMtbGF0aW4tNDAwLW5vcm1hbC53b2ZmXCIpIGZvcm1hdChcIndvZmZcIik7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC1kaXNwbGF5OiBzd2FwO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogXCJPcGVuRHlzbGV4aWNcIjtcbiAgICBzcmM6XG4gICAgICAgIHVybChcIi4uL2ZvbnRzL29wZW5keXNsZXhpYy9vcGVuZHlzbGV4aWMtbGF0aW4tNzAwLW5vcm1hbC53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSxcbiAgICAgICAgdXJsKFwiLi4vZm9udHMvb3BlbmR5c2xleGljL29wZW5keXNsZXhpYy1sYXRpbi03MDAtbm9ybWFsLndvZmZcIikgZm9ybWF0KFwid29mZlwiKTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LWRpc3BsYXk6IHN3YXA7XG59XG5odG1sLmExMXktaGlnaC1jb250cmFzdCB7XG4gICAgYm9keSB7XG4gICAgICAgIGNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7XG4gICAgICAgIGJhY2tncm91bmQ6ICNmZmYgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAqOm5vdCguYTExeS1tb2RhbCk6bm90KC5hMTF5LW1vZGFsICopIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgW2RhdGEtdGhlbWVdIHtcbiAgICAgICAgLS10aGVtZS1iZzogI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgICAtLXRoZW1lLWZnOiAjMDAwICFpbXBvcnRhbnQ7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICAgICAgY29sb3I6ICMwMDAgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBbZGF0YS10aGVtZT1cImdyZWVuLWRhcmtcIl0sXG4gICAgW2RhdGEtdGhlbWU9XCJibGFja1wiXSxcbiAgICBbZGF0YS10aGVtZT1cImdyZWVuLWNcIl0sXG4gICAgW2RhdGEtdGhlbWU9XCJ3aW5lLWNcIl0sXG4gICAgW2RhdGEtdGhlbWU9XCJzdW4tY1wiXSxcbiAgICBbZGF0YS10aGVtZT1cImJsdWUtY1wiXSB7XG4gICAgICAgIC0tdGhlbWUtYmc6ICMwMDAgIWltcG9ydGFudDtcbiAgICAgICAgLS10aGVtZS1mZzogI2ZmZiAhaW1wb3J0YW50O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7XG4gICAgICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgICAgZmlsdGVyOiBjb250cmFzdCgxLjIpO1xuICAgIH1cblxuICAgIGEge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuaHRtbC5hMTF5LWR5c2xleGljLWZvbnQge1xuICAgICYsXG4gICAgYm9keSxcbiAgICAqIHtcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiT3BlbkR5c2xleGljXCIsIHNhbnMtc2VyaWYgIWltcG9ydGFudDtcbiAgICB9XG59XG5cbmh0bWwuYTExeS1uby1tb3Rpb24ge1xuICAgICYsXG4gICAgKixcbiAgICAqOjpiZWZvcmUsXG4gICAgKjo6YWZ0ZXIge1xuICAgICAgICBhbmltYXRpb24tZHVyYXRpb246IDAuMDFtcyAhaW1wb3J0YW50O1xuICAgICAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxICFpbXBvcnRhbnQ7XG4gICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMDFtcyAhaW1wb3J0YW50O1xuICAgICAgICBzY3JvbGwtYmVoYXZpb3I6IGF1dG8gIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBbZGF0YS1zYWxdIHtcbiAgICAgICAgb3BhY2l0eTogMSAhaW1wb3J0YW50O1xuICAgICAgICB0cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG59XG5cbmh0bWwuYTExeS1sYXJnZS10ZXh0IHtcbiAgICBmb250LXNpemU6IDEyNSUgIWltcG9ydGFudDtcbn1cblxuaHRtbC5hMTF5LWxhcmdlLWN1cnNvciB7XG4gICAgJixcbiAgICAqIHtcbiAgICAgICAgY3Vyc29yOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzQ4JyBoZWlnaHQ9JzQ4JyB2aWV3Qm94PScwIDAgNDggNDgnJTNFJTNDcGF0aCBkPSdNOCA0bDI4IDIwSDIwbC0yIDEgOCAxOC00IDItOC0xOC02IDZ6JyBmaWxsPSclMjMwMDAnIHN0cm9rZT0nJTIzZmZmJyBzdHJva2Utd2lkdGg9JzInLyUzRSUzQy9zdmclM0VcIikgNCA0LCBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgYSwgYnV0dG9uLCBbcm9sZT1cImJ1dHRvblwiXSwgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSwgc2VsZWN0IHtcbiAgICAgICAgY3Vyc29yOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzQ4JyBoZWlnaHQ9JzQ4JyB2aWV3Qm94PScwIDAgNDggNDgnJTNFJTNDcGF0aCBkPSdNMTggOHYyOG0tMTAtMTRoMjAnIHN0cm9rZT0nJTIzMDAwJyBzdHJva2Utd2lkdGg9JzQnIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcvJTNFJTNDY2lyY2xlIGN4PScxOCcgY3k9JzIyJyByPScxOCcgZmlsbD0nbm9uZScgc3Ryb2tlPSclMjMwMDAnIHN0cm9rZS13aWR0aD0nMycvJTNFJTNDL3N2ZyUzRVwiKSAxOCAyMiwgcG9pbnRlciAhaW1wb3J0YW50O1xuICAgIH1cbn1cbi5hMTF5LXdpZGdldF9fdG9nZ2xlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiAwLjRlbTtcbiAgICB3aWR0aDogYXV0bztcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcGFkZGluZzogMDtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBjb2xvcjogdmFyKC0tdGhlbWUtZmcsIHZhcigtLWFiYy1vZmYtd2hpdGUpKTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgb3BhY2l0eTogMC43O1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlO1xuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1ib2R5LWZvbnQpO1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzLXZpc2libGUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgIH1cblxuICAgICYtdGV4dCB7XG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tc2l6ZS1taW51czMpO1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgfVxufVxuLmExMXktbW9kYWwge1xuICAgIC0tYTExeS1iZzogdmFyKC0tYWJjLW9mZi13aGl0ZSwgI2Y5ZjdmNyk7XG4gICAgLS1hMTF5LWZnOiB2YXIoLS1hYmMtYmxhY2ssICMyNjIzMjMpO1xuICAgIC0tYTExeS1hY2NlbnQ6IHZhcigtLXBsYXN0ZXItYiwgI0ZGQTE3RSk7XG5cbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgYm90dG9tOiAxLjhlbTtcbiAgICBsZWZ0OiAxLjhlbTtcbiAgICB6LWluZGV4OiAxMDAwMDtcbiAgICB3aWR0aDogNTIwcHg7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMHZ3IC0gMy42ZW0pO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxNnB4KTtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZSwgdmlzaWJpbGl0eSAwLjNzLCB0cmFuc2Zvcm0gMC4zcyBlYXNlO1xuXG4gICAgJi4tLW9wZW4ge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgfVxuXG4gICAgJl9fbWFzayB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgJl9fYm94IHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1heC1oZWlnaHQ6IGNhbGMoOTB2aCAtIDMuNmVtKTtcbiAgICAgICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYWJjLW9mZi13aGl0ZSwgI2Y5ZjdmNyk7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1hYmMtYmxhY2ssICMyNjIzMjMpO1xuICAgICAgICBwYWRkaW5nOiAycmVtIDJyZW0gMS41cmVtO1xuICAgIH1cblxuICAgICZfX2hlYWRlciB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMS43NXJlbTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDAsMCwwLDAuMSk7XG4gICAgfVxuXG4gICAgJl9faGVhZGluZyB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1oZWFkZXItZm9udCwgc2Fucy1zZXJpZik7XG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDJlbTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBjb2xvcjogdmFyKC0tYTExeS1hY2NlbnQpO1xuICAgIH1cblxuICAgICZfX2Nsb3NlIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIHdpZHRoOiAzNnB4O1xuICAgICAgICBoZWlnaHQ6IDM2cHg7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwwLDAsMC4xMik7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgY29sb3I6IHZhcigtLWExMXktZmcpO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAwLjE1cyBlYXNlO1xuXG4gICAgICAgICY6aG92ZXIsXG4gICAgICAgICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWExMXktYWNjZW50KTtcbiAgICAgICAgfVxuXG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgICB3aWR0aDogMThweDtcbiAgICAgICAgICAgIGhlaWdodDogMThweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2xpc3Qge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIH1cblxuICAgICZfX29wdGlvbiB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIGdhcDogMS41cmVtO1xuICAgICAgICBwYWRkaW5nOiAxcmVtIDA7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDAsMCwwLDAuMDYpO1xuXG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX29wdGlvbi10ZXh0IHtcbiAgICAgICAgZmxleDogMTtcbiAgICB9XG5cbiAgICAmX19sYWJlbCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAuMjVyZW07XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG5cbiAgICAmX19kZXNjIHtcbiAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMS40NTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBvcGFjaXR5OiAwLjU1O1xuICAgIH1cblxuICAgICZfX3N3aXRjaCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgd2lkdGg6IDQ0cHg7XG4gICAgICAgIGhlaWdodDogMjRweDtcbiAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgIG1hcmdpbi10b3A6IDJweDtcblxuICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG5cbiAgICAgICAgICAgICY6Y2hlY2tlZCArIC5hMTF5LW1vZGFsX19zbGlkZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWExMXktYWNjZW50KTtcblxuICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgyMHB4KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6Zm9jdXMtdmlzaWJsZSArIC5hMTF5LW1vZGFsX19zbGlkZXIge1xuICAgICAgICAgICAgICAgIG91dGxpbmU6IDJweCBzb2xpZCB2YXIoLS1hMTF5LWZnKTtcbiAgICAgICAgICAgICAgICBvdXRsaW5lLW9mZnNldDogMnB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fc2xpZGVyIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBpbnNldDogMDtcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgwLDAsMCwwLjEyKTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMjRweDtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMTVzIGVhc2U7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB3aWR0aDogMThweDtcbiAgICAgICAgICAgIGhlaWdodDogMThweDtcbiAgICAgICAgICAgIGxlZnQ6IDNweDtcbiAgICAgICAgICAgIGJvdHRvbTogM3B4O1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYWJjLW9mZi13aGl0ZSwgI2Y5ZjdmNyk7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNXMgZWFzZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3Jlc2V0IHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXJnaW4tdG9wOiAxLjVyZW07XG4gICAgICAgIHBhZGRpbmc6IDAuNnJlbSAwO1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDAsMCwwLDAuMTIpO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1hMTF5LWZnKTtcbiAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4wNGVtO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAwLjE1cyBlYXNlLCBjb2xvciAwLjE1cyBlYXNlO1xuXG4gICAgICAgICY6aG92ZXIsXG4gICAgICAgICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWExMXktYWNjZW50KTtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1hMTF5LWFjY2VudCk7XG4gICAgICAgIH1cbiAgICB9XG59XG5odG1sLmExMXktaGlnaC1jb250cmFzdCAuYTExeS1tb2RhbCB7XG4gICAgJixcbiAgICAqIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiBpbmhlcml0ICFpbXBvcnRhbnQ7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQgIWltcG9ydGFudDtcbiAgICAgICAgY29sb3I6IGluaGVyaXQgIWltcG9ydGFudDtcbiAgICB9XG59XG5cbmh0bWwuYTExeS1uby1tb3Rpb24gLmExMXktbW9kYWwge1xuICAgICYsXG4gICAgKixcbiAgICAqOjpiZWZvcmUsXG4gICAgKjo6YWZ0ZXIge1xuICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNjAwcHgpIHtcbiAgICAuYTExeS1tb2RhbCB7XG4gICAgICAgIGxlZnQ6IDAuNzVlbTtcbiAgICAgICAgcmlnaHQ6IDAuNzVlbTtcbiAgICAgICAgYm90dG9tOiAwLjc1ZW07XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG5cbiAgICAgICAgJl9fYm94IHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEuNXJlbTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi5ibG9jay1hcHByb2FjaC1ncmlkIHtcbiAgICAtLXRoZW1lLWFjY2VudDogdmFyKC0tZ3JlZW4tYik7XG59XG5cbi5hcHByb2FjaC1ncmlkX19ncmlkIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLXRoZW1lLWFjY2VudCk7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCB2YXIoLS10aGVtZS1hY2NlbnQpO1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODAwcHgpIHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgfVxufVxuXG4uYXBwcm9hY2gtZ3JpZF9fY2VsbCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHZhcigtLXRoZW1lLWFjY2VudCk7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLXRoZW1lLWFjY2VudCk7XG4gICAgcGFkZGluZzogMS4zdnc7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjRzIHZhcigtLWVhc2luZyk7XG5cbiAgICAuZmxleC1pbWFnZSB7XG4gICAgICAgIHRyYW5zaXRpb246IGJvcmRlci1yYWRpdXMgNDAwbXMgY3ViaWMtYmV6aWVyKDAuMjUsIDAuNDYsIDAuNDUsIDAuOTQpO1xuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aGVtZS1iZyk7XG5cbiAgICAgICAgLmZsZXgtaW1hZ2Uge1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODAwcHgpIHtcbiAgICAgICAgcGFkZGluZzogMS41cmVtO1xuICAgIH1cbn1cblxuLmFwcHJvYWNoLWdyaWRfX2NvbnRlbnQge1xuICAgIG1hcmdpbi1ib3R0b206IDEuNXZ3O1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODAwcHgpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICAgIH1cbn1cblxuLmFwcHJvYWNoLWdyaWRfX3RpdGxlIHtcbiAgICBmb250LXdlaWdodDogdmFyKC0td2VpZ2h0LWJvbGQpO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tc2l6ZS1wbHVzMik7XG4gICAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWhlYWRpbmctdHJhY2tpbmcpO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LWxpbmUtaGVpZ2h0KTtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVlbTtcbn1cblxuLmFwcHJvYWNoLWdyaWRfX3RleHQge1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS13ZWlnaHQtbGlnaHQpO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tc2l6ZS1wbHVzMik7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktbGluZS1oZWlnaHQpO1xuICAgIGxldHRlci1zcGFjaW5nOiB2YXIoLS1oZWFkaW5nLXRyYWNraW5nKTtcbn1cblxuLmFwcHJvYWNoLWdyaWRfX2ltYWdlIHtcbiAgICBtYXJnaW4tdG9wOiBhdXRvO1xuICAgIHdpZHRoOiA0NSU7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MDBweCkge1xuICAgICAgICB3aWR0aDogNjAlO1xuICAgIH1cbn1cblxuLmFwcHJvYWNoLWdyaWRfX2Zvb3RlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBhZGRpbmc6IDN2dyAxLjN2dztcbiAgICBmb250LXdlaWdodDogdmFyKC0td2VpZ2h0LWxpZ2h0KTtcbiAgICBmb250LXNpemU6IHZhcigtLXNpemUtcGx1czIpO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LWxpbmUtaGVpZ2h0KTtcbiAgICBsZXR0ZXItc3BhY2luZzogdmFyKC0taGVhZGluZy10cmFja2luZyk7XG5cbiAgICBhIHtcbiAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb24tY29sb3I6IHZhcigtLXRoZW1lLWFjY2VudCk7XG4gICAgICAgIHRleHQtdW5kZXJsaW5lLW9mZnNldDogMC4xNWVtO1xuICAgIH1cblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgwMHB4KSB7XG4gICAgICAgIHBhZGRpbmc6IDJyZW0gMS41cmVtO1xuICAgIH1cbn1cbiIsIi5ibG9jay1hd2FyZHMge1xuICAgIHBhZGRpbmc6IDAgMCA4dncgMDtcbiAgICAtLXRoZW1lLWFjY2VudDogdmFyKC0tZ3JlZW4tYik7XG59XG5cbi5hd2FyZHNfX2ludHJvIHtcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDgwMHB4KSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIuNXZ3O1xuICAgIH1cbn1cblxuLmF3YXJkc19faGVhZGluZyB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS13ZWlnaHQtbGlnaHQpO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tc2l6ZS1wbHVzMik7XG4gICAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWhlYWRpbmctdHJhY2tpbmcpO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LWxpbmUtaGVpZ2h0KTtcbn1cblxuLmF3YXJkc19fc3VibGFiZWwge1xuICAgIG1hcmdpbjogMC41cmVtIDAgMDtcbiAgICBmb250LXNpemU6IHZhcigtLXNpemUtcGx1czApO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gICAgb3BhY2l0eTogMC43O1xufVxuXG4uYXdhcmRzLWxpc3Qge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xufVxuXG4uYXdhcmRzLWxpc3RfX2dyb3VwIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tdGhlbWUtYWNjZW50KTtcbiAgICBwYWRkaW5nLXRvcDogMXJlbTtcblxuICAgICYgKyAuYXdhcmRzLWxpc3RfX2dyb3VwIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMnJlbTtcbiAgICB9XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogODAwcHgpIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDEuMnZ3O1xuXG4gICAgICAgICYgKyAuYXdhcmRzLWxpc3RfX2dyb3VwIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDMuN3Z3O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uYXdhcmRzLWxpc3RfX2dyb3VwLWhlYWRpbmcge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nLXRvcDogMC43NXJlbTtcbiAgICBmb250LXdlaWdodDogdmFyKC0td2VpZ2h0LWxpZ2h0KTtcbiAgICBmb250LXNpemU6IHZhcigtLXNpemUtcGx1czIpO1xuICAgIGxldHRlci1zcGFjaW5nOiB2YXIoLS1oZWFkaW5nLXRyYWNraW5nKTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1saW5lLWhlaWdodCk7XG4gICAgY29sb3I6IHZhcigtLWFiYy1ibGFjayk7XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogODAwcHgpIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDAuNnZ3O1xuICAgIH1cbn1cblxuLmF3YXJkcy1saXN0X19pdGVtcyB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbn1cblxuLmF3YXJkcy1saXN0X19pdGVtIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBnYXA6IDAgMC40ZW07XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAwLjc1cmVtIDA7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLXRoZW1lLWFjY2VudCk7XG4gICAgZm9udC1zaXplOiB2YXIoLS1zaXplLXBsdXMxKTtcbiAgICBsZXR0ZXItc3BhY2luZzogdmFyKC0taGVhZGluZy10cmFja2luZyk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktbGluZS1oZWlnaHQpO1xuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDgwMHB4KSB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDMuNjV2dztcbiAgICAgICAgcGFkZGluZzogMC42dncgMDtcbiAgICB9XG59XG5cbi5hd2FyZHMtbGlzdF9fc3RhdHVzIHtcbiAgICBmb250LXdlaWdodDogdmFyKC0td2VpZ2h0LWJvbGQpO1xufVxuXG4uYXdhcmRzLWxpc3RfX3NlcGFyYXRvcixcbi5hd2FyZHMtbGlzdF9fbmFtZSB7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLXdlaWdodC1saWdodCk7XG59XG4iLCIuYmxvY2stZnJhbWV3b3JrLWhlcm8taWxsdXN0cmF0aW9uIHtcbiAgICBwYWRkaW5nOiA1cmVtIDA7XG5cbiAgICAmX190aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tc2l6ZS1wbHVzNCk7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjE7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICB9XG5cbiAgICAmX19pbGx1c3RyYXRpb24ge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgc3ZnLFxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi5ibG9jay1mcmFtZXdvcmstbGlzdG9mbGlua3Mge1xuICAgIHBhZGRpbmc6IDAgMCA4dncgMDtcblxuICAgICZfX2ludHJvIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMnJlbTtcbiAgICB9XG5cbiAgICAmX19zdWJsYWJlbCB7XG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tc2l6ZS1wbHVzMCk7XG4gICAgICAgIG1hcmdpbi10b3A6IDAuNXJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICAgICAgb3BhY2l0eTogMC43O1xuICAgIH1cbn1cblxuLmZyYW1ld29yay1saW5rcy1saXN0IHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS10aGVtZS1hY2NlbnQpO1xuXG4gICAgJl9faXRlbSB7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS10aGVtZS1hY2NlbnQpO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgfVxuXG4gICAgJl9fbGluayB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgZ2FwOiAxcmVtO1xuICAgICAgICBwYWRkaW5nOiAwLjlyZW0gMC43NXJlbTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1zaXplLXBsdXMwKTtcbiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2U7XG5cbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDgwMHB4KSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHZhcigtLXNpemUtcGx1czIpO1xuICAgICAgICAgICAgcGFkZGluZzogMXZ3IDF2dztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGEuZnJhbWV3b3JrLWxpbmtzLWxpc3RfX2xpbmsge1xuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWxpZ2h0KTtcbiAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5saW5rLWxhYmVsIHtcbiAgICBmbGV4OiAxIDEgYXV0bztcbn1cblxuLmxpbmstYXJyb3cge1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICBzdmcge1xuICAgICAgICB3aWR0aDogMS4yZW07XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxufVxuXG4uYWJjLWJyYW5kLWljb24ge1xuICAgIC5leWVicm93IHtcbiAgICAgICAgbWFyZ2luOiAwIDAgMC45cmVtIDA7XG4gICAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1oZWFkZXItZm9udCk7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS13ZWlnaHQtbm9ybWFsKTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWhlYWRlci1saW5lLWhlaWdodCk7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1ibGFjayk7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICBmb250LXNpemU6IHZhcigtLXNpemUtcGx1czApO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA4MDBweCkge1xuICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1zaXplLXBsdXMyKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIkB1c2UgXCIuLi8uLi9hc3NldHMvc2Nzcy92YXJpYWJsZXNcIiBhcyAqO1xuXG4uYmxvY2stZnJvbnRwYWdlLWJsb2cge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi10b3A6IDh2dztcbiAgbWFyZ2luLWJvdHRvbTogOHZ3O1xuICAmX19oZWFkZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGJhc2VsaW5lO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICB9XG4gIC5ncmlkLXgge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5cbi5ibG9nLWxpc3QtaXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJsYWNrLTE1KTtcbiAgcGFkZGluZzogMXJlbSAwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgJl9faW5uZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIH1cblxuICAmX190aHVtYiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gICZfX2NvbnRlbnQge1xuICAgIGRpc3BsYXk6IGNvbnRlbnRzO1xuICB9XG5cbiAgJl9fdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tdHlwZS1ib2R5KTtcbiAgICBtYXJnaW46IDA7XG4gICAgYSB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB9XG4gIH1cblxuICAmX19kYXRlIHtcbiAgICBmb250LXNpemU6IHZhcigtLXR5cGUtbmF2KTtcbiAgICBjb2xvcjogdmFyKC0tbWVpLWdyZXkpO1xuICB9XG5cbiAgLy8gJi0tYWN0aXZlIHtcbiAgLy8gICBoMyB7XG4gIC8vICAgICBmb250LXdlaWdodDogNzAwO1xuICAvLyAgIH1cbiAgLy8gfVxufVxuXG4uYmxvZy1saXN0LWZvb3RlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5ibG9nLWxpc3QtbWVkaWFzIGltZyB7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLmJsb2ctbGlzdC1tZWRpYS1jb250YWluZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxNy41dnc7XG4gIGhlaWdodDogMTcuNXZ3O1xuICByaWdodDogMTUlO1xuICB0b3A6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHotaW5kZXg6IDEwO1xuXG4gICYub24ge1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cblxuICBkaXYge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtMTAwJSk7XG4gIH1cblxuICBpbWcge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgOTAlKTtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogODAwcHgpIHtcbiAgLmJsb2NrLWZyb250cGFnZS1ibG9nIHtcbiAgICBtYXJnaW4tdG9wOiAycmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG5cbiAgICAmX19oZWFkZXIge1xuICAgICAgLmdyaWQteCB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICB9XG4gICAgICAudGV4dC1yaWdodCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmJsb2ctbGlzdCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICB9XG5cbiAgLmJsb2ctbGlzdC1pdGVtIHtcbiAgICBwYWRkaW5nOiAxcmVtIDA7XG5cbiAgICAvLyAmLS1hY3RpdmUge1xuICAgIC8vICAgYmFja2dyb3VuZDogdmFyKC0tZ3JlZW4tYSk7XG4gICAgLy8gICBtYXJnaW4tbGVmdDogLTE2cHg7XG4gICAgLy8gICBtYXJnaW4tcmlnaHQ6IC0xNnB4O1xuICAgIC8vICAgcGFkZGluZy1sZWZ0OiAxNnB4O1xuICAgIC8vICAgcGFkZGluZy1yaWdodDogMTZweDtcbiAgICAvLyB9XG5cbiAgICAmX19pbm5lciB7XG4gICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgIGdhcDogMXJlbTtcbiAgICB9XG5cbiAgICAmX190aHVtYiB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiAxMTNweDtcbiAgICAgIGhlaWdodDogMTEzcHg7XG4gICAgICBmbGV4LXNocmluazogMDtcblxuICAgICAgaW1nIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJl9fY29udGVudCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGZsZXg6IDE7XG4gICAgICBtaW4td2lkdGg6IDA7XG5cbiAgICAgIC5jZWxsIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmX190aXRsZSB7XG4gICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICBmb250LXdlaWdodDogMzAwO1xuICAgIH1cblxuICAgICZfX2RhdGUge1xuICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgbWFyZ2luLXRvcDogMC41cmVtO1xuICAgICAgY29sb3I6IHJnYmEoMzgsIDM1LCAzNSwgMC41KTtcbiAgICB9XG4gIH1cblxuICAuYmxvZy1saXN0LW1lZGlhLWNvbnRhaW5lcixcbiAgLmJsb2ctbGlzdC1tZWRpYXMge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAuYmxvZy1saXN0LWZvb3RlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgfVxufVxuIiwiLmJsb2NrLWZyb250cGFnZS1ncmlkIHtcbiAgJi1pdGVtIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA4MDBweCkge1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLXRoZW1lLWFjY2VudCk7XG4gICAgICBwYWRkaW5nLXRvcDogMC45ZW07XG4gICAgICBtYXJnaW4tdG9wOiAwLjllbTtcbiAgICB9XG4gICAgLmZsZXgtaW1hZ2Uge1xuICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgIHRyYW5zaXRpb246IGJvcmRlci1yYWRpdXMgNDAwbXMgY3ViaWMtYmV6aWVyKDAuMjUsIDAuNDYsIDAuNDUsIDAuOTQpO1xuXG4gICAgICBpbWcge1xuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBoNCB7XG4gICAgICBmb250LXNpemU6IHZhcigtLXNpemUtcGx1czApO1xuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDgwMHB4KSB7XG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tc2l6ZS1wbHVzMyk7XG4gICAgICB9XG4gICAgICBtYXgtd2lkdGg6IDc1JTtcbiAgICB9XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogODAwcHgpIHtcbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzLXZpc2libGUge1xuICAgICAgICAuZmxleC1pbWFnZSB7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi1sYWJlbCB7XG4gICAgICBmb250LXNpemU6IHZhcigtLXR5cGUtYm9keSk7XG4gICAgICBtYXJnaW4tdG9wOiAwLjc1cmVtO1xuICAgIH1cblxuICAgICYtaW5kZXgge1xuICAgICAgb3BhY2l0eTogMC40O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwLjI1ZW07XG4gICAgfVxuICB9XG59XG4iLCIuYmxvY2stZnJvbnRwYWdlLWhlcm8ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1pbi1oZWlnaHQ6IDEwMHZoO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjbGlwLXBhdGg6IGluc2V0KDApO1xuXG4gICYtYmcge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBpbnNldDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICBpbWcsXG4gICAgdmlkZW8ge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBpbnNldDogMDtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB9XG4gIH1cblxuICAmLW92ZXJsYXkge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgd2lkdGg6IE1pbig3MHZ3LCA0NzlweCk7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgei1pbmRleDogMjtcblxuICAgIGltZyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxufVxuIiwiLmJsb2NrLWZyb250cGFnZS1pbXBhY3Qge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgLS10aGVtZS1hY2NlbnQ6IHZhcigtLXdpbmUtYik7XG4gICZfX2NpcmNsZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGFzcGVjdC1yYXRpbzogMTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGNsaXAtcGF0aDogaW5zZXQoMCByb3VuZCA1MCUpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdyZWVuLWEpO1xuICAgIHBhZGRpbmc6IDE1JSAwIDA7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3OTlweCkge1xuICAgICAgYXNwZWN0LXJhdGlvOiBhdXRvO1xuICAgICAgY2xpcC1wYXRoOiBub25lO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBwYWRkaW5nOiAycmVtIDFyZW07XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGdhcDogMnJlbTtcbiAgICB9XG4gIH1cblxuICAmX19oZWFkZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAyO1xuICAgIHBhZGRpbmctYm90dG9tOiAycmVtO1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODAwcHgpIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIH1cblxuICAgIGgyIHtcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0tc2l6ZS1wbHVzMCk7XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogODAwcHgpIHtcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1zaXplLXBsdXMxKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmX19jb250ZW50IHtcbiAgICBmb250LXNpemU6IHZhcigtLXNpemUtcGx1czApO1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiA4MDBweCkge1xuICAgICAgZm9udC1zaXplOiB2YXIoLS1zaXplLXBsdXMyKTtcbiAgICB9XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLXdlaWdodC1saWdodCk7XG4gICAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWhlYWRpbmctdHJhY2tpbmcpO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LWxpbmUtaGVpZ2h0KTtcblxuICAgIHAge1xuICAgICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgICAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7XG4gICAgICBsZXR0ZXItc3BhY2luZzogaW5oZXJpdDtcbiAgICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICAgIH1cbiAgfVxuXG4gICZfX2xpbmsge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzk5cHgpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgJl9faXRlbSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDE7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzk5cHgpIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHdpZHRoOiA0NiU7XG4gICAgfVxuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzLXZpc2libGUge1xuICAgICAgLmJsb2NrLWZyb250cGFnZS1pbXBhY3RfX2l0ZW0taW1hZ2Uge1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICB9XG5cbiAgICAgIC5ibG9jay1mcm9udHBhZ2UtaW1wYWN0X19pdGVtLWltYWdlLS1jaXJjbGUge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgICYtLTAge1xuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzk5cHgpIHtcbiAgICAgICAgYWxpZ24tc2VsZjogZmxleC1zdGFydDtcbiAgICAgIH1cblxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODAwcHgpIHtcbiAgICAgICAgbGVmdDogOSU7XG4gICAgICAgIHRvcDogMjglO1xuICAgICAgICB3aWR0aDogMTUuNnZ3O1xuICAgICAgfVxuICAgIH1cblxuICAgICYtLTEge1xuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzk5cHgpIHtcbiAgICAgICAgYWxpZ24tc2VsZjogZmxleC1lbmQ7XG4gICAgICAgIHdpZHRoOiA2MiU7XG4gICAgICB9XG5cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwMHB4KSB7XG4gICAgICAgIGxlZnQ6IDU2JTtcbiAgICAgICAgdG9wOiAzMCU7XG4gICAgICAgIHdpZHRoOiAxNS41dnc7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi0tMiB7XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3OTlweCkge1xuICAgICAgICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0O1xuICAgICAgICB3aWR0aDogNDglO1xuICAgICAgfVxuXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MDBweCkge1xuICAgICAgICBsZWZ0OiAyNCU7XG4gICAgICAgIHRvcDogNDglO1xuICAgICAgICB3aWR0aDogMjR2dztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmX19pdGVtLWltYWdlIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgdHJhbnNpdGlvbjogYm9yZGVyLXJhZGl1cyA0MDBtcyBjdWJpYy1iZXppZXIoMC4yNSwgMC40NiwgMC40NSwgMC45NCk7XG5cbiAgICBpbWcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgIH1cblxuICAgICYtLWNpcmNsZSB7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICBhc3BlY3QtcmF0aW86IDE7XG5cbiAgICAgIGltZyB7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmX19pdGVtLWxhYmVsIHtcbiAgICBmb250LXNpemU6IHZhcigtLXNpemUtcGx1czIpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS13ZWlnaHQtbGlnaHQpO1xuICAgIGxldHRlci1zcGFjaW5nOiB2YXIoLS1oZWFkaW5nLXRyYWNraW5nKTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0taGVhZGVyLWxpbmUtaGVpZ2h0KTtcbiAgICBtYXJnaW4tdG9wOiAwLjVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gICZfX2N0YSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDI7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgY29sb3I6IHZhcigtLWFiYy1ibGFjayk7XG5cbiAgICB3aWR0aDogMTUuNnZ3O1xuICAgIGhlaWdodDogMTUuNnZ3O1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS13aW5lLWIpO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIHRyYW5zaXRpb246XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yIDAuM3MgZWFzZSxcbiAgICAgIGNvbG9yIDAuM3MgZWFzZTtcblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwMHB4KSB7XG4gICAgICByaWdodDogMTQlO1xuICAgICAgYm90dG9tOiAyMiU7XG4gICAgfVxuXG4gICAgc3BhbiB7XG4gICAgICBmb250LXNpemU6IHZhcigtLXNpemUtcGx1czIpO1xuICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLXdlaWdodC1saWdodCk7XG4gICAgICBsZXR0ZXItc3BhY2luZzogdmFyKC0taGVhZGluZy10cmFja2luZyk7XG4gICAgICBsaW5lLWhlaWdodDogdmFyKC0taGVhZGVyLWxpbmUtaGVpZ2h0KTtcbiAgICAgIG1heC13aWR0aDogNzUlO1xuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2luZS1iKTtcbiAgICAgIGNvbG9yOiB2YXIoLS1hYmMtb2ZmLXdoaXRlKTtcbiAgICB9XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3OTlweCkge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgd2lkdGg6IDQ1dnc7XG4gICAgICBoZWlnaHQ6IDQ1dnc7XG4gICAgICBhbGlnbi1zZWxmOiBmbGV4LWVuZDtcblxuICAgICAgc3BhbiB7XG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tc2l6ZS1taW51czEpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLmJsb2NrICsgLmJsb2NrIHtcbiAgJi5ibG9jay1mcm9udHBhZ2UtbGVhZCB7XG4gICAgbWFyZ2luOiAwLjQ1cmVtIDAgMS44cmVtIDA7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDgwMHB4KSB7XG4gICAgICBtYXJnaW46IDEuOHJlbSAwO1xuICAgIH1cbiAgfVxufVxuXG4uYmxvY2stZnJvbnRwYWdlLWxlYWQge1xuICBwYWRkaW5nOiAwLjQ1cmVtIDAgM3JlbSAwO1xuICBAbWVkaWEgKG1pbi13aWR0aDogODAwcHgpIHtcbiAgICBwYWRkaW5nOiAzcmVtIDA7XG4gIH1cblxuICAmX19leWVicm93IHtcbiAgICBmb250LXNpemU6IHZhcigtLXR5cGUtbmF2KTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIGdhcDogMC41cmVtO1xuICB9XG4gIGgzIHtcbiAgICBtYXJnaW46IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMS44ZW07XG4gICAgZm9udC1zaXplOiB2YXIoLS1zaXplLXBsdXMwKTtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogODAwcHgpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuOWVtO1xuICAgICAgZm9udC1zaXplOiB2YXIoLS1zaXplLXBsdXMzKTtcbiAgICB9XG4gIH1cblxuICAmX19jb250ZW50IHtcbiAgICBwLFxuICAgIHVsLFxuICAgIG9sIHtcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0tc2l6ZS1wbHVzMCk7XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogODAwcHgpIHtcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1zaXplLXBsdXMzKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmX19saW5rIHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgfVxufVxuIiwiLmJsb2NrLWZyb250cGFnZS1wcm9qZWN0cyB7XG4gIG1hcmdpbi10b3A6IDh2dztcbiAgbWFyZ2luLWJvdHRvbTogOHZ3O1xuICAuYmxvY2stdGl0bGUge1xuICAgIHAsXG4gICAgaDIge1xuICAgICAgZm9udC1zaXplOiB2YXIoLS1zaXplLXBsdXMwKTtcbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA4MDBweCkge1xuICAgICAgICBmb250LXNpemU6IHZhcigtLXNpemUtcGx1czIpO1xuICAgICAgfVxuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbiAgfVxuXG4gIC5ncmlkLXguZ3JpZC1tYXJnaW4teCB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc5OXB4KSB7XG4gICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gICAgICBzY3JvbGwtc25hcC10eXBlOiB4IG1hbmRhdG9yeTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMS41cmVtO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMS41cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAxLjVyZW07XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW07XG4gICAgICBzY3JvbGxiYXItd2lkdGg6IG5vbmU7XG5cbiAgICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgPiAuY2VsbCB7XG4gICAgICAgIGZsZXg6IDAgMCA3NXZ3O1xuICAgICAgICBtYXgtd2lkdGg6IDc1dnc7XG4gICAgICAgIHNjcm9sbC1zbmFwLWFsaWduOiBzdGFydDtcbiAgICAgICAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gICAgICAgICY6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAxLjhyZW07XG4gICAgICAgIH1cbiAgICAgICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDEuOHJlbTtcbiAgICAgICAgfVxuICAgICAgICBoMyB7XG4gICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1zaXplLXBsdXMwKTtcbiAgICAgICAgICBtYXJnaW46IDAuNDVlbSAwIDAuOWVtIDA7XG4gICAgICAgIH1cbiAgICAgICAgLmJ0bixcbiAgICAgICAgLnByb2plY3QtY2FyZF9fY2xpZW50IHtcbiAgICAgICAgICBmb250LXNpemU6IHZhcigtLXNpemUtbWludXMyKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ucHJvamVjdC1jYXJkIHtcbiAgJl9faW1hZ2Uge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcblxuICAgIC5mbGV4LWltYWdlIGltZyB7XG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcztcbiAgICB9XG5cbiAgICAmOmhvdmVyIC5mbGV4LWltYWdlIGltZyB7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDMpO1xuICAgIH1cbiAgfVxuXG4gICZfX21ldGEge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiA4MDBweCkge1xuICAgICAgcGFkZGluZzogMCAwLjVyZW07XG4gICAgfVxuICB9XG5cbiAgJl9fY2xpZW50IHtcbiAgICBmb250LXNpemU6IHZhcigtLXNpemUtcGx1czApO1xuICAgIG1hcmdpbi1ib3R0b206IDAuMjVyZW07XG4gIH1cblxuICBoMyB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1zaXplLXBsdXMwKTtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogODAwcHgpIHtcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0tc2l6ZS1wbHVzMSk7XG4gICAgfVxuICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcblxuICAgIGEge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgfVxuICB9XG59XG4iLCIuYmxvY2sgKyAuYmxvY2sge1xuICAmLmJsb2NrLWdsb2JhbC1zaW1wbGV0ZXh0IHtcbiAgICBtYXJnaW46IDEuOHJlbSAwO1xuICB9XG59XG4uYmxvY2stZ2xvYmFsLXNpbXBsZXRleHQge1xuICBwYWRkaW5nOiAzcmVtIDA7XG4gICZfX2NvbnRlbnQge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tdHlwZS1idXR0b24pO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjc7XG5cbiAgICBwLFxuICAgIHVsLFxuICAgIG9sIHtcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0tc2l6ZS1wbHVzMik7XG4gICAgfVxuICB9XG59XG4iLCIuYmxvY2staW1wYWN0LWN0YSB7XG4gIHBhZGRpbmc6IDRyZW0gMDtcblxuICAmX19leWVicm93IHtcbiAgICBmb250LXNpemU6IHZhcigtLXR5cGUtbmF2KTtcbiAgfVxuXG4gICZfX2l0ZW0ge1xuICAgICYtaW1hZ2Uge1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuNzVyZW07XG5cbiAgICAgIGltZyB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuXG4gICAgICAmLS1jaXJjbGUge1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIGFzcGVjdC1yYXRpbzogMTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLWxhYmVsIHtcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0tdHlwZS1ib2R5KTtcblxuICAgICAgYSB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIuYmxvY2staW1wYWN0LXNjYXR0dGVyZWRncmlkIHtcbn1cblxuLmltcGFjdC1zY2F0dGVyZWQtaXRlbSB7XG4gIHBhZGRpbmc6IDNyZW0gMDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlZWU7XG5cbiAgJl9faW1hZ2Uge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICBpbWcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAmLS1jaXJjbGUge1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgYXNwZWN0LXJhdGlvOiAxO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB9XG4gIH1cblxuICAmX19leWVicm93IHtcbiAgICBmb250LXNpemU6IHZhcigtLXR5cGUtbmF2KTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gIH1cbn1cbiIsIi5ibG9jay1sb29raW5nLWZvci1tb3JlLW5ld3Mge1xuICBtYXJnaW4tdG9wOiA4dnc7XG4gIG1hcmdpbi1ib3R0b206IDh2dztcblxuICAuYmxvY2stdGl0bGUge1xuICAgIHAsXG4gICAgaDIge1xuICAgICAgZm9udC1zaXplOiB2YXIoLS1zaXplLXBsdXMwKTtcbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA4MDBweCkge1xuICAgICAgICBmb250LXNpemU6IHZhcigtLXNpemUtcGx1czIpO1xuICAgICAgfVxuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbiAgfVxuXG4gIC5ncmlkLXguZ3JpZC1tYXJnaW4teCB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc5OXB4KSB7XG4gICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gICAgICBzY3JvbGwtc25hcC10eXBlOiB4IG1hbmRhdG9yeTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMS41cmVtO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMS41cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAxLjVyZW07XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW07XG4gICAgICBzY3JvbGxiYXItd2lkdGg6IG5vbmU7XG5cbiAgICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgPiAuY2VsbCB7XG4gICAgICAgIGZsZXg6IDAgMCA3NXZ3O1xuICAgICAgICBtYXgtd2lkdGg6IDc1dnc7XG4gICAgICAgIHNjcm9sbC1zbmFwLWFsaWduOiBzdGFydDtcbiAgICAgICAgYm94LXNpemluZzogY29udGVudC1ib3g7XG5cbiAgICAgICAgJjpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDEuOHJlbTtcbiAgICAgICAgfVxuICAgICAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMS44cmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5uZXdzLWNhcmQge1xuICAmX19pbWFnZSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuXG4gICAgaW1nIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzO1xuICAgIH1cblxuICAgICY6aG92ZXIgaW1nIHtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wMyk7XG4gICAgfVxuICB9XG5cbiAgJl9fbWV0YSB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDgwMHB4KSB7XG4gICAgICBwYWRkaW5nOiAwIDAuNXJlbTtcbiAgICB9XG4gIH1cblxuICAmX19kYXRlIHtcbiAgICBmb250LXNpemU6IHZhcigtLXNpemUtbWludXMxKTtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtO1xuICAgIG9wYWNpdHk6IDAuNztcbiAgfVxuXG4gIGgzIHtcbiAgICBmb250LXNpemU6IHZhcigtLXNpemUtcGx1czApO1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiA4MDBweCkge1xuICAgICAgZm9udC1zaXplOiB2YXIoLS1zaXplLXBsdXMxKTtcbiAgICB9XG4gICAgbWFyZ2luOiAwLjI1ZW0gMCAwLjc1ZW07XG5cbiAgICBhIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIH1cbiAgfVxuXG4gICZfX2VtcHR5IHtcbiAgICBmb250LXNpemU6IHZhcigtLXNpemUtcGx1czApO1xuICAgIG9wYWNpdHk6IDAuNztcbiAgfVxufVxuIiwiLmJsb2NrLW1lZGlhIHtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgICZfX2ltYWdlLFxuICAgICZfX3ZpZGVvIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIH1cblxuICAgICZfX2ltYWdlIGltZyxcbiAgICAmX192aWRlbyB2aWRlbyB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICB9XG59XG4iLCIuYmxvY2stbmV3cy1pbmRleCB7XG4gICZfX2hlYWRlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgYWxpZ24taXRlbXM6IGJhc2VsaW5lO1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gIH1cbn1cblxuLm5ld3MtaXRlbSB7XG4gIG1hcmdpbi1ib3R0b206IDNyZW07XG5cbiAgJl9faW1hZ2Uge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgbWFyZ2luLWJvdHRvbTogMC43NXJlbTtcblxuICAgIGltZyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxuXG4gICZfX3RpdGxlIHtcbiAgICBmb250LXNpemU6IHZhcigtLXR5cGUtYnV0dG9uKTtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG5cbiAgICBhIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIH1cbiAgfVxuXG4gICYtLXJpZ2h0IHtcbiAgICBtYXJnaW4tdG9wOiA0cmVtO1xuICB9XG59XG4iLCIuYmxvY2stbmV3cy1zaW5nbGUge1xuICAmX190aHVtYiB7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgYXNwZWN0LXJhdGlvOiAxO1xuXG4gICAgaW1nIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgfVxuICB9XG5cbiAgJl9fdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogY2xhbXAodmFyKC0tdHlwZS1oZWFkbGluZSksIDR2dywgdmFyKC0tdHlwZS1oMikpO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICB9XG5cbiAgJl9fZGF0ZSB7XG4gICAgZm9udC1zaXplOiB2YXIoLS10eXBlLW5hdik7XG4gICAgY29sb3I6IHZhcigtLW1laS1ncmV5KTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gIH1cblxuICAmX19jb250ZW50IHtcbiAgICBmb250LXNpemU6IHZhcigtLXR5cGUtYm9keSk7XG4gICAgbGluZS1oZWlnaHQ6IDEuNztcbiAgfVxufVxuIiwiLmJsb2NrLW5ld3NzaW5nbGUta2VlcHJlYWRpbmcge1xufVxuXG4ubmV3cy1pdGVtIHtcbiAgbWFyZ2luLWJvdHRvbTogM3JlbTtcblxuICAmX19pbWFnZSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjc1cmVtO1xuXG4gICAgaW1nIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG5cbiAgJl9fdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tdHlwZS1idXR0b24pO1xuICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcblxuICAgIGEge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgfVxuICB9XG5cbiAgJi0tcmlnaHQge1xuICAgIG1hcmdpbi10b3A6IDRyZW07XG4gIH1cbn1cbiIsIlxuLmJsb2NrLXBlb3BsZS1saXN0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5wZW9wbGUtbGlzdC1jb250YWluZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnBlb3BsZS1saXN0LWl0ZW1zIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5wZW9wbGUtbGlzdC1yb3cge1xuICAgIHBhZGRpbmc6IDAgMC45cmVtO1xuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MDBweCkge1xuICAgICAgICBwYWRkaW5nOiAwIDEuMzVyZW07XG4gICAgfVxuXG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJsYWNrLTE1KTtcbiAgICB0cmFuc2l0aW9uOlxuICAgICAgICBvcGFjaXR5IDAuM3MgZWFzZSxcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvciAwLjNzIGVhc2U7XG5cbiAgICAmX19pbm5lciB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBiYXNlbGluZTtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICBwYWRkaW5nOiAxcmVtIDA7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgY29sb3I6IGluaGVyaXQ7XG5cbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDgwMHB4KSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxLjF2dyAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgYSN7Jn1fX2lubmVyIHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cblxuICAgICZfX2lubmVyOmZvY3VzIHtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICB9XG5cbiAgICAmX19uYW1lIHtcbiAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWhlYWRlci1mb250KTtcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1zaXplLXBsdXMyKTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLXdlaWdodC1saWdodCk7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiB2YXIoLS1oZWFkaW5nLXRyYWNraW5nKTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWhlYWRlci1saW5lLWhlaWdodCk7XG4gICAgfVxuXG4gICAgJl9fcm9sZSB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1ib2R5LWZvbnQpO1xuICAgICAgICBmb250LXNpemU6IHZhcigtLXR5cGUtYm9keSk7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS13ZWlnaHQtbGlnaHQpO1xuICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1saW5lLWhlaWdodCk7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDgwMHB4KSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHZhcigtLXNpemUtcGx1czApO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ucGVvcGxlLWxpc3QtaXRlbXM6aG92ZXIgLnBlb3BsZS1saXN0LXJvdyB7XG4gICAgb3BhY2l0eTogMC4zO1xuICAgIHRyYW5zaXRpb246XG4gICAgICAgIG9wYWNpdHkgMC4zcyBlYXNlLFxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yIDAuM3MgZWFzZTtcbn1cblxuLnBlb3BsZS1saXN0LWl0ZW1zOmhvdmVyIC5wZW9wbGUtbGlzdC1yb3c6aG92ZXIge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ3JlZW4tYSk7XG59XG5cbi5wZW9wbGUtbGlzdC1tZWRpYXMgaW1nIHtcbiAgICB3aWR0aDogMXB4O1xuICAgIGhlaWdodDogMXB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi5wZW9wbGUtbGlzdC1tZWRpYS1jb250YWluZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTUuNnZ3O1xuICAgIGhlaWdodDogMTUuNnZ3O1xuICAgIGxlZnQ6IGNhbGMoNjYuNjY2JSAtIDcuOHZ3KTtcbiAgICB0b3A6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIHotaW5kZXg6IDEwO1xuXG4gICAgJi5vbiB7XG4gICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgfVxuXG4gICAgZGl2IHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC0xMDAlKTtcbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCA5MCUpO1xuICAgIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDgwMHB4KSB7XG4gICAgLnBlb3BsZS1saXN0LW1lZGlhLWNvbnRhaW5lciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuLnBlcnNvbi1tb2RhbCB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIGluc2V0OiAwO1xuICAgIHotaW5kZXg6IDEwMDA7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgb3BhY2l0eTogMDtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcblxuICAgIGJhY2tncm91bmQ6IHZhcigtLXRoZW1lLWJnKTtcbiAgICAmLmlzLW9wZW4ge1xuICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIH1cblxuICAgIGNvbG9yOiB2YXIoLS1hYmMtb2ZmLXdoaXRlKTtcblxuICAgICZfX292ZXJsYXkge1xuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgIGluc2V0OiAwO1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuODI1KTtcbiAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDEwcHgpO1xuICAgICAgICAtd2Via2l0LWJhY2tkcm9wLWZpbHRlcjogYmx1cigxMHB4KTtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgIH1cblxuICAgICZfX2RpYWxvZyB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICBwYWRkaW5nOiAycmVtIDFyZW07XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICAgICAgaGVpZ2h0OiAxMDB2aDtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tdGhlbWUtYmcpO1xuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogODAwcHgpIHtcbiAgICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgICAgICBwYWRkaW5nOiA2dncgM3Z3O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9faW1hZ2Utd3JhcCB7XG4gICAgICAgIHdpZHRoOiAyMDBweDtcbiAgICAgICAgaGVpZ2h0OiAyMDBweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG5cbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDgwMHB4KSB7XG4gICAgICAgICAgICB3aWR0aDogMTUuNnZ3O1xuICAgICAgICAgICAgaGVpZ2h0OiAxNS42dnc7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzdnc7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19pbWFnZSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICAmLS1zZWNvbmRhcnkge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19uYW1lIHtcbiAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWhlYWRlci1mb250KTtcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1zaXplLXBsdXMyKTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLXdlaWdodC1saWdodCk7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiB2YXIoLS1oZWFkaW5nLXRyYWNraW5nKTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWhlYWRlci1saW5lLWhlaWdodCk7XG4gICAgICAgIG1hcmdpbjogMCAwIDAuM2VtO1xuICAgIH1cblxuICAgICZfX3JvbGUge1xuICAgICAgICBmb250LWZhbWlseTogdmFyKC0tYm9keS1mb250KTtcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1zaXplLXBsdXMwKTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLXdlaWdodC1saWdodCk7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1ib2R5LWxpbmUtaGVpZ2h0KTtcbiAgICAgICAgbWFyZ2luOiAwIDAgMnJlbTtcbiAgICAgICAgb3BhY2l0eTogMC42O1xuICAgIH1cblxuICAgICZfX2JpbyB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1ib2R5LWZvbnQpO1xuICAgICAgICBmb250LXNpemU6IHZhcigtLXNpemUtcGx1czApO1xuICAgICAgICBmb250LXdlaWdodDogdmFyKC0td2VpZ2h0LWxpZ2h0KTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktbGluZS1oZWlnaHQpO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzcmVtO1xuXG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA4MDBweCkge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNHZ3O1xuICAgICAgICB9XG5cbiAgICAgICAgcDpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19jbG9zZSB7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgY29sb3I6IHZhcigtLWFiYy1ibGFjayk7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYWJjLWJsYWNrKTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWFiYy1ibGFjayk7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tYWJjLW9mZi13aGl0ZSk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIuYmxvY2stcHJvamVjdC1ncmlkIHtcbn1cblxuLnByb2plY3QtZmlsdGVyLW5hdiB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgZ2FwOiAxcmVtO1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICBwYWRkaW5nOiAwO1xuXG4gIGxpIGEge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tdHlwZS1uYXYpO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBjb2xvcjogdmFyKC0tbWVpLWJyb3duKTtcblxuICAgICYuYWN0aXZlLFxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1tZWktbmVhci1ibGFjayk7XG4gICAgfVxuICB9XG59XG5cbi5wcm9qZWN0LWNhcmQge1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xuXG4gICZfX2ltYWdlIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIG1hcmdpbi1ib3R0b206IDAuNzVyZW07XG5cbiAgICBpbWcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzO1xuICAgIH1cblxuICAgICY6aG92ZXIgaW1nLFxuICAgICY6Zm9jdXMtdmlzaWJsZSBpbWcge1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjAzKTtcbiAgICB9XG4gIH1cblxuICAmX19jbGllbnQge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tc2l6ZS1wbHVzMCk7XG4gICAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbTtcbiAgfVxuXG4gIGgzIHtcbiAgICBmb250LXNpemU6IHZhcigtLXNpemUtcGx1czIpO1xuICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcblxuICAgIGEge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgfVxuICB9XG59XG4iLCIuYmxvY2stcHJvamVjdC1saXN0IHtcbn1cblxuLnByb2plY3QtZmlsdGVyLW5hdiB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgZ2FwOiAxcmVtO1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICBwYWRkaW5nOiAwO1xuXG4gIGxpIGEge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tdHlwZS1uYXYpO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBjb2xvcjogdmFyKC0tbWVpLWJyb3duKTtcblxuICAgICYuYWN0aXZlLFxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1tZWktbmVhci1ibGFjayk7XG4gICAgfVxuICB9XG59XG5cbi5wcm9qZWN0LWxpc3QtaXRlbXMge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi5wcm9qZWN0LWxpc3QtaXRlbSB7XG4gIGJvcmRlci10b3A6IHZhcigtLWxpbmUtbGlnaHQpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cy13aXRoaW4ge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLW1laS1jcmVhbSk7XG4gIH1cblxuICAmOmhvdmVyIC5wcm9qZWN0LWxpc3QtaXRlbV9fdGh1bWIsXG4gICY6Zm9jdXMtd2l0aGluIC5wcm9qZWN0LWxpc3QtaXRlbV9fdGh1bWIge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAmX19pbm5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBwYWRkaW5nOiAwLjlyZW0gMDtcbiAgfVxuXG4gICZfX3RpdGxlIHtcbiAgICBmb250LXNpemU6IHZhcigtLXR5cGUtYm9keSk7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGNvbG9yOiBpbmhlcml0O1xuXG4gICAgaDMge1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbiAgfVxuXG4gICZfX21ldGEge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tdHlwZS1uYXYpO1xuICAgIGNvbG9yOiB2YXIoLS1tZWktZ3JleSk7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIH1cblxuICAmX190aHVtYiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICB3aWR0aDogMTAwcHg7XG4gICAgaGVpZ2h0OiAxMDBweDtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycztcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB6LWluZGV4OiAyO1xuXG4gICAgaW1nIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgfVxuICB9XG59XG4iLCIuYmxvY2stcHJvamVjdHNpbmdsZS1nYWxsZXJ5IHtcbn1cblxuLmdhbGxlcnktcGFpciB7XG4gICZfX2ltYWdlIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgaW1nLFxuICAgIHZpZGVvIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiA0MDBweDtcbiAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG59XG4iLCIuYmxvY2stcHJvamVjdHNpbmdsZS1oZXJvIHtcbiAgJl9fY2xpZW50IHtcbiAgICBmb250LXNpemU6IHZhcigtLXR5cGUtbmF2KTtcbiAgICBjb2xvcjogdmFyKC0tbWVpLWdyZXkpO1xuICAgIHBhZGRpbmc6IDEuNXJlbSAwIDAuNXJlbTtcbiAgfVxuXG4gICZfX2ltYWdlIHtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIGltZyxcbiAgICB2aWRlbyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogNjB2aDtcbiAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG59XG4iLCIuYmxvY2stcHJvamVjdHNpbmdsZS10ZXh0IHtcbiAgcGFkZGluZzogM3JlbSAwO1xuXG4gICZfX21ldGEge1xuICB9XG5cbiAgJl9fY2xpZW50IHtcbiAgICBmb250LXNpemU6IHZhcigtLXR5cGUtbmF2KTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGNvbG9yOiB2YXIoLS1tZWktZGFyayk7XG4gICAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbTtcbiAgfVxuXG4gICZfX2xvY2F0aW9uIHtcbiAgICBmb250LXNpemU6IHZhcigtLXR5cGUtbmF2KTtcbiAgICBjb2xvcjogdmFyKC0tbWVpLWdyZXkpO1xuICB9XG5cbiAgJl9fY29udGVudCB7XG4gICAgZm9udC1zaXplOiB2YXIoLS10eXBlLWJvZHkpO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjc1O1xuXG4gICAgcCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtO1xuICAgIH1cbiAgfVxufVxuIiwiLmJsb2NrLXNlY3Rpb24tcHJvamVjdHMge1xuICBwYWRkaW5nLXRvcDogNHZ3O1xuICBwYWRkaW5nLWJvdHRvbTogNnZ3O1xuICAtLXRoZW1lLWFjY2VudDogdmFyKC0tc3VuLWIpO1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc5OXB4KSB7XG4gICAgcGFkZGluZy10b3A6IDJyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDNyZW07XG4gIH1cblxuICAmX19oZWFkaW5nIHtcbiAgICBmb250LXNpemU6IHZhcigtLXNpemUtcGx1czIpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS13ZWlnaHQtbGlnaHQpO1xuICAgIGxldHRlci1zcGFjaW5nOiB2YXIoLS1oZWFkaW5nLXRyYWNraW5nKTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0taGVhZGVyLWxpbmUtaGVpZ2h0KTtcbiAgICBtYXJnaW4tYm90dG9tOiAzdnc7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3OTlweCkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICAgIH1cbiAgfVxuXG4gICZfX2dyaWQge1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICB9XG5cbiAgJl9fY2FyZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwMHB4KSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxuXG4gICZfX2NhcmQtbGluayB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgJjpob3ZlciAuYmxvY2stc2VjdGlvbi1wcm9qZWN0c19fY2FyZC1pbWFnZSBpbWcge1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjAzKTtcbiAgICB9XG4gIH1cblxuICAmX19jYXJkLWltYWdlIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG5cbiAgICBpbWcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDE4dnc7XG4gICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZTtcblxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzk5cHgpIHtcbiAgICAgICAgaGVpZ2h0OiA1NXZ3O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICZfX2NhcmQtbWV0YSB7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gICZfX2NhcmQtY2xpZW50IHtcbiAgICBmb250LXNpemU6IHZhcigtLXNpemUtbWludXMxKTtcbiAgICBmb250LXdlaWdodDogdmFyKC0td2VpZ2h0LWJvbGQpO1xuICAgIGNvbG9yOiB2YXIoLS10aGVtZS1mZywgdmFyKC0tYWJjLWJsYWNrKSk7XG4gICAgb3BhY2l0eTogMC41O1xuICAgIG1hcmdpbi1ib3R0b206IDAuMjVyZW07XG4gIH1cblxuICAmX19jYXJkLXRpdGxlIHtcbiAgICBmb250LXNpemU6IHZhcigtLXNpemUtcGx1czApO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS13ZWlnaHQtcmVndWxhcik7XG4gICAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWhlYWRpbmctdHJhY2tpbmcpO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1oZWFkZXItbGluZS1oZWlnaHQpO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICAmX19jdGEtY2VsbCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzk5cHgpIHtcbiAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgfVxuICB9XG5cbiAgJl9fY3RhIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBjb2xvcjogdmFyKC0tdGhlbWUtZmcsIHZhcigtLWFiYy1ibGFjaykpO1xuICAgIHdpZHRoOiAxNS42dnc7XG4gICAgaGVpZ2h0OiAxNS42dnc7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXRoZW1lLWFjY2VudCk7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjNzIGVhc2UsIGNvbG9yIDAuM3MgZWFzZTtcblxuICAgIHNwYW4ge1xuICAgICAgZm9udC1zaXplOiB2YXIoLS1zaXplLXBsdXMyKTtcbiAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS13ZWlnaHQtbGlnaHQpO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWhlYWRpbmctdHJhY2tpbmcpO1xuICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWhlYWRlci1saW5lLWhlaWdodCk7XG4gICAgICBtYXgtd2lkdGg6IDc1JTtcbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWFjY2VudCk7XG4gICAgICBjb2xvcjogdmFyKC0tYWJjLW9mZi13aGl0ZSk7XG4gICAgfVxuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzk5cHgpIHtcbiAgICAgIHdpZHRoOiA1NXZ3O1xuICAgICAgaGVpZ2h0OiA1NXZ3O1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG5cbiAgICAgIHNwYW4ge1xuICAgICAgICBmb250LXNpemU6IHZhcigtLXR5cGUtYm9keS1sZyk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIuYmxvY2sgKyAuYmxvY2sge1xuICAgICYuYmxvY2stc2VjdGlvbi1zdWJwYWdlcyB7XG4gICAgICAgIG1hcmdpbjogMS44cmVtIDA7XG4gICAgfVxufVxuLmJsb2NrLXNlY3Rpb24tc3VicGFnZXMge1xuICAgIHBhZGRpbmc6IDRyZW0gMDtcbiAgICAmX19pbm5lciB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIH1cblxuICAgIGgzIHtcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1zaXplLXBsdXMyKTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgIH1cblxuICAgICZfX2hlYWRpbmcge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBnYXA6IDAuNXJlbTtcblxuICAgICAgICBzdmcge1xuICAgICAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc2VjdGlvbi1zdWJwYWdlc19fbGlua3Mge1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBtYXJnaW46IDEuMzVlbSAwIDAgMDtcbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDgwMHB4KSB7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgZ2FwOiAwO1xuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1zaXplLW1pbnVzMSk7XG4gICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogODAwcHgpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLXNpemUtcGx1czIpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogdmFyKC0taGVhZGluZy10cmFja2luZyk7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiLmJsb2NrLXNlcnZpY2Utc3VicGFnZS1oZXJvIHtcbiAgcGFkZGluZy10b3A6IDUuNnJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGhlbWUtYmcpO1xuICBoMS5zZXJ2aWNlLXN1YnBhZ2UtaGVyb19fdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tc2l6ZS1wbHVzNCk7XG4gICAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgICBtYXJnaW4tYm90dG9tOiAzLjZlbTtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIC0tYmxhY2s6IHZhcigtLXRoZW1lLWZnKTtcbiAgfVxuXG4gIC5zZXJ2aWNlLXN1YnBhZ2UtaGVyb19faW1hZ2Uge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi10b3A6IDNyZW07XG5cbiAgICBpbWcsXG4gICAgdmlkZW8ge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDU1dmg7XG4gICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxufVxuIiwiLmJsb2NrICsgLmJsb2NrIHtcbiAgJi5ibG9jay1zZXJ2aWNlcy1jb250ZW50IHtcbiAgICBtYXJnaW46IDEuOHJlbSAwO1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3OTlweCkge1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbiAgfVxufVxuXG4uYmxvY2stc2VydmljZXMtY29udGVudCB7XG4gIHBhZGRpbmc6IDRyZW0gMDtcblxuICAmICsgJiB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLXRoZW1lLWFjY2VudCk7XG4gIH1cblxuICBAbWVkaWEgKG1heC13aWR0aDogNzk5cHgpIHtcbiAgICBwYWRkaW5nOiAwLjlyZW0gMDtcbiAgICAuYnRuIHtcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0tc2l6ZS1taW51czIpO1xuICAgIH1cbiAgfVxuXG4gIC5zZXJ2aWNlcy1jb250ZW50X19sYXlvdXQge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiA4MDBweCkge1xuICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDEyLCAxZnIpO1xuICAgICAgY29sdW1uLWdhcDogMS41dnc7XG4gICAgICBhbGlnbi1pdGVtczogc3RhcnQ7XG4gICAgfVxuICB9XG5cbiAgaDMge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tc2l6ZS1wbHVzMCk7XG4gICAgbWFyZ2luOiAwO1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiA4MDBweCkge1xuICAgICAgZm9udC1zaXplOiB2YXIoLS1zaXplLXBsdXMyKTtcbiAgICB9XG4gIH1cblxuICAuc2VydmljZXMtY29udGVudF9fdHJpZ2dlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICBnYXA6IDAuNXJlbTtcblxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3OTlweCkge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA4MDBweCkge1xuICAgICAgZ3JpZC1jb2x1bW46IDEgLyBzcGFuIDM7XG4gICAgICBncmlkLXJvdzogMTtcbiAgICB9XG4gIH1cblxuICAuc2VydmljZXMtY29udGVudF9fYm9keSB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc5OXB4KSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA4MDBweCkge1xuICAgICAgZGlzcGxheTogY29udGVudHM7XG4gICAgfVxuICB9XG5cbiAgJi5pcy1vcGVuIC5zZXJ2aWNlcy1jb250ZW50X19ib2R5IHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzk5cHgpIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgZ2FwOiAxLjI1cmVtO1xuICAgICAgcGFkZGluZy10b3A6IDEuMjVyZW07XG4gICAgfVxuICB9XG5cbiAgLnNlcnZpY2VzLWNvbnRlbnRfX2NvbnRlbnQtdGV4dCB7XG4gICAgcCxcbiAgICBsaSxcbiAgICB1bCxcbiAgICBvbCB7XG4gICAgICBmb250LXNpemU6IHZhcigtLXNpemUtbWludXMxKTtcbiAgICAgIG1hcmdpbi10b3A6IDAuNDVyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAwLjQ1cmVtO1xuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDgwMHB4KSB7XG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tc2l6ZS1wbHVzMik7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEuMjVlbTtcbiAgICAgIH1cbiAgICB9XG4gICAgdWwge1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICB9XG4gICAgbGkge1xuICAgICAgcGFkZGluZy1sZWZ0OiAxLjI1ZW07XG4gICAgICB0ZXh0LWluZGVudDogLTEuMjVlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuNjVlbTtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCLigJMgXCI7XG4gICAgICB9XG4gICAgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA4MDBweCkge1xuICAgICAgZ3JpZC1jb2x1bW46IDUgLyBzcGFuIDY7XG4gICAgICBncmlkLXJvdzogMTtcbiAgICB9XG4gIH1cblxuICAuc2VydmljZXMtY29udGVudF9fY3RhIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogODAwcHgpIHtcbiAgICAgIGdyaWQtY29sdW1uOiAxMSAvIHNwYW4gMjtcbiAgICAgIGdyaWQtcm93OiAxO1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgfVxuICB9XG5cbiAgLnNlcnZpY2VzLWNvbnRlbnRfX2xpbmtzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBnYXA6IDAuNzVyZW07XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogODAwcHgpIHtcbiAgICAgIGdyaWQtY29sdW1uOiA1IC8gLTE7XG4gICAgICBvcmRlcjogMTtcbiAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgfVxuICB9XG5cbiAgLnNlcnZpY2VzLWNvbnRlbnRfX2ltYWdlIHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzk5cHgpIHtcbiAgICAgIG9yZGVyOiAtMTtcbiAgICB9XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogODAwcHgpIHtcbiAgICAgIGdyaWQtY29sdW1uOiA1IC8gc3BhbiA2O1xuICAgICAgb3JkZXI6IDI7XG4gICAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgIH1cblxuICAgIGltZyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxufVxuIiwiLmJsb2NrLXNlcnZpY2VzLWhlcm8ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRoZW1lLWJnKTtcbiAgLS1ibGFjazogdmFyKC0tdGhlbWUtZmcpO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICZfX3RleHQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAyO1xuICAgIHBhZGRpbmc6IDJyZW0gMDtcblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwMHB4KSB7XG4gICAgICBwYWRkaW5nOiAxOHZ3IDAgNHZ3O1xuICAgIH1cbiAgfVxuXG4gICZfX3RpdGxlIHtcbiAgICBmb250LXNpemU6IHZhcigtLXNpemUtcGx1czQpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS13ZWlnaHQtbGlnaHQpO1xuICAgIGxldHRlci1zcGFjaW5nOiB2YXIoLS1oZWFkaW5nLXRyYWNraW5nKTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0taGVhZGVyLWxpbmUtaGVpZ2h0KTtcbiAgICBtYXJnaW46IDUwdncgMCAwLjVlbTtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogODAwcHgpIHtcbiAgICAgIG1hcmdpbjogMCAwIDAuNWVtO1xuICAgIH1cbiAgfVxuXG4gICZfX2NvbnRlbnQge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tc2l6ZS1wbHVzMCk7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDgwMHB4KSB7XG4gICAgICBmb250LXNpemU6IHZhcigtLXNpemUtcGx1czIpO1xuICAgIH1cbiAgICBmb250LXdlaWdodDogdmFyKC0td2VpZ2h0LWxpZ2h0KTtcbiAgICBsZXR0ZXItc3BhY2luZzogdmFyKC0taGVhZGluZy10cmFja2luZyk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWJvZHktbGluZS1oZWlnaHQpO1xuXG4gICAgcCB7XG4gICAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgICBmb250LXdlaWdodDogaW5oZXJpdDtcbiAgICAgIGxldHRlci1zcGFjaW5nOiBpbmhlcml0O1xuICAgICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgfVxuICB9XG5cbiAgJl9fY2lyY2xlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYXNwZWN0LXJhdGlvOiAxO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgY2xpcC1wYXRoOiBpbnNldCgwIHJvdW5kIDUwJSk7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3OTlweCkge1xuICAgICAgd2lkdGg6IDkwdnc7XG4gICAgICBhc3BlY3QtcmF0aW86IDE7XG4gICAgICBtYXJnaW46IDJyZW0gYXV0bztcbiAgICAgIGNsaXAtcGF0aDogbm9uZTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICB9XG5cbiAgICBpbWcsXG4gICAgdmlkZW8ge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgIG9iamVjdC1wb3NpdGlvbjogdG9wO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG59XG4iXX0= */