html{--margin-inline: 1.25rem}@font-face{font-family:"ProtestGrotesk";font-weight:700;font-style:normal;font-display:auto;src:url("./fonts/ProtestGrotesk/ProtestGrotesk700.woff2") format("woff2"),url("./fonts/ProtestGrotesk/ProtestGrotesk700.woff") format("woff")}@font-face{font-family:"ProtestGroteskMono";font-weight:400;font-style:normal;font-display:auto;src:url("./fonts/ProtestGroteskMono/ProtestGroteskMono400.woff2") format("woff2"),url("./fonts/ProtestGroteskMono/ProtestGroteskMono400.woff") format("woff")}.font-sans{font-family:"ProtestGrotesk",sans-serif}.font-mono{font-family:"ProtestGroteskMono",monospace}.fw-1{font-weight:100 !important}.fw-2{font-weight:200 !important}.fw-3{font-weight:300 !important}.fw-4{font-weight:400 !important}.fw-5{font-weight:500 !important}.fw-6{font-weight:600 !important}.fw-7{font-weight:700 !important}.fw-8{font-weight:800 !important}.fw-9{font-weight:900 !important}body::before{display:none}@media (max-width: 659px) and (orientation: portrait){body::before{content:"phone"}}@media (min-width: 660px) and (max-width: 1023px) and (orientation: portrait){body::before{content:"tablet"}}@media (min-width: 1024px){body::before{content:"desktop"}}@media (max-width: 659px) and (orientation: portrait){.phone-hide{display:none !important}}@media (max-height: 659px) and (orientation: landscape){.phone-landscape-hide{display:none !important}}@media (min-width: 660px) and (max-width: 1023px) and (orientation: portrait){.tablet-hide{display:none !important}}@media (min-width: 1024px){.desktop-hide{display:none !important}}@media (max-width: 1023px){.desktop-only{display:none !important}}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;vertical-align:baseline}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:'';content:none}table{border-collapse:collapse;border-spacing:0}input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus input:-webkit-autofill,textarea:-webkit-autofill,textarea:-webkit-autofill:hover textarea:-webkit-autofill:focus,select:-webkit-autofill,select:-webkit-autofill:hover,select:-webkit-autofill:focus{-webkit-text-fill-color:white;-webkit-transition:background-color 5000s ease-in-out 0s;transition:background-color 5000s ease-in-out 0s}::-moz-placeholder{color:transparent;opacity:1}::placeholder{color:transparent;opacity:1}:-ms-input-placeholder{color:transparent}::-ms-input-placeholder{color:transparent}input[type="search"]::-webkit-search-decoration,input[type="search"]::-webkit-search-cancel-button,input[type="search"]::-webkit-search-results-button,input[type="search"]::-webkit-search-results-decoration{display:none}@keyframes slideUp{from{transform:translateY(0)}to{transform:translateY(-100%)}}*,*::before,*::after{box-sizing:border-box}:root{--app-height: calc(100svh - 93px);--app-scale: 1}html{background-color:#F6F9F6;position:relative;height:100%;font-size:16px}@media (min-width: 1024px){html{font-size:1.25vw}}@media (min-width: 1800px){html{font-size:22.5}}body{background:#F6F9F6;line-height:150%;text-align:left;overflow-x:hidden;font-feature-settings:"ss02";overscroll-behavior:none}body,input,textarea,button,select,code,pre,svg text{font-family:"ProtestGroteskMono",monospace;font-weight:400;font-size:inherit;color:#222625;-webkit-font-smoothing:antialiased}input,textarea,button,select,svg text{-moz-osx-font-smoothing:grayscale;-webkit-appearance:none;-webkit-font-smoothing:antialiased;background:none;border-radius:0;border:none;color:inherit;margin:0;padding:0}button,select,label{cursor:pointer}a{color:inherit;text-decoration:none;transition:color .25s cubic-bezier(0.5, 0, 0.2, 1)}a,button,label{-webkit-tap-highlight-color:rgba(0,0,0,0)}b,strong{font-weight:700}i,em{font-style:italic}svg{vertical-align:middle}mark{background-color:transparent}hr{display:block;border:none;background:none;margin:0}sup{vertical-align:super;font-size:70%}*:focus{outline:none}::-moz-selection{background:#222625;color:#F6F9F6;text-shadow:none}::selection{background:#222625;color:#F6F9F6;text-shadow:none}.work ::-moz-selection{background:#F6F9F6;color:#222625}.work ::selection{background:#F6F9F6;color:#222625}h2,h3,h4,h5,h6{font-weight:400}textarea{resize:none}img{max-width:100%;display:block}ul{list-style-type:none}.visually-hidden,.sr-only,.screen-reader-text{position:absolute;overflow:hidden;height:1px;width:1px;margin:-1px;padding:0;border:none;clip:rect(0 0 0 0)}.mapboxgl-control-container{display:none}.module-ie{position:absolute;top:0;left:0;width:100%;height:100%;background:#F6F9F6;transform-origin:100% 100%;display:none}.ie .module-ie{display:flex;flex-direction:column;justify-content:center;align-items:center}.module-ie strong{font-size:26px;font-size:1.625rem;line-height:1;margin-bottom:20px}[aria-hidden="true"]{display:none}.grecaptcha-badge{opacity:0;pointer-events:none}.wrap{margin-inline:var(--margin-inline);position:relative}@media (min-width: 660px) and (max-width: 1023px) and (orientation: portrait){.wrap{margin-inline:2rem}}@media (max-width: 659px) and (orientation: portrait){.wrap{margin-inline:1rem}}body.is-not-ready article{opacity:0}article>.deco{margin-top:0;top:1.5625vw}@media (min-width: 660px) and (max-width: 1023px) and (orientation: portrait){article>.deco{top:2.73438vw}}@media (max-width: 659px) and (orientation: portrait){article>.deco{top:5.6vw}}article .text__link{position:relative}article .text__link:before{content:"";position:absolute;left:0;bottom:0;width:100%;height:1px;background-color:#222625;transform:scale(1);transition:transform .25s cubic-bezier(0.5, 0, 0.2, 1)}.no-touch article .text__link:hover:before,.accessibility article .text__link:focus:before{transform:scale(0)}.multiline-text{display:flex;flex-direction:column;gap:1.2em}html.lenis{height:auto}.lenis.lenis-smooth{scroll-behavior:auto}.lenis.lenis-smooth [data-lenis-prevent]{overscroll-behavior:contain}.lenis.lenis-stopped{overflow:hidden}.lenis.lenis-scrolling iframe{pointer-events:none}.module__text-screenshot{display:flex;flex-direction:row;justify-content:space-between;align-items:flex-start}@media (max-width: 1023px){.module__text-screenshot{flex-direction:column-reverse;gap:10.66667vw}}@media (min-width: 1024px){.module__text-screenshot .screenshots{display:flex;flex-direction:row;justify-content:space-between;align-items:flex-start;width:69.84375vw}}@media (max-width: 1023px){.module--video{padding-top:4.0625rem}}.module__screenshot--right{display:flex;justify-content:flex-end}.module--padding-bottom{padding-bottom:10.9375vw}@media (max-width: 659px) and (orientation: portrait){.module--padding-bottom{padding-bottom:10.66667vw}}.player{position:relative;width:69.92188vw;overflow:hidden;cursor:pointer;margin:0 auto;-webkit-user-select:none;-moz-user-select:none;user-select:none;color:#222625}@media (max-width: 1023px){.player{width:100%}}.player__video{width:100%;position:relative;overflow:hidden;cursor:pointer;margin:0 auto;-webkit-user-select:none;-moz-user-select:none;user-select:none;height:39.375vw;border-radius:.46875vw}@media (max-width: 1023px){.player__video{border-radius:.1875rem}}.player__video video{pointer-events:auto !important}@media (min-width: 660px) and (max-width: 1023px) and (orientation: portrait){.player__video{height:51.5625vw}}@media (max-width: 659px) and (orientation: portrait){.player__video{height:51.46667vw}}.player video,.player iframe{background-color:#222625;position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;-o-object-fit:cover;object-fit:cover}.player__poster{position:absolute;top:0;left:0;width:100%;height:100%;background-repeat:no-repeat;background-size:cover;background-position:center;pointer-events:none}.is-playing .player__poster,.is-played .player__poster{opacity:0 !important}.player{font-weight:400}.player__bar{display:flex;flex-direction:row;justify-content:center;align-items:center;font-size:14px;font-size:.875rem;line-height:1.52;position:relative;margin-top:.625vw;width:100%;height:2.34375vw;z-index:1;letter-spacing:-0.15em}@media (min-width: 660px) and (max-width: 1023px) and (orientation: portrait){.player__bar{height:6.25vw}}@media (max-width: 659px) and (orientation: portrait){.player__bar{height:12.8vw;transform:translateY(0) !important}}.player__controls{display:flex;flex-direction:row;justify-content:flex-start;align-items:center;width:100%;height:100%}.player__playpause{display:flex;flex-direction:row;justify-content:center;align-items:center;margin-right:.46875vw;min-width:5.78125vw;height:100%}@media (max-width: 659px) and (orientation: portrait){.player__playpause{min-width:13.86667vw}}.player__playpause button{position:relative;width:100%;height:100%}.player__playpause span{position:absolute;left:0;top:50%;width:100%;transition:opacity .5s cubic-bezier(0.5, 0, 0.2, 1);transform:translateY(-50%);letter-spacing:-0.15em}.player__playpause span:first-child{transition-delay:.25s}.is-playing .player__playpause span:first-child{transition-delay:0s;opacity:0}.player__playpause span:last-child{opacity:0;transition-delay:0s}.is-playing .player__playpause span:last-child{opacity:1;transition-delay:.25s}@media (max-width: 1023px){.player__playpause{justify-content:flex-start}}.player__time{display:flex;flex-direction:row;justify-content:center;align-items:center;cursor:default;width:80px;white-space:nowrap;text-align:center;color:#222625;pointer-events:none;position:relative}@media (max-width: 659px) and (orientation: portrait){.player__time{width:52px}}.player__scrubber-wrap{flex:1}@media (max-width: 659px) and (orientation: portrait){.player__scrubber-wrap{margin-inline:2.66667vw}}.player__scrubber{position:relative;height:100%;opacity:1}.player__scrubber::before{background:#222625;content:"";height:1px;top:50%;width:100%;position:absolute;left:0;opacity:.3}.player__scrubber>div{position:absolute;left:0;top:50%;height:1px;width:0%;transition:.25s cubic-bezier(0.5, 0, 0.2, 1);transform:translate(0, -.5px)}.player__loaded{background:#3A3B3B;opacity:0}.player__progress{background:#222625;opacity:1}.player__volume{display:flex;flex-direction:row;justify-content:center;align-items:center;width:6.25vw;height:100%;margin-right:.3125vw}@media (max-width: 659px) and (orientation: portrait){.player__volume{width:16.26667vw}}.player__volume button{position:relative;width:100%;height:100%}.player__volume span{position:absolute;left:0;top:50%;width:100%;transition:opacity .5s cubic-bezier(0.5, 0, 0.2, 1);transform:translateY(-50%);letter-spacing:-0.15em}.player__volume span:first-child{transition-delay:.25s}.is-muted .player__volume span:first-child{transition-delay:0s;opacity:0}.player__volume span:last-child{opacity:0;transition-delay:0s}.is-muted .player__volume span:last-child{opacity:1;transition-delay:.25s}.icon-arrow{display:inline-block;width:0.75em;height:0.75em;position:relative}.icon-arrow::before{content:"";display:block;position:absolute;width:0.51em;height:0.51em;top:50%;right:0;border-width:0 1px 1px 0;border-color:transparent currentColor currentColor transparent;border-style:solid;transform:translate(-20%, -50%) rotate(-45deg)}.icon-arrow::after{content:"";display:block;position:absolute;background:currentColor;inset-inline:0;height:1px;top:50%}.icon-plus{position:relative;width:0.75em;height:0.75em;display:inline-block}.icon-plus::before,.icon-plus::after{content:"";background:currentColor;position:absolute;display:block;top:50%;left:50%;margin:-0.375em;width:inherit;height:inherit}.icon-plus::before{width:1px;margin-inline:0}.icon-plus::after{height:1px;margin-block:0}.svg-sprite{display:none}.svg-arrow-right{vertical-align:baseline}@media (min-width: 1024px){.svg-arrow-right{margin-right:.85938vw;width:9.53125vw}}@media (min-width: 660px) and (max-width: 1023px) and (orientation: portrait){.svg-arrow-right{margin-right:.4375rem;width:7.8125vw}}@media (max-width: 659px) and (orientation: portrait){.svg-arrow-right{margin-right:.4375rem;width:8vw}}[class^=sprite-]{fill:currentColor;position:relative}html.windows [class^=sprite-]{top:-2px}.deco{position:relative;background-image:repeating-linear-gradient(90deg, currentColor, currentColor 1px, transparent 1px, transparent 12.5%);border-right:1px solid currentColor;height:1.5625vw;width:100%;margin-block:1.5625vw;z-index:9999;transition:opacity .5s cubic-bezier(0.5, 0, 0.2, 1) .5s}.work .deco:not(.footer__deco){background-image:repeating-linear-gradient(90deg, #F6F9F6, #F6F9F6 1px, transparent 1px, transparent 12.5%);z-index:1}.is-not-ready .deco{opacity:0}@media (min-width: 660px) and (max-width: 1023px) and (orientation: portrait){.deco{margin-block:2.73438vw;height:2.60417vw}}@media (max-width: 659px) and (orientation: portrait){.deco{margin-block:5.6vw;height:4.26667vw;background-image:repeating-linear-gradient(90deg, currentColor, currentColor 1px, transparent 1px, transparent 16.66667%)}}.work .deco:not(.footer__deco){position:absolute;top:1.5625vw;margin:0}@media (min-width: 660px) and (max-width: 1023px) and (orientation: portrait){.work .deco:not(.footer__deco){top:2.73438vw}}@media (max-width: 659px) and (orientation: portrait){.work .deco:not(.footer__deco){top:5.6vw}}.vline{height:22.875vh;width:1px;margin:0 auto;background:currentColor}.vertical-line{margin:5.85938vw 0;width:1px;height:6.25vw;background-color:#222625}@media (max-width: 659px) and (orientation: portrait){.vertical-line{margin:14.66667vw 0;height:10.66667vw}}@media (min-width: 1024px){.skills--subpage .vertical-line{position:absolute;left:50%;height:100%;margin:0}.safari .skills--subpage .vertical-line{transform:translateX(-50%)}}@media (min-width: 1024px){.goals .vertical-line{margin:4.53125vw 0}}@media (min-width: 1024px){.goals .vertical-line.vertical-line--big{margin-top:0;height:12.10938vw}}@media (min-width: 1024px){.heading-text .vertical-line{margin:5.15625vw 0}}@media (min-width: 1024px){.goal>.vertical-line:is(:nth-last-child(2),:nth-last-child(3)){margin-bottom:2.8125vw}}.counter{display:flex;flex-direction:row;justify-content:center;align-items:stretch;position:relative;width:7rem;z-index:1}@media (min-width: 1024px){.counter{height:2.26562vw;transition:transform 0.4s cubic-bezier(0.5, 0, 0.2, 1);will-change:transform}}@media (max-width: 659px) and (orientation: portrait){.counter{height:6.66667vw;width:22.66667vw}}.hero .counter{transform:translateY(104%)}.counter__wrap{overflow:hidden}@media (min-width: 1024px){.counter__wrap{margin:0 0 .15625vw -.78125vw}}@media (max-width: 659px) and (orientation: portrait){.counter__wrap{margin-left:-1.86667vw}}.footer-subpage .counter__wrap{margin:0 0 .23438vw -.39062vw}@media (max-width: 659px) and (orientation: portrait){.footer-subpage .counter__wrap{margin:0 0 .8vw -2.13333vw}}.counter div{font-size:13px;font-size:.8125rem;line-height:1.2;display:flex;flex-direction:row;justify-content:center;align-items:center;text-align:center}.counter div:nth-child(2){flex-grow:1}.counter div:not(:nth-child(2)){width:2.5625rem}.counter span{display:block;width:11px;height:1px;background-color:#F6F9F6;transform:rotate(-45deg)}.footer-subpage .counter{transform:translateY(101%)}@media (max-width: 1023px){.footer-subpage .counter{transform:translateY(1%)}}@media (max-width: 659px) and (orientation: portrait){.footer-subpage .counter{width:22.66667vw}}.footer-subpage .counter span{background-color:#222625}@media (min-width: 1024px){.screenshot{margin-top:.46875vw;width:69.84375vw}}.screenshot__frame{position:relative;width:100%;height:1.64062vw;background-color:#222625;border-top-left-radius:.46875vw;border-top-right-radius:.46875vw}@media (max-width: 659px) and (orientation: portrait){.screenshot__frame{height:4vw;border-top-left-radius:.8vw;border-top-right-radius:.8vw}}.screenshot__frame::before{content:"";position:absolute;top:38%;left:.625vw;width:.39062vw;height:.39062vw;background-color:#F6F9F6;border-radius:50%;z-index:1;box-shadow:9px 0 0 0 #F6F9F6,18px 0 0 0 #F6F9F6;opacity:.5}@media (max-width: 659px) and (orientation: portrait){.screenshot__frame::before{top:35%;left:2.13333vw;width:1.06667vw;height:1.06667vw;box-shadow:7px 0 0 0 #545757,14px 0 0 0 #545757}}.screenshot img{border-bottom-left-radius:.46875vw;border-bottom-right-radius:.46875vw}@media (min-width: 1024px){.screenshot--1,.screenshot--2{width:33.4375vw}}@media (min-width: 1024px){.screenshot--1 img,.screenshot--2 img{width:100%;height:20.9375vw;-o-object-fit:cover;object-fit:cover}}@media (max-width: 1023px){.screenshot--1{padding-bottom:2.5rem}}@media (min-width: 1024px){.screenshot--2{margin-top:14.45312vw}}.module__text-screenshot .text p{letter-spacing:-0.07em}@media (min-width: 1024px){.module__text-screenshot .text p{font-size:16px;font-size:1rem;line-height:1.5;padding-bottom:1.71875vw;max-width:21ch}}@media (max-width: 659px) and (orientation: portrait){.module__text-screenshot .text p{font-size:14px;font-size:.875rem;line-height:1.52;width:100%;padding-bottom:5.6vw}}.center-text .text{display:flex;flex-direction:column;justify-content:center;align-items:center}@media (min-width: 1024px){.center-text .text{max-width:56ch;gap:1.875vw}}@media (max-width: 659px) and (orientation: portrait){.center-text .text{width:100%;gap:5.33333vw}}@media (min-width: 1024px){.text-screenshots .text{font-size:16px;font-size:1rem;line-height:1.5;letter-spacing:-0.1em;max-width:23ch}}@media (max-width: 659px) and (orientation: portrait){.text-screenshots .text{height:93.33333vw}}@media (min-width: 1024px){.mobile-screenshots .text{font-size:16px;font-size:1rem;line-height:1.5;padding-left:3.125vw;letter-spacing:-0.05em;max-width:23ch}}@media (max-width: 1023px){.mobile-screenshots .text{font-size:14px;font-size:.875rem;line-height:1.52;margin-top:1.25rem;margin-bottom:3.75rem;order:1;letter-spacing:-0.1em}}.goal{display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center}.goal h4{text-transform:uppercase}@media (min-width: 1024px){.goal h4{font-size:31px;font-size:1.9375rem;line-height:1.1;margin-bottom:.625vw}}@media (max-width: 1023px){.goal h4{margin-bottom:.625rem}}@media (min-width: 1024px){.goal p{font-size:16px;font-size:1rem;line-height:1.5;max-width:40ch;letter-spacing:-0.07em}}@media (max-width: 1023px){.goal p{width:100%}}@media (max-width: 659px) and (orientation: portrait){.goal p{font-size:14px;font-size:.875rem;line-height:1.15}}.goal__content{position:relative;text-align:left;width:100%}.goal--2 p{max-width:45ch}@media (min-width: 1024px){.goal--2 .goal__content p{max-width:55ch}}.heading-text{display:flex;flex-direction:column;justify-content:center;align-items:center}@media (min-width: 1024px){.heading-text{padding:0 8.98438vw}}.heading-text__title{text-transform:uppercase;text-align:center}@media (min-width: 1024px){.heading-text__title{font-size:31px;font-size:1.9375rem;line-height:1.1;margin-bottom:7.34375vw;letter-spacing:-0.005em;max-width:40ch}}@media (max-width: 1023px){.heading-text__title{font-size:24px;font-size:1.5rem;line-height:1.5875;margin-bottom:2.5rem}}@media (max-width: 659px) and (orientation: portrait){.heading-text__title{font-size:20px;font-size:1.25rem;line-height:1.2}}@media (min-width: 1024px){.heading-text__text{width:50%;margin-left:auto;letter-spacing:-0.07em;margin-bottom:3.04688vw}}@media (max-width: 1023px){.heading-text__text{width:100%}}@media (max-width: 659px) and (orientation: portrait){.heading-text__text{font-size:14px;font-size:.875rem;line-height:1.15}}@media (min-width: 1024px){.heading-text__text p:not(:last-child){margin-bottom:1.25vw}}@media (max-width: 1023px){.heading-text__text p:not(:last-child){margin-bottom:1rem}}.big-title{display:flex;flex-direction:column;justify-content:center;align-items:center}.big-title p:first-child{font-size:21px;font-size:1.3125rem;line-height:1.1}@media (min-width: 1024px){.big-title p:first-child{margin-top:3.51562vw;margin-bottom:2.73438vw;text-transform:uppercase}}@media (max-width: 1023px){.big-title p:first-child{margin-bottom:.625rem}}@media (max-width: 659px) and (orientation: portrait){.big-title p:first-child{font-size:16px;font-size:1rem;line-height:1.25625}}.big-title p:last-child{text-align:center}@media (min-width: 1024px){.big-title p:last-child{font-size:16px;font-size:1rem;line-height:1.5;margin-top:14.0625vw;margin-bottom:4.29688vw;max-width:60ch;letter-spacing:-0.07em}}@media (max-width: 1023px){.big-title p:last-child{font-size:14px;font-size:.875rem;line-height:1.15;margin-top:3.125rem}}.render{width:100%;height:100vh;position:fixed;inset:0;bottom:auto;margin-inline:auto;margin-bottom:auto;inset:0;z-index:2;pointer-events:none}@media (min-width: 660px) and (max-width: 1023px) and (orientation: portrait){.render{inset:-26.04167vw 0 0 0;height:115vh}}@media screen and (min-width: 660px) and (max-width: 1023px) and (orientation: portrait) and (max-height: 1024px){.render{inset:-13.02083vw 0 0 0}}@media (max-width: 659px) and (orientation: portrait){.render{display:none}}.render div{width:100%;height:100%}.render div canvas{width:100%;height:100%}@media (max-width: 659px) and (orientation: portrait){.render div canvas{margin-top:-10vh;width:100%;height:80%}}.render .render--old{width:22.875rem;height:39.3125rem;margin:auto}.render .render--old__image{width:100%;height:100%}.hero{position:relative;z-index:auto;min-height:var(--app-height);display:flex;margin-top:8.75vh;flex-direction:column}@media (min-width: 1800px){.hero{margin-top:6.25vh}}@media (max-width: 659px) and (orientation: portrait){.hero{height:100svh}}.work .hero{margin-top:0;height:100dvh;color:#F6F9F6}@media (max-width: 659px) and (orientation: portrait){.work .hero{height:100svh}}@media (max-width: 659px) and (orientation: portrait){.hero--food{height:106svh}}.hero__pin{position:absolute;inset:0;margin:auto;width:22.875rem;height:629px}@media (min-width: 660px) and (max-width: 1023px) and (orientation: portrait){.hero__pin{margin-top:crem(80)}}@media (max-width: 659px) and (orientation: portrait){.hero__pin{display:none}}.hero__logo{margin-bottom:1.625rem;margin-top:auto}@media (min-width: 660px) and (max-width: 1023px) and (orientation: portrait){.hero__logo{margin-bottom:1.25rem;z-index:3}}@media (max-height: 659px) and (orientation: landscape){.hero__logo{margin-top:auto}}@media (max-width: 659px) and (orientation: portrait){.hero__logo{margin-inline:auto;margin-bottom:3.75rem;margin-top:0}}.hero__logo svg{width:20vw;height:auto;overflow:visible}@media (min-width: 660px) and (max-width: 1023px) and (orientation: portrait){.hero__logo svg{width:35.15625vw}}@media (max-width: 659px) and (orientation: portrait){.hero__logo svg{width:12.5rem}}@media (min-width: 1024px){.hero--food .hero__logo{margin-bottom:2.0625rem}}.hero__title{font-family:"ProtestGrotesk",sans-serif;font-weight:700;font-size:157px;font-size:9.8125rem;line-height:.82803;text-transform:uppercase;display:flex;flex-wrap:wrap}@media (min-width: 1024px){.hero__title{margin-bottom:-5vw}}@media (min-width: 660px) and (max-width: 1023px) and (orientation: portrait){.hero__title{font-size:104px;font-size:6.5rem;line-height:1.4;line-height:0.9}}@media (max-width: 659px) and (orientation: portrait){.hero__title{font-size:40px;font-size:2.5rem;line-height:.8;order:1;margin-bottom:1.25rem;width:100%;-moz-column-gap:9px;column-gap:9px;letter-spacing:-.04375em}}.hero__title span:nth-child(1),.hero__title span:nth-child(2){z-index:1;margin-inline-start:-0.05em}@media (max-width: 659px) and (orientation: portrait){.hero__title span:nth-child(1),.hero__title span:nth-child(2){margin-inline-start:0;margin-inline-end:0}}.hero__title span:nth-child(3),.hero__title span:nth-child(4){z-index:3;margin-inline-start:auto;margin-inline-end:-0.05em}@media (max-width: 659px) and (orientation: portrait){.hero__title span:nth-child(3),.hero__title span:nth-child(4){margin-inline-start:0;margin-inline-end:0}}.hero__title span,.hero__title strong{overflow:hidden;position:relative}@media (min-width: 1024px){.hero__title--subpage{margin-left:.23438vw;margin-bottom:0vw;line-height:9.38281vw;letter-spacing:-0.045em}}.hero__title--subpage span{min-width:54.6875vw}.hero--food .hero__title{margin-top:.39062vw}@media (min-width: 660px) and (max-width: 1023px) and (orientation: portrait){.hero--food .hero__title{font-size:90px;font-size:5.625rem;line-height:.77778}}@media (min-width: 1024px){.hero--food .hero__title span{padding-right:.15625vw;letter-spacing:-0.045em}}@media (min-width: 660px){.hero--food .hero__title span:nth-child(2){margin-left:auto}}@media (min-width: 1024px){.hero--food .hero__title span:last-child{padding-right:.46875vw;margin-top:-.5625rem}}.hero__lead{font-family:"ProtestGroteskMono",monospace;font-size:16px;font-size:1rem;line-height:1.375;letter-spacing:-.13em;min-height:2.75rem;max-width:28.75rem;text-wrap:balance}@media (min-width: 660px) and (max-width: 1023px) and (orientation: portrait){.hero__lead{margin-bottom:1.25rem}}@media (max-width: 659px) and (orientation: portrait){.hero__lead{font-size:14px;font-size:.875rem;line-height:1.4;max-width:100%;order:1}}.hero__lead--subpage{position:relative;z-index:1}@media (min-width: 1024px){.hero__lead--subpage{font-size:16px;font-size:1rem;line-height:1.4;letter-spacing:-0.13em;margin-top:1.5625vw;max-width:50ch}}@media (max-width: 659px) and (orientation: portrait){.hero__lead--subpage{letter-spacing:-0.14em}}@media (min-width: 1024px){.hero--food .hero__lead p{line-height:1.875vw;letter-spacing:-0.07em}}@media (max-width: 659px) and (orientation: portrait){.hero__deco{height:1rem}}@media (max-width: 659px) and (orientation: portrait){.hero__deco{order:2}}.hero__figure{display:none}@media (min-width: 660px) and (max-width: 1023px) and (orientation: portrait){.hero__figure{padding-top:1.25rem}}@media (max-width: 659px) and (orientation: portrait){.hero__figure{display:block;position:relative;margin-inline:auto;padding-top:3.125rem}}.hero__figure img{width:17.5rem;margin-bottom:1.25rem}@media (max-width: 659px) and (orientation: portrait){.hero__figure img{width:55.46667vw}}.hero__figure--static{display:flex;position:absolute;justify-content:center;align-items:center;margin-inline:auto;inset:0;z-index:2}.hero__figure--static img{height:37.5rem}.hero__wrap{margin-top:auto;margin-bottom:1.5625vw}@media (max-width: 659px) and (orientation: portrait){.work .hero__wrap{margin-bottom:13.33333vw}}.hero__bg{position:absolute;top:0;left:calc(-1 * var(--margin-inline));width:100vw;height:100vh}@media (min-width: 660px) and (max-width: 1023px) and (orientation: portrait){.hero__bg{left:-2rem}}@media (max-width: 659px) and (orientation: portrait){.hero__bg{left:-1rem}}.hero__bg .video{width:100%;height:100%}.hero__bg video,.hero__bg img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;pointer-events:none}.quote{min-height:100lvh;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:auto;position:relative}@media (min-width: 660px) and (max-width: 1023px) and (orientation: portrait){.quote{min-height:65vh}}@media (max-width: 659px) and (orientation: portrait){.quote{min-height:70lvh}}.quote__pin{width:8.875rem;height:5.375rem;position:absolute;transform:translateY(10px)}.quote p{font-size:157px;font-size:9.8125rem;line-height:.82803;font-family:"ProtestGrotesk",sans-serif;font-weight:700;letter-spacing:-.045em;text-transform:uppercase;display:flex;flex-wrap:wrap}@media (min-width: 660px) and (max-width: 1023px) and (orientation: portrait){.quote p{font-size:85px;font-size:5.3125rem;line-height:.88235}}@media (max-height: 659px) and (orientation: landscape){.quote p{font-size:60px;font-size:3.75rem;line-height:.91667;max-width:36.25rem}}@media (max-width: 659px) and (orientation: portrait){.quote p{font-size:40px;font-size:2.5rem;line-height:.8;display:block;max-width:18.75rem;text-align:center}}.quote p span:first-child u::before{background-image:url("/public/theme/images/svg/quote-open.svg")}.quote p span:last-child u::after{background-image:url("/public/theme/images/svg/quote-open.svg")}@media (min-width: 660px) and (max-width: 1023px) and (orientation: portrait){.quote p span:last-child u::after{margin-left:.3125rem}}.quote p span:first-child u::before,.quote p span:last-child u::after{width:4.5rem;height:3.9375rem;background-size:contain;background-repeat:no-repeat;display:inline-block;vertical-align:top;margin-top:0.03em;content:""}@media (min-width: 660px) and (max-width: 1023px) and (orientation: portrait){.quote p span:first-child u::before,.quote p span:last-child u::after{width:2.5rem;height:1.875rem}}@media (max-height: 659px) and (orientation: landscape){.quote p span:first-child u::before,.quote p span:last-child u::after{width:1.875rem;height:1.625rem}}@media (max-width: 659px) and (orientation: portrait){.quote p span:first-child u::before,.quote p span:last-child u::after{width:1.875rem;height:1.625rem;display:block;margin:1.1875rem auto}}.quote p em{font-style:normal;margin-left:auto}@media (min-width: 1024px){.quote p em{color:#F6F9F6;-webkit-text-stroke:1px #222625;padding-right:0.1em;margin-right:0.14em}}.quote p span:nth-last-child(n-2){margin-right:0}@media (min-width: 1024px){.quote p span:last-child{margin-left:50%;align-self:flex-start;transform:translateX(-.4375rem);z-index:2}}.quote p em,.quote p span{overflow:hidden;position:relative}.quote p em u,.quote p span u{text-decoration:none;display:inline-block}.quote footer{font-size:16px;font-size:1rem;line-height:1.4;letter-spacing:-.13em;margin-top:1.875rem;margin-left:50%;align-self:flex-start}@media (max-width: 659px) and (orientation: portrait){.quote footer{font-size:14px;font-size:.875rem;line-height:1.5;margin-top:.625rem;text-wrap:nowrap;margin-inline:auto;text-align:center}}.quote footer span{height:1.4rem;display:block}@media (max-width: 659px) and (orientation: portrait){.quote footer img{margin-top:1.33333vw;width:58.4vw}}.quote hr{width:2rem;height:1px;background-color:currentColor;margin:.75rem 0;transform-origin:left}@media (max-width: 659px) and (orientation: portrait){.quote hr{display:none}}@media (min-width: 1024px){.quote--subpage{text-align:center}}@media (max-width: 659px) and (orientation: portrait){.quote--subpage{margin-top:64vw;margin-bottom:64vw;justify-content:flex-end;min-height:auto}}.quote--subpage p{font-family:"ProtestGroteskMono",monospace;font-weight:400;letter-spacing:-0.005em}@media (min-width: 1024px){.quote--subpage p{font-size:31px;font-size:1.9375rem;line-height:1.1;display:inline-block;max-width:35ch}}@media (min-width: 660px) and (max-width: 1023px) and (orientation: portrait){.quote--subpage p{font-size:28px;font-size:1.75rem;line-height:1.11071;display:block;margin-top:2.73438vw;max-width:100%;text-align:center}}@media (max-width: 659px) and (orientation: portrait){.quote--subpage p{font-size:21px;font-size:1.3125rem;line-height:1.1;margin-top:5.6vw;max-width:100%}}.quote--subpage footer{text-align:center}@media (min-width: 1024px){.quote--subpage footer{margin:2.34375vw auto 0}}@media (min-width: 660px) and (max-width: 1023px) and (orientation: portrait){.quote--subpage footer{font-size:21px;font-size:1.3125rem;line-height:1.34286;text-wrap:nowrap;margin-inline:auto}}@media (max-width: 659px) and (orientation: portrait){.quote--subpage footer{font-size:18px;font-size:1.125rem;line-height:1.4}}.quote--subpage footer span:last-child{display:block}@media (min-width: 1024px){.quote--subpage footer span:last-child{font-size:13px;font-size:.8125rem;line-height:1.2;margin-top:.54688vw;letter-spacing:-0.05em}}@media (min-width: 660px) and (max-width: 1023px) and (orientation: portrait){.quote--subpage footer span:last-child{font-size:12px;font-size:.75rem;line-height:1.4;margin-top:1.30208vw;max-width:18ch;text-wrap:wrap;letter-spacing:-0.05em}}@media (max-width: 659px) and (orientation: portrait){.quote--subpage footer span:last-child{font-size:12px;font-size:.75rem;line-height:1.4;margin-top:2.66667vw;max-width:18ch;text-wrap:wrap;letter-spacing:-0.05em}}@media (min-width: 1024px){.quote__mark{width:3.90625vw;height:3.90625vw}}@media (max-width: 1023px){.quote__mark{width:3.125rem;height:3.125rem}}.quote__mark::before{content:"";display:inline-block;position:relative;top:-1.95312vw;left:50%;width:100%;height:100%;background-image:url("/public/theme/images/svg/quote-mark.svg");background-size:contain;background-repeat:no-repeat;transform:translateX(-50%)}.partners{width:100%;display:flex;flex-wrap:wrap;min-height:100vh;position:relative;z-index:2}@media (max-width: 659px) and (orientation: portrait){.partners{margin-top:29.33333vw;min-height:80vh;display:block;padding-bottom:17.1875rem}}@media (min-width: 660px) and (max-width: 1023px) and (orientation: portrait){.partners{min-height:60vh}}.partners__wrapper{display:flex;position:relative;width:100%}@media (max-width: 659px) and (orientation: portrait){.partners__wrapper{display:grid;grid-template-columns:repeat(2, 1fr);grid-template-rows:repeat(2, auto);grid-column-gap:0px;grid-row-gap:0px}}.partners__lead{font-size:16px;font-size:1rem;line-height:1.4;letter-spacing:-.13em;margin-left:50%;padding-left:var(--margin-inline);min-height:27.125vh}@media (max-height: 659px) and (orientation: landscape){.partners__lead{min-height:50vh}}@media (max-width: 659px) and (orientation: portrait){.partners__lead{font-size:14px;font-size:.875rem;line-height:1.5;margin:0;padding-left:0;text-align:center;min-height:6.25rem;margin-bottom:7.5rem}}.partners__item{height:45.75vh;flex:1;display:flex;align-items:center;justify-content:center}@media (min-width: 660px){.partners__item img{scale:var(--app-scale)}}@media (min-width: 660px) and (max-width: 1023px) and (orientation: portrait){.partners__item{height:18vh}}@media (max-height: 659px) and (orientation: landscape){.partners__item{height:100px}}@media (max-width: 659px) and (orientation: portrait){.partners__item{height:34.66667vw}.partners__item img{max-width:30.66667vw}.partners__item:nth-of-type(6){order:5}.partners__item:nth-of-type(5){order:6}.partners__item:nth-of-type(4){order:3}.partners__item:nth-of-type(3){order:4}}.partners__line{width:1px;background:currentColor;height:45.75vh}@media (max-height: 659px) and (orientation: landscape){.partners__line{height:25vh}}@media (min-width: 660px) and (max-width: 1023px) and (orientation: portrait){.partners__line{height:18vh}}@media (max-width: 659px) and (orientation: portrait){.partners__line:not(.partners__line--big){display:none}}.partners__line--big{height:100vh;margin-top:-27.125vh}@media (max-height: 659px) and (orientation: landscape){.partners__line--big{margin-top:-60vh;height:90vh}}@media (max-width: 659px) and (orientation: portrait){.partners__line--big{position:absolute;inset:0;margin:auto;height:36.25rem}}@media (min-width: 660px) and (max-width: 1023px) and (orientation: portrait){.partners__line--big{height:60vh}}.stories{position:relative;min-height:100vh;z-index:auto;position:relative;z-index:auto;width:100%;display:flex;flex-direction:column;flex-wrap:wrap;justify-content:center;align-items:center}@media (max-width: 659px) and (orientation: portrait){.stories{min-height:0;align-items:flex-start}}.stories__small{font-size:21px;font-size:1.3125rem;line-height:1.1;letter-spacing:-.005em;text-transform:uppercase;margin-bottom:1.375rem;margin-inline:auto;z-index:3}@media (max-width: 659px) and (orientation: portrait){.stories__small{font-size:14px;font-size:.875rem;line-height:1.35714}}.stories__big{font-family:"ProtestGrotesk",sans-serif;font-weight:700;letter-spacing:-.045em;font-size:117px;font-size:7.3125rem;line-height:.89744;text-transform:uppercase;z-index:3}@media (min-width: 660px) and (max-width: 1023px) and (orientation: portrait){.stories__big{font-size:85px;font-size:5.3125rem;line-height:1.17647;display:flex;align-items:center;gap:1.25rem}}@media (max-height: 659px) and (orientation: landscape){.stories__big{font-size:60px;font-size:3.75rem;line-height:.7}}@media (max-width: 659px) and (orientation: portrait){.stories__big{font-size:48px;font-size:3rem;line-height:.79167;display:flex;justify-content:space-between;width:100%;line-height:1}}.stories__big [data-text]{display:inline-block;position:relative}.stories__big [data-text]::after{content:attr(data-text);position:absolute;-webkit-text-stroke:1px #222625;color:#F6F9F6;right:0;opacity:0;transition:opacity 0.5s cubic-bezier(0.5, 0, 0.2, 1)}.stories__big i.icon-plus{margin-inline:-0.17em}.stories__big i.icon-arrow{margin-inline:1.25rem;transition:0.3s opacity}.stories__marquee{overflow:hidden;margin-bottom:2.875rem;width:calc(100% + 2 *var(--margin-inline));margin-left:calc(var(--margin-inline) * -1);padding:1px 0}@media (min-width: 660px) and (max-width: 1023px) and (orientation: portrait){.stories__marquee{margin-left:calc(2rem * -1);width:calc(100% + 2 * 2rem)}}@media (max-width: 659px) and (orientation: portrait){.stories__marquee{margin-left:calc(1rem * -1);width:calc(100% + 2 * 1rem)}}.stories__list{display:flex;white-space:nowrap;width:-moz-fit-content;width:fit-content;will-change:transform}.stories__list .stories__big:not(.is-centered) [data-text]::after{opacity:1}.stories__list .stories__big:not(.is-centered) i.icon-arrow{opacity:0.3}.stories__indicator{background:red;width:1px;left:35%;position:absolute;inset-block:0;opacity:0;pointer-events:none}.stories__text{font-size:16px;font-size:1rem;line-height:1.4;letter-spacing:-.13em;margin-left:50%;max-width:29.4375rem;margin-top:2.125rem;margin-right:auto;z-index:3}@media (min-width: 660px) and (max-width: 1023px) and (orientation: portrait){.stories__text{max-width:37.5rem;margin-top:1.875rem;text-wrap:balance;margin-right:auto;margin-left:3.125rem;margin-inline:auto;text-align:center}.stories__text p:nth-child(1){margin-bottom:1.75rem}}@media (max-height: 659px) and (orientation: landscape){.stories__text{font-size:8px;margin-inline:auto;max-width:100%}}@media (max-width: 659px) and (orientation: portrait){.stories__text{font-size:14px;font-size:.875rem;line-height:1.5;margin-left:0;margin-top:.625rem}}.stories__image{position:absolute;width:11.75rem;height:6.1875rem;-o-object-fit:contain;object-fit:contain;z-index:1;top:50%;margin-left:-1.875rem;margin-top:.625rem}@media (min-width: 660px) and (max-width: 1023px) and (orientation: portrait){.stories__image{z-index:2;margin-top:-3.75rem}}.stories__canvas{display:none}.skills{display:flex;gap:5.85938vw;justify-content:center;padding-block:12.25vh;position:relative;z-index:3}@media (min-width: 660px) and (max-width: 1023px) and (orientation: portrait){.skills{width:100%;flex-wrap:wrap}}@media (max-width: 659px) and (orientation: portrait){.skills{flex-direction:column;justify-content:start;height:76vh}}.skills__tabs{display:flex;justify-content:center;flex-direction:column;width:31.17188vw;margin-left:auto}@media (min-width: 660px) and (max-width: 1023px) and (orientation: portrait){.skills__tabs{width:100%;margin:0}}@media (max-height: 659px) and (orientation: landscape){.skills__tabs{margin:0;width:31.25rem}}@media (max-width: 659px) and (orientation: portrait){.skills__tabs{margin:0;width:auto}}.skills__tab{font-size:21px;font-size:1.3125rem;line-height:1;letter-spacing:-.005em;text-transform:uppercase;padding-block:1.25rem;display:flex;align-items:center}@media (min-width: 660px) and (max-width: 1023px) and (orientation: portrait){.skills__tab{text-align:left}}@media (max-height: 659px) and (orientation: landscape){.skills__tab{font-size:.875rem}}@media (max-width: 659px) and (orientation: portrait){.skills__tab{font-size:.875rem;padding-block:.9375rem}}.skills__tab::before,.skills__tab::after{content:"";border-radius:50%;width:.71429em;height:.71429em;margin-right:.7619em;border:1px solid currentColor;display:inline-block;vertical-align:middle}.skills__tab::after{transform:scale(0);position:absolute;background:currentColor;transition:transform 0.2s cubic-bezier(0.5, 0, 0.2, 1);backface-visibility:hidden}.accessibility .skills__tab:focus::after,.no-touch .skills__tab:hover::after,.skills__tab[aria-selected="true"]::after{transform:scale(1)}.skills__tab[aria-selected="true"]{pointer-events:none}.skills__line{height:1px;background:currentColor}.skills__content{width:43.75vw;margin-right:3.90625vw}@media (min-width: 1024px){.skills__content{display:flex;align-items:center;justify-content:flex-start}}@media (max-width: 1023px){.skills__content{width:100%;margin:0}}.skills--subpage .skills__content{display:flex;flex-direction:column;justify-content:flex-start;align-items:flex-start;margin-top:-.39062vw;margin-right:2.03125vw}@media (max-width: 659px) and (orientation: portrait){.skills--subpage .skills__content{margin-right:0}}.skills__panel{display:flex;flex-wrap:wrap;gap:.5rem}.skills__panel[aria-hidden="true"]{display:none}.skills--subpage .skills__panel{gap:.5625rem}.skills__item{font-size:15px;font-size:.9375rem;line-height:1.13333;letter-spacing:-.06em;text-transform:uppercase;border:1px solid currentColor;padding:.375rem .5625rem;background:#F6F9F6;width:-moz-max-content;width:max-content}@media (max-width: 659px) and (orientation: portrait){.skills__item{letter-spacing:-.07em;font-size:12px;font-size:.75rem;line-height:1.16667;padding:.375rem}.skills__item--long{flex-basis:65%}}.skills--subpage .skills__item{background-color:transparent}@media (min-width: 1024px){.skills--subpage .skills__item{font-size:13px;font-size:.8125rem;line-height:1.2;letter-spacing:-0.05em}}@media (max-width: 659px) and (orientation: portrait){.skills--subpage .skills__item{padding:.8vw 1.33333vw}}.skills__heading{font-size:14px;font-size:.875rem;line-height:1.52;letter-spacing:-0.1em}@media (min-width: 1024px){.skills__heading{margin-bottom:1.48438vw}}@media (max-width: 659px) and (orientation: portrait){.skills__heading{margin-bottom:2.66667vw}}.skills__url{text-transform:uppercase}@media (min-width: 1024px){.skills__url{font-size:17px;font-size:1.0625rem;line-height:1.1;margin-top:10.9375vw}}@media (min-width: 660px) and (max-width: 1023px) and (orientation: portrait){.skills__url{font-size:16px;font-size:1rem;line-height:1.1;margin-top:7.8125vw}}@media (max-width: 659px) and (orientation: portrait){.skills__url{font-size:16px;font-size:1rem;line-height:1.1;margin-top:16vw}}.skills--subpage{margin:18.35938vw 0 18.51562vw;padding:0;justify-content:flex-end}@media (max-width: 659px) and (orientation: portrait){.skills--subpage{justify-content:flex-start;margin-bottom:44vw}}@keyframes fullRotate{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}.default{position:relative;min-height:100lvh;z-index:0;display:flex;flex-direction:column;justify-content:center;align-items:center;z-index:auto}@media (min-width: 660px) and (max-width: 1023px) and (orientation: portrait){.default{min-height:0}}@media (max-width: 659px) and (orientation: portrait){.default{align-items:flex-start;min-height:0}}@media (max-width: 659px) and (orientation: portrait){.default--left{align-items:flex-start}}@media (max-width: 659px) and (orientation: portrait){.default--right{margin-top:6.25rem;align-items:flex-start}}.default__title{font-size:157px;font-size:9.8125rem;line-height:.82803;font-family:"ProtestGrotesk",sans-serif;font-weight:700;letter-spacing:-.045em;text-transform:uppercase;display:flex;flex-wrap:wrap;justify-content:center;position:relative;padding-top:4.75vh;z-index:auto}@media (min-width: 660px) and (max-width: 1023px) and (orientation: portrait){.default__title{font-size:125px;font-size:7.8125rem;line-height:.8;padding-top:9.375rem}}@media (max-height: 659px) and (orientation: landscape){.default__title{font-size:80px;font-size:5rem;line-height:.9}}@media (max-width: 659px) and (orientation: portrait){.default__title{font-size:40px;font-size:2.5rem;line-height:.8;padding-top:0;justify-content:start;-moz-column-gap:9px;column-gap:9px;margin-bottom:.9375rem}}.default__title span{-webkit-text-stroke:1px #222625;color:#F6F9F6;z-index:1}@media (min-width: 660px) and (max-width: 1023px) and (orientation: portrait){.default__title span{z-index:3}}@media (max-width: 659px) and (orientation: portrait){.default__title span{-webkit-text-stroke:0;color:#222625}}.default__title span,.default__title strong{overflow:hidden;padding-inline:0.03em;padding-block:0.01em}@media (max-width: 659px) and (orientation: portrait){.default__title span,.default__title strong{padding:0}}.default__title .space{flex-basis:100%;width:100%;display:block}.default__title:first-child{margin-top:auto}@media (max-width: 659px) and (orientation: portrait){.default__title:first-child{margin:0}}.default__title--moment strong{margin-left:0.22em;z-index:3}@media (max-width: 659px) and (orientation: portrait){.default__title--moment strong{margin-left:0}}@media (max-width: 659px) and (orientation: portrait){.default__title--moment{margin-left:0}}.default__title--moment span:first-child{margin-right:42.4%}@media (min-width: 1024px){.default__title--moment span:first-child{letter-spacing:-0.023em}}@media (max-width: 659px) and (orientation: portrait){.default__title--moment span:first-child{margin:0}}.default__title--noise strong:first-child{margin-left:auto}@media (max-width: 659px) and (orientation: portrait){.default__title--noise strong:first-child{margin-inline:0}}.default__title--noise strong:nth-child(2){margin-right:0;margin-left:2.875rem}@media (max-width: 659px) and (orientation: portrait){.default__title--noise strong:nth-child(2){margin:0}}.default__title--noise span{z-index:1;margin-left:3.4375vw;margin-right:12rem}@media (min-width: 660px) and (max-width: 1023px) and (orientation: portrait){.default__title--noise span{z-index:2}}@media (max-width: 659px) and (orientation: portrait){.default__title--noise span{margin:0}}.default__title--noise strong:last-of-type{margin-right:auto;z-index:2}@media (max-width: 659px) and (orientation: portrait){.default__title--noise strong:last-of-type{margin:0}}.default__title--team{flex-direction:row;align-items:center;justify-content:left;margin-left:-8.75rem;gap:2.8125rem}@media (min-width: 660px) and (max-width: 1023px) and (orientation: portrait){.default__title--team{margin-left:0;gap:1.875rem;align-items:center}}@media (max-width: 659px) and (orientation: portrait){.default__title--team{width:100%;gap:1.875rem;flex-direction:column-reverse;align-items:center}}.default__title--team h2{display:flex;flex-direction:column;align-items:flex-end}@media (max-width: 659px) and (orientation: portrait){.default__title--team h2{flex-direction:row;align-items:center;gap:8px;align-self:self-start}}.default__title--team h2 span{margin-left:6.25vw}@media (max-width: 1023px){.default__title--team h2 span{margin:0}}.default__title--food{margin:0;padding:0}@media (max-width: 1023px){.default__title--food{font-size:80px;font-size:5rem;line-height:1;justify-content:center}}@media (max-width: 659px) and (orientation: portrait){.default__title--food{font-size:43px;font-size:2.6875rem;line-height:1}}.default__title--food strong:not(:last-child){margin-inline:1.5625vw;margin-bottom:.46875vw}.default__title--food strong:not(:last-child):nth-child(2){padding-right:.78125vw}.default__title--food span{margin-left:-10px}.goal__content .default__index{font-size:13px;font-size:.8125rem;line-height:1.2;margin-bottom:.4375rem}@media (min-width: 1024px){.goal--2 .default__index{margin-bottom:1.01562vw}}@media (min-width: 1024px){.default__index:not(:nth-child(1)){margin-top:4.14062vw}}@media (max-width: 1023px){.default__index:not(:nth-child(1)){margin-top:2.5rem}}@media (min-width: 1024px){.goal--2 .default__index:not(:nth-child(1)){margin-top:4.375vw}}.default__image{-o-object-fit:contain;object-fit:contain;position:absolute;top:50%;left:50%;z-index:1}.default__image--moment{width:20.78125vw;height:12.1875vw;margin-top:-16.25vw}@media (min-width: 660px) and (max-width: 1023px) and (orientation: portrait){.default__image--moment{margin-top:-47.5vw}}.default__image--noise{width:26.17188vw;height:15.625vw;margin-top:-14.0625vw}@media (max-height: 659px) and (orientation: landscape){.default__image--noise{width:35vw;margin:-8.92vw -1.28vw}}@media (min-width: 660px) and (max-width: 1023px) and (orientation: portrait){.default__image--noise{width:18vw;margin-top:-2.34375vw}}.default__canvas{display:none}.default__circles{width:15rem;height:15rem;position:relative}.default__circles .circle{position:absolute;border:1px solid black;border-radius:50%;inset:-1px;margin:auto;margin-bottom:0}.default__circles--big{width:100%;height:100%}.default__circles--medium{width:70%;height:70%}.default__circles--small{width:45%;height:45%}.default__circles--tiny{width:25%;height:25%}@media (min-width: 660px){.goal__content .default__circles{position:absolute;left:-97%;top:1%}}@media (max-width: 659px) and (orientation: portrait){.goal__content .default__circles{margin:3.125rem auto 0;width:12.5rem;height:12.5rem}}.default__text{letter-spacing:-.13em;font-size:16px;font-size:1rem;line-height:1.4;width:27.375rem;margin-top:9.5vh;margin-bottom:6.625vh;position:relative;z-index:3}@media (min-width: 660px) and (max-width: 1023px) and (orientation: portrait){.default__text{width:20.9375rem}}@media (max-height: 659px) and (orientation: landscape){.default__text{font-size:9px;font-size:.5625rem;line-height:1.4}}@media (max-width: 659px) and (orientation: portrait){.default__text{font-size:14px;font-size:.875rem;line-height:1.4;display:flex;flex-direction:column;width:100%;margin:0}}.default__text p{z-index:3}.default__text--left,.default--left .default__text{margin-right:50%;margin-left:auto}@media (min-width: 660px) and (max-width: 1023px) and (orientation: portrait){.default__text--left,.default--left .default__text{margin-left:0}}@media (max-width: 659px) and (orientation: portrait){.default__text--left,.default--left .default__text{margin-inline:auto}}.default__text--left--bordered,.default--left .default__text--bordered{padding-right:var(--margin-inline)}.default__text--right,.default--right .default__text{margin-left:50%;margin-right:auto}@media (max-width: 659px) and (orientation: portrait){.default__text--right,.default--right .default__text{margin-inline:auto;align-items:flex-start}}@media (max-height: 659px) and (orientation: landscape){.default__text--right,.default--right .default__text{margin-left:33%}}.default__text--right--bordered,.default--right .default__text--bordered{padding-left:var(--margin-inline)}@media (max-width: 659px) and (orientation: portrait){.default__text--right--bordered,.default--right .default__text--bordered{padding-left:0}}.default__text--bordered{min-height:21.25vh}@media (min-width: 660px) and (max-width: 1023px) and (orientation: portrait){.default__text--bordered{min-height:25.625rem}}@media (max-width: 659px) and (orientation: portrait){.default__text--bordered{min-height:0}}.default__text--noise{width:26.0625rem}@media (min-width: 660px) and (max-width: 1023px) and (orientation: portrait){.default__text--noise{width:21.25rem}}@media (max-width: 659px) and (orientation: portrait){.default__text--noise{width:100%;margin-inline:auto}}.default__text--team{width:32.8125rem;margin-top:4.6875rem}@media (min-width: 660px) and (max-width: 1023px) and (orientation: portrait){.default__text--team{width:auto;margin-top:6.25rem}}@media (max-width: 659px) and (orientation: portrait){.default__text--team{width:100%;margin-top:.9375rem}}@media (max-height: 659px) and (orientation: landscape){.default__text--team p{width:23.125rem;font-size:16px}}@media (max-width: 659px) and (orientation: portrait){.default__text--team p{padding-bottom:18.125rem}}@media (min-width: 1024px){.goal__content .default__text{margin-top:0}}@media (min-width: 1024px){.goal__content .default__text:not(.default__text--right){margin-right:50%;margin-left:auto;width:37.5ch}}@media (min-width: 1024px){.goal__content .default__text--right{width:35ch}}.default__illu{position:absolute;align-items:center;display:flex;width:100%;top:0}@media (max-width: 659px) and (orientation: portrait){.default__illu{position:relative;justify-content:center;align-items:center;padding-bottom:2.1875rem}}.default__illu--moment{left:100%;margin-left:4.14062vw;gap:2.96875vw}@media (max-width: 659px) and (orientation: portrait){.default__illu--moment{left:0;margin:0}}.default__illu--moment img:first-child{width:16.95312vw;height:16.95312vw}@media (min-width: 660px) and (max-width: 1023px) and (orientation: portrait){.default__illu--moment img:first-child{width:12.5rem;height:12.5rem}}@media (max-width: 659px) and (orientation: portrait){.default__illu--moment img:first-child{width:11.25rem;height:11.25rem}}.default__illu--moment img:last-child{width:4.29688vw;height:4.29688vw}@media (max-width: 659px) and (orientation: portrait){.default__illu--moment img:last-child{width:2.8125rem;height:2.8125rem}}@media (min-width: 660px){.goal__content .default__illu--moment{margin-top:.54688vw;margin-left:12.5vw}}@media (max-width: 659px) and (orientation: portrait){.goal__content .default__illu--moment{margin-top:3.125rem}}.default__illu--noise{right:100%;margin-top:.3125vw;margin-right:4.29688vw;justify-content:flex-end}@media (max-width: 659px) and (orientation: portrait){.default__illu--noise{inset-inline:0;width:17.3125rem;margin:0;margin-inline:auto;justify-content:flex-start}}.default__illu--noise img{width:26.01562vw;height:16.875vw}@media (min-width: 660px){.goal__content .default__illu--noise{right:-104%}}@media (min-width: 660px) and (max-width: 1023px) and (orientation: portrait){.goal__content .default__illu--noise{margin:0}}@media (max-width: 659px) and (orientation: portrait){.goal__content .default__illu--noise{margin-top:3.125rem}}.default__line{width:1px;position:absolute;inset-block:0;background:currentColor;z-index:1}@media (min-width: 660px) and (max-width: 1023px) and (orientation: portrait){.default__line{inset-inline:0;height:31.25rem}}@media (max-width: 659px) and (orientation: portrait){.default__line{inset-inline:0;margin-inline:auto;top:auto;bottom:1.5625rem;right:0.5px;height:16.0625rem}}.default--right .default__line{left:0}.default__deco{margin-left:0;height:1.5625vw}@media (max-width: 659px) and (orientation: portrait){.default__deco{height:4.26667vw}}.default__last-pin{width:8.875rem;height:5.375rem;position:absolute;top:0;transform:translateY(200px)}@media (min-width: 1024px){.default--last{padding-top:8.125rem}}.default .pin-spacer{width:100% !important}.svg-noise-stars{height:11.25rem}@media (min-width: 660px) and (max-width: 1023px) and (orientation: portrait){.svg-noise-stars{height:11.875rem}}@media (max-height: 659px) and (orientation: landscape){.svg-noise-stars{height:6.875rem}}@media (min-width: 1024px){.goal__content .svg-noise-stars{height:13.25rem}}.hide{visibility:hidden !important}.cta{min-height:80lvh;display:flex;flex-direction:column;justify-content:space-between;align-items:center;position:relative;z-index:auto}@media (min-width: 660px) and (max-width: 1023px) and (orientation: portrait){.cta{min-height:85lvh}}@media (max-width: 659px) and (orientation: portrait){.cta{min-height:0}}@media (min-width: 1024px){.work .cta{margin-top:3.90625vw;min-height:calc(100vh - 100px)}}.cta__pin{position:absolute;inset:0;margin-inline:auto;margin-block:auto;width:22.875rem;height:26.8125rem;margin-bottom:-1.875rem}@media (min-width: 660px) and (max-width: 1023px) and (orientation: portrait){.cta__pin{margin-top:auto;margin-bottom:-3.125rem}}@media (max-width: 659px) and (orientation: portrait){.cta__pin{display:none}}@media only screen and (max-width: 1280px){.cta__pin{height:400px}}@media only screen and (min-width: 1700px){.cta__pin{margin-bottom:-10px}.local .cta__pin{background:red}}.cta__text{width:22.625rem;align-self:flex-start}@media (min-width: 1024px){.cta__text{position:relative;top:3.90625vw}}@media (min-width: 660px) and (max-width: 1023px) and (orientation: portrait){.cta__text{margin-top:5.20833vw}}@media (max-width: 659px) and (orientation: portrait){.cta__text{width:100%;margin-top:1.4375rem}}@media (min-width: 1024px){.work .cta__text{top:3.90625vw}}.cta__text h2{font-size:21px;font-size:1.3125rem;line-height:1.1;letter-spacing:-.005em;text-transform:uppercase;margin-bottom:1.125rem}.cta__text p{font-size:16px;font-size:1rem;line-height:1.4;letter-spacing:-.13em}.cta__lead{font-size:16px;font-size:1rem;line-height:1.4;letter-spacing:-.13em;margin-top:auto;margin-left:60%;z-index:3}@media (min-width: 660px) and (max-width: 1023px) and (orientation: portrait){.cta__lead{margin-left:0}}@media (max-height: 659px) and (orientation: landscape){.cta__lead{margin-top:3.125rem;margin-inline:auto}}@media (max-width: 659px) and (orientation: portrait){.cta__lead{font-size:14px;font-size:.875rem;line-height:1.28571;text-wrap:nowrap;margin-left:0}}.cta__link{font-size:30px;font-size:1.875rem;line-height:1.2;letter-spacing:-.13em;margin-top:.625rem;margin-bottom:auto;margin-left:67%;z-index:3}@media (min-width: 1024px){.cta__link{width:27.625rem}}@media (min-width: 660px) and (max-width: 1023px) and (orientation: portrait){.cta__link{font-size:26px;font-size:1.625rem;line-height:1.4;margin-top:0;margin-left:0;margin-bottom:3.125rem;width:19.8125rem}}@media (max-height: 659px) and (orientation: landscape){.cta__link{font-size:22px;font-size:1.375rem;line-height:.54545;margin-inline:auto;margin-bottom:3.75rem;margin-top:.5625rem}}@media (max-width: 659px) and (orientation: portrait){.cta__link{font-size:23px;font-size:1.4375rem;line-height:1.17391;margin-left:0;margin-top:.75rem;margin-bottom:1.5625rem}}.cta__logo{margin-bottom:-1.875rem;width:20vw;height:8.20312vw;z-index:3}@media (min-width: 660px) and (max-width: 1023px) and (orientation: portrait){.cta__logo{width:10rem;height:auto;order:5;margin-bottom:6.51042vw}}@media (max-height: 659px) and (orientation: landscape){.cta__logo{width:12.8125rem;height:5.3125rem;order:5}}@media (max-width: 659px) and (orientation: portrait){.cta__logo{margin-bottom:1.875rem;width:12.8125rem;height:5.3125rem;order:5}}.cta__image-wrap{position:absolute;inset:0;pointer-events:none}@media (max-width: 1023px){.cta__image-wrap{position:relative;width:auto;height:auto}}.cta__image{position:absolute;left:50%;top:50%;width:24.29688vw;height:41.875vw;margin:-20.9375vw -12.10938vw;-o-object-fit:contain;object-fit:contain}@media (max-width: 1023px){.cta__image{position:relative;margin:0;inset:0}}@media (min-width: 660px) and (max-width: 1023px) and (orientation: portrait){.cta__image{width:calc(208px + 10rem);height:calc(312px + 10rem)}}@media (min-width: 660px) and (max-width: 1023px) and (orientation: portrait){.cta__image{width:calc(208px + 10rem);height:calc(312px + 10rem)}}@media (max-width: 659px) and (orientation: portrait){.cta__image{width:208px;height:312px}}.cta__figure{display:none}@media (max-width: 659px) and (orientation: portrait){.cta__figure{margin-top:1.875rem;display:block;position:relative;margin-inline:auto}}.cta__figure img{width:17.5rem;margin-top:1.875rem;margin-bottom:1.875rem}.cta__figure--static{display:flex;position:absolute;justify-content:center;align-items:center;margin-inline:auto;inset:0}.cta__figure--static img{height:30.625rem}.error{width:100%;height:100vh}.error__main{display:flex;flex-direction:column;width:100%;height:100%;justify-content:space-between;align-items:center;padding-inline:50px}.error__content{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:1.875rem;flex-grow:1;display:flex;align-items:flex-start;margin-left:50%;max-width:63.75rem}@media (max-width: 1023px){.error__content{margin-left:0}}.error__link{text-decoration:underline}.center-text{display:flex;flex-direction:column;justify-content:center;align-items:center;font-size:16px;font-size:1rem;line-height:1.5;margin:0 auto;max-width:50ch;text-align:center}@media (max-width: 659px) and (orientation: portrait){.center-text{font-size:14px;font-size:.875rem;line-height:1.52}}.center-text p{letter-spacing:-0.07em}@media (max-width: 659px) and (orientation: portrait){.center-text p{letter-spacing:-0.1em}}.center-text h3{font-family:"ProtestGrotesk",sans-serif;font-weight:900;-webkit-text-stroke:1px #222625;color:transparent}@media (min-width: 1024px){.center-text h3{font-size:157px;font-size:9.8125rem;line-height:.76497;margin-bottom:.54688vw;letter-spacing:-0.045em}}@media (max-width: 659px) and (orientation: portrait){.center-text h3{font-size:90px;font-size:5.625rem;line-height:.77778;margin-bottom:8vw;letter-spacing:-0.05em}}.mobile-screenshots{display:flex;flex-direction:row;justify-content:flex-start;align-items:flex-start}@media (min-width: 660px) and (max-width: 1023px) and (orientation: portrait){.mobile-screenshots{flex-wrap:wrap;justify-content:space-between;row-gap:3.90625vw}}@media (max-width: 659px) and (orientation: portrait){.mobile-screenshots{flex-wrap:wrap;justify-content:space-between;row-gap:4vw}}@media (min-width: 1024px){.mobile-screenshots .image{width:21.32812vw}}@media (min-width: 660px) and (max-width: 1023px) and (orientation: portrait){.mobile-screenshots .image{width:43.88021vw}}@media (max-width: 659px) and (orientation: portrait){.mobile-screenshots .image{width:43.73333vw}}.mobile-screenshots .image img{width:100%}@media (min-width: 1024px){.mobile-screenshots .image:nth-child(2){margin-left:15.07812vw}}@media (min-width: 1024px){.mobile-screenshots--stories .mobile-screenshots .image:nth-child(2){margin-left:0vw}}@media (min-width: 1024px){.mobile-screenshots .image:nth-child(3){margin-left:2.89062vw}}@media (max-width: 659px) and (orientation: portrait){.mobile-screenshots .image:nth-child(3){margin-left:auto}}.mobile-screenshots--stories{margin-top:6.25vw}@media (min-width: 1024px){.mobile-screenshots--stories .image:nth-child(2){margin-left:2.8125vw}}@media (min-width: 1024px){.mobile-screenshots--stories .image:nth-child(3){margin-left:15vw}}@media (max-width: 659px) and (orientation: portrait){.mobile-screenshots--stories .image:nth-child(3){margin-left:0}}@media (min-width: 1024px){.mobile-screenshots--stories .image:nth-child(4){margin-left:auto;margin-right:1.17188vw}}@media (max-width: 659px) and (orientation: portrait){.mobile-screenshots--stories .image:nth-child(4){margin-left:0}}.text-screenshots{display:flex;flex-direction:row;justify-content:space-between;align-items:flex-start}@media (max-width: 1023px){.text-screenshots{flex-direction:column;gap:10.66667vw}}@media (min-width: 1024px){.text-screenshots__images{display:flex;flex-direction:row;justify-content:flex-start;align-items:flex-start;gap:2.10938vw;min-height:45.3125vw}}@media (min-width: 1024px){.text-screenshots figure{width:21.875vw;height:21.875vw;border-radius:.46875vw;overflow:hidden}}@media (max-width: 659px) and (orientation: portrait){.text-screenshots figure{width:93.86667vw;height:93.86667vw}}@media (max-width: 659px) and (orientation: portrait){.text-screenshots figure:first-child{margin-bottom:10.66667vw}}@media (min-width: 1024px){.text-screenshots figure:last-child{align-self:flex-end}}.text-screenshots figure img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.footer{z-index:2;font-size:13px;font-size:.8125rem;line-height:1.2;letter-spacing:-.06em;position:relative;display:flex;justify-content:space-between;flex-wrap:wrap;text-transform:uppercase;align-items:flex-end}@media (max-width: 659px) and (orientation: portrait){.footer{row-gap:17px;padding-bottom:1.5rem}}@media (max-width: 659px) and (orientation: portrait){.footer__deco{height:1rem;order:2}}@media (max-width: 1023px){.footer__deco:nth-child(1){display:none}}.footer__colophon{width:21.5625vw;margin-inline-end:auto;white-space:nowrap}@media (max-width: 659px) and (orientation: portrait){.footer__colophon{width:100%;order:3}}.footer__link{min-width:12.5%;padding-left:12px;text-align:right;overflow:hidden}@media (max-width: 659px) and (orientation: portrait){.footer__link{text-align:left;padding-left:0}}.footer__link span[data-text]{position:relative;display:block}.footer__link span[data-text]::after{content:attr(data-text);position:absolute;top:100%;right:0}.footer__link.is-animating span[data-text]{animation:slideUp 0.4s cubic-bezier(0.5, 0, 0.2, 1)}.footer-subpage{position:relative;padding-bottom:.78125vw;cursor:pointer;pointer-events:hover}@media (min-width: 1024px){.footer-subpage{margin-left:-.39062vw;overflow:hidden}}@media (min-width: 660px) and (max-width: 1023px) and (orientation: portrait){.footer-subpage{padding-top:13.02083vw;padding-bottom:3.90625vw}}@media (max-width: 659px) and (orientation: portrait){.footer-subpage{padding-top:30.13333vw;padding-bottom:8vw}}.no-touch .footer-subpage:hover h1,.accessibility .footer-subpage:focus h1{transform:translateY(0);color:#222625}.no-touch .footer-subpage:hover h1:before,.accessibility .footer-subpage:focus h1:before{opacity:0}.no-touch .footer-subpage:hover .counter,.accessibility .footer-subpage:focus .counter{transform:translateY(0)}.no-touch .footer-subpage:hover p,.accessibility .footer-subpage:focus p{transform:translateX(17px)}.footer-subpage h1{font-family:"ProtestGrotesk",sans-serif;font-weight:900;letter-spacing:-0.05em;text-transform:uppercase}@media (min-width: 1024px){.footer-subpage h1{font-size:157px;font-size:9.8125rem;line-height:.76497;color:#F6F9F6;-webkit-text-stroke:1px #222625;transform:translateY(25px);transition:transform .5s cubic-bezier(0.5, 0, 0.2, 1),color .5s cubic-bezier(0.5, 0, 0.2, 1)}}@media (min-width: 660px) and (max-width: 1023px) and (orientation: portrait){.footer-subpage h1{font-size:80px;font-size:5rem;line-height:.875;max-width:10ch}}@media (max-width: 659px) and (orientation: portrait){.footer-subpage h1{font-size:40px;font-size:2.5rem;line-height:.8;max-width:10ch}}@media (min-width: 1024px){.footer-subpage h1::before{content:'';position:absolute;inset:0;background:linear-gradient(0deg, #F6F9F6 0%, rgba(255,255,255,0) 45%);z-index:1;transition:opacity .5s cubic-bezier(0.5, 0, 0.2, 1)}}.footer-subpage a{position:absolute;inset:0;z-index:1;pointer-events:all}.footer-subpage p{position:absolute;text-transform:uppercase;letter-spacing:-0.05em}@media (min-width: 1024px){.footer-subpage p{font-size:13px;font-size:.8125rem;line-height:1.2;font-family:"ProtestGroteskMono",monospace;font-weight:400;right:1.32812vw;bottom:1.32812vw;transition:transform .5s cubic-bezier(0.5, 0, 0.2, 1)}}@media (max-width: 1023px){.footer-subpage p{top:0}}@media (max-width: 1023px){.footer-subpage .line{position:absolute;top:-.8vw;left:0;width:100%;height:1px;background-color:#222625}}.menu{position:fixed;inset-inline:var(--margin-inline);z-index:9999;width:calc(100% - var(--margin-inline) * 2);transition:transform .5s cubic-bezier(0.5, 0, 0.2, 1) .5s,opacity .5s cubic-bezier(0.5, 0, 0.2, 1) .5s;color:#222625}.work .menu{color:#F6F9F6}.work.is-outside-hero .menu{color:#222625}@media (min-width: 1024px){.menu{top:1.5625vw;height:1.5625vw}}@media (min-width: 1800px){.menu{top:1.5625vw}}@media (min-width: 660px) and (max-width: 1023px) and (orientation: portrait){.menu{top:2.73438vw;left:0;width:calc(100% - 2rem * 2);margin-inline:2rem;height:2.60417vw}}@media (max-width: 659px) and (orientation: portrait){.menu{top:5.6vw;left:0;margin-inline:1rem;width:calc(100% - 1rem * 2);height:4.26667vw}}.menu__wrap{height:100%}.is-not-ready .menu{opacity:0}.menu nav{height:100%}.menu ul{display:grid;grid-template-columns:repeat(8, 1fr);grid-template-rows:1fr;grid-column-gap:0px;grid-row-gap:0px;height:100%}@media (max-width: 659px) and (orientation: portrait){.menu ul{grid-template-columns:repeat(6, minmax(0, 1fr))}}.menu ul li{font-size:13px;font-size:.8125rem;line-height:1.2;letter-spacing:-0.06em;text-transform:uppercase;cursor:pointer}@media (max-width: 659px) and (orientation: portrait){.menu ul li:nth-last-child(2),.menu ul li:nth-last-child(3),.menu ul li:nth-last-child(4) .menu ul li{display:none}}.menu ul li>a{display:inline-block;transform:translateY(30px)}@media (min-width: 1800px){.menu ul li>a{transform:translateY(1.95312vw)}}.menu ul li>a.is-active{pointer-events:none}.menu ul li:first-child,.menu ul li:nth-child(3){border-left:1px solid currentColor}.work .menu ul li:first-child,.work .menu ul li:nth-child(3){border-color:#F6F9F6}.work.is-outside-hero .menu ul li:first-child,.work.is-outside-hero .menu ul li:nth-child(3){border-color:#222625}.menu ul li:first-child a,.menu ul li:nth-child(3) a{margin-left:-.15625vw}.menu ul li:last-child{justify-self:end;border-right:1px solid currentColor}.work .menu ul li:last-child{border-color:#F6F9F6}.work.is-outside-hero .menu ul li:last-child{border-color:#222625}.menu ul li:last-child a{margin-right:-.15625vw}.scroll-down .menu{transform:translateY(-500%)}.curtain{display:flex;align-self:center;justify-self:center;position:fixed;left:0;top:0;width:100vw;height:100vh;z-index:0;pointer-events:none}.curtain__item,.curtain__item-img{position:absolute;width:100%;height:100%}.curtain__item{overflow:hidden;will-change:clip-path;opacity:0;border-radius:.46875vw}.curtain__item-img{width:100%;height:100%;background-size:cover;background-position:50% 50%}

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluY2x1ZGVzL3ZhcmlhYmxlcy9fc2l6ZXMuc2NzcyIsImluY2x1ZGVzL19mb250cy5zY3NzIiwiaW5jbHVkZXMvdmFyaWFibGVzL19mb250cy5zY3NzIiwiaW5jbHVkZXMvX21lZGlhcXVlcmllcy5zY3NzIiwiaW5jbHVkZXMvX2JyZWFrcG9pbnRzLnNjc3MiLCJpbmNsdWRlcy9fcmVzZXQuc2NzcyIsImluY2x1ZGVzL19hbmltYXRpb25zLnNjc3MiLCJpbmNsdWRlcy9fYmFzZS5zY3NzIiwiaW5jbHVkZXMvdmFyaWFibGVzL19jb2xvcnMuc2NzcyIsImluY2x1ZGVzL19taXhpbnMuc2NzcyIsImluY2x1ZGVzL3ZhcmlhYmxlcy9fdHJhbnNpdGlvbnMuc2NzcyIsImluY2x1ZGVzL19tb2R1bGUuc2NzcyIsImluY2x1ZGVzL3BsYXllci9fY29yZS5zY3NzIiwiaW5jbHVkZXMvcGxheWVyL19iYXIuc2NzcyIsImluY2x1ZGVzL3BsYXllci9fdmFyaWFibGVzLnNjc3MiLCJpbmNsdWRlcy9pY29ucy9fY3NzLWljb25zLnNjc3MiLCJpbmNsdWRlcy9pY29ucy9fc3ZnLWljb25zLnNjc3MiLCJpbmNsdWRlcy9pY29ucy9fc3ByaXRlLWljb25zLnNjc3MiLCJpbmNsdWRlcy9jb21wb25lbnRzL19kZWNvLnNjc3MiLCJpbmNsdWRlcy9jb21wb25lbnRzL192ZXJ0aWNhbC1saW5lLnNjc3MiLCJpbmNsdWRlcy9jb21wb25lbnRzL19jb3VudGVyLnNjc3MiLCJpbmNsdWRlcy9jb21wb25lbnRzL19zY3JlZW5zaG90LnNjc3MiLCJpbmNsdWRlcy9jb21wb25lbnRzL190ZXh0LnNjc3MiLCJpbmNsdWRlcy9jb21wb25lbnRzL19nb2FsLnNjc3MiLCJpbmNsdWRlcy9jb21wb25lbnRzL19oZWFkaW5nLXRleHQuc2NzcyIsImluY2x1ZGVzL2NvbXBvbmVudHMvX2JpZy10aXRsZS5zY3NzIiwiaW5jbHVkZXMvbW9kdWxlcy9fcmVuZGVyLnNjc3MiLCJpbmNsdWRlcy9tb2R1bGVzL19oZXJvLnNjc3MiLCJpbmNsdWRlcy9tb2R1bGVzL19xdW90ZS5zY3NzIiwiaW5jbHVkZXMvbW9kdWxlcy9fcGFydG5lcnMuc2NzcyIsImluY2x1ZGVzL21vZHVsZXMvX3N0b3JpZXMuc2NzcyIsImluY2x1ZGVzL21vZHVsZXMvX3NraWxscy5zY3NzIiwiaW5jbHVkZXMvbW9kdWxlcy9fZGVmYXVsdC5zY3NzIiwiaW5jbHVkZXMvbW9kdWxlcy9fY3RhLnNjc3MiLCJpbmNsdWRlcy9tb2R1bGVzL19lcnJvci5zY3NzIiwiaW5jbHVkZXMvbW9kdWxlcy9fY2VudGVyLXRleHQuc2NzcyIsImluY2x1ZGVzL21vZHVsZXMvX21vYmlsZS1zY3JlZW5zaG90cy5zY3NzIiwiaW5jbHVkZXMvbW9kdWxlcy9fdGV4dC1zY3JlZW5zaG90cy5zY3NzIiwiaW5jbHVkZXMvc2NhZmZvbGQvX2Zvb3Rlci5zY3NzIiwiaW5jbHVkZXMvc2NhZmZvbGQvX2Zvb3Rlci1zdWJwYWdlLnNjc3MiLCJpbmNsdWRlcy9zY2FmZm9sZC9fbWVudS5zY3NzIiwiaW5jbHVkZXMvc2NhZmZvbGQvX2N1cnRhaW4uc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFhQSxLQUNJLHdCQUFnQixDQUNuQixXQ0FHLDRCQ2Z3QixDRGdCeEIsZUFTMkMsQ0FSM0MsaUJBWmdELENBYWhELGlCQUFrQixDQUVsQiw2SUFDNEMsQ0FLaEQsV0FYSSxnQ0NkNEIsQ0RlNUIsZUFVMkMsQ0FUM0MsaUJBWmdELENBYWhELGlCQUFrQixDQUVsQiw2SkFDNEMsQ0FpQzVDLFdBUEEsdUNBaEI2QixDQXVCN0IsV0FQQSwwQ0FmNEIsQ0FzQnNCLE1BTTlDLDBCQUFnQyxDQURwQyxNQUNJLDBCQUFnQyxDQURwQyxNQUNJLDBCQUFnQyxDQURwQyxNQUNJLDBCQUFnQyxDQURwQyxNQUNJLDBCQUFnQyxDQURwQyxNQUNJLDBCQUFnQyxDQURwQyxNQUNJLDBCQUFnQyxDQURwQyxNQUNJLDBCQUFnQyxDQURwQyxNQUNJLDBCQUFnQyxDQUNuQyxhRXhERCxZQUFh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LGlCVmpCbUQsQ1VtQjFELENmbEJELDJCZXNCSiw2QkFFUSxrQkFBZ0IsQ0FFdkIsQ2YxQkcsMkJlNkJKLCtEQUVRLHNCVmhDdUQsQ1VrQzlELENDbkRMLFNYeUdJLFlBQWEsQ0FDYixrQld6R2lCLENYMEdqQixzQlcxR3lCLENYMkd6QixtQlczR2tDLENBQ2xDLGlCQUFrQixDQUNsQixVWDRFa0UsQ1czRWxFLFNBQVUsQ2hCY04sMkJnQmxCUixTQU9RLGdCWFUyRCxDV1QzRCxzRFZBa0MsQ1VDbEMscUJBQXNCLENBcUU3QixDaEJ0RU8sc0RnQlJSLFNBYVEsZ0JYSTJELENXSDNELGdCWEcyRCxDVzZEbEUsQ0E3REcsZUFDSSwwQkFBMkIsQ0FDOUIsZUFHRyxlQUFnQixDaEJKaEIsMkJnQkdKLGVBSVEsNkJYUnVELENXc0I5RCxDaEIvQkcsc0RnQmFKLGVBUVEsc0JYWnVELENXc0I5RCxDQVBHLCtCQUNJLDZCWGhCdUQsQ0xUM0Qsc0RnQndCQSwrQkFJUSwwQlhuQm1ELENXcUIxRCxDQXRDVCxhWG9FSSxjQUFrQyxDQUNsQyxrQkFVa0UsQ0FOOUQsZVcvQjJCLENYK0QvQixZQUFhLENBQ2Isa0JXL0RxQixDWGdFckIsc0JXaEU2QixDWGlFN0Isa0JXakVxQyxDQUNqQyxpQkFBa0IsQ0E1QzFCLDBCQWdEUSxXQUFZLENBaERwQixnQ0FvRFEsZVgyQjhELENXL0V0RSxjQXdEUSxhQUFjLENBQ2QsVUFBVyxDQUNYLFVBQVcsQ0FDWCx3Qlp2RG1CLENZd0RuQix3QkFBeUIsQ0FDNUIseUJBR0csMEJBQTJCLENoQjFDM0IsMkJnQnlDSix5QkFJUSx3QkFBeUIsQ0FVaEMsQ2hCckVHLHNEZ0J1REoseUJBUVEsZ0JYdER1RCxDVzREOUQsQ0FkRCw4QkFZUSx3QloxRWUsQ0ppQm5CLDJCaUJsQlIsWUFFUSxtQlplMkQsQ1lkM0QsZ0JaYzJELENZNkRsRSxDQXZFRyxtQkFDSSxpQkFBa0IsQ0FDbEIsVUFBVyxDQUNYLGdCWk8yRCxDWU4zRCx3QmJWbUIsQ2FXbkIsK0JaSzJELENZSjNELGdDWkkyRCxDTFQzRCxzRGlCREosbUJBU1EsVVpDdUQsQ1lBdkQsMkJaQXVELENZQ3ZELDRCWkR1RCxDWTJCOUQsQ0FyQ0EsMkJBZU8sVUFBVyxDQUNYLGlCQUFrQixDQUNsQixPQUFRLENBQ1IsV1pSdUQsQ1lTdkQsY1pUdUQsQ1lVdkQsZVpWdUQsQ1lXdkQsd0JieEJlLENheUJmLGlCQUFrQixDQUNsQixTQUFVLENBQ1YsK0NiM0JlLENhNkJmLFVBQVcsQ2pCekJmLHNEaUJESCwyQkE2QlcsT0FBUSxDQUNSLGNacEJtRCxDWXFCbkQsZVpyQm1ELENZc0JuRCxnQlp0Qm1ELENZdUJuRCwrQ2JyQ1csQ2F3Q2xCLENBM0NULGdCQStDUSxrQ1o5QjJELENZK0IzRCxtQ1ovQjJELENMQzNELDJCaUJrQ0osOEJBR1EsZVp0Q3VELENZZ0Q5RCxDakIvQ0csMkJpQmtDSCxzQ0FRVyxVQUFXLENBQ1gsZ0JaNUNtRCxDWTZDbkQsbUJBQVksQ0FBWixnQkFBaUIsQ0FFeEIsQ2pCMUNELDJCaUI2Q0osZUFFUSxxQlpVMEQsQ1lSakUsQ2pCckRHLDJCaUJ1REosZUFFUSxxQloxRHVELENZNEQ5RCxDQzNFRCxpQ0FHUSxzQkFBdUIsQ2xCYTNCLDJCa0JoQkosaUNia0VBLGNBQWtDLENBQ2xDLGNBVWtFLENBTjlELGVhakVpQyxDQUN6Qix3QmJRbUQsQ2FQbkQsY0FBZSxDQVF0QixDbEJWRCxzRGtCTkosaUNia0VBLGNBQWtDLENBQ2xDLGlCQVVrRSxDQU45RCxnQmEzRG9DLENBQzVCLFVBQVcsQ0FDWCxvQmJDbUQsQ2FDMUQsQ0FHTCxtQmJvRkEsWUFBYSxDQUNiLHFCYXBGd0IsQ2JxRnhCLHNCYXJGZ0MsQ2JzRmhDLGtCYXRGd0MsQ2xCSnBDLDJCa0JHSixtQkFJUSxjQUFlLENBQ2YsV2JUdUQsQ2FnQjlELENsQnpCRyxzRGtCYUosbUJBU1EsVUFBVyxDQUNYLGFiZHVELENhZ0I5RCxDbEJmRywyQmtCaUJKLHdCYmlDQSxjQUFrQyxDQUNsQyxjQVVrRSxDQU45RCxlYXBDNkIsQ0FDekIscUJBQXNCLENBQ3RCLGNBQWUsQ0FNdEIsQ2xCckNHLHNEa0IyQkosd0JBUVEsaUJiMUJ1RCxDYTRCOUQsQ2xCM0JHLDJCa0I2QkosMEJicUJBLGNBQWtDLENBQ2xDLGNBVWtFLENBTjlELGVheEI2QixDQUN6QixvQmJqQ3VELENha0N2RCxzQkFBdUIsQ0FDdkIsY0FBZSxDQVV0QixDbEJ4Q0csMkJrQnlCSiwwQmJxQkEsY0FBa0MsQ0FDbEMsaUJBVWtFLENBTjlELGdCYWpCZ0MsQ0FDNUIsa0Jic0IwRCxDYXJCMUQscUJicUIwRCxDYXBCMUQsT0FBUSxDQUNSLHFCQUFzQixDQUU3QixDQzlETCxNZHlHSSxZQUFhLENBQ2IscUJjekdvQixDZDBHcEIsc0JjMUc0QixDZDJHNUIsa0JjM0dvQyxDQUNwQyxpQkFBa0IsQ0FGdEIsU0FNUSx3QkFBeUIsQ25CWXpCLDJCbUJsQlIsU2RvRUksY0FBa0MsQ0FDbEMsbUJBVWtFLENBTjlELGVjaEUrQixDQUMzQixvQmRPdUQsQ2NEOUQsQ25CTUcsMkJtQnRCUixTQWNZLHFCZGlFMEQsQ2MvRGpFLENuQkVHLDJCbUJsQlIsUWRvRUksY0FBa0MsQ0FDbEMsY0FVa0UsQ0FOOUQsZWNwRDZCLENBQ3pCLGNBQWUsQ0FDZixzQkFBdUIsQ0FVOUIsQ25CWEcsMkJtQnRCUixRQTJCWSxVQUFXLENBTWxCLENuQnpCRyxzRG1CUlIsUWRvRUksY0FBa0MsQ0FDbEMsaUJBVWtFLENBTjlELGdCYzFDK0IsQ0FFbEMsQ0FHRCxlQUNJLGlCQUFrQixDQUNsQixlQUFnQixDQUNoQixVQUFXLENBQ2QsV0FLTyxjQUFlLENuQjNCbkIsMkJtQnlCSCwwQkFPVyxjQUFlLENBRXRCLENDcERULGNmeUdJLFlBQWEsQ0FDYixxQmV6R29CLENmMEdwQixzQmUxRzRCLENmMkc1QixrQmUzR29DLENwQmlCaEMsMkJvQmxCUixjQUlRLG1CZmEyRCxDZXdDbEUsQ0FqREcscUJBQ0ksd0JBQXlCLENBQ3pCLGlCQUFrQixDcEJRbEIsMkJvQlZKLHFCZjREQSxjQUFrQyxDQUNsQyxtQkFVa0UsQ0FOOUQsZWU1RCtCLENBQzNCLHVCZkd1RCxDZUZ2RCx1QkFBd0IsQ0FDeEIsY0FBZSxDQVd0QixDcEJMRywyQm9CZEoscUJmNERBLGNBQWtDLENBQ2xDLGdCQVVrRSxDQU45RCxrQmVyRCtCLENBQzNCLG9CZjBEMEQsQ2VwRGpFLENwQm5CRyxzRG9CQUoscUJmNERBLGNBQWtDLENBQ2xDLGlCQVVrRSxDQU45RCxlZWhENkIsQ0FFaEMsQ3BCVEcsMkJvQllKLG9CQUVRLFNBQVUsQ0FDVixnQkFBaUIsQ0FDakIsc0JBQXVCLENBQ3ZCLHVCZmxCdUQsQ2V1QzlELENwQmxDRywyQm9CUUosb0JBU1EsVUFBVyxDQWlCbEIsQ3BCaERHLHNEb0JzQkosb0Jmc0NBLGNBQWtDLENBQ2xDLGlCQVVrRSxDQU45RCxnQmU5QitCLENBYWxDLENwQnRDRywyQm9CWUgsdUNBbUJXLG9CZmhDbUQsQ2VzQzFELENwQmpDRCwyQm9CUUgsdUNBdUJXLGtCZjBCc0QsQ2V4QjdELENDdkRULFdoQnlHSSxZQUFhLENBQ2IscUJnQnpHb0IsQ2hCMEdwQixzQmdCMUc0QixDaEIyRzVCLGtCZ0IzR29DLENBRHhDLHlCaEJvRUksY0FBa0MsQ0FDbEMsbUJBVWtFLENBTjlELGVnQnJFMkIsQ3JCYzNCLDJCcUJsQlIseUJBT1ksb0JoQlV1RCxDZ0JUdkQsdUJoQlN1RCxDZ0JSdkQsd0JBQXlCLENBVWhDLENyQkdHLDJCcUJ0QlIseUJBYVkscUJoQmtFMEQsQ2dCNURqRSxDckJYRyxzRHFCUlIseUJoQm9FSSxjQUFrQyxDQUNsQyxjQVVrRSxDQU45RCxtQmdCeEQrQixDQUVsQyxDQW5CTCx3QkFzQlEsaUJBQWtCLENyQkpsQiwyQnFCbEJSLHdCaEJvRUksY0FBa0MsQ0FDbEMsY0FVa0UsQ0FOOUQsZWdCaEQ2QixDQUN6QixvQmhCVHVELENnQlV2RCx1QmhCVnVELENnQld2RCxjQUFlLENBQ2Ysc0JBQXVCLENBTzlCLENyQmRHLDJCcUJ0QlIsd0JoQm9FSSxjQUFrQyxDQUNsQyxpQkFVa0UsQ0FOOUQsZ0JnQnhDK0IsQ0FDM0IsbUJoQjZDMEQsQ2dCM0NqRSxDQ3BDTCxRQUNJLFVBQVcsQ0FDWCxZQUFh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QmdCakUsa0J4Qm5EOEQsQ3dCb0Q5RCxrQkFBbUIsQ0FDbkIsZUFBZ0IsQ0FDaEIsU0FBVSxDN0JuSFYsMkI2QjZHSixXQVNRLGV4QnpEMEQsQ3dCaUZqRSxDN0JoSkcsOEU2QitHSixXeEIzREEsY0FBa0MsQ0FDbEMsa0JBVWtFLENBUjlELGVBTlMsQ3dCNEVMLFlBQWEsQ0FDYixhQUFjLENBQ2Qsc0J4QmhFMEQsQ3dCaUUxRCxnQnhCakUwRCxDd0JpRmpFLEM3QnRKRyx3RDZCcUhKLFd4QjNEQSxjQUFrQyxDQUNsQyxrQkFVa0UsQ0FOOUQsa0J3QjJFNkIsQ0FDekIsa0JBQW1CLENBQ25CLHFCeEJ2RTBELEN3QndFMUQsbUJ4QnhFMEQsQ3dCaUZqRSxDN0J4Skcsc0Q2QnVISixXeEIzREEsY0FBa0MsQ0FDbEMsbUJBVWtFLENBTjlELG1Cd0JrRjZCLENBQ3pCLGFBQWMsQ0FDZCxpQnhCOUUwRCxDd0IrRTFELHVCeEIvRTBELEN3QmlGakUsQ0FJRCxXQUNJLHVCeEJ0RjhELEN3QnVGOUQsVXhCckoyRCxDd0JzSjNELGdCeEJ0SjJELEN3QnVKM0QsU0FBVSxDN0J4SlYsOEU2Qm9KSixXQU9RLFd4QjVGMEQsQ3dCNkYxRCxXQUFZLENBQ1osT0FBUSxDQUNSLHVCeEI3SnVELEN3QjRLOUQsQzdCbkxHLHdENkIwSkosV0FjUSxnQnhCbkcwRCxDd0JvRzFELGdCeEJwRzBELEN3QnFHMUQsT0FBUSxDQVNmLEM3QnJMRyxzRDZCNEpKLFdBb0JRLHNCeEJ6RzBELEN3QjBHMUQsZ0J4QjFHMEQsQ3dCMkcxRCxnQnhCM0cwRCxDd0I0RzFELE9BQVEsQ0FFZixDQUlELGlCQUNJLGlCQUFrQixDQUNsQixPQUFRLENBQ1IsbUJBQW9CLEM3QjlLcEIsMkI2QjJLSixpQkFNUSxpQkFBa0IsQ0FDbEIsVUFBVyxDQUNYLFdBQVksQ0FFbkIsQ0FJRCxZQUNJLGlCQUFrQixDQUNsQixRQUFTLENBQ1QsT0FBUSxDQUNSLGdCeEJsTTJELEN3Qm1NM0QsZXhCbk0yRCxDd0JvTTNELDZCeEJwTTJELEN3QnFNM0QscUJBQVksQ0FBWixrQkFBbUIsQzdCaE1uQiwyQjZCeUxKLFlBVVEsaUJBQWtCLENBQ2xCLFFBQVMsQ0FDVCxPQUFRLENBaUJmLEM3QjVORyw4RTZCK0xKLFlBZ0JRLHlCQUEwQixDQUMxQiwwQkFBMkIsQ0FZbEMsQzdCNU5HLDhFNkIrTEosWUFxQlEseUJBQTBCLENBQzFCLDBCQUEyQixDQU9sQyxDN0JwT0csc0Q2QnVNSixZQTBCUSxXQUFZLENBQ1osWUFBYSxDQUVwQixDQUlELGFBQ0ksWUFBYSxDN0J6T2Isc0Q2QndPSixhQUlRLG1CeEJySzBELEN3QnNLMUQsYUFBYyxDQUNkLGlCQUFrQixDQUNsQixrQkFBbUIsQ0FxQjFCLENBNUJBLGlCQVdPLGF4QjVLMEQsQ3dCNksxRCxtQnhCN0swRCxDd0I4SzFELHNCeEI5SzBELEN3QitLN0QscUJBR0csWUFBYSxDQUNiLGlCQUFrQixDQUNsQixzQkFBdUIsQ0FDdkIsa0JBQW1CLENBQ25CLGtCQUFtQixDQUNuQixPQUFRLENBTlgseUJBU08sZ0J4QjFMc0QsQ3dCMkx6RCxPQ3pRVCxVQUFXLENBQ1gsWUFBYSxDQUViLGFBQ0ksWUFBYSxDQUNiLHFCQUFzQixDQUN0QixVQUFXLENBQ1gsV0FBWSxDQUNaLDZCQUE4QixDQUM5QixrQkFBbUIsQ0FDbkIsbUJBQW9CLENBQ3ZCLGdCQUdHLFlBQWEsQ0FDYixrQkFBbUIsQ0FDbkIsc0JBQXVCLENBQ3ZCLHFCQUFzQixDQUN0QixZekI0RDhELEN5QjNEOUQsV0FBWSxDQUVaLFlBQWEsQ0FDYixzQkFBdUIsQ0FDdkIsZUFBZ0IsQ0FDaEIsa0J6QnNEOEQsQ0x6RDlELDJCOEJSSixnQkFjUSxhQUFjLENBRXJCLENBRUQsYUFDSSx5QkFBMEIsQ0FDN0IsYXpCdUVELFlBQWEsQ0FDYixxQjBCekdvQixDMUIwR3BCLHNCMEIxRzRCLEMxQjJHNUIsa0IwQjNHb0MsQzFCbUVwQyxjQUFrQyxDQUNsQyxjQVVrRSxDQU45RCxlMEJ2RXFCLENBQ3pCLGFBQWMsQ0FDZCxjQUFlLENBQ2YsaUJBQWtCLEMvQkdkLHNEK0JSUixhMUJvRUksY0FBa0MsQ0FDbEMsaUJBVWtFLENBTjlELGdCMEJqRTRCLENBNEJuQyxDQXBDRCxlQVlRLHNCQUF1QixDL0JKdkIsc0QrQlJSLGVBZVkscUJBQXNCLENBRTdCLENBakJMLGdCbEMrQ0ksdUNBaEI2QixDQWlCVCxlQUFrQyxDa0MzQmxELCtCM0JwQm1CLEMyQnFCbkIsaUJBQWtCLEMvQkpsQiwyQitCbEJSLGdCMUJvRUksZUFBa0MsQ0FDbEMsbUJBVWtFLENBTjlELGtCMEJoRGlDLENBQzdCLHNCMUJUdUQsQzBCVXZELHVCQUF3QixDQVEvQixDL0IzQkcsc0QrQlJSLGdCMUJvRUksY0FBa0MsQ0FDbEMsa0JBVWtFLENBTjlELGtCMEIxQzZCLENBQ3pCLGlCMUJmdUQsQzBCZ0J2RCxzQkFBdUIsQ0FFOUIsQ0NuQ0wsb0IzQnlHSSxZQUFhLENBQ2Isa0IyQnpHaUIsQzNCMEdqQiwwQjJCMUc2QixDM0IyRzdCLHNCMkIzR3lDLENoQ2VyQyw4RWdDaEJSLG9CQUlRLGNBQWUsQ0FDZiw2QkFBOEIsQ0FDOUIsaUIzQlcyRCxDMkJ3RWxFLENoQ2pGTyxzRGdDUlIsb0JBVVEsY0FBZSxDQUNmLDZCQUE4QixDQUM5QixXM0JLMkQsQzJCd0VsRSxDaEN2RU8sMkJnQ2xCUiwyQkFpQlksZ0IzQkF1RCxDMkJvQzlELENoQ3JDRyw4RWdDaEJSLDJCQXFCWSxnQjNCSnVELEMyQm9DOUQsQ2hDN0NHLHNEZ0NSUiwyQkF5QlksZ0IzQlJ1RCxDMkJvQzlELENBckRMLCtCQTZCWSxVQUFXLENoQ1hmLDJCZ0NsQlIsd0NBa0NnQixzQjNCakJtRCxDMkJ5QjFELENoQ3hCRCwyQmdDbUJJLHFFQUVRLGUzQnRCK0MsQzJCd0J0RCxDaEN2QkwsMkJnQ2xCUix3Q0E4Q2dCLHFCM0I3Qm1ELEMyQm1DMUQsQ2hDNUNELHNEZ0NSUix3Q0FrRGdCLGdCQUFpQixDQUV4QixDQUlMLDZCQUNJLGlCM0J4QzJELENMQzNELDJCZ0NzQ0gsaURBT2Usb0IzQjlDK0MsQzJCZ0R0RCxDaEMvQ0wsMkJnQ3NDSCxpREFhZSxnQjNCcEQrQyxDMkIwRHRELENoQ25FTCxzRGdDZ0RILGlEQWlCZSxhQUFjLENBRXJCLENoQ3pETCwyQmdDc0NILGlEQXVCZSxnQkFBaUIsQ0FDakIsc0IzQi9EK0MsQzJCcUV0RCxDaEM5RUwsc0RnQ2dESCxpREE0QmUsYUFBYyxDQUVyQixDQ3RGYixrQjVCeUdJLFlBQWEsQ0FDYixrQjRCekdpQixDNUIwR2pCLDZCNEIxR2dDLEM1QjJHaEMsc0I0QjNHNEMsQ2pDcUJ4QywyQmlDdEJSLGtCQUlRLHFCQUFzQixDQUN0QixjNUJZMkQsQzRCOEJsRSxDakM3Qk8sMkJpQ1ZKLDBCNUJpR0EsWUFBYSxDQUNiLGtCNEJoR3lCLEM1QmlHekIsMEI0QmpHcUMsQzVCa0dyQyxzQjRCbEdpRCxDQUN6QyxhNUJNdUQsQzRCTHZELG9CNUJLdUQsQzRCSDlELENqQ0lHLDJCaUNsQlIseUJBa0JZLGM1QkR1RCxDNEJFdkQsZTVCRnVELEM0Qkd2RCxzQjVCSHVELEM0Qkl2RCxlQUFnQixDQXlCdkIsQ2pDdENHLHNEaUNSUix5QkF5QlksZ0I1QlJ1RCxDNEJTdkQsaUI1QlR1RCxDNEI2QjlELENqQ3RDRyxzRGlDUlIscUNBK0JnQix3QjVCZG1ELEM0QmdCMUQsQ2pDZkQsMkJpQ2xCUixvQ0FxQ2dCLG1CQUFvQixDQUUzQixDQXZDVCw2QkEwQ1ksVUFBVyxDQUNYLFdBQVksQ0FDWixtQkFBWSxDQUFaLGdCQUFpQixDQUNwQixRNUJJTCxTQVZnQyxDQTZCaEMsY0FBa0MsQ0FDbEMsa0JBVWtFLENBUjlELGU2QnJFc0IsQzdCZ0gxQixxQkFBcUUsQzZCOUdyRSxpQkFBa0IsQ0FDbEIsWUFBYSxDQUNiLDZCQUE4QixDQUM5QixjQUFlLENBQ2Ysd0JBQXlCLENBQ3pCLG9CQUFxQixDbENEakIsc0RrQ1JSLFFBWVEsWUFBYSxDQUNiLHFCN0JrRThELEM2Qk5yRSxDbENqRU8sc0RjR0MsY29CUUcsVzdCNEQwRCxDNkIzRDFELE9BQVEsQ0FTZixDbENQRywyQmtDTkgsMkJBVVcsWUFBYSxDQUVwQixDQUtMLGtCQUNJLGU3QmpCMkQsQzZCa0IzRCxzQkFBdUIsQ0FD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Q0FsRHBCLFNBc0RRLFlBQWEsQ0FDYixvQ0FBcUMsQ0FDckMsc0JBQXVCLENBQ3ZCLG1CQUFvQixDQUNwQixnQkFBaUIsQ0FDakIsV0FBWSxDcENuRFosc0RvQ1JSLFNBOERZLCtDQUFnRCxDQWlFdkQsQ0EvSEwsWS9Cb0VJLGNBQWtDLENBQ2xDLGtCQVVrRSxDQU45RCxlK0JQK0IsQ0FDM0Isc0JBQXVCLENBQ3ZCLHdCQUF5QixDQUN6QixjQUFlLENwQzdEbkIsc0RvQ1JSLHNHQTJFb0IsWUFBYSxDQUVwQixDQTdFYixjQWdGZ0Isb0JBQXFCLENBQ3JCLDBCQUEyQixDcEM3RG5DLDJCb0NwQlIsY0FvRm9CLCtCQUE2QixDQU1wQyxDQTFGYix3QkF3Rm9CLG1CQUFvQixDQXhGeEMsaURBZ0dZLGtDQUFtQyxDQUVuQyw2REFDSSxvQmhDL0ZXLENnQ2dHZCw2RkFHRyxvQmhDdEdXLENnQ0QzQixxREEyR2dCLHFCL0IxRm1ELEMrQmpCbkUsdUJBZ0hZLGdCQUFpQixDQUNqQixtQ0FBb0MsQ0FFcEMsNkJBQ0ksb0JoQ2hIVyxDZ0NpSGQsNkNBR0csb0JoQ3ZIVyxDZ0NEM0IseUJBNEhnQixzQi9CM0dtRCxDK0I0R3RELG1CQUtMLDJCQUE0QixDQUMvQixTQ2xJRCxZQUFhLENBQ2IsaUJBQWtCLENBQ2xCLG1CQUFvQixDQUNwQixjQUFlLENBQ2YsTUFBTyxDQUNQLEtBQU0sQ0FDTixXQUFZLENBQ1osWUFBYSxDQUNiLFNBQVUsQ0FDVixtQkFBb0IsQ0FFcEIsa0NBQ0ksaUJBQWtCLENBQ2xCLFVBQVcsQ0FDWCxXQUFZLENBQ2YsZUFJRyxlQUFnQixDQUNoQixxQkFBc0IsQ0FDdEIsU0FBVSxDQUNWLHNCaENOMkQsQ2dDTzlELG1CQUlHLFVBQVcsQ0FDWCxXQUFZLENBQ1oscUJBQXNCLENBQ3RCLDJCQUE0QiIsImZpbGUiOiJtYWluLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIiRzaXplLWRlc2lnbjogMTI4MHB4O1xuXG4kc2l6ZS1oZDogMTgwMHB4O1xuJHNpemUtZGVza3RvcDogMTAyNHB4O1xuJHNpemUtdGFibGV0OiA2NjBweDtcbiRzaXplLW1pbjogMzIwcHg7XG5cbiRzaXplLWxhcHRvcC1oZWlnaHQ6IDY0MHB4O1xuXG4kbWFyZ2luOiAyMnB4O1xuJG1vYmlsZTogMjRweDtcblxuXG5odG1sIHtcbiAgICAtLW1hcmdpbi1pbmxpbmU6ICN7cmVtKDIwKX07XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICAgICNGT05UU1xuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIHN0eWxlbGludC1kaXNhYmxlICovXG5cbkBtaXhpbiBsb2FkLWZvbnQoJG5hbWUsICR3ZWlnaHQ6IDQwMCwgJHN0eWxlOiBub3JtYWwpIHtcblxuICAgICRmb250cGF0aDogXCIuL2ZvbnRzLyN7JG5hbWV9LyN7JG5hbWV9I3skd2VpZ2h0fVwiO1xuICAgICRmb250bmFtZTogXCIjeyRuYW1lfVwiO1xuXG4gICAgQGlmICgkc3R5bGUgIT0gbm9ybWFsKSB7XG4gICAgICAgICRmb250cGF0aDogXCIuL2ZvbnRzLyN7JG5hbWV9LyN7JG5hbWV9I3skd2VpZ2h0fSN7JHN0eWxlfVwiO1xuICAgICAgICAkZm9udG5hbWU6IFwiI3skbmFtZX0jeyRzdHlsZX1cIjtcbiAgICB9XG5cbiAgICBmb250LWZhbWlseTogJG5hbWU7XG4gICAgZm9udC13ZWlnaHQ6ICR3ZWlnaHQ7XG4gICAgZm9udC1zdHlsZTogJHN0eWxlO1xuICAgIGZvbnQtZGlzcGxheTogYXV0bztcblxuICAgIHNyYzogdXJsKFwiI3skZm9udHBhdGh9LndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCAvLyBTdXBlciBNb2Rlcm4gQnJvd3NlcnNcbiAgICAgICAgIHVybChcIiN7JGZvbnRwYXRofS53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIC8vIFByZXR0eSBNb2Rlcm4gQnJvd3NlcnNcbn1cblxuLy8gbG9hZCBjdXN0b20gZm9udHM6XG5AZm9udC1mYWNlIHsgQGluY2x1ZGUgbG9hZC1mb250KCRmb250LXNhbnMsIDcwMCk7IH1cbkBmb250LWZhY2UgeyBAaW5jbHVkZSBsb2FkLWZvbnQoJGZvbnQtbW9ubywgNDAwKTsgfVxuXG5cblxuJGZvbnRzOiAoXG4gICAgc2FuczogKCRmb250LXNhbnMsIHNhbnMtc2VyaWYpLFxuICAgIG1vbm86ICgkZm9udC1tb25vLCBtb25vc3BhY2UpLFxuKTtcblxuXG5AZnVuY3Rpb24gZm9udCgkZm9udCkge1xuICAgIEBpZiBtYXAtaGFzLWtleSgkZm9udHMsICRmb250KSB7XG4gICAgICAgIEByZXR1cm4gbWFwLWdldCgkZm9udHMsICRmb250KTtcbiAgICB9IEBlbHNlIHtcbiAgICAgICAgQHdhcm4gXCJJbnZhbGlkIGZvbnQgbmFtZTogI3skZm9udH0uXCI7XG4gICAgICAgIEByZXR1cm4gbnVsbDtcbiAgICB9XG59XG5cblxuQG1peGluIGZvbnQtZmFtaWx5KCRmYW1pbHksICR3ZWlnaHQ6IFwiXCIsICRzdHlsZTogXCJcIikge1xuICAgIGZvbnQtZmFtaWx5OiBmb250KCRmYW1pbHkpO1xuICAgIEBpZiAkd2VpZ2h0ICE9IFwiXCIgeyBmb250LXdlaWdodDogdW5xdW90ZShcIlwiICsgJHdlaWdodCk7IH1cbiAgICBAaWYgJHN0eWxlICE9IFwiXCIgeyBmb250LXN0eWxlOiB1bnF1b3RlKFwiXCIgKyAkc3R5bGUpOyB9XG59XG5cblxuQGVhY2ggJGxhYmVsLCAkZm9udCBpbiAkZm9udHMge1xuICAgIC5mb250LSN7JGxhYmVsfSB7IEBpbmNsdWRlIGZvbnQtZmFtaWx5KCRsYWJlbCk7IH1cbn1cblxuXG5AZm9yICRpIGZyb20gMSB0aHJvdWdoIDkge1xuICAgIC5mdy0jeyRpfSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkaSAqIDEwMCAhaW1wb3J0YW50O1xuICAgIH1cbn1cbi8qIHN0eWxlbGludC1lbmFibGUgKi9cbiIsIiRmb250LXNhbnM6IFwiUHJvdGVzdEdyb3Rlc2tcIjtcbiRmb250LW1vbm86IFwiUHJvdGVzdEdyb3Rlc2tNb25vXCI7XG5cbiRiYXNlLWZvbnQtc2l6ZTogMTY7XG4kYmFzZS1saW5lLWhlaWdodDogMjQ7XG4iLCIvLyBnZXQgYnJlYWtwb2ludCB2YWx1ZSBpbiAuanM6XG4vLyBodHRwczovL3d3dy5sdWxsYWJvdC5jb20vYXJ0aWNsZXMvaW1wb3J0aW5nLWNzcy1icmVha3BvaW50cy1pbnRvLWphdmFzY3JpcHRcbi8vIGFuZOKApiBsZXQncyB1c2UgbW9iaWxlLWZpcnN0IVxuXG5ib2R5OjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChwaG9uZSkgeyBjb250ZW50OiBcInBob25lXCI7IH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCkgeyBjb250ZW50OiBcInRhYmxldFwiOyB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChkZXNrdG9wKSB7IGNvbnRlbnQ6IFwiZGVza3RvcFwiOyB9XG59XG5cblxuLy8gSnVzdCBQaG9uZXNcbkBpbmNsdWRlIGJyZWFrcG9pbnQocGhvbmUpIHtcblxuICAgIC5waG9uZS1oaWRlLFxuICAgICVwaG9uZS1oaWRlIHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG59XG5cbkBpbmNsdWRlIGJyZWFrcG9pbnQocGhvbmUtbGFuZHNjYXBlKSB7XG5cbiAgICAucGhvbmUtbGFuZHNjYXBlLWhpZGUsXG4gICAgJXBob25lLWxhbmRzY2FwZS1oaWRlIHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG59XG5cblxuLy8gVGFibGV0ICYgRGVza3RvcFxuQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQpIHtcblxuICAgIC50YWJsZXQtaGlkZSxcbiAgICAldGFibGV0LWhpZGUgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cbn1cblxuXG4vLyBEZXNrdG9wXG5AaW5jbHVkZSBicmVha3BvaW50KGRlc2t0b3ApIHtcblxuICAgIC5kZXNrdG9wLWhpZGUsXG4gICAgJWRlc2t0b3AtaGlkZSB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxufVxuXG5cbi8vIE5vdCBEZXNrdG9wXG5AaW5jbHVkZSBicmVha3BvaW50KG5vdC1kZXNrdG9wKSB7XG5cbiAgICAuZGVza3RvcC1vbmx5LFxuICAgICVkZXNrdG9wLW9ubHkgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gICAgI1JFU1BPTlNJVkUgQlJFQUtQT0lOVFNcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSAqL1xuXG5AbWl4aW4gYnJlYWtwb2ludCgkcG9pbnQpIHtcblxuICAgIEBpZiAkcG9pbnQgPT0gcGhvbmUge1xuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogJHNpemUtdGFibGV0IC0gMXB4KSBhbmQgKG9yaWVudGF0aW9uOiBwb3J0cmFpdCkgeyBAY29udGVudDsgfVxuICAgIH0gQGVsc2UgaWYgJHBvaW50ID09IHBob25lLWxhbmRzY2FwZSB7XG4gICAgICAgIEBtZWRpYSAobWF4LWhlaWdodDogJHNpemUtdGFibGV0IC0gMXB4KSBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpIHsgQGNvbnRlbnQ7IH1cbiAgICB9IEBlbHNlIGlmICRwb2ludCA9PSBpcGhvbmU1IHtcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzaXplLW1pbikgeyBAY29udGVudDsgfVxuICAgIH0gQGVsc2UgaWYgJHBvaW50ID09IG5vdC1waG9uZSB7XG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2l6ZS10YWJsZXQpIHsgQGNvbnRlbnQ7IH1cbiAgICB9IEBlbHNlIGlmICRwb2ludCA9PSB0YWJsZXQge1xuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNpemUtdGFibGV0KSBhbmQgKG1heC13aWR0aDogJHNpemUtZGVza3RvcCAtIDFweCkgYW5kIChvcmllbnRhdGlvbjogcG9ydHJhaXQpIHsgQGNvbnRlbnQ7IH1cbiAgICB9IEBlbHNlIGlmICRwb2ludCA9PSBkZXNrdG9wIHtcbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRzaXplLWRlc2t0b3ApIHsgQGNvbnRlbnQ7IH1cbiAgICB9IEBlbHNlIGlmICRwb2ludCA9PSBoZCB7XG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2l6ZS1oZCkgeyBAY29udGVudDsgfVxuICAgIH0gQGVsc2UgaWYgJHBvaW50ID09IG5vdC1kZXNrdG9wIHtcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzaXplLWRlc2t0b3AgLSAxcHgpIHsgQGNvbnRlbnQ7IH1cbiAgICB9IEBlbHNlIGlmICRwb2ludCA9PSBub3QtaGQge1xuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogJHNpemUtaGQgLSAxcHgpIHsgQGNvbnRlbnQ7IH1cbiAgICB9IEBlbHNlIGlmICRwb2ludCA9PSBsYXB0b3Age1xuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNpemUtZGVza3RvcCkgYW5kIChtYXgtaGVpZ2h0OiAkc2l6ZS1sYXB0b3AtaGVpZ2h0KSB7IEBjb250ZW50OyB9XG4gICAgfSBAZWxzZSBpZiAkcG9pbnQgPT0gbGFuZHNjYXBlIHtcbiAgICAgICAgQG1lZGlhIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSB7IEBjb250ZW50OyB9XG4gICAgfSBAZWxzZSBpZiAkcG9pbnQgPT0gcmV0aW5hIHtcbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSwgb25seSBzY3JlZW4gYW5kIChtaW4tcmVzb2x1dGlvbjogMTkyZHBpKSwgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRzaXplLWRlc2t0b3ApeyBAY29udGVudDsgfVxuICAgIH1cbn1cbi8qIHN0eWxlbGludC1lbmFibGUgKi9cbiIsIi8qIGh0dHA6Ly9tZXllcndlYi5jb20vZXJpYy90b29scy9jc3MvcmVzZXQvXG4gICB2Mi4wIHwgMjAxMTAxMjZcbiAgIExpY2Vuc2U6IG5vbmUgKHB1YmxpYyBkb21haW4pXG4qL1xuLyogc3R5bGVsaW50LWRpc2FibGUgKi9cblxuaHRtbCwgYm9keSwgZGl2LCBzcGFuLCBhcHBsZXQsIG9iamVjdCwgaWZyYW1lLFxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNiwgcCwgYmxvY2txdW90ZSwgcHJlLFxuYSwgYWJiciwgYWNyb255bSwgYWRkcmVzcywgYmlnLCBjaXRlLCBjb2RlLFxuZGVsLCBkZm4sIGVtLCBpbWcsIGlucywga2JkLCBxLCBzLCBzYW1wLFxuc21hbGwsIHN0cmlrZSwgc3Ryb25nLCBzdWIsIHN1cCwgdHQsIHZhcixcbmIsIHUsIGksIGNlbnRlcixcbmRsLCBkdCwgZGQsIG9sLCB1bCwgbGksXG5maWVsZHNldCwgZm9ybSwgbGFiZWwsIGxlZ2VuZCxcbnRhYmxlLCBjYXB0aW9uLCB0Ym9keSwgdGZvb3QsIHRoZWFkLCB0ciwgdGgsIHRkLFxuYXJ0aWNsZSwgYXNpZGUsIGNhbnZhcywgZGV0YWlscywgZW1iZWQsXG5maWd1cmUsIGZpZ2NhcHRpb24sIGZvb3RlciwgaGVhZGVyLCBoZ3JvdXAsXG5tZW51LCBuYXYsIG91dHB1dCwgcnVieSwgc2VjdGlvbiwgc3VtbWFyeSxcbnRpbWUsIG1hcmssIGF1ZGlvLCB2aWRlbyB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm9yZGVyOiAwO1xuICAgIGZvbnQtc2l6ZTogMTAwJTtcbiAgICAvL2ZvbnQ6IGluaGVyaXQ7XG4gICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuLyogSFRNTDUgZGlzcGxheS1yb2xlIHJlc2V0IGZvciBvbGRlciBicm93c2VycyAqL1xuYXJ0aWNsZSwgYXNpZGUsIGRldGFpbHMsIGZpZ2NhcHRpb24sIGZpZ3VyZSxcbmZvb3RlciwgaGVhZGVyLCBoZ3JvdXAsIG1lbnUsIG5hdiwgc2VjdGlvbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG59XG5ib2R5IHtcbiAgICBsaW5lLWhlaWdodDogMTtcbn1cbm9sLCB1bCB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbn1cbmJsb2NrcXVvdGUsIHEge1xuICAgIHF1b3Rlczogbm9uZTtcbn1cbmJsb2NrcXVvdGU6YmVmb3JlLCBibG9ja3F1b3RlOmFmdGVyLFxucTpiZWZvcmUsIHE6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGNvbnRlbnQ6IG5vbmU7XG59XG50YWJsZSB7XG4gICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgICBib3JkZXItc3BhY2luZzogMDtcbn1cbi8qIENoYW5nZSBBdXRvY29tcGxldGUgc3R5bGVzIGluIENocm9tZSovXG5pbnB1dDotd2Via2l0LWF1dG9maWxsLFxuaW5wdXQ6LXdlYmtpdC1hdXRvZmlsbDpob3ZlcixcbmlucHV0Oi13ZWJraXQtYXV0b2ZpbGw6Zm9jdXNcbmlucHV0Oi13ZWJraXQtYXV0b2ZpbGwsXG50ZXh0YXJlYTotd2Via2l0LWF1dG9maWxsLFxudGV4dGFyZWE6LXdlYmtpdC1hdXRvZmlsbDpob3ZlclxudGV4dGFyZWE6LXdlYmtpdC1hdXRvZmlsbDpmb2N1cyxcbnNlbGVjdDotd2Via2l0LWF1dG9maWxsLFxuc2VsZWN0Oi13ZWJraXQtYXV0b2ZpbGw6aG92ZXIsXG5zZWxlY3Q6LXdlYmtpdC1hdXRvZmlsbDpmb2N1cyB7XG4gIC13ZWJraXQtdGV4dC1maWxsLWNvbG9yOiB3aGl0ZTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciA1MDAwcyBlYXNlLWluLW91dCAwcztcbn1cblxuOjpwbGFjZWhvbGRlciB7IC8qIENocm9tZSwgRmlyZWZveCwgT3BlcmEsIFNhZmFyaSAxMC4xKyAqL1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBvcGFjaXR5OiAxOyAvKiBGaXJlZm94ICovXG59XG5cbjotbXMtaW5wdXQtcGxhY2Vob2xkZXIgeyAvKiBJbnRlcm5ldCBFeHBsb3JlciAxMC0xMSAqL1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuOjotbXMtaW5wdXQtcGxhY2Vob2xkZXIgeyAvKiBNaWNyb3NvZnQgRWRnZSAqL1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbixcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1yZXN1bHRzLWJ1dHRvbixcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLXJlc3VsdHMtZGVjb3JhdGlvbiB7IGRpc3BsYXk6IG5vbmU7IH1cblxuLyogc3R5bGVsaW50LWVuYWJsZSAqL1xuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgICAjQU5JTUFUSU9OU1xuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLy8gQGtleWZyYW1lcyBtYXJxdWVlIHtcbi8vICAgICBmcm9tIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApOyB9XG4vLyAgICAgdG8geyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7IH1cbi8vIH1cblxuQGtleWZyYW1lcyBzbGlkZVVwIHtcbiAgICBmcm9tIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOyB9XG4gICAgdG8geyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpOyB9XG59XG5cblxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgICAjQkFTRVxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuKixcbio6OmJlZm9yZSxcbio6OmFmdGVyIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG5cbjpyb290IHtcbiAgICAtLWFwcC1oZWlnaHQ6IGNhbGMoMTAwc3ZoIC0gOTNweCk7XG4gICAgLS1hcHAtc2NhbGU6IDE7XG59XG5cbmh0bWwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1iZztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGZvbnQtc2l6ZTogJGJhc2UtZm9udC1zaXplICsgcHg7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGRlc2t0b3ApIHtcbiAgICAgICAgZm9udC1zaXplOiB2dygkYmFzZS1mb250LXNpemUpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoaGQpIHtcbiAgICAgICAgZm9udC1zaXplOiAkYmFzZS1mb250LXNpemUgKiAkc2l6ZS1oZCAvICRzaXplLWRlc2lnbjtcbiAgICB9XG59XG5cbmJvZHkge1xuICAgIGJhY2tncm91bmQ6ICRjb2xvci1iZztcbiAgICBsaW5lLWhlaWdodDogMTUwJTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgICBmb250LWZlYXR1cmUtc2V0dGluZ3M6IFwic3MwMlwiO1xuICAgIG92ZXJzY3JvbGwtYmVoYXZpb3I6IG5vbmU7XG59XG5cbmJvZHksXG5pbnB1dCxcbnRleHRhcmVhLFxuYnV0dG9uLFxuc2VsZWN0LFxuY29kZSxcbnByZSxcbnN2ZyB0ZXh0IHtcbiAgICBAaW5jbHVkZSBmb250LWZhbWlseShtb25vLCA0MDApO1xuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICBjb2xvcjogJGNvbG9yLXRleHQ7XG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG59XG5cbmlucHV0LFxudGV4dGFyZWEsXG5idXR0b24sXG5zZWxlY3QsXG5zdmcgdGV4dCB7XG4gICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbn1cblxuXG5idXR0b24sXG5zZWxlY3QsXG5sYWJlbCB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG5hIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgdHJhbnNpdGlvbjogY29sb3IgJHRpbWUtZmFzdCAkZWFzaW5nO1xufVxuXG5hLCBidXR0b24sIGxhYmVsIHtcbiAgICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6ICRjb2xvci10cmFuc3BhcmVudDtcbn1cblxuYixcbnN0cm9uZyB7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cblxuaSxcbmVtIHtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbnN2ZyB7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxubWFyayB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbmhyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBtYXJnaW46IDA7XG59XG5cbnN1cCB7XG4gICAgdmVydGljYWwtYWxpZ246IHN1cGVyO1xuICAgIGZvbnQtc2l6ZTogNzAlO1xufVxuXG4qOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xufVxuXG46OnNlbGVjdGlvbiB7XG4gICAgYmFja2dyb3VuZDogJGNvbG9yLXNlbGVjdC1iZztcbiAgICBjb2xvcjogJGNvbG9yLXNlbGVjdC10ZXh0O1xuICAgIHRleHQtc2hhZG93OiBub25lO1xuXG4gICAgLndvcmsgJiB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1zZWxlY3QtYmctbGlnaHQ7XG4gICAgICAgIGNvbG9yOiAkY29sb3Itc2VsZWN0LXRleHQtbGlnaHQ7XG4gICAgfVxufVxuXG5oMixcbmgzLFxuaDQsXG5oNSxcbmg2IHtcbiAgICBmb250LXdlaWdodDogNDAwO1xufVxuXG50ZXh0YXJlYSB7XG4gICAgcmVzaXplOiBub25lO1xufVxuXG5pbWcge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiBibG9jaztcbn1cblxudWwge1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbn1cblxuLnNyLW9ubHksXG4uc2NyZWVuLXJlYWRlci10ZXh0IHtcbiAgICBAZXh0ZW5kICV2aXN1YWxseS1oaWRkZW47XG59XG5cblxuLnZpc3VhbGx5LWhpZGRlbixcbiV2aXN1YWxseS1oaWRkZW4ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGhlaWdodDogMXB4O1xuICAgIHdpZHRoOiAxcHg7XG4gICAgbWFyZ2luOiAtMXB4O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGNsaXA6IHJlY3QoMCAwIDAgMCk7XG59XG5cbi5tYXBib3hnbC1jb250cm9sLWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxuLm1vZHVsZS1pZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3ItYmc7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogMTAwJSAxMDAlO1xuICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAuaWUgJiB7XG4gICAgICAgIEBpbmNsdWRlIGZsZXgoY29sdW1uLCBjZW50ZXIsIGNlbnRlcik7XG4gICAgfVxuXG4gICAgc3Ryb25nIHtcbiAgICAgICAgQGluY2x1ZGUgZm9udC1zaXplKDI2LCAyNik7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgfVxufVxuXG5cblthcmlhLWhpZGRlbj1cInRydWVcIl0ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5ncmVjYXB0Y2hhLWJhZGdlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4ud3JhcCB7XG4gICAgbWFyZ2luLWlubGluZTogdmFyKC0tbWFyZ2luLWlubGluZSk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQpIHtcbiAgICAgICAgbWFyZ2luLWlubGluZTogcmVtKDMyKTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHBob25lKSB7XG4gICAgICAgIG1hcmdpbi1pbmxpbmU6IHJlbSgxNik7XG4gICAgfVxufVxuXG5ib2R5LmlzLW5vdC1yZWFkeSBhcnRpY2xlIHtcbiAgICBvcGFjaXR5OiAwO1xufVxuXG5hcnRpY2xlIHtcbiAgICAmID4gLmRlY28ge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICB0b3A6IHZ3KDIwKTtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCkge1xuICAgICAgICAgICAgdG9wOiB2dygyMSwgdGFibGV0KTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocGhvbmUpIHtcbiAgICAgICAgICAgIHRvcDogdncoMjEsIHBob25lKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC50ZXh0X19saW5rIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDFweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ibGFjaztcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gJHRpbWUtZmFzdCAkZWFzaW5nO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgaG92ZXIge1xuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIFtkYXRhLXJvY2tzXSB7XG4vLyAgICAgYmFja2dyb3VuZDogcmVkICFpbXBvcnRhbnQ7XG4vLyB9XG5cblxuLy8gRml4IHNjcmFtYmxlIHRleHQgaGVpZ2h0XG5cbi5tdWx0aWxpbmUtdGV4dCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGdhcDogMS4yZW07XG59XG5cbi8vIFNldCBMZW5pcyBkZWZhdWx0c1xuXG5odG1sLmxlbmlzIHtcbiAgICBoZWlnaHQ6IGF1dG87XG59XG5cbi5sZW5pcy5sZW5pcy1zbW9vdGgge1xuICAgIHNjcm9sbC1iZWhhdmlvcjogYXV0bztcbn1cblxuLmxlbmlzLmxlbmlzLXNtb290aCBbZGF0YS1sZW5pcy1wcmV2ZW50XSB7XG4gICAgb3ZlcnNjcm9sbC1iZWhhdmlvcjogY29udGFpbjtcbn1cblxuLmxlbmlzLmxlbmlzLXN0b3BwZWQge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5sZW5pcy5sZW5pcy1zY3JvbGxpbmcgaWZyYW1lIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbiIsIlxuJGNvbG9yLWJsYWNrOiAgICAgICAjMjIyNjI1O1xuJGNvbG9yLWdyZXk6ICAgICAgICAjM0EzQzNCO1xuJGNvbG9yLWxpZ2h0LWdyZXk6ICAjNTQ1NzU3O1xuJGNvbG9yLXdoaXRlOiAgICAgICAjRjZGOUY2O1xuJGNvbG9yLXB1cmUtd2hpdGU6ICAjZmZmZmZmO1xuXG4kY29sb3ItdHJhbnNwYXJlbnQ6IHJnYmEoMCwgMCwgMCwgMCk7XG5cblxuJGNvbG9yLWJnOiAkY29sb3Itd2hpdGU7XG4kY29sb3ItYmctZGFyazogJGNvbG9yLWJsYWNrO1xuJGNvbG9yLXRleHQ6ICRjb2xvci1ibGFjaztcbiRjb2xvci10ZXh0LWxpZ2h0OiAkY29sb3Itd2hpdGU7XG4kY29sb3ItcHJpbWFyeTogJGNvbG9yLWJsYWNrO1xuXG4kY29sb3ItbGluazogJGNvbG9yLXByaW1hcnk7XG4kY29sb3Itc2VsZWN0LWJnOiAkY29sb3ItcHJpbWFyeTtcbiRjb2xvci1zZWxlY3QtdGV4dDogJGNvbG9yLWJnO1xuJGNvbG9yLXNlbGVjdC1iZy1saWdodDogJGNvbG9yLXdoaXRlO1xuJGNvbG9yLXNlbGVjdC10ZXh0LWxpZ2h0OiAkY29sb3ItYmxhY2s7XG4iLCIvKiBzdHlsZWxpbnQtZGlzYWJsZSAqL1xuQG1peGluIGZ1bGwoJHBvczogYWJzb2x1dGUpIHtcbiAgICBwb3NpdGlvbjogJHBvcztcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG59XG5cblxuQGZ1bmN0aW9uIHZ3KCRzaXplLCAkYnA6IGRlc2t0b3AsICRtYXg6IHRydWUpIHtcbiAgICAkbGF5b3V0czogKFxuICAgICAgICBkZXNrdG9wOiAxMjgwLFxuICAgICAgICB0YWJsZXQ6IDc2OCxcbiAgICAgICAgcGhvbmU6IDM3NVxuICAgICk7XG4gICAgQGlmIG1hcC1oYXMta2V5KCRsYXlvdXRzLCAkYnApIHtcbiAgICAgICAgQHJldHVybiBzdHJpcC11bml0cygkc2l6ZSkgLyBtYXAtZ2V0KCRsYXlvdXRzLCAkYnApICogMTAwdnc7XG4gICAgfSBAZWxzZSB7XG4gICAgICAgIEB3YXJuIFwiVW5mb3J0dW5hdGVseSwgbm8gdmFsdWUgY291bGQgYmUgcmV0cmlldmVkIGZyb20gYCN7JGJwfWAuXCI7XG4gICAgfVxufVxuXG5cbkBmdW5jdGlvbiB2aCgkc2l6ZSwgJGJwOiBkZXNrdG9wKSB7XG4gICAgJGxheW91dHM6IChcbiAgICAgICAgZGVza3RvcDogODAwLFxuICAgICAgICB0YWJsZXQ6IDEwMjQsXG4gICAgICAgIHBob25lOiA2NjdcbiAgICApO1xuICAgIEBpZiBtYXAtaGFzLWtleSgkbGF5b3V0cywgJGJwKSB7XG4gICAgICAgIEByZXR1cm4gc3RyaXAtdW5pdHMoJHNpemUpIC8gbWFwLWdldCgkbGF5b3V0cywgJGJwKSAqIDEwMHZoO1xuICAgIH0gQGVsc2Uge1xuICAgICAgICBAd2FybiBcIlVuZm9ydHVuYXRlbHksIG5vIHZhbHVlIGNvdWxkIGJlIHJldHJpZXZlZCBmcm9tIGAjeyRicH1gLlwiO1xuICAgIH1cbn1cblxuXG5AZnVuY3Rpb24geigkbGlzdCwgJGVsZW1lbnQpIHtcbiAgICAkei1pbmRleDogaW5kZXgoJGxpc3QsICRlbGVtZW50KTtcbiAgICBAaWYgJHotaW5kZXgge1xuICAgICAgICBAcmV0dXJuICR6LWluZGV4O1xuICAgIH1cbiAgICBAd2FybiAnVGhlcmUgaXMgbm8gaXRlbSBcIiN7JGVsZW1lbnR9XCIgaW4gdGhpcyBsaXN0OyBjaG9vc2Ugb25lIG9mOiAjeyRsaXN0fSc7XG4gICAgQHJldHVybiBudWxsO1xufVxuXG5cbkBtaXhpbiB6LWluZGV4KCRlbGVtZW50LCAkbGlzdDokZWxlbWVudHMpIHtcbiAgICB6LWluZGV4OiB6KCRsaXN0LCAkZWxlbWVudCk7XG59XG5cblxuQG1peGluIHBsYWNlaG9sZGVyIHtcbiAgICAmOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHsgQGNvbnRlbnQ7IH1cbiAgICAmOjotbW96LXBsYWNlaG9sZGVyIHsgQGNvbnRlbnQ7IH0gLyogRmlyZWZveCAxOSsgKi9cbiAgICAmOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7IEBjb250ZW50OyB9IC8qIElFICovXG59XG5cblxuQGZ1bmN0aW9uIHN0cmlwLXVuaXRzKCR2YWx1ZSkge1xuICAgIEByZXR1cm4gJHZhbHVlIC8gKCR2YWx1ZSAqIDAgKyAxKTtcbn1cblxuJGJyb3dzZXItY29udGV4dDogMTZweDtcbiRsaW5lLWhlaWdodDogMS40O1xuXG5AbWl4aW4gZm9udC1zaXplKCRzaXplOiAkYnJvd3Nlci1jb250ZXh0LCAkbGluZTogJGxpbmUtaGVpZ2h0KSB7XG4gICAgZm9udC1zaXplOiBzdHJpcC11bml0cygkc2l6ZSkgKyBweDtcbiAgICBmb250LXNpemU6IHJlbSgkc2l6ZSk7XG4gICAgQGlmIChzdHJpcC11bml0cygkbGluZSkgPCA0KSB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiBzdHJpcC11bml0cygkbGluZSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAoc3RyaXAtdW5pdHMoJGxpbmUpIC8gc3RyaXAtdW5pdHMoJHNpemUpKTtcbiAgICB9XG59XG5cblxuQGZ1bmN0aW9uIHJlbSgkc2l6ZSkge1xuICAgIEByZXR1cm4gKHN0cmlwLXVuaXRzKCRzaXplKSAvIHN0cmlwLXVuaXRzKCRicm93c2VyLWNvbnRleHQpKSArIHJlbTtcbn1cblxuXG5AbWl4aW4gaG92ZXIge1xuICAgIC5uby10b3VjaCAmOmhvdmVyLFxuICAgIC5hY2Nlc3NpYmlsaXR5ICY6Zm9jdXMge1xuICAgICAgICBAY29udGVudDtcbiAgICB9XG59XG5cbkBtaXhpbiBhY2Nlc3NpYmlsaXR5IHtcbiAgICAuYWNjZXNzaWJpbGl0eSAmOmZvY3VzIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgfVxufVxuXG5cbkBtaXhpbiB2LWNlbnRlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuXG5cbkBtaXhpbiBmbGV4KCRkaXJlY3Rpb246IHJvdywgJGp1c3RpZnk6IHNwYWNlLWJldHdlZW4sICRhbGlnbjogY2VudGVyKSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogJGRpcmVjdGlvbjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6ICRqdXN0aWZ5O1xuICAgIGFsaWduLWl0ZW1zOiAkYWxpZ247XG59XG5cblxuQG1peGluIGxldHRlci1zcGFjaW5nKCRzcGFjaW5nLCAkZm9udC1zaXplOiAxNikge1xuICAgIC8vIGxldHRlci1zcGFjaW5nOiAkc3BhY2luZyAqIDFweDtcbiAgICBsZXR0ZXItc3BhY2luZzogc3RyaXAtdW5pdHMoJHNwYWNpbmcpIC8gc3RyaXAtdW5pdHMoJGZvbnQtc2l6ZSkgKiAxZW07XG59XG4vKiBzdHlsZWxpbnQtZW5hYmxlICovXG4iLCJcbiR0aW1lOiAwLjVzO1xuJHRpbWUtZmFzdDogMC4yNXM7XG5cbiRlYXNlLWluOiBjdWJpYy1iZXppZXIoMC44OTUsIDAuMDMsIDAuNjg1LCAwLjIyKTtcbiRlYXNlLW91dDogY3ViaWMtYmV6aWVyKDAuMTY1LCAwLjg0LCAwLjQ0LCAxKTtcbiRlYXNlLWluLW91dDogY3ViaWMtYmV6aWVyKDAuNzcsIDAsIDAuMTc1LCAxKTtcbiRlYXNlLW91dC1iYWNrOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyMCwgMS4yNzUpO1xuJGVhc2UtY3VzdG9tOiBjdWJpYy1iZXppZXIoMC41LCAwLCAwLjIsIDEpO1xuXG4kZWFzaW5nOiAkZWFzZS1jdXN0b207XG4iLCIubW9kdWxlIHtcblxuICAgICZfX3RleHQtc2NyZWVuc2hvdCB7XG4gICAgICAgIEBpbmNsdWRlIGZsZXgocm93LCBzcGFjZS1iZXR3ZWVuLCBmbGV4LXN0YXJ0KTtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG5vdC1kZXNrdG9wKSB7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7XG4gICAgICAgICAgICBnYXA6IHZ3KDQwLCBwaG9uZSk7XG4gICAgICAgIH1cblxuICAgICAgICAuc2NyZWVuc2hvdHMge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChkZXNrdG9wKSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZmxleChyb3csIHNwYWNlLWJldHdlZW4sIGZsZXgtc3RhcnQpO1xuICAgICAgICAgICAgICAgIHdpZHRoOiB2dyg4OTQpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICAmLS12aWRlbyB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobm90LWRlc2t0b3ApIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiByZW0oNjUpO1xuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICAmX19zY3JlZW5zaG90LS1yaWdodCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgfVxuXG5cbiAgICAmLS1wYWRkaW5nLWJvdHRvbSB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiB2dygxNDApO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocGhvbmUpIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiB2dyg0MCwgcGhvbmUpO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLnBsYXllciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiB2dyg4OTUpO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgIGNvbG9yOiAkYnV0dG9uLWNvbG9yO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChub3QtZGVza3RvcCkge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cblxuICAgICZfX3ZpZGVvIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAgIGhlaWdodDogdncoNTA0KTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogdncoNik7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChub3QtZGVza3RvcCkge1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogcmVtKDMpO1xuICAgICAgICB9XG5cbiAgICAgICAgdmlkZW8ge1xuICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0KSB7XG4gICAgICAgICAgICBoZWlnaHQ6IHZ3KDM5NiwgdGFibGV0KTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocGhvbmUpIHtcbiAgICAgICAgICAgIGhlaWdodDogdncoMTkzLCBwaG9uZSk7XG4gICAgICAgIH1cbiAgICB9XG5cblxuICAgIHZpZGVvLFxuICAgIGlmcmFtZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ibGFjaztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICB9XG5cbiAgICAmX19wb3N0ZXIge1xuICAgICAgICBAaW5jbHVkZSBmdWxsO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gICAgICAgIC5pcy1wbGF5aW5nICYsXG4gICAgICAgIC5pcy1wbGF5ZWQgJiB7XG4gICAgICAgICAgICBvcGFjaXR5OiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIucGxheWVyIHtcbiAgICBmb250LXdlaWdodDogNDAwO1xuXG4gICAgJl9fYmFyIHtcbiAgICAgICAgQGluY2x1ZGUgZmxleChyb3csIGNlbnRlciwgY2VudGVyKTtcbiAgICAgICAgQGluY2x1ZGUgZm9udC1zaXplKDE0LCAyMS4yOCk7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgbWFyZ2luLXRvcDogdncoOCk7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6ICRiYXItaGVpZ2h0O1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMTVlbTtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCkge1xuICAgICAgICAgICAgaGVpZ2h0OiAkYmFyLWhlaWdodC10YWJsZXQ7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHBob25lKSB7XG4gICAgICAgICAgICBoZWlnaHQ6ICRiYXItaGVpZ2h0LXBob25lO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19jb250cm9scyB7XG4gICAgICAgIEBpbmNsdWRlIGZsZXgocm93LCBmbGV4LXN0YXJ0LCBjZW50ZXIpO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cblxuICAgICZfX3BsYXlwYXVzZSB7XG4gICAgICAgIEBpbmNsdWRlIGZsZXgocm93LCBjZW50ZXIsIGNlbnRlcik7XG4gICAgICAgIG1hcmdpbi1yaWdodDogdncoNik7XG4gICAgICAgIG1pbi13aWR0aDogdncoNzQpO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChwaG9uZSkge1xuICAgICAgICAgICAgbWluLXdpZHRoOiB2dyg1MiwgcGhvbmUpO1xuICAgICAgICB9XG5cbiAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgJHRpbWUgJGVhc2luZztcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4xNWVtO1xuXG5cbiAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb24tZGVsYXk6ICR0aW1lLWZhc3Q7XG5cbiAgICAgICAgICAgICAgICAuaXMtcGxheWluZyAmIHtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQoKSB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwcztcblxuICAgICAgICAgICAgICAgIC5pcy1wbGF5aW5nICYge1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAkdGltZS1mYXN0O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobm90LWRlc2t0b3ApIHtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3RpbWUge1xuICAgICAgICBAaW5jbHVkZSBmbGV4KHJvdywgY2VudGVyLCBjZW50ZXIpO1xuICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgICAgIHdpZHRoOiA4MHB4OyAvLyBtdXN0IGhhdmUgc3RhdGljIHdpZHRoIHRvIGF2b2lkIGp1bXBpbmcgd2hpbGUgdGltZSBpcyBjaGFuZ2luZ1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGNvbG9yOiAkY29sb3ItYmxhY2s7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChwaG9uZSkge1xuICAgICAgICAgICAgd2lkdGg6IDUycHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19zY3J1YmJlci13cmFwIHtcbiAgICAgICAgZmxleDogMTtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHBob25lKSB7XG4gICAgICAgICAgICBtYXJnaW4taW5saW5lOiB2dygxMCwgcGhvbmUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fc2NydWJiZXIge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgb3BhY2l0eTogJHNjcnViYmVyLW9wYWNpdHk7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRzY3J1YmJlci1jb2xvcjtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBoZWlnaHQ6ICRzY3J1YmJlci1oZWlnaHQ7XG4gICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIG9wYWNpdHk6IC4zO1xuICAgICAgICB9XG5cbiAgICAgICAgPiBkaXYge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgaGVpZ2h0OiAkc2NydWJiZXItaGVpZ2h0O1xuICAgICAgICAgICAgd2lkdGg6IDAlO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogJHRpbWUtZmFzdCAkZWFzaW5nO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLSN7JHNjcnViYmVyLWhlaWdodCAqIDAuNX0pO1xuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICAmX19sb2FkZWQge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkbG9hZGVkLWNvbG9yO1xuICAgICAgICBvcGFjaXR5OiAkbG9hZGVkLW9wYWNpdHk7XG4gICAgfVxuXG5cbiAgICAmX19wcm9ncmVzcyB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRwcm9ncmVzcy1jb2xvcjtcbiAgICAgICAgb3BhY2l0eTogJHByb2dyZXNzLW9wYWNpdHk7XG4gICAgfVxuXG5cbiAgICAmX192b2x1bWUge1xuICAgICAgICBAaW5jbHVkZSBmbGV4KHJvdywgY2VudGVyLCBjZW50ZXIpO1xuICAgICAgICB3aWR0aDogdncoODApO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIG1hcmdpbi1yaWdodDogdncoNCk7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChwaG9uZSkge1xuICAgICAgICAgICAgd2lkdGg6IHZ3KDYxLCBwaG9uZSk7XG4gICAgICAgIH1cblxuICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAkdGltZSAkZWFzaW5nO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjE1ZW07XG5cblxuICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogJHRpbWUtZmFzdDtcblxuICAgICAgICAgICAgICAgIC5pcy1tdXRlZCAmIHtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQoKSB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwcztcblxuICAgICAgICAgICAgICAgIC5pcy1tdXRlZCAmIHtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogJHRpbWUtZmFzdDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIkYmFyLWhlaWdodDogdncoMzApO1xuJGJhci1oZWlnaHQtcGhvbmU6IHZ3KDQ4LCBwaG9uZSk7XG4kYmFyLWhlaWdodC10YWJsZXQ6IHZ3KDQ4LCB0YWJsZXQpO1xuJGJhci1jb2xvcjogJGNvbG9yLWJnO1xuJGJhci1vcGFjaXR5OiAwLjU4O1xuXG4kYnV0dG9uLWNvbG9yOiAkY29sb3ItYmxhY2s7XG4kYnV0dG9uLW9wYWNpdHk6IDE7XG5cbiRzY3J1YmJlci1oZWlnaHQ6IDFweDtcbiRzY3J1YmJlci1vcGFjaXR5OiAxO1xuJHNjcnViYmVyLWNvbG9yOiAkY29sb3ItYmxhY2s7XG5cbiRsb2FkZWQtY29sb3I6ICMzQTNCM0I7XG4kbG9hZGVkLW9wYWNpdHk6IDA7XG5cbiRwcm9ncmVzcy1jb2xvcjogJGNvbG9yLWJsYWNrO1xuJHByb2dyZXNzLW9wYWNpdHk6IDE7XG5cbiRzY3J1YmJlci1idXR0b24tY29sb3I6ICRjb2xvci1ibGFjaztcbiIsIi5pY29uLWFycm93IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgLy8gdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICB3aWR0aDogMC43NWVtO1xuICAgIGhlaWdodDogMC43NWVtO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHdpZHRoOiAwLjUxZW07XG4gICAgICAgIGhlaWdodDogMC41MWVtO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGJvcmRlci13aWR0aDogMCAxcHggMXB4IDA7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgY3VycmVudENvbG9yIGN1cnJlbnRDb2xvciB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTIwJSwgLTUwJSkgcm90YXRlKC00NWRlZyk7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBiYWNrZ3JvdW5kOiBjdXJyZW50Q29sb3I7XG4gICAgICAgIGluc2V0LWlubGluZTogMDtcbiAgICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICAgIHRvcDogNTAlO1xuICAgIH1cbn1cblxuXG5cbi5pY29uLXBsdXMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMC43NWVtO1xuICAgIGhlaWdodDogMC43NWVtO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAvLyB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuXG4gICAgJjo6YmVmb3JlLFxuICAgICY6OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgYmFja2dyb3VuZDogY3VycmVudENvbG9yO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICBtYXJnaW46IC0wLjM3NWVtO1xuICAgICAgICB3aWR0aDogaW5oZXJpdDtcbiAgICAgICAgaGVpZ2h0OiBpbmhlcml0O1xuICAgIH1cblxuICAgICY6OmJlZm9yZSB7XG4gICAgICAgIHdpZHRoOiAxcHg7XG4gICAgICAgIG1hcmdpbi1pbmxpbmU6IDA7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgICBoZWlnaHQ6IDFweDtcbiAgICAgICAgbWFyZ2luLWJsb2NrOiAwO1xuICAgIH1cbn1cblxuXG5cbmEsXG5idXR0b24ge1xuICAgIEBpbmNsdWRlIGhvdmVyIHtcbiAgICAgICAgLy8gLmljb24tY2xvc2UgeyBAZXh0ZW5kICVpY29uLWNsb3NlLWhvdmVyICFvcHRpb25hbDsgfVxuICAgIH1cbn1cbiIsIi5zdmctc3ByaXRlIHtcbiAgICBkaXNwbGF5OiBub25lOyAvLyBkbyBub3QgY2hhbmdlIHRoaXMhXG59XG5cbi5zdmctYXJyb3ctcmlnaHQge1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoZGVza3RvcCkge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IHZ3KDExKTtcbiAgICAgICAgd2lkdGg6IHZ3KDEyMik7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQpIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0oNyk7XG4gICAgICAgIHdpZHRoOiB2dyg2MCwgdGFibGV0KTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHBob25lKSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogcmVtKDcpO1xuICAgICAgICB3aWR0aDogdncoMzAsIHBob25lKTtcbiAgICB9XG59XG5cbiIsIlxuLyogc3R5bGVsaW50LWRpc2FibGUgKi9cbiRzcHJpdGVzOiAoXG4gICAgLy8gaW5zdGFncmFtOiAoMTYsIDE2KSxcbiAgICAvLyBmYWNlYm9vazogKDksIDE4KSxcbiAgICAvLyB5b3V0dWJlOiAoMTcsIDEzKSxcbiAgICAvLyB0d2l0dGVyOiAoMTgsIDE1KSxcbiAgICAvLyBsaW5rZWRpbjogKDE2LCAxNiksXG4pO1xuXG5bY2xhc3NePXNwcml0ZS1dIHtcbiAgICBmaWxsOiBjdXJyZW50Q29sb3I7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGh0bWwud2luZG93cyAmIHsgdG9wOiAtMnB4OyB9XG59XG5cblxuQGVhY2ggJHNwcml0ZS1sYWJlbCwgJHNwcml0ZS1wYXJhbXMgaW4gJHNwcml0ZXMge1xuICAgIC5zcHJpdGUtI3skc3ByaXRlLWxhYmVsfSB7XG4gICAgICAgIHdpZHRoOiAje250aCgkc3ByaXRlLXBhcmFtcywgMSl9cHg7XG4gICAgICAgIGhlaWdodDogI3tudGgoJHNwcml0ZS1wYXJhbXMsIDIpfXB4O1xuICAgIH1cbn1cblxuXG5hLFxuYnV0dG9uIHtcbiAgICBAaW5jbHVkZSBob3ZlciB7XG4gICAgICAgIEBlYWNoICRzcHJpdGUtbGFiZWwsICRzcHJpdGUtcGFyYW1zIGluICRzcHJpdGVzIHtcbiAgICAgICAgICAgIC5zcHJpdGUtI3skc3ByaXRlLWxhYmVsfSB7IEBleHRlbmQgJXNwcml0ZS0jeyRzcHJpdGUtbGFiZWx9LWhvdmVyICFvcHRpb25hbDsgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiLmRlY28ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiByZXBlYXRpbmctbGluZWFyLWdyYWRpZW50KDkwZGVnLCBjdXJyZW50Q29sb3IsIGN1cnJlbnRDb2xvciAxcHgsIHRyYW5zcGFyZW50IDFweCwgdHJhbnNwYXJlbnQgMTAwIC8gOCAqIDElKTtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCBjdXJyZW50Q29sb3I7XG4gICAgaGVpZ2h0OiB2dygyMCk7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJsb2NrOiB2dygyMCk7XG4gICAgei1pbmRleDogOTk5OTtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5ICR0aW1lICRlYXNpbmcgJHRpbWU7XG5cbiAgICAud29yayAmIHtcbiAgICAgICAgJjpub3QoLmZvb3Rlcl9fZGVjbykge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogcmVwZWF0aW5nLWxpbmVhci1ncmFkaWVudCg5MGRlZywgJGNvbG9yLXdoaXRlLCAkY29sb3Itd2hpdGUgMXB4LCB0cmFuc3BhcmVudCAxcHgsIHRyYW5zcGFyZW50IDEwMCAvIDggKiAxJSk7XG4gICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmlzLW5vdC1yZWFkeSAmIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCkge1xuICAgICAgICBtYXJnaW4tYmxvY2s6IHZ3KDIxLCB0YWJsZXQpO1xuICAgICAgICBoZWlnaHQ6IHZ3KDIwLCB0YWJsZXQpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocGhvbmUpIHtcbiAgICAgICAgbWFyZ2luLWJsb2NrOiB2dygyMSwgcGhvbmUpO1xuICAgICAgICBoZWlnaHQ6IHZ3KDE2LCBwaG9uZSk7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHJlcGVhdGluZy1saW5lYXItZ3JhZGllbnQoOTBkZWcsIGN1cnJlbnRDb2xvciwgY3VycmVudENvbG9yIDFweCwgdHJhbnNwYXJlbnQgMXB4LCB0cmFuc3BhcmVudCAxMDAgLyA2ICogMSUpO1xuICAgIH1cblxuICAgIC53b3JrICYge1xuICAgICAgICAmOm5vdCguZm9vdGVyX19kZWNvKSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IHZ3KDIwKTtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQpIHtcbiAgICAgICAgICAgICAgICB0b3A6IHZ3KDIxLCB0YWJsZXQpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHBob25lKSB7XG4gICAgICAgICAgICAgICAgdG9wOiB2dygyMSwgcGhvbmUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5cbi52bGluZSB7XG4gICAgaGVpZ2h0OiB2aCgxODMpO1xuICAgIHdpZHRoOiAxcHg7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgYmFja2dyb3VuZDogY3VycmVudENvbG9yO1xufVxuIiwiLnZlcnRpY2FsLWxpbmUge1xuICAgIG1hcmdpbjogdncoNzUpIDA7XG4gICAgd2lkdGg6IDFweDtcbiAgICBoZWlnaHQ6IHZ3KDgwKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItYmxhY2s7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHBob25lKSB7XG4gICAgICAgIG1hcmdpbjogdncoNTUsIHBob25lKSAwO1xuICAgICAgICBoZWlnaHQ6IHZ3KDQwLCBwaG9uZSk7XG4gICAgfVxuXG5cbiAgICAuc2tpbGxzLS1zdWJwYWdlICYge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGRlc2t0b3ApIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICAgICAgLnNhZmFyaSAmIHtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cblxuICAgIC5nb2FscyAmIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChkZXNrdG9wKSB7XG4gICAgICAgICAgICBtYXJnaW46IHZ3KDU4KSAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJi52ZXJ0aWNhbC1saW5lLS1iaWcge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChkZXNrdG9wKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHZ3KDE1NSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cblxuICAgIC5oZWFkaW5nLXRleHQgJiB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoZGVza3RvcCkge1xuICAgICAgICAgICAgbWFyZ2luOiB2dyg2NikgMDtcbiAgICAgICAgfVxuICAgIH1cblxuXG4gICAgLmdvYWwgPiAmOmlzKDpudGgtbGFzdC1jaGlsZCgyKSwgOm50aC1sYXN0LWNoaWxkKDMpKSB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoZGVza3RvcCkge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogdncoMzYpO1xuICAgICAgICB9XG4gICAgfTtcbn1cbiIsIi5jb3VudGVyIHtcbiAgICBAaW5jbHVkZSBmbGV4KHJvdywgY2VudGVyLCBzdHJldGNoKTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IHJlbSgxMTIpO1xuICAgIHotaW5kZXg6IDE7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGRlc2t0b3ApIHtcbiAgICAgICAgaGVpZ2h0OiB2dygyOSk7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuNHMgJGVhc2luZztcbiAgICAgICAgd2lsbC1jaGFuZ2U6IHRyYW5zZm9ybTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHBob25lKSB7XG4gICAgICAgIGhlaWdodDogdncoMjUsIHBob25lKTtcbiAgICAgICAgd2lkdGg6IHZ3KDg1LCBwaG9uZSk7XG4gICAgfVxuXG4gICAgLmhlcm8gJiB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDQlKTtcbiAgICB9XG5cbiAgICAmX193cmFwIHtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGRlc2t0b3ApIHtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIHZ3KDIpIHZ3KC0xMCk7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHBob25lKSB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogdncoLTcsIHBob25lKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5mb290ZXItc3VicGFnZSAmIHtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIHZ3KDMpIHZ3KC01KTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChwaG9uZSkge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCAwIHZ3KDMsIHBob25lKSB2dygtOCwgcGhvbmUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgZGl2IHtcbiAgICAgICAgQGluY2x1ZGUgZm9udC1zaXplKDEzLCAxNS42KTtcbiAgICAgICAgQGluY2x1ZGUgZmxleChyb3csIGNlbnRlciwgY2VudGVyKTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cblxuICAgIGRpdjpudGgtY2hpbGQoMikge1xuICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgfVxuXG4gICAgZGl2Om5vdCg6bnRoLWNoaWxkKDIpKSB7XG4gICAgICAgIHdpZHRoOiByZW0oNDEpO1xuICAgIH1cblxuICAgIHNwYW4ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDExcHg7XG4gICAgICAgIGhlaWdodDogMXB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itd2hpdGU7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gICAgfVxuXG4gICAgLmZvb3Rlci1zdWJwYWdlICYge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAxJSk7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChub3QtZGVza3RvcCkge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDElKTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocGhvbmUpIHtcbiAgICAgICAgICAgIHdpZHRoOiB2dyg4NSwgcGhvbmUpO1xuICAgICAgICB9XG5cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItYmxhY2s7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIuc2NyZWVuc2hvdCB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChkZXNrdG9wKSB7XG4gICAgICAgIG1hcmdpbi10b3A6IHZ3KDYpO1xuICAgICAgICB3aWR0aDogdncoODk0KTtcbiAgICB9XG5cblxuICAgICZfX2ZyYW1lIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiB2dygyMSk7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ibGFjaztcbiAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdncoNik7XG4gICAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiB2dyg2KTtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHBob25lKSB7XG4gICAgICAgICAgICBoZWlnaHQ6IHZ3KDE1LCBwaG9uZSk7XG4gICAgICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiB2dygzLCBwaG9uZSk7XG4gICAgICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogdncoMywgcGhvbmUpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDM4JTtcbiAgICAgICAgICAgIGxlZnQ6IHZ3KDgpO1xuICAgICAgICAgICAgd2lkdGg6IHZ3KDUpO1xuICAgICAgICAgICAgaGVpZ2h0OiB2dyg1KTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci13aGl0ZTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICBib3gtc2hhZG93OiA5cHggMCAwIDAgJGNvbG9yLXdoaXRlLFxuICAgICAgICAgICAgMThweCAwIDAgMCAkY29sb3Itd2hpdGU7XG4gICAgICAgICAgICBvcGFjaXR5OiAuNTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChwaG9uZSkge1xuICAgICAgICAgICAgICAgIHRvcDogMzUlO1xuICAgICAgICAgICAgICAgIGxlZnQ6IHZ3KDgsIHBob25lKTtcbiAgICAgICAgICAgICAgICB3aWR0aDogdncoNCwgcGhvbmUpO1xuICAgICAgICAgICAgICAgIGhlaWdodDogdncoNCwgcGhvbmUpO1xuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDdweCAwIDAgMCAkY29sb3ItbGlnaHQtZ3JleSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAxNHB4IDAgMCAwICRjb2xvci1saWdodC1ncmV5O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogdncoNik7XG4gICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiB2dyg2KTtcbiAgICB9XG5cblxuICAgICYtLTEsXG4gICAgJi0tMiB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoZGVza3RvcCkge1xuICAgICAgICAgICAgd2lkdGg6IHZ3KDQyOCk7XG4gICAgICAgIH1cblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChkZXNrdG9wKSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiB2dygyNjgpO1xuICAgICAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi0tMSB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobm90LWRlc2t0b3ApIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiByZW0oNDApO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi0tMiB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoZGVza3RvcCkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogdncoMTg1KTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi50ZXh0IHtcblxuICAgIC5tb2R1bGVfX3RleHQtc2NyZWVuc2hvdCAmIHtcblxuICAgICAgICBwIHtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wN2VtO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGRlc2t0b3ApIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBmb250LXNpemUoMTYsIDI0KTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogdncoMjIpO1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMjFjaDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChwaG9uZSkge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgxNCwgMjEuMjgpO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiB2dygyMSwgcGhvbmUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmNlbnRlci10ZXh0ICYge1xuICAgICAgICBAaW5jbHVkZSBmbGV4KGNvbHVtbiwgY2VudGVyLCBjZW50ZXIpO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoZGVza3RvcCkge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA1NmNoO1xuICAgICAgICAgICAgZ2FwOiB2dygyNCk7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHBob25lKSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGdhcDogdncoMjAsIHBob25lKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC50ZXh0LXNjcmVlbnNob3RzICYge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGRlc2t0b3ApIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgxNiwgMjQpO1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjFlbTtcbiAgICAgICAgICAgIG1heC13aWR0aDogMjNjaDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocGhvbmUpIHtcbiAgICAgICAgICAgIGhlaWdodDogdncoMzUwLCBwaG9uZSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubW9iaWxlLXNjcmVlbnNob3RzICYge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGRlc2t0b3ApIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgxNiwgMjQpO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiB2dyg0MCk7XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDVlbTtcbiAgICAgICAgICAgIG1heC13aWR0aDogMjNjaDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobm90LWRlc2t0b3ApIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgxNCwgMjEuMjgpO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogcmVtKDIwKTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSg2MCk7XG4gICAgICAgICAgICBvcmRlcjogMTtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4xZW07XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIuZ29hbCB7XG4gICAgQGluY2x1ZGUgZmxleChjb2x1bW4sIGNlbnRlciwgY2VudGVyKTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cblxuICAgIGg0IHtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGRlc2t0b3ApIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgzMSwgMzQuMSk7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiB2dyg4KTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobm90LWRlc2t0b3ApIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSgxMCk7XG4gICAgICAgIH1cbiAgICB9XG5cblxuICAgIHAge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGRlc2t0b3ApIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgxNiwgMjQpO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA0MGNoO1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjA3ZW07XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG5vdC1kZXNrdG9wKSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocGhvbmUpIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgxNCwgMTYuMSk7XG4gICAgICAgIH1cbiAgICB9XG5cblxuICAgICZfX2NvbnRlbnQge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuXG4gICAgJi0tMiB7XG4gICAgICAgIHAge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA0NWNoO1xuICAgICAgICB9XG5cbiAgICAgICAgLmdvYWxfX2NvbnRlbnQgcCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGRlc2t0b3ApIHtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDU1Y2g7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIuaGVhZGluZy10ZXh0IHtcbiAgICBAaW5jbHVkZSBmbGV4KGNvbHVtbiwgY2VudGVyLCBjZW50ZXIpO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChkZXNrdG9wKSB7XG4gICAgICAgIHBhZGRpbmc6IDAgdncoMTE1KTtcbiAgICB9XG5cblxuICAgICZfX3RpdGxlIHtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoZGVza3RvcCkge1xuICAgICAgICAgICAgQGluY2x1ZGUgZm9udC1zaXplKDMxLCAzNC4xKTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHZ3KDk0KTtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMDVlbTtcbiAgICAgICAgICAgIG1heC13aWR0aDogNDBjaDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobm90LWRlc2t0b3ApIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgyNCwgMzguMSk7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oNDApO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChwaG9uZSkge1xuICAgICAgICAgICAgQGluY2x1ZGUgZm9udC1zaXplKDIwLCAyNCk7XG4gICAgICAgIH1cbiAgICB9XG5cblxuICAgICZfX3RleHQge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGRlc2t0b3ApIHtcbiAgICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wN2VtO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogdncoMzkpO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChub3QtZGVza3RvcCkge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHBob25lKSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBmb250LXNpemUoMTQsIDE2LjEpO1xuICAgICAgICB9XG5cbiAgICAgICAgcDpub3QoOmxhc3QtY2hpbGQpIHtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChkZXNrdG9wKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogdncoMTYpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG5vdC1kZXNrdG9wKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtKDE2KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi5iaWctdGl0bGUge1xuICAgIEBpbmNsdWRlIGZsZXgoY29sdW1uLCBjZW50ZXIsIGNlbnRlcik7XG5cbiAgICBwOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgQGluY2x1ZGUgZm9udC1zaXplKDIxLCAyMy4xKTtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGRlc2t0b3ApIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHZ3KDQ1KTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHZ3KDM1KTtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG5vdC1kZXNrdG9wKSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oMTApO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChwaG9uZSkge1xuICAgICAgICAgICAgQGluY2x1ZGUgZm9udC1zaXplKDE2LCAyMC4xKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHA6bGFzdC1jaGlsZCB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGRlc2t0b3ApIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgxNiwgMjQpO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogdncoMTgwKTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHZ3KDU1KTtcbiAgICAgICAgICAgIG1heC13aWR0aDogNjBjaDtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wN2VtO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChub3QtZGVza3RvcCkge1xuICAgICAgICAgICAgQGluY2x1ZGUgZm9udC1zaXplKDE0LCAxNi4xKTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHJlbSg1MCk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIucmVuZGVyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMHZoO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBpbnNldDogMDtcbiAgICBib3R0b206IGF1dG87XG4gICAgbWFyZ2luLWlubGluZTogYXV0bztcbiAgICBtYXJnaW4tYm90dG9tOiBhdXRvO1xuICAgIGluc2V0OiAwO1xuICAgIHotaW5kZXg6IDI7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCkge1xuICAgICAgICBpbnNldDogdncoLTIwMCwgdGFibGV0KSAwIDAgMDtcbiAgICAgICAgaGVpZ2h0OiAxMTV2aDtcblxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LWhlaWdodDogMTAyNHB4KSB7XG4gICAgICAgICAgICBpbnNldDogdncoLTEwMCwgdGFibGV0KSAwIDAgMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocGhvbmUpIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICBkaXYge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgICAgIGNhbnZhcyB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChwaG9uZSkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0xMHZoO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGhlaWdodDogODAlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnJlbmRlci0tb2xkIHtcbiAgICAgICAgd2lkdGg6IHJlbSgzNjYpO1xuICAgICAgICBoZWlnaHQ6IHJlbSg2MjkpO1xuICAgICAgICBtYXJnaW46IGF1dG87XG5cbiAgICAgICAgJl9faW1hZ2Uge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIC5sb2NhbCBbZGF0YS1yb2Nrc10ge1xuLy8gICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMzQsIDI1NSwgMC4zOCk7XG4vLyB9XG5cblxuIiwiLmhlcm8ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiBhdXRvO1xuICAgIG1pbi1oZWlnaHQ6IHZhcigtLWFwcC1oZWlnaHQpO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgbWFyZ2luLXRvcDogdmgoNzApO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGhkKSB7XG4gICAgICAgIG1hcmdpbi10b3A6IHZoKDUwKTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHBob25lKSB7XG4gICAgICAgIGhlaWdodDogMTAwc3ZoO1xuICAgIH1cblxuICAgIC53b3JrICYge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICBoZWlnaHQ6IDEwMGR2aDtcbiAgICAgICAgY29sb3I6ICRjb2xvci13aGl0ZTtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHBob25lKSB7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMHN2aDtcbiAgICAgICAgfVxuICAgIH1cblxuXG4gICAgJi0tZm9vZCB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocGhvbmUpIHtcbiAgICAgICAgICAgIGhlaWdodDogMTA2c3ZoO1xuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICAmX19waW4ge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGluc2V0OiAwO1xuICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgIHdpZHRoOiByZW0oMzY2KTtcbiAgICAgICAgaGVpZ2h0OiA2MjlweDtcblxuICAgICAgICAvLyAubG9jYWwgJiB7IGJhY2tncm91bmQ6IHllbGxvdzsgfVxuXG4gICAgICAgIC8vIEBpbmNsdWRlIGJyZWFrcG9pbnQoaGQpIHtcbiAgICAgICAgLy8gICAgIG1hcmdpbi1ib3R0b206IHJlbSgzMCk7XG4gICAgICAgIC8vIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogY3JlbSg4MCk7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHBob25lKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG5cblxuICAgICZfX2xvZ28ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oMjYpO1xuICAgICAgICBtYXJnaW4tdG9wOiBhdXRvO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0KSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oMjApO1xuICAgICAgICAgICAgei1pbmRleDogMztcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocGhvbmUtbGFuZHNjYXBlKSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChwaG9uZSkge1xuICAgICAgICAgICAgbWFyZ2luLWlubGluZTogYXV0bztcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSg2MCk7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgIHdpZHRoOiB2dygyNTYpO1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0KSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IHZ3KDQ1MCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocGhvbmUpIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogcmVtKDIwMCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaGVyby0tZm9vZCAmIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoZGVza3RvcCkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSgzMyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cblxuXG4gICAgJl9fdGl0bGUge1xuXG4gICAgICAgIEBpbmNsdWRlIGZvbnQtZmFtaWx5KHNhbnMsIDcwMCk7XG4gICAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgxNTcsIDEzMCk7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGRlc2t0b3ApIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IC01dnc7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCkge1xuICAgICAgICAgICAgQGluY2x1ZGUgZm9udC1zaXplKDEwNCk7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMC45O1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gQGluY2x1ZGUgYnJlYWtwb2ludChwaG9uZS1sYW5kc2NhcGUpIHtcbiAgICAgICAgLy8gICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSg5NiwgODApO1xuICAgICAgICAvLyB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChwaG9uZSkge1xuICAgICAgICAgICAgQGluY2x1ZGUgZm9udC1zaXplKDQwLCAzMik7XG4gICAgICAgICAgICBvcmRlcjogMTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSgyMCk7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGNvbHVtbi1nYXA6IDlweDtcbiAgICAgICAgICAgIEBpbmNsdWRlIGxldHRlci1zcGFjaW5nKC0wLjcpO1xuICAgICAgICB9XG5cbiAgICAgICAgc3BhbjpudGgtY2hpbGQoMSksXG4gICAgICAgIHNwYW46bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICBtYXJnaW4taW5saW5lLXN0YXJ0OiAtMC4wNWVtO1xuXG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocGhvbmUtbGEpe1xuICAgICAgICAgICAgICAgIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWlubGluZS1lbmQ6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocGhvbmUpe1xuICAgICAgICAgICAgICAgIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWlubGluZS1lbmQ6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBzcGFuOm50aC1jaGlsZCgzKSxcbiAgICAgICAgc3BhbjpudGgtY2hpbGQoNCkge1xuICAgICAgICAgICAgei1pbmRleDogMztcbiAgICAgICAgICAgIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IGF1dG87XG4gICAgICAgICAgICBtYXJnaW4taW5saW5lLWVuZDogLTAuMDVlbTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChwaG9uZSl7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWlubGluZS1zdGFydDogMDtcbiAgICAgICAgICAgICAgICBtYXJnaW4taW5saW5lLWVuZDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHNwYW4sXG4gICAgICAgIHN0cm9uZyB7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB9XG5cblxuICAgICAgICAmLS1zdWJwYWdlIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoZGVza3RvcCkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB2dygzKTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiB2dygwKTtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogdncoMTIwLjEpO1xuICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wNDVlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOiB2dyg3MDApO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cblxuICAgICAgICAuaGVyby0tZm9vZCAmIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHZ3KDUpO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCkge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSg5MCwgNzApO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGRlc2t0b3ApIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogdncoMik7IC8vIGZpeCBmb250IGN1dG9mZlxuICAgICAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDQ1ZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBzcGFuOm50aC1jaGlsZCgyKSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChub3QtcGhvbmUpIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBzcGFuOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoZGVza3RvcCkge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiB2dyg2KTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogcmVtKC05KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cblxuXG4gICAgJl9fbGVhZCB7XG4gICAgICAgIEBpbmNsdWRlIGZvbnQtZmFtaWx5KG1vbm8pO1xuICAgICAgICBAaW5jbHVkZSBmb250LXNpemUoMTYsIDIyKTtcbiAgICAgICAgQGluY2x1ZGUgbGV0dGVyLXNwYWNpbmcoLTIuMDgsIDE2KTtcbiAgICAgICAgbWluLWhlaWdodDogcmVtKDQ0KTtcbiAgICAgICAgbWF4LXdpZHRoOiByZW0oNDYwKTtcbiAgICAgICAgdGV4dC13cmFwOiBiYWxhbmNlO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0KSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oMjApO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChwaG9uZSkge1xuICAgICAgICAgICAgQGluY2x1ZGUgZm9udC1zaXplKDE0KTtcbiAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgICAgIG9yZGVyOiAxO1xuICAgICAgICB9XG5cbiAgICAgICAgJi0tc3VicGFnZSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB6LWluZGV4OiAxO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGRlc2t0b3ApIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBmb250LXNpemUoMTYsIDIyLjQpO1xuICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4xM2VtO1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IHZ3KDIwKTtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDUwY2g7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocGhvbmUpIHtcbiAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMTRlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5oZXJvLS1mb29kICYge1xuXG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGRlc2t0b3ApIHtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHZ3KDI0KTtcbiAgICAgICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjA3ZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG5cblxuICAgICZfX2RlY28ge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHBob25lKSB7XG4gICAgICAgICAgICBoZWlnaHQ6IHJlbSgxNik7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHBob25lKSB7XG4gICAgICAgICAgICBvcmRlcjogMjtcbiAgICAgICAgfVxuICAgIH1cblxuXG5cbiAgICAmX19maWd1cmUge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0KSB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogcmVtKDIwKTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocGhvbmUpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgbWFyZ2luLWlubGluZTogYXV0bztcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiByZW0oNTApO1xuICAgICAgICB9XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHdpZHRoOiByZW0oMjgwKTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSgyMCk7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocGhvbmUpIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogdncoMjA4LCBwaG9uZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLS1zdGF0aWMge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIG1hcmdpbi1pbmxpbmU6IGF1dG87XG4gICAgICAgICAgICBpbnNldDogMDtcbiAgICAgICAgICAgIHotaW5kZXg6IDI7XG5cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiByZW0oNjAwKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuXG5cbiAgICAmX193cmFwIHtcbiAgICAgICAgbWFyZ2luLXRvcDogYXV0bztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogdncoMjApO1xuXG4gICAgICAgIC53b3JrICYge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChwaG9uZSkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHZ3KDUwLCBwaG9uZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cblxuXG4gICAgJl9fYmcge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogY2FsYygtMSAqIHZhcigtLW1hcmdpbi1pbmxpbmUpKTtcbiAgICAgICAgd2lkdGg6IDEwMHZ3O1xuICAgICAgICBoZWlnaHQ6IDEwMHZoO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0KSB7XG4gICAgICAgICAgICBsZWZ0OiAtMnJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocGhvbmUpIHtcbiAgICAgICAgICAgIGxlZnQ6IHJlbSgtMTYpO1xuICAgICAgICB9XG5cbiAgICAgICAgLnZpZGVvIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgdmlkZW8sIGltZyB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbiIsIi5xdW90ZSB7XG4gICAgbWluLWhlaWdodDogMTAwbHZoO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHotaW5kZXg6IGF1dG87XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQpIHtcbiAgICAgICAgbWluLWhlaWdodDogNjV2aDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHBob25lKSB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDcwbHZoO1xuICAgIH1cblxuICAgICZfX3BpbiB7XG4gICAgICAgIHdpZHRoOiByZW0oMTQyKTtcbiAgICAgICAgaGVpZ2h0OiByZW0oODYpO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMHB4KTtcbiAgICB9XG5cbiAgICBwIHtcbiAgICAgICAgQGluY2x1ZGUgZm9udC1zaXplKDE1NywgMTMwKTtcbiAgICAgICAgQGluY2x1ZGUgZm9udC1mYW1pbHkoc2FucywgNzAwKTtcbiAgICAgICAgQGluY2x1ZGUgbGV0dGVyLXNwYWNpbmcoLTcuMDY1LCAxNTcpO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQpIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSg4NSwgNzUpO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChwaG9uZS1sYW5kc2NhcGUpIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSg2MCwgNTUpO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiByZW0oNTgwKTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocGhvbmUpIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSg0MCwgMzIpO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IHJlbSgzMDApO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG5cbiAgICAgICAgc3BhbjpmaXJzdC1jaGlsZCB1OjpiZWZvcmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL3B1YmxpYy90aGVtZS9pbWFnZXMvc3ZnL3F1b3RlLW9wZW4uc3ZnXCIpO1xuICAgICAgICB9XG5cbiAgICAgICAgc3BhbjpsYXN0LWNoaWxkIHU6OmFmdGVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi9wdWJsaWMvdGhlbWUvaW1hZ2VzL3N2Zy9xdW90ZS1vcGVuLnN2Z1wiKTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogcmVtKDUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgc3BhbjpmaXJzdC1jaGlsZCB1OjpiZWZvcmUsXG4gICAgICAgIHNwYW46bGFzdC1jaGlsZCB1OjphZnRlciB7XG4gICAgICAgICAgICB3aWR0aDogcmVtKDcyKTtcbiAgICAgICAgICAgIGhlaWdodDogcmVtKDYzKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMC4wM2VtO1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQpIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogcmVtKDQwKTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHJlbSgzMCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocGhvbmUtbGFuZHNjYXBlKSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IHJlbSgzMCk7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiByZW0oMjYpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHBob25lKSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IHJlbSgzMCk7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiByZW0oMjYpO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogcmVtKDE5KSBhdXRvO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgZW0ge1xuICAgICAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoZGVza3RvcCkge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItYmc7XG4gICAgICAgICAgICAgICAgLXdlYmtpdC10ZXh0LXN0cm9rZTogMXB4ICRjb2xvci10ZXh0O1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuMWVtO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMC4xNGVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgc3BhbjpudGgtbGFzdC1jaGlsZChuLTIpIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIHNwYW46bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGRlc2t0b3ApIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogNTAlO1xuICAgICAgICAgICAgICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKHJlbSgtNykpOyAvLyBhbGlnblxuICAgICAgICAgICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBlbSxcbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICB1IHtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG5cblxuICAgIGZvb3RlciB7XG4gICAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgxNiwgMS40KTtcbiAgICAgICAgQGluY2x1ZGUgbGV0dGVyLXNwYWNpbmcoLTIuMDgsIDE2KTtcbiAgICAgICAgbWFyZ2luLXRvcDogcmVtKDMwKTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDUwJTtcbiAgICAgICAgYWxpZ24tc2VsZjogZmxleC1zdGFydDtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHBob25lKSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBmb250LXNpemUoMTQsIDIxKTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHJlbSgxMCk7XG4gICAgICAgICAgICB0ZXh0LXdyYXA6IG5vd3JhcDtcbiAgICAgICAgICAgIG1hcmdpbi1pbmxpbmU6IGF1dG87XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cblxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIGhlaWdodDogcmVtKDE2ICogMS40KTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocGhvbmUpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiB2dyg1LCBwaG9uZSk7XG4gICAgICAgICAgICAgICAgd2lkdGg6IHZ3KDIxOSwgcGhvbmUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG5cblxuICAgIGhyIHtcbiAgICAgICAgd2lkdGg6IHJlbSgzMik7XG4gICAgICAgIGhlaWdodDogMXB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjdXJyZW50Q29sb3I7XG4gICAgICAgIG1hcmdpbjogcmVtKDEyKSAwO1xuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0O1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocGhvbmUpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cblxuICAgICYtLXN1YnBhZ2Uge1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoZGVza3RvcCkge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChwaG9uZSkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogdncoMjQwLCBwaG9uZSk7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiB2dygyNDAsIHBob25lKTtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBmb250LWZhbWlseShtb25vLCA0MDApO1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAwNWVtO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGRlc2t0b3ApIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBmb250LXNpemUoMzEsIDM0LjEpO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDM1Y2g7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0KSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZm9udC1zaXplKDI4LCAzMS4xKTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiB2dygyMSwgdGFibGV0KTtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHBob25lKSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZm9udC1zaXplKDIxLCAyMy4xKTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiB2dygyMSwgcGhvbmUpO1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGZvb3RlciB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoZGVza3RvcCkge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogdncoMzApIGF1dG8gMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQpIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBmb250LXNpemUoMjEsIDI4LjIpO1xuICAgICAgICAgICAgICAgIHRleHQtd3JhcDogbm93cmFwO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1pbmxpbmU6IGF1dG87XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocGhvbmUpIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBmb250LXNpemUoMTgsIDI1LjIpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBzcGFuOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChkZXNrdG9wKSB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgxMywgMTUuNik7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IHZ3KDcpO1xuICAgICAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDVlbTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCkge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBmb250LXNpemUoMTIsIDE2LjgpO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiB2dygxMCwgdGFibGV0KTtcbiAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxOGNoO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LXdyYXA6IHdyYXA7XG4gICAgICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wNWVtO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocGhvbmUpIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZm9udC1zaXplKDEyLCAxNi44KTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogdncoMTAsIHBob25lKTtcbiAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxOGNoO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LXdyYXA6IHdyYXA7XG4gICAgICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wNWVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX21hcmsge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGRlc2t0b3ApIHtcbiAgICAgICAgICAgIHdpZHRoOiB2dyg1MCk7XG4gICAgICAgICAgICBoZWlnaHQ6IHZ3KDUwKTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobm90LWRlc2t0b3ApIHtcbiAgICAgICAgICAgIHdpZHRoOiByZW0oNTApO1xuICAgICAgICAgICAgaGVpZ2h0OiByZW0oNTApO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB0b3A6IHZ3KC0yNSk7XG4gICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi9wdWJsaWMvdGhlbWUvaW1hZ2VzL3N2Zy9xdW90ZS1tYXJrLnN2Z1wiKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSlcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi5wYXJ0bmVycyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgbWluLWhlaWdodDogMTAwdmg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDI7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChwaG9uZSkge1xuICAgICAgICBtYXJnaW4tdG9wOiB2dygxMTAsIHBob25lKTtcbiAgICAgICAgbWluLWhlaWdodDogODB2aDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiByZW0oMjc1KTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCkge1xuICAgICAgICBtaW4taGVpZ2h0OiA2MHZoO1xuICAgIH1cblxuXG5cbiAgICAmX193cmFwcGVyIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHBob25lKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogcmVwZWF0KDIsIGF1dG8pO1xuICAgICAgICAgICAgZ3JpZC1jb2x1bW4tZ2FwOiAwcHg7XG4gICAgICAgICAgICBncmlkLXJvdy1nYXA6IDBweDtcbiAgICAgICAgfVxuICAgIH1cblxuXG5cbiAgICAmX19sZWFkIHtcbiAgICAgICAgQGluY2x1ZGUgZm9udC1zaXplKDE2LCAxLjQpO1xuICAgICAgICBAaW5jbHVkZSBsZXR0ZXItc3BhY2luZygtMi4wOCwgMTYpO1xuICAgICAgICBtYXJnaW4tbGVmdDogNTAlO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLW1hcmdpbi1pbmxpbmUpO1xuICAgICAgICBtaW4taGVpZ2h0OiB2aCgyMTcpO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocGhvbmUtbGFuZHNjYXBlKSB7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiA1MHZoO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChwaG9uZSkge1xuICAgICAgICAgICAgQGluY2x1ZGUgZm9udC1zaXplKDE0LCAyMSk7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiByZW0oMTAwKTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDcuNXJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuXG5cbiAgICAmX19pdGVtIHtcbiAgICAgICAgaGVpZ2h0OiB2aCgzNjYpO1xuICAgICAgICBmbGV4OiAxO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG5vdC1waG9uZSkge1xuICAgICAgICAgICAgaW1nIHsgc2NhbGU6IHZhcigtLWFwcC1zY2FsZSk7IH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0KSB7XG4gICAgICAgICAgICBoZWlnaHQ6IDE4dmg7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHBob25lLWxhbmRzY2FwZSkge1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocGhvbmUpIHtcbiAgICAgICAgICAgIGhlaWdodDogdncoMTMwLCBwaG9uZSk7XG5cbiAgICAgICAgICAgIGltZyB7IG1heC13aWR0aDogdncoMTE1LCBwaG9uZSk7IH1cblxuICAgICAgICAgICAgLy8gZml4ZWQgZ3JpZCBwb3NpdGlvbnMsIHJlZ2FyaW5kIHRoZSBkZXNpZ246XG4gICAgICAgICAgICAmOm50aC1vZi10eXBlKDYpIHsgb3JkZXI6IDU7IH1cbiAgICAgICAgICAgICY6bnRoLW9mLXR5cGUoNSkgeyBvcmRlcjogNjsgfVxuICAgICAgICAgICAgJjpudGgtb2YtdHlwZSg0KSB7IG9yZGVyOiAzOyB9XG4gICAgICAgICAgICAmOm50aC1vZi10eXBlKDMpIHsgb3JkZXI6IDQ7IH1cbiAgICAgICAgfVxuICAgIH1cblxuXG5cbiAgICAmX19saW5lIHtcbiAgICAgICAgd2lkdGg6IDFweDtcbiAgICAgICAgYmFja2dyb3VuZDogY3VycmVudENvbG9yO1xuICAgICAgICBoZWlnaHQ6IHZoKDM2Nik7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChwaG9uZS1sYW5kc2NhcGUpIHtcbiAgICAgICAgICAgIGhlaWdodDogdmgoMjAwKTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0KSB7XG4gICAgICAgICAgICBoZWlnaHQ6IDE4dmg7XG4gICAgICAgIH1cblxuICAgICAgICAmOm5vdCgucGFydG5lcnNfX2xpbmUtLWJpZykge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChwaG9uZSkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuXG4gICAgICAgICYtLWJpZyB7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMHZoO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogdmgoLTIxNyk7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocGhvbmUtbGFuZHNjYXBlKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTYwdmg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA5MHZoO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHBob25lKSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIGluc2V0OiAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHJlbSg1ODApO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCkge1xuICAgICAgICAgICAgICAgIGhlaWdodDogNjB2aDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi5zdG9yaWVzIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWluLWhlaWdodDogMTAwdmg7XG4gICAgei1pbmRleDogYXV0bztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogYXV0bztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHBob25lKSB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDA7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIH1cblxuICAgICZfX3NtYWxsIHtcbiAgICAgICAgQGluY2x1ZGUgZm9udC1zaXplKDIxLCAxLjEpO1xuICAgICAgICBAaW5jbHVkZSBsZXR0ZXItc3BhY2luZygtMC4xMDUsIDIxKTtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtKDIyKTtcbiAgICAgICAgbWFyZ2luLWlubGluZTogYXV0bztcbiAgICAgICAgei1pbmRleDogMztcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHBob25lKSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBmb250LXNpemUoMTQsIDE5KTtcbiAgICAgICAgfVxuICAgIH1cblxuXG5cbiAgICAmX19iaWcge1xuICAgICAgICBAaW5jbHVkZSBmb250LWZhbWlseShzYW5zLCA3MDApO1xuICAgICAgICBAaW5jbHVkZSBsZXR0ZXItc3BhY2luZygtNy4wNjUsIDE1Nyk7XG4gICAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgxMTcsIDEwNSk7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIHotaW5kZXg6IDM7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQpIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSg4NSwgMTAwKTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgZ2FwOiByZW0oMjApO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChwaG9uZS1sYW5kc2NhcGUpIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSg2MCwgNDIpO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChwaG9uZSkge1xuICAgICAgICAgICAgQGluY2x1ZGUgZm9udC1zaXplKDQ4LCAzOCk7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgICAgIC8vIGdhcDogN3B4O1xuICAgICAgICB9XG5cbiAgICAgICAgW2RhdGEtdGV4dF0ge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgY29udGVudDogYXR0cihkYXRhLXRleHQpO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAtd2Via2l0LXRleHQtc3Ryb2tlOiAxcHggJGNvbG9yLXRleHQ7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvci1iZztcbiAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC41cyAkZWFzaW5nO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaS5pY29uLXBsdXMge1xuICAgICAgICAgICAgbWFyZ2luLWlubGluZTogLTAuMTdlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIGkuaWNvbi1hcnJvdyB7XG4gICAgICAgICAgICBtYXJnaW4taW5saW5lOiByZW0oMjApO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogMC4zcyBvcGFjaXR5O1xuICAgICAgICB9XG4gICAgfVxuXG5cblxuICAgICZfX21hcnF1ZWUge1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oNDYpO1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlICsgMiAqI3t2YXIoLS1tYXJnaW4taW5saW5lKX0pO1xuICAgICAgICBtYXJnaW4tbGVmdDogY2FsYygje3ZhcigtLW1hcmdpbi1pbmxpbmUpfSAqIC0xKTtcbiAgICAgICAgcGFkZGluZzogMXB4IDA7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQpIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDJyZW0gKiAtMSk7XG4gICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlICsgMiAqIDJyZW0pO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChwaG9uZSkge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGNhbGMoMXJlbSAqIC0xKTtcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgKyAyICogMXJlbSk7XG4gICAgICAgIH1cbiAgICB9XG5cblxuICAgICZfX2xpc3Qge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICB3aWR0aDogZml0LWNvbnRlbnQ7XG4gICAgICAgIC8vIGFuaW1hdGlvbjogbG9vcCBpbmZpbml0ZSBsaW5lYXI7XG4gICAgICAgIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm07XG5cbiAgICAgICAgLnN0b3JpZXNfX2JpZzpub3QoLmlzLWNlbnRlcmVkKSB7XG4gICAgICAgICAgICBbZGF0YS10ZXh0XTo6YWZ0ZXIgeyBvcGFjaXR5OiAxOyB9XG4gICAgICAgICAgICBpLmljb24tYXJyb3cgeyBvcGFjaXR5OiAwLjM7IH1cbiAgICAgICAgfVxuICAgIH1cblxuXG5cbiAgICAmX19pbmRpY2F0b3Ige1xuICAgICAgICBiYWNrZ3JvdW5kOiByZWQ7XG4gICAgICAgIHdpZHRoOiAxcHg7XG4gICAgICAgIGxlZnQ6IDM1JTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBpbnNldC1ibG9jazogMDtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgfVxuXG5cblxuICAgICZfX3RleHQge1xuICAgICAgICBAaW5jbHVkZSBmb250LXNpemUoMTYsIDEuNCk7XG4gICAgICAgIEBpbmNsdWRlIGxldHRlci1zcGFjaW5nKC0yLjA4KTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDUwJTtcbiAgICAgICAgbWF4LXdpZHRoOiByZW0oNDcxKTtcbiAgICAgICAgbWFyZ2luLXRvcDogcmVtKDM0KTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgICB6LWluZGV4OiAzO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0KSB7XG4gICAgICAgICAgICAvLyBtYXgtd2lkdGg6IHJlbSg4NzApO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiByZW0oNjAwKTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHJlbSgzMCk7XG4gICAgICAgICAgICB0ZXh0LXdyYXA6IGJhbGFuY2U7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogcmVtKDUwKTtcbiAgICAgICAgICAgIG1hcmdpbi1pbmxpbmU6IGF1dG87XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgICAgIHA6bnRoLWNoaWxkKDEpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oMjgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChwaG9uZS1sYW5kc2NhcGUpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogOHB4O1xuICAgICAgICAgICAgbWFyZ2luLWlubGluZTogYXV0bztcbiAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKHBob25lKSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBmb250LXNpemUoMTQsIDIxKTtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogcmVtKDEwKTtcbiAgICAgICAgICAgIC8vIG1heC13aWR0aDogMzMwcHg7XG5cbiAgICAgICAgICAgIC8vIHA6bnRoLWNoaWxkKDEpIHtcbiAgICAgICAgICAgIC8vICAgICBtYXJnaW4tYm90dG9tOiByZW0oMjgpO1xuICAgICAgICAgICAgLy8gfVxuICAgICAgICB9XG4gICAgfVxuXG5cblxuICAgICZfX2ltYWdlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB3aWR0aDogcmVtKDE4OCk7XG4gICAgICAgIGhlaWdodDogcmVtKDk5KTtcbiAgICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiByZW0oLTMwKTtcbiAgICAgICAgbWFyZ2luLXRvcDogcmVtKDEwKTtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCkge1xuICAgICAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHJlbSgtNjApO1xuICAgICAgICAgICAgLy8gZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2NhbnZhcyB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuIiwiLnNraWxscyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBnYXA6IHZ3KDc1KTtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBwYWRkaW5nLWJsb2NrOiB2aCg5OCk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDM7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCkge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocGhvbmUpIHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzdGFydDtcbiAgICAgICAgaGVpZ2h0OiA3NnZoO1xuICAgIH1cblxuXG5cbiAgICAmX190YWJzIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIHdpZHRoOiB2dygzOTkpO1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCkge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHBob25lLWxhbmRzY2FwZSkge1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgd2lkdGg6IHJlbSg1MDApO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChwaG9uZSkge1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIH1cbiAgICB9XG5cblxuXG4gICAgJl9fdGFiIHtcbiAgICAgICAgQGluY2x1ZGUgZm9udC1zaXplKDIxLCAxKTtcbiAgICAgICAgQGluY2x1ZGUgbGV0dGVyLXNwYWNpbmcoLTAuMTA1LCAyMSk7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIHBhZGRpbmctYmxvY2s6IHJlbSgyMCk7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQpIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHBob25lLWxhbmRzY2FwZSkge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0oMTQpO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChwaG9uZSkge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0oMTQpO1xuICAgICAgICAgICAgcGFkZGluZy1ibG9jazogcmVtKDE1KTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmJlZm9yZSxcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgIHdpZHRoOiAxNSAvIDIxICogMWVtO1xuICAgICAgICAgICAgaGVpZ2h0OiAxNSAvIDIxICogMWVtO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNiAvIDIxICogMWVtO1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgY3VycmVudENvbG9yO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBjdXJyZW50Q29sb3I7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycyAkZWFzaW5nO1xuICAgICAgICAgICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICB9XG5cbiAgICAgICAgLmFjY2Vzc2liaWxpdHkgJjpmb2N1cyxcbiAgICAgICAgLm5vLXRvdWNoICY6aG92ZXIsXG4gICAgICAgICZbYXJpYS1zZWxlY3RlZD1cInRydWVcIl0ge1xuICAgICAgICAgICAgJjo6YWZ0ZXIgeyB0cmFuc2Zvcm06IHNjYWxlKDEpOyB9XG4gICAgICAgIH1cblxuICAgICAgICAmW2FyaWEtc2VsZWN0ZWQ9XCJ0cnVlXCJdIHtcbiAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG5cblxuICAgICZfX2xpbmUge1xuICAgICAgICBoZWlnaHQ6IDFweDtcbiAgICAgICAgYmFja2dyb3VuZDogY3VycmVudENvbG9yO1xuICAgIH1cblxuXG5cbiAgICAmX19jb250ZW50IHtcbiAgICAgICAgd2lkdGg6IHZ3KDU2MCk7XG4gICAgICAgIG1hcmdpbi1yaWdodDogdncoNTApO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoZGVza3RvcCkge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG5vdC1kZXNrdG9wKSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5za2lsbHMtLXN1YnBhZ2UgJiB7XG4gICAgICAgICAgICBAaW5jbHVkZSBmbGV4KGNvbHVtbiwgZmxleC1zdGFydCwgZmxleC1zdGFydCk7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiB2dygtNSk7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHZ3KDI2KTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChwaG9uZSkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuXG5cbiAgICAmX19wYW5lbCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgZ2FwOiByZW0oOCk7XG5cbiAgICAgICAgJlthcmlhLWhpZGRlbj1cInRydWVcIl0ge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG5cbiAgICAgICAgLnNraWxscy0tc3VicGFnZSAmIHtcbiAgICAgICAgICAgIGdhcDogcmVtKDkpO1xuICAgICAgICB9XG4gICAgfVxuXG5cblxuICAgICZfX2l0ZW0ge1xuICAgICAgICBAaW5jbHVkZSBmb250LXNpemUoMTUsIDE3KTtcbiAgICAgICAgQGluY2x1ZGUgbGV0dGVyLXNwYWNpbmcoLTAuOSwgMTUpO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCBjdXJyZW50Q29sb3I7XG4gICAgICAgIHBhZGRpbmc6IHJlbSg2KSByZW0oOSk7XG4gICAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1iZztcbiAgICAgICAgd2lkdGg6IG1heC1jb250ZW50O1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocGhvbmUpIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGxldHRlci1zcGFjaW5nKC0wLjg0LCAxMik7XG4gICAgICAgICAgICBAaW5jbHVkZSBmb250LXNpemUoMTIsIDE0KTtcbiAgICAgICAgICAgIHBhZGRpbmc6IHJlbSg2KTtcblxuICAgICAgICAgICAgJi0tbG9uZyB7IGZsZXgtYmFzaXM6IDY1JTsgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnNraWxscy0tc3VicGFnZSAmIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGRlc2t0b3ApIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBmb250LXNpemUoMTMsMTUuNik7XG4gICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjA1ZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocGhvbmUpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiB2dygzLCBwaG9uZSkgdncoNSwgcGhvbmUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICAmX19oZWFkaW5nIHtcbiAgICAgICAgQGluY2x1ZGUgZm9udC1zaXplKDE0LCAyMS4yOCk7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4xZW07XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChkZXNrdG9wKSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiB2dygxOSk7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHBob25lKSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiB2dygxMCwgcGhvbmUpXG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX191cmwge1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoZGVza3RvcCkge1xuICAgICAgICAgICAgQGluY2x1ZGUgZm9udC1zaXplKDE3LCAxOC43KTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHZ3KDE0MCk7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCkge1xuICAgICAgICAgICAgQGluY2x1ZGUgZm9udC1zaXplKDE2LCAxNy42KTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHZ3KDYwLCB0YWJsZXQpO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChwaG9uZSkge1xuICAgICAgICAgICAgQGluY2x1ZGUgZm9udC1zaXplKDE2LCAxNy42KTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHZ3KDYwLCBwaG9uZSk7XG4gICAgICAgIH1cbiAgICB9XG5cblxuICAgICYtLXN1YnBhZ2Uge1xuICAgICAgICBtYXJnaW46IHZ3KDIzNSkgMCB2dygyMzcpO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocGhvbmUpIHtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHZ3KDE2NSwgcGhvbmUpO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiQGtleWZyYW1lcyBmdWxsUm90YXRlIHtcbiAgICBmcm9tIHsgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7IH1cbiAgICB0byB7IHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH1cbn1cblxuLmRlZmF1bHQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtaW4taGVpZ2h0OiAxMDBsdmg7XG4gICAgei1pbmRleDogMDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB6LWluZGV4OiBhdXRvO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQpIHtcbiAgICAgICAgbWluLWhlaWdodDogMDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHBob25lKSB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICBtaW4taGVpZ2h0OiAwO1xuICAgIH1cblxuICAgICYtLWxlZnQge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHBob25lKSB7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtLXJpZ2h0IHtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHBob25lKSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiByZW0oMTAwKTtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICB9XG4gICAgfVxuXG5cblxuICAgICZfX3RpdGxlIHtcbiAgICAgICAgQGluY2x1ZGUgZm9udC1zaXplKDE1NywgMTMwKTtcbiAgICAgICAgQGluY2x1ZGUgZm9udC1mYW1pbHkoc2FucywgNzAwKTtcbiAgICAgICAgQGluY2x1ZGUgbGV0dGVyLXNwYWNpbmcoLTcuMDY1LCAxNTcpO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHBhZGRpbmctdG9wOiB2aCgzOCk7XG4gICAgICAgIHotaW5kZXg6IGF1dG87XG5cblxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0KSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBmb250LXNpemUoMTI1LCAxMDApO1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IHJlbSgxNTApO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChwaG9uZS1sYW5kc2NhcGUpIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSg4MCwgNzIpO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChwaG9uZSkge1xuICAgICAgICAgICAgQGluY2x1ZGUgZm9udC1zaXplKDQwLCAzMik7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3RhcnQ7XG4gICAgICAgICAgICBjb2x1bW4tZ2FwOiA5cHg7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oMTUpO1xuICAgICAgICB9XG5cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAtd2Via2l0LXRleHQtc3Ryb2tlOiAxcHggJGNvbG9yLXRleHQ7XG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLWJnO1xuICAgICAgICAgICAgei1pbmRleDogMTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQpIHtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAzO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChwaG9uZSkge1xuICAgICAgICAgICAgICAgIC13ZWJraXQtdGV4dC1zdHJva2U6IDA7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvci10ZXh0O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgc3BhbixcbiAgICAgICAgc3Ryb25nIHtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICBwYWRkaW5nLWlubGluZTogMC4wM2VtO1xuICAgICAgICAgICAgcGFkZGluZy1ibG9jazogMC4wMWVtO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChwaG9uZSkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuc3BhY2Uge1xuICAgICAgICAgICAgZmxleC1iYXNpczogMTAwJTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cblxuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IGF1dG87XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocGhvbmUpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuXG4gICAgICAgICYtLW1vbWVudCB7XG4gICAgICAgICAgICBzdHJvbmcge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwLjIyZW07XG4gICAgICAgICAgICAgICAgei1pbmRleDogMztcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocGhvbmUpIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHBob25lKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHNwYW46Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNDIuNCU7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChkZXNrdG9wKSB7XG4gICAgICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMjNlbTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHBob25lKSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLS1ub2lzZSB7XG4gICAgICAgICAgICBzdHJvbmc6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChwaG9uZSkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4taW5saW5lOiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgc3Ryb25nOm50aC1jaGlsZCgyKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiByZW0oNDYpO1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChwaG9uZSkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB2dyg0NCk7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0oMTkyKTtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0KSB7XG4gICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChwaG9uZSkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBzdHJvbmc6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgei1pbmRleDogMjtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocGhvbmUpIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtLXRlYW0ge1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGxlZnQ7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogcmVtKC0xNDApO1xuICAgICAgICAgICAgZ2FwOiByZW0oNDUpO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgIGdhcDogcmVtKDMwKTtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHBob25lKSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgZ2FwOiByZW0oMzApO1xuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocGhvbmUpIHtcbiAgICAgICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgZ2FwOiA4cHg7XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLXNlbGY6IHNlbGYtc3RhcnQ7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB2dyg4MCk7XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChub3QtZGVza3RvcCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi0tZm9vZCB7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG5vdC1kZXNrdG9wKSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZm9udC1zaXplKDgwLCAxKTtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChwaG9uZSkge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSg0MywgMSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHN0cm9uZzpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4taW5saW5lOiB2dygyMCk7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogdncoNik7XG5cbiAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IHZ3KDEwKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMTBweFxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICAmX19pbmRleCB7XG5cbiAgICAgICAgLmdvYWxfX2NvbnRlbnQgJiB7XG4gICAgICAgICAgICBAaW5jbHVkZSBmb250LXNpemUoMTMsIDE1LjYpO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtKDcpO1xuICAgICAgICB9XG5cbiAgICAgICAgLmdvYWwtLTIgJiB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGRlc2t0b3ApIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiB2dygxMyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmOm5vdCg6bnRoLWNoaWxkKDEpKSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGRlc2t0b3ApIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiB2dyg1Myk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobm90LWRlc2t0b3ApIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiByZW0oNDApO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuZ29hbC0tMiAmIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGRlc2t0b3ApIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogdncoNTYpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuXG4gICAgJl9faW1hZ2Uge1xuICAgICAgICBvYmplY3QtZml0OiBjb250YWluO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIHotaW5kZXg6IDE7XG5cbiAgICAgICAgJi0tbW9tZW50IHtcbiAgICAgICAgICAgIHdpZHRoOiB2dygyNjYpO1xuICAgICAgICAgICAgaGVpZ2h0OiB2dygxNTYpO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogdncoLTIwOCk7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0KSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogdncoLTYwOCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLS1ub2lzZSB7XG4gICAgICAgICAgICB3aWR0aDogdncoMzM1KTtcbiAgICAgICAgICAgIGhlaWdodDogdncoMjAwKTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHZ3KC0xODApO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHBob25lLWxhbmRzY2FwZSkge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAzNXZ3O1xuICAgICAgICAgICAgICAgIG1hcmdpbjogLTguOTJ2dyAtMS4yOHZ3O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCkge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxOHZ3O1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IHZ3KC0zMCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cblxuXG4gICAgJl9fY2FudmFzIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cblxuXG4gICAgJl9fY2lyY2xlcyB7XG4gICAgICAgIHdpZHRoOiByZW0oMjQwKTtcbiAgICAgICAgaGVpZ2h0OiByZW0oMjQwKTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICRkdXJhdGlvbjogOHM7XG5cbiAgICAgICAgQG1peGluIHJvdGF0ZSB7XG4gICAgICAgICAgICBhbmltYXRpb246IGZ1bGxSb3RhdGUgJGR1cmF0aW9uIGxpbmVhciBpbmZpbml0ZTtcbiAgICAgICAgfVxuXG5cbiAgICAgICAgLmNpcmNsZSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCBibGFjaztcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgIGluc2V0OiAtMXB4O1xuICAgICAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICYtLWJpZyB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIC8vIEBpbmNsdWRlIHJvdGF0ZTtcbiAgICAgICAgfVxuXG4gICAgICAgICYtLW1lZGl1bSB7XG4gICAgICAgICAgICB3aWR0aDogNzAlO1xuICAgICAgICAgICAgaGVpZ2h0OiA3MCU7XG4gICAgICAgICAgICAvLyBAaW5jbHVkZSByb3RhdGU7XG4gICAgICAgIH1cblxuICAgICAgICAmLS1zbWFsbCB7XG4gICAgICAgICAgICB3aWR0aDogNDUlO1xuICAgICAgICAgICAgaGVpZ2h0OiA0NSU7XG4gICAgICAgICAgICAvLyBAaW5jbHVkZSByb3RhdGU7XG4gICAgICAgIH1cblxuICAgICAgICAmLS10aW55IHtcbiAgICAgICAgICAgIHdpZHRoOiAyNSU7XG4gICAgICAgICAgICBoZWlnaHQ6IDI1JTtcbiAgICAgICAgICAgIC8vIEBpbmNsdWRlIHJvdGF0ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5nb2FsX19jb250ZW50ICYge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChub3QtcGhvbmUpIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgbGVmdDogLTk3JTtcbiAgICAgICAgICAgICAgICB0b3A6IDElO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHBob25lKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiByZW0oNTApIGF1dG8gMDtcbiAgICAgICAgICAgICAgICB3aWR0aDogcmVtKDIwMCk7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiByZW0oMjAwKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuXG5cbiAgICAmX190ZXh0IHtcbiAgICAgICAgQGluY2x1ZGUgbGV0dGVyLXNwYWNpbmcoLTIuMDgpO1xuICAgICAgICBAaW5jbHVkZSBmb250LXNpemUoMTYsIDEuNCk7XG4gICAgICAgIHdpZHRoOiByZW0oNDM4KTtcbiAgICAgICAgbWFyZ2luLXRvcDogdmgoNzYpO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiB2aCg1Myk7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDogMztcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCkge1xuICAgICAgICAgICAgd2lkdGg6IHJlbSgzMzUpO1xuICAgICAgICAgICAgLy8gbWFyZ2luLWJvdHRvbTogcmVtKC0zMik7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHBob25lLWxhbmRzY2FwZSkge1xuICAgICAgICAgICAgQGluY2x1ZGUgZm9udC1zaXplKDkpO1xuICAgICAgICAgICAgLy8gbWFyZ2luLWJvdHRvbTogcmVtKC0zMik7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHBob25lKSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBmb250LXNpemUoMTQsIDEuNCk7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgLy8gbWFyZ2luLXRvcDogMTVweDtcbiAgICAgICAgfVxuXG4gICAgICAgIHAge1xuICAgICAgICAgICAgei1pbmRleDogMztcbiAgICAgICAgfVxuXG4gICAgICAgICYtLWxlZnQsXG4gICAgICAgIC5kZWZhdWx0LS1sZWZ0ICYge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1MCU7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChwaG9uZSkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1pbmxpbmU6IGF1dG87XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYtLWJvcmRlcmVkIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1tYXJnaW4taW5saW5lKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtLXJpZ2h0LFxuICAgICAgICAuZGVmYXVsdC0tcmlnaHQgJiB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHBob25lKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWlubGluZTogYXV0bztcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDUwJTtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChwaG9uZS1sYW5kc2NhcGUpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMzMlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLS1ib3JkZXJlZCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1tYXJnaW4taW5saW5lKTtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocGhvbmUpIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtLWJvcmRlcmVkIHtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IHZoKDE3MCk7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0KSB7XG4gICAgICAgICAgICAgICAgbWluLWhlaWdodDogcmVtKDQxMCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocGhvbmUpIHtcbiAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi0tbm9pc2Uge1xuICAgICAgICAgICAgd2lkdGg6IHJlbSg0MTcpO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCkge1xuICAgICAgICAgICAgICAgIHdpZHRoOiByZW0oMzQwKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChwaG9uZSkge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1pbmxpbmU6IGF1dG87XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLS10ZWFtIHtcbiAgICAgICAgICAgIHdpZHRoOiByZW0oNTI1KTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHJlbSg3NSk7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0KSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogcmVtKDEwMCk7XG4gICAgICAgICAgICAgICAgLy8gbWFyZ2luLWJvdHRvbTogcmVtKC01KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChwaG9uZSkge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IHJlbSgxNSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocGhvbmUtbGFuZHNjYXBlKSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiByZW0oMzcwKTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocGhvbmUpIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IHJlbSgyOTApO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5nb2FsX19jb250ZW50ICYge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChkZXNrdG9wKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpub3QoLmRlZmF1bHRfX3RleHQtLXJpZ2h0KSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChkZXNrdG9wKSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNTAlO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDM3LjVjaDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYtLXJpZ2h0IHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGRlc2t0b3ApIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDM1Y2g7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG5cblxuICAgICZfX2lsbHUge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB0b3A6IDA7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChwaG9uZSkge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IHJlbSgzNSk7XG4gICAgICAgIH1cblxuICAgICAgICAmLS1tb21lbnQge1xuICAgICAgICAgICAgbGVmdDogMTAwJTtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB2dyg1Myk7XG4gICAgICAgICAgICBnYXA6IHZ3KDM4KTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChwaG9uZSkge1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpbWc6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIHdpZHRoOiB2dygyMTcpO1xuICAgICAgICAgICAgICAgIGhlaWdodDogdncoMjE3KTtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0KSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiByZW0oMjAwKTtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiByZW0oMjAwKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHBob25lKSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiByZW0oMTgwKTtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiByZW0oMTgwKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGltZzpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogdncoNTUpO1xuICAgICAgICAgICAgICAgIGhlaWdodDogdncoNTUpO1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChwaG9uZSkge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogcmVtKDQ1KTtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiByZW0oNDUpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmdvYWxfX2NvbnRlbnQgJiB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChub3QtcGhvbmUpIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogdncoNyk7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB2dygxNjApO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocGhvbmUpIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogcmVtKDUwKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLS1ub2lzZSB7XG4gICAgICAgICAgICByaWdodDogMTAwJTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHZ3KDQpO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiB2dyg1NSk7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHBob25lKSB7XG4gICAgICAgICAgICAgICAgaW5zZXQtaW5saW5lOiAwO1xuICAgICAgICAgICAgICAgIHdpZHRoOiByZW0oMjc3KTtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWlubGluZTogYXV0bztcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IHZ3KDMzMyk7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiB2dygyMTYpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuZ29hbF9fY29udGVudCAmIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG5vdC1waG9uZSkge1xuICAgICAgICAgICAgICAgICAgICByaWdodDogLTEwNCU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQpIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocGhvbmUpIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogcmVtKDUwKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cblxuXG4gICAgJl9fbGluZSB7XG4gICAgICAgIHdpZHRoOiAxcHg7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgaW5zZXQtYmxvY2s6IDA7XG4gICAgICAgIGJhY2tncm91bmQ6IGN1cnJlbnRDb2xvcjtcbiAgICAgICAgei1pbmRleDogMTtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCkge1xuICAgICAgICAgICAgaW5zZXQtaW5saW5lOiAwO1xuICAgICAgICAgICAgaGVpZ2h0OiByZW0oNTAwKTtcbiAgICAgICAgICAgIC8vIG1hcmdpbi1sZWZ0OiAtMXB4O1xuICAgICAgICAgICAgLy8gd2lkdGg6IDJweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocGhvbmUpIHtcbiAgICAgICAgICAgIGluc2V0LWlubGluZTogMDtcbiAgICAgICAgICAgIG1hcmdpbi1pbmxpbmU6IGF1dG87XG4gICAgICAgICAgICB0b3A6IGF1dG87XG4gICAgICAgICAgICBib3R0b206IHJlbSgyNSk7XG4gICAgICAgICAgICByaWdodDogMC41cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IHJlbSgyNTcpO1xuICAgICAgICB9XG5cbiAgICAgICAgLmRlZmF1bHQtLXJpZ2h0ICYgeyBsZWZ0OiAwOyB9XG4gICAgfVxuXG5cblxuICAgICZfX2RlY28ge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgaGVpZ2h0OiB2dygyMCk7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChwaG9uZSkge1xuICAgICAgICAgICAgaGVpZ2h0OiB2dygxNiwgcGhvbmUpO1xuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICAmX19sYXN0LXBpbiB7XG4gICAgICAgIHdpZHRoOiByZW0oMTQyKTtcbiAgICAgICAgaGVpZ2h0OiByZW0oODYpO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDIwMHB4KTtcbiAgICB9XG5cblxuICAgICYtLWxhc3Qge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGRlc2t0b3ApIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiByZW0oMTMwKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5waW4tc3BhY2VyIHtcbiAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgLy8gZml4IHBpbi1zcGFjZXIgd2lkdGggd2hpY2ggaXMgcm91bmQgb2ZmIHRvIGZ1bGwgcGl4ZWxcbiAgICB9XG59XG5cblxuXG4uc3ZnLW5vaXNlLXN0YXJzIHtcbiAgICBoZWlnaHQ6IHJlbSgxODApO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQpIHtcbiAgICAgICAgaGVpZ2h0OiByZW0oMTkwKTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHBob25lLWxhbmRzY2FwZSkge1xuICAgICAgICBoZWlnaHQ6IHJlbSgxMTApO1xuICAgIH1cblxuICAgIC5nb2FsX19jb250ZW50ICYge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGRlc2t0b3ApIHtcbiAgICAgICAgICAgIGhlaWdodDogcmVtKDIxMik7XG4gICAgICAgIH1cbiAgICB9XG59XG5cblxuXG4uaGlkZSB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuICFpbXBvcnRhbnQ7XG59XG5cbiIsIi5jdGEge1xuICAgIG1pbi1oZWlnaHQ6IDgwbHZoO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogYXV0bztcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0KSB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDg1bHZoO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocGhvbmUpIHtcbiAgICAgICAgbWluLWhlaWdodDogMDtcbiAgICB9XG5cblxuICAgIC53b3JrICYge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGRlc2t0b3ApIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHZ3KDUwKTtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IGNhbGMoMTAwdmggLSAxMDBweCk7XG4gICAgICAgIH1cbiAgICB9XG5cblxuICAgICZfX3BpbiB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgaW5zZXQ6IDA7XG4gICAgICAgIG1hcmdpbi1pbmxpbmU6IGF1dG87XG4gICAgICAgIG1hcmdpbi1ibG9jazogYXV0bztcbiAgICAgICAgd2lkdGg6IHJlbSgzNjYpO1xuICAgICAgICBoZWlnaHQ6IHJlbSg0MjkpO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oLTMwKTtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGRlc2lnbikge1xuICAgICAgICAgICAgaGVpZ2h0OiByZW0oNDAwKTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQpIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IGF1dG87XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oLTUwKTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocGhvbmUpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyODBweCkge1xuICAgICAgICAgICAgaGVpZ2h0OiA0MDBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTcwMHB4KSB7XG4gICAgICAgICAgICAvLyBoZWlnaHQ6IDQwMHB4O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogLTEwcHg7XG4gICAgICAgICAgICAubG9jYWwgJiB7IGJhY2tncm91bmQ6IHJlZDsgfVxuICAgICAgICB9XG4gICAgfVxuXG5cblxuICAgICZfX3RleHQge1xuICAgICAgICB3aWR0aDogcmVtKDM2Mik7XG4gICAgICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChkZXNrdG9wKSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB0b3A6IHZ3KDUwKTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0KSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiB2dyg0MCwgdGFibGV0KTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocGhvbmUpIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogcmVtKDIzKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC53b3JrICYge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChkZXNrdG9wKSB7XG4gICAgICAgICAgICAgICAgdG9wOiB2dyg1MCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBoMiB7XG4gICAgICAgICAgICBAaW5jbHVkZSBmb250LXNpemUoMjEsIDEuMSk7XG4gICAgICAgICAgICBAaW5jbHVkZSBsZXR0ZXItc3BhY2luZygtMC4xMDUsIDIxKTtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oMTgpO1xuICAgICAgICB9XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBmb250LXNpemUoMTYsIDEuNCk7XG4gICAgICAgICAgICBAaW5jbHVkZSBsZXR0ZXItc3BhY2luZygtMi4wOCk7XG4gICAgICAgIH1cbiAgICB9XG5cblxuXG4gICAgJl9fbGVhZCB7XG4gICAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgxNiwgMS40KTtcbiAgICAgICAgQGluY2x1ZGUgbGV0dGVyLXNwYWNpbmcoLTIuMDgpO1xuICAgICAgICBtYXJnaW4tdG9wOiBhdXRvO1xuICAgICAgICBtYXJnaW4tbGVmdDogNjAlO1xuICAgICAgICB6LWluZGV4OiAzO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0KSB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocGhvbmUtbGFuZHNjYXBlKSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiByZW0oNTApO1xuICAgICAgICAgICAgbWFyZ2luLWlubGluZTogYXV0bztcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocGhvbmUpIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgxNCwgMTgpO1xuICAgICAgICAgICAgdGV4dC13cmFwOiBub3dyYXA7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgIC8vIG1hcmdpbi10b3A6IHJlbSg3NSk7XG4gICAgICAgIH1cbiAgICB9XG5cblxuXG4gICAgJl9fbGluayB7XG4gICAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgzMCwgMS4yKTtcbiAgICAgICAgQGluY2x1ZGUgbGV0dGVyLXNwYWNpbmcoLTMuOSwgMzApO1xuICAgICAgICBtYXJnaW4tdG9wOiByZW0oMTApO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiBhdXRvO1xuICAgICAgICBtYXJnaW4tbGVmdDogNjclO1xuICAgICAgICB6LWluZGV4OiAzO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoZGVza3RvcCkge1xuICAgICAgICAgICAgd2lkdGg6IHJlbSg0NDIpO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQpIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgyNik7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oNTApO1xuICAgICAgICAgICAgd2lkdGg6IHJlbSgzMTcpO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChwaG9uZS1sYW5kc2NhcGUpIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgyMiwgMTIpO1xuICAgICAgICAgICAgbWFyZ2luLWlubGluZTogYXV0bztcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSg2MCk7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiByZW0oOSk7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHBob25lKSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBmb250LXNpemUoMjMsIDI3KTtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogcmVtKDEyKTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSgyNSk7XG4gICAgICAgIH1cbiAgICB9XG5cblxuXG4gICAgJl9fbG9nbyB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSgtMzApO1xuICAgICAgICB3aWR0aDogdncoMjU2KTtcbiAgICAgICAgaGVpZ2h0OiB2dygxMDUpO1xuICAgICAgICB6LWluZGV4OiAzO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0KSB7XG4gICAgICAgICAgICB3aWR0aDogcmVtKDE2MCk7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICBvcmRlcjogNTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHZ3KDUwLCB0YWJsZXQpO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChwaG9uZS1sYW5kc2NhcGUpIHtcbiAgICAgICAgICAgIHdpZHRoOiByZW0oMjA1KTtcbiAgICAgICAgICAgIGhlaWdodDogcmVtKDg1KTtcbiAgICAgICAgICAgIG9yZGVyOiA1O1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChwaG9uZSkge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtKDMwKTtcbiAgICAgICAgICAgIHdpZHRoOiByZW0oMjA1KTtcbiAgICAgICAgICAgIGhlaWdodDogcmVtKDg1KTtcbiAgICAgICAgICAgIG9yZGVyOiA1O1xuICAgICAgICB9XG4gICAgfVxuXG5cblxuICAgICZfX2ltYWdlLXdyYXAge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGluc2V0OiAwO1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG5vdC1kZXNrdG9wKSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgfVxuICAgIH1cblxuXG5cbiAgICAmX19pbWFnZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgd2lkdGg6IHZ3KDMxMSk7XG4gICAgICAgIGhlaWdodDogdncoNTM2KTtcbiAgICAgICAgbWFyZ2luOiB2dygtMjY4KSB2dygtMTU1KTtcbiAgICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG5vdC1kZXNrdG9wKSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBpbnNldDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0KSB7XG4gICAgICAgICAgICB3aWR0aDogY2FsYygyMDhweCArIDEwcmVtKTtcbiAgICAgICAgICAgIGhlaWdodDogY2FsYygzMTJweCArIDEwcmVtKTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0KSB7XG4gICAgICAgICAgICB3aWR0aDogY2FsYygyMDhweCArIDEwcmVtKTtcbiAgICAgICAgICAgIGhlaWdodDogY2FsYygzMTJweCArIDEwcmVtKTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocGhvbmUpIHtcbiAgICAgICAgICAgIHdpZHRoOiAyMDhweDtcbiAgICAgICAgICAgIGhlaWdodDogMzEycHg7XG4gICAgICAgIH1cbiAgICB9XG5cblxuXG4gICAgJl9fZmlndXJlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHBob25lKSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiByZW0oMzApO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBtYXJnaW4taW5saW5lOiBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHdpZHRoOiByZW0oMjgwKTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHJlbSgzMCk7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oMzApO1xuICAgICAgICB9XG5cbiAgICAgICAgJi0tc3RhdGljIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBtYXJnaW4taW5saW5lOiBhdXRvO1xuICAgICAgICAgICAgaW5zZXQ6IDA7XG5cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiByZW0oNDkwKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi5lcnJvciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDB2aDtcblxuICAgICZfX21haW4ge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIHBhZGRpbmctaW5saW5lOiA1MHB4O1xuICAgIH1cblxuICAgICZfX2NvbnRlbnQge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgZ2FwOiByZW0oMzApO1xuICAgICAgICBmbGV4LWdyb3c6IDE7XG5cbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiA1MCU7XG4gICAgICAgIG1heC13aWR0aDogcmVtKDEwMjApO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobm90LWRlc2t0b3ApIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fbGluayB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIH1cbn1cbiIsIi5jZW50ZXItdGV4dCB7XG4gICAgQGluY2x1ZGUgZmxleChjb2x1bW4sIGNlbnRlciwgY2VudGVyKTtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoMTYsIDI0KTtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBtYXgtd2lkdGg6IDUwY2g7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChwaG9uZSkge1xuICAgICAgICBAaW5jbHVkZSBmb250LXNpemUoMTQsIDIxLjI4KTtcbiAgICB9XG5cbiAgICBwIHtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjA3ZW07XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChwaG9uZSkge1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjFlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGgzIHtcbiAgICAgICAgQGluY2x1ZGUgZm9udC1mYW1pbHkoc2FucywgOTAwKTtcbiAgICAgICAgLXdlYmtpdC10ZXh0LXN0cm9rZTogMXB4ICRjb2xvci1ibGFjaztcbiAgICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoZGVza3RvcCkge1xuICAgICAgICAgICAgQGluY2x1ZGUgZm9udC1zaXplKDE1NywgMTIwLjEpO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogdncoNyk7XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDQ1ZW07XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHBob25lKSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBmb250LXNpemUoOTAsIDcwKTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHZ3KDMwLCBwaG9uZSk7XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDVlbTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi5tb2JpbGUtc2NyZWVuc2hvdHMge1xuICAgIEBpbmNsdWRlIGZsZXgocm93LCBmbGV4LXN0YXJ0LCBmbGV4LXN0YXJ0KTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQodGFibGV0KSB7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICByb3ctZ2FwOiB2dygzMCwgdGFibGV0KTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHBob25lKSB7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICByb3ctZ2FwOiB2dygxNSwgcGhvbmUpO1xuICAgIH1cblxuICAgIC5pbWFnZSB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoZGVza3RvcCkge1xuICAgICAgICAgICAgd2lkdGg6IHZ3KDI3Myk7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCkge1xuICAgICAgICAgICAgd2lkdGg6IHZ3KDMzNywgdGFibGV0KTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocGhvbmUpIHtcbiAgICAgICAgICAgIHdpZHRoOiB2dygxNjQsIHBob25lKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoZGVza3RvcCkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiB2dygxOTMpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubW9iaWxlLXNjcmVlbnNob3RzLS1zdG9yaWVzICYge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoZGVza3RvcCkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogdncoMCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjpudGgtY2hpbGQoMykge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChkZXNrdG9wKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHZ3KDM3KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChwaG9uZSkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICAmLS1zdG9yaWVzIHtcbiAgICAgICAgbWFyZ2luLXRvcDogdncoODApO1xuXG4gICAgICAgIC5pbWFnZSB7XG5cbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGRlc2t0b3ApIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHZ3KDM2KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDMpIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGRlc2t0b3ApIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHZ3KDE5Mik7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChwaG9uZSkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDQpIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGRlc2t0b3ApIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogdncoMTUpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocGhvbmUpIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiLnRleHQtc2NyZWVuc2hvdHMge1xuICAgIEBpbmNsdWRlIGZsZXgocm93LCBzcGFjZS1iZXR3ZWVuLCBmbGV4LXN0YXJ0KTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobm90LWRlc2t0b3ApIHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgZ2FwOiB2dyg0MCwgcGhvbmUpXG4gICAgfVxuXG4gICAgJl9faW1hZ2VzIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChkZXNrdG9wKSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBmbGV4KHJvdywgZmxleC1zdGFydCwgZmxleC1zdGFydCk7XG4gICAgICAgICAgICBnYXA6IHZ3KDI3KTtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IHZ3KDU4MCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBmaWd1cmUge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGRlc2t0b3ApIHtcbiAgICAgICAgICAgIHdpZHRoOiB2dygyODApO1xuICAgICAgICAgICAgaGVpZ2h0OiB2dygyODApO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogdncoNik7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChwaG9uZSkge1xuICAgICAgICAgICAgd2lkdGg6IHZ3KDM1MiwgcGhvbmUpO1xuICAgICAgICAgICAgaGVpZ2h0OiB2dygzNTIsIHBob25lKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChwaG9uZSkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHZ3KDQwLCBwaG9uZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChkZXNrdG9wKSB7XG4gICAgICAgICAgICAgICAgYWxpZ24tc2VsZjogZmxleC1lbmQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi5mb290ZXIge1xuICAgIEBpbmNsdWRlIHotaW5kZXgoZm9vdGVyKTtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoMTMsIDEuMik7XG4gICAgQGluY2x1ZGUgbGV0dGVyLXNwYWNpbmcoLTAuNzgsIDEzKTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChwaG9uZSkge1xuICAgICAgICByb3ctZ2FwOiAxN3B4O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogcmVtKDI0KTtcbiAgICB9XG5cbiAgICAmX19kZWNvIHtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHBob25lKSB7XG4gICAgICAgICAgICBoZWlnaHQ6IHJlbSgxNik7XG4gICAgICAgICAgICBvcmRlcjogMjtcbiAgICAgICAgfVxuXG4gICAgICAgICY6bnRoLWNoaWxkKDEpIHtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChub3QtZGVza3RvcCkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cblxuXG4gICAgJl9fY29sb3Bob24ge1xuICAgICAgICB3aWR0aDogdncoMjc2KTtcbiAgICAgICAgbWFyZ2luLWlubGluZS1lbmQ6IGF1dG87XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChwaG9uZSkge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBvcmRlcjogMztcbiAgICAgICAgfVxuICAgIH1cblxuXG5cbiAgICAmX19saW5rIHtcbiAgICAgICAgbWluLXdpZHRoOiAxIC8gOCAqIDEwMCU7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMTJweDtcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChwaG9uZSkge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIHNwYW5bZGF0YS10ZXh0XSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IGF0dHIoZGF0YS10ZXh0KTtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiAxMDAlO1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5pcy1hbmltYXRpbmcgc3BhbltkYXRhLXRleHRdIHtcbiAgICAgICAgICAgIGFuaW1hdGlvbjogc2xpZGVVcCAwLjRzICRlYXNpbmc7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIuZm9vdGVyLXN1YnBhZ2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdncoMTApO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBwb2ludGVyLWV2ZW50czogaG92ZXI7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGRlc2t0b3ApIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IHZ3KC01KTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldCkge1xuICAgICAgICBwYWRkaW5nLXRvcDogdncoMTAwLCB0YWJsZXQpO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogdncoMzAsIHRhYmxldCk7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChwaG9uZSkge1xuICAgICAgICBwYWRkaW5nLXRvcDogdncoMTEzLCBwaG9uZSk7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiB2dygzMCwgcGhvbmUpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGhvdmVyIHtcbiAgICAgICAgaDEge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvci1ibGFjaztcblxuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuY291bnRlciB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgICAgIH1cblxuICAgICAgICBwIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxN3B4KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGgxIHtcbiAgICAgICAgQGluY2x1ZGUgZm9udC1mYW1pbHkoc2FucywgOTAwKTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjA1ZW07XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChkZXNrdG9wKSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBmb250LXNpemUoMTU3LCAxMjAuMSk7XG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLXdoaXRlO1xuICAgICAgICAgICAgLXdlYmtpdC10ZXh0LXN0cm9rZTogMXB4ICRjb2xvci1ibGFjaztcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyNXB4KTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAkdGltZSAkZWFzaW5nLCBjb2xvciAkdGltZSAkZWFzaW5nO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQpIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSg4MCwgNzApO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMGNoO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChwaG9uZSkge1xuICAgICAgICAgICAgQGluY2x1ZGUgZm9udC1zaXplKDQwLCAzMik7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwY2g7XG4gICAgICAgIH1cblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChkZXNrdG9wKSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIGluc2V0OiAwO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgwZGVnLCAkY29sb3Itd2hpdGUgMCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgNDUlKTtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgJHRpbWUgJGVhc2luZztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIGEge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGluc2V0OiAwO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICBwb2ludGVyLWV2ZW50czogYWxsO1xuICAgIH1cblxuICAgIHAge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wNWVtO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoZGVza3RvcCkge1xuICAgICAgICAgICAgQGluY2x1ZGUgZm9udC1zaXplKDEzLCAxNS42KTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnQtZmFtaWx5KG1vbm8sIDQwMCk7XG4gICAgICAgICAgICByaWdodDogdncoMTcpO1xuICAgICAgICAgICAgYm90dG9tOiB2dygxNyk7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gJHRpbWUgJGVhc2luZztcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobm90LWRlc2t0b3ApIHtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5saW5lIHtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG5vdC1kZXNrdG9wKSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IHZ3KC0zLCBwaG9uZSk7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDFweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ibGFjaztcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi5tZW51IHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgaW5zZXQtaW5saW5lOiB2YXIoLS1tYXJnaW4taW5saW5lKTtcbiAgICB6LWluZGV4OiA5OTk5O1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSB2YXIoLS1tYXJnaW4taW5saW5lKSAqIDIpO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAkdGltZSAkZWFzaW5nICR0aW1lLCBvcGFjaXR5ICR0aW1lICRlYXNpbmcgJHRpbWU7XG4gICAgY29sb3I6ICRjb2xvci1ibGFjaztcblxuICAgIC53b3JrICYge1xuICAgICAgICBjb2xvcjogJGNvbG9yLXdoaXRlO1xuICAgIH1cblxuICAgIC53b3JrLmlzLW91dHNpZGUtaGVybyAmIHtcbiAgICAgICAgY29sb3I6ICRjb2xvci1ibGFjaztcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGRlc2t0b3ApIHtcbiAgICAgICAgdG9wOiB2dygyMCk7XG4gICAgICAgIGhlaWdodDogdncoMjApO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoaGQpIHtcbiAgICAgICAgdG9wOiB2dygyMCk7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQpIHtcbiAgICAgICAgdG9wOiB2dygyMSwgdGFibGV0KTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDJyZW0gKiAyKTtcbiAgICAgICAgbWFyZ2luLWlubGluZTogcmVtKDMyKTtcbiAgICAgICAgaGVpZ2h0OiB2dygyMCwgdGFibGV0KTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHBob25lKSB7XG4gICAgICAgIHRvcDogdncoMjEsIHBob25lKTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgbWFyZ2luLWlubGluZTogMXJlbTtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDFyZW0gKiAyKTtcbiAgICAgICAgaGVpZ2h0OiB2dygxNiwgcGhvbmUpO1xuICAgIH1cblxuICAgICZfX3dyYXAge1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuXG4gICAgLmlzLW5vdC1yZWFkeSAmIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICB9XG5cbiAgICBuYXYge1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuXG4gICAgdWwge1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg4LCAxZnIpO1xuICAgICAgICBncmlkLXRlbXBsYXRlLXJvd3M6IDFmcjtcbiAgICAgICAgZ3JpZC1jb2x1bW4tZ2FwOiAwcHg7XG4gICAgICAgIGdyaWQtcm93LWdhcDogMHB4O1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChwaG9uZSkge1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNiwgbWlubWF4KDAsIDFmcikpO1xuICAgICAgICB9XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgICAgQGluY2x1ZGUgZm9udC1zaXplKDEzLCAxNS42KTtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wNmVtO1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICAgICAgICAgJjpudGgtbGFzdC1jaGlsZCgyKSxcbiAgICAgICAgICAgICY6bnRoLWxhc3QtY2hpbGQoMyksXG4gICAgICAgICAgICAmOm50aC1sYXN0LWNoaWxkKDQpICYge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocGhvbmUpIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYgPiBhIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDMwcHgpO1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChoZCkge1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkodncoMjUpKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG5cbiAgICAgICAgbGk6Zmlyc3QtY2hpbGQsXG4gICAgICAgIGxpOm50aC1jaGlsZCgzKSB7XG4gICAgICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIGN1cnJlbnRDb2xvcjtcblxuICAgICAgICAgICAgLndvcmsgJiB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3Itd2hpdGU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC53b3JrLmlzLW91dHNpZGUtaGVybyAmIHtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvci1ibGFjaztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHZ3KC0yKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGxpOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAganVzdGlmeS1zZWxmOiBlbmQ7XG4gICAgICAgICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCBjdXJyZW50Q29sb3I7XG5cbiAgICAgICAgICAgIC53b3JrICYge1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yLXdoaXRlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAud29yay5pcy1vdXRzaWRlLWhlcm8gJiB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3ItYmxhY2s7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogdncoLTIpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnNjcm9sbC1kb3duICYge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwMCUpO1xuICAgIH1cbn1cbiIsIi5jdXJ0YWluIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LXNlbGY6IGNlbnRlcjtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDEwMHZ3O1xuICAgIGhlaWdodDogMTAwdmg7XG4gICAgei1pbmRleDogMDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICAgICZfX2l0ZW0sICZfX2l0ZW0taW1nIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cblxuXG4gICAgJl9faXRlbSB7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHdpbGwtY2hhbmdlOiBjbGlwLXBhdGg7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZ3KDYpO1xuICAgIH1cblxuXG4gICAgJl9faXRlbS1pbWcge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgNTAlO1xuICAgIH1cbn1cbiJdfQ== */
