/*!
* reveal.js 5.0.3
* https://revealjs.com
* MIT licensed
*
* Copyright (C) 2011-2023 Hakim El Hattab, https://hakim.se
*/
.reveal .r-stretch,.reveal .stretch{max-width:none;max-height:none}.reveal pre.r-stretch code,.reveal pre.stretch code{height:100%;max-height:100%;box-sizing:border-box}.reveal .r-fit-text{display:inline-block;white-space:nowrap}.reveal .r-stack{display:grid}.reveal .r-stack>*{grid-area:1/1;margin:auto}.reveal .r-hstack,.reveal .r-vstack{display:flex}.reveal .r-hstack img,.reveal .r-hstack video,.reveal .r-vstack img,.reveal .r-vstack video{min-width:0;min-height:0;object-fit:contain}.reveal .r-vstack{flex-direction:column;align-items:center;justify-content:center}.reveal .r-hstack{flex-direction:row;align-items:center;justify-content:center}.reveal .items-stretch{align-items:stretch}.reveal .items-start{align-items:flex-start}.reveal .items-center{align-items:center}.reveal .items-end{align-items:flex-end}.reveal .justify-between{justify-content:space-between}.reveal .justify-around{justify-content:space-around}.reveal .justify-start{justify-content:flex-start}.reveal .justify-center{justify-content:center}.reveal .justify-end{justify-content:flex-end}html.reveal-full-page{width:100%;height:100%;height:100vh;height:calc(var(--vh,1vh) * 100);height:100svh;overflow:hidden}.reveal-viewport{height:100%;overflow:hidden;position:relative;line-height:1;margin:0;background-color:#fff;color:#000;--r-controls-spacing:12px}.reveal-viewport:fullscreen{top:0!important;left:0!important;width:100%!important;height:100%!important;transform:none!important}.reveal .fragment{transition:all .2s ease}.reveal .fragment:not(.custom){opacity:0;visibility:hidden;will-change:opacity}.reveal .fragment.visible{opacity:1;visibility:inherit}.reveal .fragment.disabled{transition:none}.reveal .fragment.grow{opacity:1;visibility:inherit}.reveal .fragment.grow.visible{transform:scale(1.3)}.reveal .fragment.shrink{opacity:1;visibility:inherit}.reveal .fragment.shrink.visible{transform:scale(.7)}.reveal .fragment.zoom-in{transform:scale(.1)}.reveal .fragment.zoom-in.visible{transform:none}.reveal .fragment.fade-out{opacity:1;visibility:inherit}.reveal .fragment.fade-out.visible{opacity:0;visibility:hidden}.reveal .fragment.semi-fade-out{opacity:1;visibility:inherit}.reveal .fragment.semi-fade-out.visible{opacity:.5;visibility:inherit}.reveal .fragment.strike{opacity:1;visibility:inherit}.reveal .fragment.strike.visible{text-decoration:line-through}.reveal .fragment.fade-up{transform:translate(0,40px)}.reveal .fragment.fade-up.visible{transform:translate(0,0)}.reveal .fragment.fade-down{transform:translate(0,-40px)}.reveal .fragment.fade-down.visible{transform:translate(0,0)}.reveal .fragment.fade-right{transform:translate(-40px,0)}.reveal .fragment.fade-right.visible{transform:translate(0,0)}.reveal .fragment.fade-left{transform:translate(40px,0)}.reveal .fragment.fade-left.visible{transform:translate(0,0)}.reveal .fragment.current-visible,.reveal .fragment.fade-in-then-out{opacity:0;visibility:hidden}.reveal .fragment.current-visible.current-fragment,.reveal .fragment.fade-in-then-out.current-fragment{opacity:1;visibility:inherit}.reveal .fragment.fade-in-then-semi-out{opacity:0;visibility:hidden}.reveal .fragment.fade-in-then-semi-out.visible{opacity:.5;visibility:inherit}.reveal .fragment.fade-in-then-semi-out.current-fragment{opacity:1;visibility:inherit}.reveal .fragment.highlight-blue,.reveal .fragment.highlight-current-blue,.reveal .fragment.highlight-current-green,.reveal .fragment.highlight-current-red,.reveal .fragment.highlight-green,.reveal .fragment.highlight-red{opacity:1;visibility:inherit}.reveal .fragment.highlight-red.visible{color:#ff2c2d}.reveal .fragment.highlight-green.visible{color:#17ff2e}.reveal .fragment.highlight-blue.visible{color:#1b91ff}.reveal .fragment.highlight-current-red.current-fragment{color:#ff2c2d}.reveal .fragment.highlight-current-green.current-fragment{color:#17ff2e}.reveal .fragment.highlight-current-blue.current-fragment{color:#1b91ff}.reveal:after{content:"";font-style:italic}.reveal iframe{z-index:1}.reveal a{position:relative}@keyframes bounce-right{0%,10%,25%,40%,50%{transform:translateX(0)}20%{transform:translateX(10px)}30%{transform:translateX(-5px)}}@keyframes bounce-left{0%,10%,25%,40%,50%{transform:translateX(0)}20%{transform:translateX(-10px)}30%{transform:translateX(5px)}}@keyframes bounce-down{0%,10%,25%,40%,50%{transform:translateY(0)}20%{transform:translateY(10px)}30%{transform:translateY(-5px)}}.reveal .controls{display:none;position:absolute;top:auto;bottom:var(--r-controls-spacing);right:var(--r-controls-spacing);left:auto;z-index:11;color:#000;pointer-events:none;font-size:10px}.reveal .controls button{position:absolute;padding:0;background-color:transparent;border:0;outline:0;cursor:pointer;color:currentColor;transform:scale(.9999);transition:color .2s ease,opacity .2s ease,transform .2s ease;z-index:2;pointer-events:auto;font-size:inherit;visibility:hidden;opacity:0;-webkit-appearance:none;-webkit-tap-highlight-color:transparent}.reveal .controls .controls-arrow:after,.reveal .controls .controls-arrow:before{content:"";position:absolute;top:0;left:0;width:2.6em;height:.5em;border-radius:.25em;background-color:currentColor;transition:all .15s ease,background-color .8s ease;transform-origin:.2em 50%;will-change:transform}.reveal .controls .controls-arrow{position:relative;width:3.6em;height:3.6em}.reveal .controls .controls-arrow:before{transform:translateX(.5em) translateY(1.55em) rotate(45deg)}.reveal .controls .controls-arrow:after{transform:translateX(.5em) translateY(1.55em) rotate(-45deg)}.reveal .controls .controls-arrow:hover:before{transform:translateX(.5em) translateY(1.55em) rotate(40deg)}.reveal .controls .controls-arrow:hover:after{transform:translateX(.5em) translateY(1.55em) rotate(-40deg)}.reveal .controls .controls-arrow:active:before{transform:translateX(.5em) translateY(1.55em) rotate(36deg)}.reveal .controls .controls-arrow:active:after{transform:translateX(.5em) translateY(1.55em) rotate(-36deg)}.reveal .controls .navigate-left{right:6.4em;bottom:3.2em;transform:translateX(-10px)}.reveal .controls .navigate-left.highlight{animation:bounce-left 2s 50 both ease-out}.reveal .controls .navigate-right{right:0;bottom:3.2em;transform:translateX(10px)}.reveal .controls .navigate-right .controls-arrow{transform:rotate(180deg)}.reveal .controls .navigate-right.highlight{animation:bounce-right 2s 50 both ease-out}.reveal .controls .navigate-up{right:3.2em;bottom:6.4em;transform:translateY(-10px)}.reveal .controls .navigate-up .controls-arrow{transform:rotate(90deg)}.reveal .controls .navigate-down{right:3.2em;bottom:-1.4em;padding-bottom:1.4em;transform:translateY(10px)}.reveal .controls .navigate-down .controls-arrow{transform:rotate(-90deg)}.reveal .controls .navigate-down.highlight{animation:bounce-down 2s 50 both ease-out}.reveal .controls[data-controls-back-arrows=faded] .navigate-up.enabled{opacity:.3}.reveal .controls[data-controls-back-arrows=faded] .navigate-up.enabled:hover{opacity:1}.reveal .controls[data-controls-back-arrows=hidden] .navigate-up.enabled{opacity:0;visibility:hidden}.reveal .controls .enabled{visibility:visible;opacity:.9;cursor:pointer;transform:none}.reveal .controls .enabled.fragmented{opacity:.5}.reveal .controls .enabled.fragmented:hover,.reveal .controls .enabled:hover{opacity:1}.reveal:not(.rtl) .controls[data-controls-back-arrows=faded] .navigate-left.enabled{opacity:.3}.reveal:not(.rtl) .controls[data-controls-back-arrows=faded] .navigate-left.enabled:hover{opacity:1}.reveal:not(.rtl) .controls[data-controls-back-arrows=hidden] .navigate-left.enabled{opacity:0;visibility:hidden}.reveal.rtl .controls[data-controls-back-arrows=faded] .navigate-right.enabled{opacity:.3}.reveal.rtl .controls[data-controls-back-arrows=faded] .navigate-right.enabled:hover{opacity:1}.reveal.rtl .controls[data-controls-back-arrows=hidden] .navigate-right.enabled{opacity:0;visibility:hidden}.reveal[data-navigation-mode=linear].has-horizontal-slides .navigate-down,.reveal[data-navigation-mode=linear].has-horizontal-slides .navigate-up{display:none}.reveal:not(.has-vertical-slides) .controls .navigate-left,.reveal[data-navigation-mode=linear].has-horizontal-slides .navigate-left{bottom:1.4em;right:5.5em}.reveal:not(.has-vertical-slides) .controls .navigate-right,.reveal[data-navigation-mode=linear].has-horizontal-slides .navigate-right{bottom:1.4em;right:.5em}.reveal:not(.has-horizontal-slides) .controls .navigate-up{right:1.4em;bottom:5em}.reveal:not(.has-horizontal-slides) .controls .navigate-down{right:1.4em;bottom:.5em}.reveal.has-dark-background .controls{color:#fff}.reveal.has-light-background .controls{color:#000}.reveal.no-hover .controls .controls-arrow:active:before,.reveal.no-hover .controls .controls-arrow:hover:before{transform:translateX(.5em) translateY(1.55em) rotate(45deg)}.reveal.no-hover .controls .controls-arrow:active:after,.reveal.no-hover .controls .controls-arrow:hover:after{transform:translateX(.5em) translateY(1.55em) rotate(-45deg)}@media screen and (min-width:500px){.reveal-viewport{--r-controls-spacing:0.8em}.reveal .controls[data-controls-layout=edges]{top:0;right:0;bottom:0;left:0}.reveal .controls[data-controls-layout=edges] .navigate-down,.reveal .controls[data-controls-layout=edges] .navigate-left,.reveal .controls[data-controls-layout=edges] .navigate-right,.reveal .controls[data-controls-layout=edges] .navigate-up{bottom:auto;right:auto}.reveal .controls[data-controls-layout=edges] .navigate-left{top:50%;left:var(--r-controls-spacing);margin-top:-1.8em}.reveal .controls[data-controls-layout=edges] .navigate-right{top:50%;right:var(--r-controls-spacing);margin-top:-1.8em}.reveal .controls[data-controls-layout=edges] .navigate-up{top:var(--r-controls-spacing);left:50%;margin-left:-1.8em}.reveal .controls[data-controls-layout=edges] .navigate-down{bottom:calc(var(--r-controls-spacing) - 1.4em + .3em);left:50%;margin-left:-1.8em}}.reveal .progress{position:absolute;display:none;height:3px;width:100%;bottom:0;left:0;z-index:10;background-color:rgba(0,0,0,.2);color:#fff}.reveal .progress:after{content:"";display:block;position:absolute;height:10px;width:100%;top:-10px}.reveal .progress span{display:block;height:100%;width:100%;background-color:currentColor;transition:transform .8s cubic-bezier(.26,.86,.44,.985);transform-origin:0 0;transform:scaleX(0)}.reveal .slide-number{position:absolute;display:block;right:8px;bottom:8px;z-index:31;font-family:Helvetica,sans-serif;font-size:12px;line-height:1;color:#fff;background-color:rgba(0,0,0,.4);padding:5px}.reveal .slide-number a{color:currentColor}.reveal .slide-number-delimiter{margin:0 3px}.reveal{position:relative;width:100%;height:100%;overflow:hidden;touch-action:pinch-zoom}.reveal.embedded{touch-action:pan-y}.reveal .slides{position:absolute;width:100%;height:100%;top:0;right:0;bottom:0;left:0;margin:auto;pointer-events:none;overflow:visible;z-index:1;text-align:center;perspective:600px;perspective-origin:50% 40%}.reveal .slides>section{perspective:600px}.reveal .slides>section,.reveal .slides>section>section{display:none;position:absolute;width:100%;pointer-events:auto;z-index:10;transform-style:flat;transition:transform-origin .8s cubic-bezier(.26,.86,.44,.985),transform .8s cubic-bezier(.26,.86,.44,.985),visibility .8s cubic-bezier(.26,.86,.44,.985),opacity .8s cubic-bezier(.26,.86,.44,.985)}.reveal[data-transition-speed=fast] .slides section{transition-duration:.4s}.reveal[data-transition-speed=slow] .slides section{transition-duration:1.2s}.reveal .slides section[data-transition-speed=fast]{transition-duration:.4s}.reveal .slides section[data-transition-speed=slow]{transition-duration:1.2s}.reveal .slides>section.stack{padding-top:0;padding-bottom:0;pointer-events:none;height:100%}.reveal .slides>section.present,.reveal .slides>section>section.present{display:block;z-index:11;opacity:1}.reveal .slides>section:empty,.reveal .slides>section>section:empty,.reveal .slides>section>section[data-background-interactive],.reveal .slides>section[data-background-interactive]{pointer-events:none}.reveal.center,.reveal.center .slides,.reveal.center .slides section{min-height:0!important}.reveal .slides>section:not(.present),.reveal .slides>section>section:not(.present){pointer-events:none}.reveal.overview .slides>section,.reveal.overview .slides>section>section{pointer-events:auto}.reveal .slides>section.future,.reveal .slides>section.future>section,.reveal .slides>section.past,.reveal .slides>section.past>section,.reveal .slides>section>section.future,.reveal .slides>section>section.past{opacity:0}.reveal .slides>section[data-transition=slide].past,.reveal .slides>section[data-transition~=slide-out].past,.reveal.slide .slides>section:not([data-transition]).past{transform:translate(-150%,0)}.reveal .slides>section[data-transition=slide].future,.reveal .slides>section[data-transition~=slide-in].future,.reveal.slide .slides>section:not([data-transition]).future{transform:translate(150%,0)}.reveal .slides>section>section[data-transition=slide].past,.reveal .slides>section>section[data-transition~=slide-out].past,.reveal.slide .slides>section>section:not([data-transition]).past{transform:translate(0,-150%)}.reveal .slides>section>section[data-transition=slide].future,.reveal .slides>section>section[data-transition~=slide-in].future,.reveal.slide .slides>section>section:not([data-transition]).future{transform:translate(0,150%)}.reveal .slides>section[data-transition=linear].past,.reveal .slides>section[data-transition~=linear-out].past,.reveal.linear .slides>section:not([data-transition]).past{transform:translate(-150%,0)}.reveal .slides>section[data-transition=linear].future,.reveal .slides>section[data-transition~=linear-in].future,.reveal.linear .slides>section:not([data-transition]).future{transform:translate(150%,0)}.reveal .slides>section>section[data-transition=linear].past,.reveal .slides>section>section[data-transition~=linear-out].past,.reveal.linear .slides>section>section:not([data-transition]).past{transform:translate(0,-150%)}.reveal .slides>section>section[data-transition=linear].future,.reveal .slides>section>section[data-transition~=linear-in].future,.reveal.linear .slides>section>section:not([data-transition]).future{transform:translate(0,150%)}.reveal .slides section[data-transition=default].stack,.reveal.default .slides section.stack{transform-style:preserve-3d}.reveal .slides>section[data-transition=default].past,.reveal .slides>section[data-transition~=default-out].past,.reveal.default .slides>section:not([data-transition]).past{transform:translate3d(-100%,0,0) rotateY(-90deg) translate3d(-100%,0,0)}.reveal .slides>section[data-transition=default].future,.reveal .slides>section[data-transition~=default-in].future,.reveal.default .slides>section:not([data-transition]).future{transform:translate3d(100%,0,0) rotateY(90deg) translate3d(100%,0,0)}.reveal .slides>section>section[data-transition=default].past,.reveal .slides>section>section[data-transition~=default-out].past,.reveal.default .slides>section>section:not([data-transition]).past{transform:translate3d(0,-300px,0) rotateX(70deg) translate3d(0,-300px,0)}.reveal .slides>section>section[data-transition=default].future,.reveal .slides>section>section[data-transition~=default-in].future,.reveal.default .slides>section>section:not([data-transition]).future{transform:translate3d(0,300px,0) rotateX(-70deg) translate3d(0,300px,0)}.reveal .slides section[data-transition=convex].stack,.reveal.convex .slides section.stack{transform-style:preserve-3d}.reveal .slides>section[data-transition=convex].past,.reveal .slides>section[data-transition~=convex-out].past,.reveal.convex .slides>section:not([data-transition]).past{transform:translate3d(-100%,0,0) rotateY(-90deg) translate3d(-100%,0,0)}.reveal .slides>section[data-transition=convex].future,.reveal .slides>section[data-transition~=convex-in].future,.reveal.convex .slides>section:not([data-transition]).future{transform:translate3d(100%,0,0) rotateY(90deg) translate3d(100%,0,0)}.reveal .slides>section>section[data-transition=convex].past,.reveal .slides>section>section[data-transition~=convex-out].past,.reveal.convex .slides>section>section:not([data-transition]).past{transform:translate3d(0,-300px,0) rotateX(70deg) translate3d(0,-300px,0)}.reveal .slides>section>section[data-transition=convex].future,.reveal .slides>section>section[data-transition~=convex-in].future,.reveal.convex .slides>section>section:not([data-transition]).future{transform:translate3d(0,300px,0) rotateX(-70deg) translate3d(0,300px,0)}.reveal .slides section[data-transition=concave].stack,.reveal.concave .slides section.stack{transform-style:preserve-3d}.reveal .slides>section[data-transition=concave].past,.reveal .slides>section[data-transition~=concave-out].past,.reveal.concave .slides>section:not([data-transition]).past{transform:translate3d(-100%,0,0) rotateY(90deg) translate3d(-100%,0,0)}.reveal .slides>section[data-transition=concave].future,.reveal .slides>section[data-transition~=concave-in].future,.reveal.concave .slides>section:not([data-transition]).future{transform:translate3d(100%,0,0) rotateY(-90deg) translate3d(100%,0,0)}.reveal .slides>section>section[data-transition=concave].past,.reveal .slides>section>section[data-transition~=concave-out].past,.reveal.concave .slides>section>section:not([data-transition]).past{transform:translate3d(0,-80%,0) rotateX(-70deg) translate3d(0,-80%,0)}.reveal .slides>section>section[data-transition=concave].future,.reveal .slides>section>section[data-transition~=concave-in].future,.reveal.concave .slides>section>section:not([data-transition]).future{transform:translate3d(0,80%,0) rotateX(70deg) translate3d(0,80%,0)}.reveal .slides section[data-transition=zoom],.reveal.zoom .slides section:not([data-transition]){transition-timing-function:ease}.reveal .slides>section[data-transition=zoom].past,.reveal .slides>section[data-transition~=zoom-out].past,.reveal.zoom .slides>section:not([data-transition]).past{visibility:hidden;transform:scale(16)}.reveal .slides>section[data-transition=zoom].future,.reveal .slides>section[data-transition~=zoom-in].future,.reveal.zoom .slides>section:not([data-transition]).future{visibility:hidden;transform:scale(.2)}.reveal .slides>section>section[data-transition=zoom].past,.reveal .slides>section>section[data-transition~=zoom-out].past,.reveal.zoom .slides>section>section:not([data-transition]).past{transform:scale(16)}.reveal .slides>section>section[data-transition=zoom].future,.reveal .slides>section>section[data-transition~=zoom-in].future,.reveal.zoom .slides>section>section:not([data-transition]).future{transform:scale(.2)}.reveal.cube .slides{perspective:1300px}.reveal.cube .slides section{padding:30px;min-height:700px;backface-visibility:hidden;box-sizing:border-box;transform-style:preserve-3d}.reveal.center.cube .slides section{min-height:0}.reveal.cube .slides section:not(.stack):before{content:"";position:absolute;display:block;width:100%;height:100%;left:0;top:0;background:rgba(0,0,0,.1);border-radius:4px;transform:translateZ(-20px)}.reveal.cube .slides section:not(.stack):after{content:"";position:absolute;display:block;width:90%;height:30px;left:5%;bottom:0;background:0 0;z-index:1;border-radius:4px;box-shadow:0 95px 25px rgba(0,0,0,.2);transform:translateZ(-90px) rotateX(65deg)}.reveal.cube .slides>section.stack{padding:0;background:0 0}.reveal.cube .slides>section.past{transform-origin:100% 0;transform:translate3d(-100%,0,0) rotateY(-90deg)}.reveal.cube .slides>section.future{transform-origin:0 0;transform:translate3d(100%,0,0) rotateY(90deg)}.reveal.cube .slides>section>section.past{transform-origin:0 100%;transform:translate3d(0,-100%,0) rotateX(90deg)}.reveal.cube .slides>section>section.future{transform-origin:0 0;transform:translate3d(0,100%,0) rotateX(-90deg)}.reveal.page .slides{perspective-origin:0 50%;perspective:3000px}.reveal.page .slides section{padding:30px;min-height:700px;box-sizing:border-box;transform-style:preserve-3d}.reveal.page .slides section.past{z-index:12}.reveal.page .slides section:not(.stack):before{content:"";position:absolute;display:block;width:100%;height:100%;left:0;top:0;background:rgba(0,0,0,.1);transform:translateZ(-20px)}.reveal.page .slides section:not(.stack):after{content:"";position:absolute;display:block;width:90%;height:30px;left:5%;bottom:0;background:0 0;z-index:1;border-radius:4px;box-shadow:0 95px 25px rgba(0,0,0,.2);-webkit-transform:translateZ(-90px) rotateX(65deg)}.reveal.page .slides>section.stack{padding:0;background:0 0}.reveal.page .slides>section.past{transform-origin:0 0;transform:translate3d(-40%,0,0) rotateY(-80deg)}.reveal.page .slides>section.future{transform-origin:100% 0;transform:translate3d(0,0,0)}.reveal.page .slides>section>section.past{transform-origin:0 0;transform:translate3d(0,-40%,0) rotateX(80deg)}.reveal.page .slides>section>section.future{transform-origin:0 100%;transform:translate3d(0,0,0)}.reveal .slides section[data-transition=fade],.reveal.fade .slides section:not([data-transition]),.reveal.fade .slides>section>section:not([data-transition]){transform:none;transition:opacity .5s}.reveal.fade.overview .slides section,.reveal.fade.overview .slides>section>section{transition:none}.reveal .slides section[data-transition=none],.reveal.none .slides section:not([data-transition]){transform:none;transition:none}.reveal .pause-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:#000;visibility:hidden;opacity:0;z-index:100;transition:all 1s ease}.reveal .pause-overlay .resume-button{position:absolute;bottom:20px;right:20px;color:#ccc;border-radius:2px;padding:6px 14px;border:2px solid #ccc;font-size:16px;background:0 0;cursor:pointer}.reveal .pause-overlay .resume-button:hover{color:#fff;border-color:#fff}.reveal.paused .pause-overlay{visibility:visible;opacity:1}.reveal .no-transition,.reveal .no-transition *,.reveal .slides.disable-slide-transitions section{transition:none!important}.reveal .slides.disable-slide-transitions section{transform:none!important}.reveal .backgrounds{position:absolute;width:100%;height:100%;top:0;left:0;perspective:600px}.reveal .slide-background{display:none;position:absolute;width:100%;height:100%;opacity:0;visibility:hidden;overflow:hidden;background-color:rgba(0,0,0,0);transition:all .8s cubic-bezier(.26,.86,.44,.985)}.reveal .slide-background-content{position:absolute;width:100%;height:100%;background-position:50% 50%;background-repeat:no-repeat;background-size:cover}.reveal .slide-background.stack{display:block}.reveal .slide-background.present{opacity:1;visibility:visible;z-index:2}.print-pdf .reveal .slide-background{opacity:1!important;visibility:visible!important}.reveal .slide-background video{position:absolute;width:100%;height:100%;max-width:none;max-height:none;top:0;left:0;object-fit:cover}.reveal .slide-background[data-background-size=contain] video{object-fit:contain}.reveal>.backgrounds .slide-background[data-background-transition=none],.reveal[data-background-transition=none]>.backgrounds .slide-background:not([data-background-transition]){transition:none}.reveal>.backgrounds .slide-background[data-background-transition=slide],.reveal[data-background-transition=slide]>.backgrounds .slide-background:not([data-background-transition]){opacity:1}.reveal>.backgrounds .slide-background.past[data-background-transition=slide],.reveal[data-background-transition=slide]>.backgrounds .slide-background.past:not([data-background-transition]){transform:translate(-100%,0)}.reveal>.backgrounds .slide-background.future[data-background-transition=slide],.reveal[data-background-transition=slide]>.backgrounds .slide-background.future:not([data-background-transition]){transform:translate(100%,0)}.reveal>.backgrounds .slide-background>.slide-background.past[data-background-transition=slide],.reveal[data-background-transition=slide]>.backgrounds .slide-background>.slide-background.past:not([data-background-transition]){transform:translate(0,-100%)}.reveal>.backgrounds .slide-background>.slide-background.future[data-background-transition=slide],.reveal[data-background-transition=slide]>.backgrounds .slide-background>.slide-background.future:not([data-background-transition]){transform:translate(0,100%)}.reveal>.backgrounds .slide-background.past[data-background-transition=convex],.reveal[data-background-transition=convex]>.backgrounds .slide-background.past:not([data-background-transition]){opacity:0;transform:translate3d(-100%,0,0) rotateY(-90deg) translate3d(-100%,0,0)}.reveal>.backgrounds .slide-background.future[data-background-transition=convex],.reveal[data-background-transition=convex]>.backgrounds .slide-background.future:not([data-background-transition]){opacity:0;transform:translate3d(100%,0,0) rotateY(90deg) translate3d(100%,0,0)}.reveal>.backgrounds .slide-background>.slide-background.past[data-background-transition=convex],.reveal[data-background-transition=convex]>.backgrounds .slide-background>.slide-background.past:not([data-background-transition]){opacity:0;transform:translate3d(0,-100%,0) rotateX(90deg) translate3d(0,-100%,0)}.reveal>.backgrounds .slide-background>.slide-background.future[data-background-transition=convex],.reveal[data-background-transition=convex]>.backgrounds .slide-background>.slide-background.future:not([data-background-transition]){opacity:0;transform:translate3d(0,100%,0) rotateX(-90deg) translate3d(0,100%,0)}.reveal>.backgrounds .slide-background.past[data-background-transition=concave],.reveal[data-background-transition=concave]>.backgrounds .slide-background.past:not([data-background-transition]){opacity:0;transform:translate3d(-100%,0,0) rotateY(90deg) translate3d(-100%,0,0)}.reveal>.backgrounds .slide-background.future[data-background-transition=concave],.reveal[data-background-transition=concave]>.backgrounds .slide-background.future:not([data-background-transition]){opacity:0;transform:translate3d(100%,0,0) rotateY(-90deg) translate3d(100%,0,0)}.reveal>.backgrounds .slide-background>.slide-background.past[data-background-transition=concave],.reveal[data-background-transition=concave]>.backgrounds .slide-background>.slide-background.past:not([data-background-transition]){opacity:0;transform:translate3d(0,-100%,0) rotateX(-90deg) translate3d(0,-100%,0)}.reveal>.backgrounds .slide-background>.slide-background.future[data-background-transition=concave],.reveal[data-background-transition=concave]>.backgrounds .slide-background>.slide-background.future:not([data-background-transition]){opacity:0;transform:translate3d(0,100%,0) rotateX(90deg) translate3d(0,100%,0)}.reveal>.backgrounds .slide-background[data-background-transition=zoom],.reveal[data-background-transition=zoom]>.backgrounds .slide-background:not([data-background-transition]){transition-timing-function:ease}.reveal>.backgrounds .slide-background.past[data-background-transition=zoom],.reveal[data-background-transition=zoom]>.backgrounds .slide-background.past:not([data-background-transition]){opacity:0;visibility:hidden;transform:scale(16)}.reveal>.backgrounds .slide-background.future[data-background-transition=zoom],.reveal[data-background-transition=zoom]>.backgrounds .slide-background.future:not([data-background-transition]){opacity:0;visibility:hidden;transform:scale(.2)}.reveal>.backgrounds .slide-background>.slide-background.past[data-background-transition=zoom],.reveal[data-background-transition=zoom]>.backgrounds .slide-background>.slide-background.past:not([data-background-transition]){opacity:0;visibility:hidden;transform:scale(16)}.reveal>.backgrounds .slide-background>.slide-background.future[data-background-transition=zoom],.reveal[data-background-transition=zoom]>.backgrounds .slide-background>.slide-background.future:not([data-background-transition]){opacity:0;visibility:hidden;transform:scale(.2)}.reveal[data-transition-speed=fast]>.backgrounds .slide-background{transition-duration:.4s}.reveal[data-transition-speed=slow]>.backgrounds .slide-background{transition-duration:1.2s}.reveal [data-auto-animate-target^=unmatched]{will-change:opacity}.reveal section[data-auto-animate]:not(.stack):not([data-auto-animate=running]) [data-auto-animate-target^=unmatched]{opacity:0}.reveal.overview{perspective-origin:50% 50%;perspective:700px}.reveal.overview .slides{-moz-transform-style:preserve-3d}.reveal.overview .slides section{height:100%;top:0!important;opacity:1!important;overflow:hidden;visibility:visible!important;cursor:pointer;box-sizing:border-box}.reveal.overview .slides section.present,.reveal.overview .slides section:hover{outline:10px solid rgba(150,150,150,.4);outline-offset:10px}.reveal.overview .slides section .fragment{opacity:1;transition:none}.reveal.overview .slides section:after,.reveal.overview .slides section:before{display:none!important}.reveal.overview .slides>section.stack{padding:0;top:0!important;background:0 0;outline:0;overflow:visible}.reveal.overview .backgrounds{perspective:inherit;-moz-transform-style:preserve-3d}.reveal.overview .backgrounds .slide-background{opacity:1;visibility:visible;outline:10px solid rgba(150,150,150,.1);outline-offset:10px}.reveal.overview .backgrounds .slide-background.stack{overflow:visible}.reveal.overview .slides section,.reveal.overview-deactivating .slides section{transition:none}.reveal.overview .backgrounds .slide-background,.reveal.overview-deactivating .backgrounds .slide-background{transition:none}.reveal.rtl .slides,.reveal.rtl .slides h1,.reveal.rtl .slides h2,.reveal.rtl .slides h3,.reveal.rtl .slides h4,.reveal.rtl .slides h5,.reveal.rtl .slides h6{direction:rtl;font-family:sans-serif}.reveal.rtl code,.reveal.rtl pre{direction:ltr}.reveal.rtl ol,.reveal.rtl ul{text-align:right}.reveal.rtl .progress span{transform-origin:100% 0}.reveal.has-parallax-background .backgrounds{transition:all .8s ease}.reveal.has-parallax-background[data-transition-speed=fast] .backgrounds{transition-duration:.4s}.reveal.has-parallax-background[data-transition-speed=slow] .backgrounds{transition-duration:1.2s}.reveal>.overlay{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1000;background:rgba(0,0,0,.9);transition:all .3s ease}.reveal>.overlay .spinner{position:absolute;display:block;top:50%;left:50%;width:32px;height:32px;margin:-16px 0 0 -16px;z-index:10;background-image:url(data:image/gif;base64,R0lGODlhIAAgAPMAAJmZmf%2F%2F%2F6%2Bvr8nJybW1tcDAwOjo6Nvb26ioqKOjo7Ozs%2FLy8vz8%2FAAAAAAAAAAAACH%2FC05FVFNDQVBFMi4wAwEAAAAh%2FhpDcmVhdGVkIHdpdGggYWpheGxvYWQuaW5mbwAh%2BQQJCgAAACwAAAAAIAAgAAAE5xDISWlhperN52JLhSSdRgwVo1ICQZRUsiwHpTJT4iowNS8vyW2icCF6k8HMMBkCEDskxTBDAZwuAkkqIfxIQyhBQBFvAQSDITM5VDW6XNE4KagNh6Bgwe60smQUB3d4Rz1ZBApnFASDd0hihh12BkE9kjAJVlycXIg7CQIFA6SlnJ87paqbSKiKoqusnbMdmDC2tXQlkUhziYtyWTxIfy6BE8WJt5YJvpJivxNaGmLHT0VnOgSYf0dZXS7APdpB309RnHOG5gDqXGLDaC457D1zZ%2FV%2FnmOM82XiHRLYKhKP1oZmADdEAAAh%2BQQJCgAAACwAAAAAIAAgAAAE6hDISWlZpOrNp1lGNRSdRpDUolIGw5RUYhhHukqFu8DsrEyqnWThGvAmhVlteBvojpTDDBUEIFwMFBRAmBkSgOrBFZogCASwBDEY%2FCZSg7GSE0gSCjQBMVG023xWBhklAnoEdhQEfyNqMIcKjhRsjEdnezB%2BA4k8gTwJhFuiW4dokXiloUepBAp5qaKpp6%2BHo7aWW54wl7obvEe0kRuoplCGepwSx2jJvqHEmGt6whJpGpfJCHmOoNHKaHx61WiSR92E4lbFoq%2BB6QDtuetcaBPnW6%2BO7wDHpIiK9SaVK5GgV543tzjgGcghAgAh%2BQQJCgAAACwAAAAAIAAgAAAE7hDISSkxpOrN5zFHNWRdhSiVoVLHspRUMoyUakyEe8PTPCATW9A14E0UvuAKMNAZKYUZCiBMuBakSQKG8G2FzUWox2AUtAQFcBKlVQoLgQReZhQlCIJesQXI5B0CBnUMOxMCenoCfTCEWBsJColTMANldx15BGs8B5wlCZ9Po6OJkwmRpnqkqnuSrayqfKmqpLajoiW5HJq7FL1Gr2mMMcKUMIiJgIemy7xZtJsTmsM4xHiKv5KMCXqfyUCJEonXPN2rAOIAmsfB3uPoAK%2B%2BG%2Bw48edZPK%2BM6hLJpQg484enXIdQFSS1u6UhksENEQAAIfkECQoAAAAsAAAAACAAIAAABOcQyEmpGKLqzWcZRVUQnZYg1aBSh2GUVEIQ2aQOE%2BG%2BcD4ntpWkZQj1JIiZIogDFFyHI0UxQwFugMSOFIPJftfVAEoZLBbcLEFhlQiqGp1Vd140AUklUN3eCA51C1EWMzMCezCBBmkxVIVHBWd3HHl9JQOIJSdSnJ0TDKChCwUJjoWMPaGqDKannasMo6WnM562R5YluZRwur0wpgqZE7NKUm%2BFNRPIhjBJxKZteWuIBMN4zRMIVIhffcgojwCF117i4nlLnY5ztRLsnOk%2BaV%2BoJY7V7m76PdkS4trKcdg0Zc0tTcKkRAAAIfkECQoAAAAsAAAAACAAIAAABO4QyEkpKqjqzScpRaVkXZWQEximw1BSCUEIlDohrft6cpKCk5xid5MNJTaAIkekKGQkWyKHkvhKsR7ARmitkAYDYRIbUQRQjWBwJRzChi9CRlBcY1UN4g0%2FVNB0AlcvcAYHRyZPdEQFYV8ccwR5HWxEJ02YmRMLnJ1xCYp0Y5idpQuhopmmC2KgojKasUQDk5BNAwwMOh2RtRq5uQuPZKGIJQIGwAwGf6I0JXMpC8C7kXWDBINFMxS4DKMAWVWAGYsAdNqW5uaRxkSKJOZKaU3tPOBZ4DuK2LATgJhkPJMgTwKCdFjyPHEnKxFCDhEAACH5BAkKAAAALAAAAAAgACAAAATzEMhJaVKp6s2nIkolIJ2WkBShpkVRWqqQrhLSEu9MZJKK9y1ZrqYK9WiClmvoUaF8gIQSNeF1Er4MNFn4SRSDARWroAIETg1iVwuHjYB1kYc1mwruwXKC9gmsJXliGxc%2BXiUCby9ydh1sOSdMkpMTBpaXBzsfhoc5l58Gm5yToAaZhaOUqjkDgCWNHAULCwOLaTmzswadEqggQwgHuQsHIoZCHQMMQgQGubVEcxOPFAcMDAYUA85eWARmfSRQCdcMe0zeP1AAygwLlJtPNAAL19DARdPzBOWSm1brJBi45soRAWQAAkrQIykShQ9wVhHCwCQCACH5BAkKAAAALAAAAAAgACAAAATrEMhJaVKp6s2nIkqFZF2VIBWhUsJaTokqUCoBq%2BE71SRQeyqUToLA7VxF0JDyIQh%2FMVVPMt1ECZlfcjZJ9mIKoaTl1MRIl5o4CUKXOwmyrCInCKqcWtvadL2SYhyASyNDJ0uIiRMDjI0Fd30%2FiI2UA5GSS5UDj2l6NoqgOgN4gksEBgYFf0FDqKgHnyZ9OX8HrgYHdHpcHQULXAS2qKpENRg7eAMLC7kTBaixUYFkKAzWAAnLC7FLVxLWDBLKCwaKTULgEwbLA4hJtOkSBNqITT3xEgfLpBtzE%2FjiuL04RGEBgwWhShRgQExHBAAh%2BQQJCgAAACwAAAAAIAAgAAAE7xDISWlSqerNpyJKhWRdlSAVoVLCWk6JKlAqAavhO9UkUHsqlE6CwO1cRdCQ8iEIfzFVTzLdRAmZX3I2SfZiCqGk5dTESJeaOAlClzsJsqwiJwiqnFrb2nS9kmIcgEsjQydLiIlHehhpejaIjzh9eomSjZR%2BipslWIRLAgMDOR2DOqKogTB9pCUJBagDBXR6XB0EBkIIsaRsGGMMAxoDBgYHTKJiUYEGDAzHC9EACcUGkIgFzgwZ0QsSBcXHiQvOwgDdEwfFs0sDzt4S6BK4xYjkDOzn0unFeBzOBijIm1Dgmg5YFQwsCMjp1oJ8LyIAACH5BAkKAAAALAAAAAAgACAAAATwEMhJaVKp6s2nIkqFZF2VIBWhUsJaTokqUCoBq%2BE71SRQeyqUToLA7VxF0JDyIQh%2FMVVPMt1ECZlfcjZJ9mIKoaTl1MRIl5o4CUKXOwmyrCInCKqcWtvadL2SYhyASyNDJ0uIiUd6GGl6NoiPOH16iZKNlH6KmyWFOggHhEEvAwwMA0N9GBsEC6amhnVcEwavDAazGwIDaH1ipaYLBUTCGgQDA8NdHz0FpqgTBwsLqAbWAAnIA4FWKdMLGdYGEgraigbT0OITBcg5QwPT4xLrROZL6AuQAPUS7bxLpoWidY0JtxLHKhwwMJBTHgPKdEQAACH5BAkKAAAALAAAAAAgACAAAATrEMhJaVKp6s2nIkqFZF2VIBWhUsJaTokqUCoBq%2BE71SRQeyqUToLA7VxF0JDyIQh%2FMVVPMt1ECZlfcjZJ9mIKoaTl1MRIl5o4CUKXOwmyrCInCKqcWtvadL2SYhyASyNDJ0uIiUd6GAULDJCRiXo1CpGXDJOUjY%2BYip9DhToJA4RBLwMLCwVDfRgbBAaqqoZ1XBMHswsHtxtFaH1iqaoGNgAIxRpbFAgfPQSqpbgGBqUD1wBXeCYp1AYZ19JJOYgH1KwA4UBvQwXUBxPqVD9L3sbp2BNk2xvvFPJd%2BMFCN6HAAIKgNggY0KtEBAAh%2BQQJCgAAACwAAAAAIAAgAAAE6BDISWlSqerNpyJKhWRdlSAVoVLCWk6JKlAqAavhO9UkUHsqlE6CwO1cRdCQ8iEIfzFVTzLdRAmZX3I2SfYIDMaAFdTESJeaEDAIMxYFqrOUaNW4E4ObYcCXaiBVEgULe0NJaxxtYksjh2NLkZISgDgJhHthkpU4mW6blRiYmZOlh4JWkDqILwUGBnE6TYEbCgevr0N1gH4At7gHiRpFaLNrrq8HNgAJA70AWxQIH1%2BvsYMDAzZQPC9VCNkDWUhGkuE5PxJNwiUK4UfLzOlD4WvzAHaoG9nxPi5d%2BjYUqfAhhykOFwJWiAAAIfkECQoAAAAsAAAAACAAIAAABPAQyElpUqnqzaciSoVkXVUMFaFSwlpOCcMYlErAavhOMnNLNo8KsZsMZItJEIDIFSkLGQoQTNhIsFehRww2CQLKF0tYGKYSg%2BygsZIuNqJksKgbfgIGepNo2cIUB3V1B3IvNiBYNQaDSTtfhhx0CwVPI0UJe0%2Bbm4g5VgcGoqOcnjmjqDSdnhgEoamcsZuXO1aWQy8KAwOAuTYYGwi7w5h%2BKr0SJ8MFihpNbx%2B4Erq7BYBuzsdiH1jCAzoSfl0rVirNbRXlBBlLX%2BBP0XJLAPGzTkAuAOqb0WT5AH7OcdCm5B8TgRwSRKIHQtaLCwg1RAAAOwAAAAAAAAAAAA%3D%3D);visibility:visible;opacity:.6;transition:all .3s ease}.reveal>.overlay header{position:absolute;left:0;top:0;width:100%;padding:5px;z-index:2;box-sizing:border-box}.reveal>.overlay header a{display:inline-block;width:40px;height:40px;line-height:36px;padding:0 10px;float:right;opacity:.6;box-sizing:border-box}.reveal>.overlay header a:hover{opacity:1}.reveal>.overlay header a .icon{display:inline-block;width:20px;height:20px;background-position:50% 50%;background-size:100%;background-repeat:no-repeat}.reveal>.overlay header a.close .icon{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAABkklEQVRYR8WX4VHDMAxG6wnoJrABZQPYBCaBTWAD2g1gE5gg6OOsXuxIlr40d81dfrSJ9V4c2VLK7spHuTJ/5wpM07QXuXc5X0opX2tEJcadjHuV80li/FgxTIEK/5QBCICBD6xEhSMGHgQPgBgLiYVAB1dpSqKDawxTohFw4JSEA3clzgIBPCURwE2JucBR7rhPJJv5OpJwDX+SfDjgx1wACQeJG1aChP9K/IMmdZ8DtESV1WyP3Bt4MwM6sj4NMxMYiqUWHQu4KYA/SYkIjOsm3BXYWMKFDwU2khjCQ4ELJUJ4SmClRArOCmSXGuKma0fYD5CbzHxFpCSGAhfAVSSUGDUk2BWZaff2g6GE15BsBQ9nwmpIGDiyHQddwNTMKkbZaf9fajXQca1EX44puJZUsnY0ObGmITE3GVLCbEhQUjGVt146j6oasWN+49Vph2w1pZ5EansNZqKBm1txbU57iRRcZ86RWMDdWtBJUHBHwoQPi1GV+JCbntmvok7iTX4/Up9mgyTc/FJYDTcndgH/AA5A/CHsyEkVAAAAAElFTkSuQmCC)}.reveal>.overlay header a.external .icon{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAcElEQVRYR+2WSQoAIQwEzf8f7XiOMkUQxUPlGkM3hVmiQfQR9GYnH1SsAQlI4DiBqkCMoNb9y2e90IAEJPAcgdznU9+engMaeJ7Azh5Y1U67gAho4DqBqmB1buAf0MB1AlVBek83ZPkmJMGc1wAR+AAqod/B97TRpQAAAABJRU5ErkJggg==)}.reveal>.overlay .viewport{position:absolute;display:flex;top:50px;right:0;bottom:0;left:0}.reveal>.overlay.overlay-preview .viewport iframe{width:100%;height:100%;max-width:100%;max-height:100%;border:0;opacity:0;visibility:hidden;transition:all .3s ease}.reveal>.overlay.overlay-preview.loaded .viewport iframe{opacity:1;visibility:visible}.reveal>.overlay.overlay-preview.loaded .viewport-inner{position:absolute;z-index:-1;left:0;top:45%;width:100%;text-align:center;letter-spacing:normal}.reveal>.overlay.overlay-preview .x-frame-error{opacity:0;transition:opacity .3s ease .3s}.reveal>.overlay.overlay-preview.loaded .x-frame-error{opacity:1}.reveal>.overlay.overlay-preview.loaded .spinner{opacity:0;visibility:hidden;transform:scale(.2)}.reveal>.overlay.overlay-help .viewport{overflow:auto;color:#fff}.reveal>.overlay.overlay-help .viewport .viewport-inner{width:600px;margin:auto;padding:20px 20px 80px 20px;text-align:center;letter-spacing:normal}.reveal>.overlay.overlay-help .viewport .viewport-inner .title{font-size:20px}.reveal>.overlay.overlay-help .viewport .viewport-inner table{border:1px solid #fff;border-collapse:collapse;font-size:16px}.reveal>.overlay.overlay-help .viewport .viewport-inner table td,.reveal>.overlay.overlay-help .viewport .viewport-inner table th{width:200px;padding:14px;border:1px solid #fff;vertical-align:middle}.reveal>.overlay.overlay-help .viewport .viewport-inner table th{padding-top:20px;padding-bottom:20px}.reveal .playback{position:absolute;left:15px;bottom:20px;z-index:30;cursor:pointer;transition:all .4s ease;-webkit-tap-highlight-color:transparent}.reveal.overview .playback{opacity:0;visibility:hidden}.reveal .hljs{min-height:100%}.reveal .hljs table{margin:initial}.reveal .hljs-ln-code,.reveal .hljs-ln-numbers{padding:0;border:0}.reveal .hljs-ln-numbers{opacity:.6;padding-right:.75em;text-align:right;vertical-align:top}.reveal .hljs.has-highlights tr:not(.highlight-line){opacity:.4}.reveal .hljs.has-highlights.fragment{transition:all .2s ease}.reveal .hljs:not(:first-child).fragment{position:absolute;top:0;left:0;width:100%;box-sizing:border-box}.reveal pre[data-auto-animate-target]{overflow:hidden}.reveal pre[data-auto-animate-target] code{height:100%}.reveal .roll{display:inline-block;line-height:1.2;overflow:hidden;vertical-align:top;perspective:400px;perspective-origin:50% 50%}.reveal .roll:hover{background:0 0;text-shadow:none}.reveal .roll span{display:block;position:relative;padding:0 2px;pointer-events:none;transition:all .4s ease;transform-origin:50% 0;transform-style:preserve-3d;backface-visibility:hidden}.reveal .roll:hover span{background:rgba(0,0,0,.5);transform:translate3d(0,0,-45px) rotateX(90deg)}.reveal .roll span:after{content:attr(data-title);display:block;position:absolute;left:0;top:0;padding:0 2px;backface-visibility:hidden;transform-origin:50% 0;transform:translate3d(0,110%,0) rotateX(-90deg)}.reveal aside.notes{display:none}.reveal .speaker-notes{display:none;position:absolute;width:33.3333333333%;height:100%;top:0;left:100%;padding:14px 18px 14px 18px;z-index:1;font-size:18px;line-height:1.4;border:1px solid rgba(0,0,0,.05);color:#222;background-color:#f5f5f5;overflow:auto;box-sizing:border-box;text-align:left;font-family:Helvetica,sans-serif;-webkit-overflow-scrolling:touch}.reveal .speaker-notes .notes-placeholder{color:#ccc;font-style:italic}.reveal .speaker-notes:focus{outline:0}.reveal .speaker-notes:before{content:"Speaker notes";display:block;margin-bottom:10px;opacity:.5}.reveal.show-notes{max-width:75%;overflow:visible}.reveal.show-notes .speaker-notes{display:block}@media screen and (min-width:1600px){.reveal .speaker-notes{font-size:20px}}@media screen and (max-width:1024px){.reveal.show-notes{border-left:0;max-width:none;max-height:70%;max-height:70vh;overflow:visible}.reveal.show-notes .speaker-notes{top:100%;left:0;width:100%;height:30vh;border:0}}@media screen and (max-width:600px){.reveal.show-notes{max-height:60%;max-height:60vh}.reveal.show-notes .speaker-notes{top:100%;height:40vh}.reveal .speaker-notes{font-size:14px}}.reveal .jump-to-slide{position:absolute;top:15px;left:15px;z-index:30;font-size:32px;-webkit-tap-highlight-color:transparent}.reveal .jump-to-slide-input{background:0 0;padding:8px;font-size:inherit;color:currentColor;border:0}.reveal .jump-to-slide-input::placeholder{color:currentColor;opacity:.5}.reveal.has-dark-background .jump-to-slide-input{color:#fff}.reveal.has-light-background .jump-to-slide-input{color:#222}.reveal .jump-to-slide-input:focus{outline:0}.zoomed .reveal *,.zoomed .reveal :after,.zoomed .reveal :before{backface-visibility:visible!important}.zoomed .reveal .controls,.zoomed .reveal .progress{opacity:0}.zoomed .reveal .roll span{background:0 0}.zoomed .reveal .roll span:after{visibility:hidden}.reveal-viewport.loading-scroll-mode{visibility:hidden}.reveal-viewport.reveal-scroll{margin:0 auto;overflow:auto;overflow-x:hidden;overflow-y:auto;z-index:1;--r-scrollbar-width:7px;--r-scrollbar-trigger-size:5px;--r-controls-spacing:8px}@media screen and (max-width:500px){.reveal-viewport.reveal-scroll{--r-scrollbar-width:3px;--r-scrollbar-trigger-size:3px}}.reveal-viewport.reveal-scroll .backgrounds,.reveal-viewport.reveal-scroll .controls,.reveal-viewport.reveal-scroll .playback,.reveal-viewport.reveal-scroll .progress,.reveal-viewport.reveal-scroll .slide-number,.reveal-viewport.reveal-scroll .speaker-notes{display:none!important}.reveal-viewport.reveal-scroll .reveal{overflow:visible;touch-action:manipulation}.reveal-viewport.reveal-scroll .slides{position:static;pointer-events:initial;left:auto;top:auto;width:100%!important;margin:0;padding:0;overflow:visible;display:block;perspective:none;perspective-origin:50% 50%}.reveal-viewport.reveal-scroll .scroll-page{position:relative;width:100%;height:calc(var(--page-height) + var(--page-scroll-padding));z-index:1;overflow:visible}.reveal-viewport.reveal-scroll .scroll-page-sticky{position:sticky;height:var(--page-height);top:0}.reveal-viewport.reveal-scroll .scroll-page-content{position:absolute;top:0;left:0;width:100%;height:100%;overflow:hidden}.reveal-viewport.reveal-scroll .scroll-page section{visibility:visible!important;display:block!important;position:absolute!important;width:var(--slide-width)!important;height:var(--slide-height)!important;top:50%!important;left:50%!important;opacity:1!important;transform:scale(var(--slide-scale)) translate(-50%,-50%)!important;transform-style:flat!important;transform-origin:0 0!important}.reveal-viewport.reveal-scroll .slide-background{display:block!important;position:absolute;top:0;left:0;width:100%;height:100%;z-index:auto!important;visibility:visible;opacity:1;touch-action:manipulation}.reveal-viewport.reveal-scroll[data-scrollbar=auto]::-webkit-scrollbar,.reveal-viewport.reveal-scroll[data-scrollbar=true]::-webkit-scrollbar{display:none}.reveal-viewport.reveal-scroll[data-scrollbar=auto],.reveal-viewport.reveal-scroll[data-scrollbar=true]{scrollbar-width:none}.reveal-viewport.has-dark-background,.reveal.has-dark-background{--r-overlay-element-bg-color:240,240,240;--r-overlay-element-fg-color:0,0,0}.reveal-viewport.has-light-background,.reveal.has-light-background{--r-overlay-element-bg-color:0,0,0;--r-overlay-element-fg-color:240,240,240}.reveal-viewport.reveal-scroll .scrollbar{position:sticky;top:50%;z-index:20;opacity:0;transition:all .3s ease}.reveal-viewport.reveal-scroll .scrollbar.visible,.reveal-viewport.reveal-scroll .scrollbar:hover{opacity:1}.reveal-viewport.reveal-scroll .scrollbar .scrollbar-inner{position:absolute;width:var(--r-scrollbar-width);height:calc(var(--viewport-height) - var(--r-controls-spacing) * 2);right:var(--r-controls-spacing);top:0;transform:translateY(-50%);border-radius:var(--r-scrollbar-width);z-index:10}.reveal-viewport.reveal-scroll .scrollbar .scrollbar-playhead{position:absolute;width:var(--r-scrollbar-width);height:var(--r-scrollbar-width);top:0;left:0;border-radius:var(--r-scrollbar-width);background-color:rgba(var(--r-overlay-element-bg-color),1);z-index:11;transition:background-color .2s ease}.reveal-viewport.reveal-scroll .scrollbar .scrollbar-slide{position:absolute;width:100%;background-color:rgba(var(--r-overlay-element-bg-color),.2);box-shadow:0 0 0 1px rgba(var(--r-overlay-element-fg-color),.1);border-radius:var(--r-scrollbar-width);transition:background-color .2s ease}.reveal-viewport.reveal-scroll .scrollbar .scrollbar-slide:after{content:"";position:absolute;width:200%;height:100%;top:0;left:-50%;background:rgba(0,0,0,0);z-index:-1}.reveal-viewport.reveal-scroll .scrollbar .scrollbar-slide.active,.reveal-viewport.reveal-scroll .scrollbar .scrollbar-slide:hover{background-color:rgba(var(--r-overlay-element-bg-color),.4)}.reveal-viewport.reveal-scroll .scrollbar .scrollbar-trigger{position:absolute;width:100%;transition:background-color .2s ease}.reveal-viewport.reveal-scroll .scrollbar .scrollbar-slide.active.has-triggers{background-color:rgba(var(--r-overlay-element-bg-color),.4);z-index:10}.reveal-viewport.reveal-scroll .scrollbar .scrollbar-slide.active .scrollbar-trigger:after{content:"";position:absolute;width:var(--r-scrollbar-trigger-size);height:var(--r-scrollbar-trigger-size);border-radius:20px;top:50%;left:50%;transform:translate(-50%,-50%);background-color:rgba(var(--r-overlay-element-bg-color),1);transition:transform .2s ease,opacity .2s ease;opacity:.4}.reveal-viewport.reveal-scroll .scrollbar .scrollbar-slide.active .scrollbar-trigger.active:after,.reveal-viewport.reveal-scroll .scrollbar .scrollbar-slide.active .scrollbar-trigger.active~.scrollbar-trigger:after{opacity:1}.reveal-viewport.reveal-scroll .scrollbar .scrollbar-slide.active .scrollbar-trigger~.scrollbar-trigger.active:after{transform:translate(calc(var(--r-scrollbar-width) * -2),0);background-color:rgba(var(--r-overlay-element-bg-color),1)}html.reveal-print *{-webkit-print-color-adjust:exact}html.reveal-print{width:100%;height:100%;overflow:visible}html.reveal-print body{margin:0 auto!important;border:0;padding:0;float:none!important;overflow:visible}html.reveal-print .nestedarrow,html.reveal-print .reveal .controls,html.reveal-print .reveal .playback,html.reveal-print .reveal .progress,html.reveal-print .reveal.overview,html.reveal-print .state-background{display:none!important}html.reveal-print .reveal pre code{overflow:hidden!important}html.reveal-print .reveal{width:auto!important;height:auto!important;overflow:hidden!important}html.reveal-print .reveal .slides{position:static;width:100%!important;height:auto!important;zoom:1!important;pointer-events:initial;left:auto;top:auto;margin:0!important;padding:0!important;overflow:visible;display:block;perspective:none;perspective-origin:50% 50%}html.reveal-print .reveal .slides .pdf-page{position:relative;overflow:hidden;z-index:1;page-break-after:always}html.reveal-print .reveal .slides .pdf-page:last-of-type{page-break-after:avoid}html.reveal-print .reveal .slides section{visibility:visible!important;display:block!important;position:absolute!important;margin:0!important;padding:0!important;box-sizing:border-box!important;min-height:1px;opacity:1!important;transform-style:flat!important;transform:none!important}html.reveal-print .reveal section.stack{position:relative!important;margin:0!important;padding:0!important;page-break-after:avoid!important;height:auto!important;min-height:auto!important}html.reveal-print .reveal img{box-shadow:none}html.reveal-print .reveal .backgrounds{display:none}html.reveal-print .reveal .slide-background{display:block!important;position:absolute;top:0;left:0;width:100%;height:100%;z-index:auto!important}html.reveal-print .reveal.show-notes{max-width:none;max-height:none}html.reveal-print .reveal .speaker-notes-pdf{display:block;width:100%;height:auto;max-height:none;top:auto;right:auto;bottom:auto;left:auto;z-index:100}html.reveal-print .reveal .speaker-notes-pdf[data-layout=separate-page]{position:relative;color:inherit;background-color:transparent;padding:20px;page-break-after:always;border:0}html.reveal-print .reveal .slide-number-pdf{display:block;position:absolute;font-size:14px;visibility:visible}html.reveal-print .aria-status{display:none}@media print{html:not(.print-pdf){overflow:visible;width:auto;height:auto}html:not(.print-pdf) body{margin:0;padding:0;overflow:visible}html:not(.print-pdf) .reveal{background:#fff;font-size:20pt}html:not(.print-pdf) .reveal .backgrounds,html:not(.print-pdf) .reveal .controls,html:not(.print-pdf) .reveal .progress,html:not(.print-pdf) .reveal .slide-number,html:not(.print-pdf) .reveal .state-background{display:none!important}html:not(.print-pdf) .reveal li,html:not(.print-pdf) .reveal p,html:not(.print-pdf) .reveal td{font-size:20pt!important;color:#000}html:not(.print-pdf) .reveal h1,html:not(.print-pdf) .reveal h2,html:not(.print-pdf) .reveal h3,html:not(.print-pdf) .reveal h4,html:not(.print-pdf) .reveal h5,html:not(.print-pdf) .reveal h6{color:#000!important;height:auto;line-height:normal;text-align:left;letter-spacing:normal}html:not(.print-pdf) .reveal h1{font-size:28pt!important}html:not(.print-pdf) .reveal h2{font-size:24pt!important}html:not(.print-pdf) .reveal h3{font-size:22pt!important}html:not(.print-pdf) .reveal h4{font-size:22pt!important;font-variant:small-caps}html:not(.print-pdf) .reveal h5{font-size:21pt!important}html:not(.print-pdf) .reveal h6{font-size:20pt!important;font-style:italic}html:not(.print-pdf) .reveal a:link,html:not(.print-pdf) .reveal a:visited{color:#000!important;font-weight:700;text-decoration:underline}html:not(.print-pdf) .reveal div,html:not(.print-pdf) .reveal ol,html:not(.print-pdf) .reveal p,html:not(.print-pdf) .reveal ul{visibility:visible;position:static;width:auto;height:auto;display:block;overflow:visible;margin:0;text-align:left!important}html:not(.print-pdf) .reveal pre,html:not(.print-pdf) .reveal table{margin-left:0;margin-right:0}html:not(.print-pdf) .reveal pre code{padding:20px}html:not(.print-pdf) .reveal blockquote{margin:20px 0}html:not(.print-pdf) .reveal .slides{position:static!important;width:auto!important;height:auto!important;left:0!important;top:0!important;margin-left:0!important;margin-top:0!important;padding:0!important;zoom:1!important;transform:none!important;overflow:visible!important;display:block!important;text-align:left!important;perspective:none;perspective-origin:50% 50%}html:not(.print-pdf) .reveal .slides section{visibility:visible!important;position:static!important;width:auto!important;height:auto!important;display:block!important;overflow:visible!important;left:0!important;top:0!important;margin-left:0!important;margin-top:0!important;padding:60px 20px!important;z-index:auto!important;opacity:1!important;page-break-after:always!important;transform-style:flat!important;transform:none!important;transition:none!important}html:not(.print-pdf) .reveal .slides section.stack{padding:0!important}html:not(.print-pdf) .reveal .slides section:last-of-type{page-break-after:avoid!important}html:not(.print-pdf) .reveal .slides section .fragment{opacity:1!important;visibility:visible!important;transform:none!important}html:not(.print-pdf) .reveal .r-fit-text{white-space:normal!important}html:not(.print-pdf) .reveal section img{display:block;margin:15px 0;background:#fff;border:1px solid #666;box-shadow:none}html:not(.print-pdf) .reveal section small{font-size:.8em}html:not(.print-pdf) .reveal .hljs{max-height:100%;white-space:pre-wrap;word-wrap:break-word;word-break:break-word;font-size:15pt}html:not(.print-pdf) .reveal .hljs .hljs-ln-numbers{white-space:nowrap}html:not(.print-pdf) .reveal .hljs td{font-size:inherit!important;color:inherit!important}}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,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QUFBLGlCQUVGLHlDQUNFLFFBQUEsTUFDQSxPQUFBLEtBQUEsRUFDQSxXQUFBLEtBQ0EsT0FBQSxJQUFBLE1BQUEsS0FDQSxXQUFBLEtBRUYsMkNBQ0UsVUFBQSxLQUVGLG1DQUNFLFdBQUEsS0FDQSxZQUFBLFNBQ0EsVUFBQSxXQUNBLFdBQUEsV0FDQSxVQUFBLEtBRUYsb0RBQ0UsWUFBQSxPQUVGLHNDQUNFLFVBQUEsa0JBQ0EsTUFBQSIsImZpbGUiOiJyZXZlYWwuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiByZXZlYWwuanNcbiAqIGh0dHA6Ly9yZXZlYWxqcy5jb21cbiAqIE1JVCBsaWNlbnNlZFxuICpcbiAqIENvcHlyaWdodCAoQykgSGFraW0gRWwgSGF0dGFiLCBodHRwczovL2hha2ltLnNlXG4gKi9cbi8qKlxuICogTGF5b3V0IGhlbHBlcnMuXG4gKi9cbi5yZXZlYWwgLnN0cmV0Y2gsXG4ucmV2ZWFsIC5yLXN0cmV0Y2gge1xuICBtYXgtd2lkdGg6IG5vbmU7XG4gIG1heC1oZWlnaHQ6IG5vbmU7XG59XG5cbi5yZXZlYWwgcHJlLnN0cmV0Y2ggY29kZSxcbi5yZXZlYWwgcHJlLnItc3RyZXRjaCBjb2RlIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4ucmV2ZWFsIC5yLWZpdC10ZXh0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4ucmV2ZWFsIC5yLXN0YWNrIHtcbiAgZGlzcGxheTogZ3JpZDtcbn1cblxuLnJldmVhbCAuci1zdGFjayA+ICoge1xuICBncmlkLWFyZWE6IDEvMTtcbiAgbWFyZ2luOiBhdXRvO1xufVxuXG4ucmV2ZWFsIC5yLXZzdGFjayxcbi5yZXZlYWwgLnItaHN0YWNrIHtcbiAgZGlzcGxheTogZmxleDtcbn1cbi5yZXZlYWwgLnItdnN0YWNrIGltZywgLnJldmVhbCAuci12c3RhY2sgdmlkZW8sXG4ucmV2ZWFsIC5yLWhzdGFjayBpbWcsXG4ucmV2ZWFsIC5yLWhzdGFjayB2aWRlbyB7XG4gIG1pbi13aWR0aDogMDtcbiAgbWluLWhlaWdodDogMDtcbiAgb2JqZWN0LWZpdDogY29udGFpbjtcbn1cblxuLnJldmVhbCAuci12c3RhY2sge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLnJldmVhbCAuci1oc3RhY2sge1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLnJldmVhbCAuaXRlbXMtc3RyZXRjaCB7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xufVxuXG4ucmV2ZWFsIC5pdGVtcy1zdGFydCB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xufVxuXG4ucmV2ZWFsIC5pdGVtcy1jZW50ZXIge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4ucmV2ZWFsIC5pdGVtcy1lbmQge1xuICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG59XG5cbi5yZXZlYWwgLmp1c3RpZnktYmV0d2VlbiB7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcbn1cblxuLnJldmVhbCAuanVzdGlmeS1hcm91bmQge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcbn1cblxuLnJldmVhbCAuanVzdGlmeS1zdGFydCB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbn1cblxuLnJldmVhbCAuanVzdGlmeS1jZW50ZXIge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLnJldmVhbCAuanVzdGlmeS1lbmQge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gKiBHTE9CQUwgU1RZTEVTXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuaHRtbC5yZXZlYWwtZnVsbC1wYWdlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgaGVpZ2h0OiBjYWxjKHZhcigtLXZoLCAxdmgpICogMTAwKTtcbiAgaGVpZ2h0OiAxMDBzdmg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5yZXZlYWwtdmlld3BvcnQge1xuICBoZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIG1hcmdpbjogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgY29sb3I6ICMwMDA7XG4gIC0tci1jb250cm9scy1zcGFjaW5nOiAxMnB4O1xufVxuXG4ucmV2ZWFsLXZpZXdwb3J0OmZ1bGxzY3JlZW4ge1xuICB0b3A6IDAgIWltcG9ydGFudDtcbiAgbGVmdDogMCAhaW1wb3J0YW50O1xuICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbiAgdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAqIFZJRVcgRlJBR01FTlRTXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLnJldmVhbCAuZnJhZ21lbnQge1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xufVxuLnJldmVhbCAuZnJhZ21lbnQ6bm90KC5jdXN0b20pIHtcbiAgb3BhY2l0eTogMDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB3aWxsLWNoYW5nZTogb3BhY2l0eTtcbn1cbi5yZXZlYWwgLmZyYWdtZW50LnZpc2libGUge1xuICBvcGFjaXR5OiAxO1xuICB2aXNpYmlsaXR5OiBpbmhlcml0O1xufVxuLnJldmVhbCAuZnJhZ21lbnQuZGlzYWJsZWQge1xuICB0cmFuc2l0aW9uOiBub25lO1xufVxuXG4ucmV2ZWFsIC5mcmFnbWVudC5ncm93IHtcbiAgb3BhY2l0eTogMTtcbiAgdmlzaWJpbGl0eTogaW5oZXJpdDtcbn1cbi5yZXZlYWwgLmZyYWdtZW50Lmdyb3cudmlzaWJsZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4zKTtcbn1cblxuLnJldmVhbCAuZnJhZ21lbnQuc2hyaW5rIHtcbiAgb3BhY2l0eTogMTtcbiAgdmlzaWJpbGl0eTogaW5oZXJpdDtcbn1cbi5yZXZlYWwgLmZyYWdtZW50LnNocmluay52aXNpYmxlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjcpO1xufVxuXG4ucmV2ZWFsIC5mcmFnbWVudC56b29tLWluIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjEpO1xufVxuLnJldmVhbCAuZnJhZ21lbnQuem9vbS1pbi52aXNpYmxlIHtcbiAgdHJhbnNmb3JtOiBub25lO1xufVxuXG4ucmV2ZWFsIC5mcmFnbWVudC5mYWRlLW91dCB7XG4gIG9wYWNpdHk6IDE7XG4gIHZpc2liaWxpdHk6IGluaGVyaXQ7XG59XG4ucmV2ZWFsIC5mcmFnbWVudC5mYWRlLW91dC52aXNpYmxlIHtcbiAgb3BhY2l0eTogMDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4ucmV2ZWFsIC5mcmFnbWVudC5zZW1pLWZhZGUtb3V0IHtcbiAgb3BhY2l0eTogMTtcbiAgdmlzaWJpbGl0eTogaW5oZXJpdDtcbn1cbi5yZXZlYWwgLmZyYWdtZW50LnNlbWktZmFkZS1vdXQudmlzaWJsZSB7XG4gIG9wYWNpdHk6IDAuNTtcbiAgdmlzaWJpbGl0eTogaW5oZXJpdDtcbn1cblxuLnJldmVhbCAuZnJhZ21lbnQuc3RyaWtlIHtcbiAgb3BhY2l0eTogMTtcbiAgdmlzaWJpbGl0eTogaW5oZXJpdDtcbn1cbi5yZXZlYWwgLmZyYWdtZW50LnN0cmlrZS52aXNpYmxlIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7XG59XG5cbi5yZXZlYWwgLmZyYWdtZW50LmZhZGUtdXAge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCA0MHB4KTtcbn1cbi5yZXZlYWwgLmZyYWdtZW50LmZhZGUtdXAudmlzaWJsZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xufVxuXG4ucmV2ZWFsIC5mcmFnbWVudC5mYWRlLWRvd24ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNDBweCk7XG59XG4ucmV2ZWFsIC5mcmFnbWVudC5mYWRlLWRvd24udmlzaWJsZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xufVxuXG4ucmV2ZWFsIC5mcmFnbWVudC5mYWRlLXJpZ2h0IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTQwcHgsIDApO1xufVxuLnJldmVhbCAuZnJhZ21lbnQuZmFkZS1yaWdodC52aXNpYmxlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG59XG5cbi5yZXZlYWwgLmZyYWdtZW50LmZhZGUtbGVmdCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDQwcHgsIDApO1xufVxuLnJldmVhbCAuZnJhZ21lbnQuZmFkZS1sZWZ0LnZpc2libGUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbn1cblxuLnJldmVhbCAuZnJhZ21lbnQuZmFkZS1pbi10aGVuLW91dCxcbi5yZXZlYWwgLmZyYWdtZW50LmN1cnJlbnQtdmlzaWJsZSB7XG4gIG9wYWNpdHk6IDA7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cbi5yZXZlYWwgLmZyYWdtZW50LmZhZGUtaW4tdGhlbi1vdXQuY3VycmVudC1mcmFnbWVudCxcbi5yZXZlYWwgLmZyYWdtZW50LmN1cnJlbnQtdmlzaWJsZS5jdXJyZW50LWZyYWdtZW50IHtcbiAgb3BhY2l0eTogMTtcbiAgdmlzaWJpbGl0eTogaW5oZXJpdDtcbn1cblxuLnJldmVhbCAuZnJhZ21lbnQuZmFkZS1pbi10aGVuLXNlbWktb3V0IHtcbiAgb3BhY2l0eTogMDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuLnJldmVhbCAuZnJhZ21lbnQuZmFkZS1pbi10aGVuLXNlbWktb3V0LnZpc2libGUge1xuICBvcGFjaXR5OiAwLjU7XG4gIHZpc2liaWxpdHk6IGluaGVyaXQ7XG59XG4ucmV2ZWFsIC5mcmFnbWVudC5mYWRlLWluLXRoZW4tc2VtaS1vdXQuY3VycmVudC1mcmFnbWVudCB7XG4gIG9wYWNpdHk6IDE7XG4gIHZpc2liaWxpdHk6IGluaGVyaXQ7XG59XG5cbi5yZXZlYWwgLmZyYWdtZW50LmhpZ2hsaWdodC1yZWQsXG4ucmV2ZWFsIC5mcmFnbWVudC5oaWdobGlnaHQtY3VycmVudC1yZWQsXG4ucmV2ZWFsIC5mcmFnbWVudC5oaWdobGlnaHQtZ3JlZW4sXG4ucmV2ZWFsIC5mcmFnbWVudC5oaWdobGlnaHQtY3VycmVudC1ncmVlbixcbi5yZXZlYWwgLmZyYWdtZW50LmhpZ2hsaWdodC1ibHVlLFxuLnJldmVhbCAuZnJhZ21lbnQuaGlnaGxpZ2h0LWN1cnJlbnQtYmx1ZSB7XG4gIG9wYWNpdHk6IDE7XG4gIHZpc2liaWxpdHk6IGluaGVyaXQ7XG59XG5cbi5yZXZlYWwgLmZyYWdtZW50LmhpZ2hsaWdodC1yZWQudmlzaWJsZSB7XG4gIGNvbG9yOiAjZmYyYzJkO1xufVxuXG4ucmV2ZWFsIC5mcmFnbWVudC5oaWdobGlnaHQtZ3JlZW4udmlzaWJsZSB7XG4gIGNvbG9yOiAjMTdmZjJlO1xufVxuXG4ucmV2ZWFsIC5mcmFnbWVudC5oaWdobGlnaHQtYmx1ZS52aXNpYmxlIHtcbiAgY29sb3I6ICMxYjkxZmY7XG59XG5cbi5yZXZlYWwgLmZyYWdtZW50LmhpZ2hsaWdodC1jdXJyZW50LXJlZC5jdXJyZW50LWZyYWdtZW50IHtcbiAgY29sb3I6ICNmZjJjMmQ7XG59XG5cbi5yZXZlYWwgLmZyYWdtZW50LmhpZ2hsaWdodC1jdXJyZW50LWdyZWVuLmN1cnJlbnQtZnJhZ21lbnQge1xuICBjb2xvcjogIzE3ZmYyZTtcbn1cblxuLnJldmVhbCAuZnJhZ21lbnQuaGlnaGxpZ2h0LWN1cnJlbnQtYmx1ZS5jdXJyZW50LWZyYWdtZW50IHtcbiAgY29sb3I6ICMxYjkxZmY7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAqIERFRkFVTFQgRUxFTUVOVCBTVFlMRVNcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBGaXhlcyBpc3N1ZSBpbiBDaHJvbWUgd2hlcmUgaXRhbGljIGZvbnRzIGRpZCBub3QgYXBwZWFyIHdoZW4gcHJpbnRpbmcgdG8gUERGICovXG4ucmV2ZWFsOmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG4ucmV2ZWFsIGlmcmFtZSB7XG4gIHotaW5kZXg6IDE7XG59XG5cbi8qKiBQcmV2ZW50cyBsYXllcmluZyBpc3N1ZXMgaW4gY2VydGFpbiBicm93c2VyL3RyYW5zaXRpb24gY29tYmluYXRpb25zICovXG4ucmV2ZWFsIGEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAqIENPTlRST0xTXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuQGtleWZyYW1lcyBib3VuY2UtcmlnaHQge1xuICAwJSwgMTAlLCAyNSUsIDQwJSwgNTAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cbiAgMjAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTBweCk7XG4gIH1cbiAgMzAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTVweCk7XG4gIH1cbn1cbkBrZXlmcmFtZXMgYm91bmNlLWxlZnQge1xuICAwJSwgMTAlLCAyNSUsIDQwJSwgNTAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cbiAgMjAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwcHgpO1xuICB9XG4gIDMwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDVweCk7XG4gIH1cbn1cbkBrZXlmcmFtZXMgYm91bmNlLWRvd24ge1xuICAwJSwgMTAlLCAyNSUsIDQwJSwgNTAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cbiAgMjAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTBweCk7XG4gIH1cbiAgMzAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTVweCk7XG4gIH1cbn1cbi5yZXZlYWwgLmNvbnRyb2xzIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IGF1dG87XG4gIGJvdHRvbTogdmFyKC0tci1jb250cm9scy1zcGFjaW5nKTtcbiAgcmlnaHQ6IHZhcigtLXItY29udHJvbHMtc3BhY2luZyk7XG4gIGxlZnQ6IGF1dG87XG4gIHotaW5kZXg6IDExO1xuICBjb2xvcjogIzAwMDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIGZvbnQtc2l6ZTogMTBweDtcbn1cbi5yZXZlYWwgLmNvbnRyb2xzIGJ1dHRvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcGFkZGluZzogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbiAgb3V0bGluZTogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogY3VycmVudENvbG9yO1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuOTk5OSk7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMnMgZWFzZSwgb3BhY2l0eSAwLjJzIGVhc2UsIHRyYW5zZm9ybSAwLjJzIGVhc2U7XG4gIHotaW5kZXg6IDI7XG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgb3BhY2l0eTogMDtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG59XG4ucmV2ZWFsIC5jb250cm9scyAuY29udHJvbHMtYXJyb3c6YmVmb3JlLFxuLnJldmVhbCAuY29udHJvbHMgLmNvbnRyb2xzLWFycm93OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAyLjZlbTtcbiAgaGVpZ2h0OiAwLjVlbTtcbiAgYm9yZGVyLXJhZGl1czogMC4yNWVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBjdXJyZW50Q29sb3I7XG4gIHRyYW5zaXRpb246IGFsbCAwLjE1cyBlYXNlLCBiYWNrZ3JvdW5kLWNvbG9yIDAuOHMgZWFzZTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogMC4yZW0gNTAlO1xuICB3aWxsLWNoYW5nZTogdHJhbnNmb3JtO1xufVxuLnJldmVhbCAuY29udHJvbHMgLmNvbnRyb2xzLWFycm93IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMy42ZW07XG4gIGhlaWdodDogMy42ZW07XG59XG4ucmV2ZWFsIC5jb250cm9scyAuY29udHJvbHMtYXJyb3c6YmVmb3JlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAuNWVtKSB0cmFuc2xhdGVZKDEuNTVlbSkgcm90YXRlKDQ1ZGVnKTtcbn1cbi5yZXZlYWwgLmNvbnRyb2xzIC5jb250cm9scy1hcnJvdzphZnRlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwLjVlbSkgdHJhbnNsYXRlWSgxLjU1ZW0pIHJvdGF0ZSgtNDVkZWcpO1xufVxuLnJldmVhbCAuY29udHJvbHMgLmNvbnRyb2xzLWFycm93OmhvdmVyOmJlZm9yZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwLjVlbSkgdHJhbnNsYXRlWSgxLjU1ZW0pIHJvdGF0ZSg0MGRlZyk7XG59XG4ucmV2ZWFsIC5jb250cm9scyAuY29udHJvbHMtYXJyb3c6aG92ZXI6YWZ0ZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMC41ZW0pIHRyYW5zbGF0ZVkoMS41NWVtKSByb3RhdGUoLTQwZGVnKTtcbn1cbi5yZXZlYWwgLmNvbnRyb2xzIC5jb250cm9scy1hcnJvdzphY3RpdmU6YmVmb3JlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAuNWVtKSB0cmFuc2xhdGVZKDEuNTVlbSkgcm90YXRlKDM2ZGVnKTtcbn1cbi5yZXZlYWwgLmNvbnRyb2xzIC5jb250cm9scy1hcnJvdzphY3RpdmU6YWZ0ZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMC41ZW0pIHRyYW5zbGF0ZVkoMS41NWVtKSByb3RhdGUoLTM2ZGVnKTtcbn1cbi5yZXZlYWwgLmNvbnRyb2xzIC5uYXZpZ2F0ZS1sZWZ0IHtcbiAgcmlnaHQ6IDYuNGVtO1xuICBib3R0b206IDMuMmVtO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwcHgpO1xufVxuLnJldmVhbCAuY29udHJvbHMgLm5hdmlnYXRlLWxlZnQuaGlnaGxpZ2h0IHtcbiAgYW5pbWF0aW9uOiBib3VuY2UtbGVmdCAycyA1MCBib3RoIGVhc2Utb3V0O1xufVxuLnJldmVhbCAuY29udHJvbHMgLm5hdmlnYXRlLXJpZ2h0IHtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMy4yZW07XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMHB4KTtcbn1cbi5yZXZlYWwgLmNvbnRyb2xzIC5uYXZpZ2F0ZS1yaWdodCAuY29udHJvbHMtYXJyb3cge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xufVxuLnJldmVhbCAuY29udHJvbHMgLm5hdmlnYXRlLXJpZ2h0LmhpZ2hsaWdodCB7XG4gIGFuaW1hdGlvbjogYm91bmNlLXJpZ2h0IDJzIDUwIGJvdGggZWFzZS1vdXQ7XG59XG4ucmV2ZWFsIC5jb250cm9scyAubmF2aWdhdGUtdXAge1xuICByaWdodDogMy4yZW07XG4gIGJvdHRvbTogNi40ZW07XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7XG59XG4ucmV2ZWFsIC5jb250cm9scyAubmF2aWdhdGUtdXAgLmNvbnRyb2xzLWFycm93IHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xufVxuLnJldmVhbCAuY29udHJvbHMgLm5hdmlnYXRlLWRvd24ge1xuICByaWdodDogMy4yZW07XG4gIGJvdHRvbTogLTEuNGVtO1xuICBwYWRkaW5nLWJvdHRvbTogMS40ZW07XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMHB4KTtcbn1cbi5yZXZlYWwgLmNvbnRyb2xzIC5uYXZpZ2F0ZS1kb3duIC5jb250cm9scy1hcnJvdyB7XG4gIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG59XG4ucmV2ZWFsIC5jb250cm9scyAubmF2aWdhdGUtZG93bi5oaWdobGlnaHQge1xuICBhbmltYXRpb246IGJvdW5jZS1kb3duIDJzIDUwIGJvdGggZWFzZS1vdXQ7XG59XG4ucmV2ZWFsIC5jb250cm9sc1tkYXRhLWNvbnRyb2xzLWJhY2stYXJyb3dzPWZhZGVkXSAubmF2aWdhdGUtdXAuZW5hYmxlZCB7XG4gIG9wYWNpdHk6IDAuMztcbn1cbi5yZXZlYWwgLmNvbnRyb2xzW2RhdGEtY29udHJvbHMtYmFjay1hcnJvd3M9ZmFkZWRdIC5uYXZpZ2F0ZS11cC5lbmFibGVkOmhvdmVyIHtcbiAgb3BhY2l0eTogMTtcbn1cbi5yZXZlYWwgLmNvbnRyb2xzW2RhdGEtY29udHJvbHMtYmFjay1hcnJvd3M9aGlkZGVuXSAubmF2aWdhdGUtdXAuZW5hYmxlZCB7XG4gIG9wYWNpdHk6IDA7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cbi5yZXZlYWwgLmNvbnRyb2xzIC5lbmFibGVkIHtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgb3BhY2l0eTogMC45O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRyYW5zZm9ybTogbm9uZTtcbn1cbi5yZXZlYWwgLmNvbnRyb2xzIC5lbmFibGVkLmZyYWdtZW50ZWQge1xuICBvcGFjaXR5OiAwLjU7XG59XG4ucmV2ZWFsIC5jb250cm9scyAuZW5hYmxlZDpob3Zlcixcbi5yZXZlYWwgLmNvbnRyb2xzIC5lbmFibGVkLmZyYWdtZW50ZWQ6aG92ZXIge1xuICBvcGFjaXR5OiAxO1xufVxuXG4ucmV2ZWFsOm5vdCgucnRsKSAuY29udHJvbHNbZGF0YS1jb250cm9scy1iYWNrLWFycm93cz1mYWRlZF0gLm5hdmlnYXRlLWxlZnQuZW5hYmxlZCB7XG4gIG9wYWNpdHk6IDAuMztcbn1cbi5yZXZlYWw6bm90KC5ydGwpIC5jb250cm9sc1tkYXRhLWNvbnRyb2xzLWJhY2stYXJyb3dzPWZhZGVkXSAubmF2aWdhdGUtbGVmdC5lbmFibGVkOmhvdmVyIHtcbiAgb3BhY2l0eTogMTtcbn1cbi5yZXZlYWw6bm90KC5ydGwpIC5jb250cm9sc1tkYXRhLWNvbnRyb2xzLWJhY2stYXJyb3dzPWhpZGRlbl0gLm5hdmlnYXRlLWxlZnQuZW5hYmxlZCB7XG4gIG9wYWNpdHk6IDA7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLnJldmVhbC5ydGwgLmNvbnRyb2xzW2RhdGEtY29udHJvbHMtYmFjay1hcnJvd3M9ZmFkZWRdIC5uYXZpZ2F0ZS1yaWdodC5lbmFibGVkIHtcbiAgb3BhY2l0eTogMC4zO1xufVxuLnJldmVhbC5ydGwgLmNvbnRyb2xzW2RhdGEtY29udHJvbHMtYmFjay1hcnJvd3M9ZmFkZWRdIC5uYXZpZ2F0ZS1yaWdodC5lbmFibGVkOmhvdmVyIHtcbiAgb3BhY2l0eTogMTtcbn1cbi5yZXZlYWwucnRsIC5jb250cm9sc1tkYXRhLWNvbnRyb2xzLWJhY2stYXJyb3dzPWhpZGRlbl0gLm5hdmlnYXRlLXJpZ2h0LmVuYWJsZWQge1xuICBvcGFjaXR5OiAwO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5yZXZlYWxbZGF0YS1uYXZpZ2F0aW9uLW1vZGU9bGluZWFyXS5oYXMtaG9yaXpvbnRhbC1zbGlkZXMgLm5hdmlnYXRlLXVwLFxuLnJldmVhbFtkYXRhLW5hdmlnYXRpb24tbW9kZT1saW5lYXJdLmhhcy1ob3Jpem9udGFsLXNsaWRlcyAubmF2aWdhdGUtZG93biB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5yZXZlYWxbZGF0YS1uYXZpZ2F0aW9uLW1vZGU9bGluZWFyXS5oYXMtaG9yaXpvbnRhbC1zbGlkZXMgLm5hdmlnYXRlLWxlZnQsXG4ucmV2ZWFsOm5vdCguaGFzLXZlcnRpY2FsLXNsaWRlcykgLmNvbnRyb2xzIC5uYXZpZ2F0ZS1sZWZ0IHtcbiAgYm90dG9tOiAxLjRlbTtcbiAgcmlnaHQ6IDUuNWVtO1xufVxuXG4ucmV2ZWFsW2RhdGEtbmF2aWdhdGlvbi1tb2RlPWxpbmVhcl0uaGFzLWhvcml6b250YWwtc2xpZGVzIC5uYXZpZ2F0ZS1yaWdodCxcbi5yZXZlYWw6bm90KC5oYXMtdmVydGljYWwtc2xpZGVzKSAuY29udHJvbHMgLm5hdmlnYXRlLXJpZ2h0IHtcbiAgYm90dG9tOiAxLjRlbTtcbiAgcmlnaHQ6IDAuNWVtO1xufVxuXG4ucmV2ZWFsOm5vdCguaGFzLWhvcml6b250YWwtc2xpZGVzKSAuY29udHJvbHMgLm5hdmlnYXRlLXVwIHtcbiAgcmlnaHQ6IDEuNGVtO1xuICBib3R0b206IDVlbTtcbn1cblxuLnJldmVhbDpub3QoLmhhcy1ob3Jpem9udGFsLXNsaWRlcykgLmNvbnRyb2xzIC5uYXZpZ2F0ZS1kb3duIHtcbiAgcmlnaHQ6IDEuNGVtO1xuICBib3R0b206IDAuNWVtO1xufVxuXG4ucmV2ZWFsLmhhcy1kYXJrLWJhY2tncm91bmQgLmNvbnRyb2xzIHtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5yZXZlYWwuaGFzLWxpZ2h0LWJhY2tncm91bmQgLmNvbnRyb2xzIHtcbiAgY29sb3I6ICMwMDA7XG59XG5cbi5yZXZlYWwubm8taG92ZXIgLmNvbnRyb2xzIC5jb250cm9scy1hcnJvdzpob3ZlcjpiZWZvcmUsXG4ucmV2ZWFsLm5vLWhvdmVyIC5jb250cm9scyAuY29udHJvbHMtYXJyb3c6YWN0aXZlOmJlZm9yZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwLjVlbSkgdHJhbnNsYXRlWSgxLjU1ZW0pIHJvdGF0ZSg0NWRlZyk7XG59XG4ucmV2ZWFsLm5vLWhvdmVyIC5jb250cm9scyAuY29udHJvbHMtYXJyb3c6aG92ZXI6YWZ0ZXIsXG4ucmV2ZWFsLm5vLWhvdmVyIC5jb250cm9scyAuY29udHJvbHMtYXJyb3c6YWN0aXZlOmFmdGVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAuNWVtKSB0cmFuc2xhdGVZKDEuNTVlbSkgcm90YXRlKC00NWRlZyk7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUwMHB4KSB7XG4gIC5yZXZlYWwtdmlld3BvcnQge1xuICAgIC0tci1jb250cm9scy1zcGFjaW5nOiAwLjhlbTtcbiAgfVxuICAucmV2ZWFsIC5jb250cm9sc1tkYXRhLWNvbnRyb2xzLWxheW91dD1lZGdlc10ge1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgfVxuICAucmV2ZWFsIC5jb250cm9sc1tkYXRhLWNvbnRyb2xzLWxheW91dD1lZGdlc10gLm5hdmlnYXRlLWxlZnQsXG4gIC5yZXZlYWwgLmNvbnRyb2xzW2RhdGEtY29udHJvbHMtbGF5b3V0PWVkZ2VzXSAubmF2aWdhdGUtcmlnaHQsXG4gIC5yZXZlYWwgLmNvbnRyb2xzW2RhdGEtY29udHJvbHMtbGF5b3V0PWVkZ2VzXSAubmF2aWdhdGUtdXAsXG4gIC5yZXZlYWwgLmNvbnRyb2xzW2RhdGEtY29udHJvbHMtbGF5b3V0PWVkZ2VzXSAubmF2aWdhdGUtZG93biB7XG4gICAgYm90dG9tOiBhdXRvO1xuICAgIHJpZ2h0OiBhdXRvO1xuICB9XG4gIC5yZXZlYWwgLmNvbnRyb2xzW2RhdGEtY29udHJvbHMtbGF5b3V0PWVkZ2VzXSAubmF2aWdhdGUtbGVmdCB7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogdmFyKC0tci1jb250cm9scy1zcGFjaW5nKTtcbiAgICBtYXJnaW4tdG9wOiAtMS44ZW07XG4gIH1cbiAgLnJldmVhbCAuY29udHJvbHNbZGF0YS1jb250cm9scy1sYXlvdXQ9ZWRnZXNdIC5uYXZpZ2F0ZS1yaWdodCB7XG4gICAgdG9wOiA1MCU7XG4gICAgcmlnaHQ6IHZhcigtLXItY29udHJvbHMtc3BhY2luZyk7XG4gICAgbWFyZ2luLXRvcDogLTEuOGVtO1xuICB9XG4gIC5yZXZlYWwgLmNvbnRyb2xzW2RhdGEtY29udHJvbHMtbGF5b3V0PWVkZ2VzXSAubmF2aWdhdGUtdXAge1xuICAgIHRvcDogdmFyKC0tci1jb250cm9scy1zcGFjaW5nKTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgbWFyZ2luLWxlZnQ6IC0xLjhlbTtcbiAgfVxuICAucmV2ZWFsIC5jb250cm9sc1tkYXRhLWNvbnRyb2xzLWxheW91dD1lZGdlc10gLm5hdmlnYXRlLWRvd24ge1xuICAgIGJvdHRvbTogY2FsYyh2YXIoLS1yLWNvbnRyb2xzLXNwYWNpbmcpIC0gMS40ZW0gKyAwLjNlbSk7XG4gICAgbGVmdDogNTAlO1xuICAgIG1hcmdpbi1sZWZ0OiAtMS44ZW07XG4gIH1cbn1cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAqIFBST0dSRVNTIEJBUlxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi5yZXZlYWwgLnByb2dyZXNzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBub25lO1xuICBoZWlnaHQ6IDNweDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTA7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5yZXZlYWwgLnByb2dyZXNzOmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgaGVpZ2h0OiAxMHB4O1xuICB3aWR0aDogMTAwJTtcbiAgdG9wOiAtMTBweDtcbn1cblxuLnJldmVhbCAucHJvZ3Jlc3Mgc3BhbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBjdXJyZW50Q29sb3I7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSA4MDBtcyBjdWJpYy1iZXppZXIoMC4yNiwgMC44NiwgMC40NCwgMC45ODUpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XG4gIHRyYW5zZm9ybTogc2NhbGVYKDApO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gKiBTTElERSBOVU1CRVJcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4ucmV2ZWFsIC5zbGlkZS1udW1iZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICByaWdodDogOHB4O1xuICBib3R0b206IDhweDtcbiAgei1pbmRleDogMzE7XG4gIGZvbnQtZmFtaWx5OiBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNCk7XG4gIHBhZGRpbmc6IDVweDtcbn1cblxuLnJldmVhbCAuc2xpZGUtbnVtYmVyIGEge1xuICBjb2xvcjogY3VycmVudENvbG9yO1xufVxuXG4ucmV2ZWFsIC5zbGlkZS1udW1iZXItZGVsaW1pdGVyIHtcbiAgbWFyZ2luOiAwIDNweDtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICogU0xJREVTXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLnJldmVhbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdG91Y2gtYWN0aW9uOiBwaW5jaC16b29tO1xufVxuXG4ucmV2ZWFsLmVtYmVkZGVkIHtcbiAgdG91Y2gtYWN0aW9uOiBwYW4teTtcbn1cblxuLnJldmVhbCAuc2xpZGVzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIG1hcmdpbjogYXV0bztcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICB6LWluZGV4OiAxO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBlcnNwZWN0aXZlOiA2MDBweDtcbiAgcGVyc3BlY3RpdmUtb3JpZ2luOiA1MCUgNDAlO1xufVxuXG4ucmV2ZWFsIC5zbGlkZXMgPiBzZWN0aW9uIHtcbiAgcGVyc3BlY3RpdmU6IDYwMHB4O1xufVxuXG4ucmV2ZWFsIC5zbGlkZXMgPiBzZWN0aW9uLFxuLnJldmVhbCAuc2xpZGVzID4gc2VjdGlvbiA+IHNlY3Rpb24ge1xuICBkaXNwbGF5OiBub25lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgei1pbmRleDogMTA7XG4gIHRyYW5zZm9ybS1zdHlsZTogZmxhdDtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtLW9yaWdpbiA4MDBtcyBjdWJpYy1iZXppZXIoMC4yNiwgMC44NiwgMC40NCwgMC45ODUpLCB0cmFuc2Zvcm0gODAwbXMgY3ViaWMtYmV6aWVyKDAuMjYsIDAuODYsIDAuNDQsIDAuOTg1KSwgdmlzaWJpbGl0eSA4MDBtcyBjdWJpYy1iZXppZXIoMC4yNiwgMC44NiwgMC40NCwgMC45ODUpLCBvcGFjaXR5IDgwMG1zIGN1YmljLWJlemllcigwLjI2LCAwLjg2LCAwLjQ0LCAwLjk4NSk7XG59XG5cbi8qIEdsb2JhbCB0cmFuc2l0aW9uIHNwZWVkIHNldHRpbmdzICovXG4ucmV2ZWFsW2RhdGEtdHJhbnNpdGlvbi1zcGVlZD1mYXN0XSAuc2xpZGVzIHNlY3Rpb24ge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA0MDBtcztcbn1cblxuLnJldmVhbFtkYXRhLXRyYW5zaXRpb24tc3BlZWQ9c2xvd10gLnNsaWRlcyBzZWN0aW9uIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMTIwMG1zO1xufVxuXG4vKiBTbGlkZS1zcGVjaWZpYyB0cmFuc2l0aW9uIHNwZWVkIG92ZXJyaWRlcyAqL1xuLnJldmVhbCAuc2xpZGVzIHNlY3Rpb25bZGF0YS10cmFuc2l0aW9uLXNwZWVkPWZhc3RdIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNDAwbXM7XG59XG5cbi5yZXZlYWwgLnNsaWRlcyBzZWN0aW9uW2RhdGEtdHJhbnNpdGlvbi1zcGVlZD1zbG93XSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDEyMDBtcztcbn1cblxuLnJldmVhbCAuc2xpZGVzID4gc2VjdGlvbi5zdGFjayB7XG4gIHBhZGRpbmctdG9wOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLnJldmVhbCAuc2xpZGVzID4gc2VjdGlvbi5wcmVzZW50LFxuLnJldmVhbCAuc2xpZGVzID4gc2VjdGlvbiA+IHNlY3Rpb24ucHJlc2VudCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB6LWluZGV4OiAxMTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLnJldmVhbCAuc2xpZGVzID4gc2VjdGlvbjplbXB0eSxcbi5yZXZlYWwgLnNsaWRlcyA+IHNlY3Rpb24gPiBzZWN0aW9uOmVtcHR5LFxuLnJldmVhbCAuc2xpZGVzID4gc2VjdGlvbltkYXRhLWJhY2tncm91bmQtaW50ZXJhY3RpdmVdLFxuLnJldmVhbCAuc2xpZGVzID4gc2VjdGlvbiA+IHNlY3Rpb25bZGF0YS1iYWNrZ3JvdW5kLWludGVyYWN0aXZlXSB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4ucmV2ZWFsLmNlbnRlcixcbi5yZXZlYWwuY2VudGVyIC5zbGlkZXMsXG4ucmV2ZWFsLmNlbnRlciAuc2xpZGVzIHNlY3Rpb24ge1xuICBtaW4taGVpZ2h0OiAwICFpbXBvcnRhbnQ7XG59XG5cbi8qIERvbid0IGFsbG93IGludGVyYWN0aW9uIHdpdGggaW52aXNpYmxlIHNsaWRlcyAqL1xuLnJldmVhbCAuc2xpZGVzID4gc2VjdGlvbjpub3QoLnByZXNlbnQpLFxuLnJldmVhbCAuc2xpZGVzID4gc2VjdGlvbiA+IHNlY3Rpb246bm90KC5wcmVzZW50KSB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4ucmV2ZWFsLm92ZXJ2aWV3IC5zbGlkZXMgPiBzZWN0aW9uLFxuLnJldmVhbC5vdmVydmlldyAuc2xpZGVzID4gc2VjdGlvbiA+IHNlY3Rpb24ge1xuICBwb2ludGVyLWV2ZW50czogYXV0bztcbn1cblxuLnJldmVhbCAuc2xpZGVzID4gc2VjdGlvbi5wYXN0LFxuLnJldmVhbCAuc2xpZGVzID4gc2VjdGlvbi5mdXR1cmUsXG4ucmV2ZWFsIC5zbGlkZXMgPiBzZWN0aW9uLnBhc3QgPiBzZWN0aW9uLFxuLnJldmVhbCAuc2xpZGVzID4gc2VjdGlvbi5mdXR1cmUgPiBzZWN0aW9uLFxuLnJldmVhbCAuc2xpZGVzID4gc2VjdGlvbiA+IHNlY3Rpb24ucGFzdCxcbi5yZXZlYWwgLnNsaWRlcyA+IHNlY3Rpb24gPiBzZWN0aW9uLmZ1dHVyZSB7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAqIE1peGlucyBmb3IgcmVhZGFiaWxpdHkgb2YgdHJhbnNpdGlvbnNcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gKiBTTElERSBUUkFOU0lUSU9OXG4gKiBBbGlhc2VkICdsaW5lYXInIGZvciBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eVxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi5yZXZlYWwgLnNsaWRlcyA+IHNlY3Rpb25bZGF0YS10cmFuc2l0aW9uPXNsaWRlXS5wYXN0LFxuLnJldmVhbCAuc2xpZGVzID4gc2VjdGlvbltkYXRhLXRyYW5zaXRpb25+PXNsaWRlLW91dF0ucGFzdCxcbi5yZXZlYWwuc2xpZGUgLnNsaWRlcyA+IHNlY3Rpb246bm90KFtkYXRhLXRyYW5zaXRpb25dKS5wYXN0IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTE1MCUsIDApO1xufVxuXG4ucmV2ZWFsIC5zbGlkZXMgPiBzZWN0aW9uW2RhdGEtdHJhbnNpdGlvbj1zbGlkZV0uZnV0dXJlLFxuLnJldmVhbCAuc2xpZGVzID4gc2VjdGlvbltkYXRhLXRyYW5zaXRpb25+PXNsaWRlLWluXS5mdXR1cmUsXG4ucmV2ZWFsLnNsaWRlIC5zbGlkZXMgPiBzZWN0aW9uOm5vdChbZGF0YS10cmFuc2l0aW9uXSkuZnV0dXJlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMTUwJSwgMCk7XG59XG5cbi5yZXZlYWwgLnNsaWRlcyA+IHNlY3Rpb24gPiBzZWN0aW9uW2RhdGEtdHJhbnNpdGlvbj1zbGlkZV0ucGFzdCxcbi5yZXZlYWwgLnNsaWRlcyA+IHNlY3Rpb24gPiBzZWN0aW9uW2RhdGEtdHJhbnNpdGlvbn49c2xpZGUtb3V0XS5wYXN0LFxuLnJldmVhbC5zbGlkZSAuc2xpZGVzID4gc2VjdGlvbiA+IHNlY3Rpb246bm90KFtkYXRhLXRyYW5zaXRpb25dKS5wYXN0IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTE1MCUpO1xufVxuXG4ucmV2ZWFsIC5zbGlkZXMgPiBzZWN0aW9uID4gc2VjdGlvbltkYXRhLXRyYW5zaXRpb249c2xpZGVdLmZ1dHVyZSxcbi5yZXZlYWwgLnNsaWRlcyA+IHNlY3Rpb24gPiBzZWN0aW9uW2RhdGEtdHJhbnNpdGlvbn49c2xpZGUtaW5dLmZ1dHVyZSxcbi5yZXZlYWwuc2xpZGUgLnNsaWRlcyA+IHNlY3Rpb24gPiBzZWN0aW9uOm5vdChbZGF0YS10cmFuc2l0aW9uXSkuZnV0dXJlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMTUwJSk7XG59XG5cbi5yZXZlYWwgLnNsaWRlcyA+IHNlY3Rpb25bZGF0YS10cmFuc2l0aW9uPWxpbmVhcl0ucGFzdCxcbi5yZXZlYWwgLnNsaWRlcyA+IHNlY3Rpb25bZGF0YS10cmFuc2l0aW9ufj1saW5lYXItb3V0XS5wYXN0LFxuLnJldmVhbC5saW5lYXIgLnNsaWRlcyA+IHNlY3Rpb246bm90KFtkYXRhLXRyYW5zaXRpb25dKS5wYXN0IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTE1MCUsIDApO1xufVxuXG4ucmV2ZWFsIC5zbGlkZXMgPiBzZWN0aW9uW2RhdGEtdHJhbnNpdGlvbj1saW5lYXJdLmZ1dHVyZSxcbi5yZXZlYWwgLnNsaWRlcyA+IHNlY3Rpb25bZGF0YS10cmFuc2l0aW9ufj1saW5lYXItaW5dLmZ1dHVyZSxcbi5yZXZlYWwubGluZWFyIC5zbGlkZXMgPiBzZWN0aW9uOm5vdChbZGF0YS10cmFuc2l0aW9uXSkuZnV0dXJlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMTUwJSwgMCk7XG59XG5cbi5yZXZlYWwgLnNsaWRlcyA+IHNlY3Rpb24gPiBzZWN0aW9uW2RhdGEtdHJhbnNpdGlvbj1saW5lYXJdLnBhc3QsXG4ucmV2ZWFsIC5zbGlkZXMgPiBzZWN0aW9uID4gc2VjdGlvbltkYXRhLXRyYW5zaXRpb25+PWxpbmVhci1vdXRdLnBhc3QsXG4ucmV2ZWFsLmxpbmVhciAuc2xpZGVzID4gc2VjdGlvbiA+IHNlY3Rpb246bm90KFtkYXRhLXRyYW5zaXRpb25dKS5wYXN0IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTE1MCUpO1xufVxuXG4ucmV2ZWFsIC5zbGlkZXMgPiBzZWN0aW9uID4gc2VjdGlvbltkYXRhLXRyYW5zaXRpb249bGluZWFyXS5mdXR1cmUsXG4ucmV2ZWFsIC5zbGlkZXMgPiBzZWN0aW9uID4gc2VjdGlvbltkYXRhLXRyYW5zaXRpb25+PWxpbmVhci1pbl0uZnV0dXJlLFxuLnJldmVhbC5saW5lYXIgLnNsaWRlcyA+IHNlY3Rpb24gPiBzZWN0aW9uOm5vdChbZGF0YS10cmFuc2l0aW9uXSkuZnV0dXJlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMTUwJSk7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAqIENPTlZFWCBUUkFOU0lUSU9OXG4gKiBBbGlhc2VkICdkZWZhdWx0JyBmb3IgYmFja3dhcmRzIGNvbXBhdGliaWxpdHlcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4ucmV2ZWFsIC5zbGlkZXMgc2VjdGlvbltkYXRhLXRyYW5zaXRpb249ZGVmYXVsdF0uc3RhY2ssXG4ucmV2ZWFsLmRlZmF1bHQgLnNsaWRlcyBzZWN0aW9uLnN0YWNrIHtcbiAgdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbn1cblxuLnJldmVhbCAuc2xpZGVzID4gc2VjdGlvbltkYXRhLXRyYW5zaXRpb249ZGVmYXVsdF0ucGFzdCxcbi5yZXZlYWwgLnNsaWRlcyA+IHNlY3Rpb25bZGF0YS10cmFuc2l0aW9ufj1kZWZhdWx0LW91dF0ucGFzdCxcbi5yZXZlYWwuZGVmYXVsdCAuc2xpZGVzID4gc2VjdGlvbjpub3QoW2RhdGEtdHJhbnNpdGlvbl0pLnBhc3Qge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKSByb3RhdGVZKC05MGRlZykgdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xufVxuXG4ucmV2ZWFsIC5zbGlkZXMgPiBzZWN0aW9uW2RhdGEtdHJhbnNpdGlvbj1kZWZhdWx0XS5mdXR1cmUsXG4ucmV2ZWFsIC5zbGlkZXMgPiBzZWN0aW9uW2RhdGEtdHJhbnNpdGlvbn49ZGVmYXVsdC1pbl0uZnV0dXJlLFxuLnJldmVhbC5kZWZhdWx0IC5zbGlkZXMgPiBzZWN0aW9uOm5vdChbZGF0YS10cmFuc2l0aW9uXSkuZnV0dXJlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKSByb3RhdGVZKDkwZGVnKSB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcbn1cblxuLnJldmVhbCAuc2xpZGVzID4gc2VjdGlvbiA+IHNlY3Rpb25bZGF0YS10cmFuc2l0aW9uPWRlZmF1bHRdLnBhc3QsXG4ucmV2ZWFsIC5zbGlkZXMgPiBzZWN0aW9uID4gc2VjdGlvbltkYXRhLXRyYW5zaXRpb25+PWRlZmF1bHQtb3V0XS5wYXN0LFxuLnJldmVhbC5kZWZhdWx0IC5zbGlkZXMgPiBzZWN0aW9uID4gc2VjdGlvbjpub3QoW2RhdGEtdHJhbnNpdGlvbl0pLnBhc3Qge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0zMDBweCwgMCkgcm90YXRlWCg3MGRlZykgdHJhbnNsYXRlM2QoMCwgLTMwMHB4LCAwKTtcbn1cblxuLnJldmVhbCAuc2xpZGVzID4gc2VjdGlvbiA+IHNlY3Rpb25bZGF0YS10cmFuc2l0aW9uPWRlZmF1bHRdLmZ1dHVyZSxcbi5yZXZlYWwgLnNsaWRlcyA+IHNlY3Rpb24gPiBzZWN0aW9uW2RhdGEtdHJhbnNpdGlvbn49ZGVmYXVsdC1pbl0uZnV0dXJlLFxuLnJldmVhbC5kZWZhdWx0IC5zbGlkZXMgPiBzZWN0aW9uID4gc2VjdGlvbjpub3QoW2RhdGEtdHJhbnNpdGlvbl0pLmZ1dHVyZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMzAwcHgsIDApIHJvdGF0ZVgoLTcwZGVnKSB0cmFuc2xhdGUzZCgwLCAzMDBweCwgMCk7XG59XG5cbi5yZXZlYWwgLnNsaWRlcyBzZWN0aW9uW2RhdGEtdHJhbnNpdGlvbj1jb252ZXhdLnN0YWNrLFxuLnJldmVhbC5jb252ZXggLnNsaWRlcyBzZWN0aW9uLnN0YWNrIHtcbiAgdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbn1cblxuLnJldmVhbCAuc2xpZGVzID4gc2VjdGlvbltkYXRhLXRyYW5zaXRpb249Y29udmV4XS5wYXN0LFxuLnJldmVhbCAuc2xpZGVzID4gc2VjdGlvbltkYXRhLXRyYW5zaXRpb25+PWNvbnZleC1vdXRdLnBhc3QsXG4ucmV2ZWFsLmNvbnZleCAuc2xpZGVzID4gc2VjdGlvbjpub3QoW2RhdGEtdHJhbnNpdGlvbl0pLnBhc3Qge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKSByb3RhdGVZKC05MGRlZykgdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xufVxuXG4ucmV2ZWFsIC5zbGlkZXMgPiBzZWN0aW9uW2RhdGEtdHJhbnNpdGlvbj1jb252ZXhdLmZ1dHVyZSxcbi5yZXZlYWwgLnNsaWRlcyA+IHNlY3Rpb25bZGF0YS10cmFuc2l0aW9ufj1jb252ZXgtaW5dLmZ1dHVyZSxcbi5yZXZlYWwuY29udmV4IC5zbGlkZXMgPiBzZWN0aW9uOm5vdChbZGF0YS10cmFuc2l0aW9uXSkuZnV0dXJlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKSByb3RhdGVZKDkwZGVnKSB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcbn1cblxuLnJldmVhbCAuc2xpZGVzID4gc2VjdGlvbiA+IHNlY3Rpb25bZGF0YS10cmFuc2l0aW9uPWNvbnZleF0ucGFzdCxcbi5yZXZlYWwgLnNsaWRlcyA+IHNlY3Rpb24gPiBzZWN0aW9uW2RhdGEtdHJhbnNpdGlvbn49Y29udmV4LW91dF0ucGFzdCxcbi5yZXZlYWwuY29udmV4IC5zbGlkZXMgPiBzZWN0aW9uID4gc2VjdGlvbjpub3QoW2RhdGEtdHJhbnNpdGlvbl0pLnBhc3Qge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0zMDBweCwgMCkgcm90YXRlWCg3MGRlZykgdHJhbnNsYXRlM2QoMCwgLTMwMHB4LCAwKTtcbn1cblxuLnJldmVhbCAuc2xpZGVzID4gc2VjdGlvbiA+IHNlY3Rpb25bZGF0YS10cmFuc2l0aW9uPWNvbnZleF0uZnV0dXJlLFxuLnJldmVhbCAuc2xpZGVzID4gc2VjdGlvbiA+IHNlY3Rpb25bZGF0YS10cmFuc2l0aW9ufj1jb252ZXgtaW5dLmZ1dHVyZSxcbi5yZXZlYWwuY29udmV4IC5zbGlkZXMgPiBzZWN0aW9uID4gc2VjdGlvbjpub3QoW2RhdGEtdHJhbnNpdGlvbl0pLmZ1dHVyZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMzAwcHgsIDApIHJvdGF0ZVgoLTcwZGVnKSB0cmFuc2xhdGUzZCgwLCAzMDBweCwgMCk7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAqIENPTkNBVkUgVFJBTlNJVElPTlxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi5yZXZlYWwgLnNsaWRlcyBzZWN0aW9uW2RhdGEtdHJhbnNpdGlvbj1jb25jYXZlXS5zdGFjayxcbi5yZXZlYWwuY29uY2F2ZSAuc2xpZGVzIHNlY3Rpb24uc3RhY2sge1xuICB0cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkO1xufVxuXG4ucmV2ZWFsIC5zbGlkZXMgPiBzZWN0aW9uW2RhdGEtdHJhbnNpdGlvbj1jb25jYXZlXS5wYXN0LFxuLnJldmVhbCAuc2xpZGVzID4gc2VjdGlvbltkYXRhLXRyYW5zaXRpb25+PWNvbmNhdmUtb3V0XS5wYXN0LFxuLnJldmVhbC5jb25jYXZlIC5zbGlkZXMgPiBzZWN0aW9uOm5vdChbZGF0YS10cmFuc2l0aW9uXSkucGFzdCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApIHJvdGF0ZVkoOTBkZWcpIHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcbn1cblxuLnJldmVhbCAuc2xpZGVzID4gc2VjdGlvbltkYXRhLXRyYW5zaXRpb249Y29uY2F2ZV0uZnV0dXJlLFxuLnJldmVhbCAuc2xpZGVzID4gc2VjdGlvbltkYXRhLXRyYW5zaXRpb25+PWNvbmNhdmUtaW5dLmZ1dHVyZSxcbi5yZXZlYWwuY29uY2F2ZSAuc2xpZGVzID4gc2VjdGlvbjpub3QoW2RhdGEtdHJhbnNpdGlvbl0pLmZ1dHVyZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCkgcm90YXRlWSgtOTBkZWcpIHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xufVxuXG4ucmV2ZWFsIC5zbGlkZXMgPiBzZWN0aW9uID4gc2VjdGlvbltkYXRhLXRyYW5zaXRpb249Y29uY2F2ZV0ucGFzdCxcbi5yZXZlYWwgLnNsaWRlcyA+IHNlY3Rpb24gPiBzZWN0aW9uW2RhdGEtdHJhbnNpdGlvbn49Y29uY2F2ZS1vdXRdLnBhc3QsXG4ucmV2ZWFsLmNvbmNhdmUgLnNsaWRlcyA+IHNlY3Rpb24gPiBzZWN0aW9uOm5vdChbZGF0YS10cmFuc2l0aW9uXSkucGFzdCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTgwJSwgMCkgcm90YXRlWCgtNzBkZWcpIHRyYW5zbGF0ZTNkKDAsIC04MCUsIDApO1xufVxuXG4ucmV2ZWFsIC5zbGlkZXMgPiBzZWN0aW9uID4gc2VjdGlvbltkYXRhLXRyYW5zaXRpb249Y29uY2F2ZV0uZnV0dXJlLFxuLnJldmVhbCAuc2xpZGVzID4gc2VjdGlvbiA+IHNlY3Rpb25bZGF0YS10cmFuc2l0aW9ufj1jb25jYXZlLWluXS5mdXR1cmUsXG4ucmV2ZWFsLmNvbmNhdmUgLnNsaWRlcyA+IHNlY3Rpb24gPiBzZWN0aW9uOm5vdChbZGF0YS10cmFuc2l0aW9uXSkuZnV0dXJlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCA4MCUsIDApIHJvdGF0ZVgoNzBkZWcpIHRyYW5zbGF0ZTNkKDAsIDgwJSwgMCk7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAqIFpPT00gVFJBTlNJVElPTlxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi5yZXZlYWwgLnNsaWRlcyBzZWN0aW9uW2RhdGEtdHJhbnNpdGlvbj16b29tXSxcbi5yZXZlYWwuem9vbSAuc2xpZGVzIHNlY3Rpb246bm90KFtkYXRhLXRyYW5zaXRpb25dKSB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlO1xufVxuXG4ucmV2ZWFsIC5zbGlkZXMgPiBzZWN0aW9uW2RhdGEtdHJhbnNpdGlvbj16b29tXS5wYXN0LFxuLnJldmVhbCAuc2xpZGVzID4gc2VjdGlvbltkYXRhLXRyYW5zaXRpb25+PXpvb20tb3V0XS5wYXN0LFxuLnJldmVhbC56b29tIC5zbGlkZXMgPiBzZWN0aW9uOm5vdChbZGF0YS10cmFuc2l0aW9uXSkucGFzdCB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxNik7XG59XG5cbi5yZXZlYWwgLnNsaWRlcyA+IHNlY3Rpb25bZGF0YS10cmFuc2l0aW9uPXpvb21dLmZ1dHVyZSxcbi5yZXZlYWwgLnNsaWRlcyA+IHNlY3Rpb25bZGF0YS10cmFuc2l0aW9ufj16b29tLWluXS5mdXR1cmUsXG4ucmV2ZWFsLnpvb20gLnNsaWRlcyA+IHNlY3Rpb246bm90KFtkYXRhLXRyYW5zaXRpb25dKS5mdXR1cmUge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHRyYW5zZm9ybTogc2NhbGUoMC4yKTtcbn1cblxuLnJldmVhbCAuc2xpZGVzID4gc2VjdGlvbiA+IHNlY3Rpb25bZGF0YS10cmFuc2l0aW9uPXpvb21dLnBhc3QsXG4ucmV2ZWFsIC5zbGlkZXMgPiBzZWN0aW9uID4gc2VjdGlvbltkYXRhLXRyYW5zaXRpb25+PXpvb20tb3V0XS5wYXN0LFxuLnJldmVhbC56b29tIC5zbGlkZXMgPiBzZWN0aW9uID4gc2VjdGlvbjpub3QoW2RhdGEtdHJhbnNpdGlvbl0pLnBhc3Qge1xuICB0cmFuc2Zvcm06IHNjYWxlKDE2KTtcbn1cblxuLnJldmVhbCAuc2xpZGVzID4gc2VjdGlvbiA+IHNlY3Rpb25bZGF0YS10cmFuc2l0aW9uPXpvb21dLmZ1dHVyZSxcbi5yZXZlYWwgLnNsaWRlcyA+IHNlY3Rpb24gPiBzZWN0aW9uW2RhdGEtdHJhbnNpdGlvbn49em9vbS1pbl0uZnV0dXJlLFxuLnJldmVhbC56b29tIC5zbGlkZXMgPiBzZWN0aW9uID4gc2VjdGlvbjpub3QoW2RhdGEtdHJhbnNpdGlvbl0pLmZ1dHVyZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC4yKTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICogQ1VCRSBUUkFOU0lUSU9OXG4gKlxuICogV0FSTklORzpcbiAqIHRoaXMgaXMgZGVwcmVjYXRlZCBhbmQgd2lsbCBiZSByZW1vdmVkIGluIGFcbiAqIGZ1dHVyZSB2ZXJzaW9uLlxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi5yZXZlYWwuY3ViZSAuc2xpZGVzIHtcbiAgcGVyc3BlY3RpdmU6IDEzMDBweDtcbn1cblxuLnJldmVhbC5jdWJlIC5zbGlkZXMgc2VjdGlvbiB7XG4gIHBhZGRpbmc6IDMwcHg7XG4gIG1pbi1oZWlnaHQ6IDcwMHB4O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7XG59XG5cbi5yZXZlYWwuY2VudGVyLmN1YmUgLnNsaWRlcyBzZWN0aW9uIHtcbiAgbWluLWhlaWdodDogMDtcbn1cblxuLnJldmVhbC5jdWJlIC5zbGlkZXMgc2VjdGlvbjpub3QoLnN0YWNrKTpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooLTIwcHgpO1xufVxuXG4ucmV2ZWFsLmN1YmUgLnNsaWRlcyBzZWN0aW9uOm5vdCguc3RhY2spOmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDkwJTtcbiAgaGVpZ2h0OiAzMHB4O1xuICBsZWZ0OiA1JTtcbiAgYm90dG9tOiAwO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICB6LWluZGV4OiAxO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGJveC1zaGFkb3c6IDBweCA5NXB4IDI1cHggcmdiYSgwLCAwLCAwLCAwLjIpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooLTkwcHgpIHJvdGF0ZVgoNjVkZWcpO1xufVxuXG4ucmV2ZWFsLmN1YmUgLnNsaWRlcyA+IHNlY3Rpb24uc3RhY2sge1xuICBwYWRkaW5nOiAwO1xuICBiYWNrZ3JvdW5kOiBub25lO1xufVxuXG4ucmV2ZWFsLmN1YmUgLnNsaWRlcyA+IHNlY3Rpb24ucGFzdCB7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDEwMCUgMCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApIHJvdGF0ZVkoLTkwZGVnKTtcbn1cblxuLnJldmVhbC5jdWJlIC5zbGlkZXMgPiBzZWN0aW9uLmZ1dHVyZSB7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDAlIDAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApIHJvdGF0ZVkoOTBkZWcpO1xufVxuXG4ucmV2ZWFsLmN1YmUgLnNsaWRlcyA+IHNlY3Rpb24gPiBzZWN0aW9uLnBhc3Qge1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAwJSAxMDAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKSByb3RhdGVYKDkwZGVnKTtcbn1cblxuLnJldmVhbC5jdWJlIC5zbGlkZXMgPiBzZWN0aW9uID4gc2VjdGlvbi5mdXR1cmUge1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAwJSAwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKSByb3RhdGVYKC05MGRlZyk7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAqIFBBR0UgVFJBTlNJVElPTlxuICpcbiAqIFdBUk5JTkc6XG4gKiB0aGlzIGlzIGRlcHJlY2F0ZWQgYW5kIHdpbGwgYmUgcmVtb3ZlZCBpbiBhXG4gKiBmdXR1cmUgdmVyc2lvbi5cbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4ucmV2ZWFsLnBhZ2UgLnNsaWRlcyB7XG4gIHBlcnNwZWN0aXZlLW9yaWdpbjogMCUgNTAlO1xuICBwZXJzcGVjdGl2ZTogMzAwMHB4O1xufVxuXG4ucmV2ZWFsLnBhZ2UgLnNsaWRlcyBzZWN0aW9uIHtcbiAgcGFkZGluZzogMzBweDtcbiAgbWluLWhlaWdodDogNzAwcHg7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7XG59XG5cbi5yZXZlYWwucGFnZSAuc2xpZGVzIHNlY3Rpb24ucGFzdCB7XG4gIHotaW5kZXg6IDEyO1xufVxuXG4ucmV2ZWFsLnBhZ2UgLnNsaWRlcyBzZWN0aW9uOm5vdCguc3RhY2spOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjEpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooLTIwcHgpO1xufVxuXG4ucmV2ZWFsLnBhZ2UgLnNsaWRlcyBzZWN0aW9uOm5vdCguc3RhY2spOmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDkwJTtcbiAgaGVpZ2h0OiAzMHB4O1xuICBsZWZ0OiA1JTtcbiAgYm90dG9tOiAwO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICB6LWluZGV4OiAxO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGJveC1zaGFkb3c6IDBweCA5NXB4IDI1cHggcmdiYSgwLCAwLCAwLCAwLjIpO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigtOTBweCkgcm90YXRlWCg2NWRlZyk7XG59XG5cbi5yZXZlYWwucGFnZSAuc2xpZGVzID4gc2VjdGlvbi5zdGFjayB7XG4gIHBhZGRpbmc6IDA7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG59XG5cbi5yZXZlYWwucGFnZSAuc2xpZGVzID4gc2VjdGlvbi5wYXN0IHtcbiAgdHJhbnNmb3JtLW9yaWdpbjogMCUgMCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTQwJSwgMCwgMCkgcm90YXRlWSgtODBkZWcpO1xufVxuXG4ucmV2ZWFsLnBhZ2UgLnNsaWRlcyA+IHNlY3Rpb24uZnV0dXJlIHtcbiAgdHJhbnNmb3JtLW9yaWdpbjogMTAwJSAwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbn1cblxuLnJldmVhbC5wYWdlIC5zbGlkZXMgPiBzZWN0aW9uID4gc2VjdGlvbi5wYXN0IHtcbiAgdHJhbnNmb3JtLW9yaWdpbjogMCUgMCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTQwJSwgMCkgcm90YXRlWCg4MGRlZyk7XG59XG5cbi5yZXZlYWwucGFnZSAuc2xpZGVzID4gc2VjdGlvbiA+IHNlY3Rpb24uZnV0dXJlIHtcbiAgdHJhbnNmb3JtLW9yaWdpbjogMCUgMTAwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICogRkFERSBUUkFOU0lUSU9OXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLnJldmVhbCAuc2xpZGVzIHNlY3Rpb25bZGF0YS10cmFuc2l0aW9uPWZhZGVdLFxuLnJldmVhbC5mYWRlIC5zbGlkZXMgc2VjdGlvbjpub3QoW2RhdGEtdHJhbnNpdGlvbl0pLFxuLnJldmVhbC5mYWRlIC5zbGlkZXMgPiBzZWN0aW9uID4gc2VjdGlvbjpub3QoW2RhdGEtdHJhbnNpdGlvbl0pIHtcbiAgdHJhbnNmb3JtOiBub25lO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNXM7XG59XG5cbi5yZXZlYWwuZmFkZS5vdmVydmlldyAuc2xpZGVzIHNlY3Rpb24sXG4ucmV2ZWFsLmZhZGUub3ZlcnZpZXcgLnNsaWRlcyA+IHNlY3Rpb24gPiBzZWN0aW9uIHtcbiAgdHJhbnNpdGlvbjogbm9uZTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICogTk8gVFJBTlNJVElPTlxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi5yZXZlYWwgLnNsaWRlcyBzZWN0aW9uW2RhdGEtdHJhbnNpdGlvbj1ub25lXSxcbi5yZXZlYWwubm9uZSAuc2xpZGVzIHNlY3Rpb246bm90KFtkYXRhLXRyYW5zaXRpb25dKSB7XG4gIHRyYW5zZm9ybTogbm9uZTtcbiAgdHJhbnNpdGlvbjogbm9uZTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICogUEFVU0VEIE1PREVcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4ucmV2ZWFsIC5wYXVzZS1vdmVybGF5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQ6IGJsYWNrO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIG9wYWNpdHk6IDA7XG4gIHotaW5kZXg6IDEwMDtcbiAgdHJhbnNpdGlvbjogYWxsIDFzIGVhc2U7XG59XG5cbi5yZXZlYWwgLnBhdXNlLW92ZXJsYXkgLnJlc3VtZS1idXR0b24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMjBweDtcbiAgcmlnaHQ6IDIwcHg7XG4gIGNvbG9yOiAjY2NjO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIHBhZGRpbmc6IDZweCAxNHB4O1xuICBib3JkZXI6IDJweCBzb2xpZCAjY2NjO1xuICBmb250LXNpemU6IDE2cHg7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4ucmV2ZWFsIC5wYXVzZS1vdmVybGF5IC5yZXN1bWUtYnV0dG9uOmhvdmVyIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJvcmRlci1jb2xvcjogI2ZmZjtcbn1cblxuLnJldmVhbC5wYXVzZWQgLnBhdXNlLW92ZXJsYXkge1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICBvcGFjaXR5OiAxO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gKiBGQUxMQkFDS1xuICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi5yZXZlYWwgLm5vLXRyYW5zaXRpb24sXG4ucmV2ZWFsIC5uby10cmFuc2l0aW9uICosXG4ucmV2ZWFsIC5zbGlkZXMuZGlzYWJsZS1zbGlkZS10cmFuc2l0aW9ucyBzZWN0aW9uIHtcbiAgdHJhbnNpdGlvbjogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4ucmV2ZWFsIC5zbGlkZXMuZGlzYWJsZS1zbGlkZS10cmFuc2l0aW9ucyBzZWN0aW9uIHtcbiAgdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAqIFBFUi1TTElERSBCQUNLR1JPVU5EU1xuICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi5yZXZlYWwgLmJhY2tncm91bmRzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHBlcnNwZWN0aXZlOiA2MDBweDtcbn1cblxuLnJldmVhbCAuc2xpZGUtYmFja2dyb3VuZCB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb3BhY2l0eTogMDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApO1xuICB0cmFuc2l0aW9uOiBhbGwgODAwbXMgY3ViaWMtYmV6aWVyKDAuMjYsIDAuODYsIDAuNDQsIDAuOTg1KTtcbn1cblxuLnJldmVhbCAuc2xpZGUtYmFja2dyb3VuZC1jb250ZW50IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgNTAlO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xufVxuXG4ucmV2ZWFsIC5zbGlkZS1iYWNrZ3JvdW5kLnN0YWNrIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5yZXZlYWwgLnNsaWRlLWJhY2tncm91bmQucHJlc2VudCB7XG4gIG9wYWNpdHk6IDE7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIHotaW5kZXg6IDI7XG59XG5cbi5wcmludC1wZGYgLnJldmVhbCAuc2xpZGUtYmFja2dyb3VuZCB7XG4gIG9wYWNpdHk6IDEgIWltcG9ydGFudDtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xufVxuXG4vKiBWaWRlbyBiYWNrZ3JvdW5kcyAqL1xuLnJldmVhbCAuc2xpZGUtYmFja2dyb3VuZCB2aWRlbyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgbWF4LXdpZHRoOiBub25lO1xuICBtYXgtaGVpZ2h0OiBub25lO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xufVxuXG4ucmV2ZWFsIC5zbGlkZS1iYWNrZ3JvdW5kW2RhdGEtYmFja2dyb3VuZC1zaXplPWNvbnRhaW5dIHZpZGVvIHtcbiAgb2JqZWN0LWZpdDogY29udGFpbjtcbn1cblxuLyogSW1tZWRpYXRlIHRyYW5zaXRpb24gc3R5bGUgKi9cbi5yZXZlYWxbZGF0YS1iYWNrZ3JvdW5kLXRyYW5zaXRpb249bm9uZV0gPiAuYmFja2dyb3VuZHMgLnNsaWRlLWJhY2tncm91bmQ6bm90KFtkYXRhLWJhY2tncm91bmQtdHJhbnNpdGlvbl0pLFxuLnJldmVhbCA+IC5iYWNrZ3JvdW5kcyAuc2xpZGUtYmFja2dyb3VuZFtkYXRhLWJhY2tncm91bmQtdHJhbnNpdGlvbj1ub25lXSB7XG4gIHRyYW5zaXRpb246IG5vbmU7XG59XG5cbi8qIFNsaWRlICovXG4ucmV2ZWFsW2RhdGEtYmFja2dyb3VuZC10cmFuc2l0aW9uPXNsaWRlXSA+IC5iYWNrZ3JvdW5kcyAuc2xpZGUtYmFja2dyb3VuZDpub3QoW2RhdGEtYmFja2dyb3VuZC10cmFuc2l0aW9uXSksXG4ucmV2ZWFsID4gLmJhY2tncm91bmRzIC5zbGlkZS1iYWNrZ3JvdW5kW2RhdGEtYmFja2dyb3VuZC10cmFuc2l0aW9uPXNsaWRlXSB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5yZXZlYWxbZGF0YS1iYWNrZ3JvdW5kLXRyYW5zaXRpb249c2xpZGVdID4gLmJhY2tncm91bmRzIC5zbGlkZS1iYWNrZ3JvdW5kLnBhc3Q6bm90KFtkYXRhLWJhY2tncm91bmQtdHJhbnNpdGlvbl0pLFxuLnJldmVhbCA+IC5iYWNrZ3JvdW5kcyAuc2xpZGUtYmFja2dyb3VuZC5wYXN0W2RhdGEtYmFja2dyb3VuZC10cmFuc2l0aW9uPXNsaWRlXSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC0xMDAlLCAwKTtcbn1cblxuLnJldmVhbFtkYXRhLWJhY2tncm91bmQtdHJhbnNpdGlvbj1zbGlkZV0gPiAuYmFja2dyb3VuZHMgLnNsaWRlLWJhY2tncm91bmQuZnV0dXJlOm5vdChbZGF0YS1iYWNrZ3JvdW5kLXRyYW5zaXRpb25dKSxcbi5yZXZlYWwgPiAuYmFja2dyb3VuZHMgLnNsaWRlLWJhY2tncm91bmQuZnV0dXJlW2RhdGEtYmFja2dyb3VuZC10cmFuc2l0aW9uPXNsaWRlXSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDEwMCUsIDApO1xufVxuXG4ucmV2ZWFsW2RhdGEtYmFja2dyb3VuZC10cmFuc2l0aW9uPXNsaWRlXSA+IC5iYWNrZ3JvdW5kcyAuc2xpZGUtYmFja2dyb3VuZCA+IC5zbGlkZS1iYWNrZ3JvdW5kLnBhc3Q6bm90KFtkYXRhLWJhY2tncm91bmQtdHJhbnNpdGlvbl0pLFxuLnJldmVhbCA+IC5iYWNrZ3JvdW5kcyAuc2xpZGUtYmFja2dyb3VuZCA+IC5zbGlkZS1iYWNrZ3JvdW5kLnBhc3RbZGF0YS1iYWNrZ3JvdW5kLXRyYW5zaXRpb249c2xpZGVdIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTEwMCUpO1xufVxuXG4ucmV2ZWFsW2RhdGEtYmFja2dyb3VuZC10cmFuc2l0aW9uPXNsaWRlXSA+IC5iYWNrZ3JvdW5kcyAuc2xpZGUtYmFja2dyb3VuZCA+IC5zbGlkZS1iYWNrZ3JvdW5kLmZ1dHVyZTpub3QoW2RhdGEtYmFja2dyb3VuZC10cmFuc2l0aW9uXSksXG4ucmV2ZWFsID4gLmJhY2tncm91bmRzIC5zbGlkZS1iYWNrZ3JvdW5kID4gLnNsaWRlLWJhY2tncm91bmQuZnV0dXJlW2RhdGEtYmFja2dyb3VuZC10cmFuc2l0aW9uPXNsaWRlXSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDEwMCUpO1xufVxuXG4vKiBDb252ZXggKi9cbi5yZXZlYWxbZGF0YS1iYWNrZ3JvdW5kLXRyYW5zaXRpb249Y29udmV4XSA+IC5iYWNrZ3JvdW5kcyAuc2xpZGUtYmFja2dyb3VuZC5wYXN0Om5vdChbZGF0YS1iYWNrZ3JvdW5kLXRyYW5zaXRpb25dKSxcbi5yZXZlYWwgPiAuYmFja2dyb3VuZHMgLnNsaWRlLWJhY2tncm91bmQucGFzdFtkYXRhLWJhY2tncm91bmQtdHJhbnNpdGlvbj1jb252ZXhdIHtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCkgcm90YXRlWSgtOTBkZWcpIHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcbn1cblxuLnJldmVhbFtkYXRhLWJhY2tncm91bmQtdHJhbnNpdGlvbj1jb252ZXhdID4gLmJhY2tncm91bmRzIC5zbGlkZS1iYWNrZ3JvdW5kLmZ1dHVyZTpub3QoW2RhdGEtYmFja2dyb3VuZC10cmFuc2l0aW9uXSksXG4ucmV2ZWFsID4gLmJhY2tncm91bmRzIC5zbGlkZS1iYWNrZ3JvdW5kLmZ1dHVyZVtkYXRhLWJhY2tncm91bmQtdHJhbnNpdGlvbj1jb252ZXhdIHtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKSByb3RhdGVZKDkwZGVnKSB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcbn1cblxuLnJldmVhbFtkYXRhLWJhY2tncm91bmQtdHJhbnNpdGlvbj1jb252ZXhdID4gLmJhY2tncm91bmRzIC5zbGlkZS1iYWNrZ3JvdW5kID4gLnNsaWRlLWJhY2tncm91bmQucGFzdDpub3QoW2RhdGEtYmFja2dyb3VuZC10cmFuc2l0aW9uXSksXG4ucmV2ZWFsID4gLmJhY2tncm91bmRzIC5zbGlkZS1iYWNrZ3JvdW5kID4gLnNsaWRlLWJhY2tncm91bmQucGFzdFtkYXRhLWJhY2tncm91bmQtdHJhbnNpdGlvbj1jb252ZXhdIHtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCkgcm90YXRlWCg5MGRlZykgdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApO1xufVxuXG4ucmV2ZWFsW2RhdGEtYmFja2dyb3VuZC10cmFuc2l0aW9uPWNvbnZleF0gPiAuYmFja2dyb3VuZHMgLnNsaWRlLWJhY2tncm91bmQgPiAuc2xpZGUtYmFja2dyb3VuZC5mdXR1cmU6bm90KFtkYXRhLWJhY2tncm91bmQtdHJhbnNpdGlvbl0pLFxuLnJldmVhbCA+IC5iYWNrZ3JvdW5kcyAuc2xpZGUtYmFja2dyb3VuZCA+IC5zbGlkZS1iYWNrZ3JvdW5kLmZ1dHVyZVtkYXRhLWJhY2tncm91bmQtdHJhbnNpdGlvbj1jb252ZXhdIHtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKSByb3RhdGVYKC05MGRlZykgdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7XG59XG5cbi8qIENvbmNhdmUgKi9cbi5yZXZlYWxbZGF0YS1iYWNrZ3JvdW5kLXRyYW5zaXRpb249Y29uY2F2ZV0gPiAuYmFja2dyb3VuZHMgLnNsaWRlLWJhY2tncm91bmQucGFzdDpub3QoW2RhdGEtYmFja2dyb3VuZC10cmFuc2l0aW9uXSksXG4ucmV2ZWFsID4gLmJhY2tncm91bmRzIC5zbGlkZS1iYWNrZ3JvdW5kLnBhc3RbZGF0YS1iYWNrZ3JvdW5kLXRyYW5zaXRpb249Y29uY2F2ZV0ge1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKSByb3RhdGVZKDkwZGVnKSB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XG59XG5cbi5yZXZlYWxbZGF0YS1iYWNrZ3JvdW5kLXRyYW5zaXRpb249Y29uY2F2ZV0gPiAuYmFja2dyb3VuZHMgLnNsaWRlLWJhY2tncm91bmQuZnV0dXJlOm5vdChbZGF0YS1iYWNrZ3JvdW5kLXRyYW5zaXRpb25dKSxcbi5yZXZlYWwgPiAuYmFja2dyb3VuZHMgLnNsaWRlLWJhY2tncm91bmQuZnV0dXJlW2RhdGEtYmFja2dyb3VuZC10cmFuc2l0aW9uPWNvbmNhdmVdIHtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKSByb3RhdGVZKC05MGRlZykgdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XG59XG5cbi5yZXZlYWxbZGF0YS1iYWNrZ3JvdW5kLXRyYW5zaXRpb249Y29uY2F2ZV0gPiAuYmFja2dyb3VuZHMgLnNsaWRlLWJhY2tncm91bmQgPiAuc2xpZGUtYmFja2dyb3VuZC5wYXN0Om5vdChbZGF0YS1iYWNrZ3JvdW5kLXRyYW5zaXRpb25dKSxcbi5yZXZlYWwgPiAuYmFja2dyb3VuZHMgLnNsaWRlLWJhY2tncm91bmQgPiAuc2xpZGUtYmFja2dyb3VuZC5wYXN0W2RhdGEtYmFja2dyb3VuZC10cmFuc2l0aW9uPWNvbmNhdmVdIHtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCkgcm90YXRlWCgtOTBkZWcpIHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcbn1cblxuLnJldmVhbFtkYXRhLWJhY2tncm91bmQtdHJhbnNpdGlvbj1jb25jYXZlXSA+IC5iYWNrZ3JvdW5kcyAuc2xpZGUtYmFja2dyb3VuZCA+IC5zbGlkZS1iYWNrZ3JvdW5kLmZ1dHVyZTpub3QoW2RhdGEtYmFja2dyb3VuZC10cmFuc2l0aW9uXSksXG4ucmV2ZWFsID4gLmJhY2tncm91bmRzIC5zbGlkZS1iYWNrZ3JvdW5kID4gLnNsaWRlLWJhY2tncm91bmQuZnV0dXJlW2RhdGEtYmFja2dyb3VuZC10cmFuc2l0aW9uPWNvbmNhdmVdIHtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKSByb3RhdGVYKDkwZGVnKSB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTtcbn1cblxuLyogWm9vbSAqL1xuLnJldmVhbFtkYXRhLWJhY2tncm91bmQtdHJhbnNpdGlvbj16b29tXSA+IC5iYWNrZ3JvdW5kcyAuc2xpZGUtYmFja2dyb3VuZDpub3QoW2RhdGEtYmFja2dyb3VuZC10cmFuc2l0aW9uXSksXG4ucmV2ZWFsID4gLmJhY2tncm91bmRzIC5zbGlkZS1iYWNrZ3JvdW5kW2RhdGEtYmFja2dyb3VuZC10cmFuc2l0aW9uPXpvb21dIHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2U7XG59XG5cbi5yZXZlYWxbZGF0YS1iYWNrZ3JvdW5kLXRyYW5zaXRpb249em9vbV0gPiAuYmFja2dyb3VuZHMgLnNsaWRlLWJhY2tncm91bmQucGFzdDpub3QoW2RhdGEtYmFja2dyb3VuZC10cmFuc2l0aW9uXSksXG4ucmV2ZWFsID4gLmJhY2tncm91bmRzIC5zbGlkZS1iYWNrZ3JvdW5kLnBhc3RbZGF0YS1iYWNrZ3JvdW5kLXRyYW5zaXRpb249em9vbV0ge1xuICBvcGFjaXR5OiAwO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHRyYW5zZm9ybTogc2NhbGUoMTYpO1xufVxuXG4ucmV2ZWFsW2RhdGEtYmFja2dyb3VuZC10cmFuc2l0aW9uPXpvb21dID4gLmJhY2tncm91bmRzIC5zbGlkZS1iYWNrZ3JvdW5kLmZ1dHVyZTpub3QoW2RhdGEtYmFja2dyb3VuZC10cmFuc2l0aW9uXSksXG4ucmV2ZWFsID4gLmJhY2tncm91bmRzIC5zbGlkZS1iYWNrZ3JvdW5kLmZ1dHVyZVtkYXRhLWJhY2tncm91bmQtdHJhbnNpdGlvbj16b29tXSB7XG4gIG9wYWNpdHk6IDA7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjIpO1xufVxuXG4ucmV2ZWFsW2RhdGEtYmFja2dyb3VuZC10cmFuc2l0aW9uPXpvb21dID4gLmJhY2tncm91bmRzIC5zbGlkZS1iYWNrZ3JvdW5kID4gLnNsaWRlLWJhY2tncm91bmQucGFzdDpub3QoW2RhdGEtYmFja2dyb3VuZC10cmFuc2l0aW9uXSksXG4ucmV2ZWFsID4gLmJhY2tncm91bmRzIC5zbGlkZS1iYWNrZ3JvdW5kID4gLnNsaWRlLWJhY2tncm91bmQucGFzdFtkYXRhLWJhY2tncm91bmQtdHJhbnNpdGlvbj16b29tXSB7XG4gIG9wYWNpdHk6IDA7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxNik7XG59XG5cbi5yZXZlYWxbZGF0YS1iYWNrZ3JvdW5kLXRyYW5zaXRpb249em9vbV0gPiAuYmFja2dyb3VuZHMgLnNsaWRlLWJhY2tncm91bmQgPiAuc2xpZGUtYmFja2dyb3VuZC5mdXR1cmU6bm90KFtkYXRhLWJhY2tncm91bmQtdHJhbnNpdGlvbl0pLFxuLnJldmVhbCA+IC5iYWNrZ3JvdW5kcyAuc2xpZGUtYmFja2dyb3VuZCA+IC5zbGlkZS1iYWNrZ3JvdW5kLmZ1dHVyZVtkYXRhLWJhY2tncm91bmQtdHJhbnNpdGlvbj16b29tXSB7XG4gIG9wYWNpdHk6IDA7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjIpO1xufVxuXG4vKiBHbG9iYWwgdHJhbnNpdGlvbiBzcGVlZCBzZXR0aW5ncyAqL1xuLnJldmVhbFtkYXRhLXRyYW5zaXRpb24tc3BlZWQ9ZmFzdF0gPiAuYmFja2dyb3VuZHMgLnNsaWRlLWJhY2tncm91bmQge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA0MDBtcztcbn1cblxuLnJldmVhbFtkYXRhLXRyYW5zaXRpb24tc3BlZWQ9c2xvd10gPiAuYmFja2dyb3VuZHMgLnNsaWRlLWJhY2tncm91bmQge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAxMjAwbXM7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAqIEFVVE8gQU5JTUFURVxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi5yZXZlYWwgW2RhdGEtYXV0by1hbmltYXRlLXRhcmdldF49dW5tYXRjaGVkXSB7XG4gIHdpbGwtY2hhbmdlOiBvcGFjaXR5O1xufVxuXG4ucmV2ZWFsIHNlY3Rpb25bZGF0YS1hdXRvLWFuaW1hdGVdOm5vdCguc3RhY2spOm5vdChbZGF0YS1hdXRvLWFuaW1hdGU9cnVubmluZ10pIFtkYXRhLWF1dG8tYW5pbWF0ZS10YXJnZXRePXVubWF0Y2hlZF0ge1xuICBvcGFjaXR5OiAwO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gKiBPVkVSVklFV1xuICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi5yZXZlYWwub3ZlcnZpZXcge1xuICBwZXJzcGVjdGl2ZS1vcmlnaW46IDUwJSA1MCU7XG4gIHBlcnNwZWN0aXZlOiA3MDBweDtcbn1cbi5yZXZlYWwub3ZlcnZpZXcgLnNsaWRlcyB7XG4gIC1tb3otdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbn1cbi5yZXZlYWwub3ZlcnZpZXcgLnNsaWRlcyBzZWN0aW9uIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICB0b3A6IDAgIWltcG9ydGFudDtcbiAgb3BhY2l0eTogMSAhaW1wb3J0YW50O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cbi5yZXZlYWwub3ZlcnZpZXcgLnNsaWRlcyBzZWN0aW9uOmhvdmVyLFxuLnJldmVhbC5vdmVydmlldyAuc2xpZGVzIHNlY3Rpb24ucHJlc2VudCB7XG4gIG91dGxpbmU6IDEwcHggc29saWQgcmdiYSgxNTAsIDE1MCwgMTUwLCAwLjQpO1xuICBvdXRsaW5lLW9mZnNldDogMTBweDtcbn1cbi5yZXZlYWwub3ZlcnZpZXcgLnNsaWRlcyBzZWN0aW9uIC5mcmFnbWVudCB7XG4gIG9wYWNpdHk6IDE7XG4gIHRyYW5zaXRpb246IG5vbmU7XG59XG4ucmV2ZWFsLm92ZXJ2aWV3IC5zbGlkZXMgc2VjdGlvbjphZnRlcixcbi5yZXZlYWwub3ZlcnZpZXcgLnNsaWRlcyBzZWN0aW9uOmJlZm9yZSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cbi5yZXZlYWwub3ZlcnZpZXcgLnNsaWRlcyA+IHNlY3Rpb24uc3RhY2sge1xuICBwYWRkaW5nOiAwO1xuICB0b3A6IDAgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgb3V0bGluZTogbm9uZTtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG4ucmV2ZWFsLm92ZXJ2aWV3IC5iYWNrZ3JvdW5kcyB7XG4gIHBlcnNwZWN0aXZlOiBpbmhlcml0O1xuICAtbW96LXRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7XG59XG4ucmV2ZWFsLm92ZXJ2aWV3IC5iYWNrZ3JvdW5kcyAuc2xpZGUtYmFja2dyb3VuZCB7XG4gIG9wYWNpdHk6IDE7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIG91dGxpbmU6IDEwcHggc29saWQgcmdiYSgxNTAsIDE1MCwgMTUwLCAwLjEpO1xuICBvdXRsaW5lLW9mZnNldDogMTBweDtcbn1cbi5yZXZlYWwub3ZlcnZpZXcgLmJhY2tncm91bmRzIC5zbGlkZS1iYWNrZ3JvdW5kLnN0YWNrIHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi5yZXZlYWwub3ZlcnZpZXcgLnNsaWRlcyBzZWN0aW9uLFxuLnJldmVhbC5vdmVydmlldy1kZWFjdGl2YXRpbmcgLnNsaWRlcyBzZWN0aW9uIHtcbiAgdHJhbnNpdGlvbjogbm9uZTtcbn1cblxuLnJldmVhbC5vdmVydmlldyAuYmFja2dyb3VuZHMgLnNsaWRlLWJhY2tncm91bmQsXG4ucmV2ZWFsLm92ZXJ2aWV3LWRlYWN0aXZhdGluZyAuYmFja2dyb3VuZHMgLnNsaWRlLWJhY2tncm91bmQge1xuICB0cmFuc2l0aW9uOiBub25lO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gKiBSVEwgU1VQUE9SVFxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi5yZXZlYWwucnRsIC5zbGlkZXMsXG4ucmV2ZWFsLnJ0bCAuc2xpZGVzIGgxLFxuLnJldmVhbC5ydGwgLnNsaWRlcyBoMixcbi5yZXZlYWwucnRsIC5zbGlkZXMgaDMsXG4ucmV2ZWFsLnJ0bCAuc2xpZGVzIGg0LFxuLnJldmVhbC5ydGwgLnNsaWRlcyBoNSxcbi5yZXZlYWwucnRsIC5zbGlkZXMgaDYge1xuICBkaXJlY3Rpb246IHJ0bDtcbiAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7XG59XG5cbi5yZXZlYWwucnRsIHByZSxcbi5yZXZlYWwucnRsIGNvZGUge1xuICBkaXJlY3Rpb246IGx0cjtcbn1cblxuLnJldmVhbC5ydGwgb2wsXG4ucmV2ZWFsLnJ0bCB1bCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG4ucmV2ZWFsLnJ0bCAucHJvZ3Jlc3Mgc3BhbiB7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDEwMCUgMDtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICogUEFSQUxMQVggQkFDS0dST1VORFxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi5yZXZlYWwuaGFzLXBhcmFsbGF4LWJhY2tncm91bmQgLmJhY2tncm91bmRzIHtcbiAgdHJhbnNpdGlvbjogYWxsIDAuOHMgZWFzZTtcbn1cblxuLyogR2xvYmFsIHRyYW5zaXRpb24gc3BlZWQgc2V0dGluZ3MgKi9cbi5yZXZlYWwuaGFzLXBhcmFsbGF4LWJhY2tncm91bmRbZGF0YS10cmFuc2l0aW9uLXNwZWVkPWZhc3RdIC5iYWNrZ3JvdW5kcyB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDQwMG1zO1xufVxuXG4ucmV2ZWFsLmhhcy1wYXJhbGxheC1iYWNrZ3JvdW5kW2RhdGEtdHJhbnNpdGlvbi1zcGVlZD1zbG93XSAuYmFja2dyb3VuZHMge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAxMjAwbXM7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAqIE9WRVJMQVkgRk9SIExJTksgUFJFVklFV1MgQU5EIEhFTFBcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4ucmV2ZWFsID4gLm92ZXJsYXkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgei1pbmRleDogMTAwMDtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjkpO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xufVxuXG4ucmV2ZWFsID4gLm92ZXJsYXkgLnNwaW5uZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB3aWR0aDogMzJweDtcbiAgaGVpZ2h0OiAzMnB4O1xuICBtYXJnaW46IC0xNnB4IDAgMCAtMTZweDtcbiAgei1pbmRleDogMTA7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChkYXRhOmltYWdlL2dpZjtiYXNlNjQsUjBsR09EbGhJQUFnQVBNQUFKbVptZiUyRiUyRiUyRjYlMkJ2cjhuSnliVzF0Y0RBd09qbzZOdmIyNmlvcUtPam83T3pzJTJGTHk4dno4JTJGQUFBQUFBQUFBQUFBQ0glMkZDMDVGVkZORFFWQkZNaTR3QXdFQUFBQWglMkZocERjbVZoZEdWa0lIZHBkR2dnWVdwaGVHeHZZV1F1YVc1bWJ3QWglMkJRUUpDZ0FBQUN3QUFBQUFJQUFnQUFBRTV4RElTV2xocGVyTjUySkxoU1NkUmd3Vm8xSUNRWlJVc2l3SHBUSlQ0aW93TlM4dnlXMmljQ0Y2azhITU1Ca0NFRHNreFRCREFad3VBa2txSWZ4SVF5aEJRQkZ2QVFTRElUTTVWRFc2WE5FNEthZ05oNkJnd2U2MHNtUVVCM2Q0UnoxWkJBcG5GQVNEZDBoaWhoMTJCa0U5a2pBSlZseWNYSWc3Q1FJRkE2U2xuSjg3cGFxYlNLaUtvcXVzbmJNZG1EQzJ0WFFsa1VoemlZdHlXVHhJZnk2QkU4V0p0NVlKdnBKaXZ4TmFHbUxIVDBWbk9nU1lmMGRaWFM3QVBkcEIzMDlSbkhPRzVnRHFYR0xEYUM0NTdEMXpaJTJGViUyRm5tT004MlhpSFJMWUtoS1Axb1ptQURkRUFBQWglMkJRUUpDZ0FBQUN3QUFBQUFJQUFnQUFBRTZoRElTV2xacE9yTnAxbEdOUlNkUnBEVW9sSUd3NVJVWWhoSHVrcUZ1OERzckV5cW5XVGhHdkFtaFZsdGVCdm9qcFREREJVRUlGd01GQlJBbUJrU2dPckJGWm9nQ0FTd0JERVklMkZDWlNnN0dTRTBnU0NqUUJNVkcwMjN4V0Joa2xBbm9FZGhRRWZ5TnFNSWNLamhSc2pFZG5lekIlMkJBNGs4Z1R3SmhGdWlXNGRva1hpbG9VZXBCQXA1cWFLcHA2JTJCSG83YVdXNTR3bDdvYnZFZTBrUnVvcGxDR2Vwd1N4MmpKdnFIRW1HdDZ3aEpwR3BmSkNIbU9vTkhLYUh4NjFXaVNSOTJFNGxiRm9xJTJCQjZRRHR1ZXRjYUJQblc2JTJCTzd3REhwSWlLOVNhVks1R2dWNTQzdHpqZ0djZ2hBZ0FoJTJCUVFKQ2dBQUFDd0FBQUFBSUFBZ0FBQUU3aERJU1NreHBPck41ekZITldSZGhTaVZvVkxIc3BSVU1veVVha3lFZThQVFBDQVRXOUExNEUwVXZ1QUtNTkFaS1lVWkNpQk11QmFrU1FLRzhHMkZ6VVdveDJBVXRBUUZjQktsVlFvTGdRUmVaaFFsQ0lKZXNRWEk1QjBDQm5VTU94TUNlbm9DZlRDRVdCc0pDb2xUTUFObGR4MTVCR3M4QjV3bENaOVBvNk9Ka3dtUnBucWtxbnVTcmF5cWZLbXFwTGFqb2lXNUhKcTdGTDFHcjJtTU1jS1VNSWlKZ0llbXk3eFp0SnNUbXNNNHhIaUt2NUtNQ1hxZnlVQ0pFb25YUE4yckFPSUFtc2ZCM3VQb0FLJTJCJTJCRyUyQnc0OGVkWlBLJTJCTTZoTEpwUWc0ODRlblhJZFFGU1MxdTZVaGtzRU5FUUFBSWZrRUNRb0FBQUFzQUFBQUFDQUFJQUFBQk9jUXlFbXBHS0xxeldjWlJWVVFuWllnMWFCU2gyR1VWRUlRMmFRT0UlMkJHJTJCY0Q0bnRwV2taUWoxSklpWklvZ0RGRnlISTBVeFF3RnVnTVNPRklQSmZ0ZlZBRW9aTEJiY0xFRmhsUWlxR3AxVmQxNDBBVWtsVU4zZUNBNTFDMUVXTXpNQ2V6Q0JCbWt4VklWSEJXZDNISGw5SlFPSUpTZFNuSjBUREtDaEN3VUpqb1dNUGFHcURLYW5uYXNNbzZXbk01NjJSNVlsdVpSd3VyMHdwZ3FaRTdOS1VtJTJCRk5SUEloakJKeEtadGVXdUlCTU40elJNSVZJaGZmY2dvandDRjExN2k0bmxMblk1enRSTHNuT2slMkJhViUyQm9KWTdWN203NlBka1M0dHJLY2RnMFpjMHRUY0trUkFBQUlma0VDUW9BQUFBc0FBQUFBQ0FBSUFBQUJPNFF5RWtwS3FqcXpTY3BSYVZrWFpXUUV4aW13MUJTQ1VFSWxEb2hyZnQ2Y3BLQ2s1eGlkNU1OSlRhQUlrZWtLR1FrV3lLSGt2aEtzUjdBUm1pdGtBWURZUkliVVFSUWpXQndKUnpDaGk5Q1JsQmNZMVVONGcwJTJGVk5CMEFsY3ZjQVlIUnlaUGRFUUZZVjhjY3dSNUhXeEVKMDJZbVJNTG5KMXhDWXAwWTVpZHBRdWhvcG1tQzJLZ29qS2FzVVFEazVCTkF3d01PaDJSdFJxNXVRdVBaS0dJSlFJR3dBd0dmNkkwSlhNcEM4QzdrWFdEQklORk14UzRES01BV1ZXQUdZc0FkTnFXNXVhUnhrU0tKT1pLYVUzdFBPQlo0RHVLMkxBVGdKaGtQSk1nVHdLQ2RGanlQSEVuS3hGQ0RoRUFBQ0g1QkFrS0FBQUFMQUFBQUFBZ0FDQUFBQVR6RU1oSmFWS3A2czJuSWtvbElKMldrQlNocGtWUldxcVFyaExTRXU5TVpKS0s5eTFacnFZSzlXaUNsbXZvVWFGOGdJUVNOZUYxRXI0TU5GbjRTUlNEQVJXcm9BSUVUZzFpVnd1SGpZQjFrWWMxbXdydXdYS0M5Z21zSlhsaUd4YyUyQlhpVUNieTl5ZGgxc09TZE1rcE1UQnBhWEJ6c2Zob2M1bDU4R201eVRvQWFaaGFPVXFqa0RnQ1dOSEFVTEN3T0xhVG16c3dhZEVxZ2dRd2dIdVFzSElvWkNIUU1NUWdRR3ViVkVjeE9QRkFjTURBWVVBODVlV0FSbWZTUlFDZGNNZTB6ZVAxQUF5Z3dMbEp0UE5BQUwxOURBUmRQekJPV1NtMWJySkJpNDVzb1JBV1FBQWtyUUl5a1NoUTl3VmhIQ3dDUUNBQ0g1QkFrS0FBQUFMQUFBQUFBZ0FDQUFBQVRyRU1oSmFWS3A2czJuSWtxRlpGMlZJQldoVXNKYVRva3FVQ29CcSUyQkU3MVNSUWV5cVVUb0xBN1Z4RjBKRHlJUWglMkZNVlZQTXQxRUNabGZjalpKOW1JS29hVGwxTVJJbDVvNENVS1hPd215ckNJbkNLcWNXdHZhZEwyU1loeUFTeU5ESjB1SWlSTURqSTBGZDMwJTJGaUkyVUE1R1NTNVVEajJsNk5vcWdPZ040Z2tzRUJnWUZmMEZEcUtnSG55WjlPWDhIcmdZSGRIcGNIUVVMWEFTMnFLcEVOUmc3ZUFNTEM3a1RCYWl4VVlGa0tBeldBQW5MQzdGTFZ4TFdEQkxLQ3dhS1RVTGdFd2JMQTRoSnRPa1NCTnFJVFQzeEVnZkxwQnR6RSUyRmppdUwwNFJHRUJnd1doU2hSZ1FFeEhCQUFoJTJCUVFKQ2dBQUFDd0FBQUFBSUFBZ0FBQUU3eERJU1dsU3Flck5weUpLaFdSZGxTQVZvVkxDV2s2SktsQXFBYXZoTzlVa1VIc3FsRTZDd08xY1JkQ1E4aUVJZnpGVlR6TGRSQW1aWDNJMlNmWmlDcUdrNWRURVNKZWFPQWxDbHpzSnNxd2lKd2lxbkZyYjJuUzlrbUljZ0VzalF5ZExpSWxIZWhocGVqYUlqemg5ZW9tU2paUiUyQmlwc2xXSVJMQWdNRE9SMkRPcUtvZ1RCOXBDVUpCYWdEQlhSNlhCMEVCa0lJc2FSc0dHTU1BeG9EQmdZSFRLSmlVWUVHREF6SEM5RUFDY1VHa0lnRnpnd1owUXNTQmNYSGlRdk93Z0RkRXdmRnMwc0R6dDRTNkJLNHhZamtET3puMHVuRmVCek9CaWpJbTFEZ21nNVlGUXdzQ01qcDFvSjhMeUlBQUNINUJBa0tBQUFBTEFBQUFBQWdBQ0FBQUFUd0VNaEphVktwNnMybklrcUZaRjJWSUJXaFVzSmFUb2txVUNvQnElMkJFNzFTUlFleXFVVG9MQTdWeEYwSkR5SVFoJTJGTVZWUE10MUVDWmxmY2paSjltSUtvYVRsMU1SSWw1bzRDVUtYT3dteXJDSW5DS3FjV3R2YWRMMlNZaHlBU3lOREowdUlpVWQ2R0dsNk5vaVBPSDE2aVpLTmxINktteVdGT2dnSGhFRXZBd3dNQTBOOUdCc0VDNmFtaG5WY0V3YXZEQWF6R3dJRGFIMWlwYVlMQlVUQ0dnUURBOE5kSHowRnBxZ1RCd3NMcUFiV0FBbklBNEZXS2RNTEdkWUdFZ3JhaWdiVDBPSVRCY2c1UXdQVDR4THJST1pMNkF1UUFQVVM3YnhMcG9XaWRZMEp0eExIS2h3d01KQlRIZ1BLZEVRQUFDSDVCQWtLQUFBQUxBQUFBQUFnQUNBQUFBVHJFTWhKYVZLcDZzMm5Ja3FGWkYyVklCV2hVc0phVG9rcVVDb0JxJTJCRTcxU1JRZXlxVVRvTEE3VnhGMEpEeUlRaCUyRk1WVlBNdDFFQ1psZmNqWko5bUlLb2FUbDFNUklsNW80Q1VLWE93bXlyQ0luQ0txY1d0dmFkTDJTWWh5QVN5TkRKMHVJaVVkNkdBVUxESkNSaVhvMUNwR1hESk9ValklMkJZaXA5RGhUb0pBNFJCTHdNTEN3VkRmUmdiQkFhcXFvWjFYQk1Ic3dzSHR4dEZhSDFpcWFvR05nQUl4UnBiRkFnZlBRU3FwYmdHQnFVRDF3QlhlQ1lwMUFZWjE5SkpPWWdIMUt3QTRVQnZRd1hVQnhQcVZEOUwzc2JwMkJOazJ4dnZGUEpkJTJCTUZDTjZIQUFJS2dOZ2dZMEt0RUJBQWglMkJRUUpDZ0FBQUN3QUFBQUFJQUFnQUFBRTZCRElTV2xTcWVyTnB5SktoV1JkbFNBVm9WTENXazZKS2xBcUFhdmhPOVVrVUhzcWxFNkN3TzFjUmRDUThpRUlmekZWVHpMZFJBbVpYM0kyU2ZZSURNYUFGZFRFU0plYUVEQUlNeFlGcXJPVWFOVzRFNE9iWWNDWGFpQlZFZ1VMZTBOSmF4eHRZa3NqaDJOTGtaSVNnRGdKaEh0aGtwVTRtVzZibFJpWW1aT2xoNEpXa0RxSUx3VUdCbkU2VFlFYkNnZXZyME4xZ0g0QXQ3Z0hpUnBGYUxOcnJxOEhOZ0FKQTcwQVd4UUlIMSUyQnZzWU1EQXpaUVBDOVZDTmtEV1VoR2t1RTVQeEpOd2lVSzRVZkx6T2xENFd2ekFIYW9HOW54UGk1ZCUyQmpZVXFmQWhoeWtPRndKV2lBQUFJZmtFQ1FvQUFBQXNBQUFBQUNBQUlBQUFCUEFReUVscFVxbnF6YWNpU29Wa1hWVU1GYUZTd2xwT0NjTVlsRXJBYXZoT01uTkxObzhLc1pzTVpJdEpFSURJRlNrTEdRb1FUTmhJc0ZlaFJ3dzJDUUxLRjB0WUdLWVNnJTJCeWdzWkl1TnFKa3NLZ2JmZ0lHZXBObzJjSVVCM1YxQjNJdk5pQllOUWFEU1R0ZmhoeDBDd1ZQSTBVSmUwJTJCYm00ZzVWZ2NHb3FPY25qbWpxRFNkbmhnRW9hbWNzWnVYTzFhV1F5OEtBd09BdVRZWUd3aTd3NWglMkJLcjBTSjhNRmlocE5ieCUyQjRFcnE3QllCdXpzZGlIMWpDQXpvU2ZsMHJWaXJOYlJYbEJCbExYJTJCQlAwWEpMQVBHelRrQXVBT3FiMFdUNUFIN09jZENtNUI4VGdSd1NSS0lIUXRhTEN3ZzFSQUFBT3dBQUFBQUFBQUFBQUElM0QlM0QpO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICBvcGFjaXR5OiAwLjY7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG59XG5cbi5yZXZlYWwgPiAub3ZlcmxheSBoZWFkZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDVweDtcbiAgei1pbmRleDogMjtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLnJldmVhbCA+IC5vdmVybGF5IGhlYWRlciBhIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogNDBweDtcbiAgaGVpZ2h0OiA0MHB4O1xuICBsaW5lLWhlaWdodDogMzZweDtcbiAgcGFkZGluZzogMCAxMHB4O1xuICBmbG9hdDogcmlnaHQ7XG4gIG9wYWNpdHk6IDAuNjtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLnJldmVhbCA+IC5vdmVybGF5IGhlYWRlciBhOmhvdmVyIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLnJldmVhbCA+IC5vdmVybGF5IGhlYWRlciBhIC5pY29uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMjBweDtcbiAgaGVpZ2h0OiAyMHB4O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgNTAlO1xuICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5cbi5yZXZlYWwgPiAub3ZlcmxheSBoZWFkZXIgYS5jbG9zZSAuaWNvbiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUNBQUFBQWdDQVlBQUFCemVucjBBQUFCa2tsRVFWUllSOFdYNFZIRE1BeEc2d25vSnJBQlpRUFlCQ2FCVFdBRDJnMWdFNWdnNk9Pc1h1eElscjQwZDgxZGZyU0o5VjRjMlZMSzdzcEh1VEovNXdwTTA3UVh1WGM1WDBvcFgydEVKY2Fkakh1VjgwbGkvRmd4VElFSy81UUJDSUNCRDZ4RWhTTUdIZ1FQZ0JnTGlZVkFCMWRwU3FLRGF3eFRvaEZ3NEpTRUEzY2x6Z0lCUENVUndFMkp1Y0JSN3JoUEpKdjVPcEp3RFgrU2ZEamd4MXdBQ1FlSkcxYUNoUDlLL0lNbWRaOER0RVNWMVd5UDNCdDRNd002c2o0Tk14TVlpcVVXSFF1NEtZQS9TWWtJak9zbTNCWFlXTUtGRHdVMmtoakNRNEVMSlVKNFNtQ2xSQXJPQ21TWEd1S21hMGZZRDVDYnpIeEZwQ1NHQWhmQVZTU1VHRFVrMkJXWmFmZjJnNkdFMTVCc0JROW53bXBJR0RpeUhRZGR3TlRNS2tiWmFmOWZhalhRY2ExRVg0NHB1SlpVc25ZME9iR21JVEUzR1ZMQ2JFaFFVakdWdDE0Nmo2b2FzV04rNDlWcGgydzFwWjVFYW5zTlpxS0JtMXR4YlU1N2lSUmNaODZSV01EZFd0QkpVSEJId29RUGkxR1YrSkNibnRtdm9rN2lUWDQvVXA5bWd5VGMvRkpZRFRjbmRnSC9BQTVBL0NIc3lFa1ZBQUFBQUVsRlRrU3VRbUNDKTtcbn1cblxuLnJldmVhbCA+IC5vdmVybGF5IGhlYWRlciBhLmV4dGVybmFsIC5pY29uIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKGRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQ0FBQUFBZ0NBWUFBQUJ6ZW5yMEFBQUFjRWxFUVZSWVIrMldTUW9BSVF3RXpmOGY3WGlPTWtVUXhVUGxHa00zaFZtaVFmUVI5R1luSDFTc0FRbEk0RGlCcWtDTW9OYjl5MmU5MElBRUpQQWNnZHpuVTkrZW5nTWFlSjdBemg1WTFVNjdnQWhvNERxQnFtQjFidUFmME1CMUFsVkJlazgzWlBrbUpNR2Mxd0FSK0FBcW9kL0I5N1RScFFBQUFBQkpSVTVFcmtKZ2dnPT0pO1xufVxuXG4ucmV2ZWFsID4gLm92ZXJsYXkgLnZpZXdwb3J0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBmbGV4O1xuICB0b3A6IDUwcHg7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG59XG5cbi5yZXZlYWwgPiAub3ZlcmxheS5vdmVybGF5LXByZXZpZXcgLnZpZXdwb3J0IGlmcmFtZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWF4LWhlaWdodDogMTAwJTtcbiAgYm9yZGVyOiAwO1xuICBvcGFjaXR5OiAwO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG59XG5cbi5yZXZlYWwgPiAub3ZlcmxheS5vdmVybGF5LXByZXZpZXcubG9hZGVkIC52aWV3cG9ydCBpZnJhbWUge1xuICBvcGFjaXR5OiAxO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xufVxuXG4ucmV2ZWFsID4gLm92ZXJsYXkub3ZlcmxheS1wcmV2aWV3LmxvYWRlZCAudmlld3BvcnQtaW5uZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IC0xO1xuICBsZWZ0OiAwO1xuICB0b3A6IDQ1JTtcbiAgd2lkdGg6IDEwMCU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbn1cblxuLnJldmVhbCA+IC5vdmVybGF5Lm92ZXJsYXktcHJldmlldyAueC1mcmFtZS1lcnJvciB7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBlYXNlIDAuM3M7XG59XG5cbi5yZXZlYWwgPiAub3ZlcmxheS5vdmVybGF5LXByZXZpZXcubG9hZGVkIC54LWZyYW1lLWVycm9yIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLnJldmVhbCA+IC5vdmVybGF5Lm92ZXJsYXktcHJldmlldy5sb2FkZWQgLnNwaW5uZXIge1xuICBvcGFjaXR5OiAwO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHRyYW5zZm9ybTogc2NhbGUoMC4yKTtcbn1cblxuLnJldmVhbCA+IC5vdmVybGF5Lm92ZXJsYXktaGVscCAudmlld3BvcnQge1xuICBvdmVyZmxvdzogYXV0bztcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5yZXZlYWwgPiAub3ZlcmxheS5vdmVybGF5LWhlbHAgLnZpZXdwb3J0IC52aWV3cG9ydC1pbm5lciB7XG4gIHdpZHRoOiA2MDBweDtcbiAgbWFyZ2luOiBhdXRvO1xuICBwYWRkaW5nOiAyMHB4IDIwcHggODBweCAyMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG59XG5cbi5yZXZlYWwgPiAub3ZlcmxheS5vdmVybGF5LWhlbHAgLnZpZXdwb3J0IC52aWV3cG9ydC1pbm5lciAudGl0bGUge1xuICBmb250LXNpemU6IDIwcHg7XG59XG5cbi5yZXZlYWwgPiAub3ZlcmxheS5vdmVybGF5LWhlbHAgLnZpZXdwb3J0IC52aWV3cG9ydC1pbm5lciB0YWJsZSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNmZmY7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIGZvbnQtc2l6ZTogMTZweDtcbn1cblxuLnJldmVhbCA+IC5vdmVybGF5Lm92ZXJsYXktaGVscCAudmlld3BvcnQgLnZpZXdwb3J0LWlubmVyIHRhYmxlIHRoLFxuLnJldmVhbCA+IC5vdmVybGF5Lm92ZXJsYXktaGVscCAudmlld3BvcnQgLnZpZXdwb3J0LWlubmVyIHRhYmxlIHRkIHtcbiAgd2lkdGg6IDIwMHB4O1xuICBwYWRkaW5nOiAxNHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjZmZmO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4ucmV2ZWFsID4gLm92ZXJsYXkub3ZlcmxheS1oZWxwIC52aWV3cG9ydCAudmlld3BvcnQtaW5uZXIgdGFibGUgdGgge1xuICBwYWRkaW5nLXRvcDogMjBweDtcbiAgcGFkZGluZy1ib3R0b206IDIwcHg7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAqIFBMQVlCQUNLIENPTVBPTkVOVFxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi5yZXZlYWwgLnBsYXliYWNrIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAxNXB4O1xuICBib3R0b206IDIwcHg7XG4gIHotaW5kZXg6IDMwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRyYW5zaXRpb246IGFsbCA0MDBtcyBlYXNlO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG59XG5cbi5yZXZlYWwub3ZlcnZpZXcgLnBsYXliYWNrIHtcbiAgb3BhY2l0eTogMDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gKiBDT0RFIEhJR0hMR0lIVElOR1xuICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi5yZXZlYWwgLmhsanMge1xuICBtaW4taGVpZ2h0OiAxMDAlO1xufVxuXG4ucmV2ZWFsIC5obGpzIHRhYmxlIHtcbiAgbWFyZ2luOiBpbml0aWFsO1xufVxuXG4ucmV2ZWFsIC5obGpzLWxuLWNvZGUsXG4ucmV2ZWFsIC5obGpzLWxuLW51bWJlcnMge1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7XG59XG5cbi5yZXZlYWwgLmhsanMtbG4tbnVtYmVycyB7XG4gIG9wYWNpdHk6IDAuNjtcbiAgcGFkZGluZy1yaWdodDogMC43NWVtO1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cblxuLnJldmVhbCAuaGxqcy5oYXMtaGlnaGxpZ2h0cyB0cjpub3QoLmhpZ2hsaWdodC1saW5lKSB7XG4gIG9wYWNpdHk6IDAuNDtcbn1cblxuLnJldmVhbCAuaGxqcy5oYXMtaGlnaGxpZ2h0cy5mcmFnbWVudCB7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XG59XG5cbi5yZXZlYWwgLmhsanM6bm90KDpmaXJzdC1jaGlsZCkuZnJhZ21lbnQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi5yZXZlYWwgcHJlW2RhdGEtYXV0by1hbmltYXRlLXRhcmdldF0ge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4ucmV2ZWFsIHByZVtkYXRhLWF1dG8tYW5pbWF0ZS10YXJnZXRdIGNvZGUge1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAqIFJPTExJTkcgTElOS1NcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4ucmV2ZWFsIC5yb2xsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBsaW5lLWhlaWdodDogMS4yO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICBwZXJzcGVjdGl2ZTogNDAwcHg7XG4gIHBlcnNwZWN0aXZlLW9yaWdpbjogNTAlIDUwJTtcbn1cblxuLnJldmVhbCAucm9sbDpob3ZlciB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuXG4ucmV2ZWFsIC5yb2xsIHNwYW4ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAwIDJweDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIHRyYW5zaXRpb246IGFsbCA0MDBtcyBlYXNlO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgMCU7XG4gIHRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLnJldmVhbCAucm9sbDpob3ZlciBzcGFuIHtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjUpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDBweCwgMHB4LCAtNDVweCkgcm90YXRlWCg5MGRlZyk7XG59XG5cbi5yZXZlYWwgLnJvbGwgc3BhbjphZnRlciB7XG4gIGNvbnRlbnQ6IGF0dHIoZGF0YS10aXRsZSk7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgcGFkZGluZzogMCAycHg7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgdHJhbnNmb3JtLW9yaWdpbjogNTAlIDAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDBweCwgMTEwJSwgMHB4KSByb3RhdGVYKC05MGRlZyk7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAqIFNQRUFLRVIgTk9URVNcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4ucmV2ZWFsIGFzaWRlLm5vdGVzIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnJldmVhbCAuc3BlYWtlci1ub3RlcyB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHRvcDogMDtcbiAgbGVmdDogMTAwJTtcbiAgcGFkZGluZzogMTRweCAxOHB4IDE0cHggMThweDtcbiAgei1pbmRleDogMTtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBsaW5lLWhlaWdodDogMS40O1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMDUpO1xuICBjb2xvcjogIzIyMjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjVmNTtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGZvbnQtZmFtaWx5OiBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbn1cbi5yZXZlYWwgLnNwZWFrZXItbm90ZXMgLm5vdGVzLXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICNjY2M7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cbi5yZXZlYWwgLnNwZWFrZXItbm90ZXM6Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xufVxuLnJldmVhbCAuc3BlYWtlci1ub3RlczpiZWZvcmUge1xuICBjb250ZW50OiBcIlNwZWFrZXIgbm90ZXNcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIG9wYWNpdHk6IDAuNTtcbn1cblxuLnJldmVhbC5zaG93LW5vdGVzIHtcbiAgbWF4LXdpZHRoOiA3NSU7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4ucmV2ZWFsLnNob3ctbm90ZXMgLnNwZWFrZXItbm90ZXMge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTYwMHB4KSB7XG4gIC5yZXZlYWwgLnNwZWFrZXItbm90ZXMge1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gIC5yZXZlYWwuc2hvdy1ub3RlcyB7XG4gICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICAgIG1heC1oZWlnaHQ6IDcwJTtcbiAgICBtYXgtaGVpZ2h0OiA3MHZoO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICB9XG4gIC5yZXZlYWwuc2hvdy1ub3RlcyAuc3BlYWtlci1ub3RlcyB7XG4gICAgdG9wOiAxMDAlO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAzMHZoO1xuICAgIGJvcmRlcjogMDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjAwcHgpIHtcbiAgLnJldmVhbC5zaG93LW5vdGVzIHtcbiAgICBtYXgtaGVpZ2h0OiA2MCU7XG4gICAgbWF4LWhlaWdodDogNjB2aDtcbiAgfVxuICAucmV2ZWFsLnNob3ctbm90ZXMgLnNwZWFrZXItbm90ZXMge1xuICAgIHRvcDogMTAwJTtcbiAgICBoZWlnaHQ6IDQwdmg7XG4gIH1cbiAgLnJldmVhbCAuc3BlYWtlci1ub3RlcyB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICB9XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gKiBKVU1QLVRPLVNMSURFIENPTVBPTkVOVFxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi5yZXZlYWwgLmp1bXAtdG8tc2xpZGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMTVweDtcbiAgbGVmdDogMTVweDtcbiAgei1pbmRleDogMzA7XG4gIGZvbnQtc2l6ZTogMzJweDtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApO1xufVxuXG4ucmV2ZWFsIC5qdW1wLXRvLXNsaWRlLWlucHV0IHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIHBhZGRpbmc6IDhweDtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xuICBjb2xvcjogY3VycmVudENvbG9yO1xuICBib3JkZXI6IDA7XG59XG5cbi5yZXZlYWwgLmp1bXAtdG8tc2xpZGUtaW5wdXQ6OnBsYWNlaG9sZGVyIHtcbiAgY29sb3I6IGN1cnJlbnRDb2xvcjtcbiAgb3BhY2l0eTogMC41O1xufVxuXG4ucmV2ZWFsLmhhcy1kYXJrLWJhY2tncm91bmQgLmp1bXAtdG8tc2xpZGUtaW5wdXQge1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLnJldmVhbC5oYXMtbGlnaHQtYmFja2dyb3VuZCAuanVtcC10by1zbGlkZS1pbnB1dCB7XG4gIGNvbG9yOiAjMjIyO1xufVxuXG4ucmV2ZWFsIC5qdW1wLXRvLXNsaWRlLWlucHV0OmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICogWk9PTSBQTFVHSU5cbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4uem9vbWVkIC5yZXZlYWwgKixcbi56b29tZWQgLnJldmVhbCAqOmJlZm9yZSxcbi56b29tZWQgLnJldmVhbCAqOmFmdGVyIHtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xufVxuXG4uem9vbWVkIC5yZXZlYWwgLnByb2dyZXNzLFxuLnpvb21lZCAucmV2ZWFsIC5jb250cm9scyB7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi56b29tZWQgLnJldmVhbCAucm9sbCBzcGFuIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbn1cblxuLnpvb21lZCAucmV2ZWFsIC5yb2xsIHNwYW46YWZ0ZXIge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAqIFNDUk9MTCBWSUVXXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLnJldmVhbC12aWV3cG9ydC5sb2FkaW5nLXNjcm9sbC1tb2RlIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4ucmV2ZWFsLXZpZXdwb3J0LnJldmVhbC1zY3JvbGwge1xuICBtYXJnaW46IDAgYXV0bztcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgei1pbmRleDogMTtcbiAgLS1yLXNjcm9sbGJhci13aWR0aDogN3B4O1xuICAtLXItc2Nyb2xsYmFyLXRyaWdnZXItc2l6ZTogNXB4O1xuICAtLXItY29udHJvbHMtc3BhY2luZzogOHB4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTAwcHgpIHtcbiAgLnJldmVhbC12aWV3cG9ydC5yZXZlYWwtc2Nyb2xsIHtcbiAgICAtLXItc2Nyb2xsYmFyLXdpZHRoOiAzcHg7XG4gICAgLS1yLXNjcm9sbGJhci10cmlnZ2VyLXNpemU6IDNweDtcbiAgfVxufVxuLnJldmVhbC12aWV3cG9ydC5yZXZlYWwtc2Nyb2xsIC5jb250cm9scyxcbi5yZXZlYWwtdmlld3BvcnQucmV2ZWFsLXNjcm9sbCAucHJvZ3Jlc3MsXG4ucmV2ZWFsLXZpZXdwb3J0LnJldmVhbC1zY3JvbGwgLnBsYXliYWNrLFxuLnJldmVhbC12aWV3cG9ydC5yZXZlYWwtc2Nyb2xsIC5iYWNrZ3JvdW5kcyxcbi5yZXZlYWwtdmlld3BvcnQucmV2ZWFsLXNjcm9sbCAuc2xpZGUtbnVtYmVyLFxuLnJldmVhbC12aWV3cG9ydC5yZXZlYWwtc2Nyb2xsIC5zcGVha2VyLW5vdGVzIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuLnJldmVhbC12aWV3cG9ydC5yZXZlYWwtc2Nyb2xsIC5yZXZlYWwge1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgdG91Y2gtYWN0aW9uOiBtYW5pcHVsYXRpb247XG59XG4ucmV2ZWFsLXZpZXdwb3J0LnJldmVhbC1zY3JvbGwgLnNsaWRlcyB7XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG4gIHBvaW50ZXItZXZlbnRzOiBpbml0aWFsO1xuICBsZWZ0OiBhdXRvO1xuICB0b3A6IGF1dG87XG4gIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwZXJzcGVjdGl2ZTogbm9uZTtcbiAgcGVyc3BlY3RpdmUtb3JpZ2luOiA1MCUgNTAlO1xufVxuLnJldmVhbC12aWV3cG9ydC5yZXZlYWwtc2Nyb2xsIC5zY3JvbGwtcGFnZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogY2FsYyh2YXIoLS1wYWdlLWhlaWdodCkgKyB2YXIoLS1wYWdlLXNjcm9sbC1wYWRkaW5nKSk7XG4gIHotaW5kZXg6IDE7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuLnJldmVhbC12aWV3cG9ydC5yZXZlYWwtc2Nyb2xsIC5zY3JvbGwtcGFnZS1zdGlja3kge1xuICBwb3NpdGlvbjogc3RpY2t5O1xuICBoZWlnaHQ6IHZhcigtLXBhZ2UtaGVpZ2h0KTtcbiAgdG9wOiAwcHg7XG59XG4ucmV2ZWFsLXZpZXdwb3J0LnJldmVhbC1zY3JvbGwgLnNjcm9sbC1wYWdlLWNvbnRlbnQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbi5yZXZlYWwtdmlld3BvcnQucmV2ZWFsLXNjcm9sbCAuc2Nyb2xsLXBhZ2Ugc2VjdGlvbiB7XG4gIHZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiB2YXIoLS1zbGlkZS13aWR0aCkgIWltcG9ydGFudDtcbiAgaGVpZ2h0OiB2YXIoLS1zbGlkZS1oZWlnaHQpICFpbXBvcnRhbnQ7XG4gIHRvcDogNTAlICFpbXBvcnRhbnQ7XG4gIGxlZnQ6IDUwJSAhaW1wb3J0YW50O1xuICBvcGFjaXR5OiAxICFpbXBvcnRhbnQ7XG4gIHRyYW5zZm9ybTogc2NhbGUodmFyKC0tc2xpZGUtc2NhbGUpKSB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgIWltcG9ydGFudDtcbiAgdHJhbnNmb3JtLXN0eWxlOiBmbGF0ICFpbXBvcnRhbnQ7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDAgMCAhaW1wb3J0YW50O1xufVxuLnJldmVhbC12aWV3cG9ydC5yZXZlYWwtc2Nyb2xsIC5zbGlkZS1iYWNrZ3JvdW5kIHtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHotaW5kZXg6IGF1dG8gIWltcG9ydGFudDtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgb3BhY2l0eTogMTtcbiAgdG91Y2gtYWN0aW9uOiBtYW5pcHVsYXRpb247XG59XG5cbi5yZXZlYWwtdmlld3BvcnQucmV2ZWFsLXNjcm9sbFtkYXRhLXNjcm9sbGJhcj10cnVlXTo6LXdlYmtpdC1zY3JvbGxiYXIsXG4ucmV2ZWFsLXZpZXdwb3J0LnJldmVhbC1zY3JvbGxbZGF0YS1zY3JvbGxiYXI9YXV0b106Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnJldmVhbC12aWV3cG9ydC5yZXZlYWwtc2Nyb2xsW2RhdGEtc2Nyb2xsYmFyPXRydWVdLFxuLnJldmVhbC12aWV3cG9ydC5yZXZlYWwtc2Nyb2xsW2RhdGEtc2Nyb2xsYmFyPWF1dG9dIHtcbiAgc2Nyb2xsYmFyLXdpZHRoOiBub25lO1xufVxuXG4ucmV2ZWFsLmhhcy1kYXJrLWJhY2tncm91bmQsXG4ucmV2ZWFsLXZpZXdwb3J0Lmhhcy1kYXJrLWJhY2tncm91bmQge1xuICAtLXItb3ZlcmxheS1lbGVtZW50LWJnLWNvbG9yOiAyNDAsIDI0MCwgMjQwO1xuICAtLXItb3ZlcmxheS1lbGVtZW50LWZnLWNvbG9yOiAwLCAwLCAwO1xufVxuXG4ucmV2ZWFsLmhhcy1saWdodC1iYWNrZ3JvdW5kLFxuLnJldmVhbC12aWV3cG9ydC5oYXMtbGlnaHQtYmFja2dyb3VuZCB7XG4gIC0tci1vdmVybGF5LWVsZW1lbnQtYmctY29sb3I6IDAsIDAsIDA7XG4gIC0tci1vdmVybGF5LWVsZW1lbnQtZmctY29sb3I6IDI0MCwgMjQwLCAyNDA7XG59XG5cbi5yZXZlYWwtdmlld3BvcnQucmV2ZWFsLXNjcm9sbCAuc2Nyb2xsYmFyIHtcbiAgcG9zaXRpb246IHN0aWNreTtcbiAgdG9wOiA1MCU7XG4gIHotaW5kZXg6IDIwO1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xufVxuLnJldmVhbC12aWV3cG9ydC5yZXZlYWwtc2Nyb2xsIC5zY3JvbGxiYXIudmlzaWJsZSwgLnJldmVhbC12aWV3cG9ydC5yZXZlYWwtc2Nyb2xsIC5zY3JvbGxiYXI6aG92ZXIge1xuICBvcGFjaXR5OiAxO1xufVxuLnJldmVhbC12aWV3cG9ydC5yZXZlYWwtc2Nyb2xsIC5zY3JvbGxiYXIgLnNjcm9sbGJhci1pbm5lciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IHZhcigtLXItc2Nyb2xsYmFyLXdpZHRoKTtcbiAgaGVpZ2h0OiBjYWxjKHZhcigtLXZpZXdwb3J0LWhlaWdodCkgLSB2YXIoLS1yLWNvbnRyb2xzLXNwYWNpbmcpICogMik7XG4gIHJpZ2h0OiB2YXIoLS1yLWNvbnRyb2xzLXNwYWNpbmcpO1xuICB0b3A6IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tci1zY3JvbGxiYXItd2lkdGgpO1xuICB6LWluZGV4OiAxMDtcbn1cbi5yZXZlYWwtdmlld3BvcnQucmV2ZWFsLXNjcm9sbCAuc2Nyb2xsYmFyIC5zY3JvbGxiYXItcGxheWhlYWQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiB2YXIoLS1yLXNjcm9sbGJhci13aWR0aCk7XG4gIGhlaWdodDogdmFyKC0tci1zY3JvbGxiYXItd2lkdGgpO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXItc2Nyb2xsYmFyLXdpZHRoKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSh2YXIoLS1yLW92ZXJsYXktZWxlbWVudC1iZy1jb2xvciksIDEpO1xuICB6LWluZGV4OiAxMTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2U7XG59XG4ucmV2ZWFsLXZpZXdwb3J0LnJldmVhbC1zY3JvbGwgLnNjcm9sbGJhciAuc2Nyb2xsYmFyLXNsaWRlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSh2YXIoLS1yLW92ZXJsYXktZWxlbWVudC1iZy1jb2xvciksIDAuMik7XG4gIGJveC1zaGFkb3c6IDAgMCAwcHggMXB4IHJnYmEodmFyKC0tci1vdmVybGF5LWVsZW1lbnQtZmctY29sb3IpLCAwLjEpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1yLXNjcm9sbGJhci13aWR0aCk7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycyBlYXNlO1xufVxuLnJldmVhbC12aWV3cG9ydC5yZXZlYWwtc2Nyb2xsIC5zY3JvbGxiYXIgLnNjcm9sbGJhci1zbGlkZTphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDIwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAtNTAlO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDApO1xuICB6LWluZGV4OiAtMTtcbn1cbi5yZXZlYWwtdmlld3BvcnQucmV2ZWFsLXNjcm9sbCAuc2Nyb2xsYmFyIC5zY3JvbGxiYXItc2xpZGU6aG92ZXIsXG4ucmV2ZWFsLXZpZXdwb3J0LnJldmVhbC1zY3JvbGwgLnNjcm9sbGJhciAuc2Nyb2xsYmFyLXNsaWRlLmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEodmFyKC0tci1vdmVybGF5LWVsZW1lbnQtYmctY29sb3IpLCAwLjQpO1xufVxuLnJldmVhbC12aWV3cG9ydC5yZXZlYWwtc2Nyb2xsIC5zY3JvbGxiYXIgLnNjcm9sbGJhci10cmlnZ2VyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTAwJTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2U7XG59XG4ucmV2ZWFsLXZpZXdwb3J0LnJldmVhbC1zY3JvbGwgLnNjcm9sbGJhciAuc2Nyb2xsYmFyLXNsaWRlLmFjdGl2ZS5oYXMtdHJpZ2dlcnMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKHZhcigtLXItb3ZlcmxheS1lbGVtZW50LWJnLWNvbG9yKSwgMC40KTtcbiAgei1pbmRleDogMTA7XG59XG4ucmV2ZWFsLXZpZXdwb3J0LnJldmVhbC1zY3JvbGwgLnNjcm9sbGJhciAuc2Nyb2xsYmFyLXNsaWRlLmFjdGl2ZSAuc2Nyb2xsYmFyLXRyaWdnZXI6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiB2YXIoLS1yLXNjcm9sbGJhci10cmlnZ2VyLXNpemUpO1xuICBoZWlnaHQ6IHZhcigtLXItc2Nyb2xsYmFyLXRyaWdnZXItc2l6ZSk7XG4gIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKHZhcigtLXItb3ZlcmxheS1lbGVtZW50LWJnLWNvbG9yKSwgMSk7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjJzIGVhc2UsIG9wYWNpdHkgMC4ycyBlYXNlO1xuICBvcGFjaXR5OiAwLjQ7XG59XG4ucmV2ZWFsLXZpZXdwb3J0LnJldmVhbC1zY3JvbGwgLnNjcm9sbGJhciAuc2Nyb2xsYmFyLXNsaWRlLmFjdGl2ZSAuc2Nyb2xsYmFyLXRyaWdnZXIuYWN0aXZlOmFmdGVyLFxuLnJldmVhbC12aWV3cG9ydC5yZXZlYWwtc2Nyb2xsIC5zY3JvbGxiYXIgLnNjcm9sbGJhci1zbGlkZS5hY3RpdmUgLnNjcm9sbGJhci10cmlnZ2VyLmFjdGl2ZSB+IC5zY3JvbGxiYXItdHJpZ2dlcjphZnRlciB7XG4gIG9wYWNpdHk6IDE7XG59XG4ucmV2ZWFsLXZpZXdwb3J0LnJldmVhbC1zY3JvbGwgLnNjcm9sbGJhciAuc2Nyb2xsYmFyLXNsaWRlLmFjdGl2ZSAuc2Nyb2xsYmFyLXRyaWdnZXIgfiAuc2Nyb2xsYmFyLXRyaWdnZXIuYWN0aXZlOmFmdGVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoY2FsYyh2YXIoLS1yLXNjcm9sbGJhci13aWR0aCkgKiAtMiksIDApO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKHZhcigtLXItb3ZlcmxheS1lbGVtZW50LWJnLWNvbG9yKSwgMSk7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAqIFBSSU5UIFNUWUxFU1xuICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qKlxuICogVGhpcyBzdHlsZXNoZWV0IGlzIHVzZWQgdG8gcHJpbnQgcmV2ZWFsLmpzXG4gKiBwcmVzZW50YXRpb25zIHRvIFBERi5cbiAqXG4gKiBodHRwczovL3JldmVhbGpzLmNvbS9wZGYtZXhwb3J0L1xuICovXG5odG1sLnJldmVhbC1wcmludCB7XG4gIC8qIFJlbW92ZSBhbnkgZWxlbWVudHMgbm90IG5lZWRlZCBpbiBwcmludC4gKi9cbiAgLyogU2xpZGUgYmFja2dyb3VuZHMgYXJlIHBsYWNlZCBpbnNpZGUgb2YgdGhlaXIgc2xpZGUgd2hlbiBleHBvcnRpbmcgdG8gUERGICovXG4gIC8qIERpc3BsYXkgc2xpZGUgc3BlYWtlciBub3RlcyB3aGVuICdzaG93Tm90ZXMnIGlzIGVuYWJsZWQgKi9cbiAgLyogTGF5b3V0IG9wdGlvbiB3aGljaCBtYWtlcyBub3RlcyBhcHBlYXIgb24gYSBzZXBhcmF0ZSBwYWdlICovXG4gIC8qIERpc3BsYXkgc2xpZGUgbnVtYmVycyB3aGVuICdzbGlkZU51bWJlcicgaXMgZW5hYmxlZCAqL1xuICAvKiBUaGlzIGFjY2Vzc2liaWxpdHkgdG9vbCBpcyBub3QgdXNlZnVsIGluIFBERiBhbmQgYnJlYWtzIGl0IHZpc3VhbGx5ICovXG59XG5odG1sLnJldmVhbC1wcmludCAqIHtcbiAgLXdlYmtpdC1wcmludC1jb2xvci1hZGp1c3Q6IGV4YWN0O1xufVxuaHRtbC5yZXZlYWwtcHJpbnQge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cbmh0bWwucmV2ZWFsLXByaW50IGJvZHkge1xuICBtYXJnaW46IDAgYXV0byAhaW1wb3J0YW50O1xuICBib3JkZXI6IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuaHRtbC5yZXZlYWwtcHJpbnQgLm5lc3RlZGFycm93LFxuaHRtbC5yZXZlYWwtcHJpbnQgLnJldmVhbCAuY29udHJvbHMsXG5odG1sLnJldmVhbC1wcmludCAucmV2ZWFsIC5wcm9ncmVzcyxcbmh0bWwucmV2ZWFsLXByaW50IC5yZXZlYWwgLnBsYXliYWNrLFxuaHRtbC5yZXZlYWwtcHJpbnQgLnJldmVhbC5vdmVydmlldyxcbmh0bWwucmV2ZWFsLXByaW50IC5zdGF0ZS1iYWNrZ3JvdW5kIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuaHRtbC5yZXZlYWwtcHJpbnQgLnJldmVhbCBwcmUgY29kZSB7XG4gIG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDtcbn1cbmh0bWwucmV2ZWFsLXByaW50IC5yZXZlYWwge1xuICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xufVxuaHRtbC5yZXZlYWwtcHJpbnQgLnJldmVhbCAuc2xpZGVzIHtcbiAgcG9zaXRpb246IHN0YXRpYztcbiAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIHpvb206IDEgIWltcG9ydGFudDtcbiAgcG9pbnRlci1ldmVudHM6IGluaXRpYWw7XG4gIGxlZnQ6IGF1dG87XG4gIHRvcDogYXV0bztcbiAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwZXJzcGVjdGl2ZTogbm9uZTtcbiAgcGVyc3BlY3RpdmUtb3JpZ2luOiA1MCUgNTAlO1xufVxuaHRtbC5yZXZlYWwtcHJpbnQgLnJldmVhbCAuc2xpZGVzIC5wZGYtcGFnZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgei1pbmRleDogMTtcbiAgcGFnZS1icmVhay1hZnRlcjogYWx3YXlzO1xufVxuaHRtbC5yZXZlYWwtcHJpbnQgLnJldmVhbCAuc2xpZGVzIC5wZGYtcGFnZTpsYXN0LW9mLXR5cGUge1xuICBwYWdlLWJyZWFrLWFmdGVyOiBhdm9pZDtcbn1cbmh0bWwucmV2ZWFsLXByaW50IC5yZXZlYWwgLnNsaWRlcyBzZWN0aW9uIHtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveCAhaW1wb3J0YW50O1xuICBtaW4taGVpZ2h0OiAxcHg7XG4gIG9wYWNpdHk6IDEgIWltcG9ydGFudDtcbiAgdHJhbnNmb3JtLXN0eWxlOiBmbGF0ICFpbXBvcnRhbnQ7XG4gIHRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xufVxuaHRtbC5yZXZlYWwtcHJpbnQgLnJldmVhbCBzZWN0aW9uLnN0YWNrIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIHBhZ2UtYnJlYWstYWZ0ZXI6IGF2b2lkICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICBtaW4taGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG59XG5odG1sLnJldmVhbC1wcmludCAucmV2ZWFsIGltZyB7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5odG1sLnJldmVhbC1wcmludCAucmV2ZWFsIC5iYWNrZ3JvdW5kcyB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5odG1sLnJldmVhbC1wcmludCAucmV2ZWFsIC5zbGlkZS1iYWNrZ3JvdW5kIHtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHotaW5kZXg6IGF1dG8gIWltcG9ydGFudDtcbn1cbmh0bWwucmV2ZWFsLXByaW50IC5yZXZlYWwuc2hvdy1ub3RlcyB7XG4gIG1heC13aWR0aDogbm9uZTtcbiAgbWF4LWhlaWdodDogbm9uZTtcbn1cbmh0bWwucmV2ZWFsLXByaW50IC5yZXZlYWwgLnNwZWFrZXItbm90ZXMtcGRmIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIG1heC1oZWlnaHQ6IG5vbmU7XG4gIHRvcDogYXV0bztcbiAgcmlnaHQ6IGF1dG87XG4gIGJvdHRvbTogYXV0bztcbiAgbGVmdDogYXV0bztcbiAgei1pbmRleDogMTAwO1xufVxuaHRtbC5yZXZlYWwtcHJpbnQgLnJldmVhbCAuc3BlYWtlci1ub3Rlcy1wZGZbZGF0YS1sYXlvdXQ9c2VwYXJhdGUtcGFnZV0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgcGFkZGluZzogMjBweDtcbiAgcGFnZS1icmVhay1hZnRlcjogYWx3YXlzO1xuICBib3JkZXI6IDA7XG59XG5odG1sLnJldmVhbC1wcmludCAucmV2ZWFsIC5zbGlkZS1udW1iZXItcGRmIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZm9udC1zaXplOiAxNHB4O1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xufVxuaHRtbC5yZXZlYWwtcHJpbnQgLmFyaWEtc3RhdHVzIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuQG1lZGlhIHByaW50IHtcbiAgaHRtbDpub3QoLnByaW50LXBkZikge1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuICBodG1sOm5vdCgucHJpbnQtcGRmKSBib2R5IHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgfVxuICBodG1sOm5vdCgucHJpbnQtcGRmKSAucmV2ZWFsIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIGZvbnQtc2l6ZTogMjBwdDtcbiAgfVxuICBodG1sOm5vdCgucHJpbnQtcGRmKSAucmV2ZWFsIC5jb250cm9scyxcbiAgaHRtbDpub3QoLnByaW50LXBkZikgLnJldmVhbCAuc3RhdGUtYmFja2dyb3VuZCxcbiAgaHRtbDpub3QoLnByaW50LXBkZikgLnJldmVhbCAucHJvZ3Jlc3MsXG4gIGh0bWw6bm90KC5wcmludC1wZGYpIC5yZXZlYWwgLmJhY2tncm91bmRzLFxuICBodG1sOm5vdCgucHJpbnQtcGRmKSAucmV2ZWFsIC5zbGlkZS1udW1iZXIge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuICBodG1sOm5vdCgucHJpbnQtcGRmKSAucmV2ZWFsIHAsIGh0bWw6bm90KC5wcmludC1wZGYpIC5yZXZlYWwgdGQsIGh0bWw6bm90KC5wcmludC1wZGYpIC5yZXZlYWwgbGkge1xuICAgIGZvbnQtc2l6ZTogMjBwdCAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAjMDAwO1xuICB9XG4gIGh0bWw6bm90KC5wcmludC1wZGYpIC5yZXZlYWwgaDEsIGh0bWw6bm90KC5wcmludC1wZGYpIC5yZXZlYWwgaDIsIGh0bWw6bm90KC5wcmludC1wZGYpIC5yZXZlYWwgaDMsIGh0bWw6bm90KC5wcmludC1wZGYpIC5yZXZlYWwgaDQsIGh0bWw6bm90KC5wcmludC1wZGYpIC5yZXZlYWwgaDUsIGh0bWw6bm90KC5wcmludC1wZGYpIC5yZXZlYWwgaDYge1xuICAgIGNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICB9XG4gIGh0bWw6bm90KC5wcmludC1wZGYpIC5yZXZlYWwgaDEge1xuICAgIGZvbnQtc2l6ZTogMjhwdCAhaW1wb3J0YW50O1xuICB9XG4gIGh0bWw6bm90KC5wcmludC1wZGYpIC5yZXZlYWwgaDIge1xuICAgIGZvbnQtc2l6ZTogMjRwdCAhaW1wb3J0YW50O1xuICB9XG4gIGh0bWw6bm90KC5wcmludC1wZGYpIC5yZXZlYWwgaDMge1xuICAgIGZvbnQtc2l6ZTogMjJwdCAhaW1wb3J0YW50O1xuICB9XG4gIGh0bWw6bm90KC5wcmludC1wZGYpIC5yZXZlYWwgaDQge1xuICAgIGZvbnQtc2l6ZTogMjJwdCAhaW1wb3J0YW50O1xuICAgIGZvbnQtdmFyaWFudDogc21hbGwtY2FwcztcbiAgfVxuICBodG1sOm5vdCgucHJpbnQtcGRmKSAucmV2ZWFsIGg1IHtcbiAgICBmb250LXNpemU6IDIxcHQgIWltcG9ydGFudDtcbiAgfVxuICBodG1sOm5vdCgucHJpbnQtcGRmKSAucmV2ZWFsIGg2IHtcbiAgICBmb250LXNpemU6IDIwcHQgIWltcG9ydGFudDtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIH1cbiAgaHRtbDpub3QoLnByaW50LXBkZikgLnJldmVhbCBhOmxpbmssXG4gIGh0bWw6bm90KC5wcmludC1wZGYpIC5yZXZlYWwgYTp2aXNpdGVkIHtcbiAgICBjb2xvcjogIzAwMCAhaW1wb3J0YW50O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB9XG4gIGh0bWw6bm90KC5wcmludC1wZGYpIC5yZXZlYWwgdWwsIGh0bWw6bm90KC5wcmludC1wZGYpIC5yZXZlYWwgb2wsIGh0bWw6bm90KC5wcmludC1wZGYpIC5yZXZlYWwgZGl2LCBodG1sOm5vdCgucHJpbnQtcGRmKSAucmV2ZWFsIHAge1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICB3aWR0aDogYXV0bztcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDtcbiAgfVxuICBodG1sOm5vdCgucHJpbnQtcGRmKSAucmV2ZWFsIHByZSxcbiAgaHRtbDpub3QoLnByaW50LXBkZikgLnJldmVhbCB0YWJsZSB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG4gIGh0bWw6bm90KC5wcmludC1wZGYpIC5yZXZlYWwgcHJlIGNvZGUge1xuICAgIHBhZGRpbmc6IDIwcHg7XG4gIH1cbiAgaHRtbDpub3QoLnByaW50LXBkZikgLnJldmVhbCBibG9ja3F1b3RlIHtcbiAgICBtYXJnaW46IDIwcHggMDtcbiAgfVxuICBodG1sOm5vdCgucHJpbnQtcGRmKSAucmV2ZWFsIC5zbGlkZXMge1xuICAgIHBvc2l0aW9uOiBzdGF0aWMgIWltcG9ydGFudDtcbiAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IDAgIWltcG9ydGFudDtcbiAgICB0b3A6IDAgIWltcG9ydGFudDtcbiAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgem9vbTogMSAhaW1wb3J0YW50O1xuICAgIHRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xuICAgIG92ZXJmbG93OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7XG4gICAgcGVyc3BlY3RpdmU6IG5vbmU7XG4gICAgcGVyc3BlY3RpdmUtb3JpZ2luOiA1MCUgNTAlO1xuICB9XG4gIGh0bWw6bm90KC5wcmludC1wZGYpIC5yZXZlYWwgLnNsaWRlcyBzZWN0aW9uIHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gICAgcG9zaXRpb246IHN0YXRpYyAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICBvdmVyZmxvdzogdmlzaWJsZSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IDAgIWltcG9ydGFudDtcbiAgICB0b3A6IDAgIWltcG9ydGFudDtcbiAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiA2MHB4IDIwcHggIWltcG9ydGFudDtcbiAgICB6LWluZGV4OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgb3BhY2l0eTogMSAhaW1wb3J0YW50O1xuICAgIHBhZ2UtYnJlYWstYWZ0ZXI6IGFsd2F5cyAhaW1wb3J0YW50O1xuICAgIHRyYW5zZm9ybS1zdHlsZTogZmxhdCAhaW1wb3J0YW50O1xuICAgIHRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xuICAgIHRyYW5zaXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuICBodG1sOm5vdCgucHJpbnQtcGRmKSAucmV2ZWFsIC5zbGlkZXMgc2VjdGlvbi5zdGFjayB7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICB9XG4gIGh0bWw6bm90KC5wcmludC1wZGYpIC5yZXZlYWwgLnNsaWRlcyBzZWN0aW9uOmxhc3Qtb2YtdHlwZSB7XG4gICAgcGFnZS1icmVhay1hZnRlcjogYXZvaWQgIWltcG9ydGFudDtcbiAgfVxuICBodG1sOm5vdCgucHJpbnQtcGRmKSAucmV2ZWFsIC5zbGlkZXMgc2VjdGlvbiAuZnJhZ21lbnQge1xuICAgIG9wYWNpdHk6IDEgIWltcG9ydGFudDtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gICAgdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbiAgaHRtbDpub3QoLnByaW50LXBkZikgLnJldmVhbCAuci1maXQtdGV4dCB7XG4gICAgd2hpdGUtc3BhY2U6IG5vcm1hbCAhaW1wb3J0YW50O1xuICB9XG4gIGh0bWw6bm90KC5wcmludC1wZGYpIC5yZXZlYWwgc2VjdGlvbiBpbWcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMTVweCAwcHg7XG4gICAgYmFja2dyb3VuZDogcmdiKDI1NSwgMjU1LCAyNTUpO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICM2NjY7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgfVxuICBodG1sOm5vdCgucHJpbnQtcGRmKSAucmV2ZWFsIHNlY3Rpb24gc21hbGwge1xuICAgIGZvbnQtc2l6ZTogMC44ZW07XG4gIH1cbiAgaHRtbDpub3QoLnByaW50LXBkZikgLnJldmVhbCAuaGxqcyB7XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICB3aGl0ZS1zcGFjZTogcHJlLXdyYXA7XG4gICAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICAgIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG4gICAgZm9udC1zaXplOiAxNXB0O1xuICB9XG4gIGh0bWw6bm90KC5wcmludC1wZGYpIC5yZXZlYWwgLmhsanMgLmhsanMtbG4tbnVtYmVycyB7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgfVxuICBodG1sOm5vdCgucHJpbnQtcGRmKSAucmV2ZWFsIC5obGpzIHRkIHtcbiAgICBmb250LXNpemU6IGluaGVyaXQgIWltcG9ydGFudDtcbiAgICBjb2xvcjogaW5oZXJpdCAhaW1wb3J0YW50O1xuICB9XG59Il19 */
